Skip to content

Commit 6868c25

Browse files
committed
Add L71
1 parent ddf1e5e commit 6868c25

File tree

10 files changed

+1287
-0
lines changed

10 files changed

+1287
-0
lines changed
Lines changed: 332 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,332 @@
1+
// !$*UTF8*$!
2+
{
3+
archiveVersion = 1;
4+
classes = {
5+
};
6+
objectVersion = 50;
7+
objects = {
8+
9+
/* Begin PBXBuildFile section */
10+
1D1B36A323750F07009F31CD /* View.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D1B36A223750F07009F31CD /* View.swift */; };
11+
1DD8DBF32373420A0083D14A /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DD8DBF22373420A0083D14A /* AppDelegate.swift */; };
12+
1DD8DBF52373420D0083D14A /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1DD8DBF42373420D0083D14A /* Assets.xcassets */; };
13+
1DD8DBF82373420D0083D14A /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DD8DBF62373420D0083D14A /* MainMenu.xib */; };
14+
/* End PBXBuildFile section */
15+
16+
/* Begin PBXFileReference section */
17+
1D1B36A223750F07009F31CD /* View.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = View.swift; sourceTree = "<group>"; };
18+
1DD8DBEF2373420A0083D14A /* Lesson 71.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Lesson 71.app"; sourceTree = BUILT_PRODUCTS_DIR; };
19+
1DD8DBF22373420A0083D14A /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
20+
1DD8DBF42373420D0083D14A /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
21+
1DD8DBF72373420D0083D14A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
22+
1DD8DBF92373420D0083D14A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
23+
1DD8DBFA2373420D0083D14A /* Lesson_71.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Lesson_71.entitlements; sourceTree = "<group>"; };
24+
/* End PBXFileReference section */
25+
26+
/* Begin PBXFrameworksBuildPhase section */
27+
1DD8DBEC2373420A0083D14A /* Frameworks */ = {
28+
isa = PBXFrameworksBuildPhase;
29+
buildActionMask = 2147483647;
30+
files = (
31+
);
32+
runOnlyForDeploymentPostprocessing = 0;
33+
};
34+
/* End PBXFrameworksBuildPhase section */
35+
36+
/* Begin PBXGroup section */
37+
1DD8DBE62373420A0083D14A = {
38+
isa = PBXGroup;
39+
children = (
40+
1DD8DBF12373420A0083D14A /* Lesson 71 */,
41+
1DD8DBF02373420A0083D14A /* Products */,
42+
);
43+
sourceTree = "<group>";
44+
};
45+
1DD8DBF02373420A0083D14A /* Products */ = {
46+
isa = PBXGroup;
47+
children = (
48+
1DD8DBEF2373420A0083D14A /* Lesson 71.app */,
49+
);
50+
name = Products;
51+
sourceTree = "<group>";
52+
};
53+
1DD8DBF12373420A0083D14A /* Lesson 71 */ = {
54+
isa = PBXGroup;
55+
children = (
56+
1DD8DBF22373420A0083D14A /* AppDelegate.swift */,
57+
1D1B36A223750F07009F31CD /* View.swift */,
58+
1DD8DBF42373420D0083D14A /* Assets.xcassets */,
59+
1DD8DBF62373420D0083D14A /* MainMenu.xib */,
60+
1DD8DBF92373420D0083D14A /* Info.plist */,
61+
1DD8DBFA2373420D0083D14A /* Lesson_71.entitlements */,
62+
);
63+
path = "Lesson 71";
64+
sourceTree = "<group>";
65+
};
66+
/* End PBXGroup section */
67+
68+
/* Begin PBXNativeTarget section */
69+
1DD8DBEE2373420A0083D14A /* Lesson 71 */ = {
70+
isa = PBXNativeTarget;
71+
buildConfigurationList = 1DD8DBFD2373420D0083D14A /* Build configuration list for PBXNativeTarget "Lesson 71" */;
72+
buildPhases = (
73+
1DD8DBEB2373420A0083D14A /* Sources */,
74+
1DD8DBEC2373420A0083D14A /* Frameworks */,
75+
1DD8DBED2373420A0083D14A /* Resources */,
76+
);
77+
buildRules = (
78+
);
79+
dependencies = (
80+
);
81+
name = "Lesson 71";
82+
productName = "Lesson 71";
83+
productReference = 1DD8DBEF2373420A0083D14A /* Lesson 71.app */;
84+
productType = "com.apple.product-type.application";
85+
};
86+
/* End PBXNativeTarget section */
87+
88+
/* Begin PBXProject section */
89+
1DD8DBE72373420A0083D14A /* Project object */ = {
90+
isa = PBXProject;
91+
attributes = {
92+
LastSwiftUpdateCheck = 1120;
93+
LastUpgradeCheck = 1120;
94+
ORGANIZATIONNAME = "Lucas Derraugh";
95+
TargetAttributes = {
96+
1DD8DBEE2373420A0083D14A = {
97+
CreatedOnToolsVersion = 11.2;
98+
};
99+
};
100+
};
101+
buildConfigurationList = 1DD8DBEA2373420A0083D14A /* Build configuration list for PBXProject "Lesson 71" */;
102+
compatibilityVersion = "Xcode 9.3";
103+
developmentRegion = en;
104+
hasScannedForEncodings = 0;
105+
knownRegions = (
106+
en,
107+
Base,
108+
);
109+
mainGroup = 1DD8DBE62373420A0083D14A;
110+
productRefGroup = 1DD8DBF02373420A0083D14A /* Products */;
111+
projectDirPath = "";
112+
projectRoot = "";
113+
targets = (
114+
1DD8DBEE2373420A0083D14A /* Lesson 71 */,
115+
);
116+
};
117+
/* End PBXProject section */
118+
119+
/* Begin PBXResourcesBuildPhase section */
120+
1DD8DBED2373420A0083D14A /* Resources */ = {
121+
isa = PBXResourcesBuildPhase;
122+
buildActionMask = 2147483647;
123+
files = (
124+
1DD8DBF52373420D0083D14A /* Assets.xcassets in Resources */,
125+
1DD8DBF82373420D0083D14A /* MainMenu.xib in Resources */,
126+
);
127+
runOnlyForDeploymentPostprocessing = 0;
128+
};
129+
/* End PBXResourcesBuildPhase section */
130+
131+
/* Begin PBXSourcesBuildPhase section */
132+
1DD8DBEB2373420A0083D14A /* Sources */ = {
133+
isa = PBXSourcesBuildPhase;
134+
buildActionMask = 2147483647;
135+
files = (
136+
1D1B36A323750F07009F31CD /* View.swift in Sources */,
137+
1DD8DBF32373420A0083D14A /* AppDelegate.swift in Sources */,
138+
);
139+
runOnlyForDeploymentPostprocessing = 0;
140+
};
141+
/* End PBXSourcesBuildPhase section */
142+
143+
/* Begin PBXVariantGroup section */
144+
1DD8DBF62373420D0083D14A /* MainMenu.xib */ = {
145+
isa = PBXVariantGroup;
146+
children = (
147+
1DD8DBF72373420D0083D14A /* Base */,
148+
);
149+
name = MainMenu.xib;
150+
sourceTree = "<group>";
151+
};
152+
/* End PBXVariantGroup section */
153+
154+
/* Begin XCBuildConfiguration section */
155+
1DD8DBFB2373420D0083D14A /* Debug */ = {
156+
isa = XCBuildConfiguration;
157+
buildSettings = {
158+
ALWAYS_SEARCH_USER_PATHS = NO;
159+
CLANG_ANALYZER_NONNULL = YES;
160+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
161+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
162+
CLANG_CXX_LIBRARY = "libc++";
163+
CLANG_ENABLE_MODULES = YES;
164+
CLANG_ENABLE_OBJC_ARC = YES;
165+
CLANG_ENABLE_OBJC_WEAK = YES;
166+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
167+
CLANG_WARN_BOOL_CONVERSION = YES;
168+
CLANG_WARN_COMMA = YES;
169+
CLANG_WARN_CONSTANT_CONVERSION = YES;
170+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
171+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
172+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
173+
CLANG_WARN_EMPTY_BODY = YES;
174+
CLANG_WARN_ENUM_CONVERSION = YES;
175+
CLANG_WARN_INFINITE_RECURSION = YES;
176+
CLANG_WARN_INT_CONVERSION = YES;
177+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
178+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
179+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
180+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
181+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
182+
CLANG_WARN_STRICT_PROTOTYPES = YES;
183+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
184+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
185+
CLANG_WARN_UNREACHABLE_CODE = YES;
186+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
187+
COPY_PHASE_STRIP = NO;
188+
DEBUG_INFORMATION_FORMAT = dwarf;
189+
ENABLE_STRICT_OBJC_MSGSEND = YES;
190+
ENABLE_TESTABILITY = YES;
191+
GCC_C_LANGUAGE_STANDARD = gnu11;
192+
GCC_DYNAMIC_NO_PIC = NO;
193+
GCC_NO_COMMON_BLOCKS = YES;
194+
GCC_OPTIMIZATION_LEVEL = 0;
195+
GCC_PREPROCESSOR_DEFINITIONS = (
196+
"DEBUG=1",
197+
"$(inherited)",
198+
);
199+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
200+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
201+
GCC_WARN_UNDECLARED_SELECTOR = YES;
202+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
203+
GCC_WARN_UNUSED_FUNCTION = YES;
204+
GCC_WARN_UNUSED_VARIABLE = YES;
205+
MACOSX_DEPLOYMENT_TARGET = 10.15;
206+
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
207+
MTL_FAST_MATH = YES;
208+
ONLY_ACTIVE_ARCH = YES;
209+
SDKROOT = macosx;
210+
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
211+
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
212+
};
213+
name = Debug;
214+
};
215+
1DD8DBFC2373420D0083D14A /* Release */ = {
216+
isa = XCBuildConfiguration;
217+
buildSettings = {
218+
ALWAYS_SEARCH_USER_PATHS = NO;
219+
CLANG_ANALYZER_NONNULL = YES;
220+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
221+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
222+
CLANG_CXX_LIBRARY = "libc++";
223+
CLANG_ENABLE_MODULES = YES;
224+
CLANG_ENABLE_OBJC_ARC = YES;
225+
CLANG_ENABLE_OBJC_WEAK = YES;
226+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
227+
CLANG_WARN_BOOL_CONVERSION = YES;
228+
CLANG_WARN_COMMA = YES;
229+
CLANG_WARN_CONSTANT_CONVERSION = YES;
230+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
231+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
232+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
233+
CLANG_WARN_EMPTY_BODY = YES;
234+
CLANG_WARN_ENUM_CONVERSION = YES;
235+
CLANG_WARN_INFINITE_RECURSION = YES;
236+
CLANG_WARN_INT_CONVERSION = YES;
237+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
238+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
239+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
240+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
241+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
242+
CLANG_WARN_STRICT_PROTOTYPES = YES;
243+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
244+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
245+
CLANG_WARN_UNREACHABLE_CODE = YES;
246+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
247+
COPY_PHASE_STRIP = NO;
248+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
249+
ENABLE_NS_ASSERTIONS = NO;
250+
ENABLE_STRICT_OBJC_MSGSEND = YES;
251+
GCC_C_LANGUAGE_STANDARD = gnu11;
252+
GCC_NO_COMMON_BLOCKS = YES;
253+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
254+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
255+
GCC_WARN_UNDECLARED_SELECTOR = YES;
256+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
257+
GCC_WARN_UNUSED_FUNCTION = YES;
258+
GCC_WARN_UNUSED_VARIABLE = YES;
259+
MACOSX_DEPLOYMENT_TARGET = 10.15;
260+
MTL_ENABLE_DEBUG_INFO = NO;
261+
MTL_FAST_MATH = YES;
262+
SDKROOT = macosx;
263+
SWIFT_COMPILATION_MODE = wholemodule;
264+
SWIFT_OPTIMIZATION_LEVEL = "-O";
265+
};
266+
name = Release;
267+
};
268+
1DD8DBFE2373420D0083D14A /* Debug */ = {
269+
isa = XCBuildConfiguration;
270+
buildSettings = {
271+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
272+
CODE_SIGN_ENTITLEMENTS = "Lesson 71/Lesson_71.entitlements";
273+
CODE_SIGN_STYLE = Automatic;
274+
COMBINE_HIDPI_IMAGES = YES;
275+
DEVELOPMENT_TEAM = FP44AY6HHW;
276+
ENABLE_HARDENED_RUNTIME = YES;
277+
INFOPLIST_FILE = "Lesson 71/Info.plist";
278+
LD_RUNPATH_SEARCH_PATHS = (
279+
"$(inherited)",
280+
"@executable_path/../Frameworks",
281+
);
282+
PRODUCT_BUNDLE_IDENTIFIER = "com.lucasderraugh.Lesson-71";
283+
PRODUCT_NAME = "$(TARGET_NAME)";
284+
SWIFT_VERSION = 5.0;
285+
};
286+
name = Debug;
287+
};
288+
1DD8DBFF2373420D0083D14A /* Release */ = {
289+
isa = XCBuildConfiguration;
290+
buildSettings = {
291+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
292+
CODE_SIGN_ENTITLEMENTS = "Lesson 71/Lesson_71.entitlements";
293+
CODE_SIGN_STYLE = Automatic;
294+
COMBINE_HIDPI_IMAGES = YES;
295+
DEVELOPMENT_TEAM = FP44AY6HHW;
296+
ENABLE_HARDENED_RUNTIME = YES;
297+
INFOPLIST_FILE = "Lesson 71/Info.plist";
298+
LD_RUNPATH_SEARCH_PATHS = (
299+
"$(inherited)",
300+
"@executable_path/../Frameworks",
301+
);
302+
PRODUCT_BUNDLE_IDENTIFIER = "com.lucasderraugh.Lesson-71";
303+
PRODUCT_NAME = "$(TARGET_NAME)";
304+
SWIFT_VERSION = 5.0;
305+
};
306+
name = Release;
307+
};
308+
/* End XCBuildConfiguration section */
309+
310+
/* Begin XCConfigurationList section */
311+
1DD8DBEA2373420A0083D14A /* Build configuration list for PBXProject "Lesson 71" */ = {
312+
isa = XCConfigurationList;
313+
buildConfigurations = (
314+
1DD8DBFB2373420D0083D14A /* Debug */,
315+
1DD8DBFC2373420D0083D14A /* Release */,
316+
);
317+
defaultConfigurationIsVisible = 0;
318+
defaultConfigurationName = Release;
319+
};
320+
1DD8DBFD2373420D0083D14A /* Build configuration list for PBXNativeTarget "Lesson 71" */ = {
321+
isa = XCConfigurationList;
322+
buildConfigurations = (
323+
1DD8DBFE2373420D0083D14A /* Debug */,
324+
1DD8DBFF2373420D0083D14A /* Release */,
325+
);
326+
defaultConfigurationIsVisible = 0;
327+
defaultConfigurationName = Release;
328+
};
329+
/* End XCConfigurationList section */
330+
};
331+
rootObject = 1DD8DBE72373420A0083D14A /* Project object */;
332+
}

Lesson 71/Lesson 71.xcodeproj/project.xcworkspace/contents.xcworkspacedata

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>IDEDidComputeMac32BitWarning</key>
6+
<true/>
7+
</dict>
8+
</plist>
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
//
2+
// AppDelegate.swift
3+
// Lesson 71
4+
//
5+
// Created by Lucas Derraugh on 11/6/19.
6+
// Copyright © 2019 Lucas Derraugh. All rights reserved.
7+
//
8+
9+
import Cocoa
10+
11+
@NSApplicationMain
12+
class AppDelegate: NSObject, NSApplicationDelegate {
13+
14+
@IBOutlet weak var window: NSWindow!
15+
@IBOutlet weak var box: NSBox!
16+
@IBOutlet weak var view: View!
17+
18+
19+
@IBAction func animate(_ sender: Any) {
20+
NSAnimationContext.runAnimationGroup { context in
21+
context.allowsImplicitAnimation = true
22+
context.duration = 0.5
23+
let value = CGFloat(arc4random_uniform(50))
24+
box.animator().borderWidth = value
25+
view.animator().borderWidth = value
26+
}
27+
}
28+
}
29+

0 commit comments

Comments
 (0)