--- a/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Tue May 25 12:42:31 2010 +0300
+++ b/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Wed Jun 09 09:41:51 2010 +0300
@@ -54,29 +54,31 @@
// ---------------------------------------------------------------------------
//
CGlxGridViewContainer* CGlxGridViewContainer::NewL(MGlxMediaList *aMediaList,
- CGlxUiUtility* aUiUtility,
- MGlxGridEventObserver& aObserver,CAknToolbar* aToolbar)
- {
- TRACER("CGlxGridViewContainer::NewL");
- CGlxGridViewContainer* self = CGlxGridViewContainer::NewLC(aMediaList,aUiUtility,aObserver,aToolbar) ;
- CleanupStack::Pop(self) ;
- return self ;
- }
+ CGlxUiUtility* aUiUtility, MGlxGridEventObserver& aObserver,
+ CAknToolbar* aToolbar)
+ {
+ TRACER("CGlxGridViewContainer::NewL");
+ CGlxGridViewContainer* self = CGlxGridViewContainer::NewLC(aMediaList,
+ aUiUtility, aObserver, aToolbar);
+ CleanupStack::Pop(self);
+ return self;
+ }
// ---------------------------------------------------------------------------
// Two-phased constructor.
// ---------------------------------------------------------------------------
//
-CGlxGridViewContainer* CGlxGridViewContainer::NewLC(MGlxMediaList *aMediaList,
- CGlxUiUtility* aUiUtility,
- MGlxGridEventObserver& aObserver,CAknToolbar* aToolbar)
- {
- TRACER("CGlxGridViewContainer::NewLC");
- CGlxGridViewContainer* self = new(ELeave) CGlxGridViewContainer(aMediaList,aUiUtility,aObserver,aToolbar);
- CleanupStack::PushL(self ) ;
- self->ConstructL() ;
- return self ;
- }
+CGlxGridViewContainer* CGlxGridViewContainer::NewLC(
+ MGlxMediaList *aMediaList, CGlxUiUtility* aUiUtility,
+ MGlxGridEventObserver& aObserver, CAknToolbar* aToolbar)
+ {
+ TRACER("CGlxGridViewContainer::NewLC");
+ CGlxGridViewContainer* self = new (ELeave) CGlxGridViewContainer(
+ aMediaList, aUiUtility, aObserver, aToolbar);
+ CleanupStack::PushL(self);
+ self->ConstructL();
+ return self;
+ }
// ---------------------------------------------------------------------------
// Destructor
@@ -84,8 +86,7 @@
//
CGlxGridViewContainer::~CGlxGridViewContainer()
{
- TRACER("CGlxGridViewContainer::~CGlxGridViewContainer");
-
+ TRACER("CGlxGridViewContainer::~CGlxGridViewContainer");
delete iMMCNotifier;
iMMCNotifier = NULL;
@@ -125,12 +126,14 @@
// might leave.
// ---------------------------------------------------------------------------
//
-CGlxGridViewContainer::CGlxGridViewContainer(MGlxMediaList *aMediaList,CGlxUiUtility* aUiUtility,
- MGlxGridEventObserver& aObserver,CAknToolbar* aToolbar)
- : iMediaList(aMediaList),iUiUtility(aUiUtility),iGlxGridViewObserver(aObserver),iToolbar(aToolbar)
- {
- TRACER("CGlxGridViewContainer::CGlxGridViewContainer");
- }
+CGlxGridViewContainer::CGlxGridViewContainer(MGlxMediaList *aMediaList,
+ CGlxUiUtility* aUiUtility, MGlxGridEventObserver& aObserver,
+ CAknToolbar* aToolbar) :
+ iMediaList(aMediaList), iUiUtility(aUiUtility), iGlxGridViewObserver(
+ aObserver), iToolbar(aToolbar)
+ {
+ TRACER("CGlxGridViewContainer::CGlxGridViewContainer");
+ }
// ---------------------------------------------------------------------------
// Symbian 2nd phase constructor can leave.
@@ -139,7 +142,6 @@
void CGlxGridViewContainer::ConstructL()
{
TRACER("CGlxGridViewContainer::ConstructL()");
-
//create the container window.
CreateWindowL();
@@ -340,7 +342,6 @@
void CGlxGridViewContainer::HandleOpenL( TInt aIndex )
{
TRACER("CGlxGridViewContainer::HandleOpenL()");
-
// Make sure that the Selection Index is inside medialist count
if (aIndex <iMediaList->Count() && aIndex >=0)
{
@@ -382,7 +383,6 @@
void CGlxGridViewContainer::CreateHgGridWidgetL()
{
TRACER("CGlxGridViewContainer::CreateHgGridWidgetL()");
-
TInt mediaCount = iMediaList->Count();
GLX_DEBUG2("GlxGrid: CHgGrid::CreateHgGridWidgetL() "
"mediaCount(%d)", mediaCount);
@@ -452,25 +452,27 @@
//
TRect CGlxGridViewContainer::GetHgGridRect()
{
- TRACER("CGlxGridViewContainer::GetHgGridRect()");
-
+ TRACER("CGlxGridViewContainer::GetHgGridRect()");
TRect clientrect = iEikonEnv->EikAppUi()->ClientRect();
- TRect apprect = iEikonEnv->EikAppUi()->ApplicationRect();
- if(apprect.Height()>apprect.Width())
+ TRect apprect = iEikonEnv->EikAppUi()->ApplicationRect();
+ if (apprect.Height() > apprect.Width())
{
//portrait:
//height : apprect height - (status pane height + toolbar height + cba height)
//width remains 360.
- clientrect.SetHeight(apprect.Height() - ((clientrect.iTl.iY) + (iToolbar->Size().iHeight) + (iEikonEnv->AppUiFactory()->Cba()->Rect().Height())));
+ clientrect.SetHeight(apprect.Height() - ((clientrect.iTl.iY)
+ + (iToolbar->Size().iHeight)
+ + (iEikonEnv->AppUiFactory()->Cba()->Rect().Height())));
}
else
{
//Landscape:
//height : apprect - (status pane height + cba height)
//width : apprect width - toolbarwidth.
- clientrect.SetHeight(apprect.Height() - ((clientrect.iTl.iY) + (iEikonEnv->AppUiFactory()->Cba()->Rect().Height())));
+ clientrect.SetHeight(apprect.Height() - ((clientrect.iTl.iY)
+ + (iEikonEnv->AppUiFactory()->Cba()->Rect().Height())));
clientrect.SetWidth(apprect.Width() - iToolbar->Size().iWidth);
- }
+ }
return clientrect;
}
// ---------------------------------------------------------------------------
@@ -593,7 +595,8 @@
iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap));
GLX_LOG_INFO1("### CGlxGridViewContainer::SetIconsL speedTn-Index is %d",index);
}
- else if ((KErrCANoRights ==tnError) || (KErrDiskFull ==tnError))
+ else if ((KErrCANoRights ==tnError) || (KErrDiskFull ==tnError)
+ || (item.Category() == EMPXVideo && KErrNone != tnError))
{
/*
* this is a safe code added to show default
@@ -608,45 +611,19 @@
* In such a case we need to show default thumbnails instead of corrupted.
*
*/
- GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_defaultthumbnail tnError(%d), i(%d)",
- tnError, index);
- CFbsBitmap* bitmap = NULL;
- CFbsBitmap* mask = NULL;
- AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
- bitmap, mask, iIconsFileName, EMbmGlxiconsQgn_prop_image_notcreated,
+ GLX_LOG_INFO2(
+ "CGlxGridViewContainer::SetIconsL - image_defaultthumbnail tnError(%d), i(%d)",
+ tnError, index);
+ SetIconL(index, EMbmGlxiconsQgn_prop_image_notcreated,
EMbmGlxiconsQgn_prop_image_notcreated_mask);
- __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
- __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
-
- AknIconUtils::SetSize(bitmap, iHgGridImageSize,
- EAspectRatioPreservedAndUnusedSpaceRemoved);
- AknIconUtils::SetSize(mask, iHgGridImageSize,
- EAspectRatioPreservedAndUnusedSpaceRemoved);
-
- iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask));
- CleanupStack::Pop(mask);
- CleanupStack::Pop(bitmap);
}
else if(KErrNone != tnError)
{
- GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)",
+ GLX_LOG_INFO2(
+ "CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)",
tnError, index);
- CFbsBitmap* bitmap = NULL;
- CFbsBitmap* mask = NULL;
- AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone,
- bitmap, mask, iIconsFileName, EMbmGlxiconsQgn_prop_image_corrupted,
+ SetIconL(index, EMbmGlxiconsQgn_prop_image_corrupted,
EMbmGlxiconsQgn_prop_image_corrupted_mask);
- __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
- __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
-
- AknIconUtils::SetSize(bitmap, iHgGridImageSize,
- EAspectRatioPreservedAndUnusedSpaceRemoved);
- AknIconUtils::SetSize(mask, iHgGridImageSize,
- EAspectRatioPreservedAndUnusedSpaceRemoved);
-
- iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask));
- CleanupStack::Pop(mask);
- CleanupStack::Pop(bitmap);
}
if (item.IsDrmProtected())
@@ -699,7 +676,32 @@
iHgGrid->ItemL(index).SetFlags(CHgItem::EHgItemFlagsVideo);
}
}
-
+
+// ----------------------------------------------------------------------------
+// SetIconL
+// ----------------------------------------------------------------------------
+//
+void CGlxGridViewContainer::SetIconL(TInt aItemIndex, TInt aBitmapId,
+ TInt aMaskId)
+ {
+ TRACER("CGlxGridViewContainer::SetIconL()");
+ CFbsBitmap* bitmap = NULL;
+ CFbsBitmap* mask = NULL;
+ TSize setSize = CHgGrid::PreferredImageSize();
+ AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, bitmap,
+ mask, iIconsFileName, aBitmapId, aMaskId);
+ __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer));
+ __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer));
+
+ AknIconUtils::SetSize(bitmap, setSize,
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+ AknIconUtils::SetSize(mask, setSize,
+ EAspectRatioPreservedAndUnusedSpaceRemoved);
+
+ iHgGrid->ItemL(aItemIndex).SetIcon(CGulIcon::NewL(bitmap, mask));
+ CleanupStack::Pop(mask);
+ CleanupStack::Pop(bitmap);
+ }
// -----------------------------------------------------------------------------
// MopSupplyObject