diff options
author | Siqi LIU <me@siqi.fr> | 2013-07-30 17:54:55 +0200 |
---|---|---|
committer | Siqi LIU <me@siqi.fr> | 2013-07-30 23:25:28 +0200 |
commit | f0326d3249c2e461489877e2d39673ad8968320a (patch) | |
tree | 8373ad7d71bd7f133dfff54bc25d94bd0b8b716a /ios | |
parent | c12137a876dd9405b20c094c99b72c672a161422 (diff) |
iOS remote ported to iPad
Diffstat (limited to 'ios')
-rw-r--r-- | ios/iosremote/ic_launcher.png | bin | 5761 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/ic_launcher.psd | bin | 6581 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/ic_launcher@2x.png | bin | 10224 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/ic_launcher@2x.psd | bin | 83340 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/iosremote/en.lproj/iPhone_autolayout.storyboard | 895 | ||||
-rw-r--r-- | ios/iosremote/iosremote/ic_launcher.png | bin | 8596 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/iosremote/ic_launcher@2x.png | bin | 16827 -> 0 bytes | |||
-rw-r--r-- | ios/iosremote/iosremote/slideShowPreview_vc.h | 15 | ||||
-rw-r--r-- | ios/iosremote/iosremote/slideShowPreview_vc.m | 49 | ||||
-rw-r--r-- | ios/iosremote/iosremote/slideShowSwipeInList.h | 17 | ||||
-rw-r--r-- | ios/iosremote/iosremote/slideShowSwipeInList.m | 253 | ||||
-rw-r--r-- | ios/iosremote/iosremote/slideShow_vc.h | 31 | ||||
-rw-r--r-- | ios/iosremote/iosremote/slideShow_vc.m | 389 |
13 files changed, 0 insertions, 1649 deletions
diff --git a/ios/iosremote/ic_launcher.png b/ios/iosremote/ic_launcher.png Binary files differdeleted file mode 100644 index d39ebd1115c3..000000000000 --- a/ios/iosremote/ic_launcher.png +++ /dev/null diff --git a/ios/iosremote/ic_launcher.psd b/ios/iosremote/ic_launcher.psd Binary files differdeleted file mode 100644 index 508d9475f98c..000000000000 --- a/ios/iosremote/ic_launcher.psd +++ /dev/null diff --git a/ios/iosremote/ic_launcher@2x.png b/ios/iosremote/ic_launcher@2x.png Binary files differdeleted file mode 100644 index 333330893e51..000000000000 --- a/ios/iosremote/ic_launcher@2x.png +++ /dev/null diff --git a/ios/iosremote/ic_launcher@2x.psd b/ios/iosremote/ic_launcher@2x.psd Binary files differdeleted file mode 100644 index 7b50ef96a575..000000000000 --- a/ios/iosremote/ic_launcher@2x.psd +++ /dev/null diff --git a/ios/iosremote/iosremote/en.lproj/iPhone_autolayout.storyboard b/ios/iosremote/iosremote/en.lproj/iPhone_autolayout.storyboard deleted file mode 100644 index 8cd6d614b694..000000000000 --- a/ios/iosremote/iosremote/en.lproj/iPhone_autolayout.storyboard +++ /dev/null @@ -1,895 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="13A510d" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" initialViewController="qoG-TN-hN0"> - <dependencies> - <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/> - </dependencies> - <scenes> - <!--Server list vc - Connect--> - <scene sceneID="5"> - <objects> - <viewController id="2" customClass="server_list_vc" sceneMemberID="viewController"> - <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" showsSelectionImmediatelyOnTouchBegin="NO" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="naQ-T4-jWV"> - <rect key="frame" x="0.0" y="64" width="320" height="504"/> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - <prototypes> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="server_item_cell" editingAccessoryType="disclosureIndicator" textLabel="Rg3-PU-OuS" detailTextLabel="9Mc-gD-acc" style="IBUITableViewCellStyleValue1" id="Pvl-Uw-Ghs"> - <rect key="frame" x="0.0" y="22" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="0.0" y="0.0" width="320" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Title" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Rg3-PU-OuS"> - <rect key="frame" x="10" y="11" width="35" height="21"/> - <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> - </label> - <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Detail" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9Mc-gD-acc"> - <rect key="frame" x="266" y="11" width="44" height="21"/> - <fontDescription key="fontDescription" type="system" pointSize="17"/> - <color key="textColor" red="0.21960784310000001" green="0.3294117647" blue="0.52941176469999995" alpha="1" colorSpace="calibratedRGB"/> - <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> - </label> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - </prototypes> - <connections> - <outlet property="dataSource" destination="2" id="dcg-jo-7eE"/> - <outlet property="delegate" destination="2" id="owZ-Ow-VEc"/> - </connections> - </tableView> - <navigationItem key="navigationItem" title="Connect" id="yR1-m8-JWN"> - <barButtonItem key="rightBarButtonItem" systemItem="add" id="bHy-yX-SPg"> - <connections> - <segue destination="maT-Bx-l5y" kind="push" identifier="create_new_server" id="UYr-8d-fk5"/> - </connections> - </barButtonItem> - </navigationItem> - <connections> - <outlet property="serverTable" destination="naQ-T4-jWV" id="hd3-Vm-fk6"/> - <segue destination="UPe-3R-KdQ" kind="push" identifier="pinValidation" id="UQQ-pV-3o3"/> - <segue destination="vs3-ES-U9h" kind="push" identifier="SlideShowPreview" id="YBj-zE-J7L"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="4" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="80" y="-294"/> - </scene> - <!--Pin Validation vc--> - <scene sceneID="aCW-l9-UDx"> - <objects> - <viewController id="UPe-3R-KdQ" customClass="pinValidation_vc" sceneMemberID="viewController"> - <view key="view" contentMode="scaleToFill" id="UGV-xw-Sxo"> - <rect key="frame" x="0.0" y="64" width="320" height="504"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <subviews> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="3128" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="f2u-bG-5ak"> - <constraints> - <constraint firstAttribute="height" constant="81" id="Hvz-7J-avM"/> - </constraints> - <fontDescription key="fontDescription" name="HelveticaNeue-UltraLight" family="Helvetica Neue" pointSize="73"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <nil key="highlightedColor"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Please enter the pin code above in Impress - Slide Show - Impress Remote" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="3" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="271" translatesAutoresizingMaskIntoConstraints="NO" id="upW-oF-qOa"> - <constraints> - <constraint firstAttribute="width" constant="271" id="GBZ-bg-kKS"/> - <constraint firstAttribute="height" constant="65" id="m3N-P9-GzJ"/> - </constraints> - <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/> - <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/> - <nil key="highlightedColor"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Waiting for validation from Impress..." lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lSD-BG-kVe"> - <constraints> - <constraint firstAttribute="width" constant="276" id="ZI9-yJ-WtI"/> - <constraint firstAttribute="height" constant="21" id="xBe-Yx-q1J"/> - </constraints> - <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <nil key="highlightedColor"/> - </label> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="trailing" secondItem="upW-oF-qOa" secondAttribute="trailing" constant="20" symbolic="YES" type="default" id="01U-w1-zAJ"/> - <constraint firstItem="lSD-BG-kVe" firstAttribute="leading" secondItem="UGV-xw-Sxo" secondAttribute="leading" constant="33" id="3yh-MS-akx"/> - <constraint firstItem="upW-oF-qOa" firstAttribute="top" secondItem="UGV-xw-Sxo" secondAttribute="top" constant="208" id="9Xr-D3-Gee"/> - <constraint firstItem="f2u-bG-5ak" firstAttribute="top" secondItem="UGV-xw-Sxo" secondAttribute="top" constant="93" id="B1A-2o-JBi"/> - <constraint firstItem="f2u-bG-5ak" firstAttribute="centerX" secondItem="UGV-xw-Sxo" secondAttribute="centerX" type="default" id="nO9-X5-5Pd"/> - <constraint firstAttribute="bottom" secondItem="lSD-BG-kVe" secondAttribute="bottom" constant="103" id="pXO-zn-CcC"/> - </constraints> - </view> - <navigationItem key="navigationItem" id="c3o-oA-oin"/> - <connections> - <outlet property="pinLabel" destination="f2u-bG-5ak" id="Y7S-6h-awe"/> - <outlet property="statusLabel" destination="lSD-BG-kVe" id="mmM-4x-ktw"/> - <segue destination="vs3-ES-U9h" kind="push" identifier="pinValidated" id="geL-Q8-f61"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="iok-RC-uS6" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="80" y="460"/> - </scene> - <!--New Server View Controller - New Server--> - <scene sceneID="tlJ-c5-Jp2"> - <objects> - <tableViewController id="maT-Bx-l5y" customClass="newServerViewController" sceneMemberID="viewController"> - <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="singleLineEtched" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="VUL-K7-xsS"> - <rect key="frame" x="0.0" y="64" width="320" height="504"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/> - <sections> - <tableViewSection footerTitle="Register a new server and remeber it for future connection" id="46W-NE-CYW"> - <cells> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="EN9-tY-k4P" customClass="EditableTableViewCell"> - <rect key="frame" x="0.0" y="10" width="320" height="45"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="10" y="1" width="300" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="qeE-95-2Gh" customClass="EditableTableViewCell"> - <rect key="frame" x="0.0" y="55" width="320" height="45"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="10" y="0.0" width="300" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - </cells> - </tableViewSection> - </sections> - <connections> - <outlet property="dataSource" destination="maT-Bx-l5y" id="B5v-aO-O0a"/> - <outlet property="delegate" destination="maT-Bx-l5y" id="Q3h-jf-Kor"/> - </connections> - </tableView> - <navigationItem key="navigationItem" title="New Server" id="qbR-M4-5O0"> - <barButtonItem key="rightBarButtonItem" systemItem="save" id="sqC-Fa-Vem"> - <connections> - <action selector="save:" destination="maT-Bx-l5y" id="OtP-lO-h9g"/> - </connections> - </barButtonItem> - </navigationItem> - </tableViewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="b5I-aN-vyr" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="604" y="-475"/> - </scene> - <!--View Controller--> - <scene sceneID="ccD-EG-LMW"> - <objects> - <viewController id="vs3-ES-U9h" sceneMemberID="viewController"> - <view key="view" contentMode="scaleToFill" id="JzX-I7-Mwa"> - <rect key="frame" x="0.0" y="64" width="320" height="504"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <subviews> - <containerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gBf-8h-qAQ"> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <connections> - <segue destination="Ybo-9c-MB8" kind="embed" id="7Sk-Ca-Deq"/> - </connections> - </containerView> - <containerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="rEU-8Z-ftD"> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <connections> - <segue destination="HMh-Ba-7X9" kind="embed" id="Uql-bR-9Sk"/> - </connections> - </containerView> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="rEU-8Z-ftD" firstAttribute="leading" secondItem="JzX-I7-Mwa" secondAttribute="leading" type="default" id="0Vl-yA-Dfw"/> - <constraint firstItem="gBf-8h-qAQ" firstAttribute="top" secondItem="rEU-8Z-ftD" secondAttribute="bottom" constant="-1" type="user" id="784-lg-Jwb"/> - <constraint firstItem="rEU-8Z-ftD" firstAttribute="top" secondItem="JzX-I7-Mwa" secondAttribute="top" type="default" id="81x-HN-DdO"/> - <constraint firstItem="gBf-8h-qAQ" firstAttribute="bottom" secondItem="JzX-I7-Mwa" secondAttribute="bottom" type="default" id="XID-ri-gv9"/> - <constraint firstItem="gBf-8h-qAQ" firstAttribute="leading" secondItem="JzX-I7-Mwa" secondAttribute="leading" type="default" id="Y2u-Rl-WQd"/> - <constraint firstItem="rEU-8Z-ftD" firstAttribute="trailing" secondItem="JzX-I7-Mwa" secondAttribute="trailing" type="default" id="is8-0P-1Xz"/> - <constraint firstItem="gBf-8h-qAQ" firstAttribute="top" secondItem="JzX-I7-Mwa" secondAttribute="top" constant="196" id="tNw-Oe-Fh6"/> - <constraint firstItem="gBf-8h-qAQ" firstAttribute="trailing" secondItem="JzX-I7-Mwa" secondAttribute="trailing" type="default" id="wTa-0Q-njp"/> - </constraints> - </view> - <navigationItem key="navigationItem" id="rqp-6S-yX6"/> - <connections> - <segue destination="LZb-9n-W8N" kind="push" identifier="slideShowSegue" id="DiK-LD-BNQ"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="APz-RZ-QFt" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="632" y="388"/> - </scene> - <!--Reveal View Controller--> - <scene sceneID="koC-gb-LIk"> - <objects> - <viewController id="LZb-9n-W8N" customClass="SWRevealViewController" sceneMemberID="viewController"> - <navigationItem key="navigationItem" id="vRB-Nd-PJ0"/> - <connections> - <segue destination="5d0-J5-Cal" kind="custom" identifier="sw_rear" customClass="SWRevealViewControllerSegue" id="ScC-or-0Qw"/> - <segue destination="Ivv-3X-Nhr" kind="custom" identifier="sw_front" customClass="SWRevealViewControllerSegue" id="UPp-kY-X3T"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="9lz-VN-PH6" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="1167" y="1211"/> - </scene> - <!--Slide Show Swipe In List--> - <scene sceneID="yEK-Av-SBc"> - <objects> - <tableViewController id="5d0-J5-Cal" customClass="slideShowSwipeInList" sceneMemberID="viewController"> - <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" rowHeight="132" sectionHeaderHeight="22" sectionFooterHeight="22" id="Ke1-ze-r00"> - <rect key="frame" x="0.0" y="20" width="320" height="548"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/> - <prototypes> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="stopWatch" rowHeight="132" id="hig-YG-1Lg"> - <rect key="frame" x="0.0" y="22" width="320" height="132"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="0.0" y="0.0" width="320" height="131"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JsJ-ic-uyC"> - <constraints> - <constraint firstAttribute="width" constant="220" type="user" id="8Gg-8f-cT7"/> - <constraint firstAttribute="height" constant="60" type="user" id="M2t-hC-QqV"/> - </constraints> - <fontDescription key="fontDescription" name="HelveticaNeue-Light" family="Helvetica Neue" pointSize="39"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </label> - <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Fmn-lt-vBn"> - <constraints> - <constraint firstAttribute="width" constant="44" id="7ff-i8-MnF"/> - <constraint firstAttribute="height" constant="44" id="Pef-te-m1Y"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" image="timer_start_btn.png"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="stopWatchStart:" destination="5d0-J5-Cal" eventType="touchUpInside" id="887-jd-VmR"/> - </connections> - </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="EVu-he-FS4"> - <constraints> - <constraint firstAttribute="width" constant="44" id="bgD-kw-jaw"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" image="timer_clear_btn.png"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="stopWatchClear:" destination="5d0-J5-Cal" eventType="touchUpInside" id="uua-50-63G"/> - </connections> - </button> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Hours" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3UQ-XJ-SDP"> - <constraints> - <constraint firstAttribute="height" constant="21" id="LwO-US-j6S"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Minutes" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TqG-sM-lAC"> - <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Seconds" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6jG-LW-J7Q"> - <fontDescription key="fontDescription" type="system" pointSize="12"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </label> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="TqG-sM-lAC" firstAttribute="top" secondItem="6jG-LW-J7Q" secondAttribute="top" type="default" id="0fA-Dm-47U"/> - <constraint firstItem="EVu-he-FS4" firstAttribute="top" secondItem="Fmn-lt-vBn" secondAttribute="top" type="default" id="99Y-4S-1aN"/> - <constraint firstItem="3UQ-XJ-SDP" firstAttribute="top" secondItem="TqG-sM-lAC" secondAttribute="top" type="default" id="AtJ-JE-Pqz"/> - <constraint firstItem="Fmn-lt-vBn" firstAttribute="leading" secondItem="hig-YG-1Lg" secondAttribute="leading" constant="61" id="GVV-6L-l4W"/> - <constraint firstItem="EVu-he-FS4" firstAttribute="leading" secondItem="hig-YG-1Lg" secondAttribute="leading" constant="130" id="JEc-bR-rF8"/> - <constraint firstItem="TqG-sM-lAC" firstAttribute="baseline" secondItem="3UQ-XJ-SDP" secondAttribute="baseline" type="default" id="O8m-Cg-3ma"/> - <constraint firstItem="6jG-LW-J7Q" firstAttribute="leading" secondItem="JsJ-ic-uyC" secondAttribute="trailing" constant="-75" type="user" id="V4J-LN-DQ5"/> - <constraint firstItem="TqG-sM-lAC" firstAttribute="leading" secondItem="hig-YG-1Lg" secondAttribute="leading" constant="101" id="a80-Ly-6HQ"/> - <constraint firstItem="3UQ-XJ-SDP" firstAttribute="top" secondItem="hig-YG-1Lg" secondAttribute="top" constant="47" id="e4B-LI-KYX"/> - <constraint firstItem="Fmn-lt-vBn" firstAttribute="bottom" secondItem="EVu-he-FS4" secondAttribute="bottom" type="default" id="fMf-BD-LAf"/> - <constraint firstItem="JsJ-ic-uyC" firstAttribute="leading" secondItem="hig-YG-1Lg" secondAttribute="leading" constant="11" id="g9d-KM-GbM"/> - <constraint firstAttribute="bottom" secondItem="Fmn-lt-vBn" secondAttribute="bottom" constant="11" id="hBN-Is-hCr"/> - <constraint firstItem="6jG-LW-J7Q" firstAttribute="baseline" secondItem="TqG-sM-lAC" secondAttribute="baseline" type="default" id="hcq-ha-5YG"/> - <constraint firstItem="JsJ-ic-uyC" firstAttribute="top" secondItem="hig-YG-1Lg" secondAttribute="top" type="default" id="hgW-2z-759"/> - <constraint firstItem="3UQ-XJ-SDP" firstAttribute="leading" secondItem="hig-YG-1Lg" secondAttribute="leading" constant="48" id="zV7-CU-RWk"/> - </constraints> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="slide" rowHeight="132" id="dDp-H3-HyL"> - <rect key="frame" x="0.0" y="154" width="320" height="132"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="0.0" y="0.0" width="320" height="131"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <imageView userInteractionEnabled="NO" tag="1" contentMode="scaleAspectFit" image="impress.jpeg" translatesAutoresizingMaskIntoConstraints="NO" id="del-Hz-TZI"> - <constraints> - <constraint firstAttribute="width" constant="182" id="SUR-3D-tAx"/> - <constraint firstAttribute="height" constant="122" id="idF-T1-zdQ"/> - </constraints> - </imageView> - <label clipsSubviews="YES" userInteractionEnabled="NO" tag="2" contentMode="left" text="1" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumScaleFactor="1" highlighted="YES" translatesAutoresizingMaskIntoConstraints="NO" id="yWM-Nx-KmF"> - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> - <accessibility key="accessibilityConfiguration"> - <accessibilityTraits key="traits" none="YES" selected="YES" staticText="YES"/> - </accessibility> - <constraints> - <constraint firstAttribute="width" constant="29" id="d7p-Jx-M0G"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="17"/> - <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> - <nil key="highlightedColor"/> - </label> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - <constraints> - <constraint firstItem="yWM-Nx-KmF" firstAttribute="trailing" secondItem="del-Hz-TZI" secondAttribute="trailing" type="user" id="Hbw-Pr-pzB"/> - <constraint firstItem="del-Hz-TZI" firstAttribute="centerY" secondItem="dDp-H3-HyL" secondAttribute="centerY" type="default" id="M7A-2c-2Ql"/> - <constraint firstItem="del-Hz-TZI" firstAttribute="leading" secondItem="dDp-H3-HyL" secondAttribute="leading" constant="31" id="MIr-rc-EK4"/> - <constraint firstItem="yWM-Nx-KmF" firstAttribute="bottom" secondItem="del-Hz-TZI" secondAttribute="bottom" type="default" id="iPk-2d-yq5"/> - </constraints> - <connections> - <segue destination="Ivv-3X-Nhr" kind="custom" customClass="SWRevealViewControllerSegue" trigger="accessoryAction" id="xfq-HS-C3T"/> - </connections> - </tableViewCell> - </prototypes> - <connections> - <outlet property="dataSource" destination="5d0-J5-Cal" id="hQF-Uq-1Eo"/> - <outlet property="delegate" destination="5d0-J5-Cal" id="QXg-wT-RSm"/> - </connections> - </tableView> - </tableViewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="Fb5-Zn-HeE" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="1752" y="950"/> - </scene> - <!--Slide Show vc--> - <scene sceneID="eap-cb-uAt"> - <objects> - <viewController id="Ivv-3X-Nhr" customClass="slideShow_vc" sceneMemberID="viewController"> - <view key="view" contentMode="scaleToFill" id="Xty-aF-WDv"> - <rect key="frame" x="0.0" y="20" width="320" height="548"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <subviews> - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="YvB-Gp-Fvr" userLabel="Preview"> - <subviews> - <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" verticalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="bZq-z2-OKU"> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="height" constant="167" id="ZXT-ja-tFo"/> - </constraints> - </imageView> - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Y1f-iI-63a"> - <subviews> - <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" verticalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="B2g-rO-b9G"> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="width" constant="86" type="user" id="KY9-Uc-127"/> - <constraint firstAttribute="height" constant="68" id="oyr-9z-MOx"/> - </constraints> - </imageView> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="B2g-rO-b9G" firstAttribute="leading" secondItem="Y1f-iI-63a" secondAttribute="leading" type="user" id="cV9-fY-2qk"/> - <constraint firstItem="B2g-rO-b9G" firstAttribute="bottom" secondItem="Y1f-iI-63a" secondAttribute="bottom" type="default" id="hpc-GY-1E7"/> - <constraint firstItem="B2g-rO-b9G" firstAttribute="centerX" secondItem="Y1f-iI-63a" secondAttribute="centerX" type="user" id="pHp-uH-VH9"/> - </constraints> - </view> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" alpha="0.80000000000000004" contentMode="left" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3BV-KX-Qla"> - <color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/> - <rect key="contentStretch" x="1.3877787807814457e-17" y="0.0" width="1" height="1"/> - <constraints> - <constraint firstAttribute="width" constant="52" id="Qhb-gd-btj"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="17"/> - <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> - <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </label> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="bZq-z2-OKU" firstAttribute="leading" secondItem="Y1f-iI-63a" secondAttribute="trailing" constant="8" symbolic="YES" type="user" id="0lZ-9Y-n6x"/> - <constraint firstItem="3BV-KX-Qla" firstAttribute="bottom" secondItem="bZq-z2-OKU" secondAttribute="bottom" type="default" id="9bb-JU-PCC"/> - <constraint firstItem="Y1f-iI-63a" firstAttribute="leading" secondItem="YvB-Gp-Fvr" secondAttribute="leading" constant="3" type="user" id="B8T-YR-xfb"/> - <constraint firstItem="Y1f-iI-63a" firstAttribute="top" secondItem="YvB-Gp-Fvr" secondAttribute="top" constant="3" type="user" id="CbL-CC-yq1"/> - <constraint firstAttribute="height" constant="178" type="user" id="Lri-eG-Hfh"/> - <constraint firstAttribute="trailing" secondItem="bZq-z2-OKU" secondAttribute="trailing" constant="3" type="user" id="t7r-7X-1Sm"/> - <constraint firstItem="Y1f-iI-63a" firstAttribute="centerY" secondItem="YvB-Gp-Fvr" secondAttribute="centerY" type="default" id="v4d-rL-bRf"/> - <constraint firstItem="3BV-KX-Qla" firstAttribute="trailing" secondItem="bZq-z2-OKU" secondAttribute="trailing" type="default" id="yD1-hY-fuD"/> - <constraint firstItem="3BV-KX-Qla" firstAttribute="bottom" secondItem="Y1f-iI-63a" secondAttribute="bottom" type="default" id="zbM-X7-LxP"/> - </constraints> - </view> - <view contentMode="scaleToFill" verticalCompressionResistancePriority="547" restorationIdentifier="" translatesAutoresizingMaskIntoConstraints="NO" id="evg-Ah-Kcw" userLabel="NotesView"> - <subviews> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Lecturer's Notes " textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Y23-iV-GJx"> - <color key="backgroundColor" red="1" green="0.66274509803921566" blue="0.074509803921568626" alpha="1" colorSpace="calibratedRGB"/> - <constraints> - <constraint firstAttribute="height" constant="21" type="user" id="H3E-M6-7uR"/> - </constraints> - <fontDescription key="fontDescription" name="Helvetica-Bold" family="Helvetica" pointSize="13"/> - <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/> - <nil key="highlightedColor"/> - </label> - <webView contentMode="scaleToFill" verticalCompressionResistancePriority="1" translatesAutoresizingMaskIntoConstraints="NO" id="xGi-A7-hat" userLabel="Notes"> - <rect key="contentStretch" x="0.0" y="1" width="1" height="1"/> - <constraints> - <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="40" type="user" id="9uC-Al-EZq"/> - <constraint firstAttribute="height" relation="lessThanOrEqual" priority="555" constant="200" type="user" id="MQe-aT-932"/> - </constraints> - </webView> - </subviews> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="xGi-A7-hat" firstAttribute="top" secondItem="Y23-iV-GJx" secondAttribute="bottom" type="user" id="2Xd-eF-5sh"/> - <constraint firstAttribute="top" secondItem="Y23-iV-GJx" secondAttribute="top" type="user" id="Ln3-FY-psm"/> - <constraint firstAttribute="trailing" secondItem="xGi-A7-hat" secondAttribute="trailing" constant="20" type="user" id="TqQ-Aw-nmd"/> - <constraint firstItem="xGi-A7-hat" firstAttribute="top" secondItem="Y23-iV-GJx" secondAttribute="bottom" type="user" id="Wk5-xM-tga"/> - <constraint firstAttribute="bottom" secondItem="xGi-A7-hat" secondAttribute="bottom" type="user" id="aDb-57-I0j"/> - <constraint firstItem="xGi-A7-hat" firstAttribute="leading" secondItem="evg-Ah-Kcw" secondAttribute="leading" constant="20" type="user" id="sws-kC-lUY"/> - <constraint firstItem="Y23-iV-GJx" firstAttribute="leading" secondItem="evg-Ah-Kcw" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="t8M-o1-eXv"/> - <constraint firstItem="Y23-iV-GJx" firstAttribute="width" secondItem="xGi-A7-hat" secondAttribute="width" type="user" id="uLC-ir-IGd"/> - </constraints> - </view> - <view hidden="YES" opaque="NO" userInteractionEnabled="NO" alpha="0.60000000000000009" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="uSh-Ne-BdH" userLabel="blockview"> - <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/> - <accessibility key="accessibilityConfiguration"> - <accessibilityTraits key="traits" none="YES" notEnabled="YES"/> - </accessibility> - </view> - <imageView hidden="YES" alpha="0.0" contentMode="scaleAspectFit" image="ic_launcher@2x.png" translatesAutoresizingMaskIntoConstraints="NO" id="ExH-sw-Z1i"> - <constraints> - <constraint firstAttribute="height" constant="253" id="li4-9E-WeL"/> - </constraints> - </imageView> - <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iCc-m2-vR5" userLabel="pointer"> - <color key="backgroundColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/> - <constraints> - <constraint firstAttribute="width" constant="5" id="Pvc-0L-c6j"/> - <constraint firstAttribute="height" constant="5" id="pYn-Z0-Lv4"/> - </constraints> - </view> - <view contentMode="scaleToFill" restorationIdentifier="" translatesAutoresizingMaskIntoConstraints="NO" id="3od-5c-yzI" userLabel="Bottom"> - <subviews> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="vh9-Zy-DPu"> - <constraints> - <constraint firstAttribute="width" constant="93" id="tXD-cs-5jt"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" backgroundImage="released_previous_button.png"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted" backgroundImage="pushed_previous_button.png"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="previousSlideAction:" destination="Ivv-3X-Nhr" eventType="touchUpInside" id="DAf-Qp-7KW"/> - </connections> - </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XDZ-bs-OUM"> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" backgroundImage="released_next_button.png"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted" backgroundImage="pushed_next_button.png"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="nextSlideAction:" destination="Ivv-3X-Nhr" eventType="touchUpInside" id="qTl-Ib-3Z8"/> - </connections> - </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="kMb-xm-ope"> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="width" constant="59" id="Kjm-ct-oJ3"/> - <constraint firstAttribute="height" constant="60" id="xrc-bW-vTq"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" title="Button" image="pointer.png"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted" image="pointer_pushed.png"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="accPointerAction:" destination="Ivv-3X-Nhr" eventType="touchDown" id="35J-B2-GIE"/> - <action selector="accPointerAction:" destination="Ivv-3X-Nhr" eventType="touchUpOutside" id="F8W-M1-8Lb"/> - <action selector="accPointerAction:" destination="Ivv-3X-Nhr" eventType="touchUpInside" id="Lb1-HF-wdh"/> - <action selector="pointerAction:" destination="Ivv-3X-Nhr" eventType="touchDown" id="gK9-ff-k1g"/> - </connections> - </button> - </subviews> - <color key="backgroundColor" red="0.93333333333333335" green="0.93333333333333335" blue="0.93333333333333335" alpha="1" colorSpace="deviceRGB"/> - <constraints> - <constraint firstItem="XDZ-bs-OUM" firstAttribute="centerY" secondItem="3od-5c-yzI" secondAttribute="centerY" type="default" id="992-ZE-DXX"/> - <constraint firstItem="kMb-xm-ope" firstAttribute="centerY" secondItem="vh9-Zy-DPu" secondAttribute="centerY" type="default" id="DAr-Sf-YhO"/> - <constraint firstAttribute="trailing" secondItem="XDZ-bs-OUM" secondAttribute="trailing" constant="20" symbolic="YES" type="default" id="Eqp-Q3-L92"/> - <constraint firstItem="kMb-xm-ope" firstAttribute="top" secondItem="XDZ-bs-OUM" secondAttribute="top" type="default" id="H9E-FR-J2C"/> - <constraint firstItem="vh9-Zy-DPu" firstAttribute="leading" secondItem="3od-5c-yzI" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="SQd-eE-VN0"/> - <constraint firstAttribute="height" constant="88" type="user" id="dBc-X5-XIU"/> - <constraint firstItem="kMb-xm-ope" firstAttribute="top" secondItem="vh9-Zy-DPu" secondAttribute="top" type="default" id="r6I-Jb-2lm"/> - <constraint firstItem="kMb-xm-ope" firstAttribute="leading" secondItem="3od-5c-yzI" secondAttribute="leading" constant="132" id="tY1-mj-gK5"/> - <constraint firstItem="vh9-Zy-DPu" firstAttribute="width" secondItem="XDZ-bs-OUM" secondAttribute="width" type="user" id="x0P-o6-T4k"/> - <constraint firstItem="kMb-xm-ope" firstAttribute="height" secondItem="XDZ-bs-OUM" secondAttribute="height" type="user" id="zeV-2j-i1K"/> - </constraints> - </view> - </subviews> - <color key="backgroundColor" red="0.90196079015731812" green="0.90196079015731812" blue="0.90196079015731812" alpha="1" colorSpace="calibratedRGB"/> - <constraints> - <constraint firstItem="ExH-sw-Z1i" firstAttribute="trailing" secondItem="Xty-aF-WDv" secondAttribute="trailing" type="default" id="5D0-O5-xr5"/> - <constraint firstItem="evg-Ah-Kcw" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" constant="-13" id="5Ku-go-4Y7"/> - <constraint firstItem="3od-5c-yzI" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" type="default" id="5et-XH-ZVD"/> - <constraint firstItem="uSh-Ne-BdH" firstAttribute="top" secondItem="Xty-aF-WDv" secondAttribute="top" type="default" id="5oi-ag-u6c"/> - <constraint firstAttribute="bottom" secondItem="uSh-Ne-BdH" secondAttribute="bottom" constant="-92" id="7f7-gO-D5h"/> - <constraint firstItem="3od-5c-yzI" firstAttribute="bottom" secondItem="Xty-aF-WDv" secondAttribute="bottom" type="default" id="9qT-8J-cJX"/> - <constraint firstItem="YvB-Gp-Fvr" firstAttribute="top" secondItem="Xty-aF-WDv" secondAttribute="top" constant="5" type="user" id="DoA-5l-NFS"/> - <constraint firstItem="evg-Ah-Kcw" firstAttribute="top" secondItem="YvB-Gp-Fvr" secondAttribute="bottom" constant="8" symbolic="YES" type="default" id="FDk-Bs-3cI"/> - <constraint firstItem="YvB-Gp-Fvr" firstAttribute="trailing" secondItem="Xty-aF-WDv" secondAttribute="trailing" type="default" id="FXg-Ij-nfl"/> - <constraint firstItem="uSh-Ne-BdH" firstAttribute="trailing" secondItem="Xty-aF-WDv" secondAttribute="trailing" type="default" id="HAC-vD-Hqj"/> - <constraint firstItem="uSh-Ne-BdH" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" type="default" id="HeG-j9-sqU"/> - <constraint firstItem="YvB-Gp-Fvr" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" type="default" id="I4g-8o-Kbt"/> - <constraint firstItem="ExH-sw-Z1i" firstAttribute="centerX" secondItem="evg-Ah-Kcw" secondAttribute="centerX" type="default" id="VNk-MY-fXM"/> - <constraint firstItem="ExH-sw-Z1i" firstAttribute="centerY" secondItem="Xty-aF-WDv" secondAttribute="centerY" type="default" id="Vim-gy-wQ5"/> - <constraint firstItem="iCc-m2-vR5" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" constant="157" id="dda-gh-C3S"/> - <constraint firstItem="3od-5c-yzI" firstAttribute="trailing" secondItem="Xty-aF-WDv" secondAttribute="trailing" type="default" id="eJ5-5R-zZM"/> - <constraint firstItem="ExH-sw-Z1i" firstAttribute="leading" secondItem="Xty-aF-WDv" secondAttribute="leading" type="default" id="tz5-fd-LV0"/> - <constraint firstAttribute="bottom" secondItem="evg-Ah-Kcw" secondAttribute="bottom" constant="88" id="uDo-cI-z18"/> - <constraint firstItem="iCc-m2-vR5" firstAttribute="centerY" secondItem="ExH-sw-Z1i" secondAttribute="centerY" type="default" id="wfp-Rv-pF0"/> - </constraints> - </view> - <connections> - <outlet property="blockingView" destination="uSh-Ne-BdH" id="g9R-1S-DJA"/> - <outlet property="bottomView" destination="3od-5c-yzI" id="bAX-eX-GfA"/> - <outlet property="lecturer_notes" destination="xGi-A7-hat" id="Cng-HM-0wW"/> - <outlet property="movingPointer" destination="iCc-m2-vR5" id="Y9t-hw-qhs"/> - <outlet property="notesView" destination="evg-Ah-Kcw" id="mlQ-Ez-ekQ"/> - <outlet property="pointerBtn" destination="kMb-xm-ope" id="0Ig-tz-vu5"/> - <outlet property="secondarySlideView" destination="B2g-rO-b9G" id="98R-qU-Psa"/> - <outlet property="slideNumber" destination="3BV-KX-Qla" id="681-YP-k0T"/> - <outlet property="slideView" destination="bZq-z2-OKU" id="yu0-P8-F3v"/> - <outlet property="touchPointerImage" destination="ExH-sw-Z1i" id="I0L-0P-zSk"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="Uei-nM-J1S" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="2290" y="1807"/> - </scene> - <!--Touch Pointer vc--> - <scene sceneID="lb3-jJ-4Di"> - <objects> - <viewController id="hES-Cx-oSf" customClass="touchPointer_vc" sceneMemberID="viewController"> - <view key="view" contentMode="scaleToFill" id="5Hd-U9-nNh"> - <rect key="frame" x="0.0" y="20" width="320" height="548"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <subviews> - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mRz-Gd-KLu"> - <subviews> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="wNe-aT-xcf"> - <constraints> - <constraint firstAttribute="width" constant="214" id="HOe-Si-LIu"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/> - <state key="normal" title="Back"> - <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/> - <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> - </state> - <state key="highlighted"> - <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </state> - <connections> - <action selector="dismissModal:" destination="hES-Cx-oSf" eventType="touchUpInside" id="tXy-a7-aOT"/> - </connections> - </button> - <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" verticalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="yBi-pu-DQa"> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="height" constant="242" id="i2l-Xn-OBb"/> - </constraints> - </imageView> - </subviews> - <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/> - <constraints> - <constraint firstAttribute="trailing" secondItem="yBi-pu-DQa" secondAttribute="trailing" constant="20" symbolic="YES" type="default" id="OMK-2m-vmJ"/> - <constraint firstAttribute="bottom" secondItem="wNe-aT-xcf" secondAttribute="bottom" constant="52" id="fBY-Iv-Mm5"/> - <constraint firstItem="yBi-pu-DQa" firstAttribute="leading" secondItem="mRz-Gd-KLu" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="la5-51-57u"/> - <constraint firstItem="wNe-aT-xcf" firstAttribute="centerX" secondItem="yBi-pu-DQa" secondAttribute="centerX" type="default" id="qSd-nY-2JL"/> - <constraint firstItem="yBi-pu-DQa" firstAttribute="top" secondItem="mRz-Gd-KLu" secondAttribute="top" constant="129" id="seB-Oa-d9u"/> - </constraints> - </view> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="mRz-Gd-KLu" firstAttribute="leading" secondItem="5Hd-U9-nNh" secondAttribute="leading" constant="-20" id="JBk-oD-bnz"/> - <constraint firstItem="mRz-Gd-KLu" firstAttribute="centerY" secondItem="5Hd-U9-nNh" secondAttribute="centerY" type="default" id="Tvh-8g-313"/> - <constraint firstItem="mRz-Gd-KLu" firstAttribute="top" secondItem="5Hd-U9-nNh" secondAttribute="top" constant="-20" id="XTc-4e-YRi"/> - <constraint firstItem="mRz-Gd-KLu" firstAttribute="centerX" secondItem="5Hd-U9-nNh" secondAttribute="centerX" type="default" id="tNV-xj-5gl"/> - </constraints> - </view> - <connections> - <outlet property="imageView" destination="yBi-pu-DQa" id="XE8-h0-pu0"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="gog-t4-scM" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="2807" y="1752"/> - </scene> - <!--Slide Show Preview Table vc--> - <scene sceneID="Tvi-bD-vMC"> - <objects> - <tableViewController id="Ybo-9c-MB8" customClass="slideShowPreviewTable_vc" sceneMemberID="viewController"> - <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="singleLineEtched" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="rWA-v3-wtf"> - <rect key="frame" x="0.0" y="0.0" width="320" height="308"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/> - <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/> - <sections> - <tableViewSection id="8wQ-rK-ve4"> - <cells> - <tableViewCell contentMode="scaleToFill" restorationIdentifier="" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="optionCell" id="0D7-tO-bVg"> - <rect key="frame" x="0.0" y="10" width="320" height="45"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="10" y="1" width="300" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" restorationIdentifier="" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="optionCell" id="LrN-2p-yDw"> - <rect key="frame" x="0.0" y="55" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="10" y="0.0" width="300" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="optionCell" id="Cdv-T8-mH7"> - <rect key="frame" x="0.0" y="99" width="320" height="45"/> - <autoresizingMask key="autoresizingMask"/> - <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> - <rect key="frame" x="10" y="0.0" width="300" height="43"/> - <autoresizingMask key="autoresizingMask"/> - <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/> - </view> - </tableViewCell> - </cells> - </tableViewSection> - </sections> - <connections> - <outlet property="dataSource" destination="Ybo-9c-MB8" id="nDU-cr-5RV"/> - <outlet property="delegate" destination="Ybo-9c-MB8" id="6Gf-g5-zXK"/> - </connections> - </tableView> - <connections> - <outlet property="optionsTable" destination="rWA-v3-wtf" id="qXR-p3-aap"/> - </connections> - </tableViewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="z5S-eI-1pb" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="1177" y="688"/> - </scene> - <!--Navigation Controller--> - <scene sceneID="yRe-s4-oKK"> - <objects> - <navigationController modalTransitionStyle="flipHorizontal" id="qoG-TN-hN0" sceneMemberID="viewController"> - <toolbarItems/> - <navigationBar key="navigationBar" contentMode="scaleToFill" id="WJT-Yy-XZ0"> - <rect key="frame" x="0.0" y="0.0" width="320" height="44"/> - <autoresizingMask key="autoresizingMask"/> - </navigationBar> - <nil name="viewControllers"/> - <connections> - <segue destination="2" kind="relationship" relationship="rootViewController" id="Sds-4S-ZnU"/> - </connections> - </navigationController> - <placeholder placeholderIdentifier="IBFirstResponder" id="f9j-Cw-dxh" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="-380" y="-337"/> - </scene> - <!--View Controller--> - <scene sceneID="kRQ-fB-NKx"> - <objects> - <viewController id="HMh-Ba-7X9" sceneMemberID="viewController"> - <view key="view" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" id="Swz-wK-30Z"> - <rect key="frame" x="0.0" y="0.0" width="320" height="197"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <subviews> - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2Zo-K8-3NM"> - <subviews> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Title of the presentation(TODO)" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="5" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="178" translatesAutoresizingMaskIntoConstraints="NO" id="nJf-ed-YfY"> - <constraints> - <constraint firstAttribute="height" constant="90" id="1hf-EL-dAY"/> - <constraint firstAttribute="width" constant="178" id="oTg-63-OXu"/> - </constraints> - <fontDescription key="fontDescription" type="boldSystem" pointSize="18"/> - <color key="textColor" cocoaTouchSystemColor="darkTextColor"/> - <nil key="highlightedColor"/> - </label> - <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2w1-DC-NmV"> - <subviews> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Author: author name" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g5m-gQ-o0u"> - <constraints> - <constraint firstAttribute="height" constant="12" type="user" id="6dy-Ki-jHp"/> - <constraint firstAttribute="width" constant="160" id="uDT-Sz-6yp"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="14"/> - <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/> - <nil key="highlightedColor"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Last modified: 3 Jul 2013" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dds-oJ-Uhh"> - <constraints> - <constraint firstAttribute="height" constant="14" type="user" id="xvr-u8-mTb"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="14"/> - <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/> - <nil key="highlightedColor"/> - </label> - <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Current slide: 5 of 22" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="mrB-Wd-OcP"> - <constraints> - <constraint firstAttribute="height" constant="16" type="user" id="4n7-Yu-phk"/> - <constraint firstAttribute="width" constant="169" id="ZdR-LV-4aK"/> - </constraints> - <fontDescription key="fontDescription" type="system" pointSize="14"/> - <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/> - <nil key="highlightedColor"/> - </label> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <constraints> - <constraint firstAttribute="trailing" secondItem="Dds-oJ-Uhh" secondAttribute="trailing" constant="20" symbolic="YES" type="default" id="7LJ-x2-nKz"/> - <constraint firstItem="g5m-gQ-o0u" firstAttribute="leading" secondItem="2w1-DC-NmV" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="7eg-Tz-OWY"/> - <constraint firstItem="mrB-Wd-OcP" firstAttribute="leading" secondItem="2w1-DC-NmV" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="9Q5-VN-l9h"/> - <constraint firstItem="g5m-gQ-o0u" firstAttribute="top" secondItem="2w1-DC-NmV" secondAttribute="top" constant="5" type="user" id="S04-dj-MD7"/> - <constraint firstAttribute="bottom" secondItem="mrB-Wd-OcP" secondAttribute="bottom" constant="4" type="user" id="X18-Zx-Jy8"/> - <constraint firstItem="Dds-oJ-Uhh" firstAttribute="leading" secondItem="2w1-DC-NmV" secondAttribute="leading" constant="20" symbolic="YES" type="default" id="dnI-jO-0US"/> - <constraint firstItem="Dds-oJ-Uhh" firstAttribute="top" secondItem="g5m-gQ-o0u" secondAttribute="bottom" constant="8" symbolic="YES" type="default" id="hpH-2w-OOX"/> - </constraints> - </view> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> - <constraints> - <constraint firstItem="2w1-DC-NmV" firstAttribute="leading" secondItem="2Zo-K8-3NM" secondAttribute="leading" constant="12" id="27H-un-hlX"/> - <constraint firstItem="nJf-ed-YfY" firstAttribute="top" secondItem="2Zo-K8-3NM" secondAttribute="top" constant="12" id="9yy-AD-2z5"/> - <constraint firstAttribute="trailing" secondItem="2w1-DC-NmV" secondAttribute="trailing" constant="48" id="GZ0-ab-RrF"/> - <constraint firstItem="2w1-DC-NmV" firstAttribute="top" secondItem="2Zo-K8-3NM" secondAttribute="top" constant="98" id="ggV-M4-VXs"/> - <constraint firstAttribute="height" constant="169" type="user" id="kbX-jk-qBX"/> - <constraint firstAttribute="bottom" secondItem="2w1-DC-NmV" secondAttribute="bottom" constant="4" id="leE-c3-5wP"/> - <constraint firstItem="nJf-ed-YfY" firstAttribute="centerX" secondItem="2Zo-K8-3NM" secondAttribute="centerX" type="default" id="qYz-zW-Lfz"/> - </constraints> - </view> - </subviews> - <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/> - <constraints> - <constraint firstItem="2Zo-K8-3NM" firstAttribute="leading" secondItem="Swz-wK-30Z" secondAttribute="leading" constant="13" id="GjY-1j-9c0"/> - <constraint firstItem="2Zo-K8-3NM" firstAttribute="top" secondItem="Swz-wK-30Z" secondAttribute="top" constant="14" type="user" id="HGv-cC-ndg"/> - <constraint firstItem="2Zo-K8-3NM" firstAttribute="centerX" secondItem="Swz-wK-30Z" secondAttribute="centerX" type="default" id="UWQ-MC-jdF"/> - <constraint firstAttribute="bottom" secondItem="2Zo-K8-3NM" secondAttribute="bottom" constant="14" type="user" id="VKA-vw-4h9"/> - <constraint firstItem="2Zo-K8-3NM" firstAttribute="centerY" secondItem="Swz-wK-30Z" secondAttribute="centerY" type="user" id="xWp-Jr-P3y"/> - </constraints> - </view> - <toolbarItems/> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="uCa-zh-PLh" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="1177" y="388"/> - </scene> - </scenes> - <resources> - <image name="ic_launcher@2x.png" width="114" height="114"/> - <image name="impress.jpeg" width="204" height="204"/> - <image name="pointer.png" width="143" height="147"/> - <image name="pointer_pushed.png" width="143" height="147"/> - <image name="pushed_next_button.png" width="315" height="220"/> - <image name="pushed_previous_button.png" width="315" height="220"/> - <image name="released_next_button.png" width="315" height="220"/> - <image name="released_previous_button.png" width="315" height="220"/> - <image name="timer_clear_btn.png" width="74" height="74"/> - <image name="timer_start_btn.png" width="74" height="74"/> - </resources> - <classes> - <class className="EditableTableViewCell" superclassName="UITableViewCell"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/EditableTableViewCell.h"/> - </class> - <class className="NSLayoutConstraint" superclassName="NSObject"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/NSLayoutConstraint.h"/> - </class> - <class className="SWRevealViewController" superclassName="UIViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/SWRevealViewController.h"/> - </class> - <class className="newServerViewController" superclassName="UITableViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/newServerViewController.h"/> - <relationships> - <relationship kind="action" name="save:"/> - </relationships> - </class> - <class className="pinValidation_vc" superclassName="UIViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/pinValidation_vc.h"/> - <relationships> - <relationship kind="outlet" name="pinLabel" candidateClass="UILabel"/> - <relationship kind="outlet" name="statusLabel" candidateClass="UILabel"/> - </relationships> - </class> - <class className="server_list_vc" superclassName="UITableViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/server_list_vc.h"/> - <relationships> - <relationship kind="outlet" name="serverTable" candidateClass="UITableView"/> - </relationships> - </class> - <class className="slideShowPreviewTable_vc" superclassName="UITableViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/slideShowPreviewTable_vc.h"/> - <relationships> - <relationship kind="action" name="startPresentationAction:"/> - <relationship kind="outlet" name="optionsTable" candidateClass="UITableView"/> - </relationships> - </class> - <class className="slideShowSwipeInList" superclassName="UITableViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/slideShowSwipeInList.h"/> - <relationships> - <relationship kind="action" name="stopWatchClear:"/> - <relationship kind="action" name="stopWatchStart:"/> - </relationships> - </class> - <class className="slideShow_vc" superclassName="UIViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/slideShow_vc.h"/> - <relationships> - <relationship kind="action" name="accPointerAction:"/> - <relationship kind="action" name="nextSlideAction:"/> - <relationship kind="action" name="pointerAction:"/> - <relationship kind="action" name="previousSlideAction:"/> - <relationship kind="outlet" name="blockingView" candidateClass="UIView"/> - <relationship kind="outlet" name="bottomView" candidateClass="UIView"/> - <relationship kind="outlet" name="lecturer_notes" candidateClass="UIWebView"/> - <relationship kind="outlet" name="movingPointer" candidateClass="UIView"/> - <relationship kind="outlet" name="notesView" candidateClass="UIView"/> - <relationship kind="outlet" name="pointerBtn" candidateClass="UIButton"/> - <relationship kind="outlet" name="revealButtonItem" candidateClass="UIBarButtonItem"/> - <relationship kind="outlet" name="secondarySlideView" candidateClass="UIImageView"/> - <relationship kind="outlet" name="slideNumber" candidateClass="UILabel"/> - <relationship kind="outlet" name="slideView" candidateClass="UIImageView"/> - <relationship kind="outlet" name="touchPointerImage" candidateClass="UIImageView"/> - <relationship kind="outlet" name="touchPointerScrollView" candidateClass="UIScrollView"/> - </relationships> - </class> - <class className="touchPointer_vc" superclassName="UIViewController"> - <source key="sourceIdentifier" type="project" relativePath="./Classes/touchPointer_vc.h"/> - <relationships> - <relationship kind="action" name="dismissModal:"/> - <relationship kind="outlet" name="imageView" candidateClass="UIImageView"/> - </relationships> - </class> - </classes> - <simulatedMetricsContainer key="defaultSimulatedMetrics"> - <simulatedStatusBarMetrics key="statusBar"/> - <simulatedOrientationMetrics key="orientation"/> - <simulatedScreenMetrics key="destination" type="retina4"/> - </simulatedMetricsContainer> - <inferredMetricsTieBreakers> - <segue reference="geL-Q8-f61"/> - <segue reference="xfq-HS-C3T"/> - </inferredMetricsTieBreakers> -</document>
\ No newline at end of file diff --git a/ios/iosremote/iosremote/ic_launcher.png b/ios/iosremote/iosremote/ic_launcher.png Binary files differdeleted file mode 100644 index 3de2dcc88be7..000000000000 --- a/ios/iosremote/iosremote/ic_launcher.png +++ /dev/null diff --git a/ios/iosremote/iosremote/ic_launcher@2x.png b/ios/iosremote/iosremote/ic_launcher@2x.png Binary files differdeleted file mode 100644 index e336ce037b6d..000000000000 --- a/ios/iosremote/iosremote/ic_launcher@2x.png +++ /dev/null diff --git a/ios/iosremote/iosremote/slideShowPreview_vc.h b/ios/iosremote/iosremote/slideShowPreview_vc.h deleted file mode 100644 index 55cb1f2f88ee..000000000000 --- a/ios/iosremote/iosremote/slideShowPreview_vc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ - -#import <UIKit/UIKit.h> - -@class SlideShow; - -@interface slideShowPreview_vc : UITableViewController - -@end diff --git a/ios/iosremote/iosremote/slideShowPreview_vc.m b/ios/iosremote/iosremote/slideShowPreview_vc.m deleted file mode 100644 index bb9578d3015c..000000000000 --- a/ios/iosremote/iosremote/slideShowPreview_vc.m +++ /dev/null @@ -1,49 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ - -#import "slideShowPreview_vc.h" -#import "SlideShow.h" -#import "CommandInterpreter.h" -#import "CommunicationManager.h" - -@interface slideShowPreview_vc () <UINavigationControllerDelegate> - -@property (nonatomic, strong) CommunicationManager* comManager; -@property (nonatomic, strong) SlideShow* slideshow; - -@end - -@implementation slideShowPreview_vc - -@synthesize slideshow = _slideshow; -@synthesize comManager = _comManager; - -- (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.comManager = [CommunicationManager sharedComManager]; - self.slideshow = [[self.comManager interpreter] slideShow]; -} - -- (void)didReceiveMemoryWarning -{ - [super didReceiveMemoryWarning]; - // Dispose of any resources that can be recreated. -} - -@end diff --git a/ios/iosremote/iosremote/slideShowSwipeInList.h b/ios/iosremote/iosremote/slideShowSwipeInList.h deleted file mode 100644 index d95ba94b809c..000000000000 --- a/ios/iosremote/iosremote/slideShowSwipeInList.h +++ /dev/null @@ -1,17 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ -#import <UIKit/UIKit.h> - -@interface slideShowSwipeInList : UITableViewController <UITableViewDataSource, UITableViewDelegate> -// StopWatch -- (IBAction)stopWatchStart:(id)sender; -- (IBAction)stopWatchClear:(id)sender; -@property (strong, nonatomic) NSTimer *stopWatchTimer; -@property (strong, nonatomic) NSDate *startDate; - -@end diff --git a/ios/iosremote/iosremote/slideShowSwipeInList.m b/ios/iosremote/iosremote/slideShowSwipeInList.m deleted file mode 100644 index 7e23f3f39424..000000000000 --- a/ios/iosremote/iosremote/slideShowSwipeInList.m +++ /dev/null @@ -1,253 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ - -#import "slideShowSwipeInList.h" -#import "CommunicationManager.h" -#import "CommandInterpreter.h" -#import "SlideShow.h" -#import "CommandTransmitter.h" -#import "SWRevealViewController.h" -#import "slideShowPreviewTable_vc.h" -#import <QuartzCore/CALayer.h> - -#define TIMER_STATE_RUNNING 0 -#define TIMER_STATE_PAUSED 1 -#define TIMER_STATE_CLEARED 2 - -@interface slideShowSwipeInList () - -@property (nonatomic, strong) CommunicationManager *comManager; -@property (nonatomic, strong) SlideShow *slideshow; -@property NSTimeInterval lastInterval; -@property int state; -@end - -@implementation slideShowSwipeInList - -@synthesize comManager = _comManager; -@synthesize slideshow = _slideshow; -@synthesize lastInterval = _lastInterval; - -dispatch_queue_t backgroundQueue; - -- (void) viewDidLoad -{ - [super viewDidLoad]; - - self.comManager = [CommunicationManager sharedComManager]; - self.slideshow = self.comManager.interpreter.slideShow; - self.slideshow.secondaryDelegate = self; - self.state = TIMER_STATE_CLEARED; - if ([[NSUserDefaults standardUserDefaults] boolForKey:KEY_TIMER]) { - [self stopWatchStart:nil]; - } - self.clearsSelectionOnViewWillAppear = NO; -} - -- (void) viewDidAppear:(BOOL)animated -{ - [self changeStartButtonIconForButton:nil]; - NSIndexPath *indexPath = [NSIndexPath indexPathForRow:self.slideshow.currentSlide - inSection:1]; - [self.tableView selectRowAtIndexPath:indexPath animated:NO scrollPosition:UITableViewScrollPositionNone]; - [self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionMiddle animated:NO]; -// [[[self.tableView cellForRowAtIndexPath:indexPath] viewWithTag:2] setBackgroundColor:[UIColor lightGrayColor]]; -} - -- (void) prepareForSegue: (UIStoryboardSegue *) segue sender: (id) sender -{ - // configure the segue. - // in this case we dont swap out the front view controller, which is a UINavigationController. - // but we could.. - if ( [segue isKindOfClass: [SWRevealViewControllerSegue class]] ) - { - SWRevealViewControllerSegue* rvcs = (SWRevealViewControllerSegue*) segue; - - SWRevealViewController* rvc = self.revealViewController; - NSAssert( rvc != nil, @"oops! must have a revealViewController" ); - - NSAssert( [rvc.frontViewController isKindOfClass: [UINavigationController class]], @"oops! for this segue we want a permanent navigation controller in the front!" ); - - rvcs.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc) { - - UINavigationController* nc = (UINavigationController*)rvc.frontViewController; - [nc setViewControllers: @[ dvc ] animated: YES ]; - - [rvc setFrontViewPosition: FrontViewPositionLeft animated: YES]; - }; - } -} - - -#pragma mark - Table view data source - -- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView -{ - return 2; -} - -- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section -{ - // Section one used for stopwatch - if (section == 0) - return 1; - else - return [self.slideshow size]; -} - -- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section -{ - switch (section) { - case 0: - return @"Stop Watch"; - break; - case 1: - return @"Slides"; - default: - break; - } - return nil; -} - -- (void) tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath -{ - [self performSegueWithIdentifier: @"sw_customized_segue" sender: [tableView cellForRowAtIndexPath: indexPath]]; -} - -- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath -{ - if (indexPath.section == 0) { - static NSString *CellIdentifier = @"stopWatch"; - - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier]; - [cell setSelectionStyle:UITableViewCellSelectionStyleNone]; - cell.contentView.backgroundColor = [UIColor whiteColor]; - return cell; - } else { - static NSString *CellIdentifier = @"slide"; - - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier]; - UILabel * slideNumber = (UILabel *)[cell viewWithTag:2]; - - // Starting 20, all tags are used for thumbnails in this sidebar - [cell setTag:20+indexPath.row]; - [self.slideshow getContentAtIndex:indexPath.row forView:cell]; - [slideNumber setText:[NSString stringWithFormat:@"%u", indexPath.row+1]]; - return cell; - } -} - -- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{ - // Otherwise selection will disable background color and make slide number unreadable - if(indexPath.section == 1 && cell.selected){ - UILabel *label = (UILabel *)[cell viewWithTag:2]; - if ([label backgroundColor]!=[UIColor lightGrayColor]) { - [label setBackgroundColor:[UIColor lightGrayColor]]; - } - } -} - -- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath -{ - if (indexPath.section == 0) - return; - [self.comManager.transmitter gotoSlide:indexPath.row]; - [[[self.tableView cellForRowAtIndexPath:indexPath] viewWithTag:2] setBackgroundColor:[UIColor lightGrayColor]]; - [self.revealViewController revealToggle: self]; -} - - -- (void)viewDidUnload { - [super viewDidUnload]; -} - -- (void)updateTimer -{ - // Create date from the elapsed time - NSDate *currentDate = [NSDate date]; - NSTimeInterval timeInterval = [currentDate timeIntervalSinceDate:self.startDate] + self.lastInterval; - NSDate *timerDate = [NSDate dateWithTimeIntervalSince1970:timeInterval]; - - // Create a date formatter - NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; - [dateFormatter setDateFormat:@"HH:mm:ss"]; - [dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]]; - - // Format the elapsed time and set it to the label - NSString *timeString = [dateFormatter stringFromDate:timerDate]; - UILabel *l = (UILabel *)[[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]] viewWithTag:1]; - l.text = timeString; -} - - -- (IBAction)stopWatchStart:(id)sender { - switch (self.state) { - case TIMER_STATE_RUNNING: - self.state = TIMER_STATE_PAUSED; - [self.stopWatchTimer invalidate]; - self.lastInterval += [[NSDate date] timeIntervalSinceDate:self.startDate]; - break; - case TIMER_STATE_PAUSED: - self.state = TIMER_STATE_RUNNING; - self.startDate = [NSDate date]; - self.stopWatchTimer = [NSTimer scheduledTimerWithTimeInterval:1.0/10.0 - target:self - selector:@selector(updateTimer) - userInfo:nil - repeats:YES]; - break; - case TIMER_STATE_CLEARED: - self.state = TIMER_STATE_RUNNING; - self.startDate = [NSDate date]; - // Create the stop watch timer that fires every 100 ms - self.stopWatchTimer = [NSTimer scheduledTimerWithTimeInterval:1.0/10.0 - target:self - selector:@selector(updateTimer) - userInfo:nil - repeats:YES]; - break; - default: - break; - } - - [self changeStartButtonIconForButton:sender]; -} - -- (void) changeStartButtonIconForButton:(UIButton *)sender -{ - UIButton * btn = sender; - if (!btn) { - btn = (UIButton *)[[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]] viewWithTag:2]; - } - switch (self.state) { - case TIMER_STATE_RUNNING: - [btn setImage:[UIImage imageNamed:@"timer_pause_btn"] forState:UIControlStateNormal]; - break; - case TIMER_STATE_PAUSED: - [btn setImage:[UIImage imageNamed:@"timer_resume_btn"] forState:UIControlStateNormal]; - break; - case TIMER_STATE_CLEARED: - [btn setImage:[UIImage imageNamed:@"timer_start_btn"] forState:UIControlStateNormal]; - break; - default: - break; - } -} - -- (IBAction)stopWatchClear:(id)sender { - [self.stopWatchTimer invalidate]; - self.stopWatchTimer = nil; - self.startDate = [NSDate date]; - self.lastInterval = 0; - self.state = TIMER_STATE_CLEARED; - - UIButton *l = (UIButton *)[[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]] viewWithTag:2]; - [l setImage:[UIImage imageNamed:@"timer_start_btn"] forState:UIControlStateNormal]; - [self updateTimer]; -} -@end diff --git a/ios/iosremote/iosremote/slideShow_vc.h b/ios/iosremote/iosremote/slideShow_vc.h deleted file mode 100644 index cea46a565a9f..000000000000 --- a/ios/iosremote/iosremote/slideShow_vc.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ - -#import <UIKit/UIKit.h> - -@interface slideShow_vc : UIViewController - -- (IBAction)nextSlideAction:(id)sender; -- (IBAction)previousSlideAction:(id)sender; -- (IBAction)pointerAction:(id)sender; -- (IBAction)accPointerAction:(id)sender; - -@property (weak, nonatomic) IBOutlet UIView *notesView; -@property (weak, nonatomic) IBOutlet UIWebView *lecturer_notes; -@property (weak, nonatomic) IBOutlet UIImageView *slideView; -@property (weak, nonatomic) IBOutlet UIImageView *secondarySlideView; -@property (weak, nonatomic) IBOutlet UILabel *slideNumber; - -@property (weak, nonatomic) IBOutlet UIView *movingPointer; -@property (weak, nonatomic) IBOutlet UIImageView *touchPointerImage; -@property (weak, nonatomic) IBOutlet UIView *blockingView; -@property (weak, nonatomic) IBOutlet UIView *bottomView; -@property (weak, nonatomic) IBOutlet UIScrollView *touchPointerScrollView; -@property (weak, nonatomic) IBOutlet UIButton *pointerBtn; - -@end diff --git a/ios/iosremote/iosremote/slideShow_vc.m b/ios/iosremote/iosremote/slideShow_vc.m deleted file mode 100644 index 5fb3350ea113..000000000000 --- a/ios/iosremote/iosremote/slideShow_vc.m +++ /dev/null @@ -1,389 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ -#import "slideShow_vc.h" -#import "SlideShow.h" -#import "UIViewTransitionCategory.h" -#import "CommunicationManager.h" -#import "SWRevealViewController.h" -#import "CommandInterpreter.h" -#import "CommandTransmitter.h" -#import "slideShowPreviewTable_vc.h" -#import <QuartzCore/QuartzCore.h> -#import <CoreMotion/CoreMotion.h> - - -#define CURRENT_SLIDE_IMAGEVIEW 1 -#define NEXT_SLIDE_IMAGEVIEW 2 -#define TOUCH_POINTER_VIEW 3 -#define CURRENT_SLIDE_NOTES 4 - -@interface slideShow_vc () - -@property (nonatomic, strong) CommunicationManager *comManager; -@property (nonatomic, strong) id slideShowImageNoteReadyObserver; -@property (nonatomic, strong) id slideShowFinishedObserver; -@property (nonatomic, strong) SlideShow* slideshow; - -@property BOOL pointerCalibrationOn; -@property CGPoint refLeftUpperGravity; -@property CGPoint refRightUpperGravity; -@property CGPoint refRightLowerGravity; - -// SWReveal Controller -@property (readwrite) IBOutlet UIBarButtonItem* revealButtonItem; - -@property int count; - -@end - -@implementation slideShow_vc - -@synthesize comManager = _comManager; -@synthesize slideShowImageNoteReadyObserver = _slideShowImageNoteReadyObserver; -@synthesize slideShowFinishedObserver = _slideShowFinishedObserver; -@synthesize slideshow = _slideshow; - -#pragma mark - Pointer - -- (CMMotionManager *)motionManager -{ - CMMotionManager *motionManager = nil; - - id appDelegate = [UIApplication sharedApplication].delegate; - - if ([appDelegate respondsToSelector:@selector(motionManager)]) { - motionManager = [appDelegate motionManager]; - } - - return motionManager; -} - -- (void)startMotionDetect -{ - // __block float stepMoveFactorX = 5; - // __block float stepMoveFactorY = 5; - // __block double refX, refY; - - [self.motionManager - startAccelerometerUpdatesToQueue:[[NSOperationQueue alloc] init] - withHandler:^(CMAccelerometerData *data, NSError *error) - { - - dispatch_async(dispatch_get_main_queue(), - ^{ - CGRect rect = self.movingPointer.frame; - NSLog(@"x:%f y:%f z:%f", data.acceleration.x, data.acceleration.y, data.acceleration.z); - // Used to calibrate pointer based on initial position - // if (self.pointerCalibrationOn){ - // refX = data.acceleration.x; - // refY = data.acceleration.y; - // self.pointerCalibrationOn = NO; - // } - // float movetoX = rect.origin.x + ((data.acceleration.x - refX) * stepMoveFactorX); - - float movetoX = self.touchPointerImage.frame.origin.x + self.touchPointerImage.frame.size.width * ABS(data.acceleration.x - self.refLeftUpperGravity.x) / ABS(self.refRightUpperGravity.x - self.refLeftUpperGravity.x); - float maxX = self.touchPointerImage.frame.origin.x + self.touchPointerImage.frame.size.width - rect.size.width; - - // float movetoY = (rect.origin.y) + ((data.acceleration.y - refY) * stepMoveFactorY); - float movetoY = self.touchPointerImage.frame.origin.y + self.touchPointerImage.frame.size.height * ABS(data.acceleration.y - self.refRightUpperGravity.y) / ABS(self.refRightLowerGravity.y - self.refRightUpperGravity.y); - float maxY = self.touchPointerImage.frame.origin.y + self.touchPointerImage.frame.size.height; - - if ( movetoX > self.touchPointerImage.frame.origin.x && movetoX < maxX ) { - rect.origin.x = movetoX; - }; - - if ( movetoY > self.touchPointerImage.frame.origin.y && movetoY < maxY ) { - rect.origin.y = movetoY; - }; - - [UIView animateWithDuration:0 delay:0 - options:UIViewAnimationOptionCurveEaseIn - animations:^{ - self.movingPointer.frame = rect; - } - completion:nil - ]; - }); - }]; -} - -- (IBAction)accPointerAction:(id)sender{ - BOOL acc = [[NSUserDefaults standardUserDefaults] boolForKey:KEY_POINTER]; - if (!acc) { - static BOOL pointer = NO; - if (!pointer){ - [self startMotionDetect]; - [self.movingPointer setHidden:NO]; - } - else { - [self.motionManager stopAccelerometerUpdates]; - self.pointerCalibrationOn = NO; - [self.movingPointer setHidden:YES]; - } - pointer = !pointer; - } -} - -- (IBAction)pointerAction:(id)sender { - if (self.count == 0 || self.count == 1){ - CGPoint p; - p.x = [self.motionManager accelerometerData].acceleration.x; - p.y = [self.motionManager accelerometerData].acceleration.y; - self.refLeftUpperGravity = p; - if (self.count == 1) { - UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"Calibration" - message:@"Upper left corner calibrated, now point your device to the upper right corner of the screen and click Pointer button again" - delegate:nil - cancelButtonTitle:@"OK" - otherButtonTitles:@"Help", nil]; - [message show]; - } - ++self.count; - } else if (self.count == 2 || self.count == 3) { - CGPoint p; - p.x = [self.motionManager accelerometerData].acceleration.x; - p.y = [self.motionManager accelerometerData].acceleration.y; - self.refRightUpperGravity = p; - if (self.count == 3) { - UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"Calibration" - message:@"Upper right corner calibrated, now point your device to the lower right corner of the screen and click Pointer button again!" - delegate:nil - cancelButtonTitle:@"OK" - otherButtonTitles:@"Help", nil]; - [message show]; - } - ++self.count; - } else if (self.count == 4 || self.count == 5) { - CGPoint p; - p.x = [self.motionManager accelerometerData].acceleration.x; - p.y = [self.motionManager accelerometerData].acceleration.y; - self.refRightLowerGravity = p; - if (self.count == 5) { - UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"Calibration" - message:@"Lower right corner calibrated, enjoy your pointer!" - delegate:nil - cancelButtonTitle:@"OK" - otherButtonTitles:@"Help", nil]; - [message show]; - } - ++self.count; - } else { - if ([self.touchPointerImage isHidden]){ - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.touchPointerImage]; - CGPoint p = self.view.center; - p.y -= 50; - self.touchPointerImage.center = p; - } - [self.touchPointerImage fadeInfadeOutwithDuration:0.0 maxAlpha:1.0]; - [self.blockingView fadeInfadeOutwithDuration:0.0 maxAlpha:0.7]; - [self.touchPointerScrollView setHidden:![self.touchPointerScrollView isHidden]]; - } -} - -- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { - UITouch *touch = [[event allTouches] anyObject]; - if (!self.touchPointerImage.isHidden){ - CGPoint loc = [touch locationInView:self.touchPointerImage]; - if (loc.x >= 0 && loc.x <= self.touchPointerImage.frame.size.width - && loc.y >= 0 && loc.y <= self.touchPointerImage.frame.size.height){ - CGPoint pointerInPercentage; - pointerInPercentage.x = loc.x / self.touchPointerImage.frame.size.width; - pointerInPercentage.y = loc.y / self.touchPointerImage.frame.size.height; - [self.comManager.transmitter setPointerVisibleAt:pointerInPercentage]; - - CGPoint p; - p.x = loc.x + self.touchPointerImage.frame.origin.x; - p.y = loc.y + self.touchPointerImage.frame.origin.y; - self.movingPointer.center = p; - [self.movingPointer setHidden:NO]; - } - } - - if ([touch view] == self.secondarySlideView) - { - // Change to the next slide when secondary slide is clicked - [self nextSlideAction:nil]; - } -} - -- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event -{ - if (!self.touchPointerImage.isHidden){ - UITouch *touch = [[event allTouches] anyObject]; - CGPoint loc = [touch locationInView:self.touchPointerImage]; - if (loc.x >= 0 && loc.x <= self.touchPointerImage.frame.size.width - && loc.y >= self.movingPointer.frame.size.height && loc.y <= self.touchPointerImage.frame.size.height - self.movingPointer.frame.size.height) - { - CGPoint pointerInPercentage; - pointerInPercentage.x = loc.x / self.touchPointerImage.frame.size.width; - pointerInPercentage.y = loc.y / self.touchPointerImage.frame.size.height; - [self.comManager.transmitter pointerCoordination:pointerInPercentage]; - - CGPoint p; - p.x = loc.x + self.touchPointerImage.frame.origin.x; - p.y = loc.y + self.touchPointerImage.frame.origin.y; - self.movingPointer.center = p; - } - } -} - -- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event -{ - [self.movingPointer setHidden:YES]; - [self.comManager.transmitter setPointerDismissed]; -} - -#pragma mark - System defaults - -- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil -{ - self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; - if (self) { - // Custom initialization - } - return self; -} - -- (void)viewDidLoad -{ - [super viewDidLoad]; - - // Unique tag assignment. Don't use 0 as it's default. 0-10 for central VC - [self.slideView setTag:CURRENT_SLIDE_IMAGEVIEW]; - [self.secondarySlideView setTag:NEXT_SLIDE_IMAGEVIEW]; - [self.lecturer_notes setTag:CURRENT_SLIDE_NOTES]; - [self.touchPointerImage setTag:TOUCH_POINTER_VIEW]; - - self.comManager = [CommunicationManager sharedComManager]; - self.slideshow = [self.comManager.interpreter slideShow]; - self.slideshow.delegate = self; - - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.slideView]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide+1 forView:self.secondarySlideView]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.lecturer_notes]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.touchPointerImage]; - [self.slideNumber setText:[NSString stringWithFormat:@"%u/%u", [self.slideshow currentSlide]+1, [self.slideshow size]]]; - - - UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Stop Presentation" - style:UIBarButtonItemStyleBordered - target:self - action:@selector(handleBack:)]; - [backButton setTintColor:[UIColor redColor]]; - self.revealViewController.navigationItem.leftBarButtonItem = backButton; - - self.revealButtonItem = [[UIBarButtonItem alloc] initWithImage: [UIImage imageNamed:@"more_icon.png"] - style:UIBarButtonItemStyleBordered - target:self.revealViewController - action:@selector( revealToggle: )]; - self.revealViewController.navigationItem.rightBarButtonItem = self.revealButtonItem; - [self.navigationController.navigationBar addGestureRecognizer: self.revealViewController.panGestureRecognizer]; - - self.pointerCalibrationOn = NO; - self.movingPointer.layer.cornerRadius = 3; - - BOOL acc = [[NSUserDefaults standardUserDefaults] boolForKey:KEY_POINTER]; - if (!acc) { - // Hook up acc detection - [self.pointerBtn addTarget:self action:@selector(pointerAction:) forControlEvents:UIControlEventTouchUpOutside]; - [self.pointerBtn addTarget:self action:@selector(pointerAction:) forControlEvents:UIControlEventTouchUpInside]; - } else { - // Disable all calibration functions for acc based pointer - self.count = INT_MAX; - } -} - -- (void) handleBack:(id)sender -{ - [self.comManager.transmitter stopPresentation]; - [self.navigationController popViewControllerAnimated:YES]; -} - - -- (void) viewDidAppear:(BOOL)animated -{ - NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; - NSOperationQueue *mainQueue = [NSOperationQueue mainQueue]; - - self.slideShowImageNoteReadyObserver =[center addObserverForName:MSG_SLIDE_CHANGED - object:nil - queue:mainQueue - usingBlock:^(NSNotification *note) { - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.slideView]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.touchPointerImage]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide+1 forView:self.secondarySlideView]; - [self.slideshow getContentAtIndex:self.slideshow.currentSlide forView:self.lecturer_notes]; - [self.slideNumber setText:[NSString stringWithFormat:@"%u/%u", [self.slideshow currentSlide]+1, [self.slideshow size]]]; - - }]; - - self.slideShowFinishedObserver = [center addObserverForName:STATUS_CONNECTED_NOSLIDESHOW - object:nil - queue:mainQueue - usingBlock:^(NSNotification *note) { - [self.navigationController popViewControllerAnimated:YES]; - }]; - self.slideView.layer.shadowColor = [[UIColor blackColor] CGColor]; - self.slideView.layer.shadowOpacity = 0.5; - self.slideView.layer.shadowRadius = 4.0; - self.slideView.layer.shadowOffset = CGSizeMake(3.0f, 3.0f); - self.slideView.layer.shadowPath = [UIBezierPath bezierPathWithRect:self.slideView.bounds].CGPath; - self.slideView.clipsToBounds = NO; - - self.secondarySlideView.layer.shadowColor = [[UIColor blackColor] CGColor]; - self.secondarySlideView.layer.shadowOpacity = 0.5; - self.secondarySlideView.layer.shadowRadius = 4.0; - self.secondarySlideView.layer.shadowOffset = CGSizeMake(3.0f, 3.0f); - self.secondarySlideView.layer.shadowPath = [UIBezierPath bezierPathWithRect:self.secondarySlideView.bounds].CGPath; - self.secondarySlideView.clipsToBounds = NO; - - // We calibrate once when presentation starts. needs a users alert to inform users to point at the center of the screen at the beginning - self.pointerCalibrationOn = YES; - - [super viewDidAppear:animated]; -} - -- (void) viewDidDisappear:(BOOL)animated -{ - self.count = 0; - [[NSNotificationCenter defaultCenter] removeObserver:self.slideShowFinishedObserver]; - [[NSNotificationCenter defaultCenter] removeObserver:self.slideShowImageNoteReadyObserver]; - [super viewDidDisappear:animated]; -} - - - -- (void)didReceiveMemoryWarning -{ - [super didReceiveMemoryWarning]; - // Dispose of any resources that can be recreated. -} - -- (void)viewDidUnload { - [self setLecturer_notes:nil]; - [self setSlideView:nil]; - [self setSlideNumber:nil]; - [self setSecondarySlideView:nil]; - [self setNotesView:nil]; - [self setMovingPointer:nil]; - [self setBlockingView:nil]; - [self setBottomView:nil]; - [self setTouchPointerScrollView:nil]; - [self setPointerBtn:nil]; - [super viewDidUnload]; -} - -- (IBAction)nextSlideAction:(id)sender { - [[self.comManager transmitter] nextTransition]; -} - -- (IBAction)previousSlideAction:(id)sender { - [[self.comManager transmitter] previousTransition]; -} - -@end |