Skip to content
Permalink
Browse files

Merge pull request #9 from jhrcook/edit-plant-info

Edit plant info
  • Loading branch information...
jhrcook committed Oct 1, 2019
2 parents f79c87a + d8a9de1 commit 42058c41ba7f9b3b294a9bf87ed9128a04c01c6f
Showing with 4,229 additions and 1,093 deletions.
  1. +403 −0 EditPlantLevelManager_notes.md
  2. +20 −4 PlantTracker/PlantTracker.xcodeproj/project.pbxproj
  3. +299 −0 PlantTracker/PlantTracker/Controllers/GeneralPlantInformationTableViewController.swift
  4. +6 −6 PlantTracker/PlantTracker/Controllers/ImageCollectionViewController.swift
  5. +27 −99 PlantTracker/PlantTracker/Controllers/LibraryDetailViewController.swift
  6. +66 −0 PlantTracker/PlantTracker/Controllers/LinksTableViewController.swift
  7. +56 −98 PlantTracker/PlantTracker/Controllers/PlantLibraryTableViewController.swift
  8. +0 −16 PlantTracker/PlantTracker/Controllers/PlantsDelegate.swift
  9. +276 −0 PlantTracker/PlantTracker/Models/EditPlantLevelManager.swift
  10. +5 −5 PlantTracker/PlantTracker/Models/Plant.swift
  11. +67 −0 PlantTracker/PlantTracker/Models/PlantsManager.swift
  12. +3 −0 PlantTracker/PlantTracker/Utilities/Log.swift
  13. +53 −0 PlantTracker/PlantTracker/Views/EditingTableViewCell.swift
  14. +0 −1 PlantTracker/PlantTracker/Views/LibraryDetailView.swift
  15. +1 −0 PlantTracker/Podfile
  16. +9 −1 PlantTracker/Podfile.lock
  17. +9 −1 PlantTracker/Pods/Manifest.lock
  18. +20 −0 PlantTracker/Pods/MultiSelectSegmentedControl/LICENSE.txt
  19. +144 −0 PlantTracker/Pods/MultiSelectSegmentedControl/README.md
  20. +136 −0 PlantTracker/Pods/MultiSelectSegmentedControl/Sources/MultiSelectSegment.swift
  21. +347 −0 PlantTracker/Pods/MultiSelectSegmentedControl/Sources/MultiSelectSegmentedControl.swift
  22. +1,281 −851 PlantTracker/Pods/Pods.xcodeproj/project.pbxproj
  23. +20 −0 PlantTracker/Pods/SweeterSwift/LICENSE.txt
  24. +236 −0 PlantTracker/Pods/SweeterSwift/README.md
  25. +25 −0 PlantTracker/Pods/SweeterSwift/Source/Bundle+Sweeter.swift
  26. +22 −0 PlantTracker/Pods/SweeterSwift/Source/Codable+Sweeter.swift
  27. +19 −0 PlantTracker/Pods/SweeterSwift/Source/DateFormatter+Sweeter.swift
  28. +35 −0 PlantTracker/Pods/SweeterSwift/Source/NSAttributedString+Sweeter.swift
  29. +53 −0 PlantTracker/Pods/SweeterSwift/Source/NSManagedObjectContext+Sweeter.swift
  30. +19 −0 PlantTracker/Pods/SweeterSwift/Source/NSObject+Sweeter.swift
  31. +34 −0 PlantTracker/Pods/SweeterSwift/Source/String+Sweeter.swift
  32. +32 −0 PlantTracker/Pods/SweeterSwift/Source/Swift+Sweeter.swift
  33. +16 −0 PlantTracker/Pods/SweeterSwift/Source/TimeInterval+Sweeter.swift
  34. +32 −0 PlantTracker/Pods/SweeterSwift/Source/UIApplication+Sweeter.swift
  35. +22 −0 PlantTracker/Pods/SweeterSwift/Source/UIStackView+Sweeter.swift
  36. +22 −0 PlantTracker/Pods/SweeterSwift/Source/UITextView+Sweeter.swift
  37. +116 −0 PlantTracker/Pods/SweeterSwift/Source/UIView+Sweeter.swift
  38. +17 −0 PlantTracker/Pods/SweeterSwift/Source/UIViewController+Sweeter.swift
  39. +26 −0 ...cker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl-Info.plist
  40. +5 −0 ...Tracker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl-dummy.m
  41. +12 −0 ...cker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl-prefix.pch
  42. +16 −0 ...cker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl-umbrella.h
  43. +6 −0 ...acker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl.modulemap
  44. +11 −0 ...racker/Pods/Target Support Files/MultiSelectSegmentedControl/MultiSelectSegmentedControl.xcconfig
  45. +47 −0 PlantTracker/Pods/Target Support Files/Pods-PlantTracker/Pods-PlantTracker-acknowledgements.markdown
  46. +59 −0 PlantTracker/Pods/Target Support Files/Pods-PlantTracker/Pods-PlantTracker-acknowledgements.plist
  47. +2 −0 .../Target Support Files/Pods-PlantTracker/Pods-PlantTracker-frameworks-Debug-input-files.xcfilelist
  48. +2 −0 ...Target Support Files/Pods-PlantTracker/Pods-PlantTracker-frameworks-Debug-output-files.xcfilelist
  49. +2 −0 ...arget Support Files/Pods-PlantTracker/Pods-PlantTracker-frameworks-Release-input-files.xcfilelist
  50. +2 −0 ...rget Support Files/Pods-PlantTracker/Pods-PlantTracker-frameworks-Release-output-files.xcfilelist
  51. +4 −0 PlantTracker/Pods/Target Support Files/Pods-PlantTracker/Pods-PlantTracker-frameworks.sh
  52. +3 −3 PlantTracker/Pods/Target Support Files/Pods-PlantTracker/Pods-PlantTracker.debug.xcconfig
  53. +3 −3 PlantTracker/Pods/Target Support Files/Pods-PlantTracker/Pods-PlantTracker.release.xcconfig
  54. +26 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift-Info.plist
  55. +5 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift-dummy.m
  56. +12 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift-prefix.pch
  57. +16 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift-umbrella.h
  58. +6 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift.modulemap
  59. +9 −0 PlantTracker/Pods/Target Support Files/SweeterSwift/SweeterSwift.xcconfig
  60. +7 −5 README.md
  61. BIN misc/overcast_row_adding_mech.gif
  62. BIN progress_screenshots/plantLevelEditingDemo.gif

Large diffs are not rendered by default.

@@ -7,6 +7,7 @@
objects = {

/* Begin PBXBuildFile section */
84010D242325BC170089E2F1 /* LinksTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84010D232325BC170089E2F1 /* LinksTableViewController.swift */; };
840919FA22FEE2BC007A8A27 /* ZoomAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840919F922FEE2BC007A8A27 /* ZoomAnimator.swift */; };
840919FC22FEE2D4007A8A27 /* ZoomTransitionController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840919FB22FEE2D4007A8A27 /* ZoomTransitionController.swift */; };
840919FE22FEE31B007A8A27 /* ZoomDismissalInteractionController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840919FD22FEE31B007A8A27 /* ZoomDismissalInteractionController.swift */; };
@@ -20,23 +21,27 @@
84444D1E22D9974F00876F6D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 84444D1C22D9974F00876F6D /* Main.storyboard */; };
84444D2022D9975100876F6D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 84444D1F22D9975100876F6D /* Assets.xcassets */; };
84444D2322D9975100876F6D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 84444D2122D9975100876F6D /* LaunchScreen.storyboard */; };
84488C1B232451EC004F0EE4 /* EditPlantLevelManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84488C1A232451EC004F0EE4 /* EditPlantLevelManager.swift */; };
84488C1D232457ED004F0EE4 /* GeneralPlantInformationTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84488C1C232457ED004F0EE4 /* GeneralPlantInformationTableViewController.swift */; };
8451739F22F3016000C3D8C7 /* Settings.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 8451739E22F3016000C3D8C7 /* Settings.bundle */; };
8455BFB922F63BF5004DEDA1 /* PlantsDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8455BFB822F63BF5004DEDA1 /* PlantsDelegate.swift */; };
8455BFBC22F66886004DEDA1 /* utilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8455BFBB22F66886004DEDA1 /* utilities.swift */; };
845BD6BD23005F0300D9BC90 /* PlantAssetsPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 845BD6BC23005F0300D9BC90 /* PlantAssetsPickerViewController.swift */; };
846E003822F1BFA3000FAC5C /* ImageCollectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 846E003722F1BFA3000FAC5C /* ImageCollectionViewController.swift */; };
847CD77422F8459E00F4A001 /* ImagePagingCollectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 847CD77322F8459E00F4A001 /* ImagePagingCollectionViewController.swift */; };
8499646C22EDE5B100BA03BD /* GeneralInformtationTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8499646B22EDE5B000BA03BD /* GeneralInformtationTableViewCell.swift */; };
84A3F9442300354F00D6BBAC /* LibraryDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A3F9432300354F00D6BBAC /* LibraryDetailView.swift */; };
84A40C802326690E006071E6 /* EditingTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A40C7F2326690E006071E6 /* EditingTableViewCell.swift */; };
84C5DE4A22F7B51700D5ED93 /* ImageCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84C5DE4922F7B51700D5ED93 /* ImageCollectionViewCell.swift */; };
84D3C59122F7197C005FC1C0 /* AssetIndexIDTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84D3C59022F7197C005FC1C0 /* AssetIndexIDTracker.swift */; };
84EA997D22F7E098000BA00D /* ImagePagingViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84EA997C22F7E098000BA00D /* ImagePagingViewCell.swift */; };
84F5F31C23151CA500A33FCB /* PlantsManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F5F31B23151CA500A33FCB /* PlantsManager.swift */; };
A22EE2632C9C409BC97B2781 /* Pods_PlantTracker.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C4E0C88DFD0554DE6FAE15C5 /* Pods_PlantTracker.framework */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
04F284427149BAFB8ABF4D7C /* Pods-PlantTracker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PlantTracker.debug.xcconfig"; path = "Target Support Files/Pods-PlantTracker/Pods-PlantTracker.debug.xcconfig"; sourceTree = "<group>"; };
39E15E495EEF0063BC2EDBAB /* Pods-PlantTracker.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PlantTracker.release.xcconfig"; path = "Target Support Files/Pods-PlantTracker/Pods-PlantTracker.release.xcconfig"; sourceTree = "<group>"; };
84010D232325BC170089E2F1 /* LinksTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinksTableViewController.swift; sourceTree = "<group>"; };
840919F922FEE2BC007A8A27 /* ZoomAnimator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZoomAnimator.swift; sourceTree = "<group>"; };
840919FB22FEE2D4007A8A27 /* ZoomTransitionController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZoomTransitionController.swift; sourceTree = "<group>"; };
840919FD22FEE31B007A8A27 /* ZoomDismissalInteractionController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZoomDismissalInteractionController.swift; sourceTree = "<group>"; };
@@ -52,17 +57,20 @@
84444D1F22D9975100876F6D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
84444D2222D9975100876F6D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
84444D2422D9975100876F6D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
84488C1A232451EC004F0EE4 /* EditPlantLevelManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = EditPlantLevelManager.swift; path = PlantTracker/Models/EditPlantLevelManager.swift; sourceTree = SOURCE_ROOT; };
84488C1C232457ED004F0EE4 /* GeneralPlantInformationTableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GeneralPlantInformationTableViewController.swift; sourceTree = "<group>"; };
8451739E22F3016000C3D8C7 /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = "<group>"; };
8455BFB822F63BF5004DEDA1 /* PlantsDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlantsDelegate.swift; sourceTree = "<group>"; };
8455BFBB22F66886004DEDA1 /* utilities.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = utilities.swift; sourceTree = "<group>"; };
845BD6BC23005F0300D9BC90 /* PlantAssetsPickerViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlantAssetsPickerViewController.swift; sourceTree = "<group>"; };
846E003722F1BFA3000FAC5C /* ImageCollectionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageCollectionViewController.swift; sourceTree = "<group>"; };
847CD77322F8459E00F4A001 /* ImagePagingCollectionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImagePagingCollectionViewController.swift; sourceTree = "<group>"; };
8499646B22EDE5B000BA03BD /* GeneralInformtationTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GeneralInformtationTableViewCell.swift; sourceTree = "<group>"; };
84A3F9432300354F00D6BBAC /* LibraryDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LibraryDetailView.swift; sourceTree = "<group>"; };
84A40C7F2326690E006071E6 /* EditingTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditingTableViewCell.swift; sourceTree = "<group>"; };
84C5DE4922F7B51700D5ED93 /* ImageCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageCollectionViewCell.swift; sourceTree = "<group>"; };
84D3C59022F7197C005FC1C0 /* AssetIndexIDTracker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AssetIndexIDTracker.swift; sourceTree = "<group>"; };
84EA997C22F7E098000BA00D /* ImagePagingViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImagePagingViewCell.swift; sourceTree = "<group>"; };
84F5F31B23151CA500A33FCB /* PlantsManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlantsManager.swift; sourceTree = "<group>"; };
C4E0C88DFD0554DE6FAE15C5 /* Pods_PlantTracker.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PlantTracker.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */

@@ -137,8 +145,10 @@
8414554E22FF761E00A74C65 /* Models */ = {
isa = PBXGroup;
children = (
84488C1A232451EC004F0EE4 /* EditPlantLevelManager.swift */,
8431043A22DB8E0100AFD4B6 /* Plant.swift */,
84D3C59022F7197C005FC1C0 /* AssetIndexIDTracker.swift */,
84F5F31B23151CA500A33FCB /* PlantsManager.swift */,
);
path = Models;
sourceTree = "<group>";
@@ -150,6 +160,7 @@
8414555922FF8C0000A74C65 /* PlantLibraryTableViewCell.swift */,
84A3F9432300354F00D6BBAC /* LibraryDetailView.swift */,
8499646B22EDE5B000BA03BD /* GeneralInformtationTableViewCell.swift */,
84A40C7F2326690E006071E6 /* EditingTableViewCell.swift */,
84C5DE4922F7B51700D5ED93 /* ImageCollectionViewCell.swift */,
84EA997C22F7E098000BA00D /* ImagePagingViewCell.swift */,
);
@@ -161,10 +172,11 @@
children = (
84444D1A22D9974F00876F6D /* PlantLibraryTableViewController.swift */,
8431043E22DBC64100AFD4B6 /* LibraryDetailViewController.swift */,
84488C1C232457ED004F0EE4 /* GeneralPlantInformationTableViewController.swift */,
84010D232325BC170089E2F1 /* LinksTableViewController.swift */,
845BD6BC23005F0300D9BC90 /* PlantAssetsPickerViewController.swift */,
846E003722F1BFA3000FAC5C /* ImageCollectionViewController.swift */,
847CD77322F8459E00F4A001 /* ImagePagingCollectionViewController.swift */,
8455BFB822F63BF5004DEDA1 /* PlantsDelegate.swift */,
);
path = Controllers;
sourceTree = "<group>";
@@ -323,20 +335,24 @@
846E003822F1BFA3000FAC5C /* ImageCollectionViewController.swift in Sources */,
8499646C22EDE5B100BA03BD /* GeneralInformtationTableViewCell.swift in Sources */,
84444D1B22D9974F00876F6D /* PlantLibraryTableViewController.swift in Sources */,
84F5F31C23151CA500A33FCB /* PlantsManager.swift in Sources */,
84D3C59122F7197C005FC1C0 /* AssetIndexIDTracker.swift in Sources */,
847CD77422F8459E00F4A001 /* ImagePagingCollectionViewController.swift in Sources */,
845BD6BD23005F0300D9BC90 /* PlantAssetsPickerViewController.swift in Sources */,
840919FE22FEE31B007A8A27 /* ZoomDismissalInteractionController.swift in Sources */,
84488C1B232451EC004F0EE4 /* EditPlantLevelManager.swift in Sources */,
8431043F22DBC64100AFD4B6 /* LibraryDetailViewController.swift in Sources */,
84EA997D22F7E098000BA00D /* ImagePagingViewCell.swift in Sources */,
84C5DE4A22F7B51700D5ED93 /* ImageCollectionViewCell.swift in Sources */,
8431043B22DB8E0100AFD4B6 /* Plant.swift in Sources */,
84A40C802326690E006071E6 /* EditingTableViewCell.swift in Sources */,
84010D242325BC170089E2F1 /* LinksTableViewController.swift in Sources */,
84444D1922D9974F00876F6D /* AppDelegate.swift in Sources */,
840F8D2D2301EBE1007588CC /* Log.swift in Sources */,
84A3F9442300354F00D6BBAC /* LibraryDetailView.swift in Sources */,
8455BFB922F63BF5004DEDA1 /* PlantsDelegate.swift in Sources */,
840919FA22FEE2BC007A8A27 /* ZoomAnimator.swift in Sources */,
840919FC22FEE2D4007A8A27 /* ZoomTransitionController.swift in Sources */,
84488C1D232457ED004F0EE4 /* GeneralPlantInformationTableViewController.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

0 comments on commit 42058c4

Please sign in to comment.
You can’t perform that action at this time.