From c5790060b361e172d3ac28ef209a8b13a4e02178 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Tue, 3 Jul 2012 14:21:14 +0200 Subject: [PATCH] Change selected cell in list views Add blinking on current call in "InCall" view --- Classes/InCallTableViewController.m | 4 +- Classes/LinphoneUI/UICallCell.h | 8 +- Classes/LinphoneUI/UICallCell.m | 68 +++++++++++-- Classes/LinphoneUI/UICallCell.xib | 47 ++++++++- Classes/LinphoneUI/UIContactCell.xib | 117 +++++++++++++---------- Classes/LinphoneUI/UIHistoryCell.xib | 58 ++++++++++- Resources/cell_call_first_hightlight.png | Bin 0 -> 1786 bytes Resources/cell_call_hightlight.png | Bin 0 -> 2386 bytes Resources/list_hightlight.png | Bin 0 -> 36632 bytes linphone.xcodeproj/project.pbxproj | 18 ++++ 10 files changed, 250 insertions(+), 70 deletions(-) create mode 100644 Resources/cell_call_first_hightlight.png create mode 100644 Resources/cell_call_hightlight.png create mode 100644 Resources/list_hightlight.png diff --git a/Classes/InCallTableViewController.m b/Classes/InCallTableViewController.m index 4ca89b328..a2908bfec 100644 --- a/Classes/InCallTableViewController.m +++ b/Classes/InCallTableViewController.m @@ -226,6 +226,7 @@ enum TableSection { bool inConference = indexPath.section == ConferenceSection; LinphoneCore* lc = [LinphoneManager getLc]; + LinphoneCall* currentCall = linphone_core_get_current_call(lc); LinphoneCall* call = [InCallTableViewController retrieveCallAtIndex:indexPath.row inConference:inConference]; [cell setData:[self addCallData:call]]; @@ -235,7 +236,8 @@ enum TableSection { } else { [cell setFirstCell:false]; } - [cell setConferenceCall:inConference]; + [cell setCurrentCall:(currentCall == call)]; + [cell setConferenceCell:inConference]; [cell update]; if (linphone_core_get_calls_nb(lc) > 1 || linphone_core_get_conference_size(lc) > 0) { diff --git a/Classes/LinphoneUI/UICallCell.h b/Classes/LinphoneUI/UICallCell.h index dbc77ae4c..ff82a28dd 100644 --- a/Classes/LinphoneUI/UICallCell.h +++ b/Classes/LinphoneUI/UICallCell.h @@ -35,9 +35,11 @@ @interface UICallCell : UITableViewCell { @private BOOL firstCell; - BOOL conferenceCall; + BOOL conferenceCell; + BOOL currentCall; UIImageView* headerBackgroundImage; + UIImageView* headerBackgroundHightlightImage; UILabel *addressLabel; UILabel *stateLabel; @@ -55,6 +57,7 @@ @property (weak) UICallCellData *data; @property (nonatomic, retain) IBOutlet UIImageView* headerBackgroundImage; +@property (nonatomic, retain) IBOutlet UIImageView* headerBackgroundHightlightImage; @property (nonatomic, retain) IBOutlet UILabel* addressLabel; @property (nonatomic, retain) IBOutlet UILabel* stateLabel; @@ -67,7 +70,8 @@ @property (nonatomic, retain) IBOutlet UIView* avatarView; @property (assign) BOOL firstCell; -@property (assign) BOOL conferenceCall; +@property (assign) BOOL conferenceCell; +@property (nonatomic, assign) BOOL currentCall; - (void)update; diff --git a/Classes/LinphoneUI/UICallCell.m b/Classes/LinphoneUI/UICallCell.m index 628bab0eb..49800f98f 100644 --- a/Classes/LinphoneUI/UICallCell.m +++ b/Classes/LinphoneUI/UICallCell.m @@ -17,6 +17,8 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#import + #import "UICallCell.h" #import "LinphoneManager.h" @@ -38,6 +40,7 @@ @synthesize data; @synthesize headerBackgroundImage; +@synthesize headerBackgroundHightlightImage; @synthesize addressLabel; @synthesize stateLabel; @@ -50,8 +53,8 @@ @synthesize avatarView; @synthesize firstCell; -@synthesize conferenceCall; - +@synthesize conferenceCell; +@synthesize currentCall; #pragma mark - Lifecycle Functions @@ -67,6 +70,8 @@ // Set selected+over background: IB lack ! [pauseButton setImage:[UIImage imageNamed:@"call_state_pause_over.png"] forState:(UIControlStateHighlighted | UIControlStateSelected)]; + + self->currentCall = FALSE; } return self; } @@ -82,7 +87,27 @@ } -#pragma mark - Static cell sizes +- (void)prepareForReuse { + [super prepareForReuse]; + self->currentCall = FALSE; + [headerBackgroundHightlightImage setAlpha:0.0f]; +} + +#pragma mark - Properties Functions + +- (void)setCurrentCall:(BOOL) val { + BOOL oldVal = currentCall; + currentCall = val; + if(oldVal != val) { + if (currentCall) { + [self startBlinkAnimation:@"Blink" target:headerBackgroundHightlightImage]; + } else { + [self stopBlinkAnimation:@"Blink" target:headerBackgroundHightlightImage]; + } + } +} + +#pragma mark - Static Functions + (int)getMaximizedHeight { return 280; @@ -92,7 +117,31 @@ return 54; } +- (void)startBlinkAnimation:(NSString *)animationID target:(UIView *)target +{ + [UIView animateWithDuration:1.0 + delay: 0.0 + options: ([target alpha] == 1.0f)? UIViewAnimationOptionCurveEaseIn: UIViewAnimationOptionCurveEaseOut + animations:^{ + if([target alpha] == 1.0f) + [target setAlpha:0.0f]; + else + [target setAlpha:1.0f]; + } + completion:^(BOOL finished){ + if(finished) { + [self startBlinkAnimation: animationID target:target]; + } + }]; +} + +- (void)stopBlinkAnimation:(NSString *)animationID target:(UIView *)target { + [target.layer removeAnimationForKey:animationID]; + [target setAlpha:0.0f]; +} + + #pragma mark - - (void)update:(UICallCellData*) adata { @@ -131,7 +180,7 @@ LinphoneCallState state = linphone_call_get_state(call); - if(!conferenceCall) { + if(!conferenceCell) { if(state == LinphoneCallOutgoingRinging) { [stateImage setImage:[UIImage imageNamed:@"call_state_ringing_default.png"]]; [stateImage setHidden:false]; @@ -148,8 +197,10 @@ [removeButton setHidden:true]; if(firstCell) { [headerBackgroundImage setImage:[UIImage imageNamed:@"cell_call_first.png"]]; + [headerBackgroundHightlightImage setImage:[UIImage imageNamed:@"cell_call_first_hightlight.png"]]; } else { [headerBackgroundImage setImage:[UIImage imageNamed:@"cell_call.png"]]; + [headerBackgroundHightlightImage setImage:[UIImage imageNamed:@"cell_call_hightlight.png"]]; } } else { [stateImage setHidden:true]; @@ -157,7 +208,7 @@ [removeButton setHidden:false]; [headerBackgroundImage setImage:[UIImage imageNamed:@"cell_conference.png"]]; } - + NSMutableString* msDuration = [[NSMutableString alloc] init]; int duration = linphone_call_get_duration(call); [msDuration appendFormat:@"%02i:%02i", (duration/60), duration - 60 * (duration / 60), nil]; @@ -181,16 +232,15 @@ - (void)selfUpdate { UITableView *parentTable = (UITableView *)self.superview; - [parentTable beginUpdates]; + /*[parentTable beginUpdates]; [parentTable reloadData]; - [parentTable endUpdates]; - /* + [parentTable endUpdates];*/ if(parentTable) { NSIndexPath *index= [parentTable indexPathForCell:self]; if(index != nil) { [parentTable reloadRowsAtIndexPaths:[[NSArray alloc] initWithObjects:index, nil] withRowAnimation:false]; } - }*/ + } } diff --git a/Classes/LinphoneUI/UICallCell.xib b/Classes/LinphoneUI/UICallCell.xib index b58251e3f..b6da4700f 100644 --- a/Classes/LinphoneUI/UICallCell.xib +++ b/Classes/LinphoneUI/UICallCell.xib @@ -132,7 +132,7 @@ {320, 63} - + _NS:9 NO IBCocoaTouchFramework @@ -141,6 +141,18 @@ cell_call_first.png + + + 292 + {320, 63} + + + + _NS:9 + 0.0 + NO + IBCocoaTouchFramework + 292 @@ -4640,7 +4652,6 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE {{262, 12}, {50, 29}} - _NS:9 NO YES @@ -4707,7 +4718,6 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE {320, 460} - _NS:9 NO @@ -4796,6 +4806,22 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE 54 + + + headerBackgroundHightlightImage + + + + 57 + + + + selectedBackgroundView + + + + 58 + doHeaderClick: @@ -4871,6 +4897,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE + headerView @@ -4934,6 +4961,12 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE headerBackgroundImage + + 56 + + + headerBackgroundHightlightImage + @@ -4960,12 +4993,13 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 54 + 58 @@ -4990,6 +5024,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE UILabel UIImageView UIView + UIImageView UIImageView UIView UIPauseButton @@ -5010,6 +5045,10 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE avatarView UIView + + headerBackgroundHightlightImage + UIImageView + headerBackgroundImage UIImageView diff --git a/Classes/LinphoneUI/UIContactCell.xib b/Classes/LinphoneUI/UIContactCell.xib index 6eae6e799..f31f32511 100644 --- a/Classes/LinphoneUI/UIContactCell.xib +++ b/Classes/LinphoneUI/UIContactCell.xib @@ -11,7 +11,7 @@ 1181 - IBUIButton + IBUIImageView IBUIView IBUILabel IBProxyObject @@ -36,41 +36,6 @@ 292 - - - 292 - {320, 44} - - - - _NS:9 - NO - IBCocoaTouchFramework - 0 - 0 - NO - - 3 - MQA - - - 1 - MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA - - - 3 - MC41AA - - - 2 - 15 - - - Helvetica-Bold - 15 - 16 - - 274 @@ -113,6 +78,7 @@ {{75, 0}, {200, 44}} + _NS:328 NO YES @@ -143,6 +109,7 @@ {320, 44} + _NS:9 3 @@ -153,17 +120,35 @@ IBCocoaTouchFramework + + + 292 + {320, 44} + + + + _NS:9 + NO + IBCocoaTouchFramework + + NSImage + list_hightlight.png + + + + + 292 + {320, 44} + + + + _NS:9 + NO + IBCocoaTouchFramework + - - - backgroundView - - - - 15 - firstNameLabel @@ -180,6 +165,22 @@ 18 + + + selectedBackgroundView + + + + 20 + + + + backgroundView + + + + 22 + @@ -206,16 +207,9 @@ - - - 14 - - - background - 6 @@ -228,6 +222,18 @@ lastName + + 19 + + + selectedBackground + + + 21 + + + background + @@ -236,15 +242,16 @@ UIResponder com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 18 + 22 @@ -280,6 +287,10 @@ YES 3 + + list_hightlight.png + {640, 88} + 1181 diff --git a/Classes/LinphoneUI/UIHistoryCell.xib b/Classes/LinphoneUI/UIHistoryCell.xib index d6b863fc9..c978fbc8e 100644 --- a/Classes/LinphoneUI/UIHistoryCell.xib +++ b/Classes/LinphoneUI/UIHistoryCell.xib @@ -167,6 +167,31 @@ IBCocoaTouchFramework + + + 292 + {320, 44} + + + + _NS:9 + NO + IBCocoaTouchFramework + + NSImage + list_hightlight.png + + + + + 292 + {320, 44} + + + _NS:9 + NO + IBCocoaTouchFramework + @@ -202,6 +227,22 @@ 17 + + + selectedBackgroundView + + + + 22 + + + + backgroundView + + + + 24 + onDetails: @@ -275,6 +316,18 @@ deleteButton + + 21 + + + selectedBackground + + + 23 + + + background + @@ -286,6 +339,8 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -296,7 +351,7 @@ - 19 + 24 @@ -361,6 +416,7 @@ {45, 45} {45, 45} {45, 45} + {640, 88} 1181 diff --git a/Resources/cell_call_first_hightlight.png b/Resources/cell_call_first_hightlight.png new file mode 100644 index 0000000000000000000000000000000000000000..99ea085a69d449cf435f6088814f8498772d4de6 GIT binary patch literal 1786 zcmcIlc{Ce%5dKBGuA;h9XDe(^tLWjVl@(`$y0@sK*wShoaYYa$6i?CCwsllAtlO?8 zO2yI8D9_zc?Gi$$vxlRKNYNyl{eRbc``+%nH}lP#dEd;unLj4o(H;0OBJ>VNeWXZD%Pq zA+|?K;!Gk9d00qHv$in36vJ9(d;X-tRcf0SNNW9%bWEnfuTu6+M;8l1LL@l1rHEbx0t3Z8Uv-85~mO80ga#*E0woylGb6WK zE`W#AVCV#U=WtmRbT|1E|BCUs3k94dJ}Yp(e$cwXdyebFH#lKy3fjvRc{BZ3Y<+y# zJw>As4;P}(sHA$?z$wHQ-K1~Ux&e-V?t4XiG4wOpf{M(PLu@4J+L=dg_0CzAJZ<$n z%;Jp~@pwH{c`dx2;1%kvxiocp91+wx+j!T~qr%ZPBDx}4G%KqcJ(3nmmmmuvi+=omx&|G(bTRpY;9p&^nTAl`UJOME!nQx1O zVywd#OgWsPEHiN*qjccrqim+wqPlKo03FUN$~Iz@x?n5i^m6lXOc$&&C)h6*Ri=WSK1C!fr4J|Nb1&Cpm)Ts`GUc;PII)7sR$ zR^Ql#PH1#q(GB|Sd%l8XU%$?QrIApO81g~m9m^AlC>@F7=p*JwQe^9L(s6M7Q@kR! zlQ;7+*{wC1zuJ?&=WSrBMfg#P?#eswi13lTqKWsqiyi7IzXXRu$BjHYJ7Dxvn9yHQ z6yq!v2f>HW2$5CZ2Onx76f?FKqeTeVey@G$j2Jj!s1FR&7FagLSJ>LpqJEJa4)u=f z8|oM(kC%FT2eoyOP1`^Fz{?2RKzVx^|_k*9LOxDX&oaxc#R-*(;Ds zYfxa*VNsI1uz7ats?h_TO-gCM1H0z>#nLoE@=dBH@X|ywd$~0wO#AH#e(%gQCzI3k z=5c_^AS^2-ETJ;PO&cKTU+PG$PKJug8nC%a8JN3slL1Z1EW7JL<6?6`v~oohXp5Dy zm3L^t*HUX;t@M4M=2oR$>*c+&-Ze$zHCW0-q!OaaV7xWFgm#w!wXxs(j?zxq3oEvt{MR~< zA`<9Ctve0u^AO?%Q_I5bsWDi$jIQo!2M-hyK0d-G52bjf@G literal 0 HcmV?d00001 diff --git a/Resources/cell_call_hightlight.png b/Resources/cell_call_hightlight.png new file mode 100644 index 0000000000000000000000000000000000000000..4aaf77e56c19de7ea412fd15f2bc3d1fb624ea1c GIT binary patch literal 2386 zcmb_edo&a5AAd-%C6|@tS4er^Lq$}`HM|tLZQZt&GQ}G;mofLu%{8kH78OOlvv z7-=lYHMuNz$)#MH+c0w*X7Bp{{dLaooZoZK_xU{M`#qoMdCvEIZ+B0_92Des%K-os z98aA%3xG6Ha*l@lCfSdo+gl{?o2RqG2?Dl4eaJML1J5Rav z;>joF{x3Ju5#i*%e5%tK)QzqSj`^mhFqh{?YA?$gnzSD7*sP9E#gRVT<_ik^t^kdu zCC=6DZOcPZ6e9s^{7_p5wchA#6UM zPrFkKVd#FqKi8RxK5X451e#CpWYPPE+tPjVj7S_d`O{ z2csnUMnRx94zTHulp97_4WkN1d&Iv357uaY==%@?R4F;m&$0!O?O^Y% zf#kZCbj9}eTA zvK3^6@+ZxnY1jL5nPGNK&I(m4YATn{4H*AfDKcwh-W94PC+uVQ2jA7% zP0Wl{Wq7;J0+6WvOsk&yqXSawwfPGB1qoXauM;7y1imeV!k{B+$ixayn8wb?pMkJc z*c(10jdT7J+z&rqGimA(hc(nC+iVXO+_&qIBl1NYhq#%F@WPlBj z277@NfD$E1VFQ57-hVXz7xn+0^@}h3;;sLk^^41X;f;S_Ri%-`wme@O!&Y{DBE8?G zu^h^pN+u8Diz2rV+0Crd>dqe=QyqblSZQae=qC0!_e%kyeQ_dhILHG<5m}vEoAIrY zf)cA7)B=ox|JwBGC>?P|;y%#>C9|!HD>oG(g zdvhM{ci(O1Rye32$X%hmJg792G_#l(R-rN3q12G5oY~?tHs~YXxbt3f0+Y8!>1T0| z1|scfv+V}E(;g;NXwh^$;)_w*NDB|juFBKAiUs=?vJA|wr2O%hREowlKFTY=`!#|( zR0!COoluTSv|{C{W%SWU?@LvH-l<-x+E6_4D z+I{V|eTw-Ink}N{P&CN82@@pY7kA$U??@Jurnln}mde4K6td7WD#;KV^tuwWEg?%h zFl4lpQ13zLX31qGo_}+tEGAFf{)Ec#&Z|Mo_cvZATm}JZyV7}5 z##G$5?^dfIwV^!gwYjLUGat(+zC=6ke-p#Ke2t29?Rk~E8a~W#;?!n?(U>NDt`0=mznVNzIk@6Qs6eD`QV zz9EcCb`vcaMAJ*aG)7oP`0|M~6mQ$hdYHA-7BZ35hVdS?4b`2NQ;U;S?lANMS5{vg zaCQHX6P@Wj?r+&XT4XK?EJQGt;-I!A?9qeSGHs>hO8F|N7lN!X3DwGZj zGhi^@p7YRY=2PvG`)f}{u*CEQIGIIO8lK6%JS|_pIxS$5kR8%#njY?1>s7v~M9 z7X~Nln-G{8`ig!cCAn@o_>6eNY1Bcr1+PW>;fmje5{jPQ=%P;ajbK;p#s~9;SzD`O zm8=6^$=*2@wdS18;?o?SjAC8%Z$H5J)axUds`O5mDL~8~Pt}`=A`}%JPD$DsbMV$@ zSl1pnDQ*rg>c4#HcsS>p<+&k0{KyG*BCk<3d&MlI?(3{U?%BLIcQwFVvA;s9qGDZG zMP@!;PkEe1}9j%f!x>8Oi+rKSUj z0!-ARy7k8>j_genT~7OA+N=}prg2AV`Yt(MSpIyAsJ+Q5CE|rt@2&_wrh7qA(ne^p zJuvmw@Jg|8M^IE3-YGVs0Nh8F@JT9s8TdCTzb5ea88Dk@2|&5)QAM%r%eb?f U{c&8ZWcmS)Ct)Y(wpafBHwEG{$p8QV literal 0 HcmV?d00001 diff --git a/Resources/list_hightlight.png b/Resources/list_hightlight.png new file mode 100644 index 0000000000000000000000000000000000000000..929bfbdbf63848a80189328f1374895160d0eda8 GIT binary patch literal 36632 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 literal 0 HcmV?d00001 diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 00dd5f44e..7b6a1fd9a 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -153,6 +153,8 @@ 7066FC0C13E830E400EFC6DC /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7066FC0B13E830E400EFC6DC /* libvpx.a */; }; 70E542F313E147E3002BA2C0 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F213E147E3002BA2C0 /* OpenGLES.framework */; }; 70E542F513E147EB002BA2C0 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F413E147EB002BA2C0 /* QuartzCore.framework */; }; + D3196D2D15A3199D007FEEBA /* list_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D3196D2C15A3199D007FEEBA /* list_hightlight.png */; }; + D3196D2E15A3199D007FEEBA /* list_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D3196D2C15A3199D007FEEBA /* list_hightlight.png */; }; D31AAF5E159B3919002C6B02 /* InCallTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D31AAF5D159B3919002C6B02 /* InCallTableViewController.m */; }; D31AAF5F159B3919002C6B02 /* InCallTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D31AAF5D159B3919002C6B02 /* InCallTableViewController.m */; }; D31AAF63159B5B6F002C6B02 /* conference_default.png in Resources */ = {isa = PBXBuildFile; fileRef = D31AAF61159B5B6E002C6B02 /* conference_default.png */; }; @@ -377,6 +379,10 @@ D3832801158100E400FA0D23 /* history_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D38327FD158100E400FA0D23 /* history_over.png */; }; D3832802158100E400FA0D23 /* settings_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D38327FE158100E400FA0D23 /* settings_over.png */; }; D3832803158100E400FA0D23 /* chat_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D38327FF158100E400FA0D23 /* chat_over.png */; }; + D38D14AF15A30B3D008497E8 /* cell_call_first_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D38D14AD15A30B3D008497E8 /* cell_call_first_hightlight.png */; }; + D38D14B015A30B3D008497E8 /* cell_call_first_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D38D14AD15A30B3D008497E8 /* cell_call_first_hightlight.png */; }; + D38D14B115A30B3D008497E8 /* cell_call_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D38D14AE15A30B3D008497E8 /* cell_call_hightlight.png */; }; + D38D14B215A30B3D008497E8 /* cell_call_hightlight.png in Resources */ = {isa = PBXBuildFile; fileRef = D38D14AE15A30B3D008497E8 /* cell_call_hightlight.png */; }; D3A55FBC15877E5E003FD403 /* UIContactCell.m in Sources */ = {isa = PBXBuildFile; fileRef = D3A55FBB15877E5E003FD403 /* UIContactCell.m */; }; D3A55FBD15877E5E003FD403 /* UIContactCell.m in Sources */ = {isa = PBXBuildFile; fileRef = D3A55FBB15877E5E003FD403 /* UIContactCell.m */; }; D3A55FBF15877E69003FD403 /* UIContactCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D3A55FBE15877E69003FD403 /* UIContactCell.xib */; }; @@ -890,6 +896,7 @@ 70E542F213E147E3002BA2C0 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; 70E542F413E147EB002BA2C0 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; 8D1107310486CEB800E47090 /* linphone-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "linphone-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; + D3196D2C15A3199D007FEEBA /* list_hightlight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = list_hightlight.png; path = Resources/list_hightlight.png; sourceTree = ""; }; D31AAF5C159B3919002C6B02 /* InCallTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InCallTableViewController.h; sourceTree = ""; }; D31AAF5D159B3919002C6B02 /* InCallTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InCallTableViewController.m; sourceTree = ""; }; D31AAF61159B5B6E002C6B02 /* conference_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = conference_default.png; path = Resources/conference_default.png; sourceTree = ""; }; @@ -1047,6 +1054,8 @@ D38327FD158100E400FA0D23 /* history_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = history_over.png; path = Resources/history_over.png; sourceTree = ""; }; D38327FE158100E400FA0D23 /* settings_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = settings_over.png; path = Resources/settings_over.png; sourceTree = ""; }; D38327FF158100E400FA0D23 /* chat_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = chat_over.png; path = Resources/chat_over.png; sourceTree = ""; }; + D38D14AD15A30B3D008497E8 /* cell_call_first_hightlight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = cell_call_first_hightlight.png; path = Resources/cell_call_first_hightlight.png; sourceTree = ""; }; + D38D14AE15A30B3D008497E8 /* cell_call_hightlight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = cell_call_hightlight.png; path = Resources/cell_call_hightlight.png; sourceTree = ""; }; D3A55FBA15877E5E003FD403 /* UIContactCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIContactCell.h; sourceTree = ""; }; D3A55FBB15877E5E003FD403 /* UIContactCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIContactCell.m; sourceTree = ""; }; D3A55FBE15877E69003FD403 /* UIContactCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UIContactCell.xib; sourceTree = ""; }; @@ -1751,6 +1760,7 @@ 29B97317FDCFA39411CA2CEA /* Resources */ = { isa = PBXGroup; children = ( + D3196D2C15A3199D007FEEBA /* list_hightlight.png */, D3F83F741582253100336684 /* accept_default.png */, D3F83F751582253100336684 /* accept_over.png */, D3D6A39B159B0EEF005F692C /* add_call_default.png */, @@ -1790,6 +1800,8 @@ D3F83F811582278D00336684 /* cancel_over.png */, D36C43CC158F2F370048BA40 /* cell_call.png */, D3211BB8159C8A820098460B /* cell_call_first.png */, + D38D14AD15A30B3D008497E8 /* cell_call_first_hightlight.png */, + D38D14AE15A30B3D008497E8 /* cell_call_hightlight.png */, D36C43CD158F2F370048BA40 /* cell_conference.png */, D3EA5401159852080037DC6B /* chat_add_default.png */, D3EA5402159852080037DC6B /* chat_add_over.png */, @@ -2292,6 +2304,9 @@ D365AA7D15A2DE7500CAFE3F /* speaker_on_disabled.png in Resources */, D35EA76315A2DF8D003E025D /* micro_off_disabled.png in Resources */, D35EA76515A2DF8D003E025D /* micro_on_disabled.png in Resources */, + D38D14AF15A30B3D008497E8 /* cell_call_first_hightlight.png in Resources */, + D38D14B115A30B3D008497E8 /* cell_call_hightlight.png in Resources */, + D3196D2D15A3199D007FEEBA /* list_hightlight.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2473,6 +2488,9 @@ D365AA7E15A2DE7500CAFE3F /* speaker_on_disabled.png in Resources */, D35EA76415A2DF8D003E025D /* micro_off_disabled.png in Resources */, D35EA76615A2DF8D003E025D /* micro_on_disabled.png in Resources */, + D38D14B015A30B3D008497E8 /* cell_call_first_hightlight.png in Resources */, + D38D14B215A30B3D008497E8 /* cell_call_hightlight.png in Resources */, + D3196D2E15A3199D007FEEBA /* list_hightlight.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; };