mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 11:08:06 +00:00
history details
This commit is contained in:
parent
ed2b0fb272
commit
10310ac56f
9 changed files with 189 additions and 201 deletions
|
|
@ -1,7 +1,6 @@
|
|||
<?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>
|
||||
|
|
|
|||
|
|
@ -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.00000546735953" height="40"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="360.0000008953366" 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.000001447242141" height="40"/>
|
||||
<rect key="frame" x="200" y="0.0" width="72.000000237000876" 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.000005467359557" height="40"/>
|
||||
<rect key="frame" x="288" y="0.0" width="72.000000895336598" 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.000005467359557" height="40"/>
|
||||
<rect key="frame" x="288" y="0.0" width="72.000000895336598" 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"/>
|
||||
|
|
|
|||
|
|
@ -10,16 +10,8 @@
|
|||
<outlet property="addContactButton" destination="50" id="52"/>
|
||||
<outlet property="addressLabel" destination="25" id="42"/>
|
||||
<outlet property="avatarImage" destination="23" id="43"/>
|
||||
<outlet property="callButton" destination="37" id="61"/>
|
||||
<outlet property="dateHeaderLabel" destination="27" id="44"/>
|
||||
<outlet property="dateLabel" destination="28" id="45"/>
|
||||
<outlet property="durationHeaderLabel" destination="31" id="46"/>
|
||||
<outlet property="durationLabel" destination="32" id="47"/>
|
||||
<outlet property="messageButton" destination="59" id="62"/>
|
||||
<outlet property="plainAddressHeaderLabel" destination="55" id="63"/>
|
||||
<outlet property="plainAddressLabel" destination="56" id="64"/>
|
||||
<outlet property="typeHeaderLabel" destination="36" id="48"/>
|
||||
<outlet property="typeLabel" destination="35" id="49"/>
|
||||
<outlet property="headerView" destination="33" id="iv2-Rj-j3j"/>
|
||||
<outlet property="tableView" destination="baU-d4-eu3" id="3q4-5X-yCB"/>
|
||||
<outlet property="view" destination="4" id="10"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
|
|
@ -29,39 +21,25 @@
|
|||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" id="6" userLabel="navigationBar">
|
||||
<rect key="frame" x="0.0" y="0.0" width="360" height="44"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="360" height="40"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="9" userLabel="backButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="0.0" y="0.0" width="160" height="44"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="72" height="40"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="18" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Back" backgroundImage="history_details_back_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="history_details_back_over.png">
|
||||
<color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="normal" image="back.png"/>
|
||||
<connections>
|
||||
<action selector="onBackClick:" destination="-1" eventType="touchUpInside" id="11"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="50" userLabel="addButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="200" y="0.0" width="160" height="44"/>
|
||||
<rect key="frame" x="288" y="0.0" width="72" height="40"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Add to contact"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="18" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Add to contacts" backgroundImage="history_details_add_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="history_details_add_over.png">
|
||||
<color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="normal" image="contact_add.png"/>
|
||||
<connections>
|
||||
<action selector="onAddContactClick:" destination="-1" eventType="touchUpInside" id="53"/>
|
||||
</connections>
|
||||
|
|
@ -70,196 +48,101 @@
|
|||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" id="33" userLabel="headerView">
|
||||
<rect key="frame" x="0.0" y="44" width="352" height="100"/>
|
||||
<rect key="frame" x="0.0" y="40" width="360" height="146"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="38" userLabel="headerButton">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="100"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration">
|
||||
<bool key="isElement" value="NO"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
|
||||
<state key="normal">
|
||||
<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="onContactClick:" destination="-1" eventType="touchUpInside" id="40"/>
|
||||
</connections>
|
||||
</button>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="avatar_shadow_small.png" id="24" userLabel="avatarShadowBackground">
|
||||
<rect key="frame" x="-13" y="-5" width="131" height="107"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
</imageView>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="avatar_unknown_small.png" id="23" userLabel="avatarImage">
|
||||
<rect key="frame" x="20" y="6" width="65" height="65"/>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="avatar.png" id="23" userLabel="avatarImage" customClass="UIRoundedImageView">
|
||||
<rect key="frame" x="144" y="0.0" width="65" height="65"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact avatar">
|
||||
<accessibilityTraits key="traits" none="YES" image="YES" notEnabled="YES"/>
|
||||
<bool key="isElement" value="YES"/>
|
||||
</accessibility>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Contact1" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="25" userLabel="addressLabel">
|
||||
<rect key="frame" x="101" y="37" width="231" height="43"/>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" usesAttributedText="YES" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="25" userLabel="contactLabel">
|
||||
<rect key="frame" x="0.0" y="68" width="352" height="16"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="22"/>
|
||||
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<attributedString key="attributedText">
|
||||
<fragment content="John ">
|
||||
<attributes>
|
||||
<color key="NSColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<font key="NSFont" size="22" name="HelveticaNeue"/>
|
||||
<paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="truncatingTail" baseWritingDirection="natural"/>
|
||||
</attributes>
|
||||
</fragment>
|
||||
<fragment content="Doe">
|
||||
<attributes>
|
||||
<color key="NSColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<font key="NSFont" size="22" name="HelveticaNeue-Bold"/>
|
||||
<paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="truncatingTail" baseWritingDirection="natural"/>
|
||||
</attributes>
|
||||
</fragment>
|
||||
</attributedString>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" id="29" userLabel="dateView">
|
||||
<rect key="frame" x="23" y="152" width="315" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Date:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="27" userLabel="dateHeaderLabel">
|
||||
<rect key="frame" x="0.0" y="0.0" width="49" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration">
|
||||
<bool key="isElement" value="NO"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="11/11/2011 at 10:01" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="28" userLabel="dateLabel">
|
||||
<rect key="frame" x="57" y="0.0" width="258" height="21"/>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="johndoe@sip.linphone.org" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="EoB-ux-sD7" userLabel="addressLabel">
|
||||
<rect key="frame" x="4" y="88" width="352" height="18"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Call date">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="10"/>
|
||||
<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" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" id="30" userLabel="durationView">
|
||||
<rect key="frame" x="23" y="181" width="315" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Duration:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="31" userLabel="durationHeaderLabel">
|
||||
<rect key="frame" x="0.0" y="0.0" width="80" height="21"/>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="linphone_user.png" id="mfN-Ai-9RX" userLabel="linphoneImage" customClass="UIRoundedImageView">
|
||||
<rect key="frame" x="217" y="23" width="20" height="20"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration">
|
||||
<bool key="isElement" value="NO"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact avatar">
|
||||
<accessibilityTraits key="traits" none="YES" image="YES" notEnabled="YES"/>
|
||||
<bool key="isElement" value="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="9:05" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="32" userLabel="durationLabel">
|
||||
<rect key="frame" x="88" y="0.0" width="227" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Call duration">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" id="34" userLabel="typeView">
|
||||
<rect key="frame" x="23" y="210" width="315" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Type:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="36" userLabel="typeHeaderLabel">
|
||||
<rect key="frame" x="0.0" y="0.0" width="57" height="21"/>
|
||||
</imageView>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="5eX-W0-T4B" userLabel="callButton">
|
||||
<rect key="frame" x="130" y="104" width="42" height="42"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration">
|
||||
<bool key="isElement" value="NO"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="outgoing call" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="35" userLabel="typeLabel">
|
||||
<rect key="frame" x="65" y="0.0" width="250" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Call type">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" id="54" userLabel="plainAddressView">
|
||||
<rect key="frame" x="23" y="239" width="315" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Address:" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="55" userLabel="plainAddressHeaderLabel">
|
||||
<rect key="frame" x="0.0" y="0.0" width="78" height="21"/>
|
||||
<state key="normal" title="Button" image="call_start_body_default.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="obZ-W7-q8P" userLabel="chatButton">
|
||||
<rect key="frame" x="180" y="104" width="42" height="42"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration">
|
||||
<bool key="isElement" value="NO"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="0102030405" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="56" userLabel="plainAddressLabel">
|
||||
<rect key="frame" x="86" y="0.0" width="229" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Address">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<state key="normal" title="Button" image="chat_start_body_default.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
</button>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" id="37" userLabel="callButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="53" y="268" width="255" height="50"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Callback"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="20"/>
|
||||
<inset key="contentEdgeInsets" minX="10" minY="10" maxX="10" maxY="10"/>
|
||||
<state key="normal" title="Call" backgroundImage="button_background_default.png">
|
||||
<color key="titleColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="button_background_over.png"/>
|
||||
<tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="k6N-Av-eOu">
|
||||
<rect key="frame" x="0.0" y="194" width="360" height="343"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<connections>
|
||||
<action selector="onCallClick:" destination="-1" eventType="touchUpInside" id="65"/>
|
||||
<outlet property="dataSource" destination="baU-d4-eu3" id="p7o-Mx-Kmc"/>
|
||||
<outlet property="delegate" destination="baU-d4-eu3" id="iS5-xg-0C2"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" id="59" userLabel="messageButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="53" y="326" width="255" height="50"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Send message"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="20"/>
|
||||
<inset key="contentEdgeInsets" minX="10" minY="10" maxX="10" maxY="10"/>
|
||||
<state key="normal" title="Send message" backgroundImage="button_background_default.png">
|
||||
<color key="titleColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="button_background_over.png"/>
|
||||
<connections>
|
||||
<action selector="onMessageClick:" destination="-1" eventType="touchUpInside" id="66"/>
|
||||
</connections>
|
||||
</button>
|
||||
</tableView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<point key="canvasLocation" x="235" y="219.5"/>
|
||||
</view>
|
||||
<tableViewController id="baU-d4-eu3" customClass="HistoryDetailsTableViewController">
|
||||
<connections>
|
||||
<outlet property="view" destination="k6N-Av-eOu" id="Dos-d4-5l5"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="621" y="235"/>
|
||||
</tableViewController>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="avatar_shadow_small.png" width="262" height="214"/>
|
||||
<image name="avatar_unknown_small.png" width="131" height="131"/>
|
||||
<image name="button_background_default.png" width="550" height="101"/>
|
||||
<image name="button_background_over.png" width="550" height="101"/>
|
||||
<image name="history_details_add_default.png" width="320" height="88"/>
|
||||
<image name="history_details_add_over.png" width="320" height="88"/>
|
||||
<image name="history_details_back_default.png" width="320" height="88"/>
|
||||
<image name="history_details_back_over.png" width="320" height="88"/>
|
||||
<image name="avatar.png" width="751" height="751"/>
|
||||
<image name="back.png" width="71" height="64"/>
|
||||
<image name="call_start_body_default.png" width="150" height="150"/>
|
||||
<image name="chat_start_body_default.png" width="150" height="150"/>
|
||||
<image name="contact_add.png" width="100" height="86"/>
|
||||
<image name="linphone_user.png" width="77" height="66"/>
|
||||
</resources>
|
||||
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
||||
<simulatedStatusBarMetrics key="statusBar"/>
|
||||
|
|
|
|||
|
|
@ -47,10 +47,10 @@
|
|||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="All contacts filter"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" image="history_all.png" backgroundImage="color_F.png">
|
||||
<state key="normal" image="history_all_default.png" backgroundImage="color_F.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="color_E.png"/>
|
||||
<state key="selected" image="history_all_selected.png" backgroundImage="color_E.png"/>
|
||||
<connections>
|
||||
<action selector="onAllClick:" destination="-1" eventType="touchUpInside" id="29"/>
|
||||
</connections>
|
||||
|
|
@ -60,10 +60,10 @@
|
|||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Missed contacts filter"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" image="history_missed.png" backgroundImage="color_F.png">
|
||||
<state key="normal" image="history_missed_default.png" backgroundImage="color_F.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="color_E.png"/>
|
||||
<state key="selected" image="history_missed_selected.png" backgroundImage="color_E.png"/>
|
||||
<connections>
|
||||
<action selector="onMissedClick:" destination="-1" eventType="touchUpInside" id="30"/>
|
||||
</connections>
|
||||
|
|
@ -116,10 +116,12 @@
|
|||
<resources>
|
||||
<image name="color_E.png" width="1" height="1"/>
|
||||
<image name="color_F.png" width="1" height="1"/>
|
||||
<image name="delete.png" width="64" height="82"/>
|
||||
<image name="edit_list.png" width="88" height="85"/>
|
||||
<image name="history_all.png" width="105" height="96"/>
|
||||
<image name="history_missed.png" width="97" height="96"/>
|
||||
<image name="delete.png" width="63" height="82"/>
|
||||
<image name="edit_list.png" width="88" height="84"/>
|
||||
<image name="history_all_default.png" width="91" height="88"/>
|
||||
<image name="history_all_selected.png" width="91" height="88"/>
|
||||
<image name="history_missed_default.png" width="96" height="96"/>
|
||||
<image name="history_missed_selected.png" width="96" height="96"/>
|
||||
</resources>
|
||||
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
||||
<simulatedStatusBarMetrics key="statusBar"/>
|
||||
|
|
|
|||
16
Classes/HistoryDetailsTableViewController.h
Normal file
16
Classes/HistoryDetailsTableViewController.h
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
//
|
||||
// HistoryDetailsTableViewController.h
|
||||
// linphone
|
||||
//
|
||||
// Created by Gautier Pelloux-Prayer on 27/07/15.
|
||||
//
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface HistoryDetailsTableViewController : UITableViewController {
|
||||
@private
|
||||
NSMutableArray *callLogs;
|
||||
}
|
||||
- (void)loadData;
|
||||
@end
|
||||
54
Classes/HistoryDetailsTableViewController.m
Normal file
54
Classes/HistoryDetailsTableViewController.m
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
//
|
||||
// HistoryDetailsTableViewController.m
|
||||
// linphone
|
||||
//
|
||||
// Created by Gautier Pelloux-Prayer on 27/07/15.
|
||||
//
|
||||
//
|
||||
|
||||
#import "HistoryDetailsTableViewController.h"
|
||||
#import "LinphoneManager.h"
|
||||
|
||||
@implementation HistoryDetailsTableViewController
|
||||
|
||||
- (void)loadData {
|
||||
if (callLogs == nil) {
|
||||
callLogs = [[NSMutableArray alloc] init];
|
||||
} else {
|
||||
[callLogs removeAllObjects];
|
||||
}
|
||||
const MSList *logs = linphone_core_get_call_logs([LinphoneManager getLc]);
|
||||
while (logs != NULL) {
|
||||
LinphoneCallLog *log = (LinphoneCallLog *)logs->data;
|
||||
[callLogs addObject:[NSValue valueWithPointer:log]];
|
||||
logs = ms_list_next(logs);
|
||||
}
|
||||
[[self tableView] reloadData];
|
||||
}
|
||||
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
|
||||
return 1;
|
||||
}
|
||||
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
|
||||
return [callLogs count];
|
||||
}
|
||||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
static NSString *kCellId = @"UITableViewCell";
|
||||
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellId];
|
||||
if (cell == nil) {
|
||||
cell = [[UITableViewCell alloc] init];
|
||||
}
|
||||
|
||||
LinphoneCallLog *log = [[callLogs objectAtIndex:[indexPath row]] pointerValue];
|
||||
int duration = linphone_call_log_get_duration(log);
|
||||
time_t callTime = linphone_call_log_get_start_date(log);
|
||||
|
||||
[cell.textLabel
|
||||
setText:[NSString stringWithFormat:@"%@ - %d sec",
|
||||
[LinphoneUtils timeToString:callTime withStyle:NSDateFormatterMediumStyle],
|
||||
duration]];
|
||||
return cell;
|
||||
}
|
||||
@end
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
#import <AddressBook/AddressBook.h>
|
||||
#import "UICompositeViewController.h"
|
||||
|
||||
#import "HistoryDetailsTableViewController.h"
|
||||
@interface HistoryDetailsViewController : UIViewController<UICompositeViewDelegate> {
|
||||
@private
|
||||
ABRecordRef contact;
|
||||
|
|
@ -43,6 +43,9 @@
|
|||
@property (nonatomic, strong) IBOutlet UIButton *messageButton;
|
||||
@property (nonatomic, strong) IBOutlet UIButton *addContactButton;
|
||||
@property (nonatomic, copy, setter=setCallLogId:) NSString *callLogId;
|
||||
@property(weak, nonatomic) IBOutlet UIView *headerView;
|
||||
@property(weak, nonatomic) IBOutlet UITableView *callsTableView;
|
||||
@property(strong, nonatomic) IBOutlet HistoryDetailsTableViewController *tableView;
|
||||
|
||||
- (IBAction)onBackClick:(id)event;
|
||||
- (IBAction)onContactClick:(id)event;
|
||||
|
|
|
|||
|
|
@ -86,6 +86,11 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
|
||||
UITapGestureRecognizer *headerTapGesture =
|
||||
[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onContactClick:)];
|
||||
[_headerView addGestureRecognizer:headerTapGesture];
|
||||
|
||||
[HistoryDetailsViewController adaptSize:dateHeaderLabel field:dateLabel];
|
||||
[HistoryDetailsViewController adaptSize:durationHeaderLabel field:durationLabel];
|
||||
[HistoryDetailsViewController adaptSize:typeHeaderLabel field:typeLabel];
|
||||
|
|
@ -100,6 +105,8 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
[addContactButton setHidden:TRUE];
|
||||
}
|
||||
|
||||
[_tableView loadData];
|
||||
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self
|
||||
selector:@selector(update)
|
||||
name:kLinphoneAddressBookUpdate
|
||||
|
|
|
|||
|
|
@ -243,6 +243,9 @@
|
|||
634CEE151B6630DB00D7A921 /* status_disconnected_phone.png in Resources */ = {isa = PBXBuildFile; fileRef = 634CED901B6630DB00D7A921 /* status_disconnected_phone.png */; };
|
||||
634CEE161B6630DB00D7A921 /* valid.png in Resources */ = {isa = PBXBuildFile; fileRef = 634CED911B6630DB00D7A921 /* valid.png */; };
|
||||
634CEE171B6630DB00D7A921 /* voicemail.png in Resources */ = {isa = PBXBuildFile; fileRef = 634CED921B6630DB00D7A921 /* voicemail.png */; };
|
||||
635775251B6673EC00C8B704 /* HistoryDetailsTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 635775241B6673EC00C8B704 /* HistoryDetailsTableViewController.m */; };
|
||||
6357752E1B6676C200C8B704 /* UIHistoryDetailsCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 6357752D1B6676C200C8B704 /* UIHistoryDetailsCell.m */; };
|
||||
635775311B66777200C8B704 /* UIHistoryDetailsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6357752F1B66777200C8B704 /* UIHistoryDetailsCell.xib */; };
|
||||
636316D11A1DEBCB0009B839 /* AboutViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 636316D31A1DEBCB0009B839 /* AboutViewController.xib */; };
|
||||
636316D41A1DEC650009B839 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 636316D61A1DEC650009B839 /* SettingsViewController.xib */; };
|
||||
636316D91A1DECC90009B839 /* PhoneMainView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 636316D71A1DECC90009B839 /* PhoneMainView.xib */; };
|
||||
|
|
@ -798,6 +801,11 @@
|
|||
634CED901B6630DB00D7A921 /* status_disconnected_phone.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = status_disconnected_phone.png; sourceTree = "<group>"; };
|
||||
634CED911B6630DB00D7A921 /* valid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = valid.png; sourceTree = "<group>"; };
|
||||
634CED921B6630DB00D7A921 /* voicemail.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = voicemail.png; sourceTree = "<group>"; };
|
||||
635775231B6673EC00C8B704 /* HistoryDetailsTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HistoryDetailsTableViewController.h; sourceTree = "<group>"; };
|
||||
635775241B6673EC00C8B704 /* HistoryDetailsTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HistoryDetailsTableViewController.m; sourceTree = "<group>"; };
|
||||
6357752C1B6676C200C8B704 /* UIHistoryDetailsCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIHistoryDetailsCell.h; sourceTree = "<group>"; };
|
||||
6357752D1B6676C200C8B704 /* UIHistoryDetailsCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIHistoryDetailsCell.m; sourceTree = "<group>"; };
|
||||
635775301B66777200C8B704 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIHistoryDetailsCell.xib; sourceTree = "<group>"; };
|
||||
636316D21A1DEBCB0009B839 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/AboutViewController.xib; sourceTree = "<group>"; };
|
||||
636316D51A1DEC650009B839 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/SettingsViewController.xib; sourceTree = "<group>"; };
|
||||
636316D81A1DECC90009B839 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/PhoneMainView.xib; sourceTree = "<group>"; };
|
||||
|
|
@ -1285,6 +1293,8 @@
|
|||
2218A92212FBE1340088A667 /* FirstLoginViewController.h */,
|
||||
2218A92312FBE1340088A667 /* FirstLoginViewController.m */,
|
||||
D38187CC15FE346400C3EDCA /* FirstLoginViewController.xib */,
|
||||
635775231B6673EC00C8B704 /* HistoryDetailsTableViewController.h */,
|
||||
635775241B6673EC00C8B704 /* HistoryDetailsTableViewController.m */,
|
||||
C90FAA7615AF54E6002091CB /* HistoryDetailsViewController.h */,
|
||||
C90FAA7715AF54E6002091CB /* HistoryDetailsViewController.m */,
|
||||
D38187D015FE346700C3EDCA /* HistoryDetailsViewController.xib */,
|
||||
|
|
@ -1438,6 +1448,9 @@
|
|||
340751E6150F38FD00B89C47 /* UIVideoButton.m */,
|
||||
634610041B61330300548952 /* UILabel+Boldify.h */,
|
||||
634610051B61330300548952 /* UILabel+Boldify.m */,
|
||||
6357752C1B6676C200C8B704 /* UIHistoryDetailsCell.h */,
|
||||
6357752D1B6676C200C8B704 /* UIHistoryDetailsCell.m */,
|
||||
6357752F1B66777200C8B704 /* UIHistoryDetailsCell.xib */,
|
||||
);
|
||||
path = LinphoneUI;
|
||||
sourceTree = "<group>";
|
||||
|
|
@ -2188,6 +2201,7 @@
|
|||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
634CEE161B6630DB00D7A921 /* valid.png in Resources */,
|
||||
635775311B66777200C8B704 /* UIHistoryDetailsCell.xib in Resources */,
|
||||
634CEDC71B6630DB00D7A921 /* delete.png in Resources */,
|
||||
636316D11A1DEBCB0009B839 /* AboutViewController.xib in Resources */,
|
||||
634CEDF31B6630DB00D7A921 /* options_start_conference.png in Resources */,
|
||||
|
|
@ -2523,6 +2537,7 @@
|
|||
D3E8F68615ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */,
|
||||
C90FAA7915AF54E6002091CB /* HistoryDetailsViewController.m in Sources */,
|
||||
63FB30351A680E73008CA393 /* UIRoundedImageView.m in Sources */,
|
||||
635775251B6673EC00C8B704 /* HistoryDetailsTableViewController.m in Sources */,
|
||||
F066515517F9A02E0064280C /* UITransparentTVCell.m in Sources */,
|
||||
D3F9A9EE15AF277E0045320F /* UACellBackgroundView.m in Sources */,
|
||||
6346100F1B61409800548952 /* OutgoingCallViewController.m in Sources */,
|
||||
|
|
@ -2554,6 +2569,7 @@
|
|||
D3ED40191602172200BF332B /* HPGrowingTextView.m in Sources */,
|
||||
D3ED401B1602172200BF332B /* HPTextViewInternal.m in Sources */,
|
||||
D37EE162160377D7003608A6 /* DTActionSheet.m in Sources */,
|
||||
6357752E1B6676C200C8B704 /* UIHistoryDetailsCell.m in Sources */,
|
||||
D35E91F4160CA10B0023116B /* UILinphoneTextField.m in Sources */,
|
||||
D35E91F8160CA4FF0023116B /* UILinphoneButton.m in Sources */,
|
||||
D306459E1611EC2A00BB571E /* UILoadingImageView.m in Sources */,
|
||||
|
|
@ -2685,6 +2701,14 @@
|
|||
name = OutgoingCallViewController.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
6357752F1B66777200C8B704 /* UIHistoryDetailsCell.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
635775301B66777200C8B704 /* Base */,
|
||||
);
|
||||
name = UIHistoryDetailsCell.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
636316D31A1DEBCB0009B839 /* AboutViewController.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue