diff --git a/WPI Calendar Event Creator.xcodeproj/project.pbxproj b/WPI Calendar Event Creator.xcodeproj/project.pbxproj index 8b36b15ce62eba59bcea8347fda532787f602a62..86c488118feef4f284166652147e8fd5ad253312 100644 --- a/WPI Calendar Event Creator.xcodeproj/project.pbxproj +++ b/WPI Calendar Event Creator.xcodeproj/project.pbxproj @@ -364,6 +364,17 @@ C740EDF518AEDD7900C3A701 /* math-formal-weekes.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C740EDF018AEDD7900C3A701 /* math-formal-weekes.jpg */; }; C740EDF618AEDD7900C3A701 /* Homer_Walker_rdax_161x242.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C740EDF118AEDD7900C3A701 /* Homer_Walker_rdax_161x242.jpg */; }; C740EDF718AEDD7900C3A701 /* math-formal-darko.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C740EDF218AEDD7900C3A701 /* math-formal-darko.jpg */; }; + C74BF55918E37E9E00856171 /* WPIPageContentViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = C74BF55818E37E9E00856171 /* WPIPageContentViewController.m */; }; + C74BF56818E384B000856171 /* WPITutorialViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = C74BF56718E384B000856171 /* WPITutorialViewController.m */; }; + C74BF57918E3973300856171 /* tutorial.plist in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57818E3973300856171 /* tutorial.plist */; }; + C74BF57B18E3B95800856171 /* tutorial1.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57A18E3B95800856171 /* tutorial1.png */; }; + C74BF58218E3BB4F00856171 /* tutorial2.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57C18E3BB4F00856171 /* tutorial2.png */; }; + C74BF58318E3BB4F00856171 /* tutorial3.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57D18E3BB4F00856171 /* tutorial3.png */; }; + C74BF58418E3BB4F00856171 /* tutorial4.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57E18E3BB4F00856171 /* tutorial4.png */; }; + C74BF58518E3BB4F00856171 /* tutorial5.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF57F18E3BB4F00856171 /* tutorial5.png */; }; + C74BF58618E3BB4F00856171 /* tutorial6.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF58018E3BB4F00856171 /* tutorial6.png */; }; + C74BF58718E3BB4F00856171 /* tutorial7.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF58118E3BB4F00856171 /* tutorial7.png */; }; + C74BF58918E3BF3B00856171 /* tutorial0.png in Resources */ = {isa = PBXBuildFile; fileRef = C74BF58818E3BF3B00856171 /* tutorial0.png */; }; C751D4DA18AB046600CFA0FF /* camesano-formal.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C751D4D918AB046600CFA0FF /* camesano-formal.jpg */; }; C751D4DC18AB04B900CFA0FF /* clark-formal.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C751D4DB18AB04B900CFA0FF /* clark-formal.jpg */; }; C751D4DE18AB04F500CFA0FF /* Ravi_Recent_rdax_161x179.jpg in Resources */ = {isa = PBXBuildFile; fileRef = C751D4DD18AB04F500CFA0FF /* Ravi_Recent_rdax_161x179.jpg */; }; @@ -866,6 +877,19 @@ C740EDF018AEDD7900C3A701 /* math-formal-weekes.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "math-formal-weekes.jpg"; sourceTree = "<group>"; }; C740EDF118AEDD7900C3A701 /* Homer_Walker_rdax_161x242.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = Homer_Walker_rdax_161x242.jpg; sourceTree = "<group>"; }; C740EDF218AEDD7900C3A701 /* math-formal-darko.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "math-formal-darko.jpg"; sourceTree = "<group>"; }; + C74BF55718E37E9E00856171 /* WPIPageContentViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WPIPageContentViewController.h; sourceTree = "<group>"; }; + C74BF55818E37E9E00856171 /* WPIPageContentViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WPIPageContentViewController.m; sourceTree = "<group>"; }; + C74BF56618E384B000856171 /* WPITutorialViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WPITutorialViewController.h; sourceTree = "<group>"; }; + C74BF56718E384B000856171 /* WPITutorialViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WPITutorialViewController.m; sourceTree = "<group>"; }; + C74BF57818E3973300856171 /* tutorial.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = tutorial.plist; sourceTree = "<group>"; }; + C74BF57A18E3B95800856171 /* tutorial1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial1.png; sourceTree = "<group>"; }; + C74BF57C18E3BB4F00856171 /* tutorial2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial2.png; sourceTree = "<group>"; }; + C74BF57D18E3BB4F00856171 /* tutorial3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial3.png; sourceTree = "<group>"; }; + C74BF57E18E3BB4F00856171 /* tutorial4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial4.png; sourceTree = "<group>"; }; + C74BF57F18E3BB4F00856171 /* tutorial5.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial5.png; sourceTree = "<group>"; }; + C74BF58018E3BB4F00856171 /* tutorial6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial6.png; sourceTree = "<group>"; }; + C74BF58118E3BB4F00856171 /* tutorial7.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial7.png; sourceTree = "<group>"; }; + C74BF58818E3BF3B00856171 /* tutorial0.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = tutorial0.png; sourceTree = "<group>"; }; C751D4D918AB046600CFA0FF /* camesano-formal.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "camesano-formal.jpg"; sourceTree = "<group>"; }; C751D4DB18AB04B900CFA0FF /* clark-formal.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = "clark-formal.jpg"; sourceTree = "<group>"; }; C751D4DD18AB04F500CFA0FF /* Ravi_Recent_rdax_161x179.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = Ravi_Recent_rdax_161x179.jpg; sourceTree = "<group>"; }; @@ -1177,6 +1201,7 @@ 2C4910081846D6E400440D04 /* Controller */ = { isa = PBXGroup; children = ( + C74BF55618E37E7000856171 /* Tutorial Controller */, C7AF097018DA5E0800AD442B /* Settings */, 2C371BA3185442B600752C45 /* Notes View */, 2CB3D042184DA6B1004C3CAF /* Friend And Custom View */, @@ -1227,6 +1252,7 @@ 2C4910111846DA3500440D04 /* Model */ = { isa = PBXGroup; children = ( + C74BF57718E3972400856171 /* Tutorial */, 2C3BEE8D1859489000BC6753 /* Design */, 2C0DAA95184ADFF000DCC8B8 /* Setup Icons */, 2C4910271846EC5200440D04 /* Buildings' Photos */, @@ -1687,6 +1713,41 @@ name = PLISTs; sourceTree = "<group>"; }; + C74BF55618E37E7000856171 /* Tutorial Controller */ = { + isa = PBXGroup; + children = ( + C74BF55718E37E9E00856171 /* WPIPageContentViewController.h */, + C74BF55818E37E9E00856171 /* WPIPageContentViewController.m */, + C74BF56618E384B000856171 /* WPITutorialViewController.h */, + C74BF56718E384B000856171 /* WPITutorialViewController.m */, + ); + name = "Tutorial Controller"; + sourceTree = "<group>"; + }; + C74BF55D18E381C100856171 /* Tutorial Pictures */ = { + isa = PBXGroup; + children = ( + C74BF58818E3BF3B00856171 /* tutorial0.png */, + C74BF57A18E3B95800856171 /* tutorial1.png */, + C74BF57C18E3BB4F00856171 /* tutorial2.png */, + C74BF57D18E3BB4F00856171 /* tutorial3.png */, + C74BF57E18E3BB4F00856171 /* tutorial4.png */, + C74BF57F18E3BB4F00856171 /* tutorial5.png */, + C74BF58018E3BB4F00856171 /* tutorial6.png */, + C74BF58118E3BB4F00856171 /* tutorial7.png */, + ); + name = "Tutorial Pictures"; + sourceTree = "<group>"; + }; + C74BF57718E3972400856171 /* Tutorial */ = { + isa = PBXGroup; + children = ( + C74BF55D18E381C100856171 /* Tutorial Pictures */, + C74BF57818E3973300856171 /* tutorial.plist */, + ); + name = Tutorial; + sourceTree = "<group>"; + }; C751D4D818AB044F00CFA0FF /* Chemical Engineering */ = { isa = PBXGroup; children = ( @@ -1947,6 +2008,7 @@ C751D50918AB0AC000CFA0FF /* emmert_formal_profile.jpg in Resources */, C751D4F018AB06F300CFA0FF /* mardilovich-informal.jpg in Resources */, C740ED8618AED34700C3A701 /* afas_rdax_300x200.jpg in Resources */, + C74BF58218E3BB4F00856171 /* tutorial2.png in Resources */, C740ECF818AEC31400C3A701 /* Yuxiang_Liu_rdax_161x160.jpg in Resources */, 2C8D94761888063D00F4EE7B /* reeta-large_rdax_161x242.jpg in Resources */, C740EC9418AEC0E900C3A701 /* math-profile-tang.jpg in Resources */, @@ -2023,6 +2085,7 @@ C740EC7318AEBEB800C3A701 /* lae-vaz-profile.jpg in Resources */, C740EC7518AEBEB800C3A701 /* ess-profile-shockey.jpg in Resources */, 2C49102B1846EE6400440D04 /* cc.jpg in Resources */, + C74BF57B18E3B95800856171 /* tutorial1.png in Resources */, C740EDF518AEDD7900C3A701 /* math-formal-weekes.jpg in Resources */, C740EC4918AEBD3E00C3A701 /* huas-ljungquist-formal.jpg in Resources */, C740ECF218AEC31400C3A701 /* JBlandino_020206_rdax_161x136.jpg in Resources */, @@ -2097,6 +2160,7 @@ C740EDF618AEDD7900C3A701 /* Homer_Walker_rdax_161x242.jpg in Resources */, C740ED5918AEC81F00C3A701 /* new-faculty-profile-rice.jpg in Resources */, 2C3BEE8818593EA900BC6753 /* rrr.png in Resources */, + C74BF58718E3BB4F00856171 /* tutorial7.png in Resources */, C740ED7218AECD4600C3A701 /* ssps-smith-profile.jpg in Resources */, C740ECD618AEC31400C3A701 /* me-sisson-profile.jpg in Resources */, C740EDB618AED63F00C3A701 /* olin_rdax_300x200.jpg in Resources */, @@ -2146,6 +2210,7 @@ C740ED7118AECD4600C3A701 /* Stapleton_Informal-001_rdax_161x121.jpg in Resources */, C740ED8E18AED3BA00C3A701 /* boynton_rdax_300x200.jpg in Resources */, C740ECF018AEC31400C3A701 /* me-chierichetti-profile.jpg in Resources */, + C74BF58318E3BB4F00856171 /* tutorial3.png in Resources */, C740ECFB18AEC36500C3A701 /* me-demetriou-profile.jpg in Resources */, C740EC1118AE96E100C3A701 /* fac-clancy2.jpg in Resources */, C740EC6218AEBD3E00C3A701 /* hua-barton-profile.jpg in Resources */, @@ -2192,6 +2257,7 @@ C751D58018AB172800CFA0FF /* cs-formal-ward.jpg in Resources */, C740EC1C18AEB83B00C3A701 /* fpe-simeoni-profile.jpg in Resources */, C751D50318AB09FB00CFA0FF /* connors_formal_profile.jpg in Resources */, + C74BF57918E3973300856171 /* tutorial.plist in Resources */, C740ECEF18AEC31400C3A701 /* me-cyr-profile.jpg in Resources */, C740EDC018AED6D600C3A701 /* salisbury_rdax_300x200.jpg in Resources */, C740EC7918AEBEB800C3A701 /* cdehner-igsd.jpg in Resources */, @@ -2306,6 +2372,7 @@ C751D53818AB0FD000CFA0FF /* hua-salazar-profile.jpg in Resources */, C740EDEA18AEDCB700C3A701 /* hua-rivera-profile.jpg in Resources */, C740ED4518AEC81F00C3A701 /* wstitt.jpg in Resources */, + C74BF58618E3BB4F00856171 /* tutorial6.png in Resources */, C740ED3F18AEC81F00C3A701 /* vance-wilson-large_rdax_161x193.jpg in Resources */, C740EDA418AED53000C3A701 /* gordon_rdax_300x200.jpg in Resources */, C740ED3C18AEC81F00C3A701 /* zhu-faclisting.jpg in Resources */, @@ -2320,6 +2387,7 @@ C740EDF718AEDD7900C3A701 /* math-formal-darko.jpg in Resources */, 2C490FDD1846A99B00440D04 /* Main.storyboard in Resources */, C740EC5118AEBD3E00C3A701 /* hua-farbrook-profile.jpg in Resources */, + C74BF58918E3BF3B00856171 /* tutorial0.png in Resources */, C740ED9A18AED49500C3A701 /* easthall_rdax_300x225.jpg in Resources */, C751D57E18AB16FD00CFA0FF /* cs-venkatasubramanian-profile.jpg in Resources */, C740ED7418AECD4600C3A701 /* ess-profile-saeed.jpg in Resources */, @@ -2331,11 +2399,13 @@ C740ECE318AEC31400C3A701 /* me-liang-profile.jpg in Resources */, C751D54E18AB124500CFA0FF /* cs-profile-eltabakh.jpg in Resources */, C740ED5418AEC81F00C3A701 /* gonsalves-edward09_rdax_161x242.jpg in Resources */, + C74BF58418E3BB4F00856171 /* tutorial4.png in Resources */, C740ED9018AED3D800C3A701 /* cc_rdax_300x200.jpg in Resources */, C740EDAE18AED5CD00C3A701 /* institute-picture1.jpg in Resources */, C740ECF518AEC31400C3A701 /* me-ault-profile.jpg in Resources */, C740EC1E18AEB83B00C3A701 /* milosh-informal.jpg in Resources */, C740ED4418AEC81F00C3A701 /* dianestronglarge.jpg in Resources */, + C74BF58518E3BB4F00856171 /* tutorial5.png in Resources */, C740ECE418AEC31400C3A701 /* me-lados-profile.jpg in Resources */, C751D56018AB143600CFA0FF /* cs-profile-leblanc.jpg in Resources */, 2C8D94701888058700F4EE7B /* BBT_Oates_candid_rdax_161x242.jpg in Resources */, @@ -2365,6 +2435,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + C74BF55918E37E9E00856171 /* WPIPageContentViewController.m in Sources */, C7A810921899FE7F00E087F4 /* WPIDepartmentCell.m in Sources */, 2C3BEE8018581A0000BC6753 /* NSString+Screening.m in Sources */, C7E9A4ED189A10970076A4D5 /* WPIProfDeptViewController.m in Sources */, @@ -2383,6 +2454,7 @@ 2C490FE01846A99B00440D04 /* WPIViewController.m in Sources */, 2C5EDFBD184AD40600EA7D41 /* WPISegmentedCell.m in Sources */, 2C4910101846D8BD00440D04 /* WPIProfessorViewController.m in Sources */, + C74BF56818E384B000856171 /* WPITutorialViewController.m in Sources */, 2C4910241846E9CB00440D04 /* WPIBuildingCell.m in Sources */, 2C490FDA1846A99B00440D04 /* WPIAppDelegate.m in Sources */, C7AF096F18DA4FEC00AD442B /* WPILoadingCell.m in Sources */, diff --git a/WPI Calendar Event Creator/Base.lproj/Main.storyboard b/WPI Calendar Event Creator/Base.lproj/Main.storyboard index 0631cf5c11bfab34b388fe3a6223ac5ce77812ea..522ab6c6c3e55c793a4d9b1bb37221c93385d8cf 100644 --- a/WPI Calendar Event Creator/Base.lproj/Main.storyboard +++ b/WPI Calendar Event Creator/Base.lproj/Main.storyboard @@ -18,74 +18,7 @@ </navigationController> <placeholder placeholderIdentifier="IBFirstResponder" id="qgU-Tr-EG0" userLabel="First Responder" sceneMemberID="firstResponder"/> </objects> - <point key="canvasLocation" x="-225" y="1905"/> - </scene> - <!--Settings Controller - Settings--> - <scene sceneID="Sty-Or-FiO"> - <objects> - <tableViewController id="8Bh-Wm-KQ0" customClass="WPISettingsController" sceneMemberID="viewController"> - <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="UP7-x3-sCQ"> - <rect key="frame" x="0.0" y="0.0" width="320" height="568"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/> - <sections> - <tableViewSection id="qWc-Me-Cwg"> - <cells> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" textLabel="alX-o1-pn3" style="IBUITableViewCellStyleDefault" id="AZ6-UB-HuR"> - <rect key="frame" x="0.0" y="99" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="AZ6-UB-HuR" id="74s-xZ-ihg"> - <rect key="frame" x="0.0" y="0.0" width="287" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Favorite Porfessors" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="alX-o1-pn3"> - <rect key="frame" x="15" y="0.0" width="270" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <fontDescription key="fontDescription" type="system" pointSize="18"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <nil key="highlightedColor"/> - </label> - </subviews> - </tableViewCellContentView> - <connections> - <segue destination="x9b-4w-3m6" kind="push" id="8t7-kh-L34"/> - </connections> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="2Gd-xQ-SOy"> - <rect key="frame" x="0.0" y="143" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="2Gd-xQ-SOy" id="RSS-pS-yfb"> - <rect key="frame" x="0.0" y="0.0" width="320" height="43"/> - <autoresizingMask key="autoresizingMask"/> - </tableViewCellContentView> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="V6d-x4-2wN"> - <rect key="frame" x="0.0" y="187" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="V6d-x4-2wN" id="IyQ-z6-0IL"> - <rect key="frame" x="0.0" y="0.0" width="320" height="43"/> - <autoresizingMask key="autoresizingMask"/> - </tableViewCellContentView> - </tableViewCell> - </cells> - </tableViewSection> - </sections> - <connections> - <outlet property="dataSource" destination="8Bh-Wm-KQ0" id="Qhp-nl-UzN"/> - <outlet property="delegate" destination="8Bh-Wm-KQ0" id="Abr-Na-LKU"/> - </connections> - </tableView> - <navigationItem key="navigationItem" title="Settings" id="3eV-Fx-m4A"> - <barButtonItem key="rightBarButtonItem" style="done" systemItem="done" id="yAA-SV-rNc"> - <connections> - <action selector="doneButtonPressed:" destination="8Bh-Wm-KQ0" id="bHX-iB-hie"/> - </connections> - </barButtonItem> - </navigationItem> - </tableViewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="Fdc-0i-rFW" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="252" y="379"/> + <point key="canvasLocation" x="-1067" y="1881"/> </scene> <!--Navigation Controller--> <scene sceneID="vhz-Yb-oN8"> @@ -95,12 +28,89 @@ <autoresizingMask key="autoresizingMask"/> </navigationBar> <connections> - <segue destination="8Bh-Wm-KQ0" kind="relationship" relationship="rootViewController" id="IlG-Lc-WoL"/> + <segue destination="x9b-4w-3m6" kind="relationship" relationship="rootViewController" id="5Wf-in-XPK"/> </connections> </navigationController> <placeholder placeholderIdentifier="IBFirstResponder" id="wAX-WQ-UR0" userLabel="First Responder" sceneMemberID="firstResponder"/> </objects> - <point key="canvasLocation" x="-355" y="379"/> + <point key="canvasLocation" x="203" y="379"/> + </scene> + <!--Page View Controller--> + <scene sceneID="8S0-jx-aDK"> + <objects> + <pageViewController storyboardIdentifier="PageViewController" autoresizesArchivedViewToFullSize="NO" transitionStyle="scroll" navigationOrientation="horizontal" spineLocation="none" id="xYM-UR-pSN" sceneMemberID="viewController"/> + <placeholder placeholderIdentifier="IBFirstResponder" id="YDR-66-B4c" userLabel="First Responder" sceneMemberID="firstResponder"/> + </objects> + <point key="canvasLocation" x="-1855" y="1098"/> + </scene> + <!--Tutorial View Controller--> + <scene sceneID="nc4-qe-4Up"> + <objects> + <viewController id="5bJ-L8-AOy" customClass="WPITutorialViewController" sceneMemberID="viewController"> + <layoutGuides> + <viewControllerLayoutGuide type="top" id="4dj-Ez-3LZ"/> + <viewControllerLayoutGuide type="bottom" id="Z5y-U3-heC"/> + </layoutGuides> + <view key="view" contentMode="scaleToFill" id="zgR-Pb-ycx"> + <rect key="frame" x="0.0" y="0.0" width="320" height="568"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <subviews> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="w5H-Qc-G6e"> + <rect key="frame" x="142" y="528" width="37" height="30"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <state key="normal" title="Done"> + <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> + </state> + <connections> + <action selector="doneButtonPressed:" destination="5bJ-L8-AOy" eventType="touchUpInside" id="qW5-jM-Wz5"/> + </connections> + </button> + </subviews> + <color key="backgroundColor" red="0.99215692280000001" green="0.54901963470000004" blue="0.41176474089999998" alpha="1" colorSpace="deviceRGB"/> + <constraints> + <constraint firstItem="w5H-Qc-G6e" firstAttribute="centerX" secondItem="zgR-Pb-ycx" secondAttribute="centerX" id="O9U-gw-Ujx"/> + <constraint firstItem="Z5y-U3-heC" firstAttribute="top" secondItem="w5H-Qc-G6e" secondAttribute="bottom" constant="10" id="Oad-dF-3px"/> + </constraints> + </view> + </viewController> + <placeholder placeholderIdentifier="IBFirstResponder" id="gdb-hG-4P2" userLabel="First Responder" sceneMemberID="firstResponder"/> + </objects> + <point key="canvasLocation" x="-1338" y="899"/> + </scene> + <!--Page Content View Controller--> + <scene sceneID="4fT-vT-4kt"> + <objects> + <viewController storyboardIdentifier="PageContentViewController" id="ffa-Qp-EkG" customClass="WPIPageContentViewController" sceneMemberID="viewController"> + <layoutGuides> + <viewControllerLayoutGuide type="top" id="U6t-zW-2Uc"/> + <viewControllerLayoutGuide type="bottom" id="fh3-hx-Xte"/> + </layoutGuides> + <view key="view" contentMode="scaleToFill" id="JjG-zV-28j"> + <rect key="frame" x="0.0" y="0.0" width="320" height="568"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <subviews> + <imageView opaque="NO" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="WCH-SK-7hn"> + <rect key="frame" x="37" y="176" width="246" height="442"/> + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> + </imageView> + <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Description" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="5" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="280" translatesAutoresizingMaskIntoConstraints="NO" id="g7f-kF-Kuj"> + <rect key="frame" x="20" y="20" width="280" height="98"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <fontDescription key="fontDescription" type="system" pointSize="17"/> + <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> + <nil key="highlightedColor"/> + </label> + </subviews> + <color key="backgroundColor" red="0.99215692280000001" green="0.54901963470000004" blue="0.41176474089999998" alpha="1" colorSpace="deviceRGB"/> + </view> + <connections> + <outlet property="imageView" destination="WCH-SK-7hn" id="cjF-Y3-H9f"/> + <outlet property="titleLabel" destination="g7f-kF-Kuj" id="VYZ-Yj-ttD"/> + </connections> + </viewController> + <placeholder placeholderIdentifier="IBFirstResponder" id="GLa-Ai-y2y" userLabel="First Responder" sceneMemberID="firstResponder"/> + </objects> + <point key="canvasLocation" x="-1855" y="433"/> </scene> <!--Table View Controller - Setup--> <scene sceneID="hU8-F9-EJv"> @@ -390,18 +400,15 @@ </connections> </tableView> <navigationItem key="navigationItem" title="Setup" id="UIo-c6-fxa"> - <barButtonItem key="rightBarButtonItem" title="Settings" id="xXg-o2-M6J"> - <button key="customView" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" id="nhM-Ig-QaK"> - <rect key="frame" x="233" y="5" width="71" height="33"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <fontDescription key="fontDescription" type="system" pointSize="15"/> - <state key="normal" title="Settings"> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <segue destination="ftB-b2-2ES" kind="modal" id="H0T-Nl-BD0"/> - </connections> - </button> + <barButtonItem key="leftBarButtonItem" title="Tutorial" id="Yik-WT-KCB"> + <connections> + <segue destination="5bJ-L8-AOy" kind="modal" identifier="setToTut" id="s6x-B3-nV4"/> + </connections> + </barButtonItem> + <barButtonItem key="rightBarButtonItem" title="Favorites" id="SN6-gA-F3o"> + <connections> + <action selector="favoritesButtonPressed:" destination="8jy-oe-KnX" id="LJF-Zb-5N4"/> + </connections> </barButtonItem> </navigationItem> <connections> @@ -420,11 +427,12 @@ <segue destination="ZH9-7k-a96" kind="push" identifier="TypeToFriendSegue" id="ON9-Of-yNd"/> <segue destination="WCo-rf-QLU" kind="push" identifier="TypeToCustomSegue" id="BNU-uE-JBB"/> <segue destination="izA-I5-AI8" kind="push" identifier="TypeToProfessorSegue" id="SuI-1w-32F"/> + <segue destination="ftB-b2-2ES" kind="modal" identifier="setToFav" id="oj9-Iw-zu1"/> </connections> </tableViewController> <placeholder placeholderIdentifier="IBFirstResponder" id="7Ls-6y-Qbw" userLabel="First Responder" sceneMemberID="firstResponder"/> </objects> - <point key="canvasLocation" x="289" y="1884"/> + <point key="canvasLocation" x="-511" y="1876"/> </scene> <!--Professor View Controller - Appointment with Professor--> <scene sceneID="aaj-qf-FuI"> @@ -1420,6 +1428,11 @@ <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> </view> <navigationItem key="navigationItem" title="Favorite Professors" id="92v-Mg-y3p"> + <barButtonItem key="leftBarButtonItem" title="Done" id="9q2-a6-8Yk"> + <connections> + <action selector="doneButtonPressed:" destination="x9b-4w-3m6" id="RnR-jD-z4i"/> + </connections> + </barButtonItem> <barButtonItem key="rightBarButtonItem" systemItem="add" id="qMd-YN-ZaS"> <connections> <segue destination="ywr-qz-FYR" kind="modal" id="eck-vy-L7k"/> @@ -2004,7 +2017,7 @@ AQABAAEAAQAB//+dkAEA//+PgAAE//+dkAEI//+dkAEMUERUAFBTVABQV1QAUFBUAAAAAAEAAAABA <simulatedScreenMetrics key="destination" type="retina4"/> </simulatedMetricsContainer> <inferredMetricsTieBreakers> - <segue reference="h2T-3x-Eyw"/> <segue reference="a1q-7a-6BE"/> + <segue reference="h2T-3x-Eyw"/> </inferredMetricsTieBreakers> </document> diff --git a/WPI Calendar Event Creator/WPIAppDelegate.m b/WPI Calendar Event Creator/WPIAppDelegate.m index 1729822498c3f23e019cddaa82bad1a122001236..6e16a288c74cd4144e45811cb650d4479f54d71e 100644 --- a/WPI Calendar Event Creator/WPIAppDelegate.m +++ b/WPI Calendar Event Creator/WPIAppDelegate.m @@ -7,6 +7,7 @@ // #import "WPIAppDelegate.h" +#import "WPIModel.h" @implementation WPIAppDelegate @@ -20,8 +21,11 @@ NSString *favoritesPath = [documentsDirectory stringByAppendingPathComponent:@"favorites.plist"]; if ([fileManager fileExistsAtPath:favoritesPath] == NO) { + [WPIModel sharedDataModel].firstLaunch = YES; NSString *resourcePath = [[NSBundle mainBundle] pathForResource:@"favorites" ofType:@"plist"]; [fileManager copyItemAtPath:resourcePath toPath:favoritesPath error:&error]; + } else { + [WPIModel sharedDataModel].firstLaunch = NO; } // Override point for customization after application launch. diff --git a/WPI Calendar Event Creator/WPIFavoritesViewController.m b/WPI Calendar Event Creator/WPIFavoritesViewController.m index 02df391da16eb0e44afac5815e69e7052999f287..fb094a0e31b8b3aad232ca3ad27f374c1f47bd31 100644 --- a/WPI Calendar Event Creator/WPIFavoritesViewController.m +++ b/WPI Calendar Event Creator/WPIFavoritesViewController.m @@ -14,6 +14,7 @@ @property (weak, nonatomic) IBOutlet UITableView *tableView; - (IBAction)editButtonPressed:(UIBarButtonItem *)sender; @property (weak, nonatomic) IBOutlet UIBarButtonItem *editButton; +- (IBAction)doneButtonPressed:(UIBarButtonItem *)sender; @end @@ -100,4 +101,8 @@ [self.editButton setTitle:@"Done"]; } } +- (IBAction)doneButtonPressed:(UIBarButtonItem *)sender { + [WPIModel sharedDataModel].inFavorites = NO; + [self.navigationController dismissViewControllerAnimated:YES completion:nil]; +} @end diff --git a/WPI Calendar Event Creator/WPIModel.h b/WPI Calendar Event Creator/WPIModel.h index 9f319bc961adc3a703dbfa15f1c7f46150b403ab..71854ff8a6d614173df2f558c4e1599f426d5eb1 100644 --- a/WPI Calendar Event Creator/WPIModel.h +++ b/WPI Calendar Event Creator/WPIModel.h @@ -18,6 +18,9 @@ @property (strong, nonatomic) WPITableViewController *mainTable; @property (nonatomic) BOOL inFavorites; +@property (nonatomic) BOOL firstLaunch; + +@property (strong, nonatomic) NSArray *tutorials; @property (strong, nonatomic) NSMutableArray *professors; @property (strong, nonatomic) NSMutableArray *profsByDepts; diff --git a/WPI Calendar Event Creator/WPIModel.m b/WPI Calendar Event Creator/WPIModel.m index 718d134d29b402a034bfa101248ee955c7c8204f..834982fd7474319a67d466021ca14866d4b90ab1 100644 --- a/WPI Calendar Event Creator/WPIModel.m +++ b/WPI Calendar Event Creator/WPIModel.m @@ -45,6 +45,12 @@ static WPIModel *sharedDataModel = nil; tmp_data = [[NSMutableArray alloc] initWithContentsOfFile:filePath]; self.departments = tmp_data; + filePath = [[NSBundle mainBundle] pathForResource:@"tutorial" ofType:@"plist"]; + NSArray *tmp_data_static = [[NSArray alloc] initWithContentsOfFile:filePath]; + self.tutorials = tmp_data_static; + + NSLog(@"T[0]: %@", NSStringFromClass([self.tutorials[0] class])); + filePath = [[NSBundle mainBundle] pathForResource:@"buildings" ofType:@"plist"]; tmp_data = [[NSMutableArray alloc] initWithContentsOfFile:filePath]; self.buildings = tmp_data; @@ -334,7 +340,7 @@ static WPIModel *sharedDataModel = nil; [mailViewController setToRecipients:@[email]]; [mailViewController setSubject:@"Appointment reminder"]; - NSString *message = [NSString stringWithFormat:@"Dear professor %@:\n\n I am just writing you a reminder about an appointment we set on %@. \n\n Thank you!\n\n(This is an automated email from WPI Calendar Events Creator app)\n", [prof valueForKey:@"Name"], [self getDateForPurpose:4]]; + NSString *message = [NSString stringWithFormat:@"Dear Professor %@:\n\n I am just writing you a reminder about an appointment we set on %@. \n\n Thank you!\n\n(This is an automated email from WPI Calendar Events Creator app)\n", [prof valueForKey:@"Name"], [self getDateForPurpose:4]]; [mailViewController setMessageBody:message isHTML:NO]; [self.mainTable sendEmail:mailViewController]; diff --git a/WPI Calendar Event Creator/WPIPageContentViewController.h b/WPI Calendar Event Creator/WPIPageContentViewController.h new file mode 100644 index 0000000000000000000000000000000000000000..ed8bfbb9a2d83313ea7196ba2c2d1028492bb28e --- /dev/null +++ b/WPI Calendar Event Creator/WPIPageContentViewController.h @@ -0,0 +1,17 @@ +// +// WPIPageContentViewController.h +// WPI Calendar Event Creator +// +// Created by Dmytro Bogatov on 3/26/14. +// Copyright (c) 2014 Dima4ka. All rights reserved. +// + +#import <UIKit/UIKit.h> + +@interface WPIPageContentViewController : UIViewController + +@property (nonatomic) NSUInteger pageIndex; +@property (strong, nonatomic) NSString *titleText; +@property (strong, nonatomic) NSString *imageFile; + +@end diff --git a/WPI Calendar Event Creator/WPIPageContentViewController.m b/WPI Calendar Event Creator/WPIPageContentViewController.m new file mode 100644 index 0000000000000000000000000000000000000000..4918494ccbc608e65f88b81fe52f5b20f74e6fdf --- /dev/null +++ b/WPI Calendar Event Creator/WPIPageContentViewController.m @@ -0,0 +1,56 @@ +// +// WPIPageContentViewController.m +// WPI Calendar Event Creator +// +// Created by Dmytro Bogatov on 3/26/14. +// Copyright (c) 2014 Dima4ka. All rights reserved. +// + +#import "WPIPageContentViewController.h" + +@interface WPIPageContentViewController () +@property (weak, nonatomic) IBOutlet UIImageView *imageView; +@property (weak, nonatomic) IBOutlet UILabel *titleLabel; + + + +@end + +@implementation WPIPageContentViewController + +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil +{ + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + // Custom initialization + } + return self; +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; + // Do any additional setup after loading the view. + + self.imageView.image = [UIImage imageNamed:[self.imageFile stringByAppendingString:@".png"]]; + self.titleLabel.text = self.titleText; +} + +- (void)didReceiveMemoryWarning +{ + [super didReceiveMemoryWarning]; + // Dispose of any resources that can be recreated. +} + +/* +#pragma mark - Navigation + +// In a storyboard-based application, you will often want to do a little preparation before navigation +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender +{ + // Get the new view controller using [segue destinationViewController]. + // Pass the selected object to the new view controller. +} +*/ + +@end diff --git a/WPI Calendar Event Creator/WPITableViewController.m b/WPI Calendar Event Creator/WPITableViewController.m index b5497b951401507221c6fe83d6880bd1197033ef..6832f8091d89670b7aec488a406c5133886ab207 100644 --- a/WPI Calendar Event Creator/WPITableViewController.m +++ b/WPI Calendar Event Creator/WPITableViewController.m @@ -19,6 +19,7 @@ @property (weak, nonatomic) IBOutlet UILabel *alertCellSubtitleLabel; @property (weak, nonatomic) IBOutlet UILabel *notesCellSubtitleLabel; @property (weak, nonatomic) IBOutlet UILabel *dateCellConflictLabel; +- (IBAction)favoritesButtonPressed:(id)sender; @end @@ -38,6 +39,10 @@ - (void)viewDidLoad { [super viewDidLoad]; + + if ([WPIModel sharedDataModel].firstLaunch) { + [self performSegueWithIdentifier:@"setToTut" sender:self]; + } } -(void)viewWillAppear:(BOOL)animated @@ -150,4 +155,8 @@ [self dismissViewControllerAnimated:YES completion:nil]; } +- (IBAction)favoritesButtonPressed:(id)sender { + [WPIModel sharedDataModel].inFavorites = YES; + [self performSegueWithIdentifier:@"setToFav" sender:self]; +} @end diff --git a/WPI Calendar Event Creator/WPITutorialViewController.h b/WPI Calendar Event Creator/WPITutorialViewController.h new file mode 100644 index 0000000000000000000000000000000000000000..0b42b9c0afa91c45c6cd98c4f6431ba7e0dc7d83 --- /dev/null +++ b/WPI Calendar Event Creator/WPITutorialViewController.h @@ -0,0 +1,13 @@ +// +// WPITutorialViewController.h +// WPI Calendar Event Creator +// +// Created by Dmytro Bogatov on 3/26/14. +// Copyright (c) 2014 Dima4ka. All rights reserved. +// + +#import <UIKit/UIKit.h> + +@interface WPITutorialViewController : UIViewController <UIPageViewControllerDataSource> + +@end diff --git a/WPI Calendar Event Creator/WPITutorialViewController.m b/WPI Calendar Event Creator/WPITutorialViewController.m new file mode 100644 index 0000000000000000000000000000000000000000..3cc3472d84d42730918eb5b6808860611dd87c69 --- /dev/null +++ b/WPI Calendar Event Creator/WPITutorialViewController.m @@ -0,0 +1,131 @@ +// +// WPITutorialViewController.m +// WPI Calendar Event Creator +// +// Created by Dmytro Bogatov on 3/26/14. +// Copyright (c) 2014 Dima4ka. All rights reserved. +// + +#import "WPITutorialViewController.h" +#import "WPIPageContentViewController.h" +#import "WPIModel.h" + +@interface WPITutorialViewController () + +- (IBAction)doneButtonPressed:(UIButton *)sender; +@property (strong, nonatomic) UIPageViewController *pageViewController; +@property (strong, nonatomic) NSMutableArray *pageTitles; +@property (strong, nonatomic) NSMutableArray *pageImages; + +@end + +@implementation WPITutorialViewController + +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil +{ + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + // Custom initialization + } + return self; +} + +- (void)viewDidLoad +{ + [super viewDidLoad]; + // Do any additional setup after loading the view. + + WPIModel *model = [WPIModel sharedDataModel]; + + self.pageTitles = [[NSMutableArray alloc] initWithCapacity:[model.tutorials count]]; + self.pageImages = [[NSMutableArray alloc] initWithCapacity:[model.tutorials count]]; + + + // Create the data model + for (NSDictionary *dict in model.tutorials) { + [self.pageTitles addObject:[dict objectForKey:@"Text"]]; + [self.pageImages addObject:[dict objectForKey:@"Image"]]; + } + + + // Create page view controller + self.pageViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageViewController"]; + self.pageViewController.dataSource = self; + + WPIPageContentViewController *startingViewController = [self viewControllerAtIndex:0]; + NSArray *viewControllers = @[startingViewController]; + [self.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil]; + + // Change the size of page view controller + self.pageViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height-30); + + [self addChildViewController:self.pageViewController]; + [self.view addSubview:self.pageViewController.view]; + [self.pageViewController didMoveToParentViewController:self]; +} + +- (void)didReceiveMemoryWarning +{ + [super didReceiveMemoryWarning]; + // Dispose of any resources that can be recreated. +} + +- (WPIPageContentViewController *)viewControllerAtIndex:(NSUInteger)index +{ + if (([self.pageTitles count] == 0) || (index >= [self.pageTitles count])) { + return nil; + } + + // Create a new view controller and pass suitable data. + WPIPageContentViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageContentViewController"]; + pageContentViewController.imageFile = self.pageImages[index]; + pageContentViewController.titleText = self.pageTitles[index]; + pageContentViewController.pageIndex = index; + + return pageContentViewController; +} + +#pragma mark - Page View Controller Data Source + +- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController +{ + NSUInteger index = ((WPIPageContentViewController*) viewController).pageIndex; + + if ((index == 0) || (index == NSNotFound)) { + return nil; + } + + index--; + return [self viewControllerAtIndex:index]; +} + +- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController +{ + NSUInteger index = ((WPIPageContentViewController*) viewController).pageIndex; + + if (index == NSNotFound) { + return nil; + } + + index++; + if (index == [self.pageTitles count]) { + return nil; + } + return [self viewControllerAtIndex:index]; +} + +- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController +{ + return [self.pageTitles count]; +} + +- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController +{ + return 0; +} + + +- (IBAction)doneButtonPressed:(UIButton *)sender { + [self dismissViewControllerAnimated:YES completion:nil]; +} +@end diff --git a/WPI Calendar Event Creator/data.plist b/WPI Calendar Event Creator/data.plist index df748c987bff6708316e6737766e00af69a6ab4c..fa2c61b4baa909dc012e4d3958b5a1e7a209623c 100644 --- a/WPI Calendar Event Creator/data.plist +++ b/WPI Calendar Event Creator/data.plist @@ -13,13 +13,13 @@ <key>Type</key> <integer>0</integer> <key>Details Friend</key> - <string>Somewho</string> + <string>Some Friend</string> <key>Details Custom</key> <string>Some custom meeting...</string> <key>Use Custom Professor</key> <integer>1</integer> <key>Custom Professor</key> - <string>Somewho</string> + <string>Some Professor</string> <key>Professor's Index</key> <integer>-1</integer> <key>Use Custom Building</key> diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.18 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.18 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..d0234ac74837d24770c8347226e63821a18f0393 Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.18 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.35 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.35 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..80616a9b905cd0ec578137efa8ac83ebaf442c3e Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 6.31.35 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.09.53 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.09.53 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..5fb28bf0a93488267c52fc571c6507ea01842b7e Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.09.53 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.09 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.09 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..2e0c0a6484b207ec482828cafd9c87f12e911e8c Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.09 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.23 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.23 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..76b1106bd9d07e7b162473b73ffcf6bdb9401ba3 Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.23 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.33 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.33 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..c9fd3e793409b30281b1ed4267301db18c5217ed Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.33 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.42 PM_iphone5s_spacegrey_portrait.png b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.42 PM_iphone5s_spacegrey_portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..8933bf7f5958039b0330eb500fc4c7233cb46a53 Binary files /dev/null and b/WPI Calendar Event Creator/iOS Simulator Screen shot Mar 26, 2014, 7.10.42 PM_iphone5s_spacegrey_portrait.png differ diff --git a/WPI Calendar Event Creator/tutorial.plist b/WPI Calendar Event Creator/tutorial.plist new file mode 100644 index 0000000000000000000000000000000000000000..a357ebbbc94c45c1983a9c5c873f92e797f5ebc1 --- /dev/null +++ b/WPI Calendar Event Creator/tutorial.plist @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<array> + <dict> + <key>Text</key> + <string>Welcome to WPI Calendar Event Creator App!</string> + <key>Image</key> + <string>tutorial0</string> + </dict> + <dict> + <key>Text</key> + <string>Here is the main setup view. You may set some properties of event from here.</string> + <key>Image</key> + <string>tutorial1</string> + </dict> + <dict> + <key>Text</key> + <string>Here is an example of property you may change. Date and duration in this case.</string> + <key>Image</key> + <string>tutorial2</string> + </dict> + <dict> + <key>Text</key> + <string>You may choose professor right from the list! You may set favorite professors from the setup.</string> + <key>Image</key> + <string>tutorial3</string> + </dict> + <dict> + <key>Text</key> + <string>You may search for professor just typing his/her name or surname.</string> + <key>Image</key> + <string>tutorial4</string> + </dict> + <dict> + <key>Text</key> + <string>You may choose building/room from the list, or just tap "Professor's Office". App knows, where it is.</string> + <key>Image</key> + <string>tutorial5</string> + </dict> + <dict> + <key>Text</key> + <string>You may preview the event, you are about to create.</string> + <key>Image</key> + <string>tutorial6</string> + </dict> + <dict> + <key>Text</key> + <string>If you choose professor from the app's database, app may send him/her an email-reminder.</string> + <key>Image</key> + <string>tutorial7</string> + </dict> +</array> +</plist> diff --git a/WPI Calendar Event Creator/tutorial0.png b/WPI Calendar Event Creator/tutorial0.png new file mode 100644 index 0000000000000000000000000000000000000000..9fd679119a1a9a11cc7db072e4372ba1acbfe389 Binary files /dev/null and b/WPI Calendar Event Creator/tutorial0.png differ diff --git a/WPI Calendar Event Creator/tutorial1.png b/WPI Calendar Event Creator/tutorial1.png new file mode 100644 index 0000000000000000000000000000000000000000..b5ced588a7ca62db00b24ae6e259eb772afc3686 Binary files /dev/null and b/WPI Calendar Event Creator/tutorial1.png differ diff --git a/WPI Calendar Event Creator/tutorial2.png b/WPI Calendar Event Creator/tutorial2.png new file mode 100644 index 0000000000000000000000000000000000000000..2f249b038cf8987b244e9d539ada70e4c490bd59 Binary files /dev/null and b/WPI Calendar Event Creator/tutorial2.png differ diff --git a/WPI Calendar Event Creator/tutorial3.png b/WPI Calendar Event Creator/tutorial3.png new file mode 100644 index 0000000000000000000000000000000000000000..b2468d4b05829a1678c5f6f097bfe9112951b184 Binary files /dev/null and b/WPI Calendar Event Creator/tutorial3.png differ diff --git a/WPI Calendar Event Creator/tutorial4.png b/WPI Calendar Event Creator/tutorial4.png new file mode 100644 index 0000000000000000000000000000000000000000..dbded4e7681491fe0161b660ba17cd9cc74850f1 Binary files /dev/null and b/WPI Calendar Event Creator/tutorial4.png differ diff --git a/WPI Calendar Event Creator/tutorial5.png b/WPI Calendar Event Creator/tutorial5.png new file mode 100644 index 0000000000000000000000000000000000000000..d7dfd6fade372488c00defd61b33c84819f0477d Binary files /dev/null and b/WPI Calendar Event Creator/tutorial5.png differ diff --git a/WPI Calendar Event Creator/tutorial6.png b/WPI Calendar Event Creator/tutorial6.png new file mode 100644 index 0000000000000000000000000000000000000000..11bb9f57f7fda5b9addc2efcabfc00b07ad7f29d Binary files /dev/null and b/WPI Calendar Event Creator/tutorial6.png differ diff --git a/WPI Calendar Event Creator/tutorial7.png b/WPI Calendar Event Creator/tutorial7.png new file mode 100644 index 0000000000000000000000000000000000000000..2575a729a841091209c1bc1ab21d9a8680e13e8a Binary files /dev/null and b/WPI Calendar Event Creator/tutorial7.png differ