├── .source
├── 073331641B4BD2FC98D852E60121D341.png
├── 3101550-8279e9d744ff28e1.png
├── EAEC404C98DAECC6BB54A64924C24610.jpeg
├── EBE063B8-002E-4B22-BA79-912F3D555B6C.png
├── F1350746-FC3C-459F-AE0C-8D6CED517678.png
└── logo.png
├── FDLocalizeder
├── .gitignore
├── FDLocalizeder.xcodeproj
│ ├── .svn
│ │ ├── entries
│ │ └── text-base
│ │ │ └── project.pbxproj.svn-base
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ └── contents.xcworkspacedata.svn-base
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ └── text-base
│ │ │ │ │ └── MobPods.xcscmblueprint.svn-base
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── MobPods.xcscmblueprint
│ │ └── xcuserdata
│ │ │ ├── .svn
│ │ │ └── entries
│ │ │ ├── ShengQiangLiu.xcuserdatad
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ ├── prop-base
│ │ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ │ └── text-base
│ │ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ ├── chdo.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ ├── chuxiao.xcuserdatad
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ ├── prop-base
│ │ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ │ └── text-base
│ │ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ ├── fwzhou.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ └── youzu.xcuserdatad
│ │ │ ├── .svn
│ │ │ ├── entries
│ │ │ ├── prop-base
│ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ └── text-base
│ │ │ │ └── UserInterfaceState.xcuserstate.svn-base
│ │ │ └── UserInterfaceState.xcuserstate
│ ├── xcshareddata
│ │ ├── .svn
│ │ │ └── entries
│ │ └── xcschemes
│ │ │ └── .svn
│ │ │ └── entries
│ └── xcuserdata
│ │ ├── .svn
│ │ └── entries
│ │ ├── ShengQiangLiu.xcuserdatad
│ │ ├── .svn
│ │ │ └── entries
│ │ ├── xcdebugger
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ └── text-base
│ │ │ │ │ └── Breakpoints_v2.xcbkptlist.svn-base
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ ├── MobPods.xcscheme.svn-base
│ │ │ │ ├── MobPodsScript copy.xcscheme.svn-base
│ │ │ │ ├── MobPodsScript.xcscheme.svn-base
│ │ │ │ └── xcschememanagement.plist.svn-base
│ │ │ ├── MobPods.xcscheme
│ │ │ ├── MobPodsScript copy.xcscheme
│ │ │ ├── MobPodsScript.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── chdo.xcuserdatad
│ │ └── xcschemes
│ │ │ └── xcschememanagement.plist
│ │ ├── chuxiao.xcuserdatad
│ │ ├── .svn
│ │ │ └── entries
│ │ ├── xcdebugger
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ └── text-base
│ │ │ │ │ └── Breakpoints_v2.xcbkptlist.svn-base
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ ├── MobPods.xcscheme.svn-base
│ │ │ │ └── xcschememanagement.plist.svn-base
│ │ │ ├── FDLocalizeder.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── fd.xcuserdatad
│ │ └── xcschemes
│ │ │ ├── FDLocalizeder.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── fwzhou.xcuserdatad
│ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ │ └── xcschememanagement.plist
│ │ └── youzu.xcuserdatad
│ │ ├── .svn
│ │ └── entries
│ │ ├── xcdebugger
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ └── Breakpoints_v2.xcbkptlist.svn-base
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── .svn
│ │ ├── entries
│ │ └── text-base
│ │ │ ├── MobPods.xcscheme.svn-base
│ │ │ └── xcschememanagement.plist.svn-base
│ │ ├── MobPods.xcscheme
│ │ └── xcschememanagement.plist
├── FDLocalizeder
│ ├── .svn
│ │ ├── entries
│ │ ├── prop-base
│ │ │ └── backBtn.png.svn-base
│ │ └── text-base
│ │ │ ├── AppDelegate.h.svn-base
│ │ │ ├── AppDelegate.m.svn-base
│ │ │ ├── Info.plist.svn-base
│ │ │ ├── MobPods.pch.svn-base
│ │ │ ├── backBtn.png.svn-base
│ │ │ └── main.m.svn-base
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ └── Contents.json.svn-base
│ │ ├── AppIcon.appiconset
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ ├── prop-base
│ │ │ │ │ ├── 43-Automator-1.png.svn-base
│ │ │ │ │ ├── 43-Automator-2.png.svn-base
│ │ │ │ │ ├── 43-Automator-3.png.svn-base
│ │ │ │ │ ├── 43-Automator-4.png.svn-base
│ │ │ │ │ ├── 43-Automator-5.png.svn-base
│ │ │ │ │ ├── 43-Automator-6.png.svn-base
│ │ │ │ │ ├── 43-Automator-7.png.svn-base
│ │ │ │ │ ├── 43-Automator-8.png.svn-base
│ │ │ │ │ ├── 43-Automator-9.png.svn-base
│ │ │ │ │ └── 43-Automator.png.svn-base
│ │ │ │ └── text-base
│ │ │ │ │ ├── 43-Automator-1.png.svn-base
│ │ │ │ │ ├── 43-Automator-2.png.svn-base
│ │ │ │ │ ├── 43-Automator-3.png.svn-base
│ │ │ │ │ ├── 43-Automator-4.png.svn-base
│ │ │ │ │ ├── 43-Automator-5.png.svn-base
│ │ │ │ │ ├── 43-Automator-6.png.svn-base
│ │ │ │ │ ├── 43-Automator-7.png.svn-base
│ │ │ │ │ ├── 43-Automator-8.png.svn-base
│ │ │ │ │ ├── 43-Automator-9.png.svn-base
│ │ │ │ │ ├── 43-Automator.png.svn-base
│ │ │ │ │ └── Contents.json.svn-base
│ │ │ ├── Contents.json
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net-1.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net-2.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net-3.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net-4.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net@2x-1.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net@2x-2.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net@2x-3.png
│ │ │ ├── folder_pen_write_128px_4234_easyicon.net@2x-4.png
│ │ │ └── folder_pen_write_128px_4234_easyicon.net@2x.png
│ │ ├── Contents.json
│ │ ├── Finder.imageset
│ │ │ ├── Contents.json
│ │ │ └── Finder.png
│ │ ├── Finder1.imageset
│ │ │ ├── Contents.json
│ │ │ └── Finder.png
│ │ ├── L_excel_bg.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_excel_bg.png
│ │ ├── L_excel_bg0.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_excel_bg.png
│ │ ├── L_excel_bg2.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_excel_bg.png
│ │ ├── L_excel_bg3.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_excel_bg.png
│ │ ├── L_excel_bg4.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_excel_bg.png
│ │ ├── L_export.imageset
│ │ │ ├── Contents.json
│ │ │ └── export.png
│ │ ├── L_more.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_more.png
│ │ ├── L_more2.imageset
│ │ │ ├── Contents.json
│ │ │ └── L_more2.png
│ │ ├── backup.imageset
│ │ │ ├── Contents.json
│ │ │ └── backup.png
│ │ ├── dashboard_excel-1.imageset
│ │ │ ├── Contents.json
│ │ │ └── dashboard_excel.png
│ │ ├── dashboard_excel.imageset
│ │ │ ├── Contents.json
│ │ │ └── dashboard_excel.png
│ │ ├── down.imageset
│ │ │ ├── Contents.json
│ │ │ └── down.png
│ │ ├── ex_close.imageset
│ │ │ ├── Contents.json
│ │ │ └── ex_close.png
│ │ ├── ex_confirm.imageset
│ │ │ ├── Contents.json
│ │ │ └── ex_confirm.png
│ │ ├── file.imageset
│ │ │ ├── Contents.json
│ │ │ └── wenjian.png
│ │ ├── file0.imageset
│ │ │ ├── Contents.json
│ │ │ └── file.png
│ │ ├── file2.imageset
│ │ │ ├── Contents.json
│ │ │ └── file.png
│ │ ├── import.imageset
│ │ │ ├── Contents.json
│ │ │ └── import.png
│ │ ├── reset.imageset
│ │ │ ├── Contents.json
│ │ │ └── reset.png
│ │ ├── timg.imageset
│ │ │ ├── Contents.json
│ │ │ └── timg.jpeg
│ │ ├── undo.imageset
│ │ │ ├── Contents.json
│ │ │ └── undo.png
│ │ ├── wangge.imageset
│ │ │ ├── Contents.json
│ │ │ └── wangge.png
│ │ ├── wenhao.imageset
│ │ │ ├── Contents.json
│ │ │ └── wenhao.png
│ │ ├── xcode-project_Icon 0.imageset
│ │ │ ├── Contents.json
│ │ │ └── Untitled-2.png
│ │ ├── xcode-project_Icon-1.imageset
│ │ │ ├── Contents.json
│ │ │ └── xcode-project_Icon.png
│ │ ├── xcode-project_Icon.imageset
│ │ │ ├── Contents.json
│ │ │ └── xcode-project_Icon.png
│ │ └── xcode-project_Icon_file.imageset
│ │ │ ├── Contents.json
│ │ │ └── xcode-project_Icon_file.png
│ ├── Base.lproj
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ └── Main.storyboard.svn-base
│ │ └── Main.storyboard
│ ├── Controllers
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ ├── MPAlertController.h.svn-base
│ │ │ │ ├── MPAlertController.m.svn-base
│ │ │ │ ├── MPBaseViewController.h.svn-base
│ │ │ │ ├── MPBaseViewController.m.svn-base
│ │ │ │ ├── MPBaseWindow.h.svn-base
│ │ │ │ ├── MPBaseWindow.m.svn-base
│ │ │ │ ├── MPBaseWindowController.h.svn-base
│ │ │ │ ├── MPBaseWindowController.m.svn-base
│ │ │ │ ├── MPCocoaPodsViewController.h.svn-base
│ │ │ │ ├── MPCocoaPodsViewController.m.svn-base
│ │ │ │ ├── MPMainViewController.h.svn-base
│ │ │ │ ├── MPMainViewController.m.svn-base
│ │ │ │ ├── MPMoreVersionViewController.h.svn-base
│ │ │ │ ├── MPMoreVersionViewController.m.svn-base
│ │ │ │ ├── MPProjectListViewController.h.svn-base
│ │ │ │ ├── MPProjectListViewController.m.svn-base
│ │ │ │ ├── MPVirtualController.h.svn-base
│ │ │ │ ├── MPVirtualController.m.svn-base
│ │ │ │ ├── MPVirtualViewController.h.svn-base
│ │ │ │ ├── MPVirtualViewController.m.svn-base
│ │ │ │ ├── MPVirtualWindowController.h.svn-base
│ │ │ │ ├── MPVirtualWindowController.m.svn-base
│ │ │ │ ├── MPVirtualWindowController.xib.svn-base
│ │ │ │ ├── MPWebViewController.h.svn-base
│ │ │ │ └── MPWebViewController.m.svn-base
│ │ ├── CXConsoleViewModel.h
│ │ ├── CXConsoleViewModel.m
│ │ ├── CXSelectLanguagePathCellView.h
│ │ ├── CXSelectLanguagePathCellView.m
│ │ ├── CXSelectLanguagePathView.h
│ │ ├── CXSelectLanguagePathView.m
│ │ ├── CXSelectLanguagePathView.xib
│ │ ├── CXSliderRangeView.h
│ │ ├── CXSliderRangeView.m
│ │ ├── CXSliderRangeView.xib
│ │ ├── FDLanguagePopoverViewController.h
│ │ ├── FDLanguagePopoverViewController.m
│ │ ├── FDLanguagePopoverViewController.xib
│ │ ├── FDMainDataViewModel.h
│ │ ├── FDMainDataViewModel.m
│ │ ├── FDMainExtendViewModel.h
│ │ ├── FDMainExtendViewModel.m
│ │ ├── FDMainViewModel.h
│ │ ├── FDMainViewModel.m
│ │ ├── FDSecondVC.h
│ │ ├── FDSecondVC.m
│ │ ├── FDViewController.h
│ │ ├── FDViewController.m
│ │ ├── ObjC segues and animators
│ │ │ ├── MyCustomAnimator.h
│ │ │ ├── MyCustomAnimator.m
│ │ │ ├── MyCustomSegue.h
│ │ │ └── MyCustomSegue.m
│ │ └── Swift segues and animators
│ │ │ ├── FDLocalizeder-Bridging-Header.h
│ │ │ ├── MyCustomSwiftAnimator.swift
│ │ │ └── MyCustomSwiftSegue.swift
│ ├── FDLocalizeder.pch
│ ├── Info.plist
│ ├── Libraries
│ │ ├── .svn
│ │ │ ├── entries
│ │ │ └── text-base
│ │ │ │ ├── MPDataTool.h.svn-base
│ │ │ │ └── MPDataTool.m.svn-base
│ │ └── MOBFoundation
│ │ │ ├── .svn
│ │ │ └── entries
│ │ │ ├── Extends
│ │ │ ├── .svn
│ │ │ │ └── entries
│ │ │ ├── JSONKit
│ │ │ │ └── .svn
│ │ │ │ │ └── entries
│ │ │ └── RegexKitLite
│ │ │ │ └── .svn
│ │ │ │ └── entries
│ │ │ ├── HTTP
│ │ │ └── .svn
│ │ │ │ └── entries
│ │ │ └── Utils
│ │ │ └── .svn
│ │ │ └── entries
│ ├── Macro
│ │ ├── LanguageBindFile.plist
│ │ ├── Languages.plist
│ │ └── OtherSetting.plist
│ ├── Manager
│ │ ├── CXRegexHelper.h
│ │ ├── CXRegexHelper.m
│ │ ├── CXSpecialCharacterConversion.h
│ │ ├── CXSpecialCharacterConversion.m
│ │ ├── FDCompareManager.h
│ │ ├── FDCompareManager.m
│ │ ├── FDDataManager.h
│ │ ├── FDDataManager.m
│ │ ├── FDFileManager.h
│ │ ├── FDFileManager.m
│ │ ├── FDPredicateManager.h
│ │ ├── FDPredicateManager.m
│ │ ├── FDProjectFileManager.h
│ │ ├── FDProjectFileManager.m
│ │ ├── FDReadFile.h
│ │ ├── FDReadFile.m
│ │ ├── FDSafetyFileManager.h
│ │ ├── FDSafetyFileManager.m
│ │ ├── FDUndoManager.h
│ │ ├── FDUndoManager.m
│ │ ├── FDWriteFile.h
│ │ ├── FDWriteFile.m
│ │ ├── FDXMLFileManager.h
│ │ └── FDXMLFileManager.m
│ ├── Tools
│ │ ├── MPTask
│ │ │ ├── .svn
│ │ │ │ ├── entries
│ │ │ │ └── text-base
│ │ │ │ │ ├── MPTask.h.svn-base
│ │ │ │ │ └── MPTask.m.svn-base
│ │ │ ├── MPTask.h
│ │ │ └── MPTask.m
│ │ ├── MPUserNotification
│ │ │ └── .svn
│ │ │ │ ├── entries
│ │ │ │ └── text-base
│ │ │ │ ├── MPUserNotification.h.svn-base
│ │ │ │ └── MPUserNotification.m.svn-base
│ │ ├── NSString+Tool.h
│ │ └── NSString+Tool.m
│ ├── Views
│ │ ├── AXStatusItemPopup
│ │ │ ├── AXStatusItemPopup.h
│ │ │ └── AXStatusItemPopup.m
│ │ ├── CXPopUpButton
│ │ │ ├── CXPopUpButton.h
│ │ │ └── CXPopUpButton.m
│ │ ├── CustomSlider
│ │ │ ├── CustomSlider.h
│ │ │ ├── CustomSlider.m
│ │ │ ├── CustomSliderCell.h
│ │ │ ├── CustomSliderCell.m
│ │ │ ├── NSColor+Hexa.h
│ │ │ └── NSColor+Hexa.m
│ │ ├── FDImageView.h
│ │ ├── FDImageView.m
│ │ ├── MPDragDropView
│ │ │ ├── MPDragDropView.h
│ │ │ └── MPDragDropView.m
│ │ └── SCSelectionBorder
│ │ │ ├── SCSelectionBorder.h
│ │ │ └── SCSelectionBorder.m
│ └── main.m
└── XlsxReaderWriter
│ ├── .gitignore
│ ├── LICENSE
│ ├── OfficeDocumentHierarchy.png
│ ├── README.md
│ ├── ThirdParties
│ ├── SSZipArchive
│ │ ├── LICENSE
│ │ ├── Readme.markdown
│ │ ├── SSZipArchive.podspec
│ │ ├── SSZipArchive.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── SSZipArchive.xccheckout
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── SSZipArchive.xcscheme
│ │ ├── SSZipArchive
│ │ │ ├── SSZipArchive-Prefix.pch
│ │ │ ├── SSZipArchive.h
│ │ │ ├── SSZipArchive.m
│ │ │ └── minizip
│ │ │ │ ├── crypt.h
│ │ │ │ ├── ioapi.c
│ │ │ │ ├── ioapi.h
│ │ │ │ ├── mztools.c
│ │ │ │ ├── mztools.h
│ │ │ │ ├── unzip.c
│ │ │ │ ├── unzip.h
│ │ │ │ ├── zip.c
│ │ │ │ └── zip.h
│ │ └── Tests
│ │ │ ├── Fixtures
│ │ │ ├── IncorrectHeaders.zip
│ │ │ ├── RelativeSymbolicLink.zip
│ │ │ ├── SymbolicLink.zip
│ │ │ ├── TestArchive.zip
│ │ │ ├── TestPasswordArchive.zip
│ │ │ └── Unicode.zip
│ │ │ ├── SSZipArchiveTests-Info.plist
│ │ │ └── SSZipArchiveTests.m
│ └── XMLDictionary
│ │ ├── LICENCE.md
│ │ ├── README.md
│ │ ├── Tests
│ │ ├── XMLTest.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ └── XMLTest.xccheckout
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── XMLTest.xcscheme
│ │ └── XMLTest
│ │ │ ├── AppDelegate.h
│ │ │ ├── AppDelegate.m
│ │ │ ├── Default-568h@2x.png
│ │ │ ├── ViewController.h
│ │ │ ├── ViewController.m
│ │ │ ├── XMLTest-Info.plist
│ │ │ ├── XMLTest-Prefix.pch
│ │ │ ├── en.lproj
│ │ │ ├── InfoPlist.strings
│ │ │ └── ViewController.xib
│ │ │ └── main.m
│ │ ├── XMLDictionary.podspec
│ │ └── XMLDictionary
│ │ ├── XMLDictionary.h
│ │ └── XMLDictionary.m
│ ├── XlsxReaderWriter Mac
│ ├── Info.plist
│ └── XlsxReaderWriter.h
│ ├── XlsxReaderWriter.podspec
│ ├── XlsxReaderWriter.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ └── XlsxReaderWriter.xccheckout
│ └── xcshareddata
│ │ ├── xcbaselines
│ │ └── 45B6E2441A148F7500288A78.xcbaseline
│ │ │ ├── 2954B0B9-8AB5-4909-AD5F-73FF57878BD0.plist
│ │ │ ├── CC47ACDC-BF73-43F6-86AE-D5D127FB07FE.plist
│ │ │ └── Info.plist
│ │ └── xcschemes
│ │ └── XlsxReaderWriter.xcscheme
│ ├── XlsxReaderWriter
│ ├── BRACalcChain.h
│ ├── BRACalcChain.m
│ ├── BRACalcChainCell.h
│ ├── BRACalcChainCell.m
│ ├── BRACell.h
│ ├── BRACell.m
│ ├── BRACellFill.h
│ ├── BRACellFill.m
│ ├── BRACellFormat.h
│ ├── BRACellFormat.m
│ ├── BRACellRange.h
│ ├── BRACellRange.m
│ ├── BRAColumn.h
│ ├── BRAColumn.m
│ ├── BRAComment.h
│ ├── BRAComment.m
│ ├── BRAComments.h
│ ├── BRAComments.m
│ ├── BRAContentTypes.h
│ ├── BRAContentTypes.m
│ ├── BRAContentTypesDefaultExtension.h
│ ├── BRAContentTypesDefaultExtension.m
│ ├── BRAContentTypesOverride.h
│ ├── BRAContentTypesOverride.m
│ ├── BRADrawing.h
│ ├── BRADrawing.m
│ ├── BRAElementWithRelationships.h
│ ├── BRAElementWithRelationships.m
│ ├── BRAImage.h
│ ├── BRAImage.m
│ ├── BRAMergeCell.h
│ ├── BRAMergeCell.m
│ ├── BRANumberFormat.h
│ ├── BRANumberFormat.m
│ ├── BRAOfficeDocument.h
│ ├── BRAOfficeDocument.m
│ ├── BRAOfficeDocumentPackage.h
│ ├── BRAOfficeDocumentPackage.m
│ ├── BRAOpenXmlElement.h
│ ├── BRAOpenXmlElement.m
│ ├── BRAOpenXmlSubElement.h
│ ├── BRAOpenXmlSubElement.m
│ ├── BRAPlatformSpecificDefines.h
│ ├── BRARelatedToColumnAndRowProtocol.h
│ ├── BRARelationship.h
│ ├── BRARelationship.m
│ ├── BRARelationships.h
│ ├── BRARelationships.m
│ ├── BRARow.h
│ ├── BRARow.m
│ ├── BRASharedString.h
│ ├── BRASharedString.m
│ ├── BRASharedStrings.h
│ ├── BRASharedStrings.m
│ ├── BRASheet.h
│ ├── BRASheet.m
│ ├── BRAStyles.h
│ ├── BRAStyles.m
│ ├── BRATheme.h
│ ├── BRATheme.m
│ ├── BRAVmlDrawing.h
│ ├── BRAVmlDrawing.m
│ ├── BRAWorksheet.h
│ ├── BRAWorksheet.m
│ ├── BRAWorksheetDrawing.h
│ ├── BRAWorksheetDrawing.m
│ ├── NSDictionary+DeepCopy.h
│ ├── NSDictionary+DeepCopy.m
│ ├── NSDictionary+OpenXMLDictionaryParser.h
│ ├── NSDictionary+OpenXMLDictionaryParser.m
│ ├── NSDictionary+OpenXmlString.h
│ ├── NSDictionary+OpenXmlString.m
│ ├── NativeColor+HTML.h
│ ├── NativeColor+HTML.m
│ ├── NativeColor+OpenXML.h
│ ├── NativeColor+OpenXML.m
│ ├── NativeFont+BoldItalic.h
│ ├── NativeFont+BoldItalic.m
│ └── XlsxReaderWriter-swift-bridge.h
│ └── XlsxReaderWriterTests
│ ├── BRAXlsxReaderWriterTests.m
│ ├── Info.plist
│ ├── photo-1415226481302-c40f24f4d45e.jpeg
│ └── testWorkbook.xlsx
├── FDLocalizederDemo
├── FDLocalizederDemo.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcuserdata
│ │ │ └── chuxiao.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── chuxiao.xcuserdatad
│ │ └── xcschemes
│ │ └── xcschememanagement.plist
├── FDLocalizederDemo
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ ├── en.lproj
│ │ ├── LocalizaFile1.strings
│ │ └── LocalizaFile2.strings
│ ├── es.lproj
│ │ ├── LaunchScreen.strings
│ │ ├── LocalizaFile1.strings
│ │ ├── LocalizaFile2.strings
│ │ └── Main.strings
│ ├── fr.lproj
│ │ ├── LaunchScreen.strings
│ │ ├── LocalizaFile1.strings
│ │ ├── LocalizaFile2.strings
│ │ └── Main.strings
│ ├── main.m
│ └── zh-Hant.lproj
│ │ ├── LaunchScreen.strings
│ │ ├── LocalizaFile1.strings
│ │ ├── LocalizaFile2.strings
│ │ └── Main.strings
└── FDLocalizederDemoTests
│ ├── FDLocalizederDemoTests.m
│ └── Info.plist
├── FDLocalizeder_Excel模板.xlsx
├── LICENSE
└── README.md
/.source/073331641B4BD2FC98D852E60121D341.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/073331641B4BD2FC98D852E60121D341.png
--------------------------------------------------------------------------------
/.source/3101550-8279e9d744ff28e1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/3101550-8279e9d744ff28e1.png
--------------------------------------------------------------------------------
/.source/EAEC404C98DAECC6BB54A64924C24610.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/EAEC404C98DAECC6BB54A64924C24610.jpeg
--------------------------------------------------------------------------------
/.source/EBE063B8-002E-4B22-BA79-912F3D555B6C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/EBE063B8-002E-4B22-BA79-912F3D555B6C.png
--------------------------------------------------------------------------------
/.source/F1350746-FC3C-459F-AE0C-8D6CED517678.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/F1350746-FC3C-459F-AE0C-8D6CED517678.png
--------------------------------------------------------------------------------
/.source/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/.source/logo.png
--------------------------------------------------------------------------------
/FDLocalizeder/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/.gitignore
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | xcuserdata
30 | dir
31 |
32 | project.pbxproj
33 | file
34 |
35 |
36 |
37 |
38 | 2018-03-13T08:46:34.000000Z
39 | a02083aa3aeda7bc632c43147ed465e6
40 | 2017-12-14T10:11:16.250045Z
41 | 28811
42 | chux
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 | 67503
65 |
66 | xcshareddata
67 | dir
68 |
69 | project.xcworkspace
70 | dir
71 |
72 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | contents.xcworkspacedata
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | a54b6450d65c401d48911394f6a65bd2
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 135
62 |
63 | xcuserdata
64 | dir
65 |
66 | xcshareddata
67 | dir
68 |
69 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/.svn/text-base/contents.xcworkspacedata.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcshareddata/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace/xcshareddata
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MobPods.xcscmblueprint
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 4bd2cbd94e6b23e2eaa27dd736cfc2df
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 1276
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcshareddata/.svn/text-base/MobPods.xcscmblueprint.svn-base:
--------------------------------------------------------------------------------
1 | {
2 | "DVTSourceControlWorkspaceBlueprintPrimaryRemoteRepositoryKey" : "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326",
3 | "DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey" : {
4 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : {
5 |
6 | }
7 | },
8 | "DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey" : {
9 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : 9223372036854775807
10 | },
11 | "DVTSourceControlWorkspaceBlueprintIdentifierKey" : "10384C83-3E5B-4735-A503-107EA93841BA",
12 | "DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey" : {
13 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : "ios\/"
14 | },
15 | "DVTSourceControlWorkspaceBlueprintNameKey" : "MobPods",
16 | "DVTSourceControlWorkspaceBlueprintVersion" : 204,
17 | "DVTSourceControlWorkspaceBlueprintRelativePathToProjectKey" : "project\/MobPods\/branches\/MobPods\/trunk\/MobPods\/MobPods.xcodeproj",
18 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey" : [
19 | {
20 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "svn:\/\/192.168.180.65",
21 | "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Subversion",
22 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326"
23 | }
24 | ]
25 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcshareddata/MobPods.xcscmblueprint:
--------------------------------------------------------------------------------
1 | {
2 | "DVTSourceControlWorkspaceBlueprintPrimaryRemoteRepositoryKey" : "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326",
3 | "DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey" : {
4 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : {
5 |
6 | }
7 | },
8 | "DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey" : {
9 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : 9223372036854775807
10 | },
11 | "DVTSourceControlWorkspaceBlueprintIdentifierKey" : "10384C83-3E5B-4735-A503-107EA93841BA",
12 | "DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey" : {
13 | "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326" : "ios\/"
14 | },
15 | "DVTSourceControlWorkspaceBlueprintNameKey" : "MobPods",
16 | "DVTSourceControlWorkspaceBlueprintVersion" : 204,
17 | "DVTSourceControlWorkspaceBlueprintRelativePathToProjectKey" : "project\/MobPods\/branches\/MobPods\/trunk\/MobPods\/MobPods.xcodeproj",
18 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey" : [
19 | {
20 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "svn:\/\/192.168.180.65",
21 | "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Subversion",
22 | "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b++5326"
23 | }
24 | ]
25 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace/xcuserdata
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | youzu.xcuserdatad
30 | dir
31 |
32 | ShengQiangLiu.xcuserdatad
33 | dir
34 |
35 | chuxiao.xcuserdatad
36 | dir
37 |
38 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | UserInterfaceState.xcuserstate
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 24ec9c3f14858bba1f7dc3e75e11a9d7
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 | has-props
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 19461
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/.svn/prop-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/ShengQiangLiu.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chdo.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chdo.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | UserInterfaceState.xcuserstate
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | dc5f65e76df5616d569bafdb9f45f866
37 | 2018-01-12T08:16:41.054847Z
38 | 29551
39 | chux
40 | has-props
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 362144
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/.svn/prop-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/fwzhou.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/fwzhou.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | UserInterfaceState.xcuserstate
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 2862d14da72453410e5d1c3c7a3c9e98
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 | has-props
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 38752
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/.svn/prop-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/.svn/text-base/UserInterfaceState.xcuserstate.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder.xcodeproj/project.xcworkspace/xcuserdata/youzu.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcshareddata/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcshareddata
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-11-14T09:26:01.605500Z
11 | 27809
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | xcschemes
30 | dir
31 |
32 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcshareddata/xcschemes/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcshareddata/xcschemes
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-11-14T09:26:01.605500Z
11 | 27809
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | youzu.xcuserdatad
30 | dir
31 |
32 | ShengQiangLiu.xcuserdatad
33 | dir
34 |
35 | chuxiao.xcuserdatad
36 | dir
37 |
38 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | xcdebugger
30 | dir
31 |
32 | xcschemes
33 | dir
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcdebugger/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcdebugger
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | Breakpoints_v2.xcbkptlist
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 8f08ce0db87acdc16e7fe96c41de03c8
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 91
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcdebugger/.svn/text-base/Breakpoints_v2.xcbkptlist.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcschemes/.svn/text-base/xcschememanagement.plist.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MobPods.xcscheme
8 |
9 | isShown
10 |
11 | orderHint
12 | 2
13 |
14 | MobPodsScript copy.xcscheme
15 |
16 | isShown
17 |
18 | orderHint
19 | 4
20 |
21 | MobPodsScript.xcscheme
22 |
23 | isShown
24 |
25 | orderHint
26 | 3
27 |
28 |
29 | SuppressBuildableAutocreation
30 |
31 | 82C1079C1DCB253E0052775D
32 |
33 | primary
34 |
35 |
36 | 82C107A31DCB25500052775D
37 |
38 | primary
39 |
40 |
41 | 82FBA3251D654DF7007AE170
42 |
43 | primary
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/ShengQiangLiu.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MobPods.xcscheme
8 |
9 | isShown
10 |
11 | orderHint
12 | 2
13 |
14 | MobPodsScript copy.xcscheme
15 |
16 | isShown
17 |
18 | orderHint
19 | 4
20 |
21 | MobPodsScript.xcscheme
22 |
23 | isShown
24 |
25 | orderHint
26 | 3
27 |
28 |
29 | SuppressBuildableAutocreation
30 |
31 | 82C1079C1DCB253E0052775D
32 |
33 | primary
34 |
35 |
36 | 82C107A31DCB25500052775D
37 |
38 | primary
39 |
40 |
41 | 82FBA3251D654DF7007AE170
42 |
43 | primary
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chdo.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | FDLocalizeder.xcscheme_^#shared#^_
8 |
9 | orderHint
10 | 2
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chuxiao.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/chuxiao.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | xcdebugger
30 | dir
31 |
32 | xcschemes
33 | dir
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcdebugger/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcdebugger
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | Breakpoints_v2.xcbkptlist
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 43a85c2ee8a67ff176eb3c14274a39d1
37 | 2018-01-12T08:16:41.054847Z
38 | 29551
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 93556
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcschemes/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcschemes
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-11-14T09:26:01.605500Z
11 | 27809
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MobPods.xcscheme
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 7b81fcfc5fc61d703e91dbe808f0761d
37 | 2017-11-14T09:26:01.605500Z
38 | 27809
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 3343
62 |
63 | xcschememanagement.plist
64 | file
65 |
66 |
67 |
68 |
69 | 2018-03-13T08:46:34.000000Z
70 | f8cbfee431f8a5d38c2c12624d8de0a0
71 | 2017-07-24T13:31:00.455698Z
72 | 25213
73 | chux
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | 479
96 |
97 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcschemes/.svn/text-base/xcschememanagement.plist.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MobPods.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 82FBA3251D654DF7007AE170
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | FDLocalizeder.xcscheme
8 |
9 | orderHint
10 | 2
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 82FBA3251D654DF7007AE170
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/fd.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | FDLocalizeder.xcscheme
8 |
9 | orderHint
10 | 5
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 82FBA3251D654DF7007AE170
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/fwzhou.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/fwzhou.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | FDLocalizeder.xcscheme
8 |
9 | orderHint
10 | 2
11 |
12 | FDLocalizeder.xcscheme_^#shared#^_
13 |
14 | orderHint
15 | 2
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/youzu.xcuserdatad
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | xcdebugger
30 | dir
31 |
32 | xcschemes
33 | dir
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcdebugger/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/youzu.xcuserdatad/xcdebugger
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | Breakpoints_v2.xcbkptlist
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 8f08ce0db87acdc16e7fe96c41de03c8
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 91
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcdebugger/.svn/text-base/Breakpoints_v2.xcbkptlist.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcschemes/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods.xcodeproj/xcuserdata/youzu.xcuserdatad/xcschemes
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MobPods.xcscheme
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | d0024d729fce4cb9fa152f3c60acd3c7
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 3303
62 |
63 | xcschememanagement.plist
64 | file
65 |
66 |
67 |
68 |
69 | 2018-03-13T08:46:34.000000Z
70 | f8cbfee431f8a5d38c2c12624d8de0a0
71 | 2017-07-24T13:31:00.455698Z
72 | 25213
73 | chux
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | 479
96 |
97 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcschemes/.svn/text-base/xcschememanagement.plist.svn-base:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MobPods.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 82FBA3251D654DF7007AE170
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder.xcodeproj/xcuserdata/youzu.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MobPods.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 82FBA3251D654DF7007AE170
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/.svn/prop-base/backBtn.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/.svn/text-base/AppDelegate.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/8/18.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @protocol GlobalMonitorForEventDelegate
12 |
13 | - (void)openMainViewControllerWithPath:(NSString *)path;
14 |
15 | @end
16 |
17 | @interface AppDelegate : NSObject
18 | @property (nonatomic, strong) NSWindow *window;
19 | @property (nonatomic, assign) id delegate;
20 |
21 | @property (nonatomic, assign) NSInteger windowID;
22 |
23 | + (instancetype)shareInstanced;
24 |
25 | @end
26 |
27 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/.svn/text-base/backBtn.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/.svn/text-base/backBtn.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/.svn/text-base/main.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/8/18.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "MPUserNotification.h"
11 | #import "AppDelegate.h"
12 |
13 | int main(int argc, const char * argv[])
14 | {
15 | for (int i = 0; i < argc; i ++) {
16 | NSString *windowID = [NSString stringWithUTF8String:argv[i]];
17 |
18 | if (i == 1) {
19 | [[NSUserDefaults standardUserDefaults] setValue:windowID forKey:@"currentWindowID"];
20 | }
21 |
22 | }
23 |
24 | return NSApplicationMain(argc, argv);
25 | }
26 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // MacDemo
4 | //
5 | // Created by chuxiao on 2018/5/2.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : NSObject
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/AppDelegate.m:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.m
3 | // MacDemo
4 | //
5 | // Created by chuxiao on 2018/5/2.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import "AppDelegate.h"
10 |
11 | @interface AppDelegate ()
12 |
13 | @end
14 |
15 | @implementation AppDelegate
16 |
17 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
18 | // Insert code here to initialize your application
19 | }
20 |
21 |
22 | - (void)applicationWillTerminate:(NSNotification *)aNotification {
23 | // Insert code here to tear down your application
24 | }
25 |
26 | - (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)sender{
27 | return YES;//YES-窗口程序两者都关闭,NO-只关闭窗口;
28 | }
29 |
30 | @end
31 |
32 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Assets.xcassets
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | mp_openProject.imageset
30 | dir
31 |
32 | mp_icon.imageset
33 | dir
34 |
35 | mp_add.imageset
36 | dir
37 |
38 | xcode-project_Icon 33.imageset
39 | dir
40 |
41 | Nav
42 | dir
43 |
44 | mp_back.imageset
45 | dir
46 |
47 | mp_more.imageset
48 | dir
49 |
50 | mp_delete.imageset
51 | dir
52 |
53 | xcode-project_Icon000.imageset
54 | dir
55 |
56 | AppIcon.appiconset
57 | dir
58 |
59 | mp_doc.imageset
60 | dir
61 |
62 | mp_backup.imageset
63 | dir
64 |
65 | xcode-project_Icon111.imageset
66 | dir
67 |
68 | mp_download.imageset
69 | dir
70 |
71 | workspace_Icon.imageset
72 | dir
73 |
74 | mp_add2.imageset
75 | dir
76 |
77 | Contents.json
78 | file
79 |
80 |
81 |
82 |
83 | 2018-03-13T08:46:34.000000Z
84 | 31cc68f34934a99c0b0c1bebde56309c
85 | 2017-07-24T13:31:00.455698Z
86 | 25213
87 | chux
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | 62
110 |
111 | mp_setting.imageset
112 | dir
113 |
114 | mp_next.imageset
115 | dir
116 |
117 | mp_file.imageset
118 | dir
119 |
120 | xcode-project_Icon.imageset
121 | dir
122 |
123 | mp_delete2.imageset
124 | dir
125 |
126 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/.svn/text-base/Contents.json.svn-base:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-1.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-2.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-3.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-4.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-5.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-6.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-7.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-8.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator-9.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/prop-base/43-Automator.png.svn-base:
--------------------------------------------------------------------------------
1 | K 13
2 | svn:mime-type
3 | V 24
4 | application/octet-stream
5 | END
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-1.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-1.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-2.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-2.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-3.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-3.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-4.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-4.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-5.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-5.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-6.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-6.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-7.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-7.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-8.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-8.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-9.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator-9.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator.png.svn-base:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/43-Automator.png.svn-base
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/.svn/text-base/Contents.json.svn-base:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "size" : "16x16",
5 | "idiom" : "mac",
6 | "filename" : "43-Automator-9.png",
7 | "scale" : "1x"
8 | },
9 | {
10 | "size" : "16x16",
11 | "idiom" : "mac",
12 | "filename" : "43-Automator-8.png",
13 | "scale" : "2x"
14 | },
15 | {
16 | "size" : "32x32",
17 | "idiom" : "mac",
18 | "filename" : "43-Automator-7.png",
19 | "scale" : "1x"
20 | },
21 | {
22 | "size" : "32x32",
23 | "idiom" : "mac",
24 | "filename" : "43-Automator-6.png",
25 | "scale" : "2x"
26 | },
27 | {
28 | "size" : "128x128",
29 | "idiom" : "mac",
30 | "filename" : "43-Automator-5.png",
31 | "scale" : "1x"
32 | },
33 | {
34 | "size" : "128x128",
35 | "idiom" : "mac",
36 | "filename" : "43-Automator-4.png",
37 | "scale" : "2x"
38 | },
39 | {
40 | "size" : "256x256",
41 | "idiom" : "mac",
42 | "filename" : "43-Automator-3.png",
43 | "scale" : "1x"
44 | },
45 | {
46 | "size" : "256x256",
47 | "idiom" : "mac",
48 | "filename" : "43-Automator.png",
49 | "scale" : "2x"
50 | },
51 | {
52 | "size" : "512x512",
53 | "idiom" : "mac",
54 | "filename" : "43-Automator-2.png",
55 | "scale" : "1x"
56 | },
57 | {
58 | "size" : "512x512",
59 | "idiom" : "mac",
60 | "filename" : "43-Automator-1.png",
61 | "scale" : "2x"
62 | }
63 | ],
64 | "info" : {
65 | "version" : 1,
66 | "author" : "xcode"
67 | }
68 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-1.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-2.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-3.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net-4.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-1.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-2.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-3.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x-4.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/AppIcon.appiconset/folder_pen_write_128px_4234_easyicon.net@2x.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "Finder.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder.imageset/Finder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder.imageset/Finder.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "Finder.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder1.imageset/Finder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/Finder1.imageset/Finder.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_excel_bg.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg.imageset/L_excel_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg.imageset/L_excel_bg.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg0.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_excel_bg.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg0.imageset/L_excel_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg0.imageset/L_excel_bg.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_excel_bg.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg2.imageset/L_excel_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg2.imageset/L_excel_bg.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg3.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_excel_bg.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg3.imageset/L_excel_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg3.imageset/L_excel_bg.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg4.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_excel_bg.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg4.imageset/L_excel_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_excel_bg4.imageset/L_excel_bg.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_export.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "export.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_export.imageset/export.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_export.imageset/export.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_more.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more.imageset/L_more.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more.imageset/L_more.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "L_more2.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more2.imageset/L_more2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/L_more2.imageset/L_more2.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/backup.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "backup.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/backup.imageset/backup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/backup.imageset/backup.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel-1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "dashboard_excel.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel-1.imageset/dashboard_excel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel-1.imageset/dashboard_excel.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "dashboard_excel.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel.imageset/dashboard_excel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/dashboard_excel.imageset/dashboard_excel.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/down.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "down.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/down.imageset/down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/down.imageset/down.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_close.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ex_close.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_close.imageset/ex_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_close.imageset/ex_close.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_confirm.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "ex_confirm.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_confirm.imageset/ex_confirm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/ex_confirm.imageset/ex_confirm.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "wenjian.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file.imageset/wenjian.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/file.imageset/wenjian.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file0.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "file.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file0.imageset/file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/file0.imageset/file.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "file.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/file2.imageset/file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/file2.imageset/file.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/import.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "import.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/import.imageset/import.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/import.imageset/import.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/reset.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "reset.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/reset.imageset/reset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/reset.imageset/reset.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/timg.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "timg.jpeg",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/timg.imageset/timg.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/timg.imageset/timg.jpeg
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/undo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "undo.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/undo.imageset/undo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/undo.imageset/undo.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/wangge.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "wangge.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/wangge.imageset/wangge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/wangge.imageset/wangge.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/wenhao.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "wenhao.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/wenhao.imageset/wenhao.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/wenhao.imageset/wenhao.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon 0.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "Untitled-2.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon 0.imageset/Untitled-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon 0.imageset/Untitled-2.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon-1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "xcode-project_Icon.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon-1.imageset/xcode-project_Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon-1.imageset/xcode-project_Icon.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "xcode-project_Icon.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon.imageset/xcode-project_Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon.imageset/xcode-project_Icon.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon_file.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "xcode-project_Icon_file.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon_file.imageset/xcode-project_Icon_file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/FDLocalizeder/Assets.xcassets/xcode-project_Icon_file.imageset/xcode-project_Icon_file.png
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Base.lproj/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Base.lproj
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2018-01-12T08:16:41.054847Z
11 | 29551
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | Main.storyboard
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:34.000000Z
36 | 2b6c8592cf4404b129ff8b5b720e6564
37 | 2018-01-12T08:16:41.054847Z
38 | 29551
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 197592
62 |
63 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPAlertController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPAlertController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/5/31.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPAlertController : NSViewController
12 |
13 | @property (nonatomic, copy) NSString *alertInfo;
14 |
15 | @property (nonatomic, copy) void (^confirmBlock)();
16 | @property (nonatomic, copy) void (^chooseBlock)();
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPAlertController.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPAlertController.m
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/5/31.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "MPAlertController.h"
10 |
11 | @interface MPAlertController ()
12 | @property (weak) IBOutlet NSTextField *lbAlertInfo;
13 |
14 |
15 | @end
16 |
17 | @implementation MPAlertController
18 |
19 | - (void)viewDidLoad {
20 | [super viewDidLoad];
21 | // Do view setup here.
22 |
23 | self.lbAlertInfo.stringValue = self.alertInfo;
24 | }
25 |
26 | - (void)viewDidAppear{
27 | [super viewDidAppear];
28 | [self.view.window setLevel:kCGPopUpMenuWindowLevel];
29 | }
30 |
31 | - (IBAction)confirmActiobn:(id)sender {
32 | if (self.confirmBlock) {
33 | self.confirmBlock();
34 | }
35 | [self.view.window close];
36 | }
37 |
38 | - (IBAction)chooseAction:(id)sender {
39 | if (self.chooseBlock) {
40 | self.chooseBlock();
41 | }
42 | [self.view.window close];
43 | }
44 |
45 |
46 |
47 |
48 | @end
49 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPBaseViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPBaseViewController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/9.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPBaseViewController : NSViewController
12 | @property (weak) IBOutlet NSView *navView;
13 | @property (weak) IBOutlet NSView *mainView;
14 | /**
15 | 加载指示器
16 | */
17 | @property (weak) IBOutlet NSProgressIndicator *indicator;
18 | @end
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPBaseViewController.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPBaseViewController.m
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/9.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "MPBaseViewController.h"
10 | #import "MPMainViewController.h"
11 |
12 | @interface MPBaseViewController ()
13 | @property (weak) IBOutlet NSPopUpButton *pop;
14 |
15 | @end
16 |
17 | @implementation MPBaseViewController
18 | /**
19 | 通过覆盖视图的这个方法,可以强制视图坐标系远点为左上角
20 | */
21 | //- (BOOL)isFlipped{
22 | // return YES;
23 | //}
24 | - (void)viewDidLoad {
25 | [super viewDidLoad];
26 | }
27 |
28 | - (void)dealloc{
29 | [[NSNotificationCenter defaultCenter] removeObserver:self];
30 | }
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPBaseWindow.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPBaseWindow.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/9.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPBaseWindow : NSWindow
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPBaseWindow.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPBaseWindow.m
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/9.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "MPBaseWindow.h"
10 |
11 | @implementation MPBaseWindow
12 |
13 | - (instancetype)initWithContentRect:(NSRect)contentRect styleMask:(NSWindowStyleMask)style backing:(NSBackingStoreType)bufferingType defer:(BOOL)flag {
14 | self = [super initWithContentRect:contentRect styleMask:style backing:bufferingType defer:flag];
15 | if (self) {
16 | self.backgroundColor = [NSColor whiteColor];
17 | }
18 | return self;
19 | }
20 |
21 | - (BOOL)canBecomeKeyWindow {
22 | return YES;
23 | }
24 |
25 | - (BOOL)canBecomeMainWindow{
26 | return YES;
27 | }
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPBaseWindowController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPBaseWindowController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/2.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPBaseWindowController : NSWindowController
12 |
13 | //+ (instancetype)shareWindow;
14 |
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPCocoaPodsViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPCocoaPodsViewController.h
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/11/14.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPCocoaPodsViewController : NSViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPMoreVersionViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPMoreVersionViewController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/11.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPMoreVersionViewController : NSViewController
12 |
13 | @property (nonatomic, strong) NSArray *arrData;
14 |
15 | @property (nonatomic, copy) selecteOtherVersionBlock selecteOtherVersionBlock;
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPProjectListViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPProjectListViewController.h
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/11/2.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPProjectListViewController : NSViewController
12 |
13 | @property (nonatomic, copy) openMainVC openBlock;
14 |
15 | - (void)searchAction:(NSString *)searchValue;
16 |
17 | @property (nonatomic, assign) NSString *strWindowID;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPVirtualController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPVirtualController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/1.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPVirtualController : NSViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPVirtualController.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPVirtualController.m
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/1.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "MPVirtualController.h"
10 |
11 | @interface MPVirtualController ()
12 |
13 | @end
14 |
15 | @implementation MPVirtualController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 | // Do view setup here.
20 | }
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPVirtualViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPVirtualViewController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/1.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPVirtualViewController : NSViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPVirtualWindowController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPVirtualWindowController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/1.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPVirtualWindowController : NSWindowController
12 | - (void)click;
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/.svn/text-base/MPWebViewController.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPWebViewController.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/5/8.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPWebViewController : NSViewController
12 |
13 | @property (nonatomic, copy) NSString *strURL;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXConsoleViewModel.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXConsoleViewModel.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/14.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | @class FDMainViewModel;
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | @interface CXConsoleViewModel : NSObject
15 |
16 | @property (nonatomic, weak) FDMainViewModel *mainVM;
17 |
18 | @property (nonatomic, copy) NSString *strConsole;
19 |
20 | @property (nonatomic, strong) NSMutableString *mstrConsole;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXConsoleViewModel.m:
--------------------------------------------------------------------------------
1 | //
2 | // CXConsoleViewModel.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/14.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import "CXConsoleViewModel.h"
10 | #import "FDMainViewModel.h"
11 | #import "FDViewController.h"
12 |
13 | @interface CXConsoleViewModel ()
14 | {
15 | NSString *_strConsole;
16 | }
17 |
18 | @property (nonatomic, strong) NSTextView *tipText;
19 |
20 |
21 | @end
22 |
23 | static dispatch_queue_t _concurrentQueue;
24 |
25 | @implementation CXConsoleViewModel
26 |
27 | - (instancetype) init
28 | {
29 | if (self = [super init]) {
30 | self.tipText = self.mainVM.mainVC.tipText;
31 | _concurrentQueue = dispatch_queue_create("com.FDLocalizederConsole.syncQueue", DISPATCH_QUEUE_CONCURRENT);
32 | }
33 | return self;
34 | }
35 |
36 | - (NSString *)strConsole
37 | {
38 | __block NSString *tempStrConsole;
39 | dispatch_sync(_concurrentQueue, ^{
40 | tempStrConsole = self.strConsole;
41 | });
42 | return tempStrConsole;
43 | }
44 |
45 | - (void)setStrConsole:(NSString *)strConsole
46 | {
47 | dispatch_barrier_async(_concurrentQueue, ^{
48 | self.mstrConsole = [strConsole copy];
49 | // [self.mainVM.mainVC.tipText performSelectorOnMainThread:@selector(setString:) withObject:strConsole waitUntilDone:YES];
50 | dispatch_async(dispatch_get_main_queue(), ^{
51 | self.mainVM.mainVC.tipText.string = strConsole;
52 | });
53 | });
54 | }
55 |
56 |
57 |
58 | @end
59 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXSelectLanguagePathCellView.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXSelectLanguagePathCellView.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/23.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @interface CXSelectLanguagePathCellView : NSTableCellView
14 |
15 | @property (weak) IBOutlet NSImageView *icon;
16 |
17 |
18 | @end
19 |
20 | NS_ASSUME_NONNULL_END
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXSelectLanguagePathCellView.m:
--------------------------------------------------------------------------------
1 | //
2 | // CXSelectLanguagePathCellView.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/23.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import "CXSelectLanguagePathCellView.h"
10 |
11 | @implementation CXSelectLanguagePathCellView
12 |
13 | - (void)drawRect:(NSRect)dirtyRect {
14 | [super drawRect:dirtyRect];
15 |
16 | // Drawing code here.
17 | }
18 |
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXSelectLanguagePathView.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXSelectLanguagePathView.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/22.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /**
14 | 没有办法,先弄个单例
15 | */
16 | @interface CXSelectLanguageManager : NSObject
17 |
18 | + (instancetype)manager;
19 |
20 | @property (nonatomic, copy) NSArray *languagesPaths;
21 |
22 | @end
23 |
24 |
25 | @interface CXSelectLanguagePathView : NSView
26 |
27 | @property (nonatomic, copy) NSArray *languagesPaths;
28 |
29 | - (void)settingLanguagesPaths:(NSArray *)languagesPaths;
30 |
31 | - (instancetype)initWithLanguagesPaths:(NSArray *)languagesPaths;
32 |
33 | @end
34 |
35 | NS_ASSUME_NONNULL_END
36 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXSliderRangeView.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXSliderRangeView.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/15.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface CXSliderRangeView : NSView
12 |
13 | +(CXSliderRangeView *)acquireCustomView;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/CXSliderRangeView.m:
--------------------------------------------------------------------------------
1 | //
2 | // CXSliderRangeView.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/15.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "CXSliderRangeView.h"
10 |
11 | @implementation CXSliderRangeView
12 |
13 | - (void)drawRect:(NSRect)dirtyRect {
14 | [super drawRect:dirtyRect];
15 |
16 | // Drawing code here.
17 | }
18 |
19 | +(CXSliderRangeView *)acquireCustomView
20 | {
21 | CXSliderRangeView *view = [[NSNib alloc] initWithNibNamed:@"CXSliderRangeView" bundle:nil];
22 |
23 | return view;
24 | }
25 | @end
26 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDLanguagePopoverViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDLanguagePopoverViewController.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/10.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 |
12 | /**
13 | 自定义操作模型
14 | */
15 | @interface FDLanguagePersonalizeModel : NSObject
16 |
17 | // 自定义操作
18 | @property (assign, nonatomic) BOOL addWithRange;
19 | @property (assign, nonatomic) char leftRow;
20 | @property (assign, nonatomic) char rightRow;
21 | @property (assign, nonatomic) NSInteger leftRowIndex;
22 | @property (assign, nonatomic) NSInteger rightRowIndex;
23 |
24 | @property (assign, nonatomic) BOOL compare;
25 | @property (assign, nonatomic) BOOL compareToAdd;
26 | @property (nonatomic, assign) BOOL textSorting;
27 | @property (nonatomic, assign) BOOL deleteLocalize;
28 |
29 | @property (copy, nonatomic) NSString *baseLanguage;
30 |
31 | @end
32 |
33 |
34 | @interface FDLanguagePopoverViewController : NSViewController
35 |
36 | @property (strong, nonatomic) NSArray *arrLanguage;
37 | @property (copy, nonatomic) void (^disAppearBlock)(NSArray *arrLanguage, FDLanguagePersonalizeModel *personalizeModel);
38 | @property (copy, nonatomic) void (^undoBlock)();
39 | @property (copy, nonatomic) void (^backupBlock)();
40 | @property (copy, nonatomic) void (^documentWrappingBlcok)();
41 | @property (copy, nonatomic) void (^closeBlock)();
42 | @property (copy, nonatomic) void (^compareBlock)(FDLanguagePersonalizeModel *personalizeModel);
43 | @property (nonatomic, copy) void (^exportToExcelBLock)();
44 |
45 | @end
46 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDMainDataViewModel.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDMainDataViewModel.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/11.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | @class FDMainViewModel;
11 |
12 | @interface FDMainDataViewModel : NSObject
13 |
14 | @property (weak, nonatomic) FDMainViewModel *mainVM;
15 |
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDMainDataViewModel.m:
--------------------------------------------------------------------------------
1 | //
2 | // FDMainDataViewModel.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/11.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "FDMainDataViewModel.h"
10 |
11 | @implementation FDMainDataViewModel
12 |
13 | - (instancetype) init
14 | {
15 | if (self = [super init]) {
16 | [self _configData];
17 | }
18 |
19 | return self;
20 | }
21 |
22 | - (void)_configData
23 | {
24 |
25 | }
26 |
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDMainExtendViewModel.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDMainExtendViewModel.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/7/13.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | @class FDMainViewModel;
11 |
12 | @interface FDMainExtendViewModel : NSObject
13 |
14 | @property (nonatomic, weak) FDMainViewModel *mainVM;
15 |
16 |
17 | - (void)compareStrings;
18 |
19 | - (NSDictionary *)compareValuesWithFilePath:(NSString *)filePath
20 | codes:(NSArray *)codes
21 | values:(NSArray *)values;
22 |
23 | - (NSDictionary *)compareValuesWithFilePath_1:(NSString *)filePath_1
24 | filePath_2:(NSString *)filePath_2;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDSecondVC.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDSecondVC.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/6/8.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDSecondVC : NSViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDSecondVC.m:
--------------------------------------------------------------------------------
1 | //
2 | // FDSecondVC.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/6/8.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "FDSecondVC.h"
10 |
11 | @implementation FDSecondVC
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/FDViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/4/25.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDViewController : NSViewController
12 |
13 | @property (weak) IBOutlet NSPopUpButton *localizeNamesPopButton;
14 |
15 | @property (weak) IBOutlet NSPopUpButton *languagesPopButton;
16 |
17 | @property (unsafe_unretained) IBOutlet NSTextView *tipText;
18 |
19 | @property (unsafe_unretained) IBOutlet NSTextView *codeCommentTextView;
20 |
21 | @property (weak) IBOutlet NSButton *addLocalizeButton;
22 |
23 | @end
24 |
25 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/ObjC segues and animators/MyCustomAnimator.h:
--------------------------------------------------------------------------------
1 | //
2 | // MyCustomAnimator.h
3 | // TestOSXApp
4 | //
5 | // Created by jonathan on 22/01/2015.
6 | // Copyright (c) 2015 net.ellipsis. All rights reserved.
7 | //
8 |
9 | #import
10 | @import AppKit;
11 |
12 | @interface MyCustomAnimator : NSObject
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/ObjC segues and animators/MyCustomSegue.h:
--------------------------------------------------------------------------------
1 | //
2 | // MyCustomSegue.h
3 | // NSViewControllerPresentations
4 | //
5 | // Created by jonathan on 25/01/2015.
6 | // Copyright (c) 2015 net.ellipsis. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MyCustomSegue : NSStoryboardSegue
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/ObjC segues and animators/MyCustomSegue.m:
--------------------------------------------------------------------------------
1 | //
2 | // MyCustomSegue.m
3 | // NSViewControllerPresentations
4 | //
5 | // Created by jonathan on 25/01/2015.
6 | // Copyright (c) 2015 net.ellipsis. All rights reserved.
7 | //
8 |
9 | #import "MyCustomSegue.h"
10 | #import "MyCustomAnimator.h"
11 |
12 | #import "FDLocalizeder-Swift.h"
13 |
14 | @implementation MyCustomSegue
15 |
16 | - (void)perform {
17 | //Objective-C and Swift versions of animator both work
18 | //id animator1 = [[MyCustomAnimator alloc] init];
19 |
20 | id animator2 = [[MyCustomSwiftAnimator alloc] init];
21 | [self.sourceController presentViewController:self.destinationController
22 | animator:animator2];
23 | }
24 | @end
25 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/Swift segues and animators/FDLocalizeder-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | //
2 | // Use this file to import your target's public headers that you would like to expose to Swift.
3 | //
4 |
5 |
6 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Controllers/Swift segues and animators/MyCustomSwiftSegue.swift:
--------------------------------------------------------------------------------
1 | //
2 | // MyCustomSwiftSegue.swift
3 | // NSViewControllerPresentations
4 | //
5 | // Created by jonathan on 25/01/2015.
6 | // Copyright (c) 2015 net.ellipsis. All rights reserved.
7 | //
8 |
9 | import Cocoa
10 |
11 | class MyCustomSwiftSegue: NSStoryboardSegue {
12 |
13 | override func perform() {
14 | let animator = MyCustomSwiftAnimator()
15 | let sourceVC = self.sourceController as! NSViewController
16 | let destVC = self.destinationController as! NSViewController
17 | sourceVC.presentViewController(destVC, animator: animator)
18 | }
19 |
20 | }
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MPTask
30 | dir
31 |
32 | MPDataTool.m
33 | file
34 |
35 |
36 |
37 |
38 | 2018-03-13T08:46:50.000000Z
39 | b661a6a9472ecc70010c14880d01af51
40 | 2017-07-24T13:31:00.455698Z
41 | 25213
42 | chux
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 | 408
65 |
66 | MOBFoundation.framework
67 | dir
68 |
69 | MPSpotlightQuery
70 | dir
71 |
72 | MPUserNotification
73 | dir
74 |
75 | DJProgressHUD
76 | dir
77 |
78 | MOBFoundation
79 | dir
80 |
81 | MPAlert
82 | dir
83 |
84 | fmdb
85 | dir
86 |
87 | MPDataTool.h
88 | file
89 |
90 |
91 |
92 |
93 | 2018-03-13T08:46:50.000000Z
94 | 6a89289972c202aa3612321cf4dae49e
95 | 2017-07-24T13:31:00.455698Z
96 | 25213
97 | chux
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 | 287
120 |
121 | FBKVOController
122 | dir
123 |
124 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/.svn/text-base/MPDataTool.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPDataTool.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/25.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPDataTool : NSObject
12 |
13 | + (instancetype)shareInstanced ;
14 |
15 | @property (nonatomic, assign) NSInteger btnTag;
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/.svn/text-base/MPDataTool.m.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPDataTool.m
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/25.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "MPDataTool.h"
10 |
11 | @implementation MPDataTool
12 |
13 | + (instancetype)shareInstanced {
14 | static dispatch_once_t onceToken;
15 | static MPDataTool *appdele = nil;
16 | dispatch_once(&onceToken, ^{
17 | appdele = [[[self class] alloc] init];
18 | });
19 | return appdele;
20 | }
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | HTTP
30 | dir
31 |
32 | Utils
33 | dir
34 |
35 | Extends
36 | dir
37 |
38 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/Extends/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation/Extends
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | RegexKitLite
30 | dir
31 |
32 | JSONKit
33 | dir
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/Extends/JSONKit/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation/Extends/JSONKit
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/Extends/RegexKitLite/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation/Extends/RegexKitLite
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/HTTP/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation/HTTP
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Libraries/MOBFoundation/Utils/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MOBFoundation/Utils
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Macro/Languages.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | German(de)
6 | de
7 | Hebrew(he)
8 | he
9 | Arabic(ar)
10 | ar
11 | English(en)
12 | en
13 | Norwegian(nb)
14 | nb
15 | Spanish(es)
16 | es
17 | Danish(da)
18 | da
19 | Italian(it)
20 | it
21 | Slovak(sk)
22 | sk
23 | Swedish(sv)
24 | sv
25 | Czech(cs)
26 | cs
27 | English(Base)
28 | Base
29 | Turkish(tr)
30 | tr
31 | Polish(pl)
32 | pl
33 | Russian(ru)
34 | ru
35 | French(fr)
36 | fr
37 | Finnish(fi)
38 | fi
39 | Dutch(nl)
40 | nl
41 | Portuguese(pt)
42 | pt
43 | Indonesia(id)
44 | id
45 | Thailand(th)
46 | th
47 | Chinese(Traditional)
48 | zh-Hant
49 | Japanese(ja)
50 | ja
51 |
52 |
53 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Macro/OtherSetting.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | DevelopmentLanguage
6 | en
7 |
8 |
9 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/CXRegexHelper.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXRegexHelper.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/11.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @interface CXRegexHelper : NSObject
14 |
15 | + (NSString *)getStringWithRegex:(NSString *)reg oriString:(NSString *)str;
16 |
17 | @end
18 |
19 | NS_ASSUME_NONNULL_END
20 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/CXRegexHelper.m:
--------------------------------------------------------------------------------
1 | //
2 | // CXRegexHelper.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/11.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import "CXRegexHelper.h"
10 |
11 | @implementation CXRegexHelper
12 |
13 | + (NSString *)getStringWithRegex:(NSString *)reg oriString:(NSString *)str
14 | {
15 | NSString *url = str;
16 | NSError *error;
17 | // 创建NSRegularExpression对象并指定正则表达式 @"[^@]*\\."
18 | NSRegularExpression *regex = [NSRegularExpression
19 | regularExpressionWithPattern:reg
20 | options:0
21 | error:&error];
22 | if (!error) { // 如果没有错误
23 | // 获取特特定字符串的范围
24 | NSTextCheckingResult *match = [regex firstMatchInString:url
25 | options:0
26 | range:NSMakeRange(0, [url length])];
27 | if (match) {
28 | // 截获特定的字符串
29 | NSString *result = [url substringWithRange:match.range];
30 | // NSLog(@"%@",result);
31 |
32 | return result;
33 | }
34 | } else { // 如果有错误,则把错误打印出来
35 | NSLog(@"error - %@", error);
36 | }
37 |
38 | return nil;
39 | }
40 |
41 | @end
42 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/CXSpecialCharacterConversion.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXSpecialCharacterConversion.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2019/5/10.
6 | // Copyright © 2019 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @interface CXSpecialCharacterConversion : NSObject
14 |
15 | + (NSString *)replaceSpecialCharacters:(NSString *)string;
16 |
17 | + (NSString *)replaceSpecialCharacters2:(NSString *)string;
18 |
19 | + (NSString *)replaceSpecialCharactersForRegex:(NSString *)string;
20 |
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDCompareManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDCompareManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/12/4.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDCompareManager : NSObject
12 |
13 | + (NSDictionary *)parseLocalfileToDictionary:(NSString *)filePath;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDDataManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDDataManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/4.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDDataManager : NSObject
12 |
13 | + (instancetype)share;
14 |
15 | - (void)writeToFile:(NSString *)filePath
16 | existingCode:(NSDictionary *)existingCode
17 | content:(NSString *)content
18 | result:(void(^)(BOOL result))result;
19 |
20 | - (void)writeToFileQueue:(NSString *)filePath
21 | content:(NSString *)content
22 | result:(void(^)(BOOL result))result;
23 |
24 | - (void)writeToFileQueue:(NSString *)filePath
25 | key:(NSString *)key
26 | value:(NSString *)value
27 | result:(void(^)(BOOL result))result;
28 |
29 | - (void)writeToFileQueue:(NSString *)filePath
30 | key:(NSString *)key
31 | value:(NSString *)value
32 | codeComment:(NSString *)codeComment
33 | result:(void(^)(BOOL result))result;
34 |
35 | - (void)writeToFileQueue:(NSString *)filePath
36 | codes:(NSArray *)codes
37 | values:(NSArray *)values
38 | codeComment:(NSString *)codeComment
39 | result:(void(^)(BOOL result))result;
40 |
41 | - (void)truncateFileWithPath:(NSString *)path;
42 |
43 | - (void)deleteTextQueue:(NSString *)filePath
44 | codes:(NSArray *)codes
45 | codeComment:(NSString *)codeComment
46 | result:(void(^)(BOOL result))result;
47 |
48 | @end
49 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDPredicateManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDPredicateManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/6/4.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDPredicateManager : NSObject
12 |
13 | + (NSString *)filterStringWithArray:(NSArray *)array string:(NSString *)string;
14 |
15 |
16 | /**
17 | 获取两个数组相同的部分,这里区分大小写
18 |
19 | @param array1 <#array1 description#>
20 | @param array2 <#array2 description#>
21 | @return <#return value description#>
22 | */
23 | + (NSString *)filterStringWithArray1:(NSArray *)array1 array2:(NSArray *)array2;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDPredicateManager.m:
--------------------------------------------------------------------------------
1 | //
2 | // FDPredicateManager.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/6/4.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import "FDPredicateManager.h"
10 |
11 | @implementation FDPredicateManager
12 |
13 | + (NSString *)filterStringWithArray:(NSArray *)array string:(NSString *)string
14 | {
15 | // 谓词搜索
16 | NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self == [cd] %@",string];
17 | NSArray *arrays = [[NSArray alloc] initWithArray:[array filteredArrayUsingPredicate:predicate]];
18 |
19 | return arrays.firstObject;
20 | }
21 |
22 | /**
23 | 获取两个数组相同的部分,这里区分大小写
24 |
25 | @param array1 <#array1 description#>
26 | @param array2 <#array2 description#>
27 | @return return value description
28 | */
29 | + (NSString *)filterStringWithArray1:(NSArray *)array1 array2:(NSArray *)array2
30 | {
31 | // 谓词搜索
32 | NSPredicate *predicate = [NSPredicate predicateWithFormat:@"self in [cd] %@",array2];
33 | NSArray *arrays = [[NSArray alloc] initWithArray:[array1 filteredArrayUsingPredicate:predicate]];
34 |
35 | return arrays.firstObject;
36 | }
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDProjectFileManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDProjectFileManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/2.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDProjectFileManager : NSObject
12 |
13 | + (instancetype)share;
14 |
15 | - (void)getLocalizesWithPath:(NSString *)path result:(void(^)())result;
16 |
17 | - (void)readContentOfFile:(NSString *)filePath;
18 |
19 | - (void)writeToFile:(NSString *)content;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDReadFile.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDReadFile.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/14.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDReadFile : NSObject{
12 | //路径
13 | NSString *parentDirectoryPath;
14 | //异步输出流
15 | NSInputStream *asyncInputStream;
16 | //读出来的数据
17 | NSMutableData *resultData;
18 | //返回去的数据
19 | // NoteDb *aNoteDb;
20 | }
21 | //@property(nonatomic,retain)NoteDb *aNoteDb;
22 | @property (nonatomic, retain) NSMutableData *resultData;
23 | //开始读数据
24 | -(void)read;
25 | //读出来的数据追加到resultData上
26 | - (void)appendData:(NSData*)_data;
27 | //
28 | - (void)dataAtNoteDB;
29 | //返回去的数据
30 | //- (NoteDb*)getNoteDb;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDSafetyFileManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDSafetyFileManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/14.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDSafetyFileManager : NSObject
12 |
13 | + (instancetype)shareInstance;
14 |
15 | - (NSData *)readFile:(NSString *)path;
16 | - (void)readFileAsync:(NSString *)path complete:(void (^)(NSData *data))complete;
17 |
18 | - (BOOL)writeFile:(NSString *)path data:(NSData *)data;
19 | - (void)writeFileAsync:(NSString *)path data:(NSData *)data complete:(void (^)(BOOL result))complete;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDUndoManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDUndoManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/11.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDUndoManager : NSObject
12 |
13 | + (instancetype)share;
14 |
15 | - (void)saveFileWithFilePath:(NSString *)filePath
16 | result:(void(^)(BOOL result))result;
17 |
18 | - (void)undoFileWithFilePathArray:(NSArray *)arrPaths;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDWriteFile.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDWriteFile.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/14.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDWriteFile : NSObject{
12 | //文件地址
13 | NSString *parentDirectoryPath;
14 | //输出流,写数据
15 | NSOutputStream *asyncOutputStream;
16 | //写数据的内容
17 | NSData *outputData;
18 | //位置及长度
19 | NSRange outputRange;
20 | //数据的来源
21 | // NoteDb *aNoteDb;
22 | }
23 |
24 | @property (nonatomic,retain) NSData *outputData;
25 | //@property (nonatomic,retain) NoteDb *aNoteDb;
26 | //写数据
27 | -(void)write;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Manager/FDXMLFileManager.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDXMLFileManager.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/14.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDXMLFileManager : NSObject
12 |
13 | - (instancetype)initWithFilePath:(NSString *)filePath;
14 |
15 | + (void)parsFile:(id)obj
16 | path:(NSString *)path
17 | left:(char)left
18 | leftIndex:(NSInteger)leftIndex
19 | right:(char)right
20 | rightIndex:(NSInteger)rightIndex;
21 |
22 | + (void)parsFile:(id)obj
23 | path:(NSString *)path
24 | left:(NSString *)left
25 | right:(NSString *)right;
26 |
27 | - (NSArray *)parsFileVertical:(char)verticalRow
28 | top:(NSInteger)top
29 | bottom:(NSInteger)bottom
30 | limit:(BOOL)isLimit;
31 |
32 | - (NSArray *)parsFilehorizontal:(NSInteger)horizontalRow
33 | left:(char)left
34 | right:(char)right
35 | limit:(BOOL)isLimit;
36 |
37 | - (NSString *)parsRow:(char)charIndex
38 | :(NSInteger)intIndex;
39 |
40 | - (void)writeRowWithContent:(NSString *)content
41 | :(char)charIndex
42 | :(NSInteger)intIndex
43 | :(NSString *)worksheetName
44 | :(void(^)())success;
45 |
46 | - (void)createSecondWorksheetName:(NSString *)worksheetName;
47 |
48 | - (void)save;
49 | @end
50 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/MPTask/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MPTask
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MPTask.h
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:49.000000Z
36 | b2e314d66a803c082cdada3e98a5ae70
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 1348
62 |
63 | MPTask.m
64 | file
65 |
66 |
67 |
68 |
69 | 2018-03-13T08:46:49.000000Z
70 | a2b6b6c1cdf62c1f2a605e2ca50c0398
71 | 2017-07-24T13:31:00.455698Z
72 | 25213
73 | chux
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | 4899
96 |
97 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/MPTask/.svn/text-base/MPTask.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPTask.h
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/11/8.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | #define CMD_ECHO @"/bin/echo"
12 | #define CMD_PYTHON @"/usr/bin/python"
13 | #define CMD_LAUCH @"/usr/bin/open"
14 | #define CMD_WHOAMI @"/usr/bin/whoami"
15 | #define CMD_GIT @"/usr/bin/git"
16 | #define CMD_SH @"/bin/sh"
17 | #define CMD_CP @"/bin/cp"
18 | #define CMD_MV @"/bin/mv"
19 | #define CMD_CURL @"/usr/bin/curl"
20 | #define CMD_RUBY @"/usr/bin/ruby"
21 | #define CMD_MDFIND @"/usr/bin/mdfind"
22 |
23 |
24 | //typedef enum : NSUInteger {
25 | // MPGitClone = 0,
26 | // MPGitPull,
27 | // MPGitLog,
28 | //} MPGit;
29 |
30 | @interface MPTask : NSObject{
31 |
32 |
33 | }
34 |
35 | /**
36 | * 获取对象实例
37 | *
38 | * @return 对象
39 | */
40 | //+ (MPTask *)task;
41 |
42 | //@property (nonatomic, assign) MPGit commandType;
43 |
44 | /**
45 | 启动 NSTask,执行命令行指令
46 |
47 | @param lanunchPath 启动路径
48 | @param arguments 指令执行参数
49 | @param directoryPath 指令执行目录
50 | @param success 成功回调信息
51 | @param exception 参数错误异常
52 | */
53 | + (void)runTaskWithLanunchPath:(NSString *)lanunchPath
54 | arguments:(NSArray *)arguments
55 | currentDirectoryPath:(NSString *)directoryPath
56 | onSuccess:(void(^)(NSString *))success
57 | onException:(void(^)(NSException *))exception;
58 |
59 |
60 |
61 | @end
62 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/MPTask/MPTask.h:
--------------------------------------------------------------------------------
1 | //
2 | // MPTask.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 16/11/8.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | #define CMD_ECHO @"/bin/echo"
12 | #define CMD_PYTHON @"/usr/bin/python"
13 | #define CMD_LAUCH @"/usr/bin/open"
14 | #define CMD_WHOAMI @"/usr/bin/whoami"
15 | #define CMD_GIT @"/usr/bin/git"
16 | #define CMD_SH @"/bin/sh"
17 | #define CMD_CP @"/bin/cp"
18 | #define CMD_MV @"/bin/mv"
19 | #define CMD_CURL @"/usr/bin/curl"
20 | #define CMD_RUBY @"/usr/bin/ruby"
21 | #define CMD_MDFIND @"/usr/bin/mdfind"
22 |
23 |
24 | //typedef enum : NSUInteger {
25 | // MPGitClone = 0,
26 | // MPGitPull,
27 | // MPGitLog,
28 | //} MPGit;
29 |
30 | @interface MPTask : NSObject{
31 |
32 |
33 | }
34 |
35 | /**
36 | * 获取对象实例
37 | *
38 | * @return 对象
39 | */
40 | //+ (MPTask *)task;
41 |
42 | //@property (nonatomic, assign) MPGit commandType;
43 |
44 | /**
45 | 启动 NSTask,执行命令行指令
46 |
47 | @param lanunchPath 启动路径
48 | @param arguments 指令执行参数
49 | @param directoryPath 指令执行目录
50 | @param success 成功回调信息
51 | @param exception 参数错误异常
52 | */
53 | + (void)runTaskWithLanunchPath:(NSString *)lanunchPath
54 | arguments:(NSArray *)arguments
55 | currentDirectoryPath:(NSString *)directoryPath
56 | onSuccess:(void(^)(NSString *))success
57 | onException:(void(^)(NSException *))exception;
58 |
59 |
60 |
61 | @end
62 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/MPUserNotification/.svn/entries:
--------------------------------------------------------------------------------
1 | 10
2 |
3 | dir
4 | 29926
5 | svn://chux@svn.code.mob.com/ios/project/MobPods/trunk/MobPods/MobPods/Libraries/MPUserNotification
6 | svn://chux@svn.code.mob.com
7 |
8 |
9 |
10 | 2017-07-24T13:31:00.455698Z
11 | 25213
12 | chux
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ddbbef2e-7d24-4ea3-accf-f5ea24af4a8b
28 |
29 | MPUserNotification.h
30 | file
31 |
32 |
33 |
34 |
35 | 2018-03-13T08:46:50.000000Z
36 | 0a896f5d29f6abeea95172c9827e7acf
37 | 2017-07-24T13:31:00.455698Z
38 | 25213
39 | chux
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | 433
62 |
63 | MPUserNotification.m
64 | file
65 |
66 |
67 |
68 |
69 | 2018-03-13T08:46:50.000000Z
70 | e6e3453d832a382bde7822462088147d
71 | 2017-07-24T13:31:00.455698Z
72 | 25213
73 | chux
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 | 2228
96 |
97 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/MPUserNotification/.svn/text-base/MPUserNotification.h.svn-base:
--------------------------------------------------------------------------------
1 | //
2 | // MPUserNotification.h
3 | // MobPods
4 | //
5 | // Created by ShengQiangLiu on 16/11/9.
6 | // Copyright © 2016年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MPUserNotification : NSObject
12 |
13 | @property (nonatomic, copy) NSString *title;
14 |
15 | @property (nonatomic, copy) NSString *informativeText;
16 |
17 | + (instancetype)notification;
18 |
19 | - (void)notificationWithTitle:(NSString *)title informativeText:(NSString *)text;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Tools/NSString+Tool.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+Tool.h
3 | // TelSalesAssistant
4 | //
5 | // Created by chuxiao on 2017/12/25.
6 | // Copyright © 2017年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSString (Tool)
12 |
13 | + (NSString *)timeFromTimeStep;
14 | + (NSString *)currentTimeStep;
15 | + (NSString *)timeFromTimeStepWithFormat:(NSString *)format;
16 |
17 | - (NSDictionary *)getLastRangeStrWithFindText:(NSString *)findText;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/AXStatusItemPopup/AXStatusItemPopup.h:
--------------------------------------------------------------------------------
1 | //
2 | // StatusItemPopup.h
3 | // StatusItemPopup
4 | //
5 | // Created by Alexander Schuch on 06/03/13.
6 | // Copyright (c) 2013 Alexander Schuch. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AXStatusItemPopup : NSView
12 |
13 | // properties
14 | @property(assign, nonatomic, getter=isActive) BOOL active;
15 | @property(assign, nonatomic) BOOL animated;
16 | @property(strong, nonatomic) NSImage *image;
17 | @property(strong, nonatomic) NSImage *alternateImage;
18 | @property(strong, nonatomic) NSStatusItem *statusItem;
19 |
20 | /**
21 | Popovers may have one of several predefined appearances.
22 | You may specify the appearance of a popover using the constants defined in NSPopoverAppearance. The default appearance is NSPopoverAppearanceMinimal.
23 |
24 | @param appearance NSPopoverAppearance
25 | */
26 | @property(nonatomic, strong, readonly) NSPopover *popover;
27 |
28 | // init
29 | - (id)initWithViewController:(NSViewController *)controller;
30 | - (id)initWithViewController:(NSViewController *)controller image:(NSImage *)image;
31 | - (id)initWithViewController:(NSViewController *)controller image:(NSImage *)image alternateImage:(NSImage *)alternateImage;
32 |
33 |
34 | // show / hide popover
35 | - (void)showPopover;
36 | - (void)showPopoverAnimated:(BOOL)animated;
37 | - (void)hidePopover;
38 |
39 | // view size
40 | - (void)setContentSize:(CGSize)size;
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/CXPopUpButton/CXPopUpButton.h:
--------------------------------------------------------------------------------
1 | //
2 | // CXPopUpButton.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/10.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface CXPopUpButton : NSPopUpButton
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/CustomSlider/CustomSlider.h:
--------------------------------------------------------------------------------
1 | //
2 | // CustomSlider.h
3 | // X300A
4 | //
5 | // Created by Chen Ling on 15/3/2018.
6 | // Copyright © 2018 Chen Ling. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface CustomSlider : NSSlider
12 |
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/CustomSlider/CustomSliderCell.h:
--------------------------------------------------------------------------------
1 | //
2 | // CustomSliderCell.h
3 | // CustomSlider
4 | //
5 | // Created by Chen Ling on 15/3/2018.
6 | // Copyright © 2018 Chen Ling. All rights reserved.
7 |
8 | #import
9 |
10 |
11 | #define ColorWithRGB(colorCode) [NSColor colorWithDeviceRed:((colorCode>>16)&0xFF)/255.0 green:((colorCode>>8)&0xFF)/255.0 blue:((colorCode)&0xFF)/255.0 alpha:1.0];
12 |
13 | #define SLIDER_PROGRESS_DEFAUT_COLOR ColorWithRGB(0x3399FF)
14 | #define SLIDER_BACKGROUND_DEFAUT_COLOR ColorWithRGB(0x969696)
15 | #define SLIDER_KNOB_DEFAUT_COLOR ColorWithRGB(0x3399FF)
16 | #define SLIDER_DEFAUT_HEIGHT 3.0
17 | #define SLIDER_DEFAUT_BAR_RADIUS 5.0
18 | #define SLIDER_DEFAUT_KNOB_WIDTH 8.0
19 | #define SLIDER_DEFAUT_KNOB_HEIGHT 8.0
20 |
21 |
22 | IB_DESIGNABLE
23 | @interface CustomSliderCell : NSSliderCell
24 |
25 | @property (nonatomic, strong) IBInspectable NSColor *sliderProgressColor;
26 | @property (nonatomic, strong) IBInspectable NSColor *sliderBackgroundColor;
27 | @property (nonatomic, strong) IBInspectable NSColor *sliderKnobColor;
28 | @property (nonatomic, assign) IBInspectable CGFloat sliderHeight;
29 | @property (nonatomic, assign) IBInspectable CGFloat sliderBarRadius;
30 | @property (nonatomic, assign) IBInspectable CGFloat sliderKnobWidth;
31 | @property (nonatomic, assign) IBInspectable CGFloat sliderKnobHeight;
32 | @end
33 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/CustomSlider/NSColor+Hexa.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSColor+Hexa.h
3 | // CustomSlider
4 | //
5 | // Created by Chen Ling on 15/3/2018.
6 | // Copyright © 2018 Chen Ling. All rights reserved.
7 | //
8 | //
9 |
10 | #import
11 |
12 | @interface NSColor (Hexa)
13 |
14 | + (NSColor *)colorFromHexadecimalValue:(NSString *)hexaString;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/CustomSlider/NSColor+Hexa.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSColor+Hexa.m
3 | // CustomSlider
4 | //
5 | // Created by Chen Ling on 15/3/2018.
6 | // Copyright © 2018 Chen Ling. All rights reserved.
7 | //
8 | //
9 |
10 | #import "NSColor+Hexa.h"
11 |
12 | @implementation NSColor (Hexa)
13 |
14 |
15 | + (NSColor *)colorFromHexadecimalValue:(NSString *)hexaString {
16 |
17 | if ([hexaString hasPrefix:@"#"]) {
18 | hexaString = [hexaString substringWithRange:NSMakeRange(1, [hexaString length] - 1)];
19 | }
20 |
21 | unsigned int colorCode = 0;
22 |
23 | if (hexaString) {
24 | NSScanner *scanner = [NSScanner scannerWithString:hexaString];
25 | (void)[scanner scanHexInt:&colorCode];
26 | }
27 |
28 | return [NSColor colorWithDeviceRed:((colorCode>>16)&0xFF)/255.0 green:((colorCode>>8)&0xFF)/255.0 blue:((colorCode)&0xFF)/255.0 alpha:1.0];
29 | }
30 | @end
31 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/FDImageView.h:
--------------------------------------------------------------------------------
1 | //
2 | // FDImageView.h
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/5/15.
6 | // Copyright © 2018年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | @class SCSelectionBorder;
11 |
12 | @protocol FDImageSelectRectDelegate
13 |
14 | @optional
15 | - (void)selectRect:(NSRect)rect;
16 |
17 | @end
18 |
19 | @interface FDImageView : NSImageView
20 | @property (strong, readonly) SCSelectionBorder *cropMarker;
21 | @property (assign, nonatomic) id delegate;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/Views/MPDragDropView/MPDragDropView.h:
--------------------------------------------------------------------------------
1 | //
2 | // MPDragDropView.h
3 | // MobPods
4 | //
5 | // Created by chuxiao on 2017/6/20.
6 | // Copyright © 2017年 mob.com. All rights reserved.
7 | //
8 |
9 | #import
10 | @protocol DragDropViewDelegate;
11 |
12 | @interface MPDragDropView : NSView
13 |
14 | //设置代理
15 | @property(assign) IBOutlet id delegate;
16 |
17 | @end
18 |
19 | @protocol DragDropViewDelegate
20 | //设置代理方法
21 | -(void) doGetDragDropArrayFiles:(NSArray*) fileLists;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/FDLocalizeder/FDLocalizeder/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // FDLocalizeder
4 | //
5 | // Created by chuxiao on 2018/4/25.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | int main(int argc, const char * argv[]) {
12 | return NSApplicationMain(argc, argv);
13 | }
14 |
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files
2 | *.slo
3 | *.lo
4 | *.o
5 |
6 | # Compiled Dynamic libraries
7 | *.so
8 |
9 | # Compiled Static libraries
10 | *.lai
11 | *.la
12 | *.a
13 |
14 | # OS X Finder
15 | .DS_Store
16 |
17 | # Xcode per-user config
18 | *.mode1
19 | *.mode1v3
20 | *.mode2v3
21 | *.perspective
22 | *.perspectivev3
23 | *.pbxuser
24 | xcuserdata
25 |
26 | # Build products
27 | build/
28 | *.o
29 | *.LinkFileList
30 | *.hmap
31 |
32 | # Automatic backup files
33 | *~.nib/
34 | *.swp
35 | *~
36 | *.dat
37 | *.dep
38 |
39 | # *.xcodeproj/
40 | !*.xcodeproj/project.pbxproj
41 |
42 |
43 |
44 | *.xcuserstate
45 |
46 | c061750_ISO_IEC_29500-1_2012.pdf
47 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014 René BIGOT
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/OfficeDocumentHierarchy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/OfficeDocumentHierarchy.png
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2010-2013 Sam Soffes, http://soff.es
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining
4 | a copy of this software and associated documentation files (the
5 | "Software"), to deal in the Software without restriction, including
6 | without limitation the rights to use, copy, modify, merge, publish,
7 | distribute, sublicense, and/or sell copies of the Software, and to
8 | permit persons to whom the Software is furnished to do so, subject to
9 | the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be
12 | included in all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/SSZipArchive.podspec:
--------------------------------------------------------------------------------
1 | Pod::Spec.new do |s|
2 | s.name = 'SSZipArchive'
3 | s.version = '0.3.1'
4 | s.summary = 'Utility class for zipping and unzipping files on iOS and Mac.'
5 | s.description = 'SSZipArchive is a simple utility class for zipping and unzipping files on iOS and Mac.'
6 | s.homepage = 'https://github.com/soffes/ssziparchive'
7 | s.license = { :type => 'MIT', :file => 'LICENSE' }
8 | s.author = { 'Sam Soffes' => 'sam@soff.es' }
9 | s.source = { :git => 'https://github.com/soffes/ssziparchive.git', :tag => "v#{s.version}" }
10 | s.ios.deployment_target = '4.0'
11 | s.osx.deployment_target = '10.6'
12 | s.source_files = 'SSZipArchive/**/*',
13 | s.library = 'z'
14 | end
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/SSZipArchive.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/SSZipArchive/SSZipArchive-Prefix.pch:
--------------------------------------------------------------------------------
1 | //
2 | // Prefix header
3 | //
4 | // The contents of this file are implicitly included at the beginning of every source file.
5 | //
6 |
7 | #ifdef __OBJC__
8 | #import
9 | #endif
10 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/SSZipArchive/minizip/mztools.h:
--------------------------------------------------------------------------------
1 | /*
2 | Additional tools for Minizip
3 | Code: Xavier Roche '2004
4 | License: Same as ZLIB (www.gzip.org)
5 | */
6 |
7 | #ifndef _zip_tools_H
8 | #define _zip_tools_H
9 |
10 | #ifdef __cplusplus
11 | extern "C" {
12 | #endif
13 |
14 | #ifndef _ZLIB_H
15 | #include "zlib.h"
16 | #endif
17 |
18 | #include "unzip.h"
19 |
20 | /* Repair a ZIP file (missing central directory)
21 | file: file to recover
22 | fileOut: output file after recovery
23 | fileOutTmp: temporary file name used for recovery
24 | */
25 | extern int ZEXPORT unzRepair(const char* file,
26 | const char* fileOut,
27 | const char* fileOutTmp,
28 | uLong* nRecovered,
29 | uLong* bytesRecovered);
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/IncorrectHeaders.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/IncorrectHeaders.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/RelativeSymbolicLink.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/RelativeSymbolicLink.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/SymbolicLink.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/SymbolicLink.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/TestArchive.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/TestArchive.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/TestPasswordArchive.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/TestPasswordArchive.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/Unicode.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/Fixtures/Unicode.zip
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/SSZipArchive/Tests/SSZipArchiveTests-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundlePackageType
14 | BNDL
15 | CFBundleShortVersionString
16 | 1.0
17 | CFBundleSignature
18 | ????
19 | CFBundleVersion
20 | 1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/LICENCE.md:
--------------------------------------------------------------------------------
1 | XMLDictionary
2 | version 1.4, April 16th, 2014
3 |
4 | Copyright (C) 2011 Charcoal Design
5 |
6 | This software is provided 'as-is', without any express or implied
7 | warranty. In no event will the authors be held liable for any damages
8 | arising from the use of this software.
9 |
10 | Permission is granted to anyone to use this software for any purpose,
11 | including commercial applications, and to alter it and redistribute it
12 | freely, subject to the following restrictions:
13 |
14 | 1. The origin of this software must not be misrepresented; you must not
15 | claim that you wrote the original software. If you use this software
16 | in a product, an acknowledgment in the product documentation would be
17 | appreciated but is not required.
18 | 2. Altered source versions must be plainly marked as such, and must not be
19 | misrepresented as being the original software.
20 | 3. This notice may not be removed or altered from any source distribution.
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // XMLTest
4 | //
5 | // Created by Nick Lockwood on 28/04/2012.
6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class ViewController;
12 |
13 | @interface AppDelegate : UIResponder
14 |
15 | @property (strong, nonatomic) UIWindow *window;
16 | @property (strong, nonatomic) ViewController *viewController;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/AppDelegate.m:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.m
3 | // XMLTest
4 | //
5 | // Created by Nick Lockwood on 28/04/2012.
6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 | //
8 |
9 | #import "AppDelegate.h"
10 | #import "ViewController.h"
11 | #import "XMLDictionary.h"
12 |
13 | @implementation AppDelegate
14 |
15 | - (BOOL)application:(__unused UIApplication *)application didFinishLaunchingWithOptions:(__unused NSDictionary *)launchOptions
16 | {
17 | NSURL *URL = [[NSURL alloc] initWithString:@"http://www.ibiblio.org/xml/examples/shakespeare/all_well.xml"];
18 | NSString *xmlString = [[NSString alloc] initWithContentsOfURL:URL encoding:NSUTF8StringEncoding error:NULL];
19 | NSLog(@"string: %@", xmlString);
20 | NSDictionary *xmlDoc = [NSDictionary dictionaryWithXMLString:xmlString];
21 | NSLog(@"dictionary: %@", xmlDoc);
22 |
23 | self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
24 | self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
25 | self.window.rootViewController = self.viewController;
26 | [self.window makeKeyAndVisible];
27 | return YES;
28 | }
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/Default-568h@2x.png
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // XMLTest
4 | //
5 | // Created by Nick Lockwood on 28/04/2012.
6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // XMLTest
4 | //
5 | // Created by Nick Lockwood on 28/04/2012.
6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 |
11 | @interface ViewController ()
12 |
13 | @end
14 |
15 | @implementation ViewController
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/XMLTest-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleDisplayName
8 | ${PRODUCT_NAME}
9 | CFBundleExecutable
10 | ${EXECUTABLE_NAME}
11 | CFBundleIdentifier
12 | com.charcoaldesign.${PRODUCT_NAME:rfc1034identifier}
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | ${PRODUCT_NAME}
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 1.0
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 1.0
25 | LSRequiresIPhoneOS
26 |
27 | UIRequiredDeviceCapabilities
28 |
29 | armv7
30 |
31 | UISupportedInterfaceOrientations~ipad
32 |
33 | UIInterfaceOrientationPortrait
34 | UIInterfaceOrientationPortraitUpsideDown
35 | UIInterfaceOrientationLandscapeLeft
36 | UIInterfaceOrientationLandscapeRight
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/XMLTest-Prefix.pch:
--------------------------------------------------------------------------------
1 | //
2 | // Prefix header for all source files of the 'XMLTest' target in the 'XMLTest' project
3 | //
4 |
5 | #import
6 |
7 | #ifndef __IPHONE_4_0
8 | #warning "This project uses features only available in iOS SDK 4.0 and later."
9 | #endif
10 |
11 | #ifdef __OBJC__
12 | #import
13 | #import
14 | #endif
15 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
3 | "FDLocalizeder_Excel模板" = "This is a code";
4 | "This is a code" = "Measure aaaa from \\nthe highest point of your shoulder to the “hem” of dress. Make sure to measure in bare feet and stand straight with your feet together.";
5 | "这是一个code(不能为空)" = "This is a code";
6 | "this_language_is" = "这是英语";
7 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/Tests/XMLTest/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // XMLTest
4 | //
5 | // Created by Nick Lockwood on 28/04/2012.
6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | #import "AppDelegate.h"
12 |
13 | int main(int argc, char *argv[])
14 | {
15 | @autoreleasepool {
16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/ThirdParties/XMLDictionary/XMLDictionary.podspec:
--------------------------------------------------------------------------------
1 | Pod::Spec.new do |s|
2 | s.name = "XMLDictionary"
3 | s.version = "1.4"
4 | s.license = { :type => 'zlib', :file => 'LICENCE.md' }
5 | s.summary = "XMLDictionary is a class designed to simplify parsing and generating of XML on iOS and Mac OS."
6 | s.homepage = "https://github.com/nicklockwood/XMLDictionary"
7 | s.authors = "Nick Lockwood"
8 | s.source = { :git => "https://github.com/nicklockwood/XMLDictionary.git", :tag => "1.4" }
9 | s.source_files = 'XMLDictionary'
10 | s.requires_arc = true
11 | s.ios.deployment_target = '4.3'
12 | s.osx.deployment_target = '10.6'
13 | end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter Mac/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 2.3.2
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | $(CURRENT_PROJECT_VERSION)
23 | NSHumanReadableCopyright
24 | Copyright © 2016 BRAE. All rights reserved.
25 | NSPrincipalClass
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter Mac/XlsxReaderWriter.h:
--------------------------------------------------------------------------------
1 | #ifndef BRAXlsxReaderWriter_h
2 | #define BRAXlsxReaderWriter_h
3 |
4 | #import "BRAOfficeDocumentPackage.h"
5 | #import "BRAWorksheet.h"
6 | #import "BRANumberFormat.h"
7 | #import "BRARelationships.h"
8 | #import "BRADrawing.h"
9 | #import "BRAImage.h"
10 | #import "BRAColumn.h"
11 | #import "BRARow.h"
12 | #import "BRACell.h"
13 |
14 |
15 |
16 | #endif /* BRAXlsxReaderWriter_h */
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter.podspec:
--------------------------------------------------------------------------------
1 | Pod::Spec.new do |s|
2 | s.name = "XlsxReaderWriter"
3 | s.version = "2.3.2"
4 | s.summary = "XlsxReaderWriter is an Objective-C library for iPhone / iPad and Mac. It parses and writes Excel OpenXml files (XLSX)."
5 | s.homepage = "https://github.com/renebigot/XlsxReaderWriter"
6 | s.license = "MIT"
7 | s.author = "René Bigot"
8 | s.social_media_url = "https://www.linkedin.com/in/renebigot"
9 | s.platforms = { :ios => "7.0" }
10 | s.source = { :git => "https://github.com/renebigot/XlsxReaderWriter.git", :tag => s.version.to_s }
11 | s.source_files = "XlsxReaderWriter/*.{h,m}"
12 | s.exclude_files = "ThirdParties"
13 | s.frameworks = "Foundation", "UIKit"
14 | s.requires_arc = true
15 |
16 | s.dependency "SSZipArchive", "~> 1.1"
17 | s.dependency "XMLDictionary", "~> 1.4"
18 |
19 | end
20 |
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter.xcodeproj/xcshareddata/xcbaselines/45B6E2441A148F7500288A78.xcbaseline/2954B0B9-8AB5-4909-AD5F-73FF57878BD0.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | classNames
6 |
7 | BRAXlsxReaderWriterTests
8 |
9 | testRemove1RowAndKeepMergeCellContent
10 |
11 | com.apple.XCTPerformanceMetric_WallClockTime
12 |
13 | baselineAverage
14 | 0.165
15 | baselineIntegrationDisplayName
16 | Local Baseline
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRACalcChain.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRACalcChain.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 24/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 | #import "BRARelatedToColumnAndRowProtocol.h"
11 | #import "BRACalcChainCell.h"
12 |
13 | @interface BRACalcChain : BRARelationship
14 |
15 | @property (nonatomic, strong) NSArray *cells;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRACalcChainCell.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRACalcChainCell.h
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRAOpenXmlSubElement.h"
10 |
11 | @interface BRACalcChainCell : BRAOpenXmlSubElement
12 |
13 | @property (nonatomic, strong) NSString *reference;
14 |
15 | @end
16 |
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRACalcChainCell.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRACalcChainCell.m
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRACalcChainCell.h"
10 |
11 | @implementation BRACalcChainCell
12 |
13 | - (void)loadAttributes {
14 | NSDictionary *dictionaryRepresentation = [super dictionaryRepresentation];
15 |
16 | _reference = dictionaryRepresentation[@"_r"];
17 | }
18 |
19 | - (NSDictionary *)dictionaryRepresentation {
20 | NSMutableDictionary *dictionaryRepresentation = [super dictionaryRepresentation].mutableCopy;
21 |
22 | dictionaryRepresentation[@"_r"] = _reference;
23 |
24 | [super setDictionaryRepresentation:dictionaryRepresentation];
25 |
26 | return dictionaryRepresentation;
27 | }
28 |
29 | - (NSString *)description {
30 | return [NSString stringWithFormat:@"<%@: %p> : %@", [self class], self, _reference];
31 | }
32 |
33 | @end
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRACellFormat.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRACellFormat.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 08/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlSubElement.h"
11 |
12 | @class BRAStyles, BRACellFill, BRANumberFormat;
13 |
14 | @interface BRACellFormat : BRAOpenXmlSubElementWithStyle {
15 | BOOL _isCellStyleXf;
16 | NSDictionary *_stylesTextsAttributes;
17 | BRACellFill *_cellFill;
18 | BRANumberFormat *_numberFormat;
19 | }
20 |
21 | @property (nonatomic, getter=isProtected) BOOL protected;
22 | @property (nonatomic) NSTextAlignment textAlignment;
23 | @property (nonatomic, strong) NSDictionary *textAttributes;
24 |
25 | //Cell format (cellXfs) may have a reference to a cell style format (cellStyleXfs)
26 | @property (nonatomic, weak) BRACellFormat *cellStyleFormat;
27 |
28 | - (void)setCellFill:(BRACellFill *)cellFill;
29 | - (BRACellFill *)cellFill;
30 |
31 | - (void)setNumberFormat:(BRANumberFormat *)numberFormat;
32 | - (BRANumberFormat *)numberFormat;
33 |
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRACellRange.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRACellRange.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 17/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlSubElement.h"
11 |
12 | @interface BRACellRange : BRAOpenXmlSubElement {
13 | NSString *_leftColumnName;
14 | NSString *_rightColumnName;
15 | }
16 |
17 | - (instancetype)initWithRangeReference:(NSString *)rangeReference;
18 | - (NSString *)reference;
19 |
20 | @property (nonatomic) NSInteger topRowIndex;
21 | @property (nonatomic) NSInteger bottomRowIndex;
22 | @property (nonatomic) NSInteger leffColumnIndex;
23 | @property (nonatomic) NSInteger rightColumnIndex;
24 |
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAColumn.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAColumn.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 17/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlSubElement.h"
11 |
12 | @interface BRAColumn : BRAOpenXmlSubElement
13 |
14 | + (NSInteger)columnIndexForCellReference:(NSString *)cellReference;
15 | + (NSString *)columnNameForCellReference:(NSString *)cellReference;
16 | + (NSString *)columnNameForColumnIndex:(NSInteger)index;
17 | - (instancetype)initWithMinimum:(NSInteger)minimum andMaximum:(NSInteger)maximum;
18 |
19 | @property (nonatomic, getter = hasCustomWidth) BOOL customWidth;
20 | @property (nonatomic) NSInteger minimum;
21 | @property (nonatomic) NSInteger maximum;
22 | @property (nonatomic) NSInteger width;
23 | @property (nonatomic) NSInteger pointWidth;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAComment.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAComment.h
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRAOpenXmlSubElement.h"
10 |
11 | /** This class does not change the comments content.
12 | * It just handles rows and columns deletions / additions */
13 |
14 | @interface BRAComment : BRAOpenXmlSubElement
15 |
16 | @property (nonatomic, strong) NSString *reference;
17 |
18 | @end
19 |
20 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAComment.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRAComment.m
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRAComment.h"
10 |
11 | @implementation BRAComment
12 |
13 | - (void)loadAttributes {
14 | NSDictionary *dictionaryRepresentation = [super dictionaryRepresentation];
15 |
16 | _reference = dictionaryRepresentation[@"_ref"];
17 | }
18 |
19 | - (NSDictionary *)dictionaryRepresentation {
20 | NSMutableDictionary *dictionaryRepresentation = [super dictionaryRepresentation].mutableCopy;
21 |
22 | dictionaryRepresentation[@"_r"] = _reference;
23 |
24 | [super setDictionaryRepresentation:dictionaryRepresentation];
25 |
26 | return dictionaryRepresentation;
27 | }
28 |
29 | - (NSString *)description {
30 | return [NSString stringWithFormat:@"<%@: %p> : %@", [self class], self, _reference];
31 | }
32 |
33 | @end
34 |
35 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAComments.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAComments.m
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 | #import "BRARelationships.h"
11 | #import "BRARelatedToColumnAndRowProtocol.h"
12 | #import "BRAComment.h"
13 |
14 | /** This class does not change the comments content.
15 | * It just handles rows and columns deletions / additions */
16 |
17 | @interface BRAComments : BRARelationship
18 |
19 | @property (nonatomic, strong) NSArray *comments;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAContentTypes.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAContentTypes.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlElement.h"
11 | #import "NSDictionary+OpenXMLDictionaryParser.h"
12 | #import "BRAContentTypesDefaultExtension.h"
13 | #import "BRAContentTypesOverride.h"
14 |
15 | typedef NSString *BRAContentType;
16 |
17 | @class BRARelationship;
18 |
19 | @interface BRAContentTypes : BRAOpenXmlElement
20 |
21 | - (BOOL)hasOverrideForPart:(NSString *)partName;
22 | - (BOOL)hasContentTypeForPart:(NSString *)partName;
23 | - (void)addContentTypeForExtension:(NSString *)extension;
24 | - (void)overrideContentType:(NSString *)contentType forPart:(NSString *)partName;
25 |
26 | @property (nonatomic, strong) NSArray *defaultExtensions;
27 | @property (nonatomic, strong) NSArray *overrides;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAContentTypesDefaultExtension.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAContentTypesDefaultExtension.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAOpenXmlSubElement.h"
10 |
11 | @class BRARelationship;
12 |
13 | @interface BRAContentTypesDefaultExtension : BRAOpenXmlSubElement
14 |
15 | - (instancetype)initWithExtension:(NSString *)extension;
16 |
17 | @property (nonatomic, strong) NSString *extension;
18 | @property (nonatomic, strong) NSString *contentType;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAContentTypesOverride.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAContentTypesOverride.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAOpenXmlSubElement.h"
10 |
11 | @class BRARelationship;
12 |
13 | @interface BRAContentTypesOverride : BRAOpenXmlSubElement
14 |
15 | - (instancetype)initWithContentType:(NSString *)contentType forPart:(NSString *)partName;
16 |
17 | @property (nonatomic, strong) NSString *partName;
18 | @property (nonatomic, strong) NSString *contentType;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAContentTypesOverride.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRAContentTypesOverride.m
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAContentTypesOverride.h"
10 | #import "BRARelationship.h"
11 |
12 | @implementation BRAContentTypesOverride
13 |
14 | - (instancetype)initWithContentType:(NSString *)contentType forPart:(NSString *)partName {
15 | NSDictionary *attributes = @{
16 | @"_ContentType": contentType,
17 | @"_PartName": partName,
18 | };
19 |
20 | self = [super initWithOpenXmlAttributes:attributes];
21 |
22 | return self;
23 | }
24 |
25 | - (void)loadAttributes {
26 | NSDictionary *dictionaryRepresentation = [super dictionaryRepresentation];
27 |
28 | self.contentType = dictionaryRepresentation.attributes[@"ContentType"];
29 | self.partName = dictionaryRepresentation.attributes[@"PartName"];
30 | }
31 |
32 | - (NSString *)description {
33 | return [NSString stringWithFormat:@"<%@: %p> ContentType: %@ - PartName: %@", self.class, self, _contentType, _partName];
34 | }
35 |
36 | @end
37 |
38 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRADrawing.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRADrawing.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 | #import "BRARelationships.h"
11 | #import "BRARelatedToColumnAndRowProtocol.h"
12 | #import "BRAWorksheetDrawing.h"
13 | #import "BRAImage.h"
14 |
15 | @interface BRADrawing : BRARelationship
16 |
17 | - (BRAWorksheetDrawing *)addDrawingForImage:(BRAImage *)image withAnchor:(BRAAnchor *)anchor;
18 |
19 | @property (nonatomic, strong) NSArray *worksheetDrawings;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAElementWithRelationships.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAElementWithRelationships.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 03/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlElement.h"
11 | #import "NSDictionary+OpenXMLDictionaryParser.h"
12 |
13 | @class BRARelationships;
14 |
15 | @interface BRAElementWithRelationships : BRAOpenXmlElement
16 |
17 | @property (nonatomic, strong) BRARelationships *relationships;
18 |
19 | - (NSString *)relationshipsTarget;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAImage.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAImage.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 |
11 | @interface BRAImage : BRARelationship
12 |
13 | @property (nonatomic, getter=isJpeg) BOOL jpeg;
14 | @property (nonatomic, strong) BRANativeImage *uiImage;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAImage.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRAImage.m
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAImage.h"
10 |
11 | @implementation BRAImage
12 |
13 | - (NSString *)targetFormat {
14 | return self.isJpeg ? @"../media/image%ld.jpeg" : @"../media/image%ld.png";
15 | }
16 |
17 | + (NSString *)fullRelationshipType {
18 | return @"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image";
19 | }
20 |
21 | - (void)loadXmlContents {
22 | [super loadXmlContents];
23 |
24 | if (_dataRepresentation == nil && self.target != nil) {
25 | NSString *fullFilePath = [[self.parentDirectory stringByAppendingPathComponent:self.target] stringByStandardizingPath];
26 | _uiImage = [[BRANativeImage alloc] initWithContentsOfFile:fullFilePath];
27 | } else if (_dataRepresentation != nil) {
28 | _uiImage = [[BRANativeImage alloc] initWithData:_dataRepresentation];
29 | }
30 | }
31 |
32 | #pragma mark -
33 |
34 | - (NSString *)xmlRepresentation {
35 | //Have to be nil. BRAImage is not an xml file, so BRAOpenXmlElement will save it as raw data
36 | return nil;
37 | }
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAMergeCell.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAMergeCell.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 17/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRACellRange.h"
11 |
12 | @interface BRAMergeCell : BRACellRange
13 |
14 | - (NSString *)firstCellReference;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAMergeCell.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRAMergeCell.m
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 17/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAMergeCell.h"
10 |
11 | @implementation BRAMergeCell
12 |
13 | - (NSString *)firstCellReference {
14 | return [NSString stringWithFormat:@"%@%ld", _leftColumnName, (long)self.topRowIndex];
15 | }
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAOfficeDocument.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAOfficeDocument.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 03/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRARelationship.h"
11 | #import "BRAStyles.h"
12 | #import "BRACalcChain.h"
13 | #import "BRAComments.h"
14 | #import "BRAOpenXmlSubElement.h"
15 |
16 | @class BRASharedStrings;
17 |
18 | @interface BRAOfficeDocument : BRARelationship
19 |
20 | - (BRAWorksheet *)worksheetNamed:(NSString *)worksheetName;
21 | - (BRAWorksheet *)createWorksheetNamed:(NSString *)worksheetName;
22 | - (BRAWorksheet *)createWorksheetNamed:(NSString *)worksheetName byCopyingWorksheet:(BRAWorksheet *)worksheet;
23 | - (void)removeWorksheetNamed:(NSString *)worksheetName;
24 |
25 | @property (nonatomic, weak) BRACalcChain *calcChain;
26 | @property (nonatomic, weak) BRASharedStrings *sharedStrings;
27 | @property (nonatomic, weak) BRAStyles *styles;
28 | @property (nonatomic, strong) NSArray *sheets;
29 | @property (nonatomic, strong, readonly) NSArray *worksheets;
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAOfficeDocumentPackage.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAOfficeDocumentPackage.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 03/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAElementWithRelationships.h"
11 | #import "BRAOfficeDocument.h"
12 | #import "BRAContentTypes.h"
13 | #import "BRAWorksheet.h"
14 | #import "BRARow.h"
15 | #import "BRAColumn.h"
16 | #import "BRACell.h"
17 |
18 | @interface BRAOfficeDocumentPackage : BRAElementWithRelationships
19 |
20 | @property (nonatomic, strong) BRAContentTypes *contentTypes;
21 | @property (nonatomic, strong) BRAOfficeDocument *workbook;
22 | @property (nonatomic, strong) NSString *cacheDirectory;
23 |
24 | + (instancetype)open:(NSString *)filePath;
25 | + (instancetype)create:(NSString *)filePath;
26 | - (void)saveAs:(NSString *)filePath;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAOpenXmlElement.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAOpenXmlElement.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "NSDictionary+OpenXMLDictionaryParser.h"
11 |
12 | #define NOT_IMPLEMENTED NSAssert2(NO, @"%s is not implemented in %@", __PRETTY_FUNCTION__, [super class]);
13 |
14 | @interface BRAOpenXmlElement : NSObject {
15 | NSString *_xmlRepresentation;
16 | NSData *_dataRepresentation;
17 | }
18 |
19 | @property (nonatomic, strong) NSString *target;
20 | @property (nonatomic, strong) NSString *parentDirectory;
21 | @property (nonatomic, strong) NSString *xmlRepresentation;
22 | @property (nonatomic, strong) NSData *dataRepresentation;
23 |
24 | - (instancetype)initWithContentsOfTarget:(NSString *)target inParentDirectory:(NSString *)parentDirectory;
25 | - (instancetype)initWithTarget:(NSString *)target inParentDirectory:(NSString *)parentDirectory;
26 | - (void)loadXmlContents;
27 | - (void)save;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAOpenXmlSubElement.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAOpenXmlSubElement.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "NativeColor+HTML.h"
11 | #import "NativeFont+BoldItalic.h"
12 | #import "XMLDictionary.h"
13 | #import "NSDictionary+DeepCopy.h"
14 | #import "NSDictionary+OpenXmlString.h"
15 | #import "NSDictionary+OpenXMLDictionaryParser.h"
16 |
17 | @class BRAStyles, BRAWorksheet;
18 |
19 | @interface BRAOpenXmlSubElement : NSObject
20 |
21 | - (instancetype)initWithOpenXmlAttributes:(NSDictionary *)attributes;
22 | - (void)loadAttributes;
23 |
24 | @property (nonatomic, strong) NSDictionary *dictionaryRepresentation;
25 |
26 | @end
27 |
28 |
29 | @interface BRAOpenXmlSubElementWithStyle : BRAOpenXmlSubElement {
30 | BRAStyles *_styles;
31 | }
32 |
33 | - (instancetype)initWithOpenXmlAttributes:(NSDictionary *)attributes inStyles:(BRAStyles *)styles;
34 |
35 | @end
36 |
37 | @interface BRAOpenXmlSubElementWithWorksheet : BRAOpenXmlSubElement {
38 | BRAWorksheet *_worksheet;
39 | }
40 |
41 | - (instancetype)initWithOpenXmlAttributes:(NSDictionary *)attributes inWorksheet:(BRAWorksheet *)worksheet;
42 |
43 | @end
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRARelatedToColumnAndRowProtocol.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRARelatedToColumnAndRowProtocol.h
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 23/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @protocol BRARelatedToColumnAndRowProtocol
12 |
13 | @required
14 | - (void)didAddRowsAtIndexes:(NSIndexSet *)indexes;
15 | - (void)didRemoveRowsAtIndexes:(NSIndexSet *)indexes;
16 | - (void)didAddColumnsAtIndexes:(NSIndexSet *)indexes;
17 | - (void)didRemoveColumnsAtIndexes:(NSIndexSet *)indexes;
18 |
19 | @end
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRARelationship.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRARelationship.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "XMLDictionary.h"
11 | #import "NativeColor+OpenXML.h"
12 | #import "BRAElementWithRelationships.h"
13 |
14 | @interface BRARelationship : BRAElementWithRelationships
15 |
16 | + (NSString *)fullRelationshipType;
17 | - (instancetype)initWithId:(NSString *)relationshipId type:(NSString *)relationshipType andTarget:(NSString *)relationTarget inParentDirectory:(NSString *)parentDirectory;
18 | - (instancetype)initWithXmlRepresentation:(NSString *)xmlRepresentation forRelationId:(NSString *)relationId inParentDirectory:(NSString *)parentDirectory;
19 | - (instancetype)initWithDataRepresentation:(NSData *)dataRepresentation forRelationId:(NSString *)relationId inParentDirectory:(NSString *)parentDirectory;
20 | - (NSString *)contentType;
21 | - (NSString *)targetFormat;
22 | - (NSString *)newTarget;
23 |
24 | @property (nonatomic, strong) NSString *identifier;
25 | @property (nonatomic, strong) NSString *type;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRARelationships.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRARelationships.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 04/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRARelationship.h"
11 |
12 | @interface BRARelationships : BRAOpenXmlElement
13 |
14 | @property (nonatomic, strong) NSMutableArray *relationshipsArray;
15 |
16 | - (id)relationshipWithId:(NSString *)rId;
17 | - (id)anyRelationshipWithType:(NSString *)relationshipType;
18 | - (void)addRelationship:(BRARelationship *)relationship;
19 | - (void)removeRelationshipWithId:(NSString *)identifier;
20 | - (NSArray *)allRelationships;
21 | - (NSString *)relationshipIdForNewRelationship;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRARow.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRARow.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 17/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "BRAOpenXmlSubElement.h"
11 |
12 | @class BRACell, BRAWorksheet;
13 |
14 | @interface BRARow : BRAOpenXmlSubElementWithWorksheet
15 |
16 | + (NSInteger)rowIndexForCellReference:(NSString *)cellReference;
17 | - (instancetype)initWithRowIndex:(NSInteger)rowIndex inWorksheet:(BRAWorksheet *)worksheet;
18 | - (void)addCell:(BRACell *)cell;
19 |
20 | @property (nonatomic, getter=hasCustomHeight) BOOL customHeight;
21 | @property (nonatomic) NSInteger rowIndex;
22 | @property (nonatomic) NSInteger height;
23 | @property (nonatomic, strong) NSMutableArray *cells;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRASharedString.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRASharedString.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 07/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 |
10 | #import "BRAOfficeDocument.h"
11 | #import "BRAOpenXmlSubElement.h"
12 |
13 | @interface BRASharedString : BRAOpenXmlSubElementWithStyle {
14 | NSMutableAttributedString *_attributedString;
15 | }
16 |
17 | - (instancetype)initWithAttributedString:(NSAttributedString *)attributedString inStyles:(BRAStyles *)styles;
18 |
19 | //Read only ! We won't change shared strings but create new ones
20 | - (NSAttributedString *)attributedString;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRASharedStrings.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRASharedStrings.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 | #import "BRASharedString.h"
11 |
12 | @class BRAStyles;
13 |
14 | @interface BRASharedStrings : BRARelationship
15 |
16 | - (void)addSharedString:(BRASharedString *)sharedString;
17 |
18 | @property (nonatomic, weak) BRAStyles *styles;
19 | @property (nonatomic, strong) NSArray *sharedStrings;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRASheet.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRASheet.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/11/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAOpenXmlSubElement.h"
10 |
11 | @interface BRASheet : BRAOpenXmlSubElement
12 |
13 | @property (nonatomic, strong) NSString *identifier;
14 | @property (nonatomic, strong) NSString *name;
15 | @property (nonatomic, strong) NSString *sheetId;
16 | @property (nonatomic, strong) NSString *state;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRASheet.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRASheet.m
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 05/11/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRASheet.h"
10 |
11 | @implementation BRASheet
12 |
13 | - (void)loadAttributes {
14 | NSDictionary *dictionaryRepresentation = [super dictionaryRepresentation];
15 |
16 | _name = dictionaryRepresentation[@"_name"];
17 | _identifier = dictionaryRepresentation[@"_r:id"];
18 | _sheetId = dictionaryRepresentation[@"_sheetId"];
19 | _state = dictionaryRepresentation[@"_state"];
20 | }
21 |
22 | - (NSDictionary *)dictionaryRepresentation {
23 | NSMutableDictionary *dictionaryRepresentation = [super dictionaryRepresentation].mutableCopy;
24 |
25 | dictionaryRepresentation[@"_name"] = _name;
26 | dictionaryRepresentation[@"_r:id"] = _identifier;
27 | dictionaryRepresentation[@"_sheetId"] = _sheetId;
28 |
29 | if (_state != nil) {
30 | dictionaryRepresentation[@"_state"] = _state;
31 | }
32 |
33 | [super setDictionaryRepresentation:dictionaryRepresentation];
34 |
35 | return dictionaryRepresentation;
36 | }
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAStyles.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAStyles.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 07/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 | #import "BRACellFill.h"
11 | #import "BRACellFormat.h"
12 | #import "BRANumberFormat.h"
13 | #import "BRATheme.h"
14 | #import "BRAPlatformSpecificDefines.h"
15 |
16 | @interface BRAStyles : BRARelationship {
17 | NSDictionary *_attributes;
18 | }
19 |
20 | @property (nonatomic, strong) NSArray *indexedColors;
21 | @property (nonatomic, strong) NSArray *textsAttributes;
22 | @property (nonatomic, strong) NSArray *cellFormats;
23 | @property (nonatomic, strong) NSArray *cellStyleFormats;
24 | @property (nonatomic, strong) NSArray *cellFills;
25 | @property (nonatomic, strong) NSDictionary *numberFormats;
26 | @property (nonatomic, weak) BRATheme *theme;
27 |
28 | - (void)loadThemableContent;
29 | - (NSDictionary *)defaultNumberFormats;
30 | - (NSDictionary *)attributedStringAttributesFromOpenXmlAttributes:(NSDictionary *)attributes;
31 | - (BRANativeColor *)colorWithOpenXmlAttributes:(NSDictionary *)attributes;
32 | - (NSDictionary *)openXmlAttributesWithColor:(BRANativeColor *)color;
33 | - (NSString *)addNumberFormat:(BRANumberFormat *)numberFormat;
34 | - (NSInteger)addStyleByCopyingStyleWithId:(NSInteger)styleId;
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRATheme.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRATheme.h
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 06/07/2015.
6 | // Copyright (c) 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 |
11 | @interface BRATheme : BRARelationship
12 |
13 | @property (nonatomic, strong, readonly) NSArray *colors;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAVmlDrawing.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAVmlDrawing.h
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 28/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRARelationship.h"
10 |
11 | @interface BRAVmlDrawing : BRARelationship
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAVmlDrawing.m:
--------------------------------------------------------------------------------
1 | //
2 | // BRAVmlDrawing.m
3 | // XlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 28/09/2015.
6 | // Copyright © 2015 BRAE. All rights reserved.
7 | //
8 |
9 | #import "BRAVmlDrawing.h"
10 |
11 | @implementation BRAVmlDrawing
12 |
13 | - (NSString *)targetFormat {
14 | return @"../drawings/vmlDrawing%ld.vml";
15 | }
16 |
17 | + (NSString *)fullRelationshipType {
18 | return @"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing";
19 | }
20 |
21 | - (void)loadXmlContents {
22 | [super loadXmlContents];
23 | }
24 |
25 | #pragma mark -
26 |
27 | - (NSString *)xmlRepresentation {
28 | //Have to be nil. BRAImage is not an xml file, so BRAOpenXmlElement will save it as raw data
29 | return nil;
30 | }
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/BRAWorksheetDrawing.h:
--------------------------------------------------------------------------------
1 | //
2 | // BRAWorksheetDrawing.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/10/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 | #import "BRAPlatformSpecificDefines.h"
9 | #import "BRAOpenXmlSubElement.h"
10 | #import "BRAImage.h"
11 |
12 | @interface BRAAnchor : NSObject
13 |
14 | - (NSDictionary *)openXmlAttributesForNewAnchoredDrawing;
15 |
16 | @end
17 |
18 | @interface BRAAbsoluteAnchor : BRAAnchor
19 |
20 | @property (nonatomic) CGRect frame;
21 |
22 | @end
23 |
24 | @interface BRAOneCellAnchor : BRAAnchor
25 |
26 | @property (nonatomic) CGSize size;
27 | @property (nonatomic) CGPoint topLeftCellOffset;
28 | @property (nonatomic, strong) NSString *topLeftCellReference;
29 |
30 | @end
31 |
32 | @interface BRATwoCellAnchor : BRAOneCellAnchor
33 |
34 | @property (nonatomic) CGPoint bottomRightCellOffset;
35 | @property (nonatomic, strong) NSString *bottomRightCellReference;
36 |
37 | @end
38 |
39 | @interface BRAWorksheetDrawing : BRAOpenXmlSubElement
40 |
41 | @property (nonatomic, getter=shouldKeepAspectRatio) BOOL keepAspectRatio;
42 | @property (nonatomic) BRANativeEdgeInsets insets;
43 | @property (nonatomic, strong) BRAAnchor *anchor;
44 | @property (nonatomic, strong) NSString *name;
45 | @property (nonatomic, strong) NSString *identifier;
46 | @property (nonatomic, strong) NSString *drawingIdentifier;
47 | @property (nonatomic, strong) BRAImage *image;
48 |
49 | - (instancetype)initWithImage:(BRAImage *)image andAnchor:(BRAAnchor *)anchor;
50 |
51 | @end
52 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NSDictionary+DeepCopy.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+DeepCopy.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 20/06/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSDictionary (DeepCopy)
12 |
13 | - (NSMutableDictionary *)mutableDeepCopy;
14 |
15 | @end
16 |
17 | @interface NSArray (DeepCopy)
18 |
19 | - (NSMutableArray *)mutableDeepCopy;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NSDictionary+OpenXMLDictionaryParser.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+OpenXmlDictionaryParser.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 19/06/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "XMLDictionary.h"
10 |
11 | @interface NSDictionary (OpenXmlDictionaryParser)
12 |
13 | + (NSDictionary *)dictionaryWithOpenXmlParser:(NSXMLParser *)parser;
14 | + (NSDictionary *)dictionaryWithOpenXmlData:(NSData *)data;
15 | + (NSDictionary *)dictionaryWithOpenXmlString:(NSString *)string;
16 | + (NSDictionary *)dictionaryWithOpenXmlFile:(NSString *)path;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NSDictionary+OpenXmlString.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+OpenXmlString.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 03/09/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "XMLDictionary.h"
11 |
12 | @interface NSDictionary (OpenXmlString)
13 |
14 | - (NSString *)openXmlStringInNodeNamed:(NSString *)nodeName;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NativeColor+HTML.h:
--------------------------------------------------------------------------------
1 | //
2 | // NativeColor+HTML.h
3 | // FasciaLib
4 | //
5 | // Created by René Bigot on 26/01/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAPlatformSpecificDefines.h"
10 |
11 | @interface BRANativeColor(HTML)
12 |
13 | + (BRANativeColor *)colorWithHexString:(NSString *)hexString;
14 | + (CGFloat)colorComponentFrom:(NSString *)string start:(NSUInteger)start length:(NSUInteger)length;
15 | - (NSString *)hexStringValue;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NativeColor+OpenXML.h:
--------------------------------------------------------------------------------
1 | //
2 | // NativeColor+OpenXml.h
3 | // Levé
4 | //
5 | // Created by René BIGOT on 14/04/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAPlatformSpecificDefines.h"
10 | #import "NativeColor+HTML.h"
11 |
12 | @interface BRANativeColor (OpenXml)
13 |
14 | + (NSArray *)defaultIndexedColors;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/NativeFont+BoldItalic.h:
--------------------------------------------------------------------------------
1 | //
2 | // NativeFont+BoldItalic.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 22/04/2014.
6 | // Copyright (c) 2014 René Bigot. All rights reserved.
7 | //
8 |
9 | #import "BRAPlatformSpecificDefines.h"
10 |
11 | static const NSString *kBRAFontNameRegular = @"regular";
12 | static const NSString *kBRAFontNameItalic = @"italic";
13 | static const NSString *kBRAFontNameBold = @"bold";
14 | static const NSString *kBRAFontNameBoldItalic = @"bold-italic";
15 | static const NSString *kBRAFontNameWindows = @"windows";
16 |
17 | @interface BRANativeFont (BoldItalic)
18 |
19 | + (BRANativeFont *)nativeFontWithName:(NSString *)fontName size:(CGFloat)size bold:(BOOL)isBold italic:(BOOL)isItalic;
20 | - (NSDictionary *)windowsFontProperties;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriter/XlsxReaderWriter-swift-bridge.h:
--------------------------------------------------------------------------------
1 | //
2 | // XlsxReaderWriter-swift-bridge.h
3 | // BRAXlsxReaderWriter
4 | //
5 | // Created by René BIGOT on 02/09/2015.
6 | // Copyright (c) 2015 René Bigot. All rights reserved.
7 | //
8 |
9 |
10 | #import "NativeFont+BoldItalic.h"
11 | #import "NativeColor+OpenXML.h"
12 | #import "NativeColor+HTML.h"
13 | #import "XMLDictionary.h"
14 | #import "NSDictionary+OpenXmlString.h"
15 | #import "NSDictionary+OpenXMLDictionaryParser.h"
16 | #import "NSDictionary+DeepCopy.h"
17 | #import "BRAWorksheetDrawing.h"
18 | #import "BRAWorksheet.h"
19 | #import "BRATheme.h"
20 | #import "BRAStyles.h"
21 | #import "BRASheet.h"
22 | #import "BRASharedStrings.h"
23 | #import "BRASharedString.h"
24 | #import "BRARow.h"
25 | #import "BRARelationships.h"
26 | #import "BRARelationship.h"
27 | #import "BRAOpenXmlSubElement.h"
28 | #import "BRAOpenXmlElement.h"
29 | #import "BRAOfficeDocumentPackage.h"
30 | #import "BRAOfficeDocument.h"
31 | #import "BRANumberFormat.h"
32 | #import "BRAMergeCell.h"
33 | #import "BRAImage.h"
34 | #import "BRAElementWithRelationships.h"
35 | #import "BRADrawing.h"
36 | #import "BRAContentTypesOverride.h"
37 | #import "BRAContentTypesDefaultExtension.h"
38 | #import "BRAContentTypes.h"
39 | #import "BRAColumn.h"
40 | #import "BRACellRange.h"
41 | #import "BRACellFormat.h"
42 | #import "BRACellFill.h"
43 | #import "BRACell.h"
44 | #import "BRACalcChain.h"
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriterTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriterTests/photo-1415226481302-c40f24f4d45e.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriterTests/photo-1415226481302-c40f24f4d45e.jpeg
--------------------------------------------------------------------------------
/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriterTests/testWorkbook.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder/XlsxReaderWriter/XlsxReaderWriterTests/testWorkbook.xlsx
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizederDemo/FDLocalizederDemo.xcodeproj/project.xcworkspace/xcuserdata/chuxiao.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo.xcodeproj/xcuserdata/chuxiao.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | FDLocalizederDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 | FDLocalizederDemo.xcscheme_^#shared#^_
13 |
14 | orderHint
15 | 0
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // FDLocalizederDemo
4 | //
5 | // Created by chuxiao on 2018/12/7.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | 1
21 | LSRequiresIPhoneOS
22 |
23 | UILaunchStoryboardName
24 | LaunchScreen
25 | UIMainStoryboardFile
26 | Main
27 | UIRequiredDeviceCapabilities
28 |
29 | armv7
30 |
31 | UISupportedInterfaceOrientations
32 |
33 | UIInterfaceOrientationPortrait
34 | UIInterfaceOrientationLandscapeLeft
35 | UIInterfaceOrientationLandscapeRight
36 |
37 | UISupportedInterfaceOrientations~ipad
38 |
39 | UIInterfaceOrientationPortrait
40 | UIInterfaceOrientationPortraitUpsideDown
41 | UIInterfaceOrientationLandscapeLeft
42 | UIInterfaceOrientationLandscapeRight
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // FDLocalizederDemo
4 | //
5 | // Created by chuxiao on 2018/12/7.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/en.lproj/LocalizaFile1.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile1.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
9 | /**
10 | 这是一个注释
11 |
12 | ***也可以通过双斜杠(//)添加注释***
13 | ***也可以不添加注释***
14 | */
15 | "FDLocalizeder_Excel模板" = "This is a code";
16 | "This is a code" = "Measure from the highest point of your shoulder to the hem of dress. Make sure to measure in bare feet and stand straight with your feet together.";
17 | "这是一个code(不能为空)" = "This is a code";
18 | "this_language_is" = "这是英语";
19 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/en.lproj/LocalizaFile2.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile2.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/es.lproj/LaunchScreen.strings:
--------------------------------------------------------------------------------
1 |
2 | "FDLocalizeder_Excel模板" = "Longitud";
3 | "This is a code" = "Mida desde el punto más alto de su hombro hasta el dobladillo del vestido. Asegúrese de medir con los pies descalzos y estar de pie con los pies juntos.";
4 | "这是一个code(不能为空)" = "Nota:";
5 | "app_note_explaination1" = "La tabla de tamaños solo sirve de referencia.";
6 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/es.lproj/LocalizaFile1.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile1.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
9 | /**
10 | 这是一个注释
11 |
12 | ***也可以通过双斜杠(//)添加注释***
13 | ***也可以不添加注释***
14 | */
15 | "FDLocalizeder_Excel模板" = "Longitud";
16 | "This is a code" = "Mida desde el punto más alto de su hombro hasta el dobladillo del vestido. Asegúrese de medir con los pies descalzos y estar de pie con los pies juntos.";
17 | "这是一个code(不能为空)" = "Nota:";
18 | "this_language_is" = "这是西班牙语";
19 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/es.lproj/LocalizaFile2.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile2.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/es.lproj/Main.strings:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/fr.lproj/LaunchScreen.strings:
--------------------------------------------------------------------------------
1 |
2 | "FDLocalizeder_Excel模板" = "Longueur";
3 | "This is a code" = "Mesurez de point le plus haut de votre épaule jusqu\'à l\'ourlet de la robe. Assurez-vous de faire la mesure pieds nus et en vous tenant droite avec vos pieds joints.";
4 | "这是一个code(不能为空)" = "Remarque :";
5 | "app_note_explaination1" = "Le tableau des tailles est à titre de référence uniquement.";
6 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/fr.lproj/LocalizaFile1.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile1.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
9 | /**
10 | 这是一个注释
11 |
12 | ***也可以通过双斜杠(//)添加注释***
13 | ***也可以不添加注释***
14 | */
15 | "FDLocalizeder_Excel模板" = "Longueur";
16 | "This is a code" = "Mesurez de point le plus haut de votre épaule jusqu\'à l\'ourlet de la robe. Assurez-vous de faire la mesure pieds nus et en vous tenant droite avec vos pieds joints.";
17 | "这是一个code(不能为空)" = "Remarque :";
18 | "this_language_is" = "这是法语";
19 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/fr.lproj/LocalizaFile2.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile2.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/fr.lproj/Main.strings:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // FDLocalizederDemo
4 | //
5 | // Created by chuxiao on 2018/12/7.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/zh-Hant.lproj/LaunchScreen.strings:
--------------------------------------------------------------------------------
1 |
2 | "FDLocalizeder_Excel模板" = "说明:\n\n第一列code不能为空,第一排语言标识不能为空。\n\n语言标识可以通过项目里的Languages.plist和LanguageBindFile.plist进行配置";
3 | "This is a code" = "从肩膀的最高点一直量到衣服的下摆。一定要光着脚,双脚并拢站直。";
4 | "这是一个code(不能为空)" = "这是一个code";
5 | "app_note_explaination1" = "แผนภูมิขนาดนี้ใช้เพื่อการอ้างอิงเท่านั้น";
6 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/zh-Hant.lproj/LocalizaFile1.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile1.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
9 | /**
10 | 这是一个注释
11 |
12 | ***也可以通过双斜杠(//)添加注释***
13 | ***也可以不添加注释***
14 | */
15 | "FDLocalizeder_Excel模板" = "说明:\n\n第一列code不能为空,第一排语言标识不能为空。\n\n语言标识可以通过项目里的Languages.plist和LanguageBindFile.plist进行配置";
16 | "This is a code" = "从肩膀的最高点一直量到衣服的下摆。一定要光着脚,双脚并拢站直。";
17 | "这是一个code(不能为空)" = "这是一个code";
18 | "this_language_is" = "这是繁体中文";
19 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/zh-Hant.lproj/LocalizaFile2.strings:
--------------------------------------------------------------------------------
1 | /*
2 | LocalizaFile2.strings
3 | FDLocalizederDemo
4 |
5 | Created by chuxiao on 2018/12/7.
6 | Copyright © 2018年 chuxiao. All rights reserved.
7 | */
8 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemo/zh-Hant.lproj/Main.strings:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemoTests/FDLocalizederDemoTests.m:
--------------------------------------------------------------------------------
1 | //
2 | // FDLocalizederDemoTests.m
3 | // FDLocalizederDemoTests
4 | //
5 | // Created by chuxiao on 2018/12/7.
6 | // Copyright © 2018年 chuxiao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface FDLocalizederDemoTests : XCTestCase
12 |
13 | @end
14 |
15 | @implementation FDLocalizederDemoTests
16 |
17 | - (void)setUp {
18 | [super setUp];
19 | // Put setup code here. This method is called before the invocation of each test method in the class.
20 | }
21 |
22 | - (void)tearDown {
23 | // Put teardown code here. This method is called after the invocation of each test method in the class.
24 | [super tearDown];
25 | }
26 |
27 | - (void)testExample {
28 | // This is an example of a functional test case.
29 | // Use XCTAssert and related functions to verify your tests produce the correct results.
30 | }
31 |
32 | - (void)testPerformanceExample {
33 | // This is an example of a performance test case.
34 | [self measureBlock:^{
35 | // Put the code you want to measure the time of here.
36 | }];
37 | }
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/FDLocalizederDemo/FDLocalizederDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | 1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/FDLocalizeder_Excel模板.xlsx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chuxao/FDLocalizeder/7f8a7b822ac4a90c52f66fbccb79a00136642c1d/FDLocalizeder_Excel模板.xlsx
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 chuxiaojiajia
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------