emailuis/emailui/src/FreestyleEmailUiTextureManager.cpp
changeset 0 8466d47a6819
child 1 12c456ceeff2
equal deleted inserted replaced
-1:000000000000 0:8466d47a6819
       
     1 /*
       
     2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  FreestyleEmailUi generic texturemanager implementation
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 // SYSTEM INCLUDES
       
    21 // <cmail> SF
       
    22 #include "emailtrace.h"
       
    23 #include <alf/alfstatic.h>
       
    24 // </cmail>
       
    25 #include <freestyleemailui.mbg>
       
    26 #include <AknUtils.h>
       
    27 // <cmail>
       
    28 #include <alf/alfframebrush.h>
       
    29 // </cmail>
       
    30 #include <AknsConstants.h>
       
    31 // <cmail>
       
    32 #include <alf/alfimageloaderutil.h>
       
    33 // </cmail>
       
    34 #include <avkon.mbg>
       
    35 #include <gulicon.h>
       
    36 // <cmail> S60 Skin support
       
    37 #include <AknsDrawUtils.h>
       
    38 // </cmail>
       
    39 
       
    40 // INTERNAL INCLUDES
       
    41 #include "FreestyleEmailUi.hrh"
       
    42 #include "FreestyleEmailUiTextureManager.h"
       
    43 #include "FreestyleEmailUiAppui.h"
       
    44 #include "FreestyleEmailUiLayoutHandler.h"
       
    45 #include "FreestyleEmailUiUtilities.h"
       
    46 
       
    47 
       
    48 
       
    49 // -----------------------------------------------------------------------------
       
    50 // CFreestyleEmailUiTextureManager::NewL
       
    51 // -----------------------------------------------------------------------------
       
    52 //
       
    53 CFreestyleEmailUiTextureManager* CFreestyleEmailUiTextureManager::NewL( CAlfEnv& aEnv, CFreestyleEmailUiAppUi* aAppUi )
       
    54 	{
       
    55     FUNC_LOG;
       
    56     CFreestyleEmailUiTextureManager* self = new (ELeave) CFreestyleEmailUiTextureManager( aEnv, aAppUi );
       
    57     CleanupStack::PushL(self);
       
    58     self->ConstructL(aEnv);
       
    59     CleanupStack::Pop( self );
       
    60     return self;
       
    61 	}
       
    62 
       
    63 // -----------------------------------------------------------------------------
       
    64 // CFreestyleEmailUiTextureManager::CFreestyleEmailUiTextureManager
       
    65 // -----------------------------------------------------------------------------
       
    66 //
       
    67 CFreestyleEmailUiTextureManager::CFreestyleEmailUiTextureManager( CAlfEnv& aEnv, CFreestyleEmailUiAppUi* aAppUi )
       
    68 	: CAlfControl(),
       
    69 	iAppUi(aAppUi)
       
    70 	{
       
    71     FUNC_LOG;
       
    72 	// CHECKLATER - aEnv not used in CAlfControl anymore, but in this case its needed elsewhere, is this fine?
       
    73 	iEnv = &aEnv;
       
    74 	}
       
    75 
       
    76 // -----------------------------------------------------------------------------
       
    77 // CFreestyleEmailUiTextureManager::~CFreestyleEmailUiTextureManager
       
    78 // -----------------------------------------------------------------------------
       
    79 //
       
    80 CFreestyleEmailUiTextureManager::~CFreestyleEmailUiTextureManager()
       
    81 	{
       
    82     FUNC_LOG;
       
    83 	iTextures.Reset();
       
    84 
       
    85 	iBrandedMailboxIcons.Reset();
       
    86 	iPluginId.Reset();
       
    87 	iMailboxId.Reset();
       
    88 	iSize.Reset();
       
    89 	delete iTmpBitmap;
       
    90 	delete iTmpMaskBitmap;
       
    91 
       
    92 	delete iFrameBrush;
       
    93 	iFrameBrush = NULL;
       
    94 
       
    95 	//<cmail>
       
    96 	delete iNewFrameBrush;
       
    97 	iNewFrameBrush = NULL;
       
    98 
       
    99 	delete iTitleDividerBgBrush;
       
   100 	//</cmail>
       
   101 	}
       
   102 
       
   103 
       
   104 // -----------------------------------------------------------------------------
       
   105 // CFreestyleEmailUiTextureManager::ConstructL
       
   106 // -----------------------------------------------------------------------------
       
   107 //
       
   108 void CFreestyleEmailUiTextureManager::ConstructL(CAlfEnv& aEnv)
       
   109 	{
       
   110     FUNC_LOG;
       
   111     CAlfControl::ConstructL(aEnv);
       
   112 	iDelayLoadIndex = ETextureFirst;
       
   113 	InitTextureArray();
       
   114 	//CreateTexturesL();
       
   115 	iTmpBitmap = NULL;
       
   116 	iTmpMaskBitmap = NULL;
       
   117 	}
       
   118 
       
   119 
       
   120 // -----------------------------------------------------------------------------
       
   121 // CFreestyleEmailUiTextureManager::TextureByIndex
       
   122 // -----------------------------------------------------------------------------
       
   123 //
       
   124 CAlfTexture& CFreestyleEmailUiTextureManager::TextureByIndex( TFSEmailUiTextures aIndex )
       
   125 	{
       
   126     FUNC_LOG;
       
   127 	// load the texture if it is not yet loaded
       
   128 	if ( iTextures[aIndex] == &CAlfStatic::Env().TextureManager().BlankTexture() )
       
   129 		{
       
   130 		TRAPD( error, LoadTextureL( aIndex ) );
       
   131 		if ( KErrNone != error )
       
   132 			{
       
   133 			}
       
   134 		}
       
   135 	return *iTextures[aIndex];
       
   136 	}
       
   137 
       
   138 // -----------------------------------------------------------------------------
       
   139 // CFreestyleEmailUiTextureManager::TextureByMailboxIdL
       
   140 // Returns branded mailbox icon texture based on PluginId, MailboxId and IconSize.
       
   141 // If not found. Will call LoadTexture to create new textures based on temporary
       
   142 // variables which were set by CreateBrandedMailboxTexture call.
       
   143 // Size(0,0) is used to get original size icon
       
   144 // -----------------------------------------------------------------------------
       
   145 CAlfTexture& CFreestyleEmailUiTextureManager::TextureByMailboxIdL( const TUid aPluginId, const TUint aMailboxId, const TSize& aSize )
       
   146 	{
       
   147     FUNC_LOG;
       
   148 	TInt foundIndex = 0;
       
   149 	TBool found = EFalse;
       
   150 
       
   151 	// Go through icon array and check if requested icon already exists
       
   152     for ( TInt i = 0; i < iBrandedMailboxIcons.Count(); i++ )
       
   153         {
       
   154         if ( iPluginId[i] == aPluginId && iMailboxId[i] == aMailboxId && iSize[i] == aSize )
       
   155         	{
       
   156             foundIndex = i;
       
   157         	found = ETrue;
       
   158       	    break;
       
   159         	}
       
   160         }
       
   161     if ( !found )
       
   162     	{
       
   163     	// Did not find icon -> add new
       
   164     	foundIndex = iBrandedMailboxIcons.Count();
       
   165     	TRAPD( error, LoadTextureL( TFSEmailUiTextures( EBrandedIconStart + foundIndex ) ) ); // Will add new
       
   166 		if ( KErrNone != error )
       
   167 			{
       
   168 			return TextureByIndex( EFolderListEmailAccountTexture );
       
   169 			}
       
   170     	}
       
   171 	return *iBrandedMailboxIcons[foundIndex];
       
   172 	}
       
   173 
       
   174 
       
   175 // -----------------------------------------------------------------------------
       
   176 // CFreestyleEmailUiTextureManager::ListSelectorBrushL
       
   177 // NOTE: Gen UI list doesn't get ownership of the selector brush, so we can
       
   178 // use the same selector brush for all views.
       
   179 // -----------------------------------------------------------------------------
       
   180 //
       
   181 CAlfFrameBrush* CFreestyleEmailUiTextureManager::ListSelectorBrushL()
       
   182 	{
       
   183     FUNC_LOG;
       
   184 
       
   185 	if ( !iFrameBrush )
       
   186 		{
       
   187 		iFrameBrush = NewCtrlBarSelectorBrushLC();
       
   188 		CleanupStack::Pop( iFrameBrush );
       
   189 		}
       
   190 
       
   191 	return iFrameBrush;
       
   192 	}
       
   193 
       
   194 // -----------------------------------------------------------------------------
       
   195 // CFreestyleEmailUiTextureManager::NewCtrlBarSelectorBrushLC
       
   196 // NOTE: Gen UI list gets the ownership of the selector brush and deletes it
       
   197 // when the selector is reset, so we need to construct new brush every time.
       
   198 // -----------------------------------------------------------------------------
       
   199 //
       
   200 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewCtrlBarSelectorBrushLC()
       
   201 	{
       
   202     FUNC_LOG;
       
   203 
       
   204 	// Use FS specific skin ID if it's found, otherwise use general list highlight.
       
   205 	// This need to be checked before CHuiFrameBrush::NewL as it never leaves
       
   206 	// even if the skin ID is not found. Another option would be to try first with
       
   207 	// FS specific skin ID, TRAP SetFrameRectsL-function call, and if it leaves,
       
   208 	// then recreate frame brush with general skin ID and recall SetFrameRectsL.
       
   209 	TAknsItemID skinId = KAknsIIDQgnFsList;
       
   210 	CAknsItemData* temp = AknsUtils::SkinInstance()->GetCachedItemData( skinId );
       
   211 	if( !temp )
       
   212 		{
       
   213 		skinId = KAknsIIDQsnFrList;
       
   214 		}
       
   215 
       
   216 	CAlfFrameBrush* frameBrush(0);
       
   217 	frameBrush = CAlfFrameBrush::NewLC( *iEnv, skinId );
       
   218 
       
   219 	TRect testOuterRect(0,0,300,80);
       
   220 	TRect testInnerRect(4,4,296,76);
       
   221 
       
   222 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   223 
       
   224 	return frameBrush;
       
   225 	}
       
   226 
       
   227 // <cmail>
       
   228 // -----------------------------------------------------------------------------
       
   229 // CFreestyleEmailUiTextureManager::NewListSelectorBrushL
       
   230 // NOTE: Gen UI list gets the ownership of the selector brush and deletes it
       
   231 // when the selector is reset, so we need to construct new brush every time.
       
   232 // Note: now its is changed to have ownership in texturemanager
       
   233 // -----------------------------------------------------------------------------
       
   234 //
       
   235 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewListSelectorBrushL()
       
   236     {
       
   237     FUNC_LOG;
       
   238     if(!iNewFrameBrush)
       
   239         {
       
   240         iNewFrameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnFrList, -2, -1 );
       
   241         CleanupStack::Pop( iNewFrameBrush ); // frameBrush
       
   242     const TRect testOuterRect(0,0,300,80);
       
   243     TRect testInnerRect( testOuterRect );
       
   244     testInnerRect.Shrink( 10, 10 );
       
   245         iNewFrameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   246         }
       
   247     return iNewFrameBrush;
       
   248     }
       
   249 // </cmail>
       
   250 
       
   251 
       
   252 // -----------------------------------------------------------------------------
       
   253 // CFreestyleEmailUiTextureManager::GridSelectorBrushL
       
   254 // -----------------------------------------------------------------------------
       
   255 //
       
   256 CAlfFrameBrush* CFreestyleEmailUiTextureManager::GridSelectorBrushL()
       
   257 	{
       
   258     FUNC_LOG;
       
   259 	return ListSelectorBrushL();
       
   260 	}
       
   261 
       
   262 
       
   263 // -----------------------------------------------------------------------------
       
   264 // CFreestyleEmailUiTextureManager::NewScrollBarTopBgBrushLC
       
   265 // -----------------------------------------------------------------------------
       
   266 //
       
   267 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewScrollBarTopBgBrushLC()
       
   268 	{
       
   269     FUNC_LOG;
       
   270 	CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnCpScrollBgTop );
       
   271 	// Fix these
       
   272 	TRect testOuterRect(10,10,57,57);
       
   273 	TRect testInnerRect(12,12,56,56);
       
   274 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   275 	return frameBrush;
       
   276 	}
       
   277 
       
   278 // -----------------------------------------------------------------------------
       
   279 // CFreestyleEmailUiTextureManager::NewScrollBarBottomBgBrushLC
       
   280 // -----------------------------------------------------------------------------
       
   281 //
       
   282 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewScrollBarBottomBgBrushLC()
       
   283 	{
       
   284     FUNC_LOG;
       
   285 	CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnCpScrollBgBottom );
       
   286 	// Fix these
       
   287 	TRect testOuterRect(10,10,57,57);
       
   288 	TRect testInnerRect(12,12,56,56);
       
   289 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   290 	return frameBrush;
       
   291 	}
       
   292 
       
   293 // -----------------------------------------------------------------------------
       
   294 // CFreestyleEmailUiTextureManager::NewScrollBarCenterBgBrushLC
       
   295 // -----------------------------------------------------------------------------
       
   296 //
       
   297 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewScrollBarCenterBgBrushLC()
       
   298 	{
       
   299     FUNC_LOG;
       
   300 	CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnCpScrollBgMiddle );
       
   301 	// Fix these
       
   302 	TRect testOuterRect(10,10,57,57);
       
   303 	TRect testInnerRect(12,12,56,56);
       
   304 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   305 	return frameBrush;
       
   306 	}
       
   307 
       
   308 // -----------------------------------------------------------------------------
       
   309 // CFreestyleEmailUiTextureManager::NewScrollBarThumbBrushLC
       
   310 // -----------------------------------------------------------------------------
       
   311 //
       
   312 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewScrollBarThumbBrushLC()
       
   313 	{
       
   314     FUNC_LOG;
       
   315 	CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnCpScrollHandleMiddle );
       
   316 	// Fix these
       
   317 	TRect testOuterRect(10,10,57,57);
       
   318 	TRect testInnerRect(12,12,56,56);
       
   319 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   320 	return frameBrush;
       
   321 	}
       
   322 
       
   323 // -----------------------------------------------------------------------------
       
   324 // CFreestyleEmailUiTextureManager::NewMailListSeparatorBgBrushLC
       
   325 // -----------------------------------------------------------------------------
       
   326 //
       
   327 CAlfFrameBrush* CFreestyleEmailUiTextureManager::NewMailListSeparatorBgBrushLC()
       
   328 	{
       
   329     FUNC_LOG;
       
   330 	CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, KAknsIIDQsnFrStatusFlat );
       
   331 	// Fix these
       
   332 	TRect testOuterRect(10,10,57,57);
       
   333 	TRect testInnerRect(12,12,56,56);
       
   334 	frameBrush->SetFrameRectsL(testInnerRect, testOuterRect);
       
   335 	return frameBrush;
       
   336 	}
       
   337 
       
   338 // -----------------------------------------------------------------------------
       
   339 // CFreestyleEmailUiTextureManager::NewControlBarListBgBrushLC
       
   340 // -----------------------------------------------------------------------------
       
   341 //
       
   342 CAlfImageBrush* CFreestyleEmailUiTextureManager::NewControlBarListBgBrushLC()
       
   343 	{
       
   344     FUNC_LOG;
       
   345     CAlfTexture& circle = TextureByIndex( EControlBarListBackgroundTexture );
       
   346     TInt borderSize = iAppUi->LayoutHandler()->ControlBarListBorderRoundingSize();
       
   347     CAlfImageBrush* bgBrush = CAlfImageBrush::NewLC( *iEnv, TAlfImage(circle) );
       
   348     bgBrush->SetBorders(-borderSize, -borderSize, -borderSize, -borderSize);
       
   349     bgBrush->SetLayer(EAlfBrushLayerBackground);
       
   350     return bgBrush;
       
   351 	}
       
   352 
       
   353 // -----------------------------------------------------------------------------
       
   354 // CFreestyleEmailUiTextureManager::NewControlBarButtonBgBrushLC
       
   355 // -----------------------------------------------------------------------------
       
   356 //
       
   357 CAlfImageBrush* CFreestyleEmailUiTextureManager::NewControlBarButtonBgBrushLC()
       
   358 	{
       
   359     FUNC_LOG;
       
   360     CAlfTexture& circle = TextureByIndex( EControlBarButtonBackgroundTexture );
       
   361     TInt borderSize = iAppUi->LayoutHandler()->ControlBarButtonBgRoundingSize();
       
   362     CAlfImageBrush* bgBrush = CAlfImageBrush::NewLC( *iEnv, TAlfImage(circle) );
       
   363     bgBrush->SetBorders(-borderSize, -borderSize, -borderSize, -borderSize);
       
   364     bgBrush->SetLayer(EAlfBrushLayerBackground);
       
   365     return bgBrush;
       
   366 	}
       
   367 
       
   368 // -----------------------------------------------------------------------------
       
   369 // CFreestyleEmailUiTextureManager::TitleDividerBgBrushL
       
   370 // -----------------------------------------------------------------------------
       
   371 //
       
   372 CAlfFrameBrush* CFreestyleEmailUiTextureManager::TitleDividerBgBrushL()
       
   373     {
       
   374     FUNC_LOG;
       
   375 
       
   376     if ( !iTitleDividerBgBrush )
       
   377         {
       
   378         MAknsSkinInstance* skin = AknsUtils::SkinInstance();
       
   379 
       
   380         TAknsItemID skinId = KAknsIIDQsnFrTitleDivider;
       
   381 
       
   382         CAknsItemData* temp = skin->GetCachedItemData( skinId );
       
   383 
       
   384         if ( !temp )
       
   385             {
       
   386             User::Leave( KErrNotFound );
       
   387             }
       
   388 
       
   389         CAlfFrameBrush* frameBrush = CAlfFrameBrush::NewLC( *iEnv, skinId );
       
   390 
       
   391         TRect testOuterRect( 0, 0, 300, 80 );
       
   392         TRect testInnerRect( 4, 4, 296, 76 );
       
   393 
       
   394         frameBrush->SetFrameRectsL( testInnerRect, testOuterRect );
       
   395 
       
   396         CleanupStack::Pop( frameBrush );
       
   397 
       
   398         iTitleDividerBgBrush = frameBrush;
       
   399         }
       
   400 
       
   401     return iTitleDividerBgBrush;
       
   402     }
       
   403 
       
   404 // -----------------------------------------------------------------------------
       
   405 // CFreestyleEmailUiTextureManager::BackgroundForThisResolutionL
       
   406 // -----------------------------------------------------------------------------
       
   407 //
       
   408 CAlfTexture& CFreestyleEmailUiTextureManager::BackgroundForThisResolutionL()
       
   409 	{
       
   410     FUNC_LOG;
       
   411 	return CAlfStatic::Env().TextureManager().BlankTexture();
       
   412 	}
       
   413 
       
   414 // -----------------------------------------------------------------------------
       
   415 // CFreestyleEmailUiTextureManager::WatermarkBackgroundForThisResolutionL
       
   416 // -----------------------------------------------------------------------------
       
   417 //
       
   418 CAlfTexture& CFreestyleEmailUiTextureManager::WatermarkBackgroundForThisResolutionL()
       
   419 	{
       
   420     FUNC_LOG;
       
   421 	return CAlfStatic::Env().TextureManager().BlankTexture();
       
   422 	}
       
   423 
       
   424 // -----------------------------------------------------------------------------
       
   425 // CFreestyleEmailUiTextureManager::CreateTexturesL
       
   426 // Textures loaded here are loaded on AppUi ConstructL
       
   427 // I.e. they make application startup slower
       
   428 // -----------------------------------------------------------------------------
       
   429 //
       
   430 void CFreestyleEmailUiTextureManager::CreateTexturesL()
       
   431 	{
       
   432     FUNC_LOG;
       
   433 
       
   434 //	for ( TInt i=ETextureGridFirst; i<ETextureFlagFirst; i++ )
       
   435 	for ( TInt i=ETextureFirst; i<ETextureCount; i++ )
       
   436 		{
       
   437 		TFSEmailUiTextures idx = (TFSEmailUiTextures)i;
       
   438 		LoadTextureL( idx );
       
   439 		}
       
   440 	}
       
   441 
       
   442 // -----------------------------------------------------------------------------
       
   443 // CFreestyleEmailUiTextureManager::CreateBrandedMailboxTexture
       
   444 // This function must be called from UI before TextureByMailboxIdL call.
       
   445 // This function takes temporary copy of mailbox icon into TextureManager
       
   446 // Caller has got the aIcon from the BrandingManager.
       
   447 // TSize information is used because Alfred does not support SetSize for
       
   448 // textures. Size(0,0) is used for original size
       
   449 // -----------------------------------------------------------------------------
       
   450 void CFreestyleEmailUiTextureManager::CreateBrandedMailboxTexture(
       
   451 		  CGulIcon* aIcon, const TUid aPluginId, const TUint aMailboxId, const TSize& aSize )
       
   452 	{
       
   453     FUNC_LOG;
       
   454 	if ( iTmpBitmap || iTmpMaskBitmap )
       
   455 		{
       
   456 		iTmpBitmap = NULL;
       
   457 		iTmpMaskBitmap = NULL;
       
   458 		}
       
   459 	TBool found = EFalse;
       
   460 	// Check if icon already axcist
       
   461     for ( TInt i = 0; i < iBrandedMailboxIcons.Count(); i++ )
       
   462         {
       
   463         if ( iPluginId[i] == aPluginId && iMailboxId[i] == aMailboxId && iSize[i] == aSize )
       
   464         	{
       
   465         	found = ETrue;
       
   466         	}
       
   467         }
       
   468     if ( !found )
       
   469     	{
       
   470     	// Take ownership of the icon which is originally got from the BrandingManager
       
   471     	// Store bitmap and mask into temporary variables
       
   472     	aIcon->SetBitmapsOwnedExternally( ETrue );
       
   473     	iTmpBitmap = aIcon->Bitmap();
       
   474     	iTmpMaskBitmap = aIcon->Mask();
       
   475      	iTmpPluginId = aPluginId;
       
   476     	iTmpMailboxId = aMailboxId;
       
   477     	iTmpSize = aSize;
       
   478     	}
       
   479     }
       
   480 
       
   481 // -----------------------------------------------------------------------------
       
   482 // CFreestyleEmailUiTextureManager::ProvideBitmapL
       
   483 // -----------------------------------------------------------------------------
       
   484 //
       
   485 void CFreestyleEmailUiTextureManager::ProvideBitmapL(TInt aId, CFbsBitmap*& aBitmap, CFbsBitmap*& aMaskBitmap)
       
   486 	{
       
   487     FUNC_LOG;
       
   488     MAknsSkinInstance* skin = AknsUtils::SkinInstance();
       
   489     TRect screenRect;
       
   490  	AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EScreen, screenRect );
       
   491  	TSize iconSize;
       
   492  	if ( aId >= EBrandedIconStart && aId <= EBrandedIconEnd )
       
   493  		{
       
   494  		// Do not set size
       
   495  		}
       
   496  	else if ( aId >= ETextureGridFirst ) // GRID ICONS
       
   497 		{
       
   498 // <cmail> Platform layout change
       
   499 	   	//TInt gridIconSize = iAppUi->LayoutHandler()->GridIconSize();
       
   500 		//iconSize.SetSize(  gridIconSize, gridIconSize );
       
   501 		iconSize = iAppUi->LayoutHandler()->GridIconSize();
       
   502 // </cmail>
       
   503 		}
       
   504 	else  if ( aId >= ETextureMessageFirst /*&& aId < ETextureCalendarFirst*/ ) // MESSAGE ICONS
       
   505 		{
       
   506 		iconSize.SetSize( iAppUi->LayoutHandler()->MailIconSizeInThisResolution().iWidth,
       
   507 						  iAppUi->LayoutHandler()->MailIconSizeInThisResolution().iHeight );
       
   508 		}
       
   509 
       
   510     TFileName iconFileName;
       
   511     TFsEmailUiUtility::GetFullIconFileNameL( iconFileName );
       
   512 
       
   513   	CFbsBitmap* bitmap(0);
       
   514   	CFbsBitmap* mask(0);
       
   515 	TScaleMode scalemode = EAspectRatioPreserved;
       
   516 
       
   517 // <cmaill> icons changed
       
   518 	switch ( aId )
       
   519 		{
       
   520 		// LIST TEXTURE READING STARTS HERE
       
   521 		//
       
   522 		case ESearchLookingGlassIcon:
       
   523 			{
       
   524 			TInt tempsize = iAppUi->LayoutHandler()->SearchLookingGlassIconSize();
       
   525 			iconSize.SetSize( tempsize, tempsize );
       
   526 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   527 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_search,
       
   528 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_search_mask);
       
   529 			}
       
   530 			break;
       
   531 		case EMailListBarBgIcon:
       
   532 			{
       
   533 			TInt tempsize = iAppUi->LayoutHandler()->EMailListBarBgIconSize();
       
   534 			// Get control bar grafix from skin, otherwise use default.
       
   535 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
   536     			KAknsIIDQgnFsGrafEmailCtrlbar, bitmap, mask, iconFileName,
       
   537     			EMbmFreestyleemailuiQgn_graf_cmail_email_ctrlbar,
       
   538             	EMbmFreestyleemailuiQgn_graf_cmail_email_ctrlbar_mask );
       
   539 			iconSize.SetSize( screenRect.Width(), tempsize  );
       
   540 			scalemode = EAspectRatioNotPreserved;
       
   541 			}
       
   542 			break;
       
   543 		case EListControlBarMailboxDefaultIcon:
       
   544 			{
       
   545 			TInt tempsize = iAppUi->LayoutHandler()->ListControlBarMailboxDefaultIconSize();
       
   546 			iconSize.SetSize( tempsize, tempsize );
       
   547 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   548 	                             EMbmFreestyleemailuiQgn_indi_cmail_drop_email_account,
       
   549 	                             EMbmFreestyleemailuiQgn_indi_cmail_drop_email_account_mask);
       
   550 			}
       
   551 			break;
       
   552 			// Same than previous, but needed in two places at same screen
       
   553 		case EListTextureMailboxDefaultIcon:
       
   554 			{
       
   555 			TInt tempsize = iAppUi->LayoutHandler()->ListTextureMailboxDefaultIconSize();
       
   556 			iconSize.SetSize( tempsize, tempsize );
       
   557 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   558 	                             EMbmFreestyleemailuiQgn_indi_cmail_drop_inbox,
       
   559 	                             EMbmFreestyleemailuiQgn_indi_cmail_drop_inbox_mask);
       
   560 			}
       
   561 			break;
       
   562 		case EListTextureNodeExpanded:
       
   563 			{
       
   564 			TInt tempsize = iAppUi->LayoutHandler()->ListTextureNodeExpandedSize();
       
   565 			iconSize.SetSize( tempsize, tempsize );
       
   566 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
   567     			KAknsIIDQgnFsIndiMinusSign, bitmap, mask, iconFileName,
       
   568     			EMbmFreestyleemailuiQgn_indi_cmail_collapse,
       
   569             	EMbmFreestyleemailuiQgn_indi_cmail_collapse_mask );
       
   570 			}
       
   571 			break;
       
   572 		case EListTextureNodeCollapsed:
       
   573 			{
       
   574             TInt tempsize = iAppUi->LayoutHandler()->ListTextureNodeExpandedSize();
       
   575             iconSize.SetSize( tempsize, tempsize );
       
   576 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
   577     			KAknsIIDQgnFsIndiPlusSign, bitmap, mask, iconFileName,
       
   578     			EMbmFreestyleemailuiQgn_indi_cmail_expand,
       
   579             	EMbmFreestyleemailuiQgn_indi_cmail_expand_mask );
       
   580 			}
       
   581 			break;
       
   582 		case EListTextureSelector:
       
   583 			{
       
   584 			TInt tempsize = iAppUi->LayoutHandler()->EListTextureSelectorSize();
       
   585             iconSize.SetSize( tempsize, tempsize );
       
   586 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   587 	                             EMbmFreestyleemailuiQgn_graf_cmail_list_selector,
       
   588 	                             EMbmFreestyleemailuiQgn_graf_cmail_list_selector_mask);
       
   589 			}
       
   590 			break;
       
   591 		case EListControlMarkIcon:
       
   592 			{
       
   593 			// <cmail> Platform layout change
       
   594 			// Get mark icon from the skin, otherwise use default
       
   595             AknsUtils::CreateColorIconL(
       
   596                 AknsUtils::SkinInstance(),
       
   597                 KAknsIIDQgnFsListItemSelected,
       
   598                 KAknsIIDQsnIconColors,
       
   599                 EAknsCIQsnIconColorsCG13,
       
   600                 bitmap,
       
   601                 mask,
       
   602                 //KAvkonBitmapFile,
       
   603                 iconFileName,
       
   604                 EMbmFreestyleemailuiQgn_indi_marked_add,
       
   605                 EMbmFreestyleemailuiQgn_indi_marked_add_mask,
       
   606                 KRgbBlack );
       
   607             TInt tempsize = iAppUi->LayoutHandler()->SearchLookingGlassIconSize();
       
   608             iconSize.SetSize( tempsize, tempsize );
       
   609 			scalemode = EAspectRatioNotPreserved;
       
   610 			// </cmail> Platform layout change
       
   611 			}
       
   612 			break;
       
   613 		case EListControlMenuIcon:
       
   614 			{
       
   615 			// Use mirrored version of the icon on Arabic/Hebrew layout
       
   616 			if ( AknLayoutUtils::LayoutMirrored() )
       
   617 			    {
       
   618 	            AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
   619 	                KAknsIIDQgnFsHscrActionArrowLeft, bitmap, mask, iconFileName,
       
   620 	                EMbmFreestyleemailuiQgn_indi_cmail_arrow_left,
       
   621 	                EMbmFreestyleemailuiQgn_indi_cmail_arrow_left_mask );
       
   622 			    }
       
   623 			else
       
   624 			    {
       
   625 	            AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
   626 	                KAknsIIDQgnFsHscrActionArrowRight, bitmap, mask, iconFileName,
       
   627 	                EMbmFreestyleemailuiQgn_indi_cmail_arrow_right,
       
   628 	                EMbmFreestyleemailuiQgn_indi_cmail_arrow_right_mask );
       
   629 			    }
       
   630 
       
   631             TInt tempsize = iAppUi->LayoutHandler()->ListControlMenuIconSize();
       
   632             iconSize.SetSize( tempsize, tempsize );
       
   633 			scalemode = EAspectRatioNotPreserved;
       
   634 			}
       
   635 			break;
       
   636 		// MESSAGE TEXTURE READING STARTS HERE
       
   637 	 	//
       
   638 		case EMessageReadIcon:
       
   639 			{
       
   640 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   641 	                             EMbmFreestyleemailuiQgn_indi_cmail_read,
       
   642 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_mask);
       
   643 			}
       
   644 			break;
       
   645 		case EMessageReadIconAttachment:
       
   646 			{
       
   647 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   648 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach,
       
   649 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach_mask);
       
   650 			}
       
   651 			break;
       
   652 		case EMessageUnreadIcon:
       
   653 			{
       
   654 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   655 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread,
       
   656 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_mask);
       
   657 			}
       
   658 			break;
       
   659 		case EMessageLowPrioReadIcon:
       
   660 			{
       
   661 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   662 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_low_prio,
       
   663 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_low_prio_mask);
       
   664 			}
       
   665 			break;
       
   666 		case EMessageLowPrioReadIconAttachment:
       
   667 			{
       
   668 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   669 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach_low_prio,
       
   670 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach_low_prio_mask);
       
   671 			}
       
   672 			break;
       
   673 		case EMessageHighPrioReadIconAttachment:
       
   674 			{
       
   675 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   676 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach_high_prio,
       
   677 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_attach_high_prio_mask);
       
   678 			}
       
   679 			break;
       
   680 		case EMessageUnreadIconAttachment:
       
   681 			{
       
   682 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   683 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach,
       
   684 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach_mask);
       
   685 			}
       
   686 			break;
       
   687 		case EMessageHighPrioUnreadIconAttachment:
       
   688 			{
       
   689 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   690 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach_high_prio,
       
   691 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach_high_prio_mask);
       
   692 			}
       
   693 			break;
       
   694 		case EMessageLowPrioUnreadIcon:
       
   695 			{
       
   696 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   697 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_low_prio,
       
   698 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_low_prio_mask);
       
   699 			}
       
   700 			break;
       
   701 		case EMessageLowPrioUnreadIconAttachment:
       
   702 			{
       
   703 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   704 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach_low_prio,
       
   705 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_attach_low_prio_mask);
       
   706 			}
       
   707 			break;
       
   708 		case EMessageHighPrioReadIcon:
       
   709 			{
       
   710 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   711 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_high_prio,
       
   712 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_high_prio_mask);
       
   713 			}
       
   714 			break;
       
   715 		case EMessageHighPrioUnreadIcon:
       
   716 			{
       
   717 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   718 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_high_prio,
       
   719 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_high_prio_mask);
       
   720 			}
       
   721 			break;
       
   722 		case EMessageReadRepliedIcon:
       
   723 			{
       
   724 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   725 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied,
       
   726 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_mask);
       
   727 			}
       
   728 			break;
       
   729 		case EMessageReadRepliedIconAttachment:
       
   730 			{
       
   731 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   732 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach,
       
   733 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach_mask);
       
   734 			}
       
   735 			break;
       
   736 		case EMessageReadRepliedHighPrioIcon:
       
   737 			{
       
   738 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   739 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_high_prio,
       
   740 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_high_prio_mask);
       
   741 			}
       
   742 			break;
       
   743 		case EMessageReadRepliedHighPrioIconAttachment:
       
   744 			{
       
   745 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   746 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach_high_prio,
       
   747 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach_high_prio_mask);
       
   748 			}
       
   749 			break;
       
   750 		case EMessageReadRepliedLowPrioIcon:
       
   751 			{
       
   752 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   753 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_low_prio,
       
   754 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_low_prio_mask);
       
   755 			}
       
   756 			break;
       
   757 		case EMessageReadRepliedLowPrioIconAttachment:
       
   758 			{
       
   759 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   760 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach_low_prio,
       
   761 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_replied_attach_low_prio_mask);
       
   762 			}
       
   763 			break;
       
   764 		case EMessageReadForwardedIcon:
       
   765 			{
       
   766 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   767 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded,
       
   768 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_mask);
       
   769 			}
       
   770 			break;
       
   771 		case EMessageReadForwardedIconAttachment:
       
   772 			{
       
   773 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   774 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach,
       
   775 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach_mask);
       
   776 			}
       
   777 			break;
       
   778 		case EMessageReadForwardedHighPrioIcon:
       
   779 			{
       
   780 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   781 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_high_prio,
       
   782 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_high_prio_mask);
       
   783 			}
       
   784 			break;
       
   785 		case EMessageReadForwardedHighPrioIconAttachment:
       
   786 			{
       
   787 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   788 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach_high_prio,
       
   789 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach_high_prio_mask);
       
   790 			}
       
   791 			break;
       
   792 		case EMessageReadForwardedLowPrioIcon:
       
   793 			{
       
   794 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   795 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_low_prio,
       
   796 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_low_prio_mask);
       
   797 			}
       
   798 			break;
       
   799 		case EMessageReadForwardedLowPrioIconAttachment:
       
   800 			{
       
   801 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   802 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach_low_prio,
       
   803 	                             EMbmFreestyleemailuiQgn_indi_cmail_read_forwarded_attach_low_prio_mask);
       
   804 			}
       
   805 			break;
       
   806 		case EMessageUnreadForwardedIcon:
       
   807 			{
       
   808 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   809 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded,
       
   810 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_mask);
       
   811 			}
       
   812 			break;
       
   813 		case EMessageUnreadForwardedHighPrioIcon:
       
   814 			{
       
   815 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   816 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_high_prio,
       
   817 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_high_prio);
       
   818 			}
       
   819 			break;
       
   820 		case EMessageUnreadForwardedLowPrioIcon:
       
   821 			{
       
   822 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   823 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_low_prio,
       
   824 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_low_prio_mask);
       
   825 			}
       
   826 			break;
       
   827 		case EMessageUnreadForwardedIconAttachment:
       
   828 			{
       
   829 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   830 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach,
       
   831 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach_mask);
       
   832 			}
       
   833 			break;
       
   834 		case EMessageUnreadForwardedHighPrioIconAttachment:
       
   835 			{
       
   836 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   837 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach_high_prio,
       
   838 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach_high_prio_mask);
       
   839 			}
       
   840 			break;
       
   841 		case EMessageUnreadForwardedLowPrioIconAttachment:
       
   842 			{
       
   843 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   844 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach_low_prio,
       
   845 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_forwarded_attach_low_prio_mask);
       
   846 			}
       
   847 			break;
       
   848 		case EMessageUnreadRepliedIcon:
       
   849 			{
       
   850 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   851 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied,
       
   852 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_mask);
       
   853 			}
       
   854 			break;
       
   855 
       
   856 		case EMessageUnreadRepliedIconAttachment:
       
   857 			{
       
   858 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   859 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach,
       
   860 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach_mask);
       
   861 			}
       
   862 			break;
       
   863 		case EMessageUnreadRepliedHighPrioIcon:
       
   864 			{
       
   865 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   866 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_high_prio,
       
   867 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_high_prio_mask);
       
   868 			}
       
   869 			break;
       
   870 		case EMessageUnreadRepliedHighPrioIconAttachment:
       
   871 			{
       
   872 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   873 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach_high_prio,
       
   874 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach_high_prio_mask);
       
   875 			}
       
   876 			break;
       
   877 		case EMessageUnreadRepliedLowPrioIcon:
       
   878 			{
       
   879 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   880 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_low_prio,
       
   881 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_low_prio_mask);
       
   882 			}
       
   883 			break;
       
   884 		case EMessageUnreadRepliedLowPrioIconAttachment:
       
   885 			{
       
   886 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   887 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach_low_prio,
       
   888 	                             EMbmFreestyleemailuiQgn_indi_cmail_unread_replied_attach_low_prio_mask);
       
   889 			}
       
   890 			break;
       
   891 		case EAttachmentIcon:
       
   892 			{
       
   893             //<cmail>
       
   894 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
   895             //iconSize.SetSize( tempsize, tempsize );
       
   896 			iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
   897             //</cmail>
       
   898 
       
   899 	        AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   900 	                EMbmFreestyleemailuiQgn_indi_cmail_attachment,
       
   901 	                EMbmFreestyleemailuiQgn_indi_cmail_attachment_mask );
       
   902 			}
       
   903 			break;
       
   904 	 	//
       
   905 	 	// MESSAGE ICON READING STOPS HERE
       
   906 
       
   907 
       
   908 		// CALENDAR EVENT READING STARTS HERE
       
   909 		case EMessageCalInvitationRead:
       
   910 			{
       
   911 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   912 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read,
       
   913 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_mask);
       
   914 			}
       
   915 			break;
       
   916 		case EMessageCalInvitation:
       
   917 			{
       
   918 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   919 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread,
       
   920 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_mask);
       
   921 			}
       
   922 			break;
       
   923 		case EMessageCalInvitationAttachments:
       
   924 			{
       
   925 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   926 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments,
       
   927 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments_mask);
       
   928 			}
       
   929 			break;
       
   930 		case EMessageCalInvitationReadAttachments:
       
   931 			{
       
   932 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   933 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments,
       
   934 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments_mask);
       
   935 			}
       
   936 			break;
       
   937 		case EMessageCalInvitationHighPrio:
       
   938 			{
       
   939 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   940 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_high_prio,
       
   941 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_high_prio_mask);
       
   942 			}
       
   943 			break;
       
   944 		case EMessageCalInvitationReadHighPrio:
       
   945 			{
       
   946 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   947 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_high_prio,
       
   948 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_high_prio_mask);
       
   949 			}
       
   950 			break;
       
   951 		case EMessageCalInvitationAttachmentsHighPrio:
       
   952 			{
       
   953 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   954 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments_high_prio,
       
   955 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments_high_prio_mask);
       
   956 			}
       
   957 			break;
       
   958 		case EMessageCalInvitationReadAttachmentsHighPrio:
       
   959 			{
       
   960 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   961 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments_high_prio,
       
   962 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments_high_prio_mask);
       
   963 			}
       
   964 			break;
       
   965 		case EMessageCalInvitationLowPrio:
       
   966 			{
       
   967 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   968 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_low_prio,
       
   969 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_low_prio_mask);
       
   970 			}
       
   971 			break;
       
   972 		case EMessageCalInvitationReadLowPrio:
       
   973 			{
       
   974 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   975 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_low_prio,
       
   976 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_low_prio_mask);
       
   977 			}
       
   978 			break;
       
   979 		case EMessageCalInvitationAttachmentsLowPrio:
       
   980 			{
       
   981 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   982 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments_low_prio,
       
   983 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_unread_attachments_low_prio_mask);
       
   984 			}
       
   985 			break;
       
   986 		case EMessageCalInvitationReadAttachmentsLowPrio:
       
   987 			{
       
   988 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   989 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments_low_prio,
       
   990 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_event_read_attachments_low_prio_mask);
       
   991 			}
       
   992 			break;
       
   993 		case EMessageCalInvitationCancelled:
       
   994 			{
       
   995 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
   996 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_delete,
       
   997 	                             EMbmFreestyleemailuiQgn_indi_cmail_calendar_delete_mask);
       
   998 			}
       
   999 			break;
       
  1000 		// CALENDAR EVENT READING STOPS HERE
       
  1001 
       
  1002 	 	// FLAG ICONS
       
  1003 		case EFollowUpFlag:
       
  1004 			{
       
  1005             TInt tempsize = iAppUi->LayoutHandler()->ListControlMenuIconSize();
       
  1006             iconSize.SetSize( tempsize, tempsize );
       
  1007             AknsUtils::CreateColorIconL(
       
  1008                 AknsUtils::SkinInstance(),
       
  1009                 KAknsIIDNone,
       
  1010                 KAknsIIDQsnIconColors,
       
  1011                 EAknsCIQsnIconColorsCG7,
       
  1012                 bitmap,
       
  1013                 mask,
       
  1014                 iconFileName,
       
  1015                 EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up,
       
  1016                 EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_mask,
       
  1017                 KRgbBlack );
       
  1018 			}
       
  1019 			break;
       
  1020 		case EFollowUpFlagComplete:
       
  1021 			{
       
  1022             TInt tempsize = iAppUi->LayoutHandler()->ListControlMenuIconSize();
       
  1023             iconSize.SetSize( tempsize, tempsize );
       
  1024             AknsUtils::CreateColorIconL(
       
  1025                 AknsUtils::SkinInstance(),
       
  1026                 KAknsIIDNone,
       
  1027                 KAknsIIDQsnIconColors,
       
  1028                 EAknsCIQsnIconColorsCG7,
       
  1029                 bitmap,
       
  1030                 mask,
       
  1031                 iconFileName,
       
  1032                 EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_complete,
       
  1033                 EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_complete_mask,
       
  1034                 KRgbBlack );
       
  1035 			}
       
  1036 			break;
       
  1037 			
       
  1038     case EFollowUpFlagList:
       
  1039             {
       
  1040             TInt tempsize = iAppUi->LayoutHandler()->ListControlMenuIconSize();
       
  1041             iconSize.SetSize( tempsize, tempsize );
       
  1042             AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1043                                  EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up,
       
  1044                                  EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_mask);
       
  1045             }
       
  1046             break;
       
  1047     case EFollowUpFlagCompleteList:
       
  1048             {
       
  1049             TInt tempsize = iAppUi->LayoutHandler()->ListControlMenuIconSize();
       
  1050             iconSize.SetSize( tempsize, tempsize );
       
  1051             AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1052                                  EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_complete,
       
  1053                                  EMbmFreestyleemailuiQgn_indi_cmail_viewer_follow_up_complete_mask);
       
  1054             }
       
  1055             break;
       
  1056 			
       
  1057 	 	// END OF FLAG ICON S
       
  1058 
       
  1059 
       
  1060 		// STATUS INDICATOR ICON READING STARTS HERE
       
  1061 	 	//
       
  1062 		case EStatusTextureSynchronising:
       
  1063 			{
       
  1064 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1065 	                             EMbmFreestyleemailuiQgn_indi_cmail_sync,
       
  1066 	                             EMbmFreestyleemailuiQgn_indi_cmail_sync_mask);
       
  1067 			}
       
  1068 			break;
       
  1069 
       
  1070 		case EStatusTextureConnected:
       
  1071 			{
       
  1072 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1073 	                             EMbmFreestyleemailuiQgn_indi_cmail_connected,
       
  1074 	                             EMbmFreestyleemailuiQgn_indi_cmail_connected_mask);
       
  1075 			}
       
  1076 			break;
       
  1077 
       
  1078 		case EStatusTextureConnecting:
       
  1079 			{
       
  1080 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1081 	                             EMbmFreestyleemailuiQgn_indi_cmail_connecting,
       
  1082 	                             EMbmFreestyleemailuiQgn_indi_cmail_connecting_mask);
       
  1083 			}
       
  1084 			break;
       
  1085 
       
  1086 		case EStatusTextureDisconnectedGeneral:
       
  1087 			{
       
  1088 			/*AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1089 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected,
       
  1090 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected_mask);
       
  1091 	                             */
       
  1092 			TSize iconSize(1,1);
       
  1093 			bitmap = new( ELeave ) CFbsBitmap();
       
  1094             CleanupStack::PushL( bitmap );
       
  1095             mask = new( ELeave ) CFbsBitmap();
       
  1096             CleanupStack::Pop( bitmap );
       
  1097             bitmap->Create( iconSize, CCoeEnv::Static()->ScreenDevice()->DisplayMode() );
       
  1098             mask->Create( iconSize, CCoeEnv::Static()->ScreenDevice()->DisplayMode() );
       
  1099 
       
  1100             TBitmapUtil bitmapUtil( bitmap );
       
  1101             TBitmapUtil bitmapMaskUtil( mask );
       
  1102             bitmapUtil.Begin( TPoint( 0, 0 ) );
       
  1103             bitmapMaskUtil.Begin( TPoint( 0, 0 ) );
       
  1104             bitmapUtil.SetPixel( 0x0 );
       
  1105             bitmapMaskUtil.SetPixel( 0xFFFFFFFF );
       
  1106 
       
  1107             bitmapUtil.End();
       
  1108             bitmapMaskUtil.End();
       
  1109 			}
       
  1110 			break;
       
  1111 
       
  1112 		case EStatusTextureDisconnectedError:
       
  1113 			{
       
  1114 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1115 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected_error,
       
  1116 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected_error_mask);
       
  1117 			}
       
  1118 			break;
       
  1119 
       
  1120 		case EStatusTextureDisconnectedLowBattery:
       
  1121 			{
       
  1122 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1123 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected_low_battery,
       
  1124 	                             EMbmFreestyleemailuiQgn_indi_cmail_disconnected_low_battery_mask);
       
  1125 			}
       
  1126 			break;
       
  1127 
       
  1128 		case EStatusTextureMailSent:
       
  1129 			{
       
  1130 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1131 	                             EMbmFreestyleemailuiQgn_indi_cmail_sent,
       
  1132 	                             EMbmFreestyleemailuiQgn_indi_cmail_sent_mask);
       
  1133 			}
       
  1134 			break;
       
  1135 		case EBackgroundTextureMailList:
       
  1136 			{
       
  1137 			// <cmail> S60 Skin support
       
  1138 			/*
       
  1139 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1140     			KAknsIIDQgnFsGrafEmailContent, bitmap, mask, iconFileName,
       
  1141     			EMbmFreestyleemailuiQgn_graf_cmail_email_content,
       
  1142             	EMbmFreestyleemailuiQgn_graf_cmail_email_content_mask );
       
  1143             	*/
       
  1144             GetBackgroundBitmapL (bitmap);
       
  1145 			// </cmail>
       
  1146 
       
  1147 	 	    iconSize.SetSize( screenRect.Width(), screenRect.Height() );
       
  1148 			scalemode = EAspectRatioNotPreserved;
       
  1149 			}
       
  1150 			break;
       
  1151 
       
  1152 		// CONTROL BAR BACKGROUND ICON READING STARTS HERE
       
  1153 	 	//
       
  1154 		case EControlBarListBackgroundTexture:
       
  1155 			{
       
  1156             // <cmail> S60 Skin support
       
  1157 	        TInt borderSize =
       
  1158 	        	iAppUi->LayoutHandler()->ControlBarListBorderRoundingSize();
       
  1159 			iconSize.SetSize( borderSize * 2, borderSize * 2 );
       
  1160 
       
  1161 			this->DrawContextL (bitmap, KAknsIIDQsnFrPopupCenter, iconSize);
       
  1162             //</cmail>
       
  1163 			}
       
  1164 			break;
       
  1165 
       
  1166 		case EControlBarButtonBackgroundTexture:
       
  1167 			{
       
  1168 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1169     			KAknsIIDQgnFsGrafDropOnepc, bitmap, mask, iconFileName,
       
  1170     			EMbmFreestyleemailuiQgn_graf_cmail_drop_onepc,
       
  1171             	EMbmFreestyleemailuiQgn_graf_cmail_drop_onepc_mask );
       
  1172 	        TInt borderSize = iAppUi->LayoutHandler()->ControlBarButtonBgRoundingSize();
       
  1173 			iconSize.SetSize( borderSize * 2, borderSize * 2 );
       
  1174 			}
       
  1175 			break;
       
  1176 
       
  1177 // Ascending /descending textures are mixed in skin
       
  1178 		case EControlBarDescendingArrowTexture:
       
  1179 			{
       
  1180 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1181     			KAknsIIDQgnFseFolderListAscendingIcon, bitmap, mask, iconFileName,
       
  1182     			EMbmFreestyleemailuiQgn_indi_cmail_folders_asc,
       
  1183             	EMbmFreestyleemailuiQgn_indi_cmail_folders_asc_mask );
       
  1184 		    TInt TempXSize = iAppUi->LayoutHandler()->ControlBarArrowTextureXSize();
       
  1185 		    TInt TempYSize = iAppUi->LayoutHandler()->ControlBarArrowTextureYSize();
       
  1186 		    iconSize.SetSize( TempXSize, TempYSize );
       
  1187 		    }
       
  1188 		    break;
       
  1189 		case EControlBarAscendingArrowTexture:
       
  1190 			{
       
  1191 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1192     			KAknsIIDQgnFseFolderListDescendingIcon, bitmap, mask, iconFileName,
       
  1193     			EMbmFreestyleemailuiQgn_indi_cmail_folders_desc,
       
  1194             	EMbmFreestyleemailuiQgn_indi_cmail_folders_desc_mask );
       
  1195 	        TInt TempXSize = iAppUi->LayoutHandler()->ControlBarArrowTextureXSize();
       
  1196 	        TInt TempYSize = iAppUi->LayoutHandler()->ControlBarArrowTextureYSize();
       
  1197 	        iconSize.SetSize( TempXSize, TempYSize );
       
  1198 			}
       
  1199 			break;
       
  1200 
       
  1201 		// FOLDER LIST ICON READING STARTS HERE
       
  1202 	 	//
       
  1203         case EFolderListMoreFoldersTexture:
       
  1204         case EFolderListMoreFoldersTexturePopup:
       
  1205 		   
       
  1206 			{
       
  1207 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1208 									   EMbmFreestyleemailuiQgn_indi_cmail_drop_more_folders,
       
  1209 									   EMbmFreestyleemailuiQgn_indi_cmail_drop_more_folders_mask);
       
  1210 			iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListMoreFoldersTexturePopup );
       
  1211 			}
       
  1212 			break;
       
  1213         case EFolderListInboxTexture:
       
  1214         case EFolderListInboxTexturePopup:
       
  1215 			{
       
  1216 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1217 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_inbox,
       
  1218 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_inbox_mask);
       
  1219             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListInboxTexturePopup );
       
  1220 			}
       
  1221 			break;
       
  1222         case EFolderListInboxSubfoldersTexture:
       
  1223         case EFolderListInboxSubfoldersTexturePopup:
       
  1224 			{
       
  1225 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1226 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_subfolders,
       
  1227 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_subfolders_mask);
       
  1228             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListInboxSubfoldersTexturePopup );
       
  1229 			}
       
  1230 			break;
       
  1231         case EFolderListOutboxTexture:
       
  1232         case EFolderListOutboxTexturePopup:
       
  1233 			{
       
  1234 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1235 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_outbox,
       
  1236 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_outbox_mask);
       
  1237             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListOutboxTexturePopup );
       
  1238 			}
       
  1239 			break;
       
  1240         case EFolderListDraftsTexture:
       
  1241         case EFolderListDraftsTexturePopup:
       
  1242 			{
       
  1243 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1244 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_drafts,
       
  1245 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_drafts_mask);
       
  1246             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListDraftsTexturePopup );
       
  1247 			}
       
  1248 			break;
       
  1249         case EFolderListSentTexture:
       
  1250         case EFolderListSentTexturePopup:
       
  1251 			{
       
  1252 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1253 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_sent,
       
  1254 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_sent_mask);
       
  1255             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListSentTexturePopup );
       
  1256 			}
       
  1257 			break;
       
  1258         case EFolderListDeletedItemsTexture:
       
  1259         case EFolderListDeletedItemsTexturePopup:
       
  1260 			{
       
  1261 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1262 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_deleted_items,
       
  1263 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_deleted_items_mask);
       
  1264             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListDeletedItemsTexturePopup );
       
  1265 			}
       
  1266 			break;
       
  1267         case EFolderListServerFoldersTexture:
       
  1268         case EFolderListServerFoldersTexturePopup:
       
  1269 			{
       
  1270 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1271 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_server_folder,
       
  1272 									   EMbmFreestyleemailuiQgn_prop_cmail_folders_server_folder_mask);
       
  1273             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListServerFoldersTexturePopup );
       
  1274 			}
       
  1275 			break;
       
  1276         case EFolderListEmailAccountTexture:
       
  1277         case EFolderListEmailAccountTexturePopup:
       
  1278 			{
       
  1279 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1280 									   EMbmFreestyleemailuiQgn_indi_cmail_drop_email_account,
       
  1281 									   EMbmFreestyleemailuiQgn_indi_cmail_drop_email_account_mask);
       
  1282             iconSize = iAppUi->LayoutHandler()->FolderListIconSize( aId == EFolderListEmailAccountTexturePopup );
       
  1283 			}
       
  1284 			break;
       
  1285 
       
  1286 		// ATTACHMENT ICONS STARTS HERE
       
  1287 		//
       
  1288         //<cmail>
       
  1289 		case EAttachmentsDocFile:
       
  1290 			{
       
  1291 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1292 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_doc,
       
  1293 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_doc_mask);
       
  1294             //TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1295             //iconSize.SetSize( tempsize, tempsize );
       
  1296             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1297 			//scalemode = EAspectRatioNotPreserved;
       
  1298 			}
       
  1299 			break;
       
  1300 
       
  1301 		case EAttachmentsHtmlFile:
       
  1302 			{
       
  1303 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1304 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_html,
       
  1305 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_html_mask);
       
  1306 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1307 			//iconSize.SetSize( tempsize, tempsize );
       
  1308             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1309             //scalemode = EAspectRatioNotPreserved;
       
  1310 			}
       
  1311 			break;
       
  1312 
       
  1313 		case EAttachmentsImageFile:
       
  1314 			{
       
  1315 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1316 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_image,
       
  1317 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_image_mask);
       
  1318 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1319 			//iconSize.SetSize( tempsize, tempsize );
       
  1320             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1321             //scalemode = EAspectRatioNotPreserved;
       
  1322 			}
       
  1323 			break;
       
  1324 
       
  1325 		case EAttachmentsNotDownloaded:
       
  1326 			{
       
  1327 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1328 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_not_downloaded,
       
  1329 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_not_downloaded_mask);
       
  1330 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1331 			//iconSize.SetSize( tempsize, tempsize );
       
  1332             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1333             //scalemode = EAspectRatioNotPreserved;
       
  1334 			}
       
  1335 			break;
       
  1336 
       
  1337 		case EAttachmentsPptFile:
       
  1338 			{
       
  1339 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1340 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_ppt,
       
  1341 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_ppt_mask);
       
  1342 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1343 			//iconSize.SetSize( tempsize, tempsize );
       
  1344             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1345             //scalemode = EAspectRatioNotPreserved;
       
  1346 			}
       
  1347 			break;
       
  1348 
       
  1349 		case EAttachmentsRtfFile:
       
  1350 			{
       
  1351 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1352 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_rtf,
       
  1353 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_rtf_mask);
       
  1354 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1355 			//iconSize.SetSize( tempsize, tempsize );
       
  1356             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1357             //scalemode = EAspectRatioNotPreserved;
       
  1358 			}
       
  1359 			break;
       
  1360 
       
  1361 		case EAttachmentsUnknownFile:
       
  1362 			{
       
  1363 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1364 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_unidentified,
       
  1365 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_unidentified_mask);
       
  1366 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1367 			//iconSize.SetSize( tempsize, tempsize );
       
  1368             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1369             //scalemode = EAspectRatioNotPreserved;
       
  1370 			}
       
  1371 			break;
       
  1372 
       
  1373 		case EAttachmentsXls:
       
  1374 			{
       
  1375 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1376 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_xls,
       
  1377 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_xls_mask);
       
  1378 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1379 			//iconSize.SetSize( tempsize, tempsize );
       
  1380             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1381             //scalemode = EAspectRatioNotPreserved;
       
  1382 			}
       
  1383 			break;
       
  1384 
       
  1385 		case EAttachmentsPdfFile:
       
  1386 			{
       
  1387 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1388 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_pdf,
       
  1389 	                             EMbmFreestyleemailuiQgn_indi_cmail_viewer_attach_pdf_mask);
       
  1390 			//TInt tempsize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1391 			//iconSize.SetSize( tempsize, tempsize );
       
  1392             iconSize = iAppUi->LayoutHandler()->AttachmentIconSize();
       
  1393             //scalemode = EAspectRatioNotPreserved;
       
  1394 			}
       
  1395 			break;
       
  1396 
       
  1397         //</cmail>
       
  1398 
       
  1399 
       
  1400 		case EAttachmentsCancelDownload:
       
  1401 			{
       
  1402 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1403 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_cancel_download,
       
  1404 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_cancel_download_mask);
       
  1405 			}
       
  1406 			break;
       
  1407 
       
  1408 		case EAttachmentsDownload:
       
  1409 			{
       
  1410 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1411 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_download,
       
  1412 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_download_mask);
       
  1413 			}
       
  1414 			break;
       
  1415 
       
  1416 		case EAttachmentsSaveAll:
       
  1417 			{
       
  1418 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1419 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_save_all,
       
  1420 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_save_all_mask);
       
  1421 			}
       
  1422 			break;
       
  1423 
       
  1424 		case EAttachmentsCancelAll:
       
  1425 			{
       
  1426 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1427 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_list_options_cancel_all,
       
  1428 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_list_options_cancel_all_mask);
       
  1429 			}
       
  1430 			break;
       
  1431 
       
  1432 		case EAttachmentsViewAll:
       
  1433 			{
       
  1434 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1435 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_list_options_view_all,
       
  1436 	                             EMbmFreestyleemailuiQgn_prop_cmail_action_attachment_list_options_view_all_mask);
       
  1437 			}
       
  1438 			break;
       
  1439 
       
  1440 
       
  1441 
       
  1442 		// GRID ICON READING STARTS HERE
       
  1443 	 	//
       
  1444 		case EGridInboxTexture:
       
  1445 			{
       
  1446 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1447 									   EMbmFreestyleemailuiQgn_indi_cmail_launcher_inbox,
       
  1448 									   EMbmFreestyleemailuiQgn_indi_cmail_launcher_inbox_mask);
       
  1449 			}
       
  1450 			break;
       
  1451 		case EGridDirectoryTexture:
       
  1452 			{
       
  1453 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1454 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_remote_lookup,
       
  1455 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_remote_lookup_mask);
       
  1456 			}
       
  1457 			break;
       
  1458 		case EGridSettingsTexture:
       
  1459 			{
       
  1460 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1461 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_settings,
       
  1462 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_settings_mask);
       
  1463 			}
       
  1464 			break;
       
  1465 		case EGridAddNewBoxTexture:
       
  1466 			{
       
  1467 			// <cmail>
       
  1468 			TAknsItemID skinId = KAknsIIDQgnPropCmailNewMailbox;
       
  1469 			CAknsItemData* temp = AknsUtils::SkinInstance()->GetCachedItemData( skinId );
       
  1470 			if ( !temp )
       
  1471 				{
       
  1472 				skinId = KAknsIIDNone;
       
  1473 				}
       
  1474 
       
  1475 			AknsUtils::CreateIconL(
       
  1476 					AknsUtils::SkinInstance(),
       
  1477 	                skinId, bitmap,
       
  1478 	                mask, iconFileName,
       
  1479 	                             EMbmFreestyleemailuiQgn_prop_cmail_new_mailbox,
       
  1480 	                             EMbmFreestyleemailuiQgn_prop_cmail_new_mailbox_mask);
       
  1481 			// </cmail>
       
  1482 			}
       
  1483 			break;
       
  1484 		case EGridHelpTexture:
       
  1485 			{
       
  1486 			AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1487 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_help,
       
  1488 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_help_mask);
       
  1489 			}
       
  1490 			break;
       
  1491 		case EGridBackground:
       
  1492 			{
       
  1493 			// <cmail> S60 Skin support
       
  1494 			/*
       
  1495 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1496     			KAknsIIDQgnFsCaleBgLsc, bitmap, mask, iconFileName,
       
  1497     			EMbmFreestyleemailuiQgn_graf_cmail_email_content,
       
  1498             	EMbmFreestyleemailuiQgn_graf_cmail_email_content_mask );
       
  1499             */
       
  1500            	GetBackgroundBitmapL (bitmap);
       
  1501            	// </cmail>
       
  1502 	 	    iconSize.SetSize( screenRect.Width(), screenRect.Height() );
       
  1503 			scalemode = EAspectRatioNotPreserved;
       
  1504 			}
       
  1505 			break;
       
  1506 
       
  1507 		// VIEWER ICONS
       
  1508 		//
       
  1509 		case EViewerTextureHeaderBackGround:
       
  1510 			{
       
  1511 	 	    AknsUtils::CreateIconL( AknsUtils::SkinInstance(),
       
  1512     			KAknsIIDQgnFsGrafEmailHeader, bitmap, mask, iconFileName,
       
  1513     			EMbmFreestyleemailuiQgn_graf_cmail_email_header,
       
  1514             	EMbmFreestyleemailuiQgn_graf_cmail_email_header_mask );
       
  1515 	 	    iconSize.SetSize( screenRect.Width(), screenRect.Height() );
       
  1516 			scalemode = EAspectRatioNotPreserved;
       
  1517 			}
       
  1518 			break;
       
  1519 		case EViewerHighlightTexture:
       
  1520 			{
       
  1521             TInt tempsize = iAppUi->LayoutHandler()->ViewerHighlightTextureSize();
       
  1522             iconSize.SetSize( tempsize, tempsize );
       
  1523 
       
  1524 		    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
       
  1525 		    TRgb imageColor;
       
  1526 		    if( AknsUtils::GetCachedColor( skin, imageColor,
       
  1527 		    		KAknsIIDFsHighlightColors, EAknsCIFsHighlightColorsCG4 ) != KErrNone )
       
  1528 		        {
       
  1529 			    if( AknsUtils::GetCachedColor( skin, imageColor,
       
  1530 			    		KAknsIIDQsnHighlightColors, EAknsCIQsnHighlightColorsCG2 ) != KErrNone )
       
  1531 			    	{
       
  1532 			        imageColor = KRgbBlue;
       
  1533 			    	}
       
  1534 		        }
       
  1535 			bitmap = new( ELeave ) CFbsBitmap();
       
  1536 			CleanupStack::PushL( bitmap );
       
  1537 			mask = new( ELeave ) CFbsBitmap();
       
  1538 			CleanupStack::Pop( bitmap );
       
  1539 			bitmap->Create( iconSize, CCoeEnv::Static()->ScreenDevice()->DisplayMode() );
       
  1540 			mask->Create( iconSize, CCoeEnv::Static()->ScreenDevice()->DisplayMode() );
       
  1541 
       
  1542 			TBitmapUtil bitmapUtil( bitmap );
       
  1543 			TBitmapUtil bitmapMaskUtil( mask );
       
  1544 			bitmapUtil.Begin( TPoint( 0, 0 ) );
       
  1545 			bitmapMaskUtil.Begin( TPoint( 0, 0 ) );
       
  1546 			bitmapUtil.SetPixel( imageColor.Internal() );
       
  1547 			bitmapMaskUtil.SetPixel( 0x0 );
       
  1548 
       
  1549 			bitmapUtil.End();
       
  1550 			bitmapMaskUtil.End();
       
  1551 			}
       
  1552 			break;
       
  1553 
       
  1554 		// COMPOSER ICONS
       
  1555 		//
       
  1556 		case EComposerTexturePriorityLow:
       
  1557 		    {
       
  1558 		    AknsUtils::CreateColorIconL(
       
  1559                 AknsUtils::SkinInstance(),
       
  1560                 KAknsIIDNone,
       
  1561                 KAknsIIDQsnIconColors,
       
  1562                 EAknsCIQsnIconColorsCG7,
       
  1563                 bitmap,
       
  1564                 mask,
       
  1565                 iconFileName,
       
  1566                 EMbmFreestyleemailuiQgn_indi_todo_low_add,
       
  1567                 EMbmFreestyleemailuiQgn_indi_todo_low_add_mask,
       
  1568                 KRgbBlack );
       
  1569 		    }
       
  1570 		    break;
       
  1571 		case EComposerTexturePriorityHigh:
       
  1572 		    {
       
  1573 		    AknsUtils::CreateColorIconL(
       
  1574                 AknsUtils::SkinInstance(),
       
  1575                 KAknsIIDNone,
       
  1576                 KAknsIIDQsnIconColors,
       
  1577                 EAknsCIQsnIconColorsCG7,
       
  1578                 bitmap,
       
  1579                 mask,
       
  1580                 iconFileName,
       
  1581                 EMbmFreestyleemailuiQgn_indi_todo_high_add,
       
  1582                 EMbmFreestyleemailuiQgn_indi_todo_high_add_mask,
       
  1583                 KRgbBlack );
       
  1584 		    }
       
  1585 		    break;
       
  1586 
       
  1587 		case EGridAboutTexture:
       
  1588 		default:
       
  1589 			// Branded mailbox icon
       
  1590 			if ( aId >= EBrandedIconStart && aId <= EBrandedIconEnd )
       
  1591 				{
       
  1592 				if ( !iTmpBitmap || !iTmpMaskBitmap )
       
  1593 					{
       
  1594 					// Leave if tmpvariables not set. This will happen if CreateBrandedMailboxTexture
       
  1595 					// is not called before TextureByMailboxIdL
       
  1596 					User::Leave( KErrNotFound );
       
  1597 					}
       
  1598 				// Add new icon into array based on temporary variables set by CreateBrandedMailboxTexture()
       
  1599 				bitmap = iTmpBitmap;
       
  1600 				mask = iTmpMaskBitmap;
       
  1601 	           	if ( iTmpSize.iHeight != 0 && iTmpSize.iWidth != 0 )
       
  1602 	           		{
       
  1603 	           		iconSize.SetSize( iTmpSize.iWidth, iTmpSize.iHeight );
       
  1604 	           		}
       
  1605 	           	else
       
  1606 	           		{
       
  1607 	           		// Use original size
       
  1608 	           		iconSize.SetSize( bitmap->SizeInPixels().iWidth, bitmap->SizeInPixels().iHeight );
       
  1609 	           		}
       
  1610 				// Set all search id's (PluginId, MailboxId and IconSize)
       
  1611 	           	iPluginId.Append( iTmpPluginId );
       
  1612 	           	iMailboxId.Append( iTmpMailboxId );
       
  1613 	           	iSize.Append( iTmpSize );
       
  1614 	           	// Clear temporary variables
       
  1615 	           	iTmpPluginId.iUid = 0;
       
  1616 	           	iTmpMailboxId = 0;
       
  1617 	           	iTmpSize.iHeight = 0;
       
  1618 	           	iTmpSize.iWidth = 0;
       
  1619 	           	iTmpBitmap = NULL;
       
  1620 	           	iTmpMaskBitmap = NULL;
       
  1621 	           	}
       
  1622 			else
       
  1623 				{
       
  1624                 AknIconUtils::CreateIconL( bitmap, mask, iconFileName,
       
  1625 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_info,
       
  1626 	                             EMbmFreestyleemailuiQgn_indi_cmail_launcher_info_mask);
       
  1627 				}
       
  1628 			break;
       
  1629 		}
       
  1630 // </cmail>
       
  1631 
       
  1632 	if ( bitmap )
       
  1633 		{
       
  1634 		AknIconUtils::DisableCompression( bitmap );
       
  1635 		AknIconUtils::SetSize( bitmap, iconSize, scalemode );
       
  1636 		aBitmap = bitmap;
       
  1637 		}
       
  1638 	if ( mask )
       
  1639 		{
       
  1640 		AknIconUtils::DisableCompression( mask );
       
  1641 		AknIconUtils::SetSize( mask, iconSize, scalemode );
       
  1642 		aMaskBitmap = mask;
       
  1643 		}
       
  1644 	}
       
  1645 
       
  1646 
       
  1647 // -----------------------------------------------------------------------------
       
  1648 // <cmail> S60 Skin support
       
  1649 // -----------------------------------------------------------------------------
       
  1650 // CFreestyleEmailUiTextureManager::DrawContextL()
       
  1651 // -----------------------------------------------------------------------------
       
  1652 //
       
  1653 void CFreestyleEmailUiTextureManager::DrawContextL (
       
  1654 	CFbsBitmap*& bitmap, TAknsItemID id, TSize rsize) const
       
  1655 	{
       
  1656     FUNC_LOG;
       
  1657 	CAknsBasicBackgroundControlContext *skinContext =
       
  1658 		CAknsBasicBackgroundControlContext::NewL(
       
  1659 		//KAknsIIDQsnBgAreaMain,
       
  1660 		id, rsize, EFalse );
       
  1661 	CleanupStack::PushL (skinContext);
       
  1662 
       
  1663 	bitmap = new (ELeave) CFbsBitmap();
       
  1664 
       
  1665 	const TInt err1 = bitmap->Create( rsize,
       
  1666 		CCoeEnv::Static()->ScreenDevice()->DisplayMode() );
       
  1667 	User::LeaveIfError( err1 );
       
  1668 
       
  1669 	CFbsBitGc* gc = 0;
       
  1670 	CFbsBitmapDevice* device = CFbsBitmapDevice::NewL( bitmap );
       
  1671 	CleanupStack::PushL (device);
       
  1672 
       
  1673 	const TInt err2 = device->CreateContext(gc);
       
  1674 	CleanupStack::PushL (gc);
       
  1675 	User::LeaveIfError( err2 );
       
  1676 
       
  1677 	// Draw background to bitmap device context
       
  1678 	AknsDrawUtils::DrawBackground( AknsUtils::SkinInstance(),
       
  1679 	                          skinContext,
       
  1680 	                          //this,
       
  1681 	                          0,
       
  1682 	                          *gc,
       
  1683 	                          TPoint(0,0),
       
  1684 	                          rsize,
       
  1685 	                          KAknsDrawParamDefault );
       
  1686 
       
  1687 	CleanupStack::PopAndDestroy(gc);
       
  1688 	CleanupStack::PopAndDestroy(device);
       
  1689 	CleanupStack::PopAndDestroy(skinContext);
       
  1690 	}
       
  1691 
       
  1692 
       
  1693 void CFreestyleEmailUiTextureManager::GetBackgroundBitmapL (CFbsBitmap*& bitmap) const
       
  1694 	{
       
  1695     FUNC_LOG;
       
  1696 	const TSize rsize = iAppUi->ClientRect().Size();
       
  1697 	this->DrawContextL (bitmap, KAknsIIDQsnBgAreaMain, rsize);
       
  1698 	}
       
  1699 // </cmail>
       
  1700 
       
  1701 
       
  1702 // -----------------------------------------------------------------------------
       
  1703 // CFreestyleEmailUiTextureManager::DelayLoadCallback()
       
  1704 // Delayed loading callback
       
  1705 // -----------------------------------------------------------------------------
       
  1706 //
       
  1707 TInt CFreestyleEmailUiTextureManager::DelayLoadCallback()
       
  1708 	{
       
  1709     FUNC_LOG;
       
  1710 	// if all is loaded return 0 to indicate that we don't want any more callbacs
       
  1711 	if ( iDelayLoadIndex >= iTextures.Count() )
       
  1712 		{
       
  1713 		return 0;
       
  1714 		}
       
  1715 	else
       
  1716 		{
       
  1717 		TRAPD( error, LoadTextureL( (TFSEmailUiTextures)iDelayLoadIndex++ ) );
       
  1718 		if ( KErrNone != error )
       
  1719 			{
       
  1720 			}
       
  1721 		return 1;
       
  1722 		}
       
  1723 	}
       
  1724 
       
  1725 // -----------------------------------------------------------------------------
       
  1726 // CFreestyleEmailUiTextureManager::InitTextureArray()
       
  1727 // Initialises texture array
       
  1728 // -----------------------------------------------------------------------------
       
  1729 //
       
  1730 void CFreestyleEmailUiTextureManager::InitTextureArray()
       
  1731 	{
       
  1732     FUNC_LOG;
       
  1733 	for ( TInt i=0; i<ETextureCount; i++ )
       
  1734 		{
       
  1735 		iTextures.Append( &CAlfStatic::Env().TextureManager().BlankTexture() );
       
  1736 		}
       
  1737 	}
       
  1738 
       
  1739 // -----------------------------------------------------------------------------
       
  1740 // CFreestyleEmailUiTextureManager::LoadTextureL()
       
  1741 // Loads given texture if not already loaded
       
  1742 // -----------------------------------------------------------------------------
       
  1743 //
       
  1744 void CFreestyleEmailUiTextureManager::LoadTextureL( TFSEmailUiTextures aTextureId )
       
  1745 	{
       
  1746     FUNC_LOG;
       
  1747 	// Check if branded icon already loded
       
  1748 	if ( aTextureId >= EBrandedIconStart && aTextureId <= EBrandedIconEnd )
       
  1749 		{
       
  1750 		if ( aTextureId - EBrandedIconStart <= iBrandedMailboxIcons.Count() - 1 )
       
  1751 		    {
       
  1752 			// Branded icon already loaded do nothing
       
  1753 			return;
       
  1754 		    }
       
  1755 		}
       
  1756 	// if texture has already been loaded do nothing
       
  1757 	else if ( &CAlfStatic::Env().TextureManager().BlankTexture() != iTextures[aTextureId] )
       
  1758 		{
       
  1759 		return;
       
  1760 		}
       
  1761 
       
  1762 	// load texture
       
  1763 	switch ( aTextureId )
       
  1764 		{
       
  1765 		case EListTextureSelector: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListTextureSelector, this, EAlfTextureFlagDefault ); break;
       
  1766 		case EListTextureNodeExpanded:
       
  1767 			{
       
  1768 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListTextureNodeExpanded, this, EAlfTextureFlagSkinContent);
       
  1769 			}
       
  1770 			break;
       
  1771 		case EListTextureNodeCollapsed:
       
  1772 			{
       
  1773 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListTextureNodeCollapsed, this, EAlfTextureFlagSkinContent);
       
  1774 			}
       
  1775 			break;
       
  1776 		case EListTextureControlButton: ; break;
       
  1777 		case EListTextureMailboxDefaultIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListTextureMailboxDefaultIcon, this, EAlfTextureFlagDefault); break;
       
  1778 		case EListControlBarMailboxDefaultIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListControlBarMailboxDefaultIcon, this, EAlfTextureFlagDefault); break;
       
  1779 		case EBackgroundTextureViewerHeading: ; break;
       
  1780 		case EBackgroundTextureBar: ; break;
       
  1781 		case EBackgroundTextureThumb: ; break;
       
  1782 		case EBackgroundTextureMailList:
       
  1783 			{
       
  1784 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EBackgroundTextureMailList, this, EAlfTextureFlagSkinContent);
       
  1785 			}
       
  1786 			break;
       
  1787 		case EListControlMarkIcon:
       
  1788 			{
       
  1789 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListControlMarkIcon, this, EAlfTextureFlagSkinContent);
       
  1790 			break;
       
  1791 			}
       
  1792 		case EListControlMenuIcon:
       
  1793 			{
       
  1794 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EListControlMenuIcon, this, EAlfTextureFlagSkinContent);
       
  1795 			break;
       
  1796 			}
       
  1797 		case EMailListBarBgIcon:
       
  1798 			{
       
  1799 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMailListBarBgIcon, this, EAlfTextureFlagSkinContent);
       
  1800 			break;
       
  1801 			}
       
  1802 		case ESearchLookingGlassIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( ESearchLookingGlassIcon, this, EAlfTextureFlagDefault); break;
       
  1803 		case EControlBarListBackgroundTexture:
       
  1804 			{
       
  1805 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EControlBarListBackgroundTexture, this, EAlfTextureFlagSkinContent);
       
  1806 			break;
       
  1807 			}
       
  1808 		case EControlBarButtonBackgroundTexture:
       
  1809 			{
       
  1810 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EControlBarButtonBackgroundTexture, this, EAlfTextureFlagSkinContent);
       
  1811 			break;
       
  1812 			}
       
  1813 		case EControlBarAscendingArrowTexture:
       
  1814 			{
       
  1815 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EControlBarAscendingArrowTexture, this, EAlfTextureFlagSkinContent);
       
  1816 			break;
       
  1817 			}
       
  1818 		case EControlBarDescendingArrowTexture:
       
  1819 			{
       
  1820 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EControlBarDescendingArrowTexture, this, EAlfTextureFlagSkinContent);
       
  1821 			}
       
  1822 			break;
       
  1823 		// MESSAGE TEXTURES
       
  1824 		case EMessageReadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadIcon, this, EAlfTextureFlagDefault); break;
       
  1825 		case EMessageLowPrioReadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageLowPrioReadIcon, this, EAlfTextureFlagDefault); break;
       
  1826 		case EMessageLowPrioReadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageLowPrioReadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1827 		case EMessageReadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1828 		case EMessageReadRepliedIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedIcon, this,EAlfTextureFlagDefault); break;
       
  1829 		case EMessageReadRepliedIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1830 		case EMessageReadRepliedHighPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedHighPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1831 		case EMessageReadRepliedHighPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedHighPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1832 		case EMessageReadRepliedLowPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedLowPrioIcon, this, EAlfTextureFlagDefault ); break;
       
  1833 		case EMessageReadRepliedLowPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadRepliedLowPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1834 		case EMessageReadForwardedIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedIcon, this, EAlfTextureFlagDefault); break;
       
  1835 		case EMessageReadForwardedIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1836 		case EMessageReadForwardedHighPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedHighPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1837 		case EMessageReadForwardedHighPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedHighPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1838 		case EMessageReadForwardedLowPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedLowPrioIcon, this,EAlfTextureFlagDefault); break;
       
  1839 		case EMessageReadForwardedLowPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageReadForwardedLowPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1840 		case EMessageUnreadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadIcon, this, EAlfTextureFlagDefault); break;
       
  1841 		case EMessageUnreadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1842 		case EMessageLowPrioUnreadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageLowPrioUnreadIcon, this, EAlfTextureFlagDefault); break;
       
  1843 		case EMessageLowPrioUnreadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageLowPrioUnreadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1844 		case EMessageHighPrioReadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageHighPrioReadIcon, this, EAlfTextureFlagDefault); break;
       
  1845 		case EMessageHighPrioReadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageHighPrioReadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1846 		case EMessageHighPrioUnreadIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageHighPrioUnreadIcon , this, EAlfTextureFlagDefault); break;
       
  1847 		case EMessageHighPrioUnreadIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageHighPrioUnreadIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1848 
       
  1849 		// <cmail> Platform layout change
       
  1850 		//case EAttachmentIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentIcon, this, EAlfTextureFlagDefault); break;
       
  1851 		case EAttachmentIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentIcon, this, EAlfTextureFlagSkinContent/*EAlfTextureFlagDefault*/); break;
       
  1852 		// </cmail> Platform layout change
       
  1853 
       
  1854 		case EMessageUnreadForwardedIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedIcon, this, EAlfTextureFlagDefault); break;
       
  1855 		case EMessageUnreadForwardedIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1856 		case EMessageUnreadForwardedHighPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedHighPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1857 		case EMessageUnreadForwardedHighPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedHighPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1858 		case EMessageUnreadForwardedLowPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedLowPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1859 		case EMessageUnreadForwardedLowPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadForwardedLowPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1860 		case EMessageUnreadRepliedIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedIcon, this, EAlfTextureFlagDefault); break;
       
  1861 		case EMessageUnreadRepliedIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1862 		case EMessageUnreadRepliedHighPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedHighPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1863 		case EMessageUnreadRepliedHighPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedHighPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1864 		case EMessageUnreadRepliedLowPrioIcon: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedLowPrioIcon, this, EAlfTextureFlagDefault); break;
       
  1865 		case EMessageUnreadRepliedLowPrioIconAttachment: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageUnreadRepliedLowPrioIconAttachment, this, EAlfTextureFlagDefault); break;
       
  1866 
       
  1867 		// CALENDAR EVENT TEXTURES
       
  1868 		case EMessageCalInvitation: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitation, this,EAlfTextureFlagDefault); break;
       
  1869 		case EMessageCalInvitationRead: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationRead, this, EAlfTextureFlagDefault); break;
       
  1870 		case EMessageCalInvitationAttachments: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationAttachments, this,EAlfTextureFlagDefault); break;
       
  1871 		case EMessageCalInvitationReadAttachments: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationReadAttachments, this,EAlfTextureFlagDefault); break;
       
  1872 		case EMessageCalInvitationHighPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationHighPrio, this,EAlfTextureFlagDefault); break;
       
  1873 		case EMessageCalInvitationReadHighPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationReadHighPrio, this,EAlfTextureFlagDefault); break;
       
  1874 		case EMessageCalInvitationAttachmentsHighPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationAttachmentsHighPrio, this,EAlfTextureFlagDefault); break;
       
  1875 		case EMessageCalInvitationReadAttachmentsHighPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationReadAttachmentsHighPrio, this,EAlfTextureFlagDefault); break;
       
  1876 		case EMessageCalInvitationLowPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationLowPrio, this,EAlfTextureFlagDefault); break;
       
  1877 		case EMessageCalInvitationReadLowPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationReadLowPrio, this,EAlfTextureFlagDefault); break;
       
  1878 		case EMessageCalInvitationAttachmentsLowPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationAttachmentsLowPrio, this,EAlfTextureFlagDefault); break;
       
  1879 		case EMessageCalInvitationReadAttachmentsLowPrio: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationReadAttachmentsLowPrio, this,EAlfTextureFlagDefault); break;
       
  1880 		case EMessageCalInvitationCancelled: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EMessageCalInvitationCancelled, this,EAlfTextureFlagDefault); break;
       
  1881 
       
  1882 		// GRID TEXTURES
       
  1883 		case EGridInboxTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridInboxTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1884 	    case EGridDirectoryTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridDirectoryTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1885 	    case EGridSettingsTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridSettingsTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1886 	    case EGridAddNewBoxTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridAddNewBoxTexture, this,EAlfTextureFlagRetainResolution); break;
       
  1887 	    case EGridHelpTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridHelpTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1888 	    case EGridAboutTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridAboutTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1889 	    case EGridBackground: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EGridBackground, this, EAlfTextureFlagDefault); break;
       
  1890 
       
  1891 	    // FLAG ICONS
       
  1892 		case EFollowUpFlag: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFollowUpFlag, this, EAlfTextureFlagRetainResolution); break;
       
  1893 		case EFollowUpFlagComplete: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFollowUpFlagComplete, this, EAlfTextureFlagRetainResolution); break;
       
  1894 		case EFollowUpFlagList: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFollowUpFlagList, this, EAlfTextureFlagRetainResolution); break;
       
  1895         case EFollowUpFlagCompleteList: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFollowUpFlagCompleteList, this, EAlfTextureFlagRetainResolution); break;
       
  1896 
       
  1897 	    // FOLDER LIST ICONS
       
  1898 	    case EFolderListMoreFoldersTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListMoreFoldersTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1899 	    case EFolderListInboxTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListInboxTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1900 	    case EFolderListInboxSubfoldersTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListInboxSubfoldersTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1901 	    case EFolderListOutboxTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListOutboxTexture , this, EAlfTextureFlagRetainResolution); break;
       
  1902 	    case EFolderListDraftsTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListDraftsTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1903 	    case EFolderListSentTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListSentTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1904 	    case EFolderListDeletedItemsTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListDeletedItemsTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1905 	    case EFolderListServerFoldersTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListServerFoldersTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1906 	    case EFolderListEmailAccountTexture: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListEmailAccountTexture, this, EAlfTextureFlagRetainResolution); break;
       
  1907 
       
  1908         case EFolderListMoreFoldersTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListMoreFoldersTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1909         case EFolderListInboxTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListInboxTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1910         case EFolderListInboxSubfoldersTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListInboxSubfoldersTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1911         case EFolderListOutboxTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListOutboxTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1912         case EFolderListDraftsTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListDraftsTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1913         case EFolderListSentTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListSentTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1914         case EFolderListDeletedItemsTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListDeletedItemsTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1915         case EFolderListServerFoldersTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListServerFoldersTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1916         case EFolderListEmailAccountTexturePopup: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EFolderListEmailAccountTexturePopup, this, EAlfTextureFlagRetainResolution); break;
       
  1917 
       
  1918 		// STATUS INDICATOR ICONS
       
  1919 		case EStatusTextureSynchronising: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureSynchronising, this, EAlfTextureFlagRetainResolution); break;
       
  1920 		case EStatusTextureConnected: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureConnected, this, EAlfTextureFlagRetainResolution); break;
       
  1921 		case EStatusTextureConnecting: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureConnecting, this, EAlfTextureFlagRetainResolution); break;
       
  1922 		case EStatusTextureDisconnectedGeneral: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureDisconnectedGeneral, this, EAlfTextureFlagRetainResolution); break;
       
  1923 		case EStatusTextureDisconnectedError: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureDisconnectedError, this, EAlfTextureFlagRetainResolution); break;
       
  1924 		case EStatusTextureDisconnectedLowBattery: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureDisconnectedLowBattery, this, EAlfTextureFlagRetainResolution); break;
       
  1925 		case EStatusTextureMailSent: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EStatusTextureMailSent, this, EAlfTextureFlagRetainResolution); break;
       
  1926 
       
  1927 		// VIEWER TEXTURES
       
  1928 		case EViewerTextureHeaderBackGround:
       
  1929 			{
       
  1930 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EViewerTextureHeaderBackGround, this, TAlfTextureFlags(EAlfTextureFlagRetainResolution|EAlfTextureFlagSkinContent)); // CHECKLATER - the EAlfTextureFlagSkinContent flag (instead of EAlfTextureFlagDefault) replaces the SetSkinContent command, also added two flags, do they work like this?
       
  1931 			}
       
  1932 			break;
       
  1933 		case EViewerHighlightTexture:
       
  1934 			{
       
  1935 			iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EViewerHighlightTexture, this, TAlfTextureFlags(EAlfTextureFlagRetainResolution|EAlfTextureFlagSkinContent)); // CHECKLATER - the EAlfTextureFlagSkinContent flag (instead of EAlfTextureFlagDefault) replaces the SetSkinContent command, also added two flags, do they work like this?
       
  1936 			}
       
  1937 			break;
       
  1938 		// ATTACHMENT TEXTURES
       
  1939 		case EAttachmentsDocFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsDocFile, this, EAlfTextureFlagRetainResolution); break;
       
  1940 		case EAttachmentsHtmlFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsHtmlFile, this, EAlfTextureFlagRetainResolution); break;
       
  1941 		case EAttachmentsImageFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsImageFile, this, EAlfTextureFlagRetainResolution); break;
       
  1942 		case EAttachmentsNotDownloaded: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsNotDownloaded, this, EAlfTextureFlagRetainResolution); break;
       
  1943 		case EAttachmentsPptFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsPptFile, this, EAlfTextureFlagRetainResolution); break;
       
  1944 		case EAttachmentsRtfFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsRtfFile, this, EAlfTextureFlagRetainResolution); break;
       
  1945 		case EAttachmentsUnknownFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsUnknownFile, this, EAlfTextureFlagRetainResolution); break;
       
  1946 		case EAttachmentsXls: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsXls, this, EAlfTextureFlagRetainResolution); break;
       
  1947 		case EAttachmentsPdfFile: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsPdfFile, this, EAlfTextureFlagRetainResolution); break;
       
  1948 
       
  1949 		case EAttachmentsCancelDownload: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsCancelDownload, this, EAlfTextureFlagRetainResolution); break;
       
  1950 		case EAttachmentsDownload: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsDownload, this, EAlfTextureFlagRetainResolution); break;
       
  1951 		case EAttachmentsSaveAll: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsSaveAll, this, EAlfTextureFlagRetainResolution); break;
       
  1952 		case EAttachmentsCancelAll: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsCancelAll, this, EAlfTextureFlagRetainResolution); break;
       
  1953 		case EAttachmentsViewAll: iTextures[aTextureId] = &CAlfStatic::Env().TextureManager().CreateTextureL( EAttachmentsViewAll, this, EAlfTextureFlagRetainResolution); break;
       
  1954 		default:
       
  1955 			// Branded mailbox icons
       
  1956             if ( aTextureId >= EBrandedIconStart && aTextureId <= EBrandedIconEnd )
       
  1957                 {
       
  1958                 iBrandedMailboxIcons.Append( &CAlfStatic::Env().TextureManager().CreateTextureL( aTextureId, this, EAlfTextureFlagRetainResolution ) );
       
  1959                 }
       
  1960             break;
       
  1961 		}
       
  1962 	}
       
  1963