videocollection/hgmyvideos/src/vcxhgmyvideoscategorymodelhandler.cpp
branchRCL_3
changeset 10 112a725ff2c2
parent 9 5294c000a26d
child 11 8970fbd719ec
equal deleted inserted replaced
9:5294c000a26d 10:112a725ff2c2
   235 CGulIcon* CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL( TInt aCategoryId )
   235 CGulIcon* CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL( TInt aCategoryId )
   236     {
   236     {
   237     IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL() Enter! Category id = %d", aCategoryId );
   237     IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL() Enter! Category id = %d", aCategoryId );
   238 
   238 
   239     CGulIcon* icon( NULL );
   239     CGulIcon* icon( NULL );
       
   240     TAknsItemID skinId = KAknsIIDNone;
   240     TInt bitmapId( 0 );
   241     TInt bitmapId( 0 );
   241     TInt maskId( 0 );
   242     TInt maskId( 0 );
   242     TInt key( KErrNotFound );
   243     TInt key( KErrNotFound );
   243     TFileName iconFile( KNullDesC() );
   244     TFileName iconFile( KNullDesC() );
   244     
   245     
   246     switch ( aCategoryId )
   247     switch ( aCategoryId )
   247         {
   248         {
   248         case KVcxMvcCategoryIdDownloads:    // fall through
   249         case KVcxMvcCategoryIdDownloads:    // fall through
   249         case KVcxMvcCategoryIdAll:          // fall through
   250         case KVcxMvcCategoryIdAll:          // fall through
   250         case KVcxMvcCategoryIdOther:
   251         case KVcxMvcCategoryIdOther:
       
   252             skinId.Set( KAknsIIDQgnPropDownloadThumbnailVideo );
   251             iconFile = KVcxHgMyVideosMifFile;
   253             iconFile = KVcxHgMyVideosMifFile;
   252             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_download_thumbnail_video;
   254             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_download_thumbnail_video;
   253             maskId = EMbmVcxhgmyvideosiconsQgn_prop_download_thumbnail_video_mask;
   255             maskId = EMbmVcxhgmyvideosiconsQgn_prop_download_thumbnail_video_mask;
   254             break;
   256             break;
   255         case KVcxMvcCategoryIdCaptured:
   257         case KVcxMvcCategoryIdCaptured:
       
   258             skinId.Set( KAknsIIDQgnPropCapturedThumbnailVideo );
   256             iconFile = KVcxHgMyVideosMifFile;
   259             iconFile = KVcxHgMyVideosMifFile;
   257             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_captured_thumbnail_video;
   260             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_captured_thumbnail_video;
   258             maskId = EMbmVcxhgmyvideosiconsQgn_prop_captured_thumbnail_video_mask;
   261             maskId = EMbmVcxhgmyvideosiconsQgn_prop_captured_thumbnail_video_mask;
   259             break;
   262             break;
   260         case KCategoryIdLastWatched:
   263         case KCategoryIdLastWatched:
   261             // If no last watched, dont show default icon
   264             // Dont set default lw icon here, it'd just blink.
   262             if ( iLastWatched )
       
   263                 {
       
   264                 iconFile = KVcxHgMyVideosMifFile;
       
   265                 bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video;
       
   266                 maskId = EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video_mask;
       
   267                 }
       
   268             break;
   265             break;
   269         case KCategoryIdExtraItem1:
   266         case KCategoryIdExtraItem1:
   270             // ExtraItem1 is always interpreted as Ovi Store
   267             // ExtraItem1 is always interpreted as Ovi Store
       
   268             skinId.Set( KAknsIIDQgnPropOviThumbnailVideo );
   271             iconFile = KVcxHgMyVideosMifFile;
   269             iconFile = KVcxHgMyVideosMifFile;
   272             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_ovi_thumbnail_video;
   270             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_ovi_thumbnail_video;
   273             maskId = EMbmVcxhgmyvideosiconsQgn_prop_ovi_thumbnail_video_mask;
   271             maskId = EMbmVcxhgmyvideosiconsQgn_prop_ovi_thumbnail_video_mask;
   274             break;
   272             break;
   275         case KCategoryIdExtraItem2:
   273         case KCategoryIdExtraItem2:
   296             bitmapId = 0x4000;
   294             bitmapId = 0x4000;
   297             maskId = 0x4001;
   295             maskId = 0x4001;
   298             }
   296             }
   299         else
   297         else
   300             { // Use default service icon
   298             { // Use default service icon
       
   299             skinId.Set( KAknsIIDQgnPropServiceThumbnailVideo );
   301             iconFile = KVcxHgMyVideosMifFile;
   300             iconFile = KVcxHgMyVideosMifFile;
   302             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_service_thumbnail_video;
   301             bitmapId = EMbmVcxhgmyvideosiconsQgn_prop_service_thumbnail_video;
   303             maskId = EMbmVcxhgmyvideosiconsQgn_prop_service_thumbnail_video_mask;
   302             maskId = EMbmVcxhgmyvideosiconsQgn_prop_service_thumbnail_video_mask;
   304             }
   303             }
   305         }
   304         }
   316             TParse parse;
   315             TParse parse;
   317             parse.Set( findFile.File(), NULL, NULL );
   316             parse.Set( findFile.File(), NULL, NULL );
   318             iconFile = parse.FullName();
   317             iconFile = parse.FullName();
   319             IPTVLOGSTRING3_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconLC() get %d from file %S", bitmapId, &iconFile );
   318             IPTVLOGSTRING3_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconLC() get %d from file %S", bitmapId, &iconFile );
   320 
   319 
   321             icon = CreateHgListIconL( iconFile, bitmapId, maskId );
   320             icon = CreateHgListIconL( skinId, iconFile, bitmapId, maskId );
   322             }
   321             }
   323         else
   322         else
   324             {
   323             {
   325             IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL() FindByDir() returned %d", error );
   324             IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::GetCategoryIconL() FindByDir() returned %d", error );
   326             }
   325             }
   942         iModel.CollectionClient().PlayVideoL(
   941         iModel.CollectionClient().PlayVideoL(
   943                     *iLastWatched->Value<TMPXItemId>( KMPXMediaGeneralId ) );
   942                     *iLastWatched->Value<TMPXItemId>( KMPXMediaGeneralId ) );
   944 
   943 
   945         iModel.SetAppState( CVcxHgMyVideosModel::EVcxMyVideosAppStatePlayer );
   944         iModel.SetAppState( CVcxHgMyVideosModel::EVcxMyVideosAppStatePlayer );
   946         }
   945         }
       
   946     else
       
   947         {
       
   948         // Refresh the list to remove the highlight.
       
   949         iScroller.DrawDeferred();
       
   950         }
   947     }
   951     }
   948 
   952 
   949 // -----------------------------------------------------------------------------
   953 // -----------------------------------------------------------------------------
   950 // CVcxHgMyVideosVideoModelHandler::LoadLastWatchedIconL()
   954 // CVcxHgMyVideosVideoModelHandler::LoadLastWatchedIconL()
   951 // 
   955 // 
  1049             CleanupStack::PushL( thumbnail );
  1053             CleanupStack::PushL( thumbnail );
  1050             }
  1054             }
  1051         else
  1055         else
  1052             {
  1056             {
  1053             TFileName iconFile( KVcxHgMyVideosMifFile );
  1057             TFileName iconFile( KVcxHgMyVideosMifFile );
  1054             thumbnail = CreateHgListIconL( iconFile, 
  1058             thumbnail = CreateHgListIconL( 
       
  1059                 KAknsIIDQgnPropRecentThumbnailVideo,
       
  1060                 iconFile, 
  1055                 EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video, 
  1061                 EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video, 
  1056                 EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video_mask );
  1062                 EMbmVcxhgmyvideosiconsQgn_prop_recent_thumbnail_video_mask );
  1057 
  1063 
  1058             CleanupStack::PushL( thumbnail );
  1064             CleanupStack::PushL( thumbnail );
  1059             }
  1065             }
  1132 // CVcxHgMyVideosVideoModelHandler::CreateHgListIconL()
  1138 // CVcxHgMyVideosVideoModelHandler::CreateHgListIconL()
  1133 // 
  1139 // 
  1134 // -----------------------------------------------------------------------------
  1140 // -----------------------------------------------------------------------------
  1135 // 
  1141 // 
  1136 CGulIcon* CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL(
  1142 CGulIcon* CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL(
       
  1143         const TAknsItemID& aSkinId,
  1137         const TFileName& aFileName,
  1144         const TFileName& aFileName,
  1138         TInt aBitmapId,
  1145         TInt aBitmapId,
  1139         TInt aMaskId )
  1146         TInt aMaskId )
  1140     {
  1147     {
       
  1148     IPTVLOGSTRING3_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL() skin major=%d, skin minor=%d", aSkinId.iMajor, aSkinId.iMinor );
  1141     IPTVLOGSTRING4_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL() bitmap=%d mask=%d file %S", aBitmapId, aMaskId, &aFileName );
  1149     IPTVLOGSTRING4_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL() bitmap=%d mask=%d file %S", aBitmapId, aMaskId, &aFileName );
  1142     
  1150     
  1143     CFbsBitmap* bitmap( NULL );
  1151     CFbsBitmap* bitmap( NULL );
  1144     CFbsBitmap* mask( NULL );
  1152     CFbsBitmap* mask( NULL );
  1145     CGulIcon* icon( NULL );
  1153     CGulIcon* icon( NULL );
  1146 
  1154 
  1147     // Create default icon for Hg list.
  1155     // Create default icon for Hg list.
  1148     AknIconUtils::CreateIconLC(
  1156     AknsUtils::CreateIconLC(
       
  1157             AknsUtils::SkinInstance(),
       
  1158             aSkinId,
  1149             bitmap,
  1159             bitmap,
  1150             mask,
  1160             mask,
  1151             aFileName, 
  1161             aFileName, 
  1152             aBitmapId,
  1162             aBitmapId,
  1153             aMaskId );
  1163             aMaskId );
  1165             EAspectRatioPreservedAndUnusedSpaceRemoved );
  1175             EAspectRatioPreservedAndUnusedSpaceRemoved );
  1166     User::LeaveIfError( error );
  1176     User::LeaveIfError( error );
  1167 
  1177 
  1168     // Ownership of bitmap and mask is transferred to icon.
  1178     // Ownership of bitmap and mask is transferred to icon.
  1169     icon = CGulIcon::NewL( bitmap, mask );
  1179     icon = CGulIcon::NewL( bitmap, mask );
  1170     CleanupStack::Pop( 2, bitmap ); // mask and bitmap
  1180     CleanupStack::Pop( 2 ); // mask and bitmap
  1171 
  1181 
  1172     IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL() icon=0x%08x", icon );
  1182     IPTVLOGSTRING2_LOW_LEVEL( "CVcxHgMyVideosCategoryModelHandler::CreateHgListIconL() icon=0x%08x", icon );
  1173 
  1183 
  1174     return icon;
  1184     return icon;
  1175     }
  1185     }