side menu

This commit is contained in:
Gautier Pelloux-Prayer 2015-07-29 14:10:56 +02:00
parent f39d50e6f0
commit 7088aae44c
12 changed files with 400 additions and 352 deletions

View file

@ -17,7 +17,7 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" id="7" userLabel="toolsBar">
<rect key="frame" x="0.0" y="0.0" width="360.0000008953366" height="40"/>
<rect key="frame" x="0.0" y="0.0" width="359.99999484412984" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
<subviews>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="10" userLabel="backButton">
@ -47,7 +47,7 @@
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="9" userLabel="selectAllButton" customClass="UIToggleButton">
<rect key="frame" x="200" y="0.0" width="72.000000237000876" height="40"/>
<rect key="frame" x="200" y="0.0" width="71.999998635210773" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
<accessibility key="accessibilityConfiguration" label="Edit"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
@ -57,7 +57,7 @@
</state>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="UxT-TB-Ri4" userLabel="editButton" customClass="UIToggleButton">
<rect key="frame" x="288" y="0.0" width="72.000000895336598" height="40"/>
<rect key="frame" x="288" y="0.0" width="71.999994844129859" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
<accessibility key="accessibilityConfiguration" label="Edit"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
@ -70,7 +70,7 @@
</connections>
</button>
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="e4g-nB-qYa" userLabel="deleteButton" customClass="UIToggleButton">
<rect key="frame" x="288" y="0.0" width="72.000000895336598" height="40"/>
<rect key="frame" x="288" y="0.0" width="71.999994844129859" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
<accessibility key="accessibilityConfiguration" label="Edit"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
@ -110,11 +110,11 @@
</objects>
<resources>
<image name="back.png" width="71" height="64"/>
<image name="chat_add.png" width="96" height="86"/>
<image name="chat_add.png" width="32" height="29"/>
<image name="color_F.png" width="1" height="1"/>
<image name="delete.png" width="63" height="82"/>
<image name="edit_list.png" width="88" height="84"/>
<image name="select_all.png" width="79" height="79"/>
<image name="delete.png" width="21" height="27"/>
<image name="edit_list.png" width="29" height="28"/>
<image name="select_all.png" width="26" height="26"/>
</resources>
<simulatedMetricsContainer key="defaultSimulatedMetrics">
<simulatedStatusBarMetrics key="statusBar"/>

View file

@ -12,10 +12,7 @@
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>IBProxyObject</string>
<string>IBUIImageView</string>
<string>IBUILabel</string>
<string>IBUITableView</string>
<string>IBUITableViewController</string>
<string>IBUISwipeGestureRecognizer</string>
<string>IBUIView</string>
</array>
<array key="IBDocument.PluginDependencies">
@ -35,7 +32,7 @@
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUIView" id="191373211">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder"/>
<int key="NSvFlags">301</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="IBUIView" id="481442126">
@ -43,6 +40,7 @@
<int key="NSvFlags">314</int>
<string key="NSFrame">{{0, 40}, {360, 537}}</string>
<reference key="NSSuperview" ref="191373211"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="548578981"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<object class="NSColor" key="IBUIBackgroundColor" id="572758541">
@ -51,6 +49,7 @@
</object>
<bool key="IBUIAutoresizesSubviews">NO</bool>
<int key="IBUITag">1</int>
<array key="IBUIGestureRecognizers" id="0"/>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUIView" id="256276698">
@ -58,7 +57,8 @@
<int key="NSvFlags">290</int>
<string key="NSFrameSize">{360, 40}</string>
<reference key="NSSuperview" ref="191373211"/>
<reference key="NSNextKeyView" ref="481442126"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="28953768"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<reference key="IBUIBackgroundColor" ref="572758541"/>
<bool key="IBUIAutoresizesSubviews">NO</bool>
@ -71,208 +71,29 @@
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{0, 577}, {360, 63}}</string>
<reference key="NSSuperview" ref="191373211"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<reference key="IBUIBackgroundColor" ref="572758541"/>
<bool key="IBUIAutoresizesSubviews">NO</bool>
<int key="IBUITag">3</int>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUIView" id="1027426051">
<object class="IBUIView" id="28953768">
<reference key="NSNextResponder" ref="191373211"/>
<int key="NSvFlags">-2147483361</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="IBUIView" id="662020837">
<reference key="NSNextResponder" ref="1027426051"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="IBUIView" id="1021847833">
<reference key="NSNextResponder" ref="662020837"/>
<int key="NSvFlags">311</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="IBUIImageView" id="866032321">
<reference key="NSNextResponder" ref="1021847833"/>
<int key="NSvFlags">319</int>
<string key="NSFrame">{{0, 15}, {72, 61}}</string>
<reference key="NSSuperview" ref="1021847833"/>
<reference key="NSNextKeyView" ref="320287985"/>
<string key="NSHuggingPriority">{251, 251}</string>
<int key="IBUIContentMode">1</int>
<bool key="IBUIUserInteractionEnabled">NO</bool>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
<object class="NSCustomResource" key="IBUIImage">
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">avatar.png</string>
</object>
</object>
<object class="IBUILabel" id="320287985">
<reference key="NSNextResponder" ref="1021847833"/>
<int key="NSvFlags">319</int>
<string key="NSFrame">{{81, 15}, {259, 32}}</string>
<reference key="NSSuperview" ref="1021847833"/>
<reference key="NSNextKeyView" ref="760559139"/>
<string key="NSHuggingPriority">{251, 251}</string>
<bool key="IBUIOpaque">NO</bool>
<int key="IBUIContentMode">7</int>
<bool key="IBUIUserInteractionEnabled">NO</bool>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
<string key="IBUIText">John Doe</string>
<object class="NSColor" key="IBUITextColor">
<int key="NSColorSpace">1</int>
<bytes key="NSRGB">MCAwIDAAA</bytes>
</object>
<nil key="IBUIHighlightedColor"/>
<int key="IBUIBaselineAdjustment">0</int>
<object class="IBUIFontDescription" key="IBUIFontDescription">
<int key="type">1</int>
<int key="weightCategory">0</int>
<double key="pointSize">37</double>
</object>
<object class="NSFont" key="IBUIFont">
<string key="NSName">HelveticaNeue</string>
<double key="NSSize">37</double>
<int key="NSfFlags">16</int>
</object>
<bool key="IBUIAdjustsFontSizeToFit">NO</bool>
<bool key="useAutomaticPreferredMaxLayoutWidth">YES</bool>
</object>
<object class="IBUILabel" id="760559139">
<reference key="NSNextResponder" ref="1021847833"/>
<int key="NSvFlags">319</int>
<string key="NSFrame">{{81, 54}, {245, 22}}</string>
<reference key="NSSuperview" ref="1021847833"/>
<reference key="NSNextKeyView" ref="900140778"/>
<string key="NSHuggingPriority">{251, 251}</string>
<bool key="IBUIOpaque">NO</bool>
<int key="IBUIContentMode">7</int>
<bool key="IBUIUserInteractionEnabled">NO</bool>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
<string key="IBUIText">john.doe@sip.linphone.org</string>
<object class="NSColor" key="IBUITextColor">
<int key="NSColorSpace">1</int>
<bytes key="NSRGB">MC45ODc2NjQ2Mzk5IDAuMjc1MTI0ODc3NyAwLjAyOTczOTc4OTY2AA</bytes>
<object class="NSColorSpace" key="NSCustomColorSpace" id="823443822">
<int key="NSID">7</int>
<object class="NSMutableData" key="NSICC">
<bytes key="NS.bytes">AAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYAMQAAYWNzcE1TRlQAAAAASUVDIHNSR0IAAAAA
AAAAAAAAAAAAAPbWAAEAAAAA0y1IUCAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAARY3BydAAAAVAAAAAzZGVzYwAAAYQAAABsd3RwdAAAAfAAAAAUYmtwdAAAAgQAAAAU
clhZWgAAAhgAAAAUZ1hZWgAAAiwAAAAUYlhZWgAAAkAAAAAUZG1uZAAAAlQAAABwZG1kZAAAAsQAAACI
dnVlZAAAA0wAAACGdmlldwAAA9QAAAAkbHVtaQAAA/gAAAAUbWVhcwAABAwAAAAkdGVjaAAABDAAAAAM
clRSQwAABDwAAAgMZ1RSQwAABDwAAAgMYlRSQwAABDwAAAgMdGV4dAAAAABDb3B5cmlnaHQgKGMpIDE5
OTggSGV3bGV0dC1QYWNrYXJkIENvbXBhbnkAAGRlc2MAAAAAAAAAEnNSR0IgSUVDNjE5NjYtMi4xAAAA
AAAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABYWVog
AAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9kZXNj
AAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gAAAAAAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMu
Y2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAu
SUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAuSUVD
IDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAGRlc2MAAAAAAAAALFJlZmVyZW5jZSBWaWV3aW5nIENvbmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEA
AAAAAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAB2aWV3AAAAAAATpP4AFF8uABDPFAAD7cwABBMLAANcngAAAAFYWVog
AAAAAABMCVYAUAAAAFcf521lYXMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAKPAAAAAnNpZyAAAAAA
Q1JUIGN1cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBo
AG0AcgB3AHwAgQCGAIsAkACVAJoAnwCkAKkArgCyALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEB
AQcBDQETARkBHwElASsBMgE4AT4BRQFMAVIBWQFgAWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHR
AdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJUAl0CZwJxAnoChAKOApgCogKsArYCwQLLAtUC4ALr
AvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOWA6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQtBDsESARV
BGMEcQR+BIwEmgSoBLYExATTBOEE8AT+BQ0FHAUrBToFSQVYBWcFdwWGBZYFpgW1BcUF1QXlBfYGBgYW
BicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZBysHPQdPB2EHdAeGB5kHrAe/B9IH5Qf4CAsIHwgy
CEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlkCXkJjwmkCboJzwnlCfsKEQonCj0KVApqCoEKmAqu
CsUK3ArzCwsLIgs5C1ELaQuAC5gLsAvIC+EL+QwSDCoMQwxcDHUMjgynDMAM2QzzDQ0NJg1ADVoNdA2O
DakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8lD0EPXg96D5YPsw/PD+wQCRAmEEMQYRB+EJsQuRDX
EPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKjEsMS4xMDEyMTQxNjE4MTpBPFE+UUBhQnFEkUahSL
FK0UzhTwFRIVNBVWFXgVmxW9FeAWAxYmFkkWbBaPFrIW1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihiv
GNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrsGxQbOxtjG4obshvaHAIcKhxSHHscoxzMHPUdHh1H
HXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kflB+/H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJV
IoIiryLdIwojOCNmI5QjwiPwJB8kTSR8JKsk2iUJJTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfc
KA0oPyhxKKIo1CkGKTgpaymdKdAqAio1KmgqmyrPKwIrNitpK50r0SwFLDksbiyiLNctDC1BLXYtqy3h
LhYuTC6CLrcu7i8kL1ovkS/HL/4wNTBsMKQw2zESMUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRl
NJ402DUTNU01hzXCNf02NzZyNq426TckN2A3nDfXOBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtr
O6o76DwnPGU8pDzjPSI9YT2hPeA+ID5gPqA+4D8hP2E/oj/iQCNAZECmQOdBKUFqQaxB7kIwQnJCtUL3
QzpDfUPARANER0SKRM5FEkVVRZpF3kYiRmdGq0bwRzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsM
S1NLmkviTCpMcky6TQJNSk2TTdxOJU5uTrdPAE9JT5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1Oq
U/ZUQlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4FgvWH1Yy1kaWWlZuFoHWlZaplr1W0VblVvlXDVchlzW
XSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2GiYfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedmPWaS
ZuhnPWeTZ+loP2iWaOxpQ2maafFqSGqfavdrT2una/9sV2yvbQhtYG25bhJua27Ebx5veG/RcCtwhnDg
cTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+dpt2+HdWd7N4EXhueMx5KnmJeed6RnqlewR7Y3vC
fCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFrgc2CMIKSgvSDV4O6hB2EgITjhUeFq4YOhnKG14c7
h5+IBIhpiM6JM4mZif6KZIrKizCLlov8jGOMyo0xjZiN/45mjs6PNo+ekAaQbpDWkT+RqJIRknqS45NN
k7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQmfyaaJrVm0Kbr5wcnImc951kndKeQJ6unx2fi5/6
oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaLpv2nbqfgqFKoxKk3qamqHKqPqwKrdavprFys0K1E
rbiuLa6hrxavi7AAsHWw6rFgsdayS7LCszizrrQltJy1E7WKtgG2ebbwt2i34LhZuNG5SrnCuju6tbsu
u6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48JfwtvDWMPUxFHEzsVLxcjGRsbDx0HHv8g9yLzJOsm5
yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
2WzZ8dp22vvbgNwF3IrdEN2W3hzeot8p36/gNuC94UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui8
6Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A78zwWPDl8XLx//KM8xnzp/Q09ML1UPXe9m32+/eK+Bn4qPk4
+cf6V/rn+3f8B/yY/Sn9uv5L/tz/bf//A</bytes>
</object>
</object>
<characters key="NSComponents">1 0.368627451 0 1</characters>
</object>
<nil key="IBUIHighlightedColor"/>
<int key="IBUIBaselineAdjustment">0</int>
<float key="IBUIMinimumFontSize">8</float>
<object class="IBUIFontDescription" key="IBUIFontDescription">
<int key="type">1</int>
<int key="weightCategory">0</int>
<double key="pointSize">17</double>
</object>
<object class="NSFont" key="IBUIFont">
<string key="NSName">HelveticaNeue</string>
<double key="NSSize">17</double>
<int key="NSfFlags">16</int>
</object>
<bool key="useAutomaticPreferredMaxLayoutWidth">YES</bool>
</object>
</array>
<string key="NSFrameSize">{320, 93}</string>
<reference key="NSSuperview" ref="662020837"/>
<reference key="NSNextKeyView" ref="866032321"/>
<object class="NSColor" key="IBUIBackgroundColor">
<int key="NSColorSpace">1</int>
<bytes key="NSRGB">MC44NTQxNTM4NzE1IDAuODU0MTI4MzAxMSAwLjg1NDE0Mjc4NTEAA</bytes>
<reference key="NSCustomColorSpace" ref="823443822"/>
<characters key="NSComponents">0.8823529412 0.8823529412 0.8823529412 1</characters>
</object>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUITableView" id="900140778">
<reference key="NSNextResponder" ref="662020837"/>
<int key="NSvFlags">287</int>
<string key="NSFrame">{{0, 93}, {320, 507}}</string>
<reference key="NSSuperview" ref="662020837"/>
<reference key="NSNextKeyView" ref="256276698"/>
<object class="NSColor" key="IBUIBackgroundColor" id="542030919">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MQA</bytes>
</object>
<bool key="IBUIClipsSubviews">YES</bool>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
<bool key="IBUIAlwaysBounceVertical">YES</bool>
<int key="IBUISeparatorStyle">1</int>
<int key="IBUISectionIndexMinimumDisplayRowCount">0</int>
<bool key="IBUIShowsSelectionImmediatelyOnTouchBegin">YES</bool>
<float key="IBUIRowHeight">44</float>
<float key="IBUISectionHeaderHeight">22</float>
<float key="IBUISectionFooterHeight">22</float>
</object>
</array>
<string key="NSFrameSize">{320, 600}</string>
<reference key="NSSuperview" ref="1027426051"/>
<reference key="NSNextKeyView" ref="1021847833"/>
<reference key="IBUIBackgroundColor" ref="542030919"/>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
</array>
<string key="NSFrame">{{-360, 40}, {360, 600}}</string>
<int key="NSvFlags">-2147483329</int>
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{-360, 40}, {360, 640}}</string>
<reference key="NSSuperview" ref="191373211"/>
<reference key="NSNextKeyView" ref="662020837"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="481442126"/>
<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
</array>
<string key="NSFrameSize">{360, 640}</string>
<reference key="NSNextKeyView" ref="1027426051"/>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="256276698"/>
<reference key="IBUIBackgroundColor" ref="572758541"/>
<object class="IBUISimulatedSizeMetrics" key="IBUISimulatedDestinationMetrics" id="445885811">
<string key="IBUISimulatedSizeMetricsClass">IBUISimulatedFreeformSizeMetricsSentinel</string>
@ -280,35 +101,8 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
</object>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUITableViewController" id="845480959">
<object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
<int key="IBUIInterfaceOrientation">1</int>
<int key="interfaceOrientation">1</int>
</object>
<object class="IBUIScreenMetrics" key="IBUISimulatedDestinationMetrics">
<string key="IBUISimulatedSizeMetricsClass">IBUIScreenMetrics</string>
<string key="IBUITargetRuntime">IBCocoaTouchFramework</string>
<string key="IBUIDisplayName">iPhone 4-inch</string>
<object class="NSMutableDictionary" key="IBUINormalizedOrientationToSizeMap">
<bool key="EncodedWithXMLCoder">YES</bool>
<array key="dict.sortedKeys">
<integer value="1"/>
<integer value="3"/>
</array>
<array key="dict.values">
<string>{320, 568}</string>
<string>{568, 320}</string>
</array>
</object>
<int key="IBUIType">2</int>
</object>
<int key="IBUIEdgesForExtendedLayout">15</int>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
<bool key="IBUIHorizontal">NO</bool>
</object>
<object class="IBUIView" id="915565391">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder"/>
<int key="NSvFlags">301</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="IBUIView" id="575003184">
@ -316,6 +110,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<int key="NSvFlags">314</int>
<string key="NSFrame">{{0, 26}, {640, 284}}</string>
<reference key="NSSuperview" ref="915565391"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="872119935"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<reference key="IBUIBackgroundColor" ref="572758541"/>
@ -328,6 +123,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<int key="NSvFlags">290</int>
<string key="NSFrameSize">{640, 26}</string>
<reference key="NSSuperview" ref="915565391"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="575003184"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<reference key="IBUIBackgroundColor" ref="572758541"/>
@ -340,6 +136,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<int key="NSvFlags">266</int>
<string key="NSFrame">{{0, 310}, {640, 50}}</string>
<reference key="NSSuperview" ref="915565391"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<reference key="IBUIBackgroundColor" ref="572758541"/>
<bool key="IBUIAutoresizesSubviews">NO</bool>
@ -348,6 +145,8 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
</object>
</array>
<string key="NSFrameSize">{640, 360}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1051455928"/>
<reference key="IBUIBackgroundColor" ref="572758541"/>
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
@ -357,6 +156,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<reference key="IBUISimulatedDestinationMetrics" ref="445885811"/>
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
</object>
<object class="IBUISwipeGestureRecognizer" id="605127205"/>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<array key="connectionRecords">
@ -408,52 +208,45 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
</object>
<int key="connectionID">25</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">sideMenuTableViewController</string>
<reference key="source" ref="372490531"/>
<reference key="destination" ref="845480959"/>
</object>
<int key="connectionID">36</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">sideMenuView</string>
<reference key="source" ref="372490531"/>
<reference key="destination" ref="1027426051"/>
<reference key="destination" ref="28953768"/>
</object>
<int key="connectionID">37</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">view</string>
<reference key="source" ref="845480959"/>
<reference key="destination" ref="900140778"/>
<object class="IBCocoaTouchOutletCollectionConnection" key="connection">
<string key="label">gestureRecognizers</string>
<reference key="source" ref="481442126"/>
<reference key="destination" ref="605127205"/>
<bool key="addsContentToExistingCollection">YES</bool>
</object>
<int key="connectionID">33</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">dataSource</string>
<reference key="source" ref="900140778"/>
<reference key="destination" ref="845480959"/>
</object>
<int key="connectionID">34</int>
<int key="connectionID">41</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="900140778"/>
<reference key="destination" ref="845480959"/>
<reference key="source" ref="605127205"/>
<reference key="destination" ref="372490531"/>
</object>
<int key="connectionID">35</int>
<int key="connectionID">42</int>
</object>
<object class="IBConnectionRecord">
<object class="IBCocoaTouchEventConnection" key="connection">
<string key="label">onRightSwipe:</string>
<reference key="source" ref="605127205"/>
<reference key="destination" ref="372490531"/>
</object>
<int key="connectionID">43</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
<object class="IBObjectRecord">
<int key="objectID">0</int>
<array key="object" id="0"/>
<reference key="object" ref="0"/>
<reference key="children" ref="1000"/>
<nil key="parent"/>
</object>
@ -464,7 +257,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<reference ref="256276698"/>
<reference ref="481442126"/>
<reference ref="548578981"/>
<reference ref="1027426051"/>
<reference ref="28953768"/>
</array>
<reference key="parent" ref="0"/>
<string key="objectName">Portrait View</string>
@ -483,6 +276,7 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<object class="IBObjectRecord">
<int key="objectID">15</int>
<reference key="object" ref="481442126"/>
<array class="NSMutableArray" key="children"/>
<reference key="parent" ref="191373211"/>
<string key="objectName">content</string>
</object>
@ -529,63 +323,17 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<reference key="parent" ref="915565391"/>
<string key="objectName">tabBar</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">27</int>
<reference key="object" ref="845480959"/>
<reference key="parent" ref="0"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">26</int>
<reference key="object" ref="1027426051"/>
<array class="NSMutableArray" key="children">
<reference ref="662020837"/>
</array>
<reference key="object" ref="28953768"/>
<array class="NSMutableArray" key="children"/>
<reference key="parent" ref="191373211"/>
<string key="objectName">menuView</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">38</int>
<reference key="object" ref="662020837"/>
<array class="NSMutableArray" key="children">
<reference ref="1021847833"/>
<reference ref="900140778"/>
</array>
<reference key="parent" ref="1027426051"/>
<string key="objectName">sideMenuView</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">29</int>
<reference key="object" ref="1021847833"/>
<array class="NSMutableArray" key="children">
<reference ref="760559139"/>
<reference ref="320287985"/>
<reference ref="866032321"/>
</array>
<reference key="parent" ref="662020837"/>
<string key="objectName">headerView</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">30</int>
<reference key="object" ref="760559139"/>
<reference key="parent" ref="1021847833"/>
<string key="objectName">addressLabel</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">31</int>
<reference key="object" ref="320287985"/>
<reference key="parent" ref="1021847833"/>
<string key="objectName">nameLabel</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">32</int>
<reference key="object" ref="866032321"/>
<reference key="parent" ref="1021847833"/>
<string key="objectName">avatarImage</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">28</int>
<reference key="object" ref="900140778"/>
<reference key="parent" ref="662020837"/>
<int key="objectID">40</int>
<reference key="object" ref="605127205"/>
<reference key="parent" ref="0"/>
</object>
</array>
</object>
@ -615,38 +363,167 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
<string key="26.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="26.IBUserGuides" ref="0"/>
<reference key="26.IBViewMetadataConstraints" ref="0"/>
<string key="27.CustomClassName">SideMenuTableViewController</string>
<string key="27.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="28.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="28.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="28.IBUserGuides" ref="0"/>
<reference key="28.IBViewMetadataConstraints" ref="0"/>
<reference key="29.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="29.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="29.IBUserGuides" ref="0"/>
<reference key="29.IBViewMetadataConstraints" ref="0"/>
<reference key="30.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="30.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="30.IBUserGuides" ref="0"/>
<reference key="30.IBViewMetadataConstraints" ref="0"/>
<reference key="31.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="31.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="31.IBUserGuides" ref="0"/>
<reference key="31.IBViewMetadataConstraints" ref="0"/>
<reference key="32.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="32.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<reference key="32.IBUserGuides" ref="0"/>
<reference key="32.IBViewMetadataConstraints" ref="0"/>
<reference key="38.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="38.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
<string key="40.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
<nil key="activeLocalization"/>
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
<int key="maxID">39</int>
<int key="maxID">43</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
<object class="IBPartialClassDescription">
<string key="className">TPMultiLayoutViewController</string>
<string key="superclassName">UIViewController</string>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="landscapeView">UIView</string>
<string key="portraitView">UIView</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="landscapeView">
<string key="name">landscapeView</string>
<string key="candidateClassName">UIView</string>
</object>
<object class="IBToOneOutletInfo" key="portraitView">
<string key="name">portraitView</string>
<string key="candidateClassName">UIView</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">../Classes/Utils/TPMultiLayoutViewController/TPMultiLayoutViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UICompositeViewController</string>
<string key="superclassName">TPMultiLayoutViewController</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">onRightSwipe:</string>
<string key="NS.object.0">id</string>
</object>
<object class="NSMutableDictionary" key="actionInfosByName">
<string key="NS.key.0">onRightSwipe:</string>
<object class="IBActionInfo" key="NS.object.0">
<string key="name">onRightSwipe:</string>
<string key="candidateClassName">id</string>
</object>
</object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="contentView">UIView</string>
<string key="sideMenuView">UIView</string>
<string key="stateBarView">UIView</string>
<string key="tabBarView">UIView</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="contentView">
<string key="name">contentView</string>
<string key="candidateClassName">UIView</string>
</object>
<object class="IBToOneOutletInfo" key="sideMenuView">
<string key="name">sideMenuView</string>
<string key="candidateClassName">UIView</string>
</object>
<object class="IBToOneOutletInfo" key="stateBarView">
<string key="name">stateBarView</string>
<string key="candidateClassName">UIView</string>
</object>
<object class="IBToOneOutletInfo" key="tabBarView">
<string key="name">tabBarView</string>
<string key="candidateClassName">UIView</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">../Classes/LinphoneUI/UICompositeViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UICompositeViewController</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">onRightSwipe:</string>
<string key="NS.object.0">id</string>
</object>
<object class="NSMutableDictionary" key="actionInfosByName">
<string key="NS.key.0">onRightSwipe:</string>
<object class="IBActionInfo" key="NS.object.0">
<string key="name">onRightSwipe:</string>
<string key="candidateClassName">id</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">../Classes/LinphoneUI/UICompositeViewController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UITransparentView</string>
<string key="superclassName">UIView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">../Classes/LinphoneUI/UITransparentView.h</string>
</object>
</object>
</array>
<array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
<object class="IBPartialClassDescription">
<string key="className">UIGestureRecognizer</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UIGestureRecognizer.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UIResponder</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UIResponder.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UISearchBar</string>
<string key="superclassName">UIView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UISearchBar.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UISearchDisplayController</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UISearchDisplayController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UISwipeGestureRecognizer</string>
<string key="superclassName">UIGestureRecognizer</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UISwipeGestureRecognizer.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UIView</string>
<string key="superclassName">UIResponder</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UIView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">UIViewController</string>
<string key="superclassName">UIResponder</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">UIKit.framework/Headers/UIViewController.h</string>
</object>
</object>
</array>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes"/>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">NO</bool>
@ -656,9 +533,5 @@ yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo
</object>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
<string key="NS.key.0">avatar.png</string>
<string key="NS.object.0">{751, 751}</string>
</object>
</data>
</archive>

View file

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
</dependencies>
<objects>
@ -114,7 +115,7 @@
<color key="backgroundColor" red="0.0" green="1" blue="0.19194547549999999" alpha="0.0" colorSpace="calibratedRGB"/>
<nil key="simulatedStatusBarMetrics"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
<point key="canvasLocation" x="359" y="217.5"/>
<point key="canvasLocation" x="401" y="264.5"/>
</view>
</objects>
<resources>

View file

@ -64,8 +64,7 @@
@property (nonatomic, strong) IBOutlet UIView* stateBarView;
@property (nonatomic, strong) IBOutlet UIView* contentView;
@property (nonatomic, strong) IBOutlet UIView* tabBarView;
@property(weak, nonatomic) IBOutlet UIView *sideMenuView;
@property(strong, nonatomic) IBOutlet SideMenuTableViewController *sideMenuTableViewController;
@property(strong, nonatomic) IBOutlet UIView *sideMenuView;
- (void)changeView:(UICompositeViewDescription *)description;
- (void)setFullScreen:(BOOL)enabled;
@ -77,5 +76,6 @@
- (UIViewController *)getCurrentViewController;
- (UIInterfaceOrientation)currentOrientation;
- (void)clearCache:(NSArray*)exclude;
- (IBAction)onRightSwipe:(id)sender;
@end

View file

@ -72,6 +72,7 @@
@property(nonatomic, strong) UIViewController *stateBarViewController;
@property(nonatomic, strong) UIViewController *tabBarViewController;
@property(nonatomic, strong) UIViewController *contentViewController;
@property(nonatomic, strong) UIViewController *sideMenuViewController;
@end
@ -83,6 +84,7 @@
@synthesize tabBarViewController = _tabBarViewController;
@synthesize stateBarViewController = _stateBarViewController;
@synthesize contentViewController = _contentViewController;
@synthesize sideMenuViewController = _sideMenuViewController;
@synthesize viewTransition;
@ -165,6 +167,9 @@
the device screen size at load */
[self updateViewsFramesAccordingToLaunchOrientation];
[super viewDidLoad];
_sideMenuViewController = [self getCachedController:@"SideMenuViewController"];
[UICompositeViewController addSubView:_sideMenuViewController view:_sideMenuView];
}
- (void)viewWillAppear:(BOOL)animated {
@ -172,6 +177,7 @@
[self.contentViewController viewWillAppear:animated];
[self.tabBarViewController viewWillAppear:animated];
[self.stateBarViewController viewWillAppear:animated];
[self.sideMenuViewController viewWillAppear:animated];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(orientationDidChange:)
@ -185,6 +191,7 @@
[self.contentViewController viewDidAppear:animated];
[self.tabBarViewController viewDidAppear:animated];
[self.stateBarViewController viewDidAppear:animated];
[self.sideMenuViewController viewDidAppear:animated];
}
- (void)viewWillDisappear:(BOOL)animated {
@ -192,6 +199,7 @@
[self.contentViewController viewWillDisappear:animated];
[self.tabBarViewController viewWillDisappear:animated];
[self.stateBarViewController viewWillDisappear:animated];
[self.sideMenuViewController viewWillDisappear:animated];
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
@ -203,6 +211,7 @@
[self.contentViewController viewDidDisappear:animated];
[self.tabBarViewController viewDidDisappear:animated];
[self.stateBarViewController viewDidDisappear:animated];
[self.sideMenuViewController viewDidDisappear:animated];
}
#pragma mark - Rotation messages
@ -214,6 +223,7 @@
[self.contentViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.tabBarViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.stateBarViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.sideMenuViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
}
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
@ -223,6 +233,7 @@
[self.contentViewController willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.tabBarViewController willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.stateBarViewController willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self.sideMenuViewController willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
[self update:nil tabBar:nil stateBar:nil fullscreen:nil];
}
@ -231,6 +242,7 @@
[self.contentViewController didRotateFromInterfaceOrientation:fromInterfaceOrientation];
[self.tabBarViewController didRotateFromInterfaceOrientation:fromInterfaceOrientation];
[self.stateBarViewController didRotateFromInterfaceOrientation:fromInterfaceOrientation];
[self.sideMenuViewController didRotateFromInterfaceOrientation:fromInterfaceOrientation];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
@ -317,6 +329,10 @@
}
}
- (IBAction)onRightSwipe:(id)sender {
[self hideSideMenu:NO];
}
- (UIInterfaceOrientation)currentOrientation {
return currentOrientation;
}
@ -437,6 +453,7 @@
[self.contentViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
[self.tabBarViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
[self.stateBarViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
[self.sideMenuViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
}
} else {
if (oldContentViewController != newContentViewController) {
@ -454,8 +471,11 @@
if (oldStateBarViewController != newStateBarViewController) {
UIInterfaceOrientation oldOrientation = self.stateBarViewController.interfaceOrientation;
[self.stateBarViewController willRotateToInterfaceOrientation:correctOrientation duration:0];
[self.sideMenuViewController willRotateToInterfaceOrientation:correctOrientation duration:0];
[self.stateBarViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
[self.sideMenuViewController willAnimateRotationToInterfaceOrientation:correctOrientation duration:0];
[self.stateBarViewController didRotateFromInterfaceOrientation:oldOrientation];
[self.sideMenuViewController didRotateFromInterfaceOrientation:oldOrientation];
}
}
} else {
@ -538,6 +558,11 @@
frame.size.width = [stateBarView bounds].size.width;
[self.stateBarViewController.view setFrame:frame];
CGRect sideMenuFrame = contentFrame;
sideMenuFrame.size.height += tabFrame.size.height;
_sideMenuView.frame = sideMenuFrame;
_sideMenuViewController.view.frame = [_sideMenuView bounds];
// Commit animation
if (tabBar != nil || stateBar != nil || fullscreen != nil) {
[UIView commitAnimations];
@ -580,12 +605,17 @@
}
- (void)hideSideMenu:(BOOL)hidden animated:(BOOL)animated {
LOGI(@"%s side menu", hidden ? "Closing" : "Opening");
LOGI(@"%s side menu %s animation", hidden ? "Closing" : "Opening", animated ? "with" : "without");
// resign keyboard, if any
[LinphoneUtils findAndResignFirstResponder:self.view];
CGRect d = _sideMenuView.frame;
// first replace sidemenuview at the right place, if needed
d.origin.x = hidden ? 0 : -d.size.width;
_sideMenuView.frame = d;
d.origin.x = hidden ? -d.size.width : 0;
if (animated) {

View file

@ -22,5 +22,4 @@ typedef void (^SideMenuEntryBlock)(void);
@property(nonatomic, retain) NSMutableArray *sideMenuEntries;
+ (void)addSideMenuEntry:(SideMenuEntry *)entry;
@end

View file

@ -26,18 +26,12 @@
@implementation SideMenuTableViewController
+ (void)addSideMenuEntry:(SideMenuEntry *)entry {
SideMenuTableViewController *this = PhoneMainView.instance.mainViewController.sideMenuTableViewController;
[this.sideMenuEntries addObject:entry];
}
- (void)viewDidLoad {
_sideMenuEntries = [[NSMutableArray alloc] init];
[_sideMenuEntries
addObject:[[SideMenuEntry alloc] initWithTitle:NSLocalizedString(@"Settings", nil)
tapBlock:^() {
[PhoneMainView.instance
changeCurrentView:SettingsViewController.compositeViewDescription];
}]];

View file

@ -0,0 +1,20 @@
//
// SideMenuViewController.h
// linphone
//
// Created by Gautier Pelloux-Prayer on 28/07/15.
//
//
#import <UIKit/UIKit.h>
#import "SideMenuTableViewController.h"
@interface SideMenuViewController : UIViewController
@property(weak, nonatomic) IBOutlet UIImageView *avatarImage;
@property(weak, nonatomic) IBOutlet UILabel *nameLabel;
@property(weak, nonatomic) IBOutlet UILabel *addressLabel;
@property(strong, nonatomic) IBOutlet SideMenuTableViewController *sideMenuTableViewController;
- (IBAction)onLateralSwipe:(id)sender;
@end

View file

@ -0,0 +1,32 @@
//
// SideMenuViewController.m
// linphone
//
// Created by Gautier Pelloux-Prayer on 28/07/15.
//
//
#import "SideMenuViewController.h"
#import "LinphoneManager.h"
#import "PhoneMainView.h"
@implementation SideMenuViewController
#pragma mark - Lifecycle Functions
- (id)init {
return [super initWithNibName:@"SideMenuViewController" bundle:[NSBundle mainBundle]];
}
- (void)viewWillAppear:(BOOL)animated {
LinphoneProxyConfig *default_proxy = linphone_core_get_default_proxy_config([LinphoneManager getLc]);
linphone_proxy_config_get [FastAddressBook setDisplayNameLabel:_nameLabel forAddress:@"toto replace me"];
[FastAddressBook setDisplayNameLabel:_addressLabel forAddress:@"yolo"];
[FastAddressBook getContactImage:nil thumbnail:NO];
}
- (IBAction)onLateralSwipe:(id)sender {
LOGI(@"Swipe!");
[[PhoneMainView instance].mainViewController hideSideMenu:YES];
}
@end

View file

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="SideMenuViewController">
<connections>
<outlet property="addressLabel" destination="aQ3-qc-xBv" id="ZhC-Tf-3Tn"/>
<outlet property="avatarImage" destination="BNQ-7N-NGT" id="LXr-Yr-zSK"/>
<outlet property="nameLabel" destination="XbU-2B-u1b" id="rKF-4e-1HA"/>
<outlet property="sideMenuTableViewController" destination="Yyh-z6-IGO" id="6Xq-OQ-vYm"/>
<outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
</connections>
</placeholder>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
<rect key="frame" x="0.0" y="0.0" width="360" height="640"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" id="i1P-cG-q8h" userLabel="headerView">
<rect key="frame" x="0.0" y="0.0" width="300" height="100"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="avatar.png" id="BNQ-7N-NGT" userLabel="avatarImage">
<rect key="frame" x="0.0" y="15" width="90" height="61"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="John Doe" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="XbU-2B-u1b" userLabel="nameLabel">
<rect key="frame" x="98" y="15" width="202" height="32"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="37"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="john.doe@sip.linphone.org" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="8" id="aQ3-qc-xBv" userLabel="addressLabel">
<rect key="frame" x="98" y="54" width="202" height="22"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="1" green="0.36862745099999999" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" red="0.88235294119999996" green="0.88235294119999996" blue="0.88235294119999996" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
</view>
<tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="Ttt-1k-jAm">
<rect key="frame" x="0.0" y="100" width="300" height="532"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<connections>
<outlet property="dataSource" destination="Yyh-z6-IGO" id="ytx-b8-NGX"/>
<outlet property="delegate" destination="Yyh-z6-IGO" id="c1j-vG-TbB"/>
</connections>
</tableView>
</subviews>
<gestureRecognizers/>
<nil key="simulatedStatusBarMetrics"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
<connections>
<outletCollection property="gestureRecognizers" destination="JRs-i1-zCl" appends="YES" id="SPs-Nb-Y0e"/>
</connections>
<point key="canvasLocation" x="259" y="210"/>
</view>
<tableViewController id="Yyh-z6-IGO" customClass="SideMenuTableViewController">
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics"/>
<simulatedOrientationMetrics key="simulatedOrientationMetrics"/>
<simulatedScreenMetrics key="simulatedDestinationMetrics" type="retina4"/>
<connections>
<outlet property="view" destination="Ttt-1k-jAm" id="Njc-lf-vXv"/>
</connections>
<point key="canvasLocation" x="815" y="194"/>
</tableViewController>
<swipeGestureRecognizer direction="left" id="JRs-i1-zCl">
<connections>
<action selector="onLateralSwipe:" destination="-1" id="5td-pZ-6Vc"/>
<outlet property="delegate" destination="-1" id="yhK-9x-aT0"/>
</connections>
</swipeGestureRecognizer>
</objects>
<resources>
<image name="avatar.png" width="751" height="751"/>
</resources>
<simulatedMetricsContainer key="defaultSimulatedMetrics">
<simulatedStatusBarMetrics key="statusBar"/>
<simulatedOrientationMetrics key="orientation"/>
<simulatedScreenMetrics key="destination" type="retina4"/>
</simulatedMetricsContainer>
</document>

View file

@ -108,6 +108,8 @@
632DA24D1B43EE9400EB356A /* Utils.m in Sources */ = {isa = PBXBuildFile; fileRef = D35860D515B549B500513429 /* Utils.m */; };
632DA24E1B43EEEF00EB356A /* Utils.m in Sources */ = {isa = PBXBuildFile; fileRef = D35860D515B549B500513429 /* Utils.m */; };
633756391B67BAF400E21BAD /* SideMenuTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 633756381B67BAF400E21BAD /* SideMenuTableViewController.m */; };
633756451B67D2B200E21BAD /* SideMenuViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 633756431B67D2B100E21BAD /* SideMenuViewController.m */; };
633756461B67D2B200E21BAD /* SideMenuViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 633756441B67D2B100E21BAD /* SideMenuViewController.xib */; };
634610061B61330300548952 /* UILabel+Boldify.m in Sources */ = {isa = PBXBuildFile; fileRef = 634610051B61330300548952 /* UILabel+Boldify.m */; };
6346100F1B61409800548952 /* OutgoingCallViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6346100E1B61409800548952 /* OutgoingCallViewController.m */; };
634610121B6140A500548952 /* OutgoingCallViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 634610101B6140A500548952 /* OutgoingCallViewController.xib */; };
@ -659,6 +661,9 @@
63158FAC1B468E0E00969917 /* ImageOptim.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = ImageOptim.sh; path = Tools/ImageOptim.sh; sourceTree = "<group>"; };
633756371B67BAF400E21BAD /* SideMenuTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SideMenuTableViewController.h; sourceTree = "<group>"; };
633756381B67BAF400E21BAD /* SideMenuTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SideMenuTableViewController.m; sourceTree = "<group>"; };
633756421B67D2B100E21BAD /* SideMenuViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SideMenuViewController.h; sourceTree = "<group>"; };
633756431B67D2B100E21BAD /* SideMenuViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SideMenuViewController.m; sourceTree = "<group>"; };
633756441B67D2B100E21BAD /* SideMenuViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SideMenuViewController.xib; sourceTree = "<group>"; };
633E388219FFB0F400936D1C /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
634610041B61330300548952 /* UILabel+Boldify.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UILabel+Boldify.h"; sourceTree = "<group>"; };
634610051B61330300548952 /* UILabel+Boldify.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UILabel+Boldify.m"; sourceTree = "<group>"; };
@ -1329,6 +1334,9 @@
D3D5126A160B3A8E00946DF8 /* WizardViews.xib */,
633756371B67BAF400E21BAD /* SideMenuTableViewController.h */,
633756381B67BAF400E21BAD /* SideMenuTableViewController.m */,
633756421B67D2B100E21BAD /* SideMenuViewController.h */,
633756431B67D2B100E21BAD /* SideMenuViewController.m */,
633756441B67D2B100E21BAD /* SideMenuViewController.xib */,
);
path = Classes;
sourceTree = "<group>";
@ -2203,6 +2211,7 @@
D38187D115FE346B00C3EDCA /* HistoryViewController.xib in Resources */,
634CEDA51B6630DB00D7A921 /* call_start_body_disabled.png in Resources */,
D38187BD15FE342800C3EDCA /* ContactsViewController.xib in Resources */,
633756461B67D2B200E21BAD /* SideMenuViewController.xib in Resources */,
634CED9B1B6630DB00D7A921 /* call_alt_start.png in Resources */,
634CEE031B6630DB00D7A921 /* security_ko.png in Resources */,
634CEDAE1B6630DB00D7A921 /* camera_switch_default.png in Resources */,
@ -2448,6 +2457,7 @@
1D60589B0D05DD56006BFB54 /* main.m in Sources */,
1D3623260D0F684500981E51 /* LinphoneAppDelegate.m in Sources */,
22F2508E107141E100AC9B3F /* DialerViewController.m in Sources */,
633756451B67D2B200E21BAD /* SideMenuViewController.m in Sources */,
22E0A822111C44E100B04932 /* AboutViewController.m in Sources */,
634610061B61330300548952 /* UILabel+Boldify.m in Sources */,
2248E90E12F7E4CF00220D9C /* UIDigitButton.m in Sources */,

@ -1 +1 @@
Subproject commit 04c43a9f64db5152e2859528c40dbd79008ccf5b
Subproject commit e0b013c8bb630be19540b132ba1b94354384c175