From edf091ccd5088abf57cdc8e274051ff36c6d0d53 Mon Sep 17 00:00:00 2001 From: wu736139669 Date: Thu, 2 Apr 2015 13:49:37 +0800 Subject: [PATCH] new --- Ash_AWord.xcodeproj/project.pbxproj | 202 + .../xcshareddata/Ash_AWord.xccheckout | 8 +- .../xcdebugger/Breakpoints_v2.xcbkptlist | 32 + Ash_AWord/Info.plist | 18 +- Ash_AWord/Resource/Icon.png | Bin 10237 -> 15840 bytes Ash_AWord/Resource/Icon@2x.png | Bin 25365 -> 54885 bytes Ash_AWord/Resource/cellmorebtnclickN@2x.png | Bin 0 -> 1405 bytes Ash_AWord/Resource/cellmorebtnnormalN@2x.png | Bin 0 -> 1394 bytes Ash_AWord/Resource/first-login-icon.png | Bin 38246 -> 54885 bytes .../DACircularProgressView.h | 0 .../DACircularProgressView.m | 0 .../Vender}/MWPhotoBrowser/LICENCE.txt | 0 .../MWPhotoBrowser/Classes/MWCaptionView.h | 0 .../MWPhotoBrowser/Classes/MWCaptionView.m | 0 .../MWPhotoBrowser/Classes/MWCommon.h | 0 .../MWPhotoBrowser/Classes/MWGridCell.h | 0 .../MWPhotoBrowser/Classes/MWGridCell.m | 0 .../Classes/MWGridViewController.h | 0 .../Classes/MWGridViewController.m | 0 .../MWPhotoBrowser/Classes/MWPhoto.h | 0 .../MWPhotoBrowser/Classes/MWPhoto.m | 0 .../MWPhotoBrowser/Classes/MWPhotoBrowser.h | 0 .../MWPhotoBrowser/Classes/MWPhotoBrowser.m | 4 +- .../Classes/MWPhotoBrowserPrivate.h | 0 .../MWPhotoBrowser/Classes/MWPhotoProtocol.h | 0 .../Classes/MWTapDetectingImageView.h | 0 .../Classes/MWTapDetectingImageView.m | 0 .../Classes/MWTapDetectingView.h | 0 .../Classes/MWTapDetectingView.m | 0 .../Classes/MWZoomingScrollView.h | 0 .../Classes/MWZoomingScrollView.m | 0 .../images/Checkmark.png | Bin .../images/Checkmark@2x.png | Bin .../images/ImageError.png | Bin .../images/ImageError@2x.png | Bin .../images/ImageSelectedOff.png | Bin .../images/ImageSelectedOff@2x.png | Bin .../images/ImageSelectedOn.png | Bin .../images/ImageSelectedOn@2x.png | Bin .../images/ImageSelectedSmallOff.png | Bin .../images/ImageSelectedSmallOff@2x.png | Bin .../images/ImageSelectedSmallOn.png | Bin .../images/ImageSelectedSmallOn@2x.png | Bin .../images/UIBarButtonItemArrowLeft.png | Bin .../images/UIBarButtonItemArrowLeft@2x.png | Bin .../UIBarButtonItemArrowOutlineLeft.png | Bin .../UIBarButtonItemArrowOutlineLeft@2x.png | Bin .../UIBarButtonItemArrowOutlineRight.png | Bin .../UIBarButtonItemArrowOutlineRight@2x.png | Bin .../images/UIBarButtonItemArrowRight.png | Bin .../images/UIBarButtonItemArrowRight@2x.png | Bin .../images/UIBarButtonItemGrid.png | Bin .../images/UIBarButtonItemGrid@2x.png | Bin .../images/UIBarButtonItemGridiOS6.png | Bin .../images/UIBarButtonItemGridiOS6@2x.png | Bin .../Vender}/MWPhotoBrowser/README.md | 0 .../NSIndexPath+PSTCollectionViewAdditions.h | 0 .../NSIndexPath+PSTCollectionViewAdditions.m | 0 .../PSTCollectionView/PSTCollectionView.h | 0 .../PSTCollectionView/PSTCollectionView.m | 261 +- .../PSTCollectionView/PSTCollectionViewCell.h | 0 .../PSTCollectionView/PSTCollectionViewCell.m | 6 +- .../PSTCollectionViewCommon.h | 0 .../PSTCollectionViewController.h | 0 .../PSTCollectionViewController.m | 2 +- .../PSTCollectionView/PSTCollectionViewData.h | 0 .../PSTCollectionView/PSTCollectionViewData.m | 6 +- .../PSTCollectionViewFlowLayout.h | 1 + .../PSTCollectionViewFlowLayout.m | 53 +- .../PSTCollectionViewItemKey.h | 0 .../PSTCollectionViewItemKey.m | 0 .../PSTCollectionViewLayout+Internals.h | 0 .../PSTCollectionViewLayout.h | 0 .../PSTCollectionViewLayout.m | 27 +- .../PSTCollectionViewUpdateItem.h | 0 .../PSTCollectionViewUpdateItem.m | 0 .../PSTCollectionView/PSTGridLayoutInfo.h | 0 .../PSTCollectionView/PSTGridLayoutInfo.m | 4 +- .../PSTCollectionView/PSTGridLayoutItem.h | 0 .../PSTCollectionView/PSTGridLayoutItem.m | 0 .../PSTCollectionView/PSTGridLayoutRow.h | 0 .../PSTCollectionView/PSTGridLayoutRow.m | 8 +- .../PSTCollectionView/PSTGridLayoutSection.h | 0 .../PSTCollectionView/PSTGridLayoutSection.m | 8 +- .../Login/LoginViewController.xib | 2 +- .../ViewControllers/My/SetUpViewController.m | 4 +- Ash_AWord/Views/Note/NoteTableViewCell.h | 2 +- Ash_AWord/Views/Note/NoteTableViewCell.m | 48 +- Ash_AWord/Views/Note/NoteTableViewCell.xib | 10 +- Podfile | 2 +- Podfile.lock | 11 - Pods/DACircularProgress/LICENSE.md | 23 - Pods/DACircularProgress/README.md | 77 - .../DACircularProgressView.h | 1 - .../Private/MWPhotoBrowser/MWCaptionView.h | 1 - .../Headers/Private/MWPhotoBrowser/MWCommon.h | 1 - .../Private/MWPhotoBrowser/MWGridCell.h | 1 - .../MWPhotoBrowser/MWGridViewController.h | 1 - Pods/Headers/Private/MWPhotoBrowser/MWPhoto.h | 1 - .../Private/MWPhotoBrowser/MWPhotoBrowser.h | 1 - .../MWPhotoBrowser/MWPhotoBrowserPrivate.h | 1 - .../Private/MWPhotoBrowser/MWPhotoProtocol.h | 1 - .../MWPhotoBrowser/MWTapDetectingImageView.h | 1 - .../MWPhotoBrowser/MWTapDetectingView.h | 1 - .../MWPhotoBrowser/MWZoomingScrollView.h | 1 - .../NSIndexPath+PSTCollectionViewAdditions.h | 1 - .../PSTCollectionView/PSTCollectionView.h | 1 - .../PSTCollectionView/PSTCollectionViewCell.h | 1 - .../PSTCollectionViewCommon.h | 1 - .../PSTCollectionViewController.h | 1 - .../PSTCollectionView/PSTCollectionViewData.h | 1 - .../PSTCollectionViewFlowLayout.h | 1 - .../PSTCollectionViewItemKey.h | 1 - .../PSTCollectionViewLayout+Internals.h | 1 - .../PSTCollectionViewLayout.h | 1 - .../PSTCollectionViewUpdateItem.h | 1 - .../PSTCollectionView/PSTGridLayoutInfo.h | 1 - .../PSTCollectionView/PSTGridLayoutItem.h | 1 - .../PSTCollectionView/PSTGridLayoutRow.h | 1 - .../PSTCollectionView/PSTGridLayoutSection.h | 1 - .../DACircularProgressView.h | 1 - .../Public/MWPhotoBrowser/MWCaptionView.h | 1 - Pods/Headers/Public/MWPhotoBrowser/MWCommon.h | 1 - .../Public/MWPhotoBrowser/MWGridCell.h | 1 - .../MWPhotoBrowser/MWGridViewController.h | 1 - Pods/Headers/Public/MWPhotoBrowser/MWPhoto.h | 1 - .../Public/MWPhotoBrowser/MWPhotoBrowser.h | 1 - .../MWPhotoBrowser/MWPhotoBrowserPrivate.h | 1 - .../Public/MWPhotoBrowser/MWPhotoProtocol.h | 1 - .../MWPhotoBrowser/MWTapDetectingImageView.h | 1 - .../MWPhotoBrowser/MWTapDetectingView.h | 1 - .../MWPhotoBrowser/MWZoomingScrollView.h | 1 - .../NSIndexPath+PSTCollectionViewAdditions.h | 1 - .../PSTCollectionView/PSTCollectionView.h | 1 - .../PSTCollectionView/PSTCollectionViewCell.h | 1 - .../PSTCollectionViewCommon.h | 1 - .../PSTCollectionViewController.h | 1 - .../PSTCollectionView/PSTCollectionViewData.h | 1 - .../PSTCollectionViewFlowLayout.h | 1 - .../PSTCollectionViewItemKey.h | 1 - .../PSTCollectionViewLayout+Internals.h | 1 - .../PSTCollectionViewLayout.h | 1 - .../PSTCollectionViewUpdateItem.h | 1 - .../PSTCollectionView/PSTGridLayoutInfo.h | 1 - .../PSTCollectionView/PSTGridLayoutItem.h | 1 - .../PSTCollectionView/PSTGridLayoutRow.h | 1 - .../PSTCollectionView/PSTGridLayoutSection.h | 1 - Pods/Manifest.lock | 11 - Pods/PSTCollectionView/LICENSE | 19 - Pods/PSTCollectionView/README.md | 57 - Pods/Pods.xcodeproj/project.pbxproj | 5867 ++++++++--------- .../xcschemes/Pods-AFNetworking.xcscheme | 2 +- .../Pods-DACircularProgress.xcscheme | 59 - .../xcschemes/Pods-DTCoreText.xcscheme | 2 +- .../xcschemes/Pods-DTFoundation.xcscheme | 2 +- .../xcschemes/Pods-EGOCache.xcscheme | 2 +- .../xcschemes/Pods-Godzippa.xcscheme | 2 +- .../xcschemes/Pods-MBProgressHUD.xcscheme | 2 +- .../xcschemes/Pods-MJRefresh.xcscheme | 2 +- .../xcschemes/Pods-MWPhotoBrowser.xcscheme | 59 - .../xcschemes/Pods-Mantle.xcscheme | 2 +- .../xcschemes/Pods-PSTCollectionView.xcscheme | 59 - .../xcschemes/Pods-Reachability.xcscheme | 2 +- .../xcschemes/Pods-SBJson.xcscheme | 2 +- .../xcschemes/Pods-SDWebImage.xcscheme | 2 +- .../Pods-STableViewController.xcscheme | 2 +- .../xcschemes/Pods-SecureUDID.xcscheme | 2 +- .../xcschemes/Pods.xcscheme | 2 +- .../xcschemes/xcschememanagement.plist | 93 +- .../Pods-AFNetworking-Private.xcconfig | 2 +- .../Pods-DACircularProgress-Private.xcconfig | 6 - .../Pods-DACircularProgress-dummy.m | 5 - .../Pods-DACircularProgress-prefix.pch | 5 - .../Pods-DACircularProgress.xcconfig | 1 - .../Pods-DTCoreText-Private.xcconfig | 2 +- .../Pods-DTFoundation-Private.xcconfig | 2 +- .../Pods-EGOCache-Private.xcconfig | 2 +- .../Pods-Godzippa-Private.xcconfig | 2 +- .../Pods-MBProgressHUD-Private.xcconfig | 2 +- .../Pods-MJRefresh-Private.xcconfig | 2 +- .../Pods-MWPhotoBrowser-Private.xcconfig | 6 - .../Pods-MWPhotoBrowser-dummy.m | 5 - .../Pods-MWPhotoBrowser-prefix.pch | 5 - .../Pods-MWPhotoBrowser.xcconfig | 1 - .../Pods-Mantle/Pods-Mantle-Private.xcconfig | 2 +- .../Pods-PSTCollectionView-Private.xcconfig | 6 - .../Pods-PSTCollectionView-dummy.m | 5 - .../Pods-PSTCollectionView-prefix.pch | 5 - .../Pods-PSTCollectionView.xcconfig | 1 - .../Pods-Reachability-Private.xcconfig | 2 +- .../Pods-SBJson/Pods-SBJson-Private.xcconfig | 2 +- .../Pods-SDWebImage-Private.xcconfig | 2 +- ...Pods-STableViewController-Private.xcconfig | 2 +- .../Pods-SecureUDID-Private.xcconfig | 2 +- .../Pods/Pods-acknowledgements.markdown | 71 - .../Pods/Pods-acknowledgements.plist | 83 - .../Pods/Pods-environment.h | 18 - .../Pods/Pods-resources.sh | 2 - .../Pods/Pods.debug.xcconfig | 6 +- .../Pods/Pods.release.xcconfig | 6 +- 200 files changed, 3142 insertions(+), 4246 deletions(-) create mode 100644 Ash_AWord/Resource/cellmorebtnclickN@2x.png create mode 100644 Ash_AWord/Resource/cellmorebtnnormalN@2x.png rename {Pods/DACircularProgress => Ash_AWord/Vender}/DACircularProgress/DACircularProgressView.h (100%) rename {Pods/DACircularProgress => Ash_AWord/Vender}/DACircularProgress/DACircularProgressView.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/LICENCE.txt (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWCaptionView.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWCaptionView.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWCommon.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWGridCell.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWGridCell.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWGridViewController.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWGridViewController.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhoto.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhoto.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhotoBrowser.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhotoBrowser.m (99%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhotoBrowserPrivate.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWPhotoProtocol.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWTapDetectingImageView.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWTapDetectingImageView.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWTapDetectingView.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWTapDetectingView.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWZoomingScrollView.h (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/Classes/MWZoomingScrollView.m (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/Checkmark.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/Checkmark@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageError.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageError@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedOff.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedOff@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedOn.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedOn@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedSmallOff.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedSmallOff@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedSmallOn.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/ImageSelectedSmallOn@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowLeft.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowLeft@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowOutlineLeft.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowOutlineLeft@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowOutlineRight.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowOutlineRight@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowRight.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemArrowRight@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemGrid.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemGrid@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemGridiOS6.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/MWPhotoBrowser/MWPhotoBrowser.bundle/images/UIBarButtonItemGridiOS6@2x.png (100%) rename {Pods => Ash_AWord/Vender}/MWPhotoBrowser/README.md (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/NSIndexPath+PSTCollectionViewAdditions.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/NSIndexPath+PSTCollectionViewAdditions.m (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionView.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionView.m (92%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewCell.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewCell.m (97%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewCommon.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewController.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewController.m (99%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewData.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewData.m (96%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewFlowLayout.h (97%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewFlowLayout.m (88%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewItemKey.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewItemKey.m (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewLayout+Internals.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewLayout.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewLayout.m (94%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewUpdateItem.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTCollectionViewUpdateItem.m (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutInfo.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutInfo.m (92%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutItem.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutItem.m (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutRow.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutRow.m (96%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutSection.h (100%) rename {Pods/PSTCollectionView => Ash_AWord/Vender}/PSTCollectionView/PSTGridLayoutSection.m (96%) delete mode 100755 Pods/DACircularProgress/LICENSE.md delete mode 100755 Pods/DACircularProgress/README.md delete mode 120000 Pods/Headers/Private/DACircularProgress/DACircularProgressView.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWCaptionView.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWCommon.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWGridCell.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWGridViewController.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWPhoto.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWPhotoBrowser.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWPhotoBrowserPrivate.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWPhotoProtocol.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWTapDetectingImageView.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWTapDetectingView.h delete mode 120000 Pods/Headers/Private/MWPhotoBrowser/MWZoomingScrollView.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/NSIndexPath+PSTCollectionViewAdditions.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionView.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewCell.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewCommon.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewController.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewData.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewFlowLayout.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewItemKey.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewLayout+Internals.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewLayout.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTCollectionViewUpdateItem.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTGridLayoutInfo.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTGridLayoutItem.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTGridLayoutRow.h delete mode 120000 Pods/Headers/Private/PSTCollectionView/PSTGridLayoutSection.h delete mode 120000 Pods/Headers/Public/DACircularProgress/DACircularProgressView.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWCaptionView.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWCommon.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWGridCell.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWGridViewController.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWPhoto.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWPhotoBrowser.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWPhotoBrowserPrivate.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWPhotoProtocol.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWTapDetectingImageView.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWTapDetectingView.h delete mode 120000 Pods/Headers/Public/MWPhotoBrowser/MWZoomingScrollView.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/NSIndexPath+PSTCollectionViewAdditions.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionView.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewCell.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewCommon.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewController.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewData.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewFlowLayout.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewItemKey.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewLayout+Internals.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewLayout.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTCollectionViewUpdateItem.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTGridLayoutInfo.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTGridLayoutItem.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTGridLayoutRow.h delete mode 120000 Pods/Headers/Public/PSTCollectionView/PSTGridLayoutSection.h delete mode 100644 Pods/PSTCollectionView/LICENSE delete mode 100644 Pods/PSTCollectionView/README.md delete mode 100644 Pods/Pods.xcodeproj/xcuserdata/xmfish.xcuserdatad/xcschemes/Pods-DACircularProgress.xcscheme delete mode 100644 Pods/Pods.xcodeproj/xcuserdata/xmfish.xcuserdatad/xcschemes/Pods-MWPhotoBrowser.xcscheme delete mode 100644 Pods/Pods.xcodeproj/xcuserdata/xmfish.xcuserdatad/xcschemes/Pods-PSTCollectionView.xcscheme delete mode 100644 Pods/Target Support Files/Pods-DACircularProgress/Pods-DACircularProgress-Private.xcconfig delete mode 100644 Pods/Target Support Files/Pods-DACircularProgress/Pods-DACircularProgress-dummy.m delete mode 100644 Pods/Target Support Files/Pods-DACircularProgress/Pods-DACircularProgress-prefix.pch delete mode 100644 Pods/Target Support Files/Pods-DACircularProgress/Pods-DACircularProgress.xcconfig delete mode 100644 Pods/Target Support Files/Pods-MWPhotoBrowser/Pods-MWPhotoBrowser-Private.xcconfig delete mode 100644 Pods/Target Support Files/Pods-MWPhotoBrowser/Pods-MWPhotoBrowser-dummy.m delete mode 100644 Pods/Target Support Files/Pods-MWPhotoBrowser/Pods-MWPhotoBrowser-prefix.pch delete mode 100644 Pods/Target Support Files/Pods-MWPhotoBrowser/Pods-MWPhotoBrowser.xcconfig delete mode 100644 Pods/Target Support Files/Pods-PSTCollectionView/Pods-PSTCollectionView-Private.xcconfig delete mode 100644 Pods/Target Support Files/Pods-PSTCollectionView/Pods-PSTCollectionView-dummy.m delete mode 100644 Pods/Target Support Files/Pods-PSTCollectionView/Pods-PSTCollectionView-prefix.pch delete mode 100644 Pods/Target Support Files/Pods-PSTCollectionView/Pods-PSTCollectionView.xcconfig diff --git a/Ash_AWord.xcodeproj/project.pbxproj b/Ash_AWord.xcodeproj/project.pbxproj index ce61ce6..61baa2f 100644 --- a/Ash_AWord.xcodeproj/project.pbxproj +++ b/Ash_AWord.xcodeproj/project.pbxproj @@ -39,6 +39,33 @@ A9617A551ACC27860024AE4A /* SetUpViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = A9617A531ACC27860024AE4A /* SetUpViewController.xib */; }; A9617A581ACC2EBC0024AE4A /* mine-setting-icon-click@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A9617A561ACC2EBC0024AE4A /* mine-setting-icon-click@2x.png */; }; A9617A591ACC2EBC0024AE4A /* mine-setting-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A9617A571ACC2EBC0024AE4A /* mine-setting-icon@2x.png */; }; + A96862421ACCF0B400DDAA6B /* LICENCE.txt in Resources */ = {isa = PBXBuildFile; fileRef = A968622A1ACCF0B400DDAA6B /* LICENCE.txt */; }; + A96862431ACCF0B400DDAA6B /* MWCaptionView.m in Sources */ = {isa = PBXBuildFile; fileRef = A968622E1ACCF0B400DDAA6B /* MWCaptionView.m */; }; + A96862441ACCF0B400DDAA6B /* MWGridCell.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862311ACCF0B400DDAA6B /* MWGridCell.m */; }; + A96862451ACCF0B400DDAA6B /* MWGridViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862331ACCF0B400DDAA6B /* MWGridViewController.m */; }; + A96862461ACCF0B400DDAA6B /* MWPhoto.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862351ACCF0B400DDAA6B /* MWPhoto.m */; }; + A96862471ACCF0B400DDAA6B /* MWPhotoBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862371ACCF0B400DDAA6B /* MWPhotoBrowser.m */; }; + A96862481ACCF0B400DDAA6B /* MWTapDetectingImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = A968623B1ACCF0B400DDAA6B /* MWTapDetectingImageView.m */; }; + A96862491ACCF0B400DDAA6B /* MWTapDetectingView.m in Sources */ = {isa = PBXBuildFile; fileRef = A968623D1ACCF0B400DDAA6B /* MWTapDetectingView.m */; }; + A968624A1ACCF0B400DDAA6B /* MWZoomingScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = A968623F1ACCF0B400DDAA6B /* MWZoomingScrollView.m */; }; + A968624B1ACCF0B400DDAA6B /* MWPhotoBrowser.bundle in Resources */ = {isa = PBXBuildFile; fileRef = A96862401ACCF0B400DDAA6B /* MWPhotoBrowser.bundle */; }; + A968624C1ACCF0B400DDAA6B /* README.md in Sources */ = {isa = PBXBuildFile; fileRef = A96862411ACCF0B400DDAA6B /* README.md */; }; + A96862501ACCF12300DDAA6B /* DACircularProgressView.m in Sources */ = {isa = PBXBuildFile; fileRef = A968624F1ACCF12300DDAA6B /* DACircularProgressView.m */; }; + A968626E1ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862531ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.m */; }; + A968626F1ACCF13300DDAA6B /* PSTCollectionView.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862551ACCF13300DDAA6B /* PSTCollectionView.m */; }; + A96862701ACCF13300DDAA6B /* PSTCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862571ACCF13300DDAA6B /* PSTCollectionViewCell.m */; }; + A96862711ACCF13300DDAA6B /* PSTCollectionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = A968625A1ACCF13300DDAA6B /* PSTCollectionViewController.m */; }; + A96862721ACCF13300DDAA6B /* PSTCollectionViewData.m in Sources */ = {isa = PBXBuildFile; fileRef = A968625C1ACCF13300DDAA6B /* PSTCollectionViewData.m */; }; + A96862731ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = A968625E1ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.m */; }; + A96862741ACCF13300DDAA6B /* PSTCollectionViewItemKey.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862601ACCF13300DDAA6B /* PSTCollectionViewItemKey.m */; }; + A96862751ACCF13300DDAA6B /* PSTCollectionViewLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862631ACCF13300DDAA6B /* PSTCollectionViewLayout.m */; }; + A96862761ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862651ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.m */; }; + A96862771ACCF13300DDAA6B /* PSTGridLayoutInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862671ACCF13300DDAA6B /* PSTGridLayoutInfo.m */; }; + A96862781ACCF13300DDAA6B /* PSTGridLayoutItem.m in Sources */ = {isa = PBXBuildFile; fileRef = A96862691ACCF13300DDAA6B /* PSTGridLayoutItem.m */; }; + A96862791ACCF13300DDAA6B /* PSTGridLayoutRow.m in Sources */ = {isa = PBXBuildFile; fileRef = A968626B1ACCF13300DDAA6B /* PSTGridLayoutRow.m */; }; + A968627A1ACCF13300DDAA6B /* PSTGridLayoutSection.m in Sources */ = {isa = PBXBuildFile; fileRef = A968626D1ACCF13300DDAA6B /* PSTGridLayoutSection.m */; }; + A968627C1ACCF3D200DDAA6B /* cellmorebtnnormalN@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A968627B1ACCF3D200DDAA6B /* cellmorebtnnormalN@2x.png */; }; + A968627E1ACCF46E00DDAA6B /* cellmorebtnclickN@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A968627D1ACCF46E00DDAA6B /* cellmorebtnclickN@2x.png */; }; A97559A01ACB88FE004ADA42 /* AWordDefault.m in Sources */ = {isa = PBXBuildFile; fileRef = A975599F1ACB88FE004ADA42 /* AWordDefault.m */; }; A97559A31ACB8CE0004ADA42 /* AWordUser.m in Sources */ = {isa = PBXBuildFile; fileRef = A97559A21ACB8CE0004ADA42 /* AWordUser.m */; }; A97559A51ACB9748004ADA42 /* setup-head-default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A97559A41ACB9748004ADA42 /* setup-head-default@2x.png */; }; @@ -161,6 +188,60 @@ A9617A531ACC27860024AE4A /* SetUpViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SetUpViewController.xib; sourceTree = ""; }; A9617A561ACC2EBC0024AE4A /* mine-setting-icon-click@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "mine-setting-icon-click@2x.png"; sourceTree = ""; }; A9617A571ACC2EBC0024AE4A /* mine-setting-icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "mine-setting-icon@2x.png"; sourceTree = ""; }; + A968622A1ACCF0B400DDAA6B /* LICENCE.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENCE.txt; sourceTree = ""; }; + A968622D1ACCF0B400DDAA6B /* MWCaptionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWCaptionView.h; sourceTree = ""; }; + A968622E1ACCF0B400DDAA6B /* MWCaptionView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWCaptionView.m; sourceTree = ""; }; + A968622F1ACCF0B400DDAA6B /* MWCommon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWCommon.h; sourceTree = ""; }; + A96862301ACCF0B400DDAA6B /* MWGridCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWGridCell.h; sourceTree = ""; }; + A96862311ACCF0B400DDAA6B /* MWGridCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWGridCell.m; sourceTree = ""; }; + A96862321ACCF0B400DDAA6B /* MWGridViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWGridViewController.h; sourceTree = ""; }; + A96862331ACCF0B400DDAA6B /* MWGridViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWGridViewController.m; sourceTree = ""; }; + A96862341ACCF0B400DDAA6B /* MWPhoto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWPhoto.h; sourceTree = ""; }; + A96862351ACCF0B400DDAA6B /* MWPhoto.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWPhoto.m; sourceTree = ""; }; + A96862361ACCF0B400DDAA6B /* MWPhotoBrowser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWPhotoBrowser.h; sourceTree = ""; }; + A96862371ACCF0B400DDAA6B /* MWPhotoBrowser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWPhotoBrowser.m; sourceTree = ""; }; + A96862381ACCF0B400DDAA6B /* MWPhotoBrowserPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWPhotoBrowserPrivate.h; sourceTree = ""; }; + A96862391ACCF0B400DDAA6B /* MWPhotoProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWPhotoProtocol.h; sourceTree = ""; }; + A968623A1ACCF0B400DDAA6B /* MWTapDetectingImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWTapDetectingImageView.h; sourceTree = ""; }; + A968623B1ACCF0B400DDAA6B /* MWTapDetectingImageView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWTapDetectingImageView.m; sourceTree = ""; }; + A968623C1ACCF0B400DDAA6B /* MWTapDetectingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWTapDetectingView.h; sourceTree = ""; }; + A968623D1ACCF0B400DDAA6B /* MWTapDetectingView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWTapDetectingView.m; sourceTree = ""; }; + A968623E1ACCF0B400DDAA6B /* MWZoomingScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWZoomingScrollView.h; sourceTree = ""; }; + A968623F1ACCF0B400DDAA6B /* MWZoomingScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWZoomingScrollView.m; sourceTree = ""; }; + A96862401ACCF0B400DDAA6B /* MWPhotoBrowser.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = MWPhotoBrowser.bundle; sourceTree = ""; }; + A96862411ACCF0B400DDAA6B /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + A968624E1ACCF12300DDAA6B /* DACircularProgressView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DACircularProgressView.h; sourceTree = ""; }; + A968624F1ACCF12300DDAA6B /* DACircularProgressView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DACircularProgressView.m; sourceTree = ""; }; + A96862521ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSIndexPath+PSTCollectionViewAdditions.h"; sourceTree = ""; }; + A96862531ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSIndexPath+PSTCollectionViewAdditions.m"; sourceTree = ""; }; + A96862541ACCF13300DDAA6B /* PSTCollectionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionView.h; sourceTree = ""; }; + A96862551ACCF13300DDAA6B /* PSTCollectionView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionView.m; sourceTree = ""; }; + A96862561ACCF13300DDAA6B /* PSTCollectionViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewCell.h; sourceTree = ""; }; + A96862571ACCF13300DDAA6B /* PSTCollectionViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewCell.m; sourceTree = ""; }; + A96862581ACCF13300DDAA6B /* PSTCollectionViewCommon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewCommon.h; sourceTree = ""; }; + A96862591ACCF13300DDAA6B /* PSTCollectionViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewController.h; sourceTree = ""; }; + A968625A1ACCF13300DDAA6B /* PSTCollectionViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewController.m; sourceTree = ""; }; + A968625B1ACCF13300DDAA6B /* PSTCollectionViewData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewData.h; sourceTree = ""; }; + A968625C1ACCF13300DDAA6B /* PSTCollectionViewData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewData.m; sourceTree = ""; }; + A968625D1ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewFlowLayout.h; sourceTree = ""; }; + A968625E1ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewFlowLayout.m; sourceTree = ""; }; + A968625F1ACCF13300DDAA6B /* PSTCollectionViewItemKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewItemKey.h; sourceTree = ""; }; + A96862601ACCF13300DDAA6B /* PSTCollectionViewItemKey.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewItemKey.m; sourceTree = ""; }; + A96862611ACCF13300DDAA6B /* PSTCollectionViewLayout+Internals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "PSTCollectionViewLayout+Internals.h"; sourceTree = ""; }; + A96862621ACCF13300DDAA6B /* PSTCollectionViewLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewLayout.h; sourceTree = ""; }; + A96862631ACCF13300DDAA6B /* PSTCollectionViewLayout.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewLayout.m; sourceTree = ""; }; + A96862641ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTCollectionViewUpdateItem.h; sourceTree = ""; }; + A96862651ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTCollectionViewUpdateItem.m; sourceTree = ""; }; + A96862661ACCF13300DDAA6B /* PSTGridLayoutInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTGridLayoutInfo.h; sourceTree = ""; }; + A96862671ACCF13300DDAA6B /* PSTGridLayoutInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTGridLayoutInfo.m; sourceTree = ""; }; + A96862681ACCF13300DDAA6B /* PSTGridLayoutItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTGridLayoutItem.h; sourceTree = ""; }; + A96862691ACCF13300DDAA6B /* PSTGridLayoutItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTGridLayoutItem.m; sourceTree = ""; }; + A968626A1ACCF13300DDAA6B /* PSTGridLayoutRow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTGridLayoutRow.h; sourceTree = ""; }; + A968626B1ACCF13300DDAA6B /* PSTGridLayoutRow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTGridLayoutRow.m; sourceTree = ""; }; + A968626C1ACCF13300DDAA6B /* PSTGridLayoutSection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PSTGridLayoutSection.h; sourceTree = ""; }; + A968626D1ACCF13300DDAA6B /* PSTGridLayoutSection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PSTGridLayoutSection.m; sourceTree = ""; }; + A968627B1ACCF3D200DDAA6B /* cellmorebtnnormalN@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "cellmorebtnnormalN@2x.png"; sourceTree = ""; }; + A968627D1ACCF46E00DDAA6B /* cellmorebtnclickN@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "cellmorebtnclickN@2x.png"; sourceTree = ""; }; A975599E1ACB88FE004ADA42 /* AWordDefault.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AWordDefault.h; sourceTree = ""; }; A975599F1ACB88FE004ADA42 /* AWordDefault.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AWordDefault.m; sourceTree = ""; }; A97559A11ACB8CE0004ADA42 /* AWordUser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AWordUser.h; sourceTree = ""; }; @@ -389,6 +470,95 @@ path = My; sourceTree = ""; }; + A96862291ACCF0B400DDAA6B /* MWPhotoBrowser */ = { + isa = PBXGroup; + children = ( + A968622A1ACCF0B400DDAA6B /* LICENCE.txt */, + A968622B1ACCF0B400DDAA6B /* MWPhotoBrowser */, + A96862411ACCF0B400DDAA6B /* README.md */, + ); + path = MWPhotoBrowser; + sourceTree = ""; + }; + A968622B1ACCF0B400DDAA6B /* MWPhotoBrowser */ = { + isa = PBXGroup; + children = ( + A968622C1ACCF0B400DDAA6B /* Classes */, + A96862401ACCF0B400DDAA6B /* MWPhotoBrowser.bundle */, + ); + path = MWPhotoBrowser; + sourceTree = ""; + }; + A968622C1ACCF0B400DDAA6B /* Classes */ = { + isa = PBXGroup; + children = ( + A968622D1ACCF0B400DDAA6B /* MWCaptionView.h */, + A968622E1ACCF0B400DDAA6B /* MWCaptionView.m */, + A968622F1ACCF0B400DDAA6B /* MWCommon.h */, + A96862301ACCF0B400DDAA6B /* MWGridCell.h */, + A96862311ACCF0B400DDAA6B /* MWGridCell.m */, + A96862321ACCF0B400DDAA6B /* MWGridViewController.h */, + A96862331ACCF0B400DDAA6B /* MWGridViewController.m */, + A96862341ACCF0B400DDAA6B /* MWPhoto.h */, + A96862351ACCF0B400DDAA6B /* MWPhoto.m */, + A96862361ACCF0B400DDAA6B /* MWPhotoBrowser.h */, + A96862371ACCF0B400DDAA6B /* MWPhotoBrowser.m */, + A96862381ACCF0B400DDAA6B /* MWPhotoBrowserPrivate.h */, + A96862391ACCF0B400DDAA6B /* MWPhotoProtocol.h */, + A968623A1ACCF0B400DDAA6B /* MWTapDetectingImageView.h */, + A968623B1ACCF0B400DDAA6B /* MWTapDetectingImageView.m */, + A968623C1ACCF0B400DDAA6B /* MWTapDetectingView.h */, + A968623D1ACCF0B400DDAA6B /* MWTapDetectingView.m */, + A968623E1ACCF0B400DDAA6B /* MWZoomingScrollView.h */, + A968623F1ACCF0B400DDAA6B /* MWZoomingScrollView.m */, + ); + path = Classes; + sourceTree = ""; + }; + A968624D1ACCF12300DDAA6B /* DACircularProgress */ = { + isa = PBXGroup; + children = ( + A968624E1ACCF12300DDAA6B /* DACircularProgressView.h */, + A968624F1ACCF12300DDAA6B /* DACircularProgressView.m */, + ); + path = DACircularProgress; + sourceTree = ""; + }; + A96862511ACCF13300DDAA6B /* PSTCollectionView */ = { + isa = PBXGroup; + children = ( + A96862521ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.h */, + A96862531ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.m */, + A96862541ACCF13300DDAA6B /* PSTCollectionView.h */, + A96862551ACCF13300DDAA6B /* PSTCollectionView.m */, + A96862561ACCF13300DDAA6B /* PSTCollectionViewCell.h */, + A96862571ACCF13300DDAA6B /* PSTCollectionViewCell.m */, + A96862581ACCF13300DDAA6B /* PSTCollectionViewCommon.h */, + A96862591ACCF13300DDAA6B /* PSTCollectionViewController.h */, + A968625A1ACCF13300DDAA6B /* PSTCollectionViewController.m */, + A968625B1ACCF13300DDAA6B /* PSTCollectionViewData.h */, + A968625C1ACCF13300DDAA6B /* PSTCollectionViewData.m */, + A968625D1ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.h */, + A968625E1ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.m */, + A968625F1ACCF13300DDAA6B /* PSTCollectionViewItemKey.h */, + A96862601ACCF13300DDAA6B /* PSTCollectionViewItemKey.m */, + A96862611ACCF13300DDAA6B /* PSTCollectionViewLayout+Internals.h */, + A96862621ACCF13300DDAA6B /* PSTCollectionViewLayout.h */, + A96862631ACCF13300DDAA6B /* PSTCollectionViewLayout.m */, + A96862641ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.h */, + A96862651ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.m */, + A96862661ACCF13300DDAA6B /* PSTGridLayoutInfo.h */, + A96862671ACCF13300DDAA6B /* PSTGridLayoutInfo.m */, + A96862681ACCF13300DDAA6B /* PSTGridLayoutItem.h */, + A96862691ACCF13300DDAA6B /* PSTGridLayoutItem.m */, + A968626A1ACCF13300DDAA6B /* PSTGridLayoutRow.h */, + A968626B1ACCF13300DDAA6B /* PSTGridLayoutRow.m */, + A968626C1ACCF13300DDAA6B /* PSTGridLayoutSection.h */, + A968626D1ACCF13300DDAA6B /* PSTGridLayoutSection.m */, + ); + path = PSTCollectionView; + sourceTree = ""; + }; A97559AE1ACBC615004ADA42 /* Note */ = { isa = PBXGroup; children = ( @@ -512,6 +682,9 @@ A97C54D91AC9014D0038818A /* Vender */ = { isa = PBXGroup; children = ( + A96862511ACCF13300DDAA6B /* PSTCollectionView */, + A968624D1ACCF12300DDAA6B /* DACircularProgress */, + A96862291ACCF0B400DDAA6B /* MWPhotoBrowser */, A97559B41ACBD99E004ADA42 /* UIPlaceHolderTextView */, A98F98461ACA29B5007C4594 /* UMSocial_Sdk_Extra_Frameworks */, A9B4E39B1AC9908E00A1DBDF /* UMAnalytics_Sdk_3.4.6 */, @@ -544,6 +717,8 @@ A97C54E21AC91FD70038818A /* Resource */ = { isa = PBXGroup; children = ( + A968627D1ACCF46E00DDAA6B /* cellmorebtnclickN@2x.png */, + A968627B1ACCF3D200DDAA6B /* cellmorebtnnormalN@2x.png */, A9617A561ACC2EBC0024AE4A /* mine-setting-icon-click@2x.png */, A9617A571ACC2EBC0024AE4A /* mine-setting-icon@2x.png */, A97559C61ACBF0BC004ADA42 /* btn_bad_clicked@2x.png */, @@ -803,12 +978,14 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + A968624B1ACCF0B400DDAA6B /* MWPhotoBrowser.bundle in Resources */, A93442001ACA919F00A6B233 /* tabbarVoiceClick@2x.png in Resources */, A97C55001AC933AD0038818A /* UMSCommentDetailController.xib in Resources */, A93441F21ACA916D00A6B233 /* tabbarQuotationClick@2x.png in Resources */, A93442031ACA981D00A6B233 /* Default-568h@2x.png in Resources */, A9FAD4321AC923FC007ADC10 /* MyViewController.xib in Resources */, A93441FF1ACA919F00A6B233 /* tabbarVoice@2x.png in Resources */, + A968627E1ACCF46E00DDAA6B /* cellmorebtnclickN@2x.png in Resources */, A93441FA1ACA919500A6B233 /* tabbarQuotation-dark@2x.png in Resources */, A97559D01ACBF0BC004ADA42 /* btn_share_clicked@2x.png in Resources */, A955109B1AC39E6A0006D16F /* Main.storyboard in Resources */, @@ -819,6 +996,7 @@ A97559CF1ACBF0BC004ADA42 /* btn_good@2x.png in Resources */, A97559CC1ACBF0BC004ADA42 /* btn_bad_clicked@2x.png in Resources */, A97DBE461ACAE7B500705682 /* iconWeixin@2x.png in Resources */, + A96862421ACCF0B400DDAA6B /* LICENCE.txt in Resources */, A97C55071AC933AD0038818A /* UMSShareListController.xib in Resources */, A93441EE1ACA8C8F00A6B233 /* defaultUserIcon@2x.png in Resources */, A97559AC1ACB9DF0004ADA42 /* navigationButtonRefresh@2x.png in Resources */, @@ -827,6 +1005,7 @@ A97C55041AC933AD0038818A /* UMShareEditViewControlleriPad.xib in Resources */, A98F98541ACA29B5007C4594 /* TencentOpenApi_IOS_Bundle.bundle in Resources */, A9617A591ACC2EBC0024AE4A /* mine-setting-icon@2x.png in Resources */, + A968627C1ACCF3D200DDAA6B /* cellmorebtnnormalN@2x.png in Resources */, A95510A01AC39E6A0006D16F /* LaunchScreen.xib in Resources */, A93442041ACA981D00A6B233 /* Default@2x.png in Resources */, A97DBE401ACAE29E00705682 /* Icon@2x.png in Resources */, @@ -917,30 +1096,53 @@ A97559A01ACB88FE004ADA42 /* AWordDefault.m in Sources */, A97C54D31AC8F10F0038818A /* XiaoYuAPIClient.m in Sources */, A97559C41ACBEE99004ADA42 /* NoteTableViewCell.m in Sources */, + A96862481ACCF0B400DDAA6B /* MWTapDetectingImageView.m in Sources */, A9FAD4311AC923FC007ADC10 /* MyViewController.m in Sources */, A97559BF1ACBE6C6004ADA42 /* NotePublishViewModel.m in Sources */, + A96862781ACCF13300DDAA6B /* PSTGridLayoutItem.m in Sources */, A97559B21ACBC683004ADA42 /* NotePublishViewController.m in Sources */, A97C54DD1AC901980038818A /* MBProgressHUD+Util.m in Sources */, + A96862721ACCF13300DDAA6B /* PSTCollectionViewData.m in Sources */, A97DBE331ACAE10800705682 /* LoginViewController.m in Sources */, A97559A31ACB8CE0004ADA42 /* AWordUser.m in Sources */, A95510981AC39E6A0006D16F /* ViewController.m in Sources */, A98F986B1ACA2FA9007C4594 /* BaseRefreshViewController.m in Sources */, + A96862471ACCF0B400DDAA6B /* MWPhotoBrowser.m in Sources */, A9617A541ACC27860024AE4A /* SetUpViewController.m in Sources */, A97C54D21AC8F10F0038818A /* AFgzipResponseSerializer.m in Sources */, A9FAD4221AC922A5007ADC10 /* MainViewController.m in Sources */, + A96862761ACCF13300DDAA6B /* PSTCollectionViewUpdateItem.m in Sources */, + A968626E1ACCF13300DDAA6B /* NSIndexPath+PSTCollectionViewAdditions.m in Sources */, A9FAD42C1AC923E2007ADC10 /* MessageViewController.m in Sources */, + A968627A1ACCF13300DDAA6B /* PSTGridLayoutSection.m in Sources */, + A96862771ACCF13300DDAA6B /* PSTGridLayoutInfo.m in Sources */, + A96862751ACCF13300DDAA6B /* PSTCollectionViewLayout.m in Sources */, + A96862791ACCF13300DDAA6B /* PSTGridLayoutRow.m in Sources */, A97C54CD1AC8F10F0038818A /* BaseViewModel.m in Sources */, A9617A4F1ACC0D0F0024AE4A /* NoteViewModel.m in Sources */, + A96862461ACCF0B400DDAA6B /* MWPhoto.m in Sources */, + A968624A1ACCF0B400DDAA6B /* MWZoomingScrollView.m in Sources */, A97C54CF1AC8F10F0038818A /* NSString+HXAddtions.m in Sources */, + A96862501ACCF12300DDAA6B /* DACircularProgressView.m in Sources */, A95510951AC39E6A0006D16F /* AppDelegate.m in Sources */, A97C54D11AC8F10F0038818A /* RequireEngine.m in Sources */, + A96862731ACCF13300DDAA6B /* PSTCollectionViewFlowLayout.m in Sources */, + A96862441ACCF0B400DDAA6B /* MWGridCell.m in Sources */, + A96862741ACCF13300DDAA6B /* PSTCollectionViewItemKey.m in Sources */, + A96862451ACCF0B400DDAA6B /* MWGridViewController.m in Sources */, A97C54D01AC8F10F0038818A /* PropertyEntity.m in Sources */, A93441DE1ACA311700A6B233 /* Ash_UIUtil.m in Sources */, + A968624C1ACCF0B400DDAA6B /* README.md in Sources */, + A96862701ACCF13300DDAA6B /* PSTCollectionViewCell.m in Sources */, A97559B71ACBD99E004ADA42 /* UIPlaceHolderTextView.m in Sources */, A97C54D41AC8F10F0038818A /* XMFishBaseCode.m in Sources */, A97C54E11AC91DA10038818A /* CommonUtil.m in Sources */, + A96862491ACCF0B400DDAA6B /* MWTapDetectingView.m in Sources */, + A968626F1ACCF13300DDAA6B /* PSTCollectionView.m in Sources */, A9FAD4351AC925AC007ADC10 /* LoginViewModel.m in Sources */, A95510921AC39E6A0006D16F /* main.m in Sources */, + A96862711ACCF13300DDAA6B /* PSTCollectionViewController.m in Sources */, + A96862431ACCF0B400DDAA6B /* MWCaptionView.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Ash_AWord.xcworkspace/xcshareddata/Ash_AWord.xccheckout b/Ash_AWord.xcworkspace/xcshareddata/Ash_AWord.xccheckout index 5431d00..0b6403d 100644 --- a/Ash_AWord.xcworkspace/xcshareddata/Ash_AWord.xccheckout +++ b/Ash_AWord.xcworkspace/xcshareddata/Ash_AWord.xccheckout @@ -10,14 +10,14 @@ Ash_AWord IDESourceControlProjectOriginsDictionary - C2124BD0C46D10FF81834A1B3449A80D6B860D76 + B459B20E6BFCBAF9E5514A0B814271AD85A6C13B https://github.com/wu736139669/Ash_First.git IDESourceControlProjectPath Ash_AWord.xcworkspace IDESourceControlProjectRelativeInstallPathDictionary - C2124BD0C46D10FF81834A1B3449A80D6B860D76 + B459B20E6BFCBAF9E5514A0B814271AD85A6C13B .. IDESourceControlProjectURL @@ -25,14 +25,14 @@ IDESourceControlProjectVersion 111 IDESourceControlProjectWCCIdentifier - C2124BD0C46D10FF81834A1B3449A80D6B860D76 + B459B20E6BFCBAF9E5514A0B814271AD85A6C13B IDESourceControlProjectWCConfigurations IDESourceControlRepositoryExtensionIdentifierKey public.vcs.git IDESourceControlWCCIdentifierKey - C2124BD0C46D10FF81834A1B3449A80D6B860D76 + B459B20E6BFCBAF9E5514A0B814271AD85A6C13B IDESourceControlWCCName Ash_AWord diff --git a/Ash_AWord.xcworkspace/xcuserdata/xmfish.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/Ash_AWord.xcworkspace/xcuserdata/xmfish.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 6bf2b90..ebd7af2 100644 --- a/Ash_AWord.xcworkspace/xcuserdata/xmfish.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/Ash_AWord.xcworkspace/xcuserdata/xmfish.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -307,5 +307,37 @@ landmarkType = "5"> + + + + + + + + diff --git a/Ash_AWord/Info.plist b/Ash_AWord/Info.plist index 1004acd..578d637 100644 --- a/Ash_AWord/Info.plist +++ b/Ash_AWord/Info.plist @@ -4,29 +4,27 @@ CFBundleDevelopmentRegion en + CFBundleDisplayName + OneWord CFBundleExecutable $(EXECUTABLE_NAME) + CFBundleIconFiles + + Icon@2x + Icon + CFBundleIdentifier ash.$(PRODUCT_NAME:rfc1034identifier) CFBundleInfoDictionaryVersion 6.0 CFBundleName $(PRODUCT_NAME) - CFBundleDisplayName - OneWord CFBundlePackageType APPL CFBundleShortVersionString 1.0 CFBundleSignature ???? - CFBundleVersion - 1 - CFBundleIconFiles - - Icon@2x - Icon - CFBundleURLTypes @@ -54,6 +52,8 @@ + CFBundleVersion + 1 LSRequiresIPhoneOS UILaunchStoryboardName diff --git a/Ash_AWord/Resource/Icon.png b/Ash_AWord/Resource/Icon.png index 83106e820c243c6f59e51fefcafb9b99413afec3..abded57ce404985ae73cab17e7a9cad1a3061c44 100644 GIT binary patch literal 15840 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%0AanTJfd&EsjPska4MnIJF$J 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 literal 0 HcmV?d00001 diff --git a/Ash_AWord/Resource/cellmorebtnnormalN@2x.png b/Ash_AWord/Resource/cellmorebtnnormalN@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..72fdfd61ebf8cacc8ce0c9e5169eed5d5034b845 GIT binary patch literal 1394 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%0AanTJfd&EsjPska4MnIJF$J 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

*GE5^vujru`_CN5*Qp$SxAgzth!%glaUff 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 O0000 -#if TARGET_IPHONE_SIMULATOR #import -#endif -#import @interface PSTCollectionViewLayout (Internal) @property (nonatomic, unsafe_unretained) PSTCollectionView *collectionView; @@ -114,7 +111,7 @@ CGFloat PSTSimulatorAnimationDragCoefficient(void); unsigned int doneFirstLayout : 1; }_collectionViewFlags; CGPoint _lastLayoutOffset; - char filler[232]; // [HACK] Our class needs to be larger than Apple's class for the superclass change to work. + char filler[200]; // [HACK] Our class needs to be larger than Apple's class for the superclass change to work. } @property (nonatomic, strong) PSTCollectionViewData *collectionViewData; @property (nonatomic, strong, readonly) PSTCollectionViewExt *extVars; @@ -275,10 +272,8 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { - (void)setFrame:(CGRect)frame { if (!CGRectEqualToRect(frame, self.frame)) { - CGRect bounds = (CGRect){.origin=self.contentOffset, .size=frame.size}; - BOOL shouldInvalidate = [self.collectionViewLayout shouldInvalidateLayoutForBoundsChange:bounds]; [super setFrame:frame]; - if (shouldInvalidate) { + if ([self.collectionViewLayout shouldInvalidateLayoutForBoundsChange:self.bounds]) { [self invalidateLayout]; _collectionViewFlags.fadeCellsForBoundsChange = YES; } @@ -287,9 +282,8 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { - (void)setBounds:(CGRect)bounds { if (!CGRectEqualToRect(bounds, self.bounds)) { - BOOL shouldInvalidate = [self.collectionViewLayout shouldInvalidateLayoutForBoundsChange:bounds]; [super setBounds:bounds]; - if (shouldInvalidate) { + if ([self.collectionViewLayout shouldInvalidateLayoutForBoundsChange:bounds]) { [self invalidateLayout]; _collectionViewFlags.fadeCellsForBoundsChange = YES; } @@ -617,8 +611,18 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } - (NSIndexPath *)indexPathForItemAtPoint:(CGPoint)point { - PSTCollectionViewLayoutAttributes *attributes = [[self.collectionViewLayout layoutAttributesForElementsInRect:CGRectMake(point.x, point.y, 1, 1)] lastObject]; - return attributes.indexPath; + __block NSIndexPath *indexPath = nil; + [_allVisibleViewsDict enumerateKeysAndObjectsWithOptions:kNilOptions usingBlock:^(id key, id obj, BOOL *stop) { + PSTCollectionViewItemKey *itemKey = (PSTCollectionViewItemKey *)key; + if (itemKey.type == PSTCollectionViewItemTypeCell) { + PSTCollectionViewCell *cell = (PSTCollectionViewCell *)obj; + if (CGRectContainsPoint(cell.frame, point) && cell.userInteractionEnabled) { + indexPath = itemKey.indexPath; + *stop = YES; + } + } + }]; + return indexPath; } - (NSIndexPath *)indexPathForCell:(PSTCollectionViewCell *)cell { @@ -984,8 +988,8 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { // First delete all items NSMutableArray *paths = [NSMutableArray new]; [sections enumerateIndexesUsingBlock:^(NSUInteger idx, BOOL *stop) { - for (int i = 0; i < [self numberOfItemsInSection:(NSInteger)idx]; ++i) { - [paths addObject:[NSIndexPath indexPathForItem:i inSection:(NSInteger)idx]]; + for (int i = 0; i < [self numberOfItemsInSection:idx]; ++i) { + [paths addObject:[NSIndexPath indexPathForItem:i inSection:idx]]; } }]; [self deleteItemsAtIndexPaths:paths]; @@ -1082,9 +1086,6 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } else { layout.collectionView = self; - - _layout.collectionView = nil; - _layout = layout; _collectionViewData = [[PSTCollectionViewData alloc] initWithCollectionView:self layout:layout]; [_collectionViewData prepareToLoadData]; @@ -1285,6 +1286,9 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { applyNewLayoutBlock(); freeUnusedViews(); } + + _layout.collectionView = nil; + _layout = layout; } } @@ -1300,22 +1304,22 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { self.extVars.collectionViewDelegate = delegate; // Managing the Selected Cells - _collectionViewFlags.delegateShouldSelectItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:shouldSelectItemAtIndexPath:)]; - _collectionViewFlags.delegateDidSelectItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didSelectItemAtIndexPath:)]; - _collectionViewFlags.delegateShouldDeselectItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:shouldDeselectItemAtIndexPath:)]; - _collectionViewFlags.delegateDidDeselectItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didDeselectItemAtIndexPath:)]; + _collectionViewFlags.delegateShouldSelectItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:shouldSelectItemAtIndexPath:)]; + _collectionViewFlags.delegateDidSelectItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:didSelectItemAtIndexPath:)]; + _collectionViewFlags.delegateShouldDeselectItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:shouldDeselectItemAtIndexPath:)]; + _collectionViewFlags.delegateDidDeselectItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:didDeselectItemAtIndexPath:)]; // Managing Cell Highlighting - _collectionViewFlags.delegateShouldHighlightItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:shouldHighlightItemAtIndexPath:)]; - _collectionViewFlags.delegateDidHighlightItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didHighlightItemAtIndexPath:)]; - _collectionViewFlags.delegateDidUnhighlightItemAtIndexPath = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didUnhighlightItemAtIndexPath:)]; + _collectionViewFlags.delegateShouldHighlightItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:shouldHighlightItemAtIndexPath:)]; + _collectionViewFlags.delegateDidHighlightItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:didHighlightItemAtIndexPath:)]; + _collectionViewFlags.delegateDidUnhighlightItemAtIndexPath = [self.delegate respondsToSelector:@selector(collectionView:didUnhighlightItemAtIndexPath:)]; // Tracking the Removal of Views - _collectionViewFlags.delegateDidEndDisplayingCell = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didEndDisplayingCell:forItemAtIndexPath:)]; - _collectionViewFlags.delegateDidEndDisplayingSupplementaryView = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:didEndDisplayingSupplementaryView:forElementOfKind:atIndexPath:)]; + _collectionViewFlags.delegateDidEndDisplayingCell = [self.delegate respondsToSelector:@selector(collectionView:didEndDisplayingCell:forItemAtIndexPath:)]; + _collectionViewFlags.delegateDidEndDisplayingSupplementaryView = [self.delegate respondsToSelector:@selector(collectionView:didEndDisplayingSupplementaryView:forElementOfKind:atIndexPath:)]; // Managing Actions for Cells - _collectionViewFlags.delegateSupportsMenus = (unsigned int)[self.delegate respondsToSelector:@selector(collectionView:shouldShowMenuForItemAtIndexPath:)]; + _collectionViewFlags.delegateSupportsMenus = [self.delegate respondsToSelector:@selector(collectionView:shouldShowMenuForItemAtIndexPath:)]; // These aren't present in the flags which is a little strange. Not adding them because that will mess with byte alignment which will affect cross compatibility. // The flag names are guesses and are there for documentation purposes. @@ -1329,10 +1333,10 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { _dataSource = dataSource; // Getting Item and Section Metrics - _collectionViewFlags.dataSourceNumberOfSections = (unsigned int)[_dataSource respondsToSelector:@selector(numberOfSectionsInCollectionView:)]; + _collectionViewFlags.dataSourceNumberOfSections = [_dataSource respondsToSelector:@selector(numberOfSectionsInCollectionView:)]; // Getting Views for Items - _collectionViewFlags.dataSourceViewForSupplementaryElement = (unsigned int)[_dataSource respondsToSelector:@selector(collectionView:viewForSupplementaryElementOfKind:atIndexPath:)]; + _collectionViewFlags.dataSourceViewForSupplementaryElement = [_dataSource respondsToSelector:@selector(collectionView:viewForSupplementaryElementOfKind:atIndexPath:)]; } } @@ -1341,7 +1345,7 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } - (void)setAllowsSelection:(BOOL)allowsSelection { - _collectionViewFlags.allowsSelection = (unsigned int)allowsSelection; + _collectionViewFlags.allowsSelection = allowsSelection; } - (BOOL)allowsMultipleSelection { @@ -1349,7 +1353,7 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } - (void)setAllowsMultipleSelection:(BOOL)allowsMultipleSelection { - _collectionViewFlags.allowsMultipleSelection = (unsigned int)allowsMultipleSelection; + _collectionViewFlags.allowsMultipleSelection = allowsMultipleSelection; // Deselect all objects if allows multiple selection is false if (!allowsMultipleSelection && _indexPathsForSelectedItems.count) { @@ -1723,10 +1727,10 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { NSArray *oldToNewIndexMap = _update[@"oldToNewIndexMap"]; NSUInteger newGlobalIndex = NSNotFound; if (NSNotFound != oldGlobalIndex && oldGlobalIndex < oldToNewIndexMap.count) { - newGlobalIndex = [oldToNewIndexMap[oldGlobalIndex] unsignedIntegerValue]; + newGlobalIndex = [oldToNewIndexMap[oldGlobalIndex] intValue]; } - NSIndexPath *newIndexPath = newGlobalIndex == NSNotFound ? nil : [_update[@"newModel"] indexPathForItemAtGlobalIndex:(int)newGlobalIndex]; - NSIndexPath *oldIndexPath = oldGlobalIndex == NSNotFound ? nil : [_update[@"oldModel"] indexPathForItemAtGlobalIndex:(int)oldGlobalIndex]; + NSIndexPath *newIndexPath = newGlobalIndex == NSNotFound ? nil : [_update[@"newModel"] indexPathForItemAtGlobalIndex:newGlobalIndex]; + NSIndexPath *oldIndexPath = oldGlobalIndex == NSNotFound ? nil : [_update[@"oldModel"] indexPathForItemAtGlobalIndex:oldGlobalIndex]; if (newIndexPath) { PSTCollectionViewLayoutAttributes *startAttrs = nil; @@ -1779,9 +1783,6 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } } - //In here I think it doesn't need the animation but the transaction, it would cause some issue of display. - //I resolve the bug when user insert the new sections, the cell will display with a blink animation at the first operation. - //But I don't know why the next operation wouldn't reproduction in the pre version. _allVisibleViewsDict = newAllVisibleView; for (NSDictionary *animation in animations) { @@ -1790,41 +1791,58 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { [view applyLayoutAttributes:attr]; }; - _collectionViewFlags.updatingLayout = YES; - - [CATransaction begin]; - [CATransaction setAnimationDuration:0]; - [CATransaction setCompletionBlock:^{ - // Iterate through all the views that we are going to remove. - [viewsToRemove enumerateKeysAndObjectsUsingBlock:^(NSNumber *keyObj, NSArray *views, BOOL *stop) { - PSTCollectionViewItemType type = [keyObj unsignedIntegerValue]; - for (PSTCollectionReusableView *view in views) { - if (type == PSTCollectionViewItemTypeCell) { - [self reuseCell:(PSTCollectionViewCell *)view]; - } else if (type == PSTCollectionViewItemTypeSupplementaryView) { - [self reuseSupplementaryView:view]; - } else if (type == PSTCollectionViewItemTypeDecorationView) { - [self reuseDecorationView:view]; - } - } - }]; - - _collectionViewFlags.updatingLayout = NO; - - //In here I think when the block is called, the flag is YES. So the _updateCopletionHandler's paramer is YES. - if (_updateCompletionHandler) { - _updateCompletionHandler(YES); - _updateCompletionHandler = nil; - } - }]; - - for (NSDictionary *animation in animations) { - PSTCollectionReusableView *view = animation[@"view"]; - PSTCollectionViewLayoutAttributes *attrs = animation[@"newLayoutInfos"]; - [view applyLayoutAttributes:attrs]; - } - [CATransaction commit]; - + [UIView animateWithDuration:.3 animations:^{ + _collectionViewFlags.updatingLayout = YES; + + [CATransaction begin]; + [CATransaction setAnimationDuration:.3]; + + // You might wonder why we use CATransaction to handle animation completion + // here instead of using the completion: parameter of UIView's animateWithDuration:. + // The problem is that animateWithDuration: calls this completion block + // when other animations are finished. This means that the block is called + // after the user releases his finger and the scroll view has finished scrolling. + // This can be a large delay, which causes the layout of the cells to be greatly + // delayed, and thus, be unrendered. I assume that was done for performance + // purposes but it completely breaks our layout logic here. + // To get the completion block called immediately after the animation actually + // finishes, I switched to use CATransaction. + // The only thing I'm not sure about - _completed_ flag. I don't know where to get it + // in terms of CATransaction's API, so I use animateWithDuration's completion block + // to call _updateCompletionHandler with that flag. + // Ideally, _updateCompletionHandler should be called along with the other logic in + // CATransaction's completionHandler but I simply don't know where to get that flag. + [CATransaction setCompletionBlock:^{ + // Iterate through all the views that we are going to remove. + [viewsToRemove enumerateKeysAndObjectsUsingBlock:^(NSNumber *keyObj, NSArray *views, BOOL *stop) { + PSTCollectionViewItemType type = [keyObj unsignedIntegerValue]; + for (PSTCollectionReusableView *view in views) { + if (type == PSTCollectionViewItemTypeCell) { + [self reuseCell:(PSTCollectionViewCell *)view]; + }else if (type == PSTCollectionViewItemTypeSupplementaryView) { + [self reuseSupplementaryView:view]; + }else if (type == PSTCollectionViewItemTypeDecorationView) { + [self reuseDecorationView:view]; + } + } + }]; + _collectionViewFlags.updatingLayout = NO; + }]; + + for (NSDictionary *animation in animations) { + PSTCollectionReusableView *view = animation[@"view"]; + PSTCollectionViewLayoutAttributes *attrs = animation[@"newLayoutInfos"]; + [view applyLayoutAttributes:attrs]; + } + [CATransaction commit]; + } completion:^(BOOL finished) { + + if (_updateCompletionHandler) { + _updateCompletionHandler(finished); + _updateCompletionHandler = nil; + } + }]; + [_layout finalizeCollectionViewUpdates]; } @@ -2013,12 +2031,12 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { #if !defined NS_BLOCK_ASSERTIONS for (NSNumber *sectionKey in [operations keyEnumerator]) { - NSInteger section = [sectionKey integerValue]; + NSInteger section = [sectionKey intValue]; - NSInteger insertedCount = [operations[sectionKey][@"inserted"] integerValue]; - NSInteger deletedCount = [operations[sectionKey][@"deleted"] integerValue]; - NSInteger movedInCount = [operations[sectionKey][@"movedIn"] integerValue]; - NSInteger movedOutCount = [operations[sectionKey][@"movedOut"] integerValue]; + NSInteger insertedCount = [operations[sectionKey][@"inserted"] intValue]; + NSInteger deletedCount = [operations[sectionKey][@"deleted"] intValue]; + NSInteger movedInCount = [operations[sectionKey][@"movedIn"] intValue]; + NSInteger movedOutCount = [operations[sectionKey][@"movedOut"] intValue]; NSAssert([oldCollectionViewData numberOfItemsInSection:section] + insertedCount - deletedCount + movedInCount - movedOutCount == [_collectionViewData numberOfItemsInSection:section], @@ -2059,33 +2077,33 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { // section updates are ignored anyway in animation code. If not commented, mixing rows and section deletion causes crash in else below // [newModel removeObjectAtIndex:updateItem.indexPathBeforeUpdate.section]; }else { - [(NSMutableArray *)newModel[(NSUInteger)updateItem.indexPathBeforeUpdate.section] - removeObjectAtIndex:(NSUInteger)updateItem.indexPathBeforeUpdate.item]; + [(NSMutableArray *)newModel[updateItem.indexPathBeforeUpdate.section] + removeObjectAtIndex:updateItem.indexPathBeforeUpdate.item]; } } break; case PSTCollectionUpdateActionInsert: { if (updateItem.isSectionOperation) { [newModel insertObject:[[NSMutableArray alloc] init] - atIndex:(NSUInteger)updateItem.indexPathAfterUpdate.section]; + atIndex:updateItem.indexPathAfterUpdate.section]; }else { - [(NSMutableArray *)newModel[(NSUInteger)updateItem.indexPathAfterUpdate.section] + [(NSMutableArray *)newModel[updateItem.indexPathAfterUpdate.section] insertObject:@(NSNotFound) - atIndex:(NSUInteger)updateItem.indexPathAfterUpdate.item]; + atIndex:updateItem.indexPathAfterUpdate.item]; } } break; case PSTCollectionUpdateActionMove: { if (updateItem.isSectionOperation) { - id section = newModel[(NSUInteger)updateItem.indexPathBeforeUpdate.section]; - [newModel insertObject:section atIndex:(NSUInteger)updateItem.indexPathAfterUpdate.section]; + id section = newModel[updateItem.indexPathBeforeUpdate.section]; + [newModel insertObject:section atIndex:updateItem.indexPathAfterUpdate.section]; } else { id object = @([oldCollectionViewData globalIndexForItemAtIndexPath:updateItem.indexPathBeforeUpdate]); - [newModel[(NSUInteger)updateItem.indexPathBeforeUpdate.section] removeObject:object]; - [newModel[(NSUInteger)updateItem.indexPathAfterUpdate.section] insertObject:object - atIndex:(NSUInteger)updateItem.indexPathAfterUpdate.item]; + [newModel[updateItem.indexPathBeforeUpdate.section] removeObject:object]; + [newModel[updateItem.indexPathAfterUpdate.section] insertObject:object + atIndex:updateItem.indexPathAfterUpdate.item]; } } break; @@ -2093,8 +2111,8 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { } } - NSMutableArray *oldToNewMap = [NSMutableArray arrayWithCapacity:(NSUInteger)[oldCollectionViewData numberOfItems]]; - NSMutableArray *newToOldMap = [NSMutableArray arrayWithCapacity:(NSUInteger)[_collectionViewData numberOfItems]]; + NSMutableArray *oldToNewMap = [NSMutableArray arrayWithCapacity:[oldCollectionViewData numberOfItems]]; + NSMutableArray *newToOldMap = [NSMutableArray arrayWithCapacity:[_collectionViewData numberOfItems]]; for (NSInteger i = 0; i < [oldCollectionViewData numberOfItems]; i++) [oldToNewMap addObject:@(NSNotFound)]; @@ -2105,9 +2123,9 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { for (NSUInteger i = 0; i < newModel.count; i++) { NSMutableArray *section = newModel[i]; for (NSUInteger j = 0; j < section.count; j++) { - NSUInteger newGlobalIndex = [_collectionViewData globalIndexForItemAtIndexPath:[NSIndexPath indexPathForItem:(NSInteger)j inSection:(NSInteger)i]]; + NSInteger newGlobalIndex = [_collectionViewData globalIndexForItemAtIndexPath:[NSIndexPath indexPathForItem:j inSection:i]]; if ([section[j] integerValue] != NSNotFound) - oldToNewMap[[section[j] unsignedIntegerValue]] = @(newGlobalIndex); + oldToNewMap[[section[j] intValue]] = @(newGlobalIndex); if (newGlobalIndex != NSNotFound) newToOldMap[newGlobalIndex] = section[j]; } @@ -2151,7 +2169,7 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { NSMutableArray *updateActions = [self arrayForUpdateAction:updateAction]; [sections enumerateIndexesUsingBlock:^(NSUInteger section, BOOL *stop) { - PSTCollectionViewUpdateItem *updateItem = [[PSTCollectionViewUpdateItem alloc] initWithAction:updateAction forIndexPath:[NSIndexPath indexPathForItem:NSNotFound inSection:(NSInteger)section]]; + PSTCollectionViewUpdateItem *updateItem = [[PSTCollectionViewUpdateItem alloc] initWithAction:updateAction forIndexPath:[NSIndexPath indexPathForItem:NSNotFound inSection:section]]; [updateActions addObject:updateItem]; }]; @@ -2208,50 +2226,31 @@ static void PSTCollectionViewCommonSetup(PSTCollectionView *_self) { @implementation PSUICollectionViewLayoutAttributes_ @end @implementation PSUICollectionViewController_ @end -static void PSTRegisterClasses() { - NSDictionary *map = @{ - @"UICollectionView": PSUICollectionView_.class, - @"UICollectionViewCell": PSUICollectionViewCell_.class, - @"UICollectionReusableView": PSUICollectionReusableView_.class, - @"UICollectionViewLayout": PSUICollectionViewLayout_.class, - @"UICollectionViewFlowLayout": PSUICollectionViewFlowLayout_.class, - @"UICollectionViewLayoutAttributes": PSUICollectionViewLayoutAttributes_.class, - @"UICollectionViewController": PSUICollectionViewController_.class - }; +static BOOL PSTRegisterClass(NSString *UIClassName, Class PSTClass) { + NSCParameterAssert(UIClassName && PSTClass); - // Ensure that superclass replacement is all-or-nothing for the PSUI*_ types. Either use exclusively - // UICollectionView*, or exclusively PSTCollectionView*. - __block BOOL canOverwrite = YES; - [map enumerateKeysAndObjectsUsingBlock:^(NSString* UIClassName, id PSTClass, BOOL *stop) { - Class UIClass = NSClassFromString(UIClassName); - if (UIClass) { - // Class size need to be the same for class_setSuperclass to work. - // If the UIKit class is smaller then our subclass, ivars won't clash, so there's no issue. - long sizeDifference = (long)class_getInstanceSize(UIClass) - class_getInstanceSize(PSTClass); - if (sizeDifference > 0) { - canOverwrite = NO; - NSLog(@"Warning! ivar size mismatch in %@ of %tu bytes - can't change the superclass.", PSTClass, sizeDifference); - } + Class UIClass = NSClassFromString(UIClassName); + if (UIClass) { + // Class size need to be the same for class_setSuperclass to work. + // If the UIKit class is smaller then our subclass, ivars won't clash, so there's no issue. + long sizeDifference = class_getInstanceSize(UIClass) - class_getInstanceSize(PSTClass); + if (sizeDifference > 0) { + NSLog(@"Warning! ivar size mismatch in %@ - can't change the superclass.", PSTClass); + return NO; } else { - canOverwrite = NO; - // We're most likely on iOS5, the requested UIKit class doesn't exist, so we create it dynamically. - if ((UIClass = objc_allocateClassPair(PSTClass, UIClassName.UTF8String, 0))) { - objc_registerClassPair(UIClass); - } - } - }]; - - if (canOverwrite) { - // All UICollectionView types were found and appropriately sized, so it is safe to replace the super-class. - [map enumerateKeysAndObjectsUsingBlock:^(NSString* UIClassName, id PSTClass, BOOL *stop) { - Class UIClass = NSClassFromString(UIClassName); #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" // class_setSuperclass is deprecated, but still exists and works on iOS6/7. class_setSuperclass(PSTClass, UIClass); #pragma clang diagnostic pop - }]; + } + } else { + // We're most likely on iOS5, the requested UIKit class doesn't exist, so we create it dynamically. + if ((UIClass = objc_allocateClassPair(PSTClass, UIClassName.UTF8String, 0))) { + objc_registerClassPair(UIClass); + } } + return YES; } // Create subclasses that pose as UICollectionView et al, if not available at runtime. @@ -2260,7 +2259,13 @@ __attribute__((constructor)) static void PSTCreateUICollectionViewClasses(void) @autoreleasepool { // Change superclass at runtime. This allows seamless switching from PST* to UI* at runtime. - PSTRegisterClasses(); + PSTRegisterClass(@"UICollectionView", PSUICollectionView_.class); + PSTRegisterClass(@"UICollectionViewCell", PSUICollectionViewCell_.class); + PSTRegisterClass(@"UICollectionReusableView", PSUICollectionReusableView_.class); + PSTRegisterClass(@"UICollectionViewLayout", PSUICollectionViewLayout_.class); + PSTRegisterClass(@"UICollectionViewFlowLayout", PSUICollectionViewFlowLayout_.class); + PSTRegisterClass(@"UICollectionViewLayoutAttributes", PSUICollectionViewLayoutAttributes_.class); + PSTRegisterClass(@"UICollectionViewController", PSUICollectionViewController_.class); // add PSUI classes at runtime to make Interface Builder sane // (IB doesn't allow adding the PSUICollectionView_ types but doesn't complain on unknown classes) diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCell.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCell.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCell.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCell.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCell.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCell.m similarity index 97% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCell.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCell.m index a81555e..db216ed 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCell.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCell.m @@ -76,7 +76,7 @@ } - (void)setInUpdateAnimation:(BOOL)inUpdateAnimation { - _reusableViewFlags.inUpdateAnimation = (unsigned int)inUpdateAnimation; + _reusableViewFlags.inUpdateAnimation = inUpdateAnimation; } @end @@ -149,14 +149,14 @@ // Selection highlights underlying contents - (void)setSelected:(BOOL)selected { - _collectionCellFlags.selected = (unsigned int)selected; + _collectionCellFlags.selected = selected; self.accessibilityTraits = selected ? UIAccessibilityTraitSelected : UIAccessibilityTraitNone; [self updateBackgroundView:selected]; } // Cell highlighting only highlights the cell itself - (void)setHighlighted:(BOOL)highlighted { - _collectionCellFlags.highlighted = (unsigned int)highlighted; + _collectionCellFlags.highlighted = highlighted; [self updateBackgroundView:highlighted]; } diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCommon.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCommon.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewCommon.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewCommon.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewController.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewController.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewController.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewController.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewController.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewController.m similarity index 99% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewController.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewController.m index 9000dc7..f3849fc 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewController.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewController.m @@ -123,7 +123,7 @@ #pragma mark - Properties - (void)setClearsSelectionOnViewWillAppear:(BOOL)clearsSelectionOnViewWillAppear { - _collectionViewControllerFlags.clearsSelectionOnViewWillAppear = (unsigned int)clearsSelectionOnViewWillAppear; + _collectionViewControllerFlags.clearsSelectionOnViewWillAppear = clearsSelectionOnViewWillAppear; } - (BOOL)clearsSelectionOnViewWillAppear { diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewData.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewData.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewData.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewData.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewData.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewData.m similarity index 96% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewData.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewData.m index 2892e42..54a920e 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewData.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewData.m @@ -171,7 +171,7 @@ } - (void)setLayoutIsPrepared:(BOOL)layoutIsPrepared { - _collectionViewDataFlags.layoutIsPrepared = (unsigned int)layoutIsPrepared; + _collectionViewDataFlags.layoutIsPrepared = layoutIsPrepared; } /////////////////////////////////////////////////////////////////////////////////////////// @@ -208,9 +208,9 @@ } // allocate space if (!_sectionItemCounts) { - _sectionItemCounts = malloc((size_t)_numSections * sizeof(NSInteger)); + _sectionItemCounts = malloc(_numSections * sizeof(NSInteger)); }else { - _sectionItemCounts = realloc(_sectionItemCounts, (size_t)_numSections * sizeof(NSInteger)); + _sectionItemCounts = realloc(_sectionItemCounts, _numSections * sizeof(NSInteger)); } // query cells per section diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.h similarity index 97% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.h index 7dc971b..043333d 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.h +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.h @@ -24,6 +24,7 @@ typedef NS_ENUM(NSInteger, PSTCollectionViewScrollDirection) { - (CGFloat)collectionView:(PSTCollectionView *)collectionView layout:(PSTCollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section; - (CGSize)collectionView:(PSTCollectionView *)collectionView layout:(PSTCollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section; - (CGSize)collectionView:(PSTCollectionView *)collectionView layout:(PSTCollectionViewLayout*)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section; +- (PSTCollectionViewLayoutAttributes *)layoutAttributesForSupplementaryViewOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath; @end diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.m similarity index 88% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.m index e34d002..0104340 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewFlowLayout.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewFlowLayout.m @@ -145,7 +145,7 @@ static char kPSTCachedItemRectsKey; normalizedHeaderFrame.origin.x += section.frame.origin.x; normalizedHeaderFrame.origin.y += section.frame.origin.y; if (!CGRectIsEmpty(normalizedHeaderFrame) && CGRectIntersectsRect(normalizedHeaderFrame, rect)) { - PSTCollectionViewLayoutAttributes *layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:PSTCollectionElementKindSectionHeader withIndexPath:[NSIndexPath indexPathForItem:0 inSection:(NSInteger)sectionIndex]]; + PSTCollectionViewLayoutAttributes *layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:PSTCollectionElementKindSectionHeader withIndexPath:[NSIndexPath indexPathForItem:0 inSection:sectionIndex]]; layoutAttributes.frame = normalizedHeaderFrame; [layoutAttributesArray addObject:layoutAttributes]; } @@ -155,13 +155,11 @@ static char kPSTCachedItemRectsKey; itemRects = [(section.rows)[0] itemRects]; if (itemRects) rectCache[@(sectionIndex)] = itemRects; } - + for (PSTGridLayoutRow *row in section.rows) { CGRect normalizedRowFrame = row.rowFrame; - normalizedRowFrame.origin.x += section.frame.origin.x; normalizedRowFrame.origin.y += section.frame.origin.y; - if (CGRectIntersectsRect(normalizedRowFrame, rect)) { // TODO be more fine-grained for items @@ -170,21 +168,16 @@ static char kPSTCachedItemRectsKey; NSUInteger sectionItemIndex; CGRect itemFrame; if (row.fixedItemSize) { - itemFrame = [itemRects[(NSUInteger)itemIndex] CGRectValue]; - sectionItemIndex = (NSUInteger)(row.index * section.itemsByRowCount + itemIndex); + itemFrame = [itemRects[itemIndex] CGRectValue]; + sectionItemIndex = row.index * section.itemsByRowCount + itemIndex; }else { - PSTGridLayoutItem *item = row.items[(NSUInteger)itemIndex]; + PSTGridLayoutItem *item = row.items[itemIndex]; sectionItemIndex = [section.items indexOfObjectIdenticalTo:item]; itemFrame = item.itemFrame; } - - CGRect normalisedItemFrame = CGRectMake(normalizedRowFrame.origin.x + itemFrame.origin.x, normalizedRowFrame.origin.y + itemFrame.origin.y, itemFrame.size.width, itemFrame.size.height); - - if (CGRectIntersectsRect(normalisedItemFrame, rect)) { - layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForCellWithIndexPath:[NSIndexPath indexPathForItem:(NSInteger)sectionItemIndex inSection:(NSInteger)sectionIndex]]; - layoutAttributes.frame = normalisedItemFrame; - [layoutAttributesArray addObject:layoutAttributes]; - } + layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForCellWithIndexPath:[NSIndexPath indexPathForItem:sectionItemIndex inSection:sectionIndex]]; + layoutAttributes.frame = CGRectMake(normalizedRowFrame.origin.x + itemFrame.origin.x, normalizedRowFrame.origin.y + itemFrame.origin.y, itemFrame.size.width, itemFrame.size.height); + [layoutAttributesArray addObject:layoutAttributes]; } } } @@ -193,7 +186,7 @@ static char kPSTCachedItemRectsKey; normalizedFooterFrame.origin.x += section.frame.origin.x; normalizedFooterFrame.origin.y += section.frame.origin.y; if (!CGRectIsEmpty(normalizedFooterFrame) && CGRectIntersectsRect(normalizedFooterFrame, rect)) { - PSTCollectionViewLayoutAttributes *layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:PSTCollectionElementKindSectionFooter withIndexPath:[NSIndexPath indexPathForItem:0 inSection:(NSInteger)sectionIndex]]; + PSTCollectionViewLayoutAttributes *layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:PSTCollectionElementKindSectionFooter withIndexPath:[NSIndexPath indexPathForItem:0 inSection:sectionIndex]]; layoutAttributes.frame = normalizedFooterFrame; [layoutAttributesArray addObject:layoutAttributes]; } @@ -205,17 +198,17 @@ static char kPSTCachedItemRectsKey; - (PSTCollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath { if (!_data) [self prepareLayout]; - PSTGridLayoutSection *section = _data.sections[(NSUInteger)indexPath.section]; + PSTGridLayoutSection *section = _data.sections[indexPath.section]; PSTGridLayoutRow *row = nil; CGRect itemFrame = CGRectZero; - if (section.fixedItemSize && section.itemsByRowCount > 0 && indexPath.item / section.itemsByRowCount < (NSInteger)section.rows.count) { - row = section.rows[(NSUInteger)(indexPath.item / section.itemsByRowCount)]; - NSUInteger itemIndex = (NSUInteger)(indexPath.item % section.itemsByRowCount); + if (section.fixedItemSize && indexPath.item / section.itemsByRowCount < (NSInteger)section.rows.count) { + row = section.rows[indexPath.item / section.itemsByRowCount]; + NSUInteger itemIndex = indexPath.item % section.itemsByRowCount; NSArray *itemRects = [row itemRects]; itemFrame = [itemRects[itemIndex] CGRectValue]; }else if (indexPath.item < (NSInteger)section.items.count) { - PSTGridLayoutItem *item = section.items[(NSUInteger)indexPath.item]; + PSTGridLayoutItem *item = section.items[indexPath.item]; row = item.rowObject; itemFrame = item.itemFrame; } @@ -234,7 +227,7 @@ static char kPSTCachedItemRectsKey; - (PSTCollectionViewLayoutAttributes *)layoutAttributesForSupplementaryViewOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath { if (!_data) [self prepareLayout]; - NSUInteger sectionIndex = (NSUInteger)indexPath.section; + NSUInteger sectionIndex = indexPath.section; PSTCollectionViewLayoutAttributes *layoutAttributes = nil; if (sectionIndex < _data.sections.count) { @@ -252,7 +245,7 @@ static char kPSTCachedItemRectsKey; normalizedFrame.origin.x += section.frame.origin.x; normalizedFrame.origin.y += section.frame.origin.y; - layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:kind withIndexPath:[NSIndexPath indexPathForItem:0 inSection:(NSInteger)sectionIndex]]; + layoutAttributes = [[self.class layoutAttributesClass] layoutAttributesForSupplementaryViewOfKind:kind withIndexPath:[NSIndexPath indexPathForItem:0 inSection:sectionIndex]]; layoutAttributes.frame = normalizedFrame; } } @@ -330,8 +323,8 @@ static char kPSTCachedItemRectsKey; BOOL implementsHeaderReferenceDelegate = [flowDataSource respondsToSelector:@selector(collectionView:layout:referenceSizeForHeaderInSection:)]; BOOL implementsFooterReferenceDelegate = [flowDataSource respondsToSelector:@selector(collectionView:layout:referenceSizeForFooterInSection:)]; - NSInteger numberOfSections = [self.collectionView numberOfSections]; - for (NSInteger section = 0; section < numberOfSections; section++) { + NSUInteger numberOfSections = [self.collectionView numberOfSections]; + for (NSUInteger section = 0; section < numberOfSections; section++) { PSTGridLayoutSection *layoutSection = [_data addSection]; layoutSection.verticalInterstice = _data.horizontal ? self.minimumInteritemSpacing : self.minimumLineSpacing; layoutSection.horizontalInterstice = !_data.horizontal ? self.minimumInteritemSpacing : self.minimumLineSpacing; @@ -376,12 +369,12 @@ static char kPSTCachedItemRectsKey; } layoutSection.footerDimension = _data.horizontal ? footerReferenceSize.width : footerReferenceSize.height; - NSInteger numberOfItems = [self.collectionView numberOfItemsInSection:section]; + NSUInteger numberOfItems = [self.collectionView numberOfItemsInSection:section]; // if delegate implements size delegate, query it for all items if (implementsSizeDelegate) { - for (NSInteger item = 0; item < numberOfItems; item++) { - NSIndexPath *indexPath = [NSIndexPath indexPathForItem:item inSection:(NSInteger)section]; + for (NSUInteger item = 0; item < numberOfItems; item++) { + NSIndexPath *indexPath = [NSIndexPath indexPathForItem:item inSection:section]; CGSize itemSize = implementsSizeDelegate ? [flowDataSource collectionView:self.collectionView layout:self sizeForItemAtIndexPath:indexPath] : self.itemSize; PSTGridLayoutItem *layoutItem = [layoutSection addItem]; @@ -406,11 +399,11 @@ static char kPSTCachedItemRectsKey; if (_data.horizontal) { sectionFrame.origin.x += contentSize.width; contentSize.width += section.frame.size.width + section.frame.origin.x; - contentSize.height = MAX(contentSize.height, sectionFrame.size.height + section.frame.origin.y + section.sectionMargins.top + section.sectionMargins.bottom); + contentSize.height = fmax(contentSize.height, sectionFrame.size.height + section.frame.origin.y + section.sectionMargins.top + section.sectionMargins.bottom); }else { sectionFrame.origin.y += contentSize.height; contentSize.height += sectionFrame.size.height + section.frame.origin.y; - contentSize.width = MAX(contentSize.width, sectionFrame.size.width + section.frame.origin.x + section.sectionMargins.left + section.sectionMargins.right); + contentSize.width = fmax(contentSize.width, sectionFrame.size.width + section.frame.origin.x + section.sectionMargins.left + section.sectionMargins.right); } section.frame = sectionFrame; } diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewItemKey.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewItemKey.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewItemKey.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewItemKey.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewItemKey.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewItemKey.m similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewItemKey.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewItemKey.m diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout+Internals.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout+Internals.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout+Internals.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout+Internals.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout.m similarity index 94% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout.m index 7cb5ead..4eb897a 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewLayout.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewLayout.m @@ -8,7 +8,6 @@ #import "PSTCollectionView.h" #import "PSTCollectionViewItemKey.h" #import "PSTCollectionViewData.h" - #import @interface PSTCollectionView () @@ -126,18 +125,14 @@ return self.representedElementCategory == PSTCollectionViewItemTypeCell; } -- (void) updateFrame { - _frame = (CGRect){{_center.x - _size.width / 2, _center.y - _size.height / 2}, _size}; -} - - (void)setSize:(CGSize)size { _size = size; - [self updateFrame]; + _frame = (CGRect){_frame.origin, _size}; } - (void)setCenter:(CGPoint)center { _center = center; - [self updateFrame]; + _frame = (CGRect){{_center.x - _frame.size.width / 2, _center.y - _frame.size.height / 2}, _frame.size}; } - (void)setFrame:(CGRect)frame { @@ -301,7 +296,7 @@ PSTCollectionViewLayoutAttributes *attr = [view.layoutAttributes copy]; if (attr) { if (attr.isCell) { - NSUInteger index = [update[@"oldModel"] globalIndexForItemAtIndexPath:[attr indexPath]]; + NSInteger index = [update[@"oldModel"] globalIndexForItemAtIndexPath:[attr indexPath]]; if (index != NSNotFound) { [attr setIndexPath:[attr indexPath]]; } @@ -316,9 +311,9 @@ for (PSTCollectionViewLayoutAttributes *attr in [collectionViewData layoutAttributesForElementsInRect:bounds]) { if (attr.isCell) { - NSInteger index = (NSInteger)[collectionViewData globalIndexForItemAtIndexPath:attr.indexPath]; + NSInteger index = [collectionViewData globalIndexForItemAtIndexPath:attr.indexPath]; - index = [update[@"newToOldIndexMap"][(NSUInteger)index] integerValue]; + index = [update[@"newToOldIndexMap"][index] intValue]; if (index != NSNotFound) { PSTCollectionViewLayoutAttributes *finalAttrs = [attr copy]; [finalAttrs setIndexPath:[update[@"oldModel"] indexPathForItemAtGlobalIndex:index]]; @@ -333,12 +328,12 @@ if ([updateItem isSectionOperation]) { if (action == PSTCollectionUpdateActionReload) { - [_deletedSectionsSet addIndex:(NSUInteger)[[updateItem indexPathBeforeUpdate] section]]; - [_insertedSectionsSet addIndex:(NSUInteger)[updateItem indexPathAfterUpdate].section]; + [_deletedSectionsSet addIndex:[[updateItem indexPathBeforeUpdate] section]]; + [_insertedSectionsSet addIndex:[updateItem indexPathAfterUpdate].section]; } else { NSMutableIndexSet *indexSet = action == PSTCollectionUpdateActionInsert ? _insertedSectionsSet : _deletedSectionsSet; - [indexSet addIndex:(NSUInteger)[updateItem indexPath].section]; + [indexSet addIndex:[updateItem indexPath].section]; } } else { @@ -370,7 +365,7 @@ - (PSTCollectionViewLayoutAttributes *)initialLayoutAttributesForAppearingItemAtIndexPath:(NSIndexPath *)itemIndexPath { PSTCollectionViewLayoutAttributes *attrs = _initialAnimationLayoutAttributesDict[[PSTCollectionViewItemKey collectionItemKeyForCellWithIndexPath:itemIndexPath]]; - if ([_insertedSectionsSet containsIndex:(NSUInteger)[itemIndexPath section]]) { + if ([_insertedSectionsSet containsIndex:[itemIndexPath section]]) { attrs = [attrs copy]; [attrs setAlpha:0]; } @@ -380,7 +375,7 @@ - (PSTCollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingItemAtIndexPath:(NSIndexPath *)itemIndexPath { PSTCollectionViewLayoutAttributes *attrs = _finalAnimationLayoutAttributesDict[[PSTCollectionViewItemKey collectionItemKeyForCellWithIndexPath:itemIndexPath]]; - if ([_deletedSectionsSet containsIndex:(NSUInteger)[itemIndexPath section]]) { + if ([_deletedSectionsSet containsIndex:[itemIndexPath section]]) { attrs = [attrs copy]; [attrs setAlpha:0]; } @@ -391,7 +386,7 @@ - (PSTCollectionViewLayoutAttributes *)initialLayoutAttributesForInsertedSupplementaryElementOfKind:(NSString *)elementKind atIndexPath:(NSIndexPath *)elementIndexPath { PSTCollectionViewLayoutAttributes *attrs = _initialAnimationLayoutAttributesDict[[PSTCollectionViewItemKey collectionItemKeyForCellWithIndexPath:elementIndexPath]]; - if ([_insertedSectionsSet containsIndex:(NSUInteger)[elementIndexPath section]]) { + if ([_insertedSectionsSet containsIndex:[elementIndexPath section]]) { attrs = [attrs copy]; [attrs setAlpha:0]; } diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewUpdateItem.h b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewUpdateItem.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewUpdateItem.h rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewUpdateItem.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewUpdateItem.m b/Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewUpdateItem.m similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTCollectionViewUpdateItem.m rename to Ash_AWord/Vender/PSTCollectionView/PSTCollectionViewUpdateItem.m diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutInfo.h b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutInfo.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutInfo.h rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutInfo.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutInfo.m b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutInfo.m similarity index 92% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutInfo.m rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutInfo.m index 6ab1aeb..c4c2746 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutInfo.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutInfo.m @@ -50,12 +50,12 @@ } - (CGRect)frameForItemAtIndexPath:(NSIndexPath *)indexPath { - PSTGridLayoutSection *section = self.sections[(NSUInteger)indexPath.section]; + PSTGridLayoutSection *section = self.sections[indexPath.section]; CGRect itemFrame; if (section.fixedItemSize) { itemFrame = (CGRect){.size=section.itemSize}; }else { - itemFrame = [section.items[(NSUInteger)indexPath.item] itemFrame]; + itemFrame = [section.items[indexPath.item] itemFrame]; } return itemFrame; } diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutItem.h b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutItem.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutItem.h rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutItem.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutItem.m b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutItem.m similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutItem.m rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutItem.m diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutRow.h b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutRow.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutRow.h rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutRow.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutRow.m b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutRow.m similarity index 96% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutRow.m rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutRow.m index 3d6ef65..ced4aab 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutRow.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutRow.m @@ -73,7 +73,7 @@ // UICollectionView is smart and lays out items like they would have been placed on a full row // So we need to calculate the "usedItemCount" with using the last item as a reference size. // This allows us to correctly justify-place the items in the grid. - NSInteger usedItemCount = 0; + NSUInteger usedItemCount = 0; NSInteger itemIndex = 0; CGFloat spacing = isHorizontal ? self.section.verticalInterstice : self.section.horizontalInterstice; // the last row should justify as if it is filled with more (invisible) items so that the whole @@ -82,7 +82,7 @@ CGFloat nextItemSize; // first we need to find the size (width/height) of the next item to fit if (!self.fixedItemSize) { - PSTGridLayoutItem *item = self.items[(NSUInteger)MIN(itemIndex, self.itemCount - 1)]; + PSTGridLayoutItem *item = self.items[MIN(itemIndex, self.itemCount - 1)]; nextItemSize = isHorizontal ? item.itemFrame.size.height : item.itemFrame.size.width; }else { nextItemSize = isHorizontal ? self.section.itemSize.height : self.section.itemSize.width; @@ -128,7 +128,7 @@ for (itemIndex = 0; itemIndex < self.itemCount; itemIndex++) { PSTGridLayoutItem *item = nil; if (!self.fixedItemSize) { - item = self.items[(NSUInteger)itemIndex]; + item = self.items[itemIndex]; itemFrame = [item itemFrame]; } // depending on horizontal/vertical for an item size (height/width), @@ -186,7 +186,7 @@ if (self.fixedItemSize) { return _itemCount; }else { - return (NSInteger)self.items.count; + return self.items.count; } } diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutSection.h b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutSection.h similarity index 100% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutSection.h rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutSection.h diff --git a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutSection.m b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutSection.m similarity index 96% rename from Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutSection.m rename to Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutSection.m index 42bef96..7fbdb6a 100644 --- a/Pods/PSTCollectionView/PSTCollectionView/PSTGridLayoutSection.m +++ b/Ash_AWord/Vender/PSTCollectionView/PSTGridLayoutSection.m @@ -85,7 +85,7 @@ BOOL finishCycle = itemIndex >= self.itemsCount; // TODO: fast path could even remove row creation and just calculate on the fly PSTGridLayoutItem *item = nil; - if (!finishCycle) item = self.fixedItemSize ? nil : self.items[(NSUInteger)itemIndex]; + if (!finishCycle) item = self.fixedItemSize ? nil : self.items[itemIndex]; CGSize itemSize = self.fixedItemSize ? self.itemSize : item.itemFrame.size; CGFloat itemDimension = self.layoutInfo.horizontal ? itemSize.height : itemSize.width; @@ -105,12 +105,12 @@ if (self.layoutInfo.horizontal) { row.rowFrame = CGRectMake(sectionSize.width, self.sectionMargins.top, row.rowSize.width, row.rowSize.height); - sectionSize.height = MAX(row.rowSize.height, sectionSize.height); + sectionSize.height = fmax(row.rowSize.height, sectionSize.height); sectionSize.width += row.rowSize.width + (finishCycle ? 0 : self.horizontalInterstice); }else { row.rowFrame = CGRectMake(self.sectionMargins.left, sectionSize.height, row.rowSize.width, row.rowSize.height); sectionSize.height += row.rowSize.height + (finishCycle ? 0 : self.verticalInterstice); - sectionSize.width = MAX(row.rowSize.width, sectionSize.width); + sectionSize.width = fmax(row.rowSize.width, sectionSize.width); } } // add new rows until the section is fully laid out @@ -204,7 +204,7 @@ } - (NSInteger)itemsCount { - return self.fixedItemSize ? _itemsCount : (NSInteger)self.items.count; + return self.fixedItemSize ? _itemsCount : self.items.count; } @end diff --git a/Ash_AWord/ViewControllers/Login/LoginViewController.xib b/Ash_AWord/ViewControllers/Login/LoginViewController.xib index 3d186f6..d90155b 100644 --- a/Ash_AWord/ViewControllers/Login/LoginViewController.xib +++ b/Ash_AWord/ViewControllers/Login/LoginViewController.xib @@ -93,7 +93,7 @@ - + diff --git a/Ash_AWord/ViewControllers/My/SetUpViewController.m b/Ash_AWord/ViewControllers/My/SetUpViewController.m index 63e89ab..eb1130f 100644 --- a/Ash_AWord/ViewControllers/My/SetUpViewController.m +++ b/Ash_AWord/ViewControllers/My/SetUpViewController.m @@ -58,7 +58,7 @@ [button setBackgroundColor:[UIColor redColor]]; button.layer.cornerRadius = 5.0; button.layer.masksToBounds = YES; - button.frame = CGRectMake(20, 25, kScreenWidth-40, 50); + button.frame = CGRectMake(20, 25, kScreenWidth-40, 40); [view addSubview:button]; return view; } @@ -67,7 +67,7 @@ static NSString* cellIdentifier = @"cell"; UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier]; if (!cell) { - cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier]; + cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellIdentifier]; } switch (indexPath.row) { case 0: diff --git a/Ash_AWord/Views/Note/NoteTableViewCell.h b/Ash_AWord/Views/Note/NoteTableViewCell.h index aae9ef5..5f21f23 100644 --- a/Ash_AWord/Views/Note/NoteTableViewCell.h +++ b/Ash_AWord/Views/Note/NoteTableViewCell.h @@ -20,7 +20,7 @@ @property (weak, nonatomic) IBOutlet UIButton *shareBtn; @property (weak, nonatomic) IBOutlet NSLayoutConstraint *contentHeight; -@property (weak, nonatomic) IBOutlet UIButton *imageBtnClick; +- (IBAction)imageBtnClick:(id)sender; - (IBAction)goodBtnClick:(id)sender; diff --git a/Ash_AWord/Views/Note/NoteTableViewCell.m b/Ash_AWord/Views/Note/NoteTableViewCell.m index 5b56fc0..6cc0266 100644 --- a/Ash_AWord/Views/Note/NoteTableViewCell.m +++ b/Ash_AWord/Views/Note/NoteTableViewCell.m @@ -8,12 +8,19 @@ #import "NoteTableViewCell.h" #import "NoteViewModel.h" +#import "AppDelegate.h" +#import "MWPhotoBrowser.h" +@interface NoteTableViewCell() +@end @implementation NoteTableViewCell - +{ + Text_Image* _text_image; +} - (void)awakeFromNib { // Initialization code _contentLabel.font = [UIFont appFontOfSize:14.0]; _contentTextView.font = [UIFont appFontOfSize:14.0]; + _contentTextView.scrollEnabled = NO; _timeLabel.font = [UIFont appFontOfSize:14.0]; _avatar.layer.cornerRadius = _avatar.frame.size.width/2; @@ -40,6 +47,7 @@ } -(void)setText_Image:(Text_Image *)text_image { + _text_image = text_image; CGSize imageSize = _contentImgView.frame.size; UIGraphicsBeginImageContextWithOptions(imageSize, 0, [UIScreen mainScreen].scale); [[UIColor colorWithWhite:0.6 alpha:0.5] set]; @@ -54,7 +62,7 @@ CGSize size = CGSizeMake(300*[Ash_UIUtil currentScreenSizeRate],MAXFLOAT); CGRect labelRect = [text_image.content boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName:font} context:nil]; - _contentHeight.constant = labelRect.size.height+10; + _contentHeight.constant = labelRect.size.height+25; _contentTextView.text = text_image.content; [_contentImgView sd_setImageWithURL:text_image.imageUrl placeholderImage:pressedColorImg]; @@ -75,4 +83,40 @@ } return imageHeight+labelRect.size.height+95; } +- (IBAction)imageBtnClick:(id)sender { + + MWPhotoBrowser *pBrowser = [[MWPhotoBrowser alloc]initWithDelegate:self]; + //是否显示分享按钮 + pBrowser.displayActionButton = YES; + //左右分页切换 + pBrowser.displayNavArrows = YES; + //是否显示选择按钮 + pBrowser.displaySelectionButtons = NO; + //是否显示条件控制控件 + pBrowser.alwaysShowControls = YES; + //是否全屏 + pBrowser.zoomPhotosToFill = YES; + + //允许使用网络查看所有图片 + pBrowser.enableGrid = YES; + //是否第一张 + pBrowser.startOnGrid = YES; + pBrowser.enableSwipeToDismiss = YES; + [pBrowser showNextPhotoAnimated:YES]; + [pBrowser showPreviousPhotoAnimated:YES]; + [pBrowser setCurrentPhotoIndex:0]; + [[AppDelegate visibleViewController].navigationController pushViewController:pBrowser animated:YES]; +} +#pragma mark - MWPhotoBrowserDelegate +-(NSUInteger)numberOfPhotosInPhotoBrowser:(MWPhotoBrowser *)photoBrowser +{ + return 1; +} + +-(id)photoBrowser:(MWPhotoBrowser *)photoBrowser photoAtIndex:(NSUInteger)index +{ + MWPhoto *photo = [[MWPhoto alloc]initWithURL:_text_image.imageUrl]; + return photo; +} + @end diff --git a/Ash_AWord/Views/Note/NoteTableViewCell.xib b/Ash_AWord/Views/Note/NoteTableViewCell.xib index 4ec7338..9e8279f 100644 --- a/Ash_AWord/Views/Note/NoteTableViewCell.xib +++ b/Ash_AWord/Views/Note/NoteTableViewCell.xib @@ -89,7 +89,7 @@ - +