phonebookui/Phonebook2/ccapplication/ccacommlauncherplugin/src/ccappcommlaunchercustomlistbox.cpp
branchRCL_3
changeset 3 04ab22b956c2
parent 0 e686773b3f54
child 7 b3431bff8c19
equal deleted inserted replaced
0:e686773b3f54 3:04ab22b956c2
    21  *      Author: dev
    21  *      Author: dev
    22  */
    22  */
    23 
    23 
    24 // System includes
    24 // System includes
    25 #include <barsread.h>
    25 #include <barsread.h>
    26 #include <eikclbd.h>
    26 #include <aknlayoutscalable_apps.cdl.h>
       
    27 
    27 
    28 
    28 #include "ccappcommlaunchercustomlistbox.h"
    29 #include "ccappcommlaunchercustomlistbox.h"
    29 #include "ccappcommlaunchercustomlistboxitemdrawer.h"
    30 #include "ccappcommlaunchercustomlistboxitemdrawer.h"
    30 #include "ccappcommlaunchercustomlistboxdata.h"
    31 #include "ccappcommlaunchercustomlistboxdata.h"
    31 
    32 
    75     CleanupStack::Pop( columnData );
    76     CleanupStack::Pop( columnData );
    76     
    77     
    77     //Ownership has been transferred to iItemDrawer
    78     //Ownership has been transferred to iItemDrawer
    78     iColumnData = columnData;
    79     iColumnData = columnData;
    79     }
    80     }
       
    81 // --------------------------------------------------------------------------
       
    82 // CCCAppCommLauncherCustomListBox::SizeChanged
       
    83 // --------------------------------------------------------------------------
       
    84 //
    80 void CCCAppCommLauncherCustomListBox::SizeChanged()
    85 void CCCAppCommLauncherCustomListBox::SizeChanged()
    81 	{
    86 	{
    82 	CAknDoubleLargeStyleListBox::SizeChanged();
    87 	CAknDoubleLargeStyleListBox::SizeChanged();
       
    88 	TRAP_IGNORE( SizeChangedL() );
    83 	}
    89 	}
    84 
    90 
       
    91 // --------------------------------------------------------------------------
       
    92 // CCCAppCommLauncherCustomListBox::SizeChangedL
       
    93 // --------------------------------------------------------------------------
       
    94 //
       
    95 void CCCAppCommLauncherCustomListBox::SizeChangedL()
       
    96 	{
       
    97 	// Text format: "0\tCommunicationName\tContent\t1\t2"
       
    98 	// Icons: 
       
    99 	//  0: Communication method icon
       
   100 	//  1: Presence icon
       
   101 	//  2: Multi indication icon 
       
   102 	//
       
   103 	// Layout: list_double_large_graphic_phob2_cc_pane
       
   104 	// ------------------------------------------------
       
   105 	// |       |                                      |
       
   106 	// |       | Communication method name      [1]   |
       
   107 	// |  [0]  |                                      |
       
   108 	// |       | Content                        [2]   |
       
   109 	// |       |                                      |
       
   110 	// ------------------------------------------------
       
   111 	//
       
   112 	
       
   113 		
       
   114 	iColumnData->ResetSLSubCellArray();
       
   115 			  
       
   116 	// Comm method icon	
       
   117 	TAknWindowLineLayout gl( AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_g1( 0 ) );
       
   118 	iColumnData->SetGraphicSubCellL( 0, gl );
       
   119 	
       
   120 	// Line 1 text
       
   121 	TAknTextComponentLayout textLayout = AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_t1( 0 );
       
   122 	iColumnData->SetTextSubCellL( 1, textLayout );
       
   123 	
       
   124 	// Line 2 text
       
   125 	TAknTextComponentLayout textLayout2 = AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_t2( 0 );
       
   126 	iColumnData->SetTextSubCellL( 2, textLayout2 );
       
   127 	
       
   128 	// Presence icon
       
   129 	TAknWindowLineLayout g2( AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_g2( 0 ) );
       
   130 	iColumnData->SetGraphicSubCellL( 3, g2 );
       
   131 	
       
   132 	// Multi indication icon
       
   133 	TAknWindowLineLayout g3( AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_g3( 0 ) );
       
   134 	iColumnData->SetGraphicSubCellL( 4, g3 );
       
   135 	
       
   136 	// Conditional subcells must be added in priority order!
       
   137 	// Line 1 text variation for 1 post icon
       
   138 	TAknTextComponentLayout textLayout3 = AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_t1( 2 );
       
   139 	iColumnData->SetConditionalSubCellL( 3, textLayout3, 1 );
       
   140 	
       
   141 	// Line 2 text variation for 2 post icon
       
   142 	TAknTextComponentLayout textLayout4 = AknLayoutScalable_Apps::list_double_large_graphic_phob2_cc_pane_t2( 2 );
       
   143 	iColumnData->SetConditionalSubCellL( 4, textLayout4, 2 );
       
   144 	
       
   145 	}