uifw/AvKon/src/AknSignalIcon.cpp
branchRCL_3
changeset 10 9f56a4e1b8ab
parent 0 2f259fa3e83a
child 51 fcdfafb36fe7
equal deleted inserted replaced
9:aabf2c525e0f 10:9f56a4e1b8ab
    22 #include <eikenv.h>
    22 #include <eikenv.h>
    23 #include <akniconconfig.h>
    23 #include <akniconconfig.h>
    24 #include <avkon.mbg>
    24 #include <avkon.mbg>
    25 
    25 
    26 #include <AknTasHook.h>
    26 #include <AknTasHook.h>
       
    27 #include <AvkonInternalCRKeys.h>
       
    28 #include <centralrepository.h> 
       
    29 
    27 #include "AknSignalIcon.h"
    30 #include "AknSignalIcon.h"
    28 #include "aknconsts.h"
    31 #include "aknconsts.h"
    29 #include "AknUtils.h"
    32 #include "AknUtils.h"
    30 #include "AknStatuspaneUtils.h"
    33 #include "AknStatuspaneUtils.h"
    31 #include "aknappui.h"
    34 #include "aknappui.h"
   160 TInt CAknSignalIcon::ColorIndex()
   163 TInt CAknSignalIcon::ColorIndex()
   161 	{
   164 	{
   162 	return iColorIndex;	
   165 	return iColorIndex;	
   163 	}
   166 	}
   164 
   167 
       
   168 void CAknSignalIcon::LoadATTIconL(TInt aIconState, 
       
   169                                   TInt aIconColorIndex )
       
   170     {
       
   171     MAknsSkinInstance* skin = AknsUtils::SkinInstance();
       
   172     CFbsBitmap* bitmap      = NULL;
       
   173     CFbsBitmap* mask        = NULL;
       
   174     
       
   175     switch ( aIconState )
       
   176         {
       
   177         case EAknSignalHsdpaIndicatorAvailable:
       
   178             AknsUtils::CreateColorIconL( skin,
       
   179                                          KAknsIIDQgnIndiSignalWcdmaIcon,
       
   180                                          KAknsIIDQsnIconColors,
       
   181                                          aIconColorIndex,
       
   182                                          bitmap,
       
   183                                          mask,
       
   184                                          AknIconUtils::AvkonIconFileName(), 
       
   185                                          EMbmAvkonQgn_indi_signal_wcdma_icon,
       
   186                                          EMbmAvkonQgn_indi_signal_wcdma_icon_mask,
       
   187                                          KRgbGray );
       
   188             break;
       
   189         case EAknSignalHsdpaIndicatorAttached:
       
   190         case EAknSignalHsdpaIndicatorEstablishingContext: 
       
   191             AknsUtils::CreateColorIconL( skin,
       
   192                                          KAknsIIDQgnIndiSignalWcdmaAttach,
       
   193                                          KAknsIIDQsnIconColors,
       
   194                                          aIconColorIndex,
       
   195                                          bitmap,
       
   196                                          mask, 
       
   197                                          AknIconUtils::AvkonIconFileName(), 
       
   198                                          EMbmAvkonQgn_indi_signal_wcdma_attach,
       
   199                                          EMbmAvkonQgn_indi_signal_wcdma_attach_mask,
       
   200                                          KRgbGray );
       
   201             break;
       
   202         case EAknSignalHsdpaIndicatorContext:
       
   203             AknsUtils::CreateColorIconL( skin,
       
   204                                          KAknsIIDQgnIndiSignalWcdmaContext,
       
   205                                          KAknsIIDQsnIconColors,
       
   206                                          aIconColorIndex,
       
   207                                          bitmap,
       
   208                                          mask, 
       
   209                                          AknIconUtils::AvkonIconFileName(), 
       
   210                                          EMbmAvkonQgn_indi_signal_wcdma_context,
       
   211                                          EMbmAvkonQgn_indi_signal_wcdma_context_mask,
       
   212                                          KRgbGray );
       
   213             break;
       
   214         case EAknSignalHsdpaIndicatorMultipdp:
       
   215             AknsUtils::CreateColorIconL( skin,
       
   216                                          KAknsIIDQgnIndiSignalWcdmaMultipdp,
       
   217                                          KAknsIIDQsnIconColors,
       
   218                                          aIconColorIndex,
       
   219                                          bitmap,
       
   220                                          mask,
       
   221                                          AknIconUtils::AvkonIconFileName(), 
       
   222                                          EMbmAvkonQgn_indi_signal_wcdma_multipdp,
       
   223                                          EMbmAvkonQgn_indi_signal_wcdma_multipdp_mask,
       
   224                                          KRgbGray );
       
   225             break;
       
   226         case EAknSignalHsdpaIndicatorSuspended:
       
   227             AknsUtils::CreateColorIconL( skin,
       
   228                                          KAknsIIDQgnIndiSignalWcdmaSuspended,
       
   229                                          KAknsIIDQsnIconColors,
       
   230                                          aIconColorIndex,
       
   231                                          bitmap,
       
   232                                          mask, 
       
   233                                          AknIconUtils::AvkonIconFileName(), 
       
   234                                          EMbmAvkonQgn_indi_signal_wcdma_suspended,
       
   235                                          EMbmAvkonQgn_indi_signal_wcdma_suspended_mask,
       
   236                                          KRgbGray ); 
       
   237             break;
       
   238         }
       
   239     if ( bitmap )
       
   240         {
       
   241         delete iSignalIcon;
       
   242         iSignalIcon = bitmap;
       
   243         AknIconUtils::SetSize( iSignalIcon, Size() );
       
   244         }
       
   245 
       
   246     if ( mask )
       
   247         {
       
   248         delete iSignalIconMask;
       
   249         iSignalIconMask = mask;
       
   250         }
       
   251 
       
   252     iIconState  = aIconState;
       
   253     iColorIndex = aIconColorIndex;
       
   254     }
   165 // ---------------------------------------------------------------------------
   255 // ---------------------------------------------------------------------------
   166 // CAknSignalIcon::LoadIconL
   256 // CAknSignalIcon::LoadIconL
   167 // ---------------------------------------------------------------------------
   257 // ---------------------------------------------------------------------------
   168 //
   258 //
   169 void CAknSignalIcon::LoadIconL( TInt aIconState,
   259 void CAknSignalIcon::LoadIconL( TInt aIconState,
   180     
   270     
   181     MAknsSkinInstance* skin = AknsUtils::SkinInstance();
   271     MAknsSkinInstance* skin = AknsUtils::SkinInstance();
   182     CFbsBitmap* bitmap      = NULL;
   272     CFbsBitmap* bitmap      = NULL;
   183     CFbsBitmap* mask        = NULL;
   273     CFbsBitmap* mask        = NULL;
   184 
   274 
       
   275     TBool isHsdpa = ( aIconState >= EAknSignalHsdpaIndicatorAvailable
       
   276                     && aIconState <= EAknSignalHsdpaIndicatorMultipdp );
   185     if ( iOffLine )
   277     if ( iOffLine )
   186         {
   278         {
   187         // Offline mode is not an actual signal state in the signal icon
   279         // Offline mode is not an actual signal state in the signal icon
   188         // control, but it needs to be represented by an offline signal
   280         // control, but it needs to be represented by an offline signal
   189         // icon in the universal indicator popup.
   281         // icon in the universal indicator popup.
   198                                      EMbmAvkonQgn_indi_signal_offline_mask,
   290                                      EMbmAvkonQgn_indi_signal_offline_mask,
   199                                      KRgbGray ); 
   291                                      KRgbGray ); 
   200         }
   292         }
   201     else
   293     else
   202         {
   294         {
       
   295         if( iATTEnable && isHsdpa)
       
   296             {
       
   297             LoadATTIconL( aIconState, aIconColorIndex );
       
   298             return;
       
   299             }
   203         switch( aIconState )
   300         switch( aIconState )
   204             {
   301             {
   205             // Old legacy GPRS icons.
   302             // Old legacy GPRS icons.
   206             case EAknSignalGprsIndicatorOff:
   303             case EAknSignalGprsIndicatorOff:
   207             case EAknSignalGprsIndicatorAvailable: // fallthrough
   304             case EAknSignalGprsIndicatorAvailable: // fallthrough
   676 // Second-phase constructor.
   773 // Second-phase constructor.
   677 // ---------------------------------------------------------------------------
   774 // ---------------------------------------------------------------------------
   678 //
   775 //
   679 void CAknSignalIcon::ConstructL()
   776 void CAknSignalIcon::ConstructL()
   680 	{
   777 	{
       
   778 	CRepository* repo = CRepository::NewL( KCRUidAvkon );
       
   779 
       
   780     TInt aTTEnabled = EFalse;
       
   781     iATTEnable = EFalse;
       
   782     TInt crErr = repo->Get( KAknATTSignalIconEnable, aTTEnabled );
       
   783     if ( crErr == KErrNone )
       
   784         {
       
   785         iATTEnable = aTTEnabled;
       
   786         }
       
   787     delete repo;
       
   788     repo = NULL;
   681 	}
   789 	}
   682 
   790 
   683 //  End of File  
   791 //  End of File