From c887865fb78904daf622c2b69521f97292a37a1f Mon Sep 17 00:00:00 2001 From: jkaunert Date: Tue, 6 Nov 2018 15:06:35 -0600 Subject: [PATCH 1/7] cleans up boilerplate code --- List/List.xcodeproj/project.pbxproj | 341 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../UserInterfaceState.xcuserstate | Bin 0 -> 11962 bytes .../xcschemes/xcschememanagement.plist | 14 + List/List/AppDelegate.swift | 11 + .../AppIcon.appiconset/Contents.json | 98 +++++ List/List/Assets.xcassets/Contents.json | 6 + List/List/Base.lproj/LaunchScreen.storyboard | 25 ++ List/List/Base.lproj/Main.storyboard | 24 ++ List/List/Info.plist | 43 +++ List/List/ViewController.swift | 7 + 12 files changed, 584 insertions(+) create mode 100644 List/List.xcodeproj/project.pbxproj create mode 100644 List/List.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 List/List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 List/List.xcodeproj/xcuserdata/TuneUpShop.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 List/List/AppDelegate.swift create mode 100644 List/List/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 List/List/Assets.xcassets/Contents.json create mode 100644 List/List/Base.lproj/LaunchScreen.storyboard create mode 100644 List/List/Base.lproj/Main.storyboard create mode 100644 List/List/Info.plist create mode 100644 List/List/ViewController.swift diff --git a/List/List.xcodeproj/project.pbxproj b/List/List.xcodeproj/project.pbxproj new file mode 100644 index 0000000..d915509 --- /dev/null +++ b/List/List.xcodeproj/project.pbxproj @@ -0,0 +1,341 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + ABA51514219238AC004FD8DC /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABA51513219238AC004FD8DC /* AppDelegate.swift */; }; + ABA51516219238AC004FD8DC /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABA51515219238AC004FD8DC /* ViewController.swift */; }; + ABA51519219238AC004FD8DC /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = ABA51517219238AC004FD8DC /* Main.storyboard */; }; + ABA5151B219238AD004FD8DC /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = ABA5151A219238AD004FD8DC /* Assets.xcassets */; }; + ABA5151E219238AD004FD8DC /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = ABA5151C219238AD004FD8DC /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + ABA51510219238AC004FD8DC /* List.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = List.app; sourceTree = BUILT_PRODUCTS_DIR; }; + ABA51513219238AC004FD8DC /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + ABA51515219238AC004FD8DC /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + ABA51518219238AC004FD8DC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + ABA5151A219238AD004FD8DC /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + ABA5151D219238AD004FD8DC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + ABA5151F219238AD004FD8DC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + ABA5150D219238AC004FD8DC /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + ABA51507219238AC004FD8DC = { + isa = PBXGroup; + children = ( + ABA51512219238AC004FD8DC /* List */, + ABA51511219238AC004FD8DC /* Products */, + ); + sourceTree = ""; + }; + ABA51511219238AC004FD8DC /* Products */ = { + isa = PBXGroup; + children = ( + ABA51510219238AC004FD8DC /* List.app */, + ); + name = Products; + sourceTree = ""; + }; + ABA51512219238AC004FD8DC /* List */ = { + isa = PBXGroup; + children = ( + ABA51513219238AC004FD8DC /* AppDelegate.swift */, + ABA51515219238AC004FD8DC /* ViewController.swift */, + ABA51517219238AC004FD8DC /* Main.storyboard */, + ABA5151A219238AD004FD8DC /* Assets.xcassets */, + ABA5151C219238AD004FD8DC /* LaunchScreen.storyboard */, + ABA5151F219238AD004FD8DC /* Info.plist */, + ); + path = List; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + ABA5150F219238AC004FD8DC /* List */ = { + isa = PBXNativeTarget; + buildConfigurationList = ABA51522219238AD004FD8DC /* Build configuration list for PBXNativeTarget "List" */; + buildPhases = ( + ABA5150C219238AC004FD8DC /* Sources */, + ABA5150D219238AC004FD8DC /* Frameworks */, + ABA5150E219238AC004FD8DC /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = List; + productName = List; + productReference = ABA51510219238AC004FD8DC /* List.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + ABA51508219238AC004FD8DC /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1010; + LastUpgradeCheck = 1010; + ORGANIZATIONNAME = jkaunert; + TargetAttributes = { + ABA5150F219238AC004FD8DC = { + CreatedOnToolsVersion = 10.1; + }; + }; + }; + buildConfigurationList = ABA5150B219238AC004FD8DC /* Build configuration list for PBXProject "List" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = ABA51507219238AC004FD8DC; + productRefGroup = ABA51511219238AC004FD8DC /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + ABA5150F219238AC004FD8DC /* List */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + ABA5150E219238AC004FD8DC /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ABA5151E219238AD004FD8DC /* LaunchScreen.storyboard in Resources */, + ABA5151B219238AD004FD8DC /* Assets.xcassets in Resources */, + ABA51519219238AC004FD8DC /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + ABA5150C219238AC004FD8DC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ABA51516219238AC004FD8DC /* ViewController.swift in Sources */, + ABA51514219238AC004FD8DC /* AppDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + ABA51517219238AC004FD8DC /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + ABA51518219238AC004FD8DC /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + ABA5151C219238AD004FD8DC /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + ABA5151D219238AD004FD8DC /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + ABA51520219238AD004FD8DC /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + ABA51521219238AD004FD8DC /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + ABA51523219238AD004FD8DC /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = HSRQC9N69B; + INFOPLIST_FILE = List/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.jkaunert.List; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + ABA51524219238AD004FD8DC /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = HSRQC9N69B; + INFOPLIST_FILE = List/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.jkaunert.List; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + ABA5150B219238AC004FD8DC /* Build configuration list for PBXProject "List" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + ABA51520219238AD004FD8DC /* Debug */, + ABA51521219238AD004FD8DC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + ABA51522219238AD004FD8DC /* Build configuration list for PBXNativeTarget "List" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + ABA51523219238AD004FD8DC /* Debug */, + ABA51524219238AD004FD8DC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = ABA51508219238AC004FD8DC /* Project object */; +} diff --git a/List/List.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/List/List.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1119a07 --- /dev/null +++ b/List/List.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/List/List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/List/List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/List/List.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..f9649d2d73a70a1e0202bdd0d7b9417e85481a16 GIT binary patch literal 11962 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 literal 0 HcmV?d00001 diff --git a/List/List.xcodeproj/xcuserdata/TuneUpShop.xcuserdatad/xcschemes/xcschememanagement.plist b/List/List.xcodeproj/xcuserdata/TuneUpShop.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..7c17791 --- /dev/null +++ b/List/List.xcodeproj/xcuserdata/TuneUpShop.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + List.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/List/List/AppDelegate.swift b/List/List/AppDelegate.swift new file mode 100644 index 0000000..aa20c05 --- /dev/null +++ b/List/List/AppDelegate.swift @@ -0,0 +1,11 @@ +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + var window: UIWindow? + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + return true + } +} + diff --git a/List/List/Assets.xcassets/AppIcon.appiconset/Contents.json b/List/List/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d8db8d6 --- /dev/null +++ b/List/List/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/List/List/Assets.xcassets/Contents.json b/List/List/Assets.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/List/List/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/List/List/Base.lproj/LaunchScreen.storyboard b/List/List/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..bfa3612 --- /dev/null +++ b/List/List/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/List/List/Base.lproj/Main.storyboard b/List/List/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f1bcf38 --- /dev/null +++ b/List/List/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/List/List/Info.plist b/List/List/Info.plist new file mode 100644 index 0000000..89d7858 --- /dev/null +++ b/List/List/Info.plist @@ -0,0 +1,43 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/List/List/ViewController.swift b/List/List/ViewController.swift new file mode 100644 index 0000000..03fd5b5 --- /dev/null +++ b/List/List/ViewController.swift @@ -0,0 +1,7 @@ +import UIKit + +class ViewController: UIViewController { + + +} + From 33dcbcb8a993db9a27a6aa97772f05189dfd9028 Mon Sep 17 00:00:00 2001 From: jkaunert Date: Tue, 6 Nov 2018 15:13:41 -0600 Subject: [PATCH 2/7] adds Model --- List/List.xcodeproj/project.pbxproj | 4 ++++ .../UserInterfaceState.xcuserstate | Bin 11962 -> 12469 bytes List/List/Model.swift | 19 ++++++++++++++++++ 3 files changed, 23 insertions(+) create mode 100644 List/List/Model.swift diff --git a/List/List.xcodeproj/project.pbxproj b/List/List.xcodeproj/project.pbxproj index d915509..0fd772c 100644 --- a/List/List.xcodeproj/project.pbxproj +++ b/List/List.xcodeproj/project.pbxproj @@ -12,6 +12,7 @@ ABA51519219238AC004FD8DC /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = ABA51517219238AC004FD8DC /* Main.storyboard */; }; ABA5151B219238AD004FD8DC /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = ABA5151A219238AD004FD8DC /* Assets.xcassets */; }; ABA5151E219238AD004FD8DC /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = ABA5151C219238AD004FD8DC /* LaunchScreen.storyboard */; }; + ABA5152621923A1B004FD8DC /* Model.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABA5152521923A1B004FD8DC /* Model.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -22,6 +23,7 @@ ABA5151A219238AD004FD8DC /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; ABA5151D219238AD004FD8DC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; ABA5151F219238AD004FD8DC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + ABA5152521923A1B004FD8DC /* Model.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -56,6 +58,7 @@ children = ( ABA51513219238AC004FD8DC /* AppDelegate.swift */, ABA51515219238AC004FD8DC /* ViewController.swift */, + ABA5152521923A1B004FD8DC /* Model.swift */, ABA51517219238AC004FD8DC /* Main.storyboard */, ABA5151A219238AD004FD8DC /* Assets.xcassets */, ABA5151C219238AD004FD8DC /* LaunchScreen.storyboard */, @@ -135,6 +138,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + ABA5152621923A1B004FD8DC /* Model.swift in Sources */, ABA51516219238AC004FD8DC /* ViewController.swift in Sources */, ABA51514219238AC004FD8DC /* AppDelegate.swift in Sources */, ); diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate index f9649d2d73a70a1e0202bdd0d7b9417e85481a16..b5f9f1bd1969e6ebd98f2fb2aefc62949e792295 100644 GIT binary patch delta 5192 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 diff --git a/List/List/Model.swift b/List/List/Model.swift new file mode 100644 index 0000000..3706615 --- /dev/null +++ b/List/List/Model.swift @@ -0,0 +1,19 @@ +import UIKit + +class Model { + static let shared = Model() + private init() {} + + private(set) var items: [String] = [] + + func add(_ item: String) { + // add the item to your items list + items.append(item) + } + + func resetItems() { + // reset your items list here + items = [] + } + +} From 946f75cb0ed8fc11f5d3b9a2fcf011d2e703fdec Mon Sep 17 00:00:00 2001 From: jkaunert Date: Tue, 6 Nov 2018 15:40:12 -0600 Subject: [PATCH 3/7] adds interface --- .../UserInterfaceState.xcuserstate | Bin 12469 -> 12474 bytes List/List/Base.lproj/Main.storyboard | 48 ++++++++++++++++-- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate index b5f9f1bd1969e6ebd98f2fb2aefc62949e792295..c6e0f5fd26066dde6c8e2c12742598c1a4e05ed8 100644 GIT binary patch delta 6343 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 delta 6123 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 diff --git a/List/List/Base.lproj/Main.storyboard b/List/List/Base.lproj/Main.storyboard index f1bcf38..203187c 100644 --- a/List/List/Base.lproj/Main.storyboard +++ b/List/List/Base.lproj/Main.storyboard @@ -1,7 +1,11 @@ - + + + + - + + @@ -9,11 +13,49 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 36734c7b943a9dbdae7b4c565d698f9864e9e893 Mon Sep 17 00:00:00 2001 From: jkaunert Date: Tue, 6 Nov 2018 16:17:53 -0600 Subject: [PATCH 4/7] adds required functionality --- .../UserInterfaceState.xcuserstate | Bin 12474 -> 22103 bytes List/List/Base.lproj/Main.storyboard | 12 ++++++++++- List/List/Model.swift | 1 + List/List/ViewController.swift | 20 +++++++++++++++++- 4 files changed, 31 insertions(+), 2 deletions(-) diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate index c6e0f5fd26066dde6c8e2c12742598c1a4e05ed8..2f7e72bf67f9a1de8d3e6065217df2127e2a4c1b 100644 GIT binary patch literal 22103 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 BcIW^A diff --git a/List/List/Base.lproj/Main.storyboard b/List/List/Base.lproj/Main.storyboard index 203187c..77db8f1 100644 --- a/List/List/Base.lproj/Main.storyboard +++ b/List/List/Base.lproj/Main.storyboard @@ -24,7 +24,7 @@ - + @@ -33,6 +33,9 @@ @@ -45,6 +48,9 @@ @@ -58,6 +64,10 @@ + + + + diff --git a/List/List/Model.swift b/List/List/Model.swift index 3706615..2506afb 100644 --- a/List/List/Model.swift +++ b/List/List/Model.swift @@ -9,6 +9,7 @@ class Model { func add(_ item: String) { // add the item to your items list items.append(item) + print(items) } func resetItems() { diff --git a/List/List/ViewController.swift b/List/List/ViewController.swift index 03fd5b5..7b76307 100644 --- a/List/List/ViewController.swift +++ b/List/List/ViewController.swift @@ -2,6 +2,24 @@ import UIKit class ViewController: UIViewController { - + @IBOutlet weak var textField: UITextField! + + @IBOutlet weak var label: UILabel! + + @IBAction func shouldAdd(_ sender: UIButton) { + let text = textField.text ?? "" + if !text.isEmpty { + Model.shared.add(text) + textField.text = "" + let joined = Model.shared.items.joined(separator: "\n") + label.text = joined + } + } + + + @IBAction func shouldReset(_ sender: UIButton) { + Model.shared.resetItems() + label.text = "" + } } From 5abbddf854e575516208685e93f0828d22e4c425 Mon Sep 17 00:00:00 2001 From: jkaunert Date: Tue, 6 Nov 2018 16:31:37 -0600 Subject: [PATCH 5/7] adds bulleted formatting to list --- .../UserInterfaceState.xcuserstate | Bin 22103 -> 22103 bytes List/List/ViewController.swift | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate index 2f7e72bf67f9a1de8d3e6065217df2127e2a4c1b..fc18a8cba2c73f36d628e77d56fea83c8993188f 100644 GIT binary patch delta 42 ycmcbo4{yW9Xa$_@bl delta 42 ycmcb{QBe|FEu7Z Date: Tue, 6 Nov 2018 16:43:41 -0600 Subject: [PATCH 6/7] replaces label with non-editable text view that is top-aligned --- .../UserInterfaceState.xcuserstate | Bin 22103 -> 22663 bytes List/List/Base.lproj/Main.storyboard | 14 ++++++++++++-- List/List/ViewController.swift | 6 ++++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate b/List/List.xcodeproj/project.xcworkspace/xcuserdata/TuneUpShop.xcuserdatad/UserInterfaceState.xcuserstate index fc18a8cba2c73f36d628e77d56fea83c8993188f..c94de5d026b3b13be5effe3064deb3150e3b7a40 100644 GIT binary patch delta 8679 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 delta 8074 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 diff --git a/List/List/Base.lproj/Main.storyboard b/List/List/Base.lproj/Main.storyboard index 77db8f1..347ce30 100644 --- a/List/List/Base.lproj/Main.storyboard +++ b/List/List/Base.lproj/Main.storyboard @@ -39,20 +39,29 @@ -