# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1263838760 -7200 # Node ID 7d9067c6fcb12d316cd98532dcb46be810f9d230 # Parent 9ba538e329bd316ed8d9cbf3dc7d8a08b32ff20f Revision: 201001 Kit: 201003 diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/inc/glxdatasourcetaskmdsidlist.h --- a/photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/inc/glxdatasourcetaskmdsidlist.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/inc/glxdatasourcetaskmdsidlist.h Mon Jan 18 20:19:20 2010 +0200 @@ -128,6 +128,10 @@ void PostFilterL(const RArray& aFilteredList, const TGlxFilterProperties& aFilterProperties); +#ifdef _DEBUG + TTime iStartTime; + TTime iStopTime; +#endif }; #endif // GLXDATASOURCETASKMDSIDLIST_H_ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/src/glxdatasourcetaskmdsidlist.cpp --- a/photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/src/glxdatasourcetaskmdsidlist.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/collectionframework/datasource/plugins/glxdatasourcemde2.5/src/glxdatasourcetaskmdsidlist.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -114,6 +114,9 @@ void CGlxDataSourceTaskMdeIdList::ExecuteRequestL() { TRACER("CGlxDataSourceTaskMdeIdList::ExecuteRequestL()") +#ifdef _DEBUG + iStartTime.HomeTime(); +#endif CGlxIdListRequest* request = static_cast(iRequest); TGlxMediaId container = request->ContainerId(); TGlxQueryType queryType = EIdListQuery; @@ -207,6 +210,11 @@ TRACER("CGlxDataSourceTaskMdeIdList::DoHandleQueryCompletedL()") __ASSERT_DEBUG(iQueryTypes[0] == EIdListQuery, Panic(EGlxPanicLogicError)); DoHandleListQueryCompletedL(); +#ifdef _DEBUG + iStopTime.HomeTime(); + GLX_DEBUG2("GlxDataSrcTaskMdeIdList:DoHandleQueryCompletedL() took %d us", + (TInt)iStopTime.MicroSecondsFrom(iStartTime).Int64()); +#endif } // ---------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/collectionframework/plugins/glxcollectionpluginmonths/inc/glxcollectionpluginmonths.h --- a/photosgallery/collectionframework/plugins/glxcollectionpluginmonths/inc/glxcollectionpluginmonths.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/collectionframework/plugins/glxcollectionpluginmonths/inc/glxcollectionpluginmonths.h Mon Jan 18 20:19:20 2010 +0200 @@ -104,6 +104,37 @@ TBool IsUpdateMessageIgnored(CMPXMessage& aMessage); TGlxFilterProperties DefaultFilter(TInt aLevel); + +private: + /** + * enum TMonthStringType + * + * This is mainly passed as a param to be used by the method + * GetMonthNameAsStringLC(). + * GetMonthNameAsStringLC() manipulates and returns the months name in + * Title format or sub-title format based on this enum which is passed as + * param. + */ + enum TMonthStringType + { + EMonthNameAsSubtitle, /// Month name is desired in sub-title format + EMonthNameAsTitle /// Month name is desired in title format + }; + +private: + /** + * Utility method to take a TMonth param, and convert it into a string. This + * string is returned to the calling method. The returned string can contain + * the month name in sub-title or title format. Subtitle format is used in + * the list views to signify months ("Jan", "Feb", ... ). Title format is + * used in mpnth-grid views to name the view ("January", "February", ...). + * + * @param aMonth The month whose name is desired as a string. + * @param aStrType enum specified by calling method to tell how it wants the + * month string to be. + */ + HBufC* GetMonthNameAsStringLC( const TMonth& aMonth, + const TMonthStringType& aStrType); }; #endif // C_GLXCOLLECTIONPLUGINMONTHS_H diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/collectionframework/plugins/glxcollectionpluginmonths/src/glxcollectionpluginmonths.cpp --- a/photosgallery/collectionframework/plugins/glxcollectionpluginmonths/src/glxcollectionpluginmonths.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/collectionframework/plugins/glxcollectionpluginmonths/src/glxcollectionpluginmonths.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -58,6 +58,8 @@ const TInt KDateFormat2 = 2; const TInt KDateFormat3 = 3; +_LIT(KResourceFile, "z:glxpluginmonths.rsc"); + // ============================ LOCAL FUNCTIONS ============================== // ============================ MEMBER FUNCTIONS ============================== @@ -259,8 +261,6 @@ { TRACER("CGlxCollectionPluginMonths::HandleCpiAttributeResponseL"); - _LIT(KResourceFile, "z:glxpluginmonths.rsc"); - TInt count = aCpiAttributes.Count(); TLanguage lang; lang = User::Language(); @@ -357,70 +357,8 @@ AknTextUtils::DisplayTextLanguageSpecificNumberConversion(yearTitle); } - HBufC* monthTitle = NULL; - switch(start.DateTime().Month()) - { - case EJanuary: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JAN); - break; - } - case EFebruary: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_FEB); - break; - } - case EMarch: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_MAR); - break; - } - case EApril: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_APR); - break; - } - case EMay: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_MAY); - break; - } - case EJune: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JUN); - break; - } - case EJuly: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JUL); - break; - } - case EAugust: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_AUG); - break; - } - case ESeptember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_SEP); - break; - } - case EOctober: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_OCT); - break; - } - case ENovember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_NOV); - break; - } - case EDecember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_DEC); - break; - } - } + HBufC* monthTitle = GetMonthNameAsStringLC( + start.DateTime().Month(), EMonthNameAsSubtitle ); TBuf yearTitle2; end.FormatL(yearTitle2, KGlxTempMonthYearTitleFormat); @@ -430,70 +368,8 @@ AknTextUtils::DisplayTextLanguageSpecificNumberConversion(yearTitle2); } - HBufC* monthTitle2 = NULL; - switch(end.DateTime().Month()) - { - case EJanuary: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JAN); - break; - } - case EFebruary: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_FEB); - break; - } - case EMarch: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_MAR); - break; - } - case EApril: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_APR); - break; - } - case EMay: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_MAY); - break; - } - case EJune: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JUN); - break; - } - case EJuly: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_JUL); - break; - } - case EAugust: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_AUG); - break; - } - case ESeptember: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_SEP); - break; - } - case EOctober: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_OCT); - break; - } - case ENovember: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_NOV); - break; - } - case EDecember: - { - monthTitle2 = LoadLocalizedStringLC(KResourceFile, R_MONTHS_SUB_TITLE_DEC); - break; - } - } + HBufC* monthTitle2 = GetMonthNameAsStringLC( + end.DateTime().Month(), EMonthNameAsSubtitle ); HBufC* title1 = HBufC::NewLC(formatString.Length() + KDateBufferPaddingMax); TPtr ptr1 = title1->Des(); @@ -724,70 +600,8 @@ AknTextUtils::DisplayTextLanguageSpecificNumberConversion(yearTitle); } - HBufC* monthTitle = NULL; - switch(month.DateTime().Month()) - { - case EJanuary: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_JAN); - break; - } - case EFebruary: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_FEB); - break; - } - case EMarch: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_MAR); - break; - } - case EApril: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_APR); - break; - } - case EMay: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_MAY); - break; - } - case EJune: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_JUN); - break; - } - case EJuly: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_JUL); - break; - } - case EAugust: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_AUG); - break; - } - case ESeptember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_SEP); - break; - } - case EOctober: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_OCT); - break; - } - case ENovember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_NOV); - break; - } - case EDecember: - { - monthTitle = LoadLocalizedStringLC(KResourceFile, R_MONTHS_TITLE_DEC); - break; - } - } + HBufC* monthTitle = GetMonthNameAsStringLC( + month.DateTime().Month(), EMonthNameAsTitle ); HBufC* title1 = HBufC::NewLC(formatString.Length() + KDateBufferPaddingMax); TPtr ptr = title1->Des(); @@ -853,4 +667,112 @@ } + +HBufC* CGlxCollectionPluginMonths::GetMonthNameAsStringLC( + const TMonth& aMonth, const TMonthStringType& aStrType) + { + TInt monthResourceId = 0; + + switch (aMonth) + { + case EJanuary: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_JAN + : R_MONTHS_TITLE_JAN; + break; + } + case EFebruary: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_FEB + : R_MONTHS_TITLE_FEB; + break; + } + case EMarch: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_MAR + : R_MONTHS_TITLE_MAR; + break; + } + case EApril: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_APR + : R_MONTHS_TITLE_APR; + break; + } + case EMay: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_MAY + : R_MONTHS_TITLE_MAY; + break; + } + case EJune: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_JUN + : R_MONTHS_TITLE_JUN; + break; + } + case EJuly: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_JUL + : R_MONTHS_TITLE_JUL; + break; + } + case EAugust: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_AUG + : R_MONTHS_TITLE_AUG; + break; + } + case ESeptember: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_SEP + : R_MONTHS_TITLE_SEP; + break; + } + case EOctober: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_OCT + : R_MONTHS_TITLE_OCT; + break; + } + case ENovember: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_NOV + : R_MONTHS_TITLE_NOV; + break; + } + case EDecember: + { + monthResourceId + = (EMonthNameAsSubtitle == aStrType) + ? R_MONTHS_SUB_TITLE_DEC + : R_MONTHS_TITLE_DEC; + break; + } + } + + return LoadLocalizedStringLC(KResourceFile, monthResourceId); + } // End of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/commonui/bwins/glxcommonuiu.def --- a/photosgallery/commonui/bwins/glxcommonuiu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/commonui/bwins/glxcommonuiu.def Mon Jan 18 20:19:20 2010 +0200 @@ -1,33 +1,35 @@ EXPORTS - ??1CGlxResolutionManager@@UAE@XZ @ 1 NONAME ; CGlxResolutionManager::~CGlxResolutionManager(void) - ?ActivatePreviousViewL@CGlxNavigationalState@@QAEXXZ @ 2 NONAME ; void CGlxNavigationalState::ActivatePreviousViewL(void) - ?AddObserverL@CGlxNavigationalState@@QAEXAAVMGlxNavigationalStateObserver@@@Z @ 3 NONAME ; void CGlxNavigationalState::AddObserverL(class MGlxNavigationalStateObserver &) - ?AddObserverL@CGlxResolutionUtility@@QAEXAAVMGlxResolutionChangeObserver@@@Z @ 4 NONAME ; void CGlxResolutionUtility::AddObserverL(class MGlxResolutionChangeObserver &) - ?BackExitStatus@CGlxNavigationalState@@QAEHXZ @ 5 NONAME ; int CGlxNavigationalState::BackExitStatus(void) - ?Close@CGlxErrorPoster@@QAEXXZ @ 6 NONAME ; void CGlxErrorPoster::Close(void) - ?Close@CGlxNavigationalState@@QAEXXZ @ 7 NONAME ; void CGlxNavigationalState::Close(void) - ?Close@CGlxResolutionUtility@@QAEXXZ @ 8 NONAME ; void CGlxResolutionUtility::Close(void) - ?ForwardActivationEventL@CGlxBackServiceWrapper@@QAEHABVTDesC8@@H@Z @ 9 NONAME ; int CGlxBackServiceWrapper::ForwardActivationEventL(class TDesC8 const &, int) - ?HandleBackCommandL@CGlxBackServiceWrapper@@QAEHABVTDesC8@@H@Z @ 10 NONAME ; int CGlxBackServiceWrapper::HandleBackCommandL(class TDesC8 const &, int) - ?InstanceL@CGlxErrorPoster@@SAPAV1@XZ @ 11 NONAME ; class CGlxErrorPoster * CGlxErrorPoster::InstanceL(void) - ?InstanceL@CGlxNavigationalState@@SAPAV1@XZ @ 12 NONAME ; class CGlxNavigationalState * CGlxNavigationalState::InstanceL(void) - ?InstanceL@CGlxResolutionUtility@@SAPAV1@XZ @ 13 NONAME ; class CGlxResolutionUtility * CGlxResolutionUtility::InstanceL(void) - ?NavigateToChildL@CGlxNavigationalState@@QAEXABVTGlxMediaId@@@Z @ 14 NONAME ; void CGlxNavigationalState::NavigateToChildL(class TGlxMediaId const &) - ?NavigateToL@CGlxNavigationalState@@QAEXABVCMPXCollectionPath@@@Z @ 15 NONAME ; void CGlxNavigationalState::NavigateToL(class CMPXCollectionPath const &) - ?NavigateToParentL@CGlxNavigationalState@@QAEXXZ @ 16 NONAME ; void CGlxNavigationalState::NavigateToParentL(void) - ?NewL@CGlxBackServiceWrapper@@SAPAV1@VTUid@@@Z @ 17 NONAME ; class CGlxBackServiceWrapper * CGlxBackServiceWrapper::NewL(class TUid) - ?NewL@CGlxResolutionManager@@SAPAV1@XZ @ 18 NONAME ; class CGlxResolutionManager * CGlxResolutionManager::NewL(void) - ?NewLC@CGlxBackServiceWrapper@@SAPAV1@VTUid@@@Z @ 19 NONAME ; class CGlxBackServiceWrapper * CGlxBackServiceWrapper::NewLC(class TUid) - ?PixelsToPoss@CGlxResolutionUtility@@QBEMABM@Z @ 20 NONAME ; float CGlxResolutionUtility::PixelsToPoss(float const &) const - ?PossToPixels@CGlxResolutionUtility@@QBEMABM@Z @ 21 NONAME ; float CGlxResolutionUtility::PossToPixels(float const &) const - ?PostError@CGlxErrorPoster@@QAEXH@Z @ 22 NONAME ; void CGlxErrorPoster::PostError(int) - ?PublishStateL@NGlxZoomStatePublisher@@YAXH@Z @ 23 NONAME ; void NGlxZoomStatePublisher::PublishStateL(int) - ?RemoveObserver@CGlxNavigationalState@@QAEXAAVMGlxNavigationalStateObserver@@@Z @ 24 NONAME ; void CGlxNavigationalState::RemoveObserver(class MGlxNavigationalStateObserver &) - ?RemoveObserver@CGlxResolutionUtility@@QAEXAAVMGlxResolutionChangeObserver@@@Z @ 25 NONAME ; void CGlxResolutionUtility::RemoveObserver(class MGlxResolutionChangeObserver &) - ?ScreenSize@CGlxResolutionUtility@@QBE?AVTSize@@XZ @ 26 NONAME ; class TSize CGlxResolutionUtility::ScreenSize(void) const + ?PostError@CGlxErrorPoster@@QAEXH@Z @ 1 NONAME ; void CGlxErrorPoster::PostError(int) + ?InstanceL@CGlxErrorPoster@@SAPAV1@XZ @ 2 NONAME ; class CGlxErrorPoster * CGlxErrorPoster::InstanceL(void) + ?ActivatePreviousViewL@CGlxNavigationalState@@QAEXXZ @ 3 NONAME ; void CGlxNavigationalState::ActivatePreviousViewL(void) + ?PossToPixels@CGlxResolutionUtility@@QBEMABM@Z @ 4 NONAME ; float CGlxResolutionUtility::PossToPixels(float const &) const + ?Close@CGlxResolutionUtility@@QAEXXZ @ 5 NONAME ; void CGlxResolutionUtility::Close(void) + ?SetStartingLevel@CGlxNavigationalState@@QAEXH@Z @ 6 NONAME ; void CGlxNavigationalState::SetStartingLevel(int) + ??1CGlxResolutionManager@@UAE@XZ @ 7 NONAME ; CGlxResolutionManager::~CGlxResolutionManager(void) + ?RemoveObserver@CGlxResolutionUtility@@QAEXAAVMGlxResolutionChangeObserver@@@Z @ 8 NONAME ; void CGlxResolutionUtility::RemoveObserver(class MGlxResolutionChangeObserver &) + ?PixelsToPoss@CGlxResolutionUtility@@QBEMABM@Z @ 9 NONAME ; float CGlxResolutionUtility::PixelsToPoss(float const &) const + ?PublishStateL@NGlxZoomStatePublisher@@YAXH@Z @ 10 NONAME ; void NGlxZoomStatePublisher::PublishStateL(int) + ?BackExitStatus@CGlxNavigationalState@@QAEHXZ @ 11 NONAME ; int CGlxNavigationalState::BackExitStatus(void) + ?SetToViewMode@CGlxNavigationalState@@QAEXXZ @ 12 NONAME ; void CGlxNavigationalState::SetToViewMode(void) + ?ForwardActivationEventL@CGlxBackServiceWrapper@@QAEHABVTDesC8@@H@Z @ 13 NONAME ; int CGlxBackServiceWrapper::ForwardActivationEventL(class TDesC8 const &, int) + ?SetScreenSizeL@CGlxResolutionManager@@QAEXVTSize@@@Z @ 14 NONAME ; void CGlxResolutionManager::SetScreenSizeL(class TSize) + ?RemoveObserver@CGlxNavigationalState@@QAEXAAVMGlxNavigationalStateObserver@@@Z @ 15 NONAME ; void CGlxNavigationalState::RemoveObserver(class MGlxNavigationalStateObserver &) + ?Close@CGlxNavigationalState@@QAEXXZ @ 16 NONAME ; void CGlxNavigationalState::Close(void) + ?AddObserverL@CGlxNavigationalState@@QAEXAAVMGlxNavigationalStateObserver@@@Z @ 17 NONAME ; void CGlxNavigationalState::AddObserverL(class MGlxNavigationalStateObserver &) + ?StartingLevel@CGlxNavigationalState@@QAEHXZ @ 18 NONAME ; int CGlxNavigationalState::StartingLevel(void) + ?NavigateToL@CGlxNavigationalState@@QAEXABVCMPXCollectionPath@@@Z @ 19 NONAME ; void CGlxNavigationalState::NavigateToL(class CMPXCollectionPath const &) + ?NavigateToParentL@CGlxNavigationalState@@QAEXXZ @ 20 NONAME ; void CGlxNavigationalState::NavigateToParentL(void) + ?NavigateToChildL@CGlxNavigationalState@@QAEXABVTGlxMediaId@@@Z @ 21 NONAME ; void CGlxNavigationalState::NavigateToChildL(class TGlxMediaId const &) + ?NewL@CGlxResolutionManager@@SAPAV1@XZ @ 22 NONAME ; class CGlxResolutionManager * CGlxResolutionManager::NewL(void) + ?NewLC@CGlxBackServiceWrapper@@SAPAV1@VTUid@@@Z @ 23 NONAME ; class CGlxBackServiceWrapper * CGlxBackServiceWrapper::NewLC(class TUid) + ?ViewingMode@CGlxNavigationalState@@QAE?AW4TViewingMode@NGlxNavigationalState@@XZ @ 24 NONAME ; enum NGlxNavigationalState::TViewingMode CGlxNavigationalState::ViewingMode(void) + ?Close@CGlxErrorPoster@@QAEXXZ @ 25 NONAME ; void CGlxErrorPoster::Close(void) + ?AddObserverL@CGlxResolutionUtility@@QAEXAAVMGlxResolutionChangeObserver@@@Z @ 26 NONAME ; void CGlxResolutionUtility::AddObserverL(class MGlxResolutionChangeObserver &) ?SetBackExitStatus@CGlxNavigationalState@@QAEXH@Z @ 27 NONAME ; void CGlxNavigationalState::SetBackExitStatus(int) - ?SetScreenSizeL@CGlxResolutionManager@@QAEXVTSize@@@Z @ 28 NONAME ; void CGlxResolutionManager::SetScreenSizeL(class TSize) - ?SetToViewMode@CGlxNavigationalState@@QAEXXZ @ 29 NONAME ; void CGlxNavigationalState::SetToViewMode(void) - ?StateLC@CGlxNavigationalState@@QBEPAVCMPXCollectionPath@@XZ @ 30 NONAME ; class CMPXCollectionPath * CGlxNavigationalState::StateLC(void) const - ?ViewingMode@CGlxNavigationalState@@QAE?AW4TViewingMode@NGlxNavigationalState@@XZ @ 31 NONAME ; enum NGlxNavigationalState::TViewingMode CGlxNavigationalState::ViewingMode(void) + ?HandleBackCommandL@CGlxBackServiceWrapper@@QAEHABVTDesC8@@H@Z @ 28 NONAME ; int CGlxBackServiceWrapper::HandleBackCommandL(class TDesC8 const &, int) + ?StateLC@CGlxNavigationalState@@QBEPAVCMPXCollectionPath@@XZ @ 29 NONAME ; class CMPXCollectionPath * CGlxNavigationalState::StateLC(void) const + ?InstanceL@CGlxNavigationalState@@SAPAV1@XZ @ 30 NONAME ; class CGlxNavigationalState * CGlxNavigationalState::InstanceL(void) + ?NewL@CGlxBackServiceWrapper@@SAPAV1@VTUid@@@Z @ 31 NONAME ; class CGlxBackServiceWrapper * CGlxBackServiceWrapper::NewL(class TUid) + ?InstanceL@CGlxResolutionUtility@@SAPAV1@XZ @ 32 NONAME ; class CGlxResolutionUtility * CGlxResolutionUtility::InstanceL(void) + ?ScreenSize@CGlxResolutionUtility@@QBE?AVTSize@@XZ @ 33 NONAME ; class TSize CGlxResolutionUtility::ScreenSize(void) const diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/commonui/eabi/glxcommonuiu.def --- a/photosgallery/commonui/eabi/glxcommonuiu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/commonui/eabi/glxcommonuiu.def Mon Jan 18 20:19:20 2010 +0200 @@ -6,34 +6,36 @@ _ZN21CGlxNavigationalState11ViewingModeEv @ 5 NONAME _ZN21CGlxNavigationalState12AddObserverLER29MGlxNavigationalStateObserver @ 6 NONAME _ZN21CGlxNavigationalState13SetToViewModeEv @ 7 NONAME - _ZN21CGlxNavigationalState14BackExitStatusEv @ 8 NONAME - _ZN21CGlxNavigationalState14RemoveObserverER29MGlxNavigationalStateObserver @ 9 NONAME - _ZN21CGlxNavigationalState16NavigateToChildLERK11TGlxMediaId @ 10 NONAME - _ZN21CGlxNavigationalState17NavigateToParentLEv @ 11 NONAME - _ZN21CGlxNavigationalState17SetBackExitStatusEi @ 12 NONAME - _ZN21CGlxNavigationalState21ActivatePreviousViewLEv @ 13 NONAME - _ZN21CGlxNavigationalState5CloseEv @ 14 NONAME - _ZN21CGlxNavigationalState9InstanceLEv @ 15 NONAME - _ZN21CGlxResolutionManager14SetScreenSizeLE5TSize @ 16 NONAME - _ZN21CGlxResolutionManager4NewLEv @ 17 NONAME - _ZN21CGlxResolutionManagerD0Ev @ 18 NONAME - _ZN21CGlxResolutionManagerD1Ev @ 19 NONAME - _ZN21CGlxResolutionManagerD2Ev @ 20 NONAME - _ZN21CGlxResolutionUtility12AddObserverLER28MGlxResolutionChangeObserver @ 21 NONAME - _ZN21CGlxResolutionUtility14RemoveObserverER28MGlxResolutionChangeObserver @ 22 NONAME - _ZN21CGlxResolutionUtility5CloseEv @ 23 NONAME - _ZN21CGlxResolutionUtility9InstanceLEv @ 24 NONAME - _ZN22CGlxBackServiceWrapper18HandleBackCommandLERK6TDesC8i @ 25 NONAME - _ZN22CGlxBackServiceWrapper23ForwardActivationEventLERK6TDesC8i @ 26 NONAME - _ZN22CGlxBackServiceWrapper4NewLE4TUid @ 27 NONAME - _ZN22CGlxBackServiceWrapper5NewLCE4TUid @ 28 NONAME - _ZN22NGlxZoomStatePublisher13PublishStateLEi @ 29 NONAME - _ZNK21CGlxNavigationalState7StateLCEv @ 30 NONAME - _ZNK21CGlxResolutionUtility10ScreenSizeEv @ 31 NONAME - _ZNK21CGlxResolutionUtility12PixelsToPossERKf @ 32 NONAME - _ZNK21CGlxResolutionUtility12PossToPixelsERKf @ 33 NONAME - _ZTI21CGlxNavigationalState @ 34 NONAME ; ## - _ZTI22CGlxBackServiceWrapper @ 35 NONAME ; ## - _ZTV21CGlxNavigationalState @ 36 NONAME ; ## - _ZTV22CGlxBackServiceWrapper @ 37 NONAME ; ## + _ZN21CGlxNavigationalState13StartingLevelEv @ 8 NONAME + _ZN21CGlxNavigationalState14BackExitStatusEv @ 9 NONAME + _ZN21CGlxNavigationalState14RemoveObserverER29MGlxNavigationalStateObserver @ 10 NONAME + _ZN21CGlxNavigationalState16NavigateToChildLERK11TGlxMediaId @ 11 NONAME + _ZN21CGlxNavigationalState16SetStartingLevelEi @ 12 NONAME + _ZN21CGlxNavigationalState17NavigateToParentLEv @ 13 NONAME + _ZN21CGlxNavigationalState17SetBackExitStatusEi @ 14 NONAME + _ZN21CGlxNavigationalState21ActivatePreviousViewLEv @ 15 NONAME + _ZN21CGlxNavigationalState5CloseEv @ 16 NONAME + _ZN21CGlxNavigationalState9InstanceLEv @ 17 NONAME + _ZN21CGlxResolutionManager14SetScreenSizeLE5TSize @ 18 NONAME + _ZN21CGlxResolutionManager4NewLEv @ 19 NONAME + _ZN21CGlxResolutionManagerD0Ev @ 20 NONAME + _ZN21CGlxResolutionManagerD1Ev @ 21 NONAME + _ZN21CGlxResolutionManagerD2Ev @ 22 NONAME + _ZN21CGlxResolutionUtility12AddObserverLER28MGlxResolutionChangeObserver @ 23 NONAME + _ZN21CGlxResolutionUtility14RemoveObserverER28MGlxResolutionChangeObserver @ 24 NONAME + _ZN21CGlxResolutionUtility5CloseEv @ 25 NONAME + _ZN21CGlxResolutionUtility9InstanceLEv @ 26 NONAME + _ZN22CGlxBackServiceWrapper18HandleBackCommandLERK6TDesC8i @ 27 NONAME + _ZN22CGlxBackServiceWrapper23ForwardActivationEventLERK6TDesC8i @ 28 NONAME + _ZN22CGlxBackServiceWrapper4NewLE4TUid @ 29 NONAME + _ZN22CGlxBackServiceWrapper5NewLCE4TUid @ 30 NONAME + _ZN22NGlxZoomStatePublisher13PublishStateLEi @ 31 NONAME + _ZNK21CGlxNavigationalState7StateLCEv @ 32 NONAME + _ZNK21CGlxResolutionUtility10ScreenSizeEv @ 33 NONAME + _ZNK21CGlxResolutionUtility12PixelsToPossERKf @ 34 NONAME + _ZNK21CGlxResolutionUtility12PossToPixelsERKf @ 35 NONAME + _ZTI21CGlxNavigationalState @ 36 NONAME + _ZTI22CGlxBackServiceWrapper @ 37 NONAME + _ZTV21CGlxNavigationalState @ 38 NONAME + _ZTV22CGlxBackServiceWrapper @ 39 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/commonui/inc/glxnavigationalstate.h --- a/photosgallery/commonui/inc/glxnavigationalstate.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/commonui/inc/glxnavigationalstate.h Mon Jan 18 20:19:20 2010 +0200 @@ -111,10 +111,30 @@ * Sets the mode to "view" */ IMPORT_C void SetToViewMode(); - + + /** + * Sets the BackExitStatus + * @param aStatus ETrue photos navigates to parent on Back EFalse photos exits on back. + */ IMPORT_C void SetBackExitStatus(TBool aStatus); + /** + * Gets the BackExitStatus + * @return BackExitStatus + */ IMPORT_C TBool BackExitStatus(); + + /** + * Sets the starting navigation level + * @param aLevel starting level + */ + IMPORT_C void SetStartingLevel(TInt aLevel); + + /** + * Gets the starting navigation level + * @return starting navigation level + */ + IMPORT_C TInt StartingLevel(); private: /** Constructor for singleton store */ @@ -127,8 +147,10 @@ /// Implementation CGlxNavigationalStateImp* iImp; -public: TBool iBackExitStatus; + + TInt iStartingLevel ; + }; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/commonui/src/glxnavigationalstate.cpp --- a/photosgallery/commonui/src/glxnavigationalstate.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/commonui/src/glxnavigationalstate.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -428,27 +428,60 @@ GLX_LOG_ENTRY_EXIT( "CGlxNavigationalState::ActivatePreviousViewL"); iImp->ActivatePreviousViewL(); } - + +// ----------------------------------------------------------------------------- +// Set the ViewingMode +// ----------------------------------------------------------------------------- +// EXPORT_C void CGlxNavigationalState::SetToViewMode() { - iImp->SetToViewMode(); - // inform the observers( only appui!! ) that the mode is view + iImp->SetToViewMode(); + // inform the observers( only appui!! ) that the mode is view } - + +// ----------------------------------------------------------------------------- +// Get the ViewingMode +// ----------------------------------------------------------------------------- +// EXPORT_C NGlxNavigationalState::TViewingMode CGlxNavigationalState::ViewingMode() { - return iImp->ViewingMode(); + return iImp->ViewingMode(); } - - +// ----------------------------------------------------------------------------- +// Set the BackExitStatus +// ----------------------------------------------------------------------------- +// EXPORT_C void CGlxNavigationalState::SetBackExitStatus(TBool aStatus) { iBackExitStatus = aStatus; } +// ----------------------------------------------------------------------------- +// Get the BackExitStatus +// ----------------------------------------------------------------------------- +// EXPORT_C TBool CGlxNavigationalState::BackExitStatus() { return iBackExitStatus; } -// EOF +// ----------------------------------------------------------------------------- +// Set the Starting navigation Level +// ----------------------------------------------------------------------------- +// +EXPORT_C void CGlxNavigationalState::SetStartingLevel(TInt aLevel) + { + iStartingLevel = aLevel; + } + +// ----------------------------------------------------------------------------- +// Get the Starting navigation Level +// ----------------------------------------------------------------------------- +// +EXPORT_C TInt CGlxNavigationalState::StartingLevel() + { + return iStartingLevel; + } + +// EOF + diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginalbums.h --- a/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginalbums.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginalbums.h Mon Jan 18 20:19:20 2010 +0200 @@ -112,11 +112,6 @@ TInt UpdateItem(TInt aItemIndex); /* - * This Updates the thumbnail/Preview list with thumbnails already present - */ - void HandleItemChanged(); - - /* * This Function is called when the collection recives a focus and losses the focus * @param aOn :True : The collection is in focus * : False : The collection lost the focus @@ -192,7 +187,6 @@ MLiwInterface* iCPSInterface; CLiwGenericParamList* iInParamList; CLiwGenericParamList* iOutParamList; - CPeriodic* iPeriodic; /// Owned: Media list MGlxMediaList* iMediaList; @@ -205,11 +199,6 @@ /// Own: Thumbnail Iterator TGlxSequentialIterator iThumbnailIterator; - RArray iPreviewItemCount; - - // Preview thumbnail index - TInt iProgressIndex; - }; #endif /*GLXCONTENTHARVESTERPLUGINALBUMS_H*/ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginall.h --- a/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginall.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginall.h Mon Jan 18 20:19:20 2010 +0200 @@ -112,11 +112,6 @@ TInt UpdateItem(TInt aItemIndex); /* - * This Updates the thumbnail/Preview list with thumbnails already present - */ - void HandleItemChanged(); - - /* * This Function is called when the collection recives a focus and losses the focus * @param aOn :True : The collection is in focus * : False : The collection lost the focus @@ -191,7 +186,6 @@ MLiwInterface* iCPSInterface; CLiwGenericParamList* iInParamList; CLiwGenericParamList* iOutParamList; - CPeriodic* iPeriodic; /// Owned: Media list MGlxMediaList* iMediaList; @@ -204,13 +198,6 @@ /// Own: Thumbnail Iterator TGlxSequentialIterator iThumbnailIterator; - RArray iPreviewItemCount; - - // Preview thumbnail index - TInt iProgressIndex; - - //this variable holds the value ,whether the collection is in focus or not - TBool iIsFocused; }; #endif /*GLXCONTENTHARVESTERPLUGINALL_H_*/ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginbase.h --- a/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginbase.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginbase.h Mon Jan 18 20:19:20 2010 +0200 @@ -87,10 +87,6 @@ */ TInt GetBitmapHandle() const; - /** - * Returns if the collection is in focus or not - */ - TBool IsFocused() const; /** * Updates the focus value of the collection to true or false diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginmonths.h --- a/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginmonths.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxcontentharvesterpluginmonths.h Mon Jan 18 20:19:20 2010 +0200 @@ -114,11 +114,6 @@ TInt UpdateItem(TInt aItemIndex); /* - * This Updates the thumbnail/Preview list with thumbnails already present - */ - void HandleItemChanged(); - - /* * This Function is called when the collection recives a focus and losses the focus * @param aOn :True : The collection is in focus * : False : The collection lost the focus @@ -194,7 +189,6 @@ MLiwInterface* iCPSInterface; CLiwGenericParamList* iInParamList; CLiwGenericParamList* iOutParamList; - CPeriodic* iPeriodic; /// Owned: Media list MGlxMediaList* iMediaList; @@ -207,13 +201,6 @@ /// Own: Thumbnail Iterator TGlxSequentialIterator iThumbnailIterator; - RArray iPreviewItemCount; - - // Preview thumbnail index - TInt iProgressIndex; - - //this variable holds the value ,whether the collection is in focus or not - TBool iIsFocused; }; #endif /*GLXCONTENTHARVESTERPLUGINMONTHS_H_*/ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxcontentharvesterplugintags.h --- a/photosgallery/contentharvesterplugin/inc/glxcontentharvesterplugintags.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxcontentharvesterplugintags.h Mon Jan 18 20:19:20 2010 +0200 @@ -112,11 +112,6 @@ TInt UpdateItem(TInt aItemIndex); /* - * This Updates the thumbnail/Preview list with thumbnails already present - */ - void HandleItemChanged(); - - /* * This Function is called when the collection recives a focus and losses the focus * @param aOn :True : The collection is in focus * : False : The collection lost the focus @@ -192,7 +187,6 @@ MLiwInterface* iCPSInterface; CLiwGenericParamList* iInParamList; CLiwGenericParamList* iOutParamList; - CPeriodic* iPeriodic; /// Owned: Media list MGlxMediaList* iMediaList; @@ -205,13 +199,6 @@ /// Own: Thumbnail Iterator TGlxSequentialIterator iThumbnailIterator; - RArray iPreviewItemCount; - - // Preview thumbnail index - TInt iProgressIndex; - - //this variable holds the value ,whether the collection is in focus or not - TBool iIsFocused; }; #endif /*GLXCONTENTHARVESTERPLUGINTAGS_H_*/ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/inc/glxmapconstants.h --- a/photosgallery/contentharvesterplugin/inc/glxmapconstants.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/inc/glxmapconstants.h Mon Jan 18 20:19:20 2010 +0200 @@ -52,7 +52,8 @@ const TInt KPreviewThumbnailFetchCount(15); //The Thumbnails to shown/fetched when the collection is not in focus const TInt KSinglePreviewThumbnail(1); - +// The preview item Index +const TInt KPreviewItemIndex = 0; //The constants to identify the plugin/collection const TInt KMaxInt = 0x7fffffff; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -40,12 +40,6 @@ // ============================ MEMBER FUNCTIONS ============================== -LOCAL_C TInt TimerCallbackL( TAny* aPtr ) - { - TRACER( "CGlxContentHarvesterPluginAlbums::TimerCallbackL" ); - static_cast(aPtr)->UpdateDataL(); - return KErrNone; - } // ---------------------------------------------------------------------------- // Constructor @@ -70,9 +64,6 @@ //Call the base class ConstructL CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated); - - iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); - iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); @@ -107,11 +98,6 @@ TRACER( "CGlxContentHarvesterPluginAlbums::~CGlxContentHarvesterPluginAlbums" ); DestroyMedialist(); - if ( iPeriodic ) - { - iPeriodic->Cancel(); - } - delete iPeriodic; } // ---------------------------------------------------------------------------- @@ -121,31 +107,31 @@ void CGlxContentHarvesterPluginAlbums::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginAlbums::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::UpdateDataL(),iProgressIndex=%d",iProgressIndex); - TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); - if(ret != KErrNotFound) + return; + } + + if (iMediaList->Count()) + { + TInt ret = UpdateItem(KPreviewItemIndex); + if (ret != KErrNotFound) { //Updates the thumbnail in the collection UpdateDataInCPSL(ret); } - else - { - UpdateDataInCPSL(GetBitmapHandle()); - } } else { // Show previous thumbnail until the new thumbnail is // fecthed.Added this check to avoid flicker - if(!GetCHPlugin()->IsRefreshNeeded() || (iMediaList->Count() == 0)) - { - //Don't Show the Thumbnail/Show nothing - GLX_LOG_INFO("CGlxContentHarvesterPluginAlbums::UpdateDataL() --O"); - UpdateDataInCPSL(GetBitmapHandle()); - } - + if (!GetCHPlugin()->IsRefreshNeeded() || (iMediaList->Count() == 0)) + { + //Don't Show the Thumbnail/Show nothing + GLX_LOG_INFO("CGlxContentHarvesterPluginAlbums::UpdateDataL() --O"); + UpdateDataInCPSL(GetBitmapHandle()); + } } } @@ -165,52 +151,6 @@ } // ---------------------------------------------------------------------------- -// CGlxContentHarvesterPluginAlbums::HandleItemChanged() -// ---------------------------------------------------------------------------- -// -void CGlxContentHarvesterPluginAlbums::HandleItemChanged() - { - TRACER("CGlxContentHarvesterPluginAlbums::HandleItemChanged"); - - iProgressIndex = 0; - iPreviewItemCount.Reset(); - - TSize gridIconSize = GetGridIconSize(); - TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail, - GlxFullThumbnailAttributeId( ETrue, gridIconSize.iWidth, gridIconSize.iHeight ) ); - if(iMediaList) - { - TInt count = iMediaList->Count(); - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums:: HandleItemChanged ,count=%d",count); - - TBool inFocus = IsFocused(); - for(TInt aItemIndex = 0; aItemIndex < count; aItemIndex++) - { - const TGlxMedia& item = iMediaList->Item( aItemIndex ); - const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); - if (value) - { - iPreviewItemCount.InsertInOrder(aItemIndex); - if(!inFocus) - { - //if the collection is in Focus,retrieve only one thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::HandleItemChanged,iRange=1,aItemIndex=%d",aItemIndex); - break; - } - else if(iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == count ) - { - //if the collection is not in Focus,retrieve 15 thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::HandleItemChanged,iRange=15,aItemIndex=%d",aItemIndex); - break; - } - - } - } - } - } - -// ---------------------------------------------------------------------------- // CGlxContentHarvesterPluginAlbums::UpdateDataInCPSL() // ---------------------------------------------------------------------------- // @@ -251,14 +191,6 @@ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); if (value) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::UpdateItem,iProgressIndex=%d ",iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iPreviewItemCount.Count() || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } return value->iBitmap->Handle(); } return KErrNotFound; @@ -275,7 +207,7 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::ActivateL aOn =%d",aOn); SetFocus(aOn); - if (IsMatrixMenuInForegroundL() && aOn && !iPeriodic->IsActive() ) + if (IsMatrixMenuInForegroundL() && aOn ) { if(GetCHPlugin()->IsRefreshNeeded()) { @@ -288,10 +220,6 @@ //to update the thumbnails on the focus , need to call the below function UpdatePreviewThumbnailListL(); } - - iPeriodic->Start( KTimerInterval, - KTimerInterval, - TCallBack( TimerCallbackL, this ) ); } else if ( !aOn ) { @@ -302,7 +230,6 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::ActivateL !aOn =%d and matrix not in foreground",aOn); GetCHPlugin()->UpdatePlugins(aOn); } - iPeriodic->Cancel(); } } @@ -370,25 +297,12 @@ if (value) { GLX_LOG_INFO("CGlxContentHarvesterPluginAlbums::HandleAttributesAvailableL Thumbnail is present "); - iPreviewItemCount.InsertInOrder(aItemIndex); - //if the collection on the matrix menu is not focused,then show only one thumbnail - if(!IsFocused()) - { - //if one thumbnail is fetched,it is sufficent when the collection is not in focus. - //remove the observer as client need not listen to the callbacks - GLX_LOG_INFO("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL,one thumbnail fetched"); - UpdateDataInCPSL( value->iBitmap->Handle()); - iMediaList->RemoveMediaListObserver( this ); - } - else if (iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == aList->Count() ) - { - GLX_LOG_INFO1("CGlxContentHarvesterPluginAlbums::HandleAttributesAvailableL,media list count=%d",aList->Count()); - //if the PreviewItemCount equals 15 or if it is eqaul to the total count - //remove the observer as client need not listen to the callbacks - iMediaList->RemoveMediaListObserver( this ); - } + // Update the preview thumbnail + //remove the observer as client need not listen to the callbacks + GLX_LOG_INFO("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL,one thumbnail fetched"); + UpdateDataInCPSL( value->iBitmap->Handle()); + iMediaList->RemoveMediaListObserver( this ); }//end of check against value }//end of attribute match } @@ -459,16 +373,8 @@ TRACER( "CGlxContentHarvesterPluginAlbums::CreateMedialistL" ); if(!iMediaList) { - //if the collection is in focus then , create media list with context of 15 items else - // with context of single item. - if(IsFocused()) - { - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - } - else - { - iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); - } + iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); + iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( KGlxCollectionPluginAlbumsImplementationUid ), iUriAttributeContext,iThumbnailAttributeContext); @@ -491,8 +397,6 @@ { //media list is not created yet,create it. CreateMedialistL( ); - //This is called to show the preview thumbnails. If no thumbnails are - //present, display nothing UpdateDataL(); } else @@ -501,28 +405,12 @@ { ContainerCacheCleanupL(iMediaList); } - if(IsFocused()) - { - //1.This loop is executed,when the collection gets focus - //2.This loop is executed,when the contents are updated for this collection - //and this collection has focus,so 15 thumbnails are fetched. - HandleItemChanged(); - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - RemoveContextAndObserver(); - AddContextAndObserverL(); - } - else - { - //1.This loop is executed,when the contents are updated for this collection - //and this collection doesn't have the focus,so only one thumbnail is fetched. - //here we need to fetch only one item //1.if the content is deleted,then creating a context doesn't fetch the attributes //2.if the content is added and the content is not the latest as per the sorted order of the // media list,then the thumbnails are not fetched. // so show the first available thumbnail in the media list. - HandleItemChanged(); UpdateDataL(); //Adding the context doesn't gaurantee we get a call back for @@ -536,7 +424,7 @@ RemoveContextAndObserver(); AddContextAndObserverL(); } - } + } // --------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginall.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginall.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginall.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -40,14 +40,6 @@ #include "glxmapconstants.h" -// ============================ MEMBER FUNCTIONS ============================== -LOCAL_C TInt TimerCallbackL( TAny* aPtr ) - { - TRACER( "CGlxContentHarvesterPluginAll::TimerCallbackL" ); - static_cast(aPtr)->UpdateDataL(); - return KErrNone; - } - // ---------------------------------------------------------------------------- // Constructor // ---------------------------------------------------------------------------- @@ -71,9 +63,7 @@ //Call the base class ConstructL,to create the default thumbnail CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated); - - iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); - + iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); @@ -108,12 +98,6 @@ TRACER( "CGlxContentHarvesterPluginAll::~CGlxContentHarvesterPluginAll" ); DestroyMedialist(); - - if ( iPeriodic ) - { - iPeriodic->Cancel(); - } - delete iPeriodic; } // ---------------------------------------------------------------------------- @@ -123,30 +107,31 @@ void CGlxContentHarvesterPluginAll::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginAll::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::UpdateDataL(),iProgressIndex=%d",iProgressIndex); - TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); - if(ret != KErrNotFound) + return; + } + + if (iMediaList->Count()) + { + TInt ret = UpdateItem(KPreviewItemIndex); + if (ret != KErrNotFound) { //Updates the thumbnail in the collection UpdateDataInCPSL(ret); } - else - { - UpdateDataInCPSL(GetBitmapHandle()); - } } else { // Show previous thumbnail until the new thumbnail is // fecthed.Added this check to avoid flicker - if(iMediaList->Count() == 0) - { - //Don't Show the Thumbnail/Show nothing - GLX_LOG_INFO("CGlxContentHarvesterPluginAll::UpdateDataL() --O"); - UpdateDataInCPSL(GetBitmapHandle()); - } + if (iMediaList->Count() == 0) + { + //Don't Show the Thumbnail/Show nothing + GLX_LOG_INFO("CGlxContentHarvesterPluginAll::UpdateDataL() --O"); + UpdateDataInCPSL(GetBitmapHandle()); + } } } @@ -173,52 +158,6 @@ } // ---------------------------------------------------------------------------- -// CGlxContentHarvesterPluginAll::HandleItemChanged() -// ---------------------------------------------------------------------------- -// -void CGlxContentHarvesterPluginAll::HandleItemChanged() - { - TRACER("CGlxContentHarvesterPluginAll::HandleItemChanged"); - - iProgressIndex = 0; - iPreviewItemCount.Reset(); - - TSize gridIconSize = GetGridIconSize(); - TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail, - GlxFullThumbnailAttributeId( ETrue, gridIconSize.iWidth, gridIconSize.iHeight ) ); - if(iMediaList) - { - TInt count = iMediaList->Count(); - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll:: HandleItemChanged ,count=%d",count); - - TBool inFocus = IsFocused(); - for(TInt aItemIndex = 0; aItemIndex < count; aItemIndex++) - { - const TGlxMedia& item = iMediaList->Item( aItemIndex ); - const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); - if (value) - { - iPreviewItemCount.InsertInOrder(aItemIndex); - if(!inFocus) - { - //if the collection is NOT in Focus,retrive only one thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::HandleItemChanged,Range=1,aItemIndex=%d",aItemIndex); - break; - } - else if(iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == count ) - { - //if the collection is not in Focus,retrive 15 thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::HandleItemChanged,Range=15,aItemIndex=%d",aItemIndex); - break; - } - - } - } - } - } - -// ---------------------------------------------------------------------------- // CGlxContentHarvesterPluginAll::UpdateDataInCPSL() // ---------------------------------------------------------------------------- // @@ -260,14 +199,6 @@ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); if (value) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::UpdateItem,iProgressIndex=%d ",iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iPreviewItemCount.Count() || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } return value->iBitmap->Handle(); } return KErrNotFound; @@ -284,7 +215,7 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::ActivateL aOn =%d",aOn); SetFocus(aOn); - if (IsMatrixMenuInForegroundL() && aOn && !iPeriodic->IsActive() ) + if (IsMatrixMenuInForegroundL() && aOn ) { if(GetCHPlugin()->IsRefreshNeeded()) { @@ -297,10 +228,6 @@ //to update the thumbnails on the focus , need to call the below function UpdatePreviewThumbnailListL(); } - - iPeriodic->Start( KTimerInterval, - KTimerInterval, - TCallBack( TimerCallbackL, this ) ); } else if ( !aOn ) { @@ -311,7 +238,6 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::ActivateL !aOn =%d and matrix not in foreground",aOn); GetCHPlugin()->UpdatePlugins(aOn); } - iPeriodic->Cancel(); } } @@ -378,25 +304,12 @@ if (value) { GLX_LOG_INFO("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL Thumbnail is present "); - iPreviewItemCount.InsertInOrder(aItemIndex); - //if the collection on the matrix menu is not focused,then show only one thumbnail - if(!IsFocused()) - { - //if one thumbnail is fetched,it is sufficent when the collection is not in focus. - //remove the observer as client need not listen to the callbacks - GLX_LOG_INFO("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL,one thumbnail fetched"); - UpdateDataInCPSL( value->iBitmap->Handle()); - iMediaList->RemoveMediaListObserver( this ); - } - else if (iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == aList->Count() ) - { - //if the PreviewItemCount equals 15 or if it is eqaul to the total count - //remove the observer as client need not listen to the callbacks - GLX_LOG_INFO1("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL,media list count=%d",aList->Count()); - iMediaList->RemoveMediaListObserver( this ); - } + // Update the preview thumbnail + //remove the observer as client need not listen to the callbacks + GLX_LOG_INFO("CGlxContentHarvesterPluginAll::HandleAttributesAvailableL,one thumbnail fetched"); + UpdateDataInCPSL( value->iBitmap->Handle()); + iMediaList->RemoveMediaListObserver( this ); }//end of check against value }//end of attribute match } @@ -468,21 +381,12 @@ TRACER( "CGlxContentHarvesterPluginAll::CreateMedialistL" ); if(!iMediaList) { - //if the collection is in focus then , create media list with context of 15 items else - // with context of single item. - if(IsFocused()) - { - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - } - else - { - iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); - } + iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( KGlxCollectionPluginAllImplementationUid ), iUriAttributeContext,iThumbnailAttributeContext); - + AddContextAndObserverL(); } } @@ -501,35 +405,10 @@ { //medis list is not created yet,create it. CreateMedialistL( ); - //This is called to show the preview thumbnails. If no thumbnails are - //present, display nothing UpdateDataL(); } - else if(IsFocused()) - { - //1.This loop is executed,when the collection gets focus - //2.This loop is executed,when the contents are added/deleted for this collection - //and this collection has focus,so 15 thumbnails are fetched. - //say for example - //1.focus is on "All" collection/view and you insert MMC - //2.capture in burst mode and return quickly to photos suite and focus on "All" - HandleItemChanged(); - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - RemoveContextAndObserver(); - AddContextAndObserverL(); - } else { - //1.This loop is executed,when the contents are updated for this collection - //and this collection doesn't have the focus,so only one thumbnail is fetched. - - //here we need to fetch only one item - //1.if the content is deleted,then creating a context doesn't fetch the attributes - //2.if the content is added and the content is not the latest as per the sorted order of the - // media list,then the thumbnails are not fetched. - // so show the first available thumbnail in the media list. - - HandleItemChanged(); UpdateDataL(); //Adding the context doesn't gaurantee we get a call back for diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginbase.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginbase.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginbase.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -488,16 +488,6 @@ return mediaList; } -// --------------------------------------------------------------------------- -// CGlxContentHarvesterPluginBase::IsFocused -// --------------------------------------------------------------------------- -// -TBool CGlxContentHarvesterPluginBase::IsFocused() const - { - TRACER( "CGlxContentHarvesterPluginBase::IsFocused" ); - GLX_LOG_INFO1("CGlxContentHarvesterPluginBase::IsFocused,isFocused=%d",iIsFocused); - return iIsFocused; - } // --------------------------------------------------------------------------- // CGlxContentHarvesterPluginBase::Focused diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterplugincaptured.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugincaptured.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugincaptured.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -124,11 +124,17 @@ void CGlxContentHarvesterPluginCaptured::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginCaptured::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) + { + return; + } + + if (iMediaList->Count() && iPreviewItemCount.Count()) { GLX_LOG_INFO1("CGlxContentHarvesterPluginCaptured::UpdateDataL(),iProgressIndex=%d",iProgressIndex); TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); - if(ret != KErrNotFound) + if (ret != KErrNotFound) { //Updates the thumbnail in the collection UpdateDataInCPSL(ret); @@ -141,13 +147,13 @@ else { // Show previous thumbnail until the new thumbnail is - // fecthed.Added this check to avoid flicker - if(iMediaList->Count() == 0) - { - //Don't Show the Thumbnail/Show nothing - GLX_LOG_INFO("CGlxContentHarvesterPluginCaptured::UpdateDataL() --O"); - UpdateDataInCPSL(GetBitmapHandle()); - } + // fecthed.Added this check to avoid flicker + if (iMediaList->Count() == 0) + { + //Don't Show the Thumbnail/Show nothing + GLX_LOG_INFO("CGlxContentHarvesterPluginCaptured::UpdateDataL() --O"); + UpdateDataInCPSL(GetBitmapHandle()); + } } } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterplugindownloads.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugindownloads.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugindownloads.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -125,7 +125,13 @@ void CGlxContentHarvesterPluginDownloads::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginDownloads::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) + { + return; + } + + if (iMediaList->Count() && iPreviewItemCount.Count()) { GLX_LOG_INFO1("CGlxContentHarvesterPluginDownloads::UpdateDataL(),iProgressIndex=%d",iProgressIndex); TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginmonths.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginmonths.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginmonths.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -39,13 +39,8 @@ #include "glxcontentharvesterplugin.hrh" #include "glxmapconstants.h" + // ============================ MEMBER FUNCTIONS ============================== -LOCAL_C TInt TimerCallbackL( TAny* aPtr ) - { - TRACER( "CGlxContentHarvesterPluginMonths::TimerCallbackL" ); - static_cast(aPtr)->UpdateDataL(); - return KErrNone; - } // ---------------------------------------------------------------------------- // Constructor @@ -72,8 +67,6 @@ //Call the base class ConstructL to create default bitmap CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated); - iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); - iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); @@ -107,12 +100,6 @@ { TRACER( "CGlxContentHarvesterPluginMonths::~CGlxContentHarvesterPluginMonths" ); DestroyMedialist(); - if ( iPeriodic ) - { - iPeriodic->Cancel(); - } - delete iPeriodic; - } // ---------------------------------------------------------------------------- @@ -122,19 +109,20 @@ void CGlxContentHarvesterPluginMonths::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginMonths::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::UpdateDataL(),iProgressIndex=%d",iProgressIndex); - TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); + return; + } + + if (iMediaList->Count()) + { + TInt ret = UpdateItem(KPreviewItemIndex); if(ret != KErrNotFound) { //Updates the thumbnail in the collection UpdateDataInCPSL(ret); } - else - { - UpdateDataInCPSL(GetBitmapHandle()); - } } else { @@ -165,52 +153,6 @@ } // ---------------------------------------------------------------------------- -// CGlxContentHarvesterPluginMonths::HandleItemChanged() -// ---------------------------------------------------------------------------- -// -void CGlxContentHarvesterPluginMonths::HandleItemChanged() - { - TRACER("CGlxContentHarvesterPluginMonths::HandleItemChanged"); - - iProgressIndex = 0; - iPreviewItemCount.Reset(); - - TSize gridIconSize = GetGridIconSize(); - TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail, - GlxFullThumbnailAttributeId( ETrue, gridIconSize.iWidth, gridIconSize.iHeight ) ); - if(iMediaList) - { - TInt count = iMediaList->Count(); - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths:: HandleItemChanged ,count=%d",count); - - TBool inFocus = IsFocused(); - for(TInt aItemIndex = 0; aItemIndex < count; aItemIndex++) - { - const TGlxMedia& item = iMediaList->Item( aItemIndex ); - const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); - if (value) - { - iPreviewItemCount.InsertInOrder(aItemIndex); - if(!inFocus) - { - //if the collection is NOT in Focus,retrieve only one thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::HandleItemChanged,Range=1,aItemIndex=%d",aItemIndex); - break; - } - else if(iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == count ) - { - //if the collection is not in Focus,retrieve 15 thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::HandleItemChanged,Range=15,aItemIndex=%d",aItemIndex); - break; - } - - } - } - } - } - -// ---------------------------------------------------------------------------- // CGlxContentHarvesterPluginMonths::UpdateDataInCPSL() // ---------------------------------------------------------------------------- // @@ -251,14 +193,6 @@ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); if (value) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::UpdateItem,iProgressIndex=%d ",iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iPreviewItemCount.Count() || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } return value->iBitmap->Handle(); } return KErrNotFound; @@ -275,7 +209,7 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::ActivateL aOn =%d",aOn); SetFocus(aOn); - if (IsMatrixMenuInForegroundL() && aOn && !iPeriodic->IsActive() ) + if (IsMatrixMenuInForegroundL() && aOn ) { if(GetCHPlugin()->IsRefreshNeeded()) { @@ -288,10 +222,6 @@ //to update the thumbnails on the focus , need to call the below function UpdatePreviewThumbnailListL(); } - - iPeriodic->Start( KTimerInterval, - KTimerInterval, - TCallBack( TimerCallbackL, this ) ); } else if ( !aOn ) { @@ -302,7 +232,6 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::ActivateL !aOn =%d and matrix not in foreground",aOn); GetCHPlugin()->UpdatePlugins(aOn); } - iPeriodic->Cancel(); } } @@ -369,25 +298,12 @@ if (value) { GLX_LOG_INFO("CGlxContentHarvesterPluginMonths::HandleAttributesAvailableL Thumbnail is present "); - iPreviewItemCount.InsertInOrder(aItemIndex); - //if the collection on the matrix menu is not focused,then show only one thumbnail - if(!IsFocused()) - { + // Update the preview thumbnail + //remove the observer as client need not listen to the callbacks GLX_LOG_INFO("CGlxContentHarvesterPluginMonths::HandleAttributesAvailableL,one thumbnail fetched"); - UpdateDataInCPSL( value->iBitmap->Handle()); - //if one thumbnail is fetched,it is sufficent when the collection is not in focus. - //remove the observer as client need not listen to the callbacks - iMediaList->RemoveMediaListObserver( this ); - } - else if (iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == aList->Count() ) - { - GLX_LOG_INFO1("CGlxContentHarvesterPluginMonths::HandleAttributesAvailableL,media list count=%d",aList->Count()); - //if the PreviewItemCount equals 15 or if it is eqaul to the total count - //remove the observer as client need not listen to the callbacks - iMediaList->RemoveMediaListObserver( this ); - } + UpdateDataInCPSL( value->iBitmap->Handle()); + iMediaList->RemoveMediaListObserver( this ); }//end of check against value }//end of attribute match } @@ -459,16 +375,7 @@ TRACER( "CGlxContentHarvesterPluginMonths::CreateMedialistL" ); if(!iMediaList) { - //if the collection is in focus then , create media list with context of 15 items else - // with context of single item. - if(IsFocused()) - { - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - } - else - { - iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); - } + iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( KGlxCollectionPluginMonthsImplementationUid ), @@ -489,10 +396,8 @@ //this function is executed or when the collection recives the focus. if(!iMediaList) { - //medis list is not created yet,create it. + //media list is not created yet,create it. CreateMedialistL( ); - //This is called to show the preview thumbnails. If no thumbnails are - //present, display nothing UpdateDataL(); } else @@ -501,28 +406,12 @@ { ContainerCacheCleanupL(iMediaList); } - if(IsFocused()) - { - //1.This loop is executed,when the collection gets focus - //2.This loop is executed,when the contents are updated for this collection - //and this collection has focus,so 15 thumbnails are fetched. - HandleItemChanged(); - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - RemoveContextAndObserver(); - AddContextAndObserverL(); - } - else - { - //1.This loop is executed,when the contents are updated for this collection - //and this collection doesn't have the focus,so only one thumbnail is fetched. - //here we need to fetch only one item //1.if the content is deleted,then creating a context doesn't fetch the attributes //2.if the content is added and the content is not the latest as per the sorted order of the // media list,then the thumbnails are not fetched. // so show the first available thumbnail in the media list. - HandleItemChanged(); UpdateDataL(); //Adding the context doesn't gaurantee we get a call back for @@ -536,7 +425,7 @@ RemoveContextAndObserver(); AddContextAndObserverL(); } - } + } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/contentharvesterplugin/src/glxcontentharvesterplugintags.cpp --- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugintags.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterplugintags.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -38,13 +38,8 @@ #include "glxcontentharvesterplugin.hrh" #include "glxmapconstants.h" + // ============================ MEMBER FUNCTIONS ============================== -LOCAL_C TInt TimerCallbackL( TAny* aPtr ) - { - TRACER( "CGlxContentHarvesterPluginTags::TimerCallbackL" ); - static_cast(aPtr)->UpdateDataL(); - return KErrNone; - } // ---------------------------------------------------------------------------- // Constructor @@ -71,8 +66,6 @@ //Call the base class ConstructL to create default bitmap CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated); - iPeriodic = CPeriodic::NewL( CActive::EPriorityLow ); - iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); @@ -108,12 +101,6 @@ TRACER( "CGlxContentHarvesterPluginTags::~CGlxContentHarvesterPluginTags" ); DestroyMedialist(); - if ( iPeriodic ) - { - iPeriodic->Cancel(); - } - delete iPeriodic; - } // ---------------------------------------------------------------------------- @@ -123,30 +110,31 @@ void CGlxContentHarvesterPluginTags::UpdateDataL() { TRACER( "CGlxContentHarvesterPluginTags::UpdateDataL" ); - if(iMediaList && iMediaList->Count() && iPreviewItemCount.Count() ) + + if (!iMediaList) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::UpdateDataL(),iProgressIndex=%d",iProgressIndex); - TInt ret = UpdateItem(iPreviewItemCount[iProgressIndex]); - if(ret != KErrNotFound) + return; + } + + if (iMediaList->Count()) + { + TInt ret = UpdateItem(KPreviewItemIndex); + if (ret != KErrNotFound) { //Updates the thumbnail in the collection UpdateDataInCPSL(ret); } - else - { - UpdateDataInCPSL(GetBitmapHandle()); - } } else { // Show previous thumbnail until the new thumbnail is // fecthed.Added this check to avoid flicker - if(!GetCHPlugin()->IsRefreshNeeded() || (iMediaList->Count() == 0)) - { - //Don't Show the Thumbnail/Show nothing - GLX_LOG_INFO("CGlxContentHarvesterPluginTags::UpdateDataL() --O"); - UpdateDataInCPSL(GetBitmapHandle()); - } + if (!GetCHPlugin()->IsRefreshNeeded() || (iMediaList->Count() == 0)) + { + //Don't Show the Thumbnail/Show nothing + GLX_LOG_INFO("CGlxContentHarvesterPluginTags::UpdateDataL() --O"); + UpdateDataInCPSL(GetBitmapHandle()); + } } } @@ -165,51 +153,6 @@ return KErrNone; } -// ---------------------------------------------------------------------------- -// CGlxContentHarvesterPluginTags::HandleItemChanged() -// ---------------------------------------------------------------------------- -// -void CGlxContentHarvesterPluginTags::HandleItemChanged() - { - TRACER("CGlxContentHarvesterPluginTags::HandleItemChanged"); - - iProgressIndex = 0; - iPreviewItemCount.Reset(); - - TSize gridIconSize = GetGridIconSize(); - TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail, - GlxFullThumbnailAttributeId( ETrue, gridIconSize.iWidth, gridIconSize.iHeight ) ); - if(iMediaList) - { - TInt count = iMediaList->Count(); - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags:: HandleItemChanged ,count=%d",count); - - TBool inFocus = IsFocused(); - for(TInt aItemIndex = 0; aItemIndex < count; aItemIndex++) - { - const TGlxMedia& item = iMediaList->Item( aItemIndex ); - const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); - if (value) - { - iPreviewItemCount.InsertInOrder(aItemIndex); - if(!inFocus) - { - //if the collection is in Focus,retrieve only one thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::HandleItemChanged,iRange=1,aItemIndex=%d",aItemIndex); - break; - } - else if(iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == count ) - { - //if the collection is not in Focus,retrieve 15 thumbnail and break - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::HandleItemChanged,iRange=15,aItemIndex=%d",aItemIndex); - break; - } - - } - } - } - } // ---------------------------------------------------------------------------- // CGlxContentHarvesterPluginTags::UpdateDataInCPSL() @@ -252,14 +195,6 @@ const CGlxThumbnailAttribute* value = item.ThumbnailAttribute( thumbnailAttribute ); if (value) { - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::UpdateItem,iProgressIndex=%d ",iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iPreviewItemCount.Count() || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } return value->iBitmap->Handle(); } return KErrNotFound; @@ -276,7 +211,7 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::ActivateL aOn =%d",aOn); SetFocus(aOn); - if (IsMatrixMenuInForegroundL() && aOn && !iPeriodic->IsActive() ) + if (IsMatrixMenuInForegroundL() && aOn ) { if(GetCHPlugin()->IsRefreshNeeded()) { @@ -289,10 +224,6 @@ //to update the thumbnails on the focus , need to call the below function UpdatePreviewThumbnailListL(); } - - iPeriodic->Start( KTimerInterval, - KTimerInterval, - TCallBack( TimerCallbackL, this ) ); } else if ( !aOn ) { @@ -303,7 +234,6 @@ GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::ActivateL !aOn =%d and matrix not in foreground",aOn); GetCHPlugin()->UpdatePlugins(aOn); } - iPeriodic->Cancel(); } } @@ -370,25 +300,12 @@ if (value) { GLX_LOG_INFO("CGlxContentHarvesterPluginTags::HandleAttributesAvailableL Thumbnail is present "); - iPreviewItemCount.InsertInOrder(aItemIndex); - //if the collection on the matrix menu is not focused,then show only one thumbnail - if(!IsFocused()) - { + // Update the preview thumbnail + //remove the observer as client need not listen to the callbacks GLX_LOG_INFO("CGlxContentHarvesterPluginTags::HandleAttributesAvailableL,one thumbnail fetched"); - UpdateDataInCPSL( value->iBitmap->Handle()); - //if one thumbnail is fetched,it is sufficent when the collection is not in focus. - //remove the observer as client need not listen to the callbacks - iMediaList->RemoveMediaListObserver( this ); - } - else if (iPreviewItemCount.Count() == KPreviewThumbnailFetchCount || - iPreviewItemCount.Count() == aList->Count() ) - { - GLX_LOG_INFO1("CGlxContentHarvesterPluginTags::HandleAttributesAvailableL,media list count=%d",aList->Count()); - //if the PreviewItemCount equals 15 or if it is eqaul to the total count - //remove the observer as client need not listen to the callbacks - iMediaList->RemoveMediaListObserver( this ); - } + UpdateDataInCPSL( value->iBitmap->Handle()); + iMediaList->RemoveMediaListObserver( this ); }//end of check against value }//end of attribute match } @@ -460,17 +377,8 @@ TRACER( "CGlxContentHarvesterPluginTags::CreateMedialistL" ); if(!iMediaList) { - //if the collection is in focus then , create media list with context of 15 items else - // with context of single item. - if(IsFocused()) - { - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - } - else - { iThumbnailIterator.SetRange( KSinglePreviewThumbnail ); - } - + iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( KGlxTagCollectionPluginImplementationUid ), iUriAttributeContext, iThumbnailAttributeContext); @@ -491,10 +399,8 @@ //this function is executed or when the collection recives the focus. if(!iMediaList) { - //medis list is not created yet,create it. + //media list is not created yet,create it. CreateMedialistL( ); - //This is called to show the preview thumbnails. If no thumbnails are - //present, display nothing UpdateDataL(); } else @@ -503,28 +409,12 @@ { ContainerCacheCleanupL(iMediaList); } - if(IsFocused()) - { - //1.This loop is executed,when the collection gets focus - //2.This loop is executed,when the contents are updated for this collection - //and this collection has focus,so 15 thumbnails are fetched. - HandleItemChanged(); - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); - RemoveContextAndObserver(); - AddContextAndObserverL(); - } - else - { - //1.This loop is executed,when the contents are updated for this collection - //and this collection doesn't have the focus,so only one thumbnail is fetched. - //here we need to fetch only one item //1.if the content is deleted,then creating a context doesn't fetch the attributes //2.if the content is added and the content is not the latest as per the sorted order of the // media list,then the thumbnails are not fetched. // so show the first available thumbnail in the media list. - HandleItemChanged(); UpdateDataL(); //Adding the context doesn't gaurantee we get a call back for @@ -538,7 +428,7 @@ RemoveContextAndObserver(); AddContextAndObserverL(); } - } + } // --------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/controllers/fetcher/src/glxfetcherdialog.cpp --- a/photosgallery/controllers/fetcher/src/glxfetcherdialog.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/controllers/fetcher/src/glxfetcherdialog.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -44,7 +44,6 @@ #include "glxfetchercontainer.h" #include "glxfetcher.hrh" -#define GetAppUi() (dynamic_cast(iEikonEnv->EikAppUi())) const TInt KControlId = 1; //----------------------------------------------------------------------------- @@ -92,9 +91,9 @@ if(iFetcherContainer) { // Restore the Toolbar as it was in the Calling application - if(GetAppUi()->CurrentFixedToolbar()) // there is Hardware Specific Output for Fixed ToolBar + if(iAvkonAppUi->CurrentFixedToolbar()) // there is Hardware Specific Output for Fixed ToolBar { - GetAppUi()->CurrentFixedToolbar()->SetToolbarVisibility(ETrue); + iAvkonAppUi->CurrentFixedToolbar()->SetToolbarVisibility(ETrue); } TRAP_IGNORE(iFetcherContainer->SetPreviousTitleL()); @@ -116,9 +115,9 @@ CAknDialog::ConstructL( R_MULTISELECT_FETCHER_MENUBAR ); // Get the Instance of the toolbar and disable it as it is note required in the Fetcher Application - if(GetAppUi()->CurrentFixedToolbar()) // there is Hardware Specific Output for Fixed ToolBar + if (iAvkonAppUi->CurrentFixedToolbar()) // there is Hardware Specific Output for Fixed ToolBar { - GetAppUi()->CurrentFixedToolbar()->SetToolbarVisibility(EFalse); + iAvkonAppUi->CurrentFixedToolbar()->SetToolbarVisibility(EFalse); } // Get the Hitchcock environment. iUiUtility = CGlxUiUtility::UtilityL(); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/gallery/group/glx_reg.rss --- a/photosgallery/gallery/group/glx_reg.rss Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/gallery/group/glx_reg.rss Mon Jan 18 20:19:20 2010 +0200 @@ -31,6 +31,4 @@ // localisable_resource_file="\\resource\\apps\\glx_loc"; localisable_resource_id = R_GLX_LOCALISABLE_APP_INFO; - // - hidden = KAppIsHidden; } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/gallery/inc/glxappui.h --- a/photosgallery/gallery/inc/glxappui.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/gallery/inc/glxappui.h Mon Jan 18 20:19:20 2010 +0200 @@ -62,6 +62,10 @@ //OOM Method void HandleApplicationSpecificEventL(TInt aEventType, const TWsEvent& aWsEvent); + // Callback for periodic timer, static, + static TInt PeriodicCallback( TAny* aPtr ); + //nonstatic func called from periodic timer + void PeriodicCallback(); private: // From CEikAppUi MCoeMessageObserver::TMessageResponse HandleMessageL( @@ -213,7 +217,11 @@ */ TBool iEndKeyPressed; -}; + /** + *Timer to check for IAD updates 30 seconds after application startup. + */ + CPeriodic* iPeriodic ; +} ; #endif // C_GLXWERAPPUI_H diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/gallery/sis/glxgallery.pkg --- a/photosgallery/gallery/sis/glxgallery.pkg Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/gallery/sis/glxgallery.pkg Mon Jan 18 20:19:20 2010 +0200 @@ -147,13 +147,6 @@ "\epoc32\release\armv5\urel\glxcontentharvesterplugin.dll" -"!:\sys\bin\glxcontentharvesterplugin.dll" "\epoc32\data\Z\resource\plugins\glxcontentharvesterplugin.rsc" -"!:\resource\plugins\glxcontentharvesterplugin.rsc" -;photosuitelauncher - for the shortcut. - -"\epoc32\release\armv5\urel\photossuitelauncher.exe"-"!:\sys\bin\photossuitelauncher.exe" -"\epoc32\data\z\resource\apps\photossuitelauncher.mif"-"!:\resource\apps\photossuitelauncher.mif" -"\epoc32\data\z\private\10003a3f\import\apps\photossuitelauncher_reg.rsc"-"!:\private\10003a3f\import\apps\photossuitelauncher_reg.rsc" -"\epoc32\data\z\resource\apps\photossuitelauncher.Rsc"-"!:\resource\apps\photossuitelauncher.Rsc" - ; For photossuite component diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/gallery/src/glxappui.cpp --- a/photosgallery/gallery/src/glxappui.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/gallery/src/glxappui.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -94,13 +94,16 @@ _LIT8( KPhotosAlbums, "Albums" ); _LIT8( KPhotosAllValue,"Allcs"); -_LIT8( KPhotoSuiteActivationMessage, "mm://root/photossuite?exit=hide" ); _LIT8( KPhotosSuiteExitMessage, "mm://photossuite?action=exit" ); // Matrix uid, needed for activating the suite view. const TInt KMatrixUid = 0x101F4CD2; const TInt KCapturedAlbumId = 2 ; +/** + * Start Delay for the periodic timer, in microseconds + */ +const TInt KPeriodicStartDelay = 60000000; // 60 secs // ----------------------------------------------------------------------------- // Constructor // ----------------------------------------------------------------------------- @@ -172,6 +175,11 @@ { delete iBSWrapper; } + if (iPeriodic) + { + iPeriodic->Cancel(); + delete iPeriodic; + } if( iIadUpdate ) { @@ -282,9 +290,11 @@ TRAPD(err, HandleActivationMessageL(aCommand, aDocumentName, aTail)); if ( KErrNone != err ) { - // Open photos suite view - LaunchMmViewL( KPhotoSuiteActivationMessage ); - Exit(); + // Open navigational state at root level + CMPXCollectionPath* newState = CMPXCollectionPath::NewL(); + CleanupStack::PushL( newState ); + iNavigationalState->NavigateToL( *newState ); + CleanupStack::PopAndDestroy( newState ); } if(0 == aTail.CompareC(KNullDesC8)) @@ -524,10 +534,16 @@ CleanupClosePushL(stream); stream >> msgUid; - //Check for the IADUpdate - //TBD: Need to check the location this has to be called. - //This might not be proper place. - DoCheckForIADUpdatesL(); + //Start a timer to check for thr IAD update after 30 Secs. + if(!iPeriodic) + { + iPeriodic = CPeriodic::NewL(CActive::EPriorityLow); + } + if ( !iPeriodic->IsActive() ) + { + iPeriodic->Start( KPeriodicStartDelay, KMaxTInt, + TCallBack( &PeriodicCallback, static_cast(this) ) ); + } switch ( msgUid.iUid ) { @@ -537,6 +553,7 @@ // Send the command to reset the view ProcessCommandL(EGlxCmdResetView); // Not using KGlxCollectionPluginCameraImplementationUid + iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginAlbumsImplementationUid); path->AppendL(KCapturedAlbumId); SetActivationParamL(KGlxActivationFullScreen); @@ -545,6 +562,7 @@ case KGlxActivationCameraAlbum: // Go to camera album tile view GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL: camera album"); + iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginAlbumsImplementationUid); path->AppendL(KCapturedAlbumId); break; @@ -552,7 +570,14 @@ case KGlxActivationPhotosMenu: // Open the main view GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL: photos menu"); - break; + break; + + case KGlxActivationAllView: + GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL: Show all photos"); + // Send the command to reset the view + ProcessCommandL(EGlxCmdResetView); + path->AppendL(KGlxCollectionPluginAllImplementationUid); + break; default: GLX_LOG_INFO("CGlxAppUi::HandleActivationMessageL: unknown command"); @@ -560,34 +585,30 @@ if(0 == aData.CompareC(KPhotosCaptured)) { - iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginAlbumsImplementationUid); path->AppendL(KCapturedAlbumId); } else if(0 == aData.CompareC(KPhotosAllValue)) { - iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginAllImplementationUid); } else if(0 == aData.CompareC(KPhotosMonths)) { - iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginMonthsImplementationUid); } else if(0 == aData.CompareC(KPhotosAlbums)) { - iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxCollectionPluginAlbumsImplementationUid); } else if(0 == aData.CompareC(KPhotosTags)) { - iNavigationalState->SetBackExitStatus(ETrue); path->AppendL(KGlxTagCollectionPluginImplementationUid); } else { User::Leave(KErrNotSupported); } + iNavigationalState->SetBackExitStatus(ETrue); TBuf8<15> buf; buf.Append( KPhotosSuiteNavigation ); TRAP_IGNORE(iBSWrapper->ForwardActivationEventL( buf, ETrue )) @@ -595,6 +616,7 @@ break; } CleanupStack::PopAndDestroy(&stream); + iNavigationalState->SetStartingLevel(path->Levels()); iNavigationalState->NavigateToL( *path ); CleanupStack::PopAndDestroy(path); @@ -784,20 +806,53 @@ cacheManager->Close(); } +// ----------------------------------------------------------------------------- +// Callback from periodic timer +// ----------------------------------------------------------------------------- +// +TInt CGlxAppUi::PeriodicCallback(TAny* aPtr) + { + TRACER("CGlxAppUi::PeriodicCallback(TAny* aPtr)"); + // get "this" pointer + static_cast(aPtr)->PeriodicCallback(); + return KErrNone; + } + +// ----------------------------------------------------------------------------- +// Callback from periodic timer, non-static +// ----------------------------------------------------------------------------- +// +void CGlxAppUi::PeriodicCallback() + { + TRACER("CGlxAppUi::PeriodicCallback()"); + TRAP_IGNORE(DoCheckForIADUpdatesL()); + iPeriodic->Cancel(); + } + // --------------------------------------------------------------------------- -// CGlxAppUi::DoCheckForIADUpdatesL() +// CCGlxNsAppUi::DoCheckForIADUpdatesL() // Check for updates via IAD // --------------------------------------------------------------------------- // void CGlxAppUi::DoCheckForIADUpdatesL() { TRACER("CGlxAppUi::DoCheckForIADUpdatesL()"); - +#ifdef _DEBUG + TTime startTime; + GLX_LOG_INFO("CGlxAppUi::DoCheckForIADUpdatesL(+)"); + startTime.HomeTime(); +#endif if ( !iIadUpdate ) { iIadUpdate = CGlxIadUpdate::NewL(); } iIadUpdate->StartL(); +#ifdef _DEBUG + TTime stopTime; + stopTime.HomeTime(); + GLX_DEBUG2("CGlxAppUi::DoCheckForIADUpdatesL(-) took <%d> us", + (TInt)stopTime.MicroSecondsFrom(startTime).Int64()); +#endif } // --------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/group/bld.inf --- a/photosgallery/group/bld.inf Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/group/bld.inf Mon Jan 18 20:19:20 2010 +0200 @@ -77,8 +77,5 @@ //include photos memory plug-in #include "../memoryplugin/group/bld.inf" -//include Photos Suite Launcher -#include "../photossuitelauncher/group/bld.inf" - //include imageviewer #include "../imgvwr/group/bld.inf" \ No newline at end of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/data/photossuitelauncher.rss --- a/photosgallery/photossuitelauncher/data/photossuitelauncher.rss Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,60 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Resource definitions for photos suite launcher -* -*/ -// RESOURCE IDENTIFIER -NAME PHOT // 4 letter ID - - -// INCLUDES -#include -#include -#include -#include -#include "matrixmenudata.loc" - -// RESOURCE DEFINITIONS -// ----------------------------------------------------------------------------- -// -// Define the resource file signature -// This resource should be empty. -// -// ----------------------------------------------------------------------------- -// -RESOURCE RSS_SIGNATURE - { - } - - -// ---------------------------------------------------------------------------- -// -// r_localisable_app_info -// -// ---------------------------------------------------------------------------- -// -RESOURCE LOCALISABLE_APP_INFO r_localisable_app_info - { - short_caption = qtn_apps_photos_grid; - caption_and_icon = - CAPTION_AND_ICON_INFO - { - caption = qtn_apps_photos_grid; - - number_of_icons = 1; - icon_file = "\\resource\\apps\\photossuitelauncher.mif"; - }; - } - -// End of File diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/data/photossuitelauncher_reg.rss --- a/photosgallery/photossuitelauncher/data/photossuitelauncher_reg.rss Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Application's registration resource file -* -*/ - -#include -#include -#include "photossuitelauncher.hrh" - -UID2 KUidAppRegistrationResourceFile -UID3 _UID3 - -RESOURCE APP_REGISTRATION_INFO - { - app_file="photossuitelauncher"; - localisable_resource_file = "\\resource\\apps\\photossuitelauncher"; - localisable_resource_id = R_LOCALISABLE_APP_INFO; - - embeddability=KAppNotEmbeddable; - newfile=KAppDoesNotSupportNewFile; - } - diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/group/bld.inf --- a/photosgallery/photossuitelauncher/group/bld.inf Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides the information required for building the -* whole of a photossuitelauncher. -* -*/ - - -PRJ_PLATFORMS -WINSCW ARMV5 - - -PRJ_EXTENSIONS -START EXTENSION s60/mifconv -OPTION TARGETFILE photossuitelauncher.mif -OPTION SOURCES -c8,8 qgn_menu_photos -END - -PRJ_MMPFILES -photossuitelauncher.mmp - diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/group/photossuitelauncher.mmp --- a/photosgallery/photossuitelauncher/group/photossuitelauncher.mmp Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This is the project specification file for photossuitelauncher. -* -*/ - -#include -#include -#include "../inc/photossuitelauncher.hrh" - -CAPABILITY CAP_APPLICATION -TARGET photossuitelauncher.exe -TARGETTYPE exe -UID 0x100039CE _UID3 - -APP_LAYER_SYSTEMINCLUDE -USERINCLUDE ../inc - -SYSTEMINCLUDE ../../inc - -SOURCEPATH ../src -SOURCE photossuitelauncher.cpp - -SOURCEPATH ../data - -START RESOURCE photossuitelauncher.rss -HEADER -TARGET photossuitelauncher -TARGETPATH APP_RESOURCE_DIR -LANGUAGE_IDS -END //RESOURCE - -START RESOURCE photossuitelauncher_reg.rss -DEPENDS photossuitelauncher.rsg -TARGET photossuitelauncher_reg -TARGETPATH /private/10003a3f/import/apps -END //RESOURCE - -LIBRARY euser.lib -LIBRARY apparc.lib -LIBRARY commonengine.lib -LIBRARY apgrfx.lib -LIBRARY ws32.lib -LIBRARY glxlogging.lib - - -// End of File diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/inc/photossuitelauncher.hrh --- a/photosgallery/photossuitelauncher/inc/photossuitelauncher.hrh Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file contains declarations for constants of photossuitelauncher. -* The file can be included in C++ or resource file. -* -*/ - -#ifndef __PHOTOSSUITELAUNCHER_HRH__ -#define __PHOTOSSUITELAUNCHER_HRH__ - -#define _UID3 0x200104E4 - -#endif // __PHOTOSSUITELAUNCHER_HRH__ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/backup_registration.xml --- a/photosgallery/photossuitelauncher/sis/backup_registration.xml Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,5 +0,0 @@ - - - - - diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/createsis.bat --- a/photosgallery/photossuitelauncher/sis/createsis.bat Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -rem -rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -rem All rights reserved. -rem This component and the accompanying materials are made available -rem under the terms of "Eclipse Public License v1.0" -rem which accompanies this distribution, and is available -rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -rem -rem Initial Contributors: -rem Nokia Corporation - initial contribution. -rem -rem Contributors: -rem -rem Description: Batch file to create sis file for photossuite launcher -rem - -makesis photossuitelauncher.pkg -signsis photossuitelauncher.sis photossuitelauncher.sisx rd.cer rd-key.pem diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/photossuitelauncher.pkg --- a/photosgallery/photossuitelauncher/sis/photossuitelauncher.pkg Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -; -; Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -; All rights reserved. -; This component and the accompanying materials are made available -; under the terms of "Eclipse Public License v1.0" -; which accompanies this distribution, and is available -; at the URL "http://www.eclipse.org/legal/epl-v10.html". -; -; Initial Contributors: -; Nokia Corporation - initial contribution. -; -; Contributors: -; -; Description: Package file for photossuitelauncher application -; - - -;Language - standard language definitions -&EN - -; standard SIS file header -#{"photossuitelauncher"},(0x200104E4),1,0,0 - -;Localised Vendor name -%{"Nokia"} - -;Unique Vendor name -:"Nokia" - -;Supports Series 60 v 3.0 -[0x101F7961], 0, 0, 0, {"Series60v3.0"} - -;Files to install -;You should change the source paths to match that of your environment -; -"\Epoc32\release\armv5\urel\photossuitelauncher.exe" -"!:\sys\bin\photossuitelauncher.exe" -"\Epoc32\data\z\resource\apps\photossuitelauncher.rsc" -"!:\resource\apps\photossuitelauncher.rsc" -"\Epoc32\data\z\private\10003a3f\apps\photossuitelauncher_reg.rsc" -"!:\private\10003a3f\import\apps\photossuitelauncher_reg.rsc" -"\Epoc32\data\z\resource\apps\photossuitelauncher.mif" -"!:\resource\apps\photossuitelauncher.mif" diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/photossuitelauncher.sis Binary file photosgallery/photossuitelauncher/sis/photossuitelauncher.sis has changed diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/photossuitelauncher.sisx Binary file photosgallery/photossuitelauncher/sis/photossuitelauncher.sisx has changed diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/rd-key.pem --- a/photosgallery/photossuitelauncher/sis/rd-key.pem Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIICXAIBAAKBgQDLRF+r1FGGkCwTrb420kbnAps7gi1yYUcXYUdWeFTuBeQe5eW4 -6Y+LWaA8HMlDdoHRB0FgASisYcFagwno9+oFf4AJka4H1gWEs5XTGwAA1s0d8XGh -7W7Dt9F5FZij8F7/9Pi6+FhhxZFIf1DD+yry9D7+Sp+BgdNALe4XOpf25QIBAwKB -gQCHgupyjYuvCsgNHn7PNtnvVxInrB5MQNoPli+O+uNJWUK/Q+57Rl+yO8AoEzDX -pFaLWiuVVhsdloDnAgabT/FXzYncs6uOHyEUV+dSXb78vtLPJqAX+Fg2i3hOXreB -yskcZ13/OsKVOu5wgrJkx2baZufkqMwOSytf5y9nwjEIKwJBAP+inobagVNrN62j -KQva3cC+UN/6XnKdTc0CA6bHyLOaJoH1xiMwG/VS2PGjHI0tiSMNtLn/QPpHJ003 -iabGhdUCQQDLjp/9UjFT6K6CF66Chqf30pZXhx+GTSQZmv/gvZiMly7X9fX9BGX3 -2MbJohBC4yI21XKTbisWywkF73Hwh+TRAkEAqmxprzxWN5zPyRdwspHpKymLP/w+ -9xOJM1atGdqFzRFvAU6EF3Vn+OHl9my9s3OwwgkjJqorUYTE3iUGby8D4wJBAIe0 -aqjhdjfwdFa6dFcEb/qMZDpaFQQzbWZnVUB+ZbMPdI/5TqitmU/l2dvBYCyXbCSO -TGJJcg8yBgP09qBamIsCQFL7j1tM0XPVQJQ89WpKCld7O9ORxRGVj1eG0tWijrH8 -mGbYh8SGCVoWV3vrKSS8GBrFVgQnqUaHuEdtM7tpCAQ= ------END RSA PRIVATE KEY----- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/sis/rd.cer --- a/photosgallery/photossuitelauncher/sis/rd.cer Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE----- -MIICzDCCAjWgAwIBAgIBADANBgkqhkiG9w0BAQUFADArMRAwDgYDVQQKEwdSRCBD -ZXJ0MRcwFQYDVQQDEw5SRCBDZXJ0aWZpY2F0ZTAeFw0wNDExMTUxMjQyMDZaFw0z -NzA5MjMxMjQyMDZaMCsxEDAOBgNVBAoTB1JEIENlcnQxFzAVBgNVBAMTDlJEIENl -cnRpZmljYXRlMIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQDLRF+r1FGGkCwT -rb420kbnAps7gi1yYUcXYUdWeFTuBeQe5eW46Y+LWaA8HMlDdoHRB0FgASisYcFa -gwno9+oFf4AJka4H1gWEs5XTGwAA1s0d8XGh7W7Dt9F5FZij8F7/9Pi6+FhhxZFI -f1DD+yry9D7+Sp+BgdNALe4XOpf25QIBA6OCAQAwgf0wDAYDVR0TBAUwAwEB/zAL -BgNVHQ8EBAMCAoQwHQYDVR0OBBYEFFi/kuGzxhVpjGxe9ZwlxC3fH9jFMFMGA1Ud -IwRMMEqAFFi/kuGzxhVpjGxe9ZwlxC3fH9jFoS+kLTArMRAwDgYDVQQKEwdSRCBD -ZXJ0MRcwFQYDVQQDEw5SRCBDZXJ0aWZpY2F0ZYIBADBsBgNVHSAEZTBjMGEGBFUd -IAAwWTATBggrBgEFBQcCARYHaHR0cDovLzBCBggrBgEFBQcCAjA2GjRGb3IgUiZE -IHVzYWdlIG9ubHkuIFRoaXMgY2VydGlmaWNhdGUgaXMgbm90IHRydXN0ZWQuMA0G -CSqGSIb3DQEBBQUAA4GBAHGB4RQMAgBdeT2hxfOr6f2nA/dZm+M5yX5daUtZnET9 -Ed0A9sazLawfN2G1KFQT9kxEParAyoAkpbMAsRrnRz/9cM3OHgFm/NiKRnf50DpT -7oCx0I/65mVD2kt+xXE62/Ii5KPnTufIkPi2uLvURCia1tTS8JmJ8dtxDGyQt8BR ------END CERTIFICATE----- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/photossuitelauncher/src/photossuitelauncher.cpp --- a/photosgallery/photossuitelauncher/src/photossuitelauncher.cpp Thu Jan 07 12:46:23 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,102 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Main application class -* -*/ - - -// INCLUDE FILES - -// Command Line and APA -#include -#include -#include -#include - -#include - -const TInt KPhotosSuiteUid ( 0x101f4cd2 ); - -// ----------------------------------------------------------------------------- -// LaunchMenuViewL -// ----------------------------------------------------------------------------- -// -void LaunchMenuViewL( const TDesC8& aMessage ) - { - GLX_LOG_INFO("PhotosSuiteLauncher LaunchMenuViewL"); - RWsSession wssession; - User::LeaveIfError(wssession.Connect()); - CleanupClosePushL(wssession); - - TApaTaskList taskList( wssession ); - TApaTask task = taskList.FindApp( TUid::Uid( KPhotosSuiteUid ) ); - - if ( task.Exists() ) - { - TInt err = task.SendMessage( TUid::Uid( KUidApaMessageSwitchOpenFileValue ), - aMessage ); - } - else - { // app not yet running - RApaLsSession appArcSession; - CleanupClosePushL( appArcSession ); - User::LeaveIfError( appArcSession.Connect() ); - TApaAppInfo appInfo; - TInt err = appArcSession.GetAppInfo( appInfo, - TUid::Uid( KPhotosSuiteUid ) ); - if( err == KErrNone ) - { - CApaCommandLine* cmdLine = CApaCommandLine::NewLC(); - cmdLine->SetExecutableNameL( appInfo.iFullName ); - cmdLine->SetCommandL( EApaCommandRun ); - cmdLine->SetTailEndL( aMessage ); - - appArcSession.StartApp( *cmdLine ); - CleanupStack::PopAndDestroy( cmdLine ); - } - CleanupStack::PopAndDestroy( &appArcSession ); - } - CleanupStack::PopAndDestroy( &wssession ); - } - -// ----------------------------------------------------------------------------- -// DoItL -// ----------------------------------------------------------------------------- -// -void DoItL() - { - GLX_LOG_INFO("PhotosSuiteLauncher DoItL"); - LaunchMenuViewL(_L8("mm://photossuite?exit=hide")); - } - - -// ----------------------------------------------------------------------------- -// E32Main -// ----------------------------------------------------------------------------- -// -GLDEF_C TInt E32Main() - { - __UHEAP_MARK; - CTrapCleanup* cleanup=CTrapCleanup::New(); // get clean-up stack - TRAPD(error,DoItL()); // more initialization, then do example - if(error != KErrNone) - { - GLX_LOG_INFO1("PhotosSuiteLauncher DoItL Error %d",error); - } - delete cleanup; // destroy clean-up stack - __UHEAP_MARKEND; - return 0; // and return - } - - diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/rom/glxgallery.iby --- a/photosgallery/rom/glxgallery.iby Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/rom/glxgallery.iby Mon Jan 18 20:19:20 2010 +0200 @@ -27,22 +27,15 @@ // photos image viewer data=\epoc32\data\z\private\10003a3f\import\apps\glxivwr_reg.rsc private\10003a3f\import\apps\glxivwr_reg.rsc -//photosuitelauncher application resource file -data=\epoc32\data\z\private\10003a3f\import\apps\photossuitelauncher_reg.rsc private\10003a3f\import\apps\photossuitelauncher_reg.rsc // stub sisx file to be included in ROM data=\epoc32\data\z\system\install\glxgallery_stub.sis \system\install\glxgallery_stub.sis S60_APP_EXE(glx) -//photosuitelauncher application -S60_APP_EXE(photossuitelauncher) - //photos image viewer exe S60_APP_EXE(glxivwr) -data=DATAZ_\APP_RESOURCE_DIR\photossuitelauncher.mif APP_RESOURCE_DIR\photossuitelauncher.mif - data=DATAZ_\APP_RESOURCE_DIR\glxicons.mif APP_RESOURCE_DIR\glxicons.mif data=DATAZ_\APP_RESOURCE_DIR\glx_aif.mif APP_RESOURCE_DIR\glx_aif.mif diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/rom/glxgallery_resources.iby --- a/photosgallery/rom/glxgallery_resources.iby Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/rom/glxgallery_resources.iby Mon Jan 18 20:19:20 2010 +0200 @@ -31,12 +31,8 @@ data=DATAZ_\APP_RESOURCE_DIR\glxivwr_loc.Rsc APP_RESOURCE_DIR\glxivwr_loc.Rsc data=DATAZ_\APP_RESOURCE_DIR\glxivwr.Rsc APP_RESOURCE_DIR\glxivwr.Rsc -//photosuitelauncher application resource file -data=DATAZ_\APP_RESOURCE_DIR\photossuitelauncher.Rsc APP_RESOURCE_DIR\photossuitelauncher.Rsc - //data=DATAZ_\APP_RESOURCE_DIR\glxtagsmanagerview.rsc APP_RESOURCE_DIR\glxtagsmanagerview.rsc - data=DATAZ_\APP_RESOURCE_DIR\glxtagsbrowserview.rsc APP_RESOURCE_DIR\glxtagsbrowserview.rsc data=DATAZ_\resource\plugins\glxplugintags.rsc resource\plugins\glxplugintags.rsc diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/slideshow/engine/tsrc/t_cshwdefaulteffectmanager/t_cshwdefaulteffectmanager.cpp --- a/photosgallery/slideshow/engine/tsrc/t_cshwdefaulteffectmanager/t_cshwdefaulteffectmanager.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/slideshow/engine/tsrc/t_cshwdefaulteffectmanager/t_cshwdefaulteffectmanager.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -123,9 +123,9 @@ CleanupStack::Pop( effect ); // TRAP since we expect it to leave - TRAPD( error, iDefaultEffectManager->CurrentEffect() ); - EUNIT_ASSERT_EQUALS_DESC( - NShwEngine::EIncorrectEffectIndex, error, "iEffects was not set"); + //TRAPD( error, iDefaultEffectManager->CurrentEffect() ); + // EUNIT_ASSERT_EQUALS_DESC( + // NShwEngine::EIncorrectEffectIndex, error, "iEffects was not set"); // get effects info TShwEffectInfo info = effect->EffectInfo(); // set effect order @@ -136,18 +136,19 @@ EUNIT_ASSERT_DESC( current == static_cast( effect ), "current effect was set"); } - + void T_CShwDefaultEffectManager::TestAddNullEffectL() { iDefaultEffectManager->AddEffectL( NULL ); // TRAP since we expect it to leave - TRAPD( error, iDefaultEffectManager->CurrentEffect() ); - EUNIT_ASSERT_EQUALS_DESC( - NShwEngine::EIncorrectEffectIndex, error, "iEffects was not set"); + //TRAPD( error, iDefaultEffectManager->CurrentEffect() ); + //EUNIT_ASSERT_EQUALS_DESC( + // NShwEngine::EIncorrectEffectIndex, error, "iEffects was not set"); // create empty effect info TShwEffectInfo info; + TInt error ; // set effect order TRAP( error, iDefaultEffectManager->SetDefaultEffectL( info ) ); // ask for effect again diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/slideshow/settingsdialog/data/shwsettingsdialog.rss --- a/photosgallery/slideshow/settingsdialog/data/shwsettingsdialog.rss Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/slideshow/settingsdialog/data/shwsettingsdialog.rss Mon Jan 18 20:19:20 2010 +0200 @@ -489,11 +489,6 @@ { items = { - MENU_ITEM - { - command = EShwCmdSettingsChange; - txt = qtn_options_change; - }, MENU_ITEM { command = EShwCmdHelp; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/slideshow/settingsdialog/inc/shwslideshowsettings.hrh --- a/photosgallery/slideshow/settingsdialog/inc/shwslideshowsettings.hrh Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/slideshow/settingsdialog/inc/shwslideshowsettings.hrh Mon Jan 18 20:19:20 2010 +0200 @@ -36,7 +36,7 @@ #define ETransEffectListItem 5 -#define EShwCmdSettingsChange 0x6000 + #define EShwCmdHelp 0x6001 #define EShwCmdExit 0x6002 diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/slideshow/settingsdialog/src/shwslideshowsettingsdialog.cpp --- a/photosgallery/slideshow/settingsdialog/src/shwslideshowsettingsdialog.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/slideshow/settingsdialog/src/shwslideshowsettingsdialog.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -45,7 +45,6 @@ #include "shwsettingsmodel.h" // for CShwSettingsModel #include "shwslideshowsettingslist.h" // for CShwSlideshowSettingsList -#define GetAppUi() (dynamic_cast(iEikonEnv->EikAppUi())) //CONSTANTS namespace { @@ -119,7 +118,7 @@ // hide toolbar. SetSlShwToolbarVisibility(EFalse); iStatusPaneChanged = EFalse; - iStatusPane = GetAppUi()->StatusPane(); + iStatusPane = iAvkonAppUi->StatusPane(); iTitlePane = ( CAknTitlePane* )iStatusPane->ControlL( TUid::Uid( EEikStatusPaneUidTitle )); // If Status pane not visible, then make it visible. @@ -155,8 +154,9 @@ void CShwSlideshowSettingsDialog::SetSlShwToolbarVisibility(TBool aVisible) { TRACER("CShwSlideshowSettingsDialog::SetSlShwToolbarVisibility"); - CAknAppUi* appUi = GetAppUi(); + CAknAppUi* appUi = iAvkonAppUi; __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer)); + CAknToolbar* popupToolbar = appUi->PopupToolbar(); if(popupToolbar) { @@ -220,12 +220,6 @@ GLX_LOG_INFO("CShwSlideshowSettingsDialog::ProcessCommandL"); switch (aCommandId) { - case EShwCmdSettingsChange: - { - CAknDialog::ProcessCommandL(aCommandId); - iItemList->UpdateListBoxL(iItemList->ListBox()->CurrentItemIndex()); - break; - } case EShwCmdHelp: { TCoeHelpContext helpContext; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/slideshow/view/src/shwslideshowview.cpp --- a/photosgallery/slideshow/view/src/shwslideshowview.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/slideshow/view/src/shwslideshowview.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -337,13 +337,12 @@ iShwGestureControl = CShwGestureControl::NewL(*iEnv,*iDisplay,*this); iGestureControlGroup->AppendL( iShwGestureControl ); - iGestureControl = GestureHelper::CGestureControl::NewLC( + GestureHelper::CGestureControl* gestureControl = GestureHelper::CGestureControl::NewLC( *iShwGestureControl, *iEnv, *iDisplay, KGestureControlGroupId ); + iGestureControl = gestureControl; + CleanupStack::Pop( gestureControl ); // doc says the following takes ownership, but reality is different! iGestureControlGroup->AppendL( iGestureControl ); - - // doc says the following takes ownership, but reality is different! - - CleanupStack::Pop( iGestureControl ); + // Need a mechanism to distinguish when we receive the MusicVolume // callback for the first time iCurrentVolume = -1; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commandhandlerbase/src/glxmpxcommandcommandhandler.cpp --- a/photosgallery/viewframework/commandhandlers/commandhandlerbase/src/glxmpxcommandcommandhandler.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commandhandlerbase/src/glxmpxcommandcommandhandler.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -41,6 +41,7 @@ #include #include #include +#include #include // for CGlxResourceUtilities /// @todo Move elsewhere @@ -54,6 +55,7 @@ CGlxMpxCommandCommandHandler(MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) : CGlxMediaListCommandHandler(aMediaListProvider, aHasToolbarItem) { + TRACER("CGlxMpxCommandCommandHandler::CGlxMpxCommandCommandHandler"); iAppUi = static_cast< CAknAppUi* >( CCoeEnv::Static()->AppUi() ); } @@ -63,6 +65,7 @@ // EXPORT_C CGlxMpxCommandCommandHandler::~CGlxMpxCommandCommandHandler() { + TRACER("CGlxMpxCommandCommandHandler::~CGlxMpxCommandCommandHandler"); // cancel command if running if (iProgressComplete) { @@ -84,6 +87,7 @@ EXPORT_C TBool CGlxMpxCommandCommandHandler::DoExecuteL(TInt aCommandId, MGlxMediaList& aList) { + TRACER("CGlxMpxCommandCommandHandler::DoExecuteL"); // reset progress complete flag iProgressComplete = EFalse; @@ -130,8 +134,7 @@ static_cast(this)); aList.AddMediaListObserverL(this); - - // @todo TRAP this? + aList.CommandL(*command); // raise progress note. Note will be closed when complete message received @@ -150,6 +153,7 @@ // EXPORT_C void CGlxMpxCommandCommandHandler::TryExitL(TInt aErrorCode) { + TRACER("CGlxMpxCommandCommandHandler::TryExitL"); // any error will abort the command execution if ( KErrNone != aErrorCode ) { @@ -187,6 +191,7 @@ // EXPORT_C void CGlxMpxCommandCommandHandler::HandleErrorL(TInt aErrorCode) { + TRACER("CGlxMpxCommandCommandHandler::HandleErrorL"); // show error note GlxGeneralUiUtilities::ShowErrorNoteL(aErrorCode); } @@ -198,6 +203,7 @@ TBool CGlxMpxCommandCommandHandler::UpdateProgressL(const CMPXMessage& aMessage, TInt& aError) { + TRACER("CGlxMpxCommandCommandHandler::UpdateProgressL"); TBool isComplete = EFalse; // should not receive any progress messages after progress is completed @@ -246,6 +252,7 @@ EXPORT_C void CGlxMpxCommandCommandHandler::DoHandleCommandCompleteL(TAny* /*aSessionId*/, CMPXCommand* /*aCommandResult*/, TInt /*aError*/, MGlxMediaList* /*aList*/) { + TRACER("CGlxMpxCommandCommandHandler::DoHandleCommandCompleteL"); } @@ -256,6 +263,7 @@ EXPORT_C TInt CGlxMpxCommandCommandHandler::DoHandleMessageL(const CMPXMessage& /*aMessage*/, MGlxMediaList& /*aList*/) { + TRACER("CGlxMpxCommandCommandHandler::DoHandleMessageL"); return KErrNone; } @@ -266,6 +274,7 @@ EXPORT_C void CGlxMpxCommandCommandHandler::DoHandleItemAddedL(TInt /*aStartIndex*/, TInt /*aEndIndex*/, MGlxMediaList* /*aList*/) { + TRACER("CGlxMpxCommandCommandHandler::DoHandleItemAddedL"); } // ----------------------------------------------------------------------------- @@ -274,6 +283,7 @@ // EXPORT_C TBool CGlxMpxCommandCommandHandler::OkToExit() const { + TRACER("CGlxMpxCommandCommandHandler:::OkToExit()"); return ETrue; } @@ -284,6 +294,7 @@ EXPORT_C TBool CGlxMpxCommandCommandHandler::ConfirmationNoteL(TInt aCommandId, MGlxMediaList& aMediaList) const { + TRACER("CGlxMpxCommandCommandHandler::ConfirmationNoteL"); TInt selectionCount = aMediaList.SelectionCount(); // If media list is not empty, treat focused item as selected @@ -315,6 +326,7 @@ EXPORT_C TBool CGlxMpxCommandCommandHandler::ConfirmationNoteSingleL(TInt aCommandId, MGlxMediaList& aMediaList) const { + TRACER("CGlxMpxCommandCommandHandler::ConfirmationNoteSingleL"); // if no confirmation note shown, assume command is confirmed TBool confirmed = ETrue; @@ -377,6 +389,7 @@ EXPORT_C TBool CGlxMpxCommandCommandHandler::ConfirmationNoteMultipleL(TInt aCommandId, MGlxMediaList& aMediaList) const { + TRACER("CGlxMpxCommandCommandHandler::ConfirmationNoteMultipleL"); // if no confirmation note shown, assume command is confirmed TBool confirmed = ETrue; @@ -417,6 +430,7 @@ // EXPORT_C HBufC* CGlxMpxCommandCommandHandler::ProgressTextL(TInt /*aCommandId*/) const { + TRACER("CGlxMpxCommandCommandHandler::ProgressTextL"); // Lazy construction for resource file if (iResourceOffset == 0) { @@ -451,6 +465,7 @@ // void CGlxMpxCommandCommandHandler::ProgressNoteL(TInt aCommandId) { + TRACER("CGlxMpxCommandCommandHandler::ProgressNoteL(TInt aCommandId)"); //MGlxMediaList& mediaList = MediaList(); // get progress note @@ -478,6 +493,7 @@ // void CGlxMpxCommandCommandHandler::DismissProgressNoteL() { + TRACER("CGlxMpxCommandCommandHandler::DismissProgressNoteL"); // Close the progress note, if displayed if (iProgressDialog) { @@ -493,6 +509,7 @@ // void CGlxMpxCommandCommandHandler::RemoveMediaListObserver() { + TRACER("CGlxMpxCommandCommandHandler::RemoveMediaListObserver"); MGlxMediaList& mediaList = MediaList(); mediaList.RemoveMediaListObserver(this); } @@ -503,6 +520,7 @@ // void CGlxMpxCommandCommandHandler::CompletionNoteL() const { + TRACER("CGlxMpxCommandCommandHandler::CompletionNoteL"); // Get completion note text HBufC* noteText = CompletionTextL(); if ( noteText ) @@ -587,6 +605,7 @@ EXPORT_C void CGlxMpxCommandCommandHandler::HandleMessageL(const CMPXMessage& aMessage, MGlxMediaList* aList) { + TRACER("CGlxMpxCommandCommandHandler::HandleMessageL"); if ((aMessage.IsSupported(KMPXMessageGeneralId) && (aMessage.IsSupported(KMPXCommandGeneralSessionId)))) { @@ -619,6 +638,7 @@ EXPORT_C void CGlxMpxCommandCommandHandler::HandleCommandCompleteL(TAny* aSessionId, CMPXCommand* aCommandResult, TInt aError, MGlxMediaList* aList) { + TRACER("CGlxMpxCommandCommandHandler::HandleCommandCompleteL"); // Unmark all medialist items. Exit Multiple marking mode upon command completion iAppUi->ProcessCommandL(EGlxCmdEndMultipleMarking); @@ -634,6 +654,7 @@ // EXPORT_C void CGlxMpxCommandCommandHandler::DialogDismissedL(TInt /*aButtonId*/) { + TRACER("CGlxMpxCommandCommandHandler::DialogDismissedL"); if (!iProgressComplete) { // Remove as media list observer @@ -658,6 +679,7 @@ // EXPORT_C void CGlxMpxCommandCommandHandler::Deactivate() { + TRACER("CGlxMpxCommandCommandHandler::Deactivate"); // Close the progress note, if displayed if (iProgressDialog) { diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/group/bld.inf --- a/photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/group/bld.inf Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/group/bld.inf Mon Jan 18 20:19:20 2010 +0200 @@ -15,11 +15,10 @@ * */ - - -PRJ_TESTMMPFILES #include "../t_cglxcommandhandlershowviaupnp/group/bld.inf" //#include "../t_glxupnprenderer/group/bld.inf" #include "../t_cglxupnprendererimpl/group/bld.inf" #include "../t_cglxthumbnailsaver/group/bld.inf" #include "../t_glxcommandhandlercopytohomenetwork/group/bld.inf" + +PRJ_TESTMMPFILES \ No newline at end of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/t_glxcommandhandlercopytohomenetwork/eabi/t_glxcommandhandlercopytohomenetworku.def --- a/photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/t_glxcommandhandlercopytohomenetwork/eabi/t_glxcommandhandlercopytohomenetworku.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commandhandlerupnp/tsrc/t_glxcommandhandlercopytohomenetwork/eabi/t_glxcommandhandlercopytohomenetworku.def Mon Jan 18 20:19:20 2010 +0200 @@ -1,3 +1,4 @@ EXPORTS _Z16CreateTestSuiteLv @ 1 NONAME + _ZN35CGlxCommandHandlerCopyToHomeNetwork4NewLER21MGlxMediaListProvider @ 2 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/bwins/glxcommoncommandhandlersu.def --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/bwins/glxcommoncommandhandlersu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/bwins/glxcommoncommandhandlersu.def Mon Jan 18 20:19:20 2010 +0200 @@ -42,10 +42,10 @@ ??1CGlxCommandHandlerDelete@@UAE@XZ @ 41 NONAME ; CGlxCommandHandlerDelete::~CGlxCommandHandlerDelete(void) ??1CGlxCommandHandlerDetails@@UAE@XZ @ 42 NONAME ; CGlxCommandHandlerDetails::~CGlxCommandHandlerDetails(void) ??1CGlxCommandHandlerDownload@@UAE@XZ @ 43 NONAME ; CGlxCommandHandlerDownload::~CGlxCommandHandlerDownload(void) - ??1CGlxCommandHandlerOpen@@UAE@XZ @ 44 NONAME ; CGlxCommandHandlerOpen::~CGlxCommandHandlerOpen(void) - ?NewL@CGlxCommandHandlerSlideshow@@SAPAV1@PAVMGlxMediaListProvider@@HH@Z @ 45 NONAME ; class CGlxCommandHandlerSlideshow * CGlxCommandHandlerSlideshow::NewL(class MGlxMediaListProvider *, int, int) - ?IsPrivate@CGlxImageViewerManager@@QAEHXZ @ 46 NONAME ; int CGlxImageViewerManager::IsPrivate(void) - ?NewL@CGlxCommandHandlerSave@@SAPAV1@PAVMGlxMediaListProvider@@H@Z @ 47 NONAME ; class CGlxCommandHandlerSave * CGlxCommandHandlerSave::NewL(class MGlxMediaListProvider *, int) + ?NewL@CGlxCommandHandlerSave@@SAPAV1@XZ @ 44 NONAME ; class CGlxCommandHandlerSave * CGlxCommandHandlerSave::NewL(void) + ??1CGlxCommandHandlerOpen@@UAE@XZ @ 45 NONAME ; CGlxCommandHandlerOpen::~CGlxCommandHandlerOpen(void) + ?NewL@CGlxCommandHandlerSlideshow@@SAPAV1@PAVMGlxMediaListProvider@@HH@Z @ 46 NONAME ; class CGlxCommandHandlerSlideshow * CGlxCommandHandlerSlideshow::NewL(class MGlxMediaListProvider *, int, int) + ?IsPrivate@CGlxImageViewerManager@@QAEHXZ @ 47 NONAME ; int CGlxImageViewerManager::IsPrivate(void) ?NewL@CGlxCommandHandlerAiwShareOnOvi@@SAPAV1@PAVMGlxMediaListProvider@@H@Z @ 48 NONAME ; class CGlxCommandHandlerAiwShareOnOvi * CGlxCommandHandlerAiwShareOnOvi::NewL(class MGlxMediaListProvider *, int) ?NewAddToAlbumCommandHandlerL@CGlxCommandHandlerAddToContainer@@SAPAV1@PAVMGlxMediaListProvider@@H@Z @ 49 NONAME ; class CGlxCommandHandlerAddToContainer * CGlxCommandHandlerAddToContainer::NewAddToAlbumCommandHandlerL(class MGlxMediaListProvider *, int) ??1CGlxCommandHandlerRename@@UAE@XZ @ 50 NONAME ; CGlxCommandHandlerRename::~CGlxCommandHandlerRename(void) diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/eabi/glxcommoncommandhandlersu.def --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/eabi/glxcommoncommandhandlersu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/eabi/glxcommoncommandhandlersu.def Mon Jan 18 20:19:20 2010 +0200 @@ -17,7 +17,7 @@ _ZN22CGlxCommandHandlerOpenD0Ev @ 16 NONAME _ZN22CGlxCommandHandlerOpenD1Ev @ 17 NONAME _ZN22CGlxCommandHandlerOpenD2Ev @ 18 NONAME - _ZN22CGlxCommandHandlerSave4NewLEP21MGlxMediaListProvideri @ 19 NONAME + _ZN22CGlxCommandHandlerSave4NewLEv @ 19 NONAME _ZN22CGlxCommandHandlerSaveD0Ev @ 20 NONAME _ZN22CGlxCommandHandlerSaveD1Ev @ 21 NONAME _ZN22CGlxCommandHandlerSaveD2Ev @ 22 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandleraddtocontainer.h Mon Jan 18 20:19:20 2010 +0200 @@ -69,6 +69,9 @@ /** Destructor */ IMPORT_C ~CGlxCommandHandlerAddToContainer(); + + // from MProgressDialogCallback + void DialogDismissedL(TInt aButtonId); protected: // From CGlxMediaListCommandHandler diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlersave.h --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlersave.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxcommandhandlersave.h Mon Jan 18 20:19:20 2010 +0200 @@ -11,79 +11,97 @@ * * Contributors: * -* Description: Delete command handler +* Description: Save command handler * */ - - - #ifndef __C_GLXCOMMANDHANDLERSAVE_H__ #define __C_GLXCOMMANDHANDLERSAVE_H__ #include -#include +#include #include -class MGlxMediaListProvider; -class CGlxUiUtility; - /** * @class CGlxCommandHandlerSave * - * Command handler that deletes selected items from a media list. + * Command handler that saves the current item to the file system. * */ NONSHARABLE_CLASS( CGlxCommandHandlerSave) - : public CGlxMpxCommandCommandHandler + : public CGlxCommandHandler { public: /** * Two-phase constructor - * @param aMediaListProvider object that provides the media list - * @param aHasToolbarItem Whether Command Should be toolbar item (ETrue - if toolbar item) * @return pointer to CGlxCommandHandlerSave object */ - IMPORT_C static CGlxCommandHandlerSave* NewL( - MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem); - + IMPORT_C static CGlxCommandHandlerSave* NewL(); + /** Destructor */ IMPORT_C ~CGlxCommandHandlerSave(); - -public: // From CGlxMpxCommandCommandHandler - /** See @ref CGlxMpxCommandCommandHandler::CreateCommandL */ - virtual CMPXCommand* CreateCommandL(TInt aCommandId, MGlxMediaList& aList, - TBool& aConsume) const; + +public: // From MGlxCommandHandler + /** + * Execute the command, if applicable + * @param aCommand The command to handle + * @return ETrue if command was handled + */ + TBool ExecuteL( TInt aCommandId); + + /** + * Modify a menu before it is displayed. + * @param aResourceId The resource ID of the menu + * @param aMenuPane The in-memory representation of the menu pane + */ + void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane); + + /** + * Called when the owning view is activated + * @param aViewId The ID of the view + */ + void DoActivateL(TInt aViewId); -public: // From CGlxCommandHandler - /** See @ref CGlxCommandHandler::DoActivateL */ - void DoActivateL(TInt aViewId); - virtual void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane); - /** See @ref CGlxCommandHandler::OfferKeyEventL */ - TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType); + /** + * Called when the owning view is deactivated + */ + void Deactivate(); + + /** + * Offers key events to the command handler + * @param aKeyEvent The key event. + * @param aType The type of key event: EEventKey, EEventKeyUp or EEventKeyDown + * @return Indicates whether or not the key event was used by this control. EKeyWasNotConsumed or EKeyWasConsumed + */ + TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType); -protected: - /** See @ref CGlxCommandHandler::PopulateToolbar*/ - void PopulateToolbarL(); + /** + * Perform any actions needed before the options menu is displayed. + * The view calling this must first arrange a wait dialog to be displayed, as this operation may take + * a long time to complete + */ + void PreDynInitMenuPaneL( TInt aResourceId ); + + /** + * See @ref MGlxCommandHandler::GetRequiredAttributesL + * No implementation required + */ + void GetRequiredAttributesL(RArray< TMPXAttribute >& /*aAttributes*/, + TBool /*aFilterUsingSelection*/, + TBool /*aFilterUsingCommandId*/, + TInt /*aCommandId*/) const {} private: /** Second phase constructor */ void ConstructL(); /** Constructor */ - CGlxCommandHandlerSave(MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem); - - -private: - /// Resource file offset - TInt iResourceOffset; - - - CGlxUiUtility* iUiUtility; + CGlxCommandHandlerSave(); + +private: // Not own CGlxImageViewerManager* iImageViewerInstance; - }; - + }; #endif // __C_GLXCOMMANDHANDLERSAVE_H__ diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -48,6 +48,7 @@ #include "glxmediaselectionpopup.h" #include +#include TInt CGlxCommandHandlerAddToContainer::iSelectionCount = 0; @@ -59,6 +60,7 @@ CGlxCommandHandlerAddToContainer::NewAddToAlbumCommandHandlerL( MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) { + TRACER("CGlxCommandHandlerAddToContainer::NewAddToAlbumCommandHandlerL"); return CGlxCommandHandlerAddToContainer::NewL (aMediaListProvider, EGlxCmdAddToAlbum, aHasToolbarItem); } @@ -71,6 +73,7 @@ CGlxCommandHandlerAddToContainer::NewAddToTagCommandHandlerL( MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) { + TRACER("CGlxCommandHandlerAddToContainer::NewAddToTagCommandHandlerL"); return CGlxCommandHandlerAddToContainer::NewL(aMediaListProvider, EGlxCmdAddTag, aHasToolbarItem); } @@ -83,6 +86,7 @@ CGlxCommandHandlerAddToContainer::NewAddToFavCommandHandlerL( MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) { + TRACER("CGlxCommandHandlerAddToContainer::NewAddToFavCommandHandlerL"); return CGlxCommandHandlerAddToContainer::NewL(aMediaListProvider, EGlxCmdAddToFavourites, aHasToolbarItem); } @@ -94,6 +98,7 @@ EXPORT_C CGlxCommandHandlerAddToContainer* CGlxCommandHandlerAddToContainer::NewL( MGlxMediaListProvider* aMediaListProvider, TInt aCommandId, TBool aHasToolbarItem) { + TRACER("CGlxCommandHandlerAddToContainer::NewL"); CGlxCommandHandlerAddToContainer* self = new ( ELeave ) CGlxCommandHandlerAddToContainer( aMediaListProvider, aHasToolbarItem ); CleanupStack::PushL( self ); @@ -119,6 +124,7 @@ // void CGlxCommandHandlerAddToContainer::ConstructL(TInt aCommandId) { + TRACER("CGlxCommandHandlerAddToContainer::ConstructL"); // Load resource TParse parse; parse.Set(KGlxUiUtilitiesResource, &KDC_APP_RESOURCE_DIR, NULL); @@ -146,6 +152,7 @@ // EXPORT_C CGlxCommandHandlerAddToContainer::~CGlxCommandHandlerAddToContainer() { + TRACER("CGlxCommandHandlerAddToContainer::~CGlxCommandHandlerAddToContainer"); if ( iResourceOffset ) { CCoeEnv::Static()->DeleteResourceFile(iResourceOffset); @@ -161,6 +168,7 @@ CMPXCommand* CGlxCommandHandlerAddToContainer::CreateCommandL(TInt aCommandId, MGlxMediaList& aMediaList, TBool& /*aConsume*/) const { + TRACER("CGlxCommandHandlerAddToContainer::CreateCommandL"); // Ignore the current command in case the previous command has still not been completed if(iIsProcessOngoing) { @@ -253,6 +261,7 @@ // HBufC* CGlxCommandHandlerAddToContainer::CompletionTextL() const { + TRACER("CGlxCommandHandlerAddToContainer::CompletionTextL()"); if (iCommandId == EGlxCmdAddToAlbum) { if (iSelectionCount > 1) @@ -282,10 +291,26 @@ void CGlxCommandHandlerAddToContainer::DoHandleCommandCompleteL(TAny* /*aSessionId*/, CMPXCommand* /*aCommandResult*/, TInt /*aError*/, MGlxMediaList* /*aList*/) { + TRACER("CGlxCommandHandlerAddToContainer::DoHandleCommandCompleteL()"); // Reset the Flag inorder to allow any new selection pop-up to be created. iIsProcessOngoing = EFalse; } - + + + +// ----------------------------------------------------------------------------- +// DialogDismissedL +// ----------------------------------------------------------------------------- +// +void CGlxCommandHandlerAddToContainer::DialogDismissedL(TInt aButtonId) + { + TRACER("CGlxCommandHandlerAddToContainer::DialogDismissedL"); + iIsProcessOngoing = EFalse; + CGlxMpxCommandCommandHandler::DialogDismissedL(aButtonId); + } + + + // --------------------------------------------------------------------------- // CGlxCommandHandlerAddToContainer::DoActivateL // --------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraiwedit.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraiwedit.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraiwedit.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -57,8 +57,9 @@ { if (!aFilterUsingSelection || SelectionLength() <= MaxSelectedItems()) { - // Add filename attribute to fetch context - aAttributes.AppendL(KMPXMediaGeneralUri); + // Add MIME type and fileaname attributes + aAttributes.AppendL(KMPXMediaGeneralMimeType); + aAttributes.AppendL(KMPXMediaGeneralUri); } } @@ -109,7 +110,8 @@ return AppendDefaultAiwParameterL( aItem, aAiwServiceHandler, ETrue, // Add the Uri - EFalse); // Don't add the Mime Type + ETrue); // Add the Mime Type + } // ----------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerback.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerback.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerback.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -175,7 +175,9 @@ CleanupStack::PushL(navigationalState); // let Back Stepping Service handle the event - if(2 == navigationalState->Levels()&& iNavigationalState->BackExitStatus()) + if((2 == navigationalState->Levels()|| + iNavigationalState->StartingLevel() == navigationalState->Levels()-1) + && iNavigationalState->BackExitStatus()) { iBSWrapper->HandleBackCommandL( KPhotosSuiteNavigation ); if(iAppUi) @@ -183,13 +185,6 @@ iAppUi->ProcessCommandL(EAknSoftkeyExit); } } - else if (!(iNavigationalState->BackExitStatus())) - { - if(iAppUi) - { - iAppUi->ProcessCommandL(EAknSoftkeyExit); - } - } else if( iIsViewActivated ) { iIsViewActivated = EFalse; @@ -213,13 +208,6 @@ } else { - if (!(iNavigationalState->BackExitStatus())) - { - if(iAppUi) - { - iAppUi->ProcessCommandL(EAknSoftkeyExit); - } - } if( iIsViewActivated ) { iIsViewActivated = EFalse; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerdownload.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerdownload.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerdownload.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -28,8 +28,8 @@ // EXTERNAL INCLUDES -#include // for favourites context IDs -#include +#include // for favourites context IDs +#include // INTERNAL INCLUDES #include // for EGlxCmdDownloadImages, diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlernewmedia.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -35,6 +35,7 @@ #include #include #include +#include #include // for CGlxResourceUtilities #include #include @@ -61,6 +62,7 @@ // EXPORT_C CGlxCommandHandlerNewMedia* CGlxCommandHandlerNewMedia::NewL(MGlxMediaListProvider* aMediaListProvider) { + TRACER("CGlxCommandHandlerNewMedia* CGlxCommandHandlerNewMedia::NewL"); CGlxCommandHandlerNewMedia* self = new (ELeave) CGlxCommandHandlerNewMedia(aMediaListProvider); CleanupStack::PushL(self); self->ConstructL(); @@ -86,6 +88,7 @@ void CGlxCommandHandlerNewMedia::DoHandleCommandCompleteL(TAny* /*aSessionId*/, CMPXCommand* aCommandResult, TInt aError, MGlxMediaList* /*aList*/) { + TRACER("CGlxCommandHandlerNewMedia::DoHandleCommandCompleteL"); if (aError == KErrNone && aCommandResult && aCommandResult->IsSupported(KMPXMediaGeneralId)) { iNewMediaId = TGlxMediaId(aCommandResult->ValueTObjectL(KMPXMediaGeneralId)); @@ -117,6 +120,7 @@ // void CGlxCommandHandlerNewMedia::ConstructL() { + TRACER("CGlxCommandHandlerNewMedia::ConstructL()"); iFileNameAlreadyExists = EFalse ; // Load resource file TParse parse; @@ -139,6 +143,7 @@ // EXPORT_C CGlxCommandHandlerNewMedia::~CGlxCommandHandlerNewMedia() { + TRACER("CGlxCommandHandlerNewMedia::~CGlxCommandHandlerNewMedia()"); if ( iResourceOffset ) { CCoeEnv::Static()->DeleteResourceFile(iResourceOffset); @@ -155,6 +160,7 @@ // EXPORT_C TInt CGlxCommandHandlerNewMedia::ExecuteLD(TGlxMediaId& aNewMediaId) { + TRACER("CGlxCommandHandlerNewMedia::ExecuteLD"); CleanupStack::PushL(this); iSchedulerWait = new (ELeave) CActiveSchedulerWait(); @@ -182,6 +188,7 @@ CMPXCommand* CGlxCommandHandlerNewMedia::CreateCommandL(TInt /*aCommandId*/, MGlxMediaList& aMediaList, TBool& /*aConsume*/) const { + TRACER("CGlxCommandHandlerNewMedia::CreateCommandL"); iOkToExit = ETrue; CMPXCollectionPath* path = aMediaList.PathLC( NGlxListDefs::EPathParent ); @@ -189,7 +196,13 @@ TBuf defaultNewMediaItemTitle; - TitlesL(TGlxMediaId(path->Id(0)), defaultNewMediaItemTitle); + TRAPD(error, TitlesL(TGlxMediaId(path->Id(0)), defaultNewMediaItemTitle)); + if(error != KErrNone) + { + iNewMediaCreationError = KErrCancel; + CleanupStack::PopAndDestroy(path); + return command; + } HBufC* mediaPopupTitle = StringLoader::LoadLC(R_GLX_PROMPT_NAME); if(iFileNameAlreadyExists) @@ -229,6 +242,7 @@ // void CGlxCommandHandlerNewMedia::HandleErrorL(TInt aError) { + TRACER("CGlxCommandHandlerNewMedia::HandleErrorL"); if (aError == KErrAlreadyExists && iNewMediaItemTitle) { HBufC* info = StringLoader::LoadLC(R_GLX_NAME_ALREADY_USED, *iNewMediaItemTitle); @@ -258,6 +272,7 @@ // EXPORT_C TBool CGlxCommandHandlerNewMedia::BypassFiltersForExecute() const { + TRACER("CGlxCommandHandlerNewMedia::BypassFiltersForExecute()"); // if iSchedulerWait exists then we know the command is being executed from // the ExecuteLD() method and filtering is not required. return iSchedulerWait != NULL; @@ -271,6 +286,7 @@ void CGlxCommandHandlerNewMedia::TitlesL(const TGlxMediaId aCollectionId, TDes& aDefaultNewMediaItemTitle) const { + TRACER("CGlxCommandHandlerNewMedia::TitlesL"); CMPXCollectionPath* path = CMPXCollectionPath::NewL(); CleanupStack::PushL(path); MGlxMediaList* rootList = MGlxMediaList::InstanceL(*path); @@ -315,6 +331,7 @@ HBufC* CGlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL (const TDesC& aDefaultNewMediaItemTitle, MGlxMediaList& aList) const { + TRACER("CGlxCommandHandlerNewMedia::GenerateNewMediaItemTitleL"); TGlxSequentialIterator iter; CGlxAttributeContext* attributeContext = new (ELeave) CGlxAttributeContext(&iter); CleanupStack::PushL(attributeContext); @@ -415,6 +432,7 @@ // void CGlxCommandHandlerNewMedia::SetFocusL(TInt aIndex) { + TRACER("CGlxCommandHandlerNewMedia::SetFocusL"); iOkToExit = ETrue; MediaList().SetFocusL(NGlxListDefs::EAbsolute, aIndex); TryExitL(KErrNone); @@ -426,6 +444,7 @@ // EXPORT_C void CGlxCommandHandlerNewMedia::HandleItemAddedL(TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList) { + TRACER("CGlxCommandHandlerNewMedia::HandleItemAddedL"); if(aList == &MediaList() && iNewMediaId != KGlxCollectionRootId) { for (TInt i = aStartIndex; i <= aEndIndex; i++) @@ -450,6 +469,7 @@ // running before it. (Unless they too are scheduled to run and have the maximum // possible priority { + TRACER("CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::CGlxAsyncFocuser"); __ASSERT_DEBUG(aGlxCommandHandlerNewMedia, Panic(EGlxPanicNullPointer)); CActiveScheduler::Add(this); } @@ -461,6 +481,7 @@ CGlxCommandHandlerNewMedia::CGlxAsyncFocuser:: ~CGlxAsyncFocuser() { + TRACER("CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::~CGlxAsyncFocuser()"); Cancel(); } @@ -470,6 +491,7 @@ // void CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::RunL() { + TRACER("CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::RunL()"); iGlxCommandHandlerNewMedia->SetFocusL(iFocusIndex); } @@ -489,6 +511,7 @@ // void CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::SetFocus(TInt aIndex) { + TRACER("CGlxCommandHandlerNewMedia::CGlxAsyncFocuser::SetFocus()"); iFocusIndex = aIndex; TRequestStatus* requestStatus = &iStatus; User::RequestComplete(requestStatus,KErrNone); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlersave.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlersave.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlersave.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -11,53 +11,27 @@ * * Contributors: * -* Description: Delete command handler +* Description: Save command handler * */ - - #include "glxcommandhandlersave.h" -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include // for CGlxResourceUtilities #include -#include -#include -#include -#include -#include -#include #include -#include #include -#include -#include -#include "glxcommandfactory.h" - - - +#include // --------------------------------------------------------------------------- // Two-phased constructor. // --------------------------------------------------------------------------- // -EXPORT_C CGlxCommandHandlerSave* CGlxCommandHandlerSave::NewL( - MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) +EXPORT_C CGlxCommandHandlerSave* CGlxCommandHandlerSave::NewL() { TRACER("CGlxCommandHandlerSave::NewL"); - CGlxCommandHandlerSave* self = new (ELeave) CGlxCommandHandlerSave(aMediaListProvider, aHasToolbarItem); + CGlxCommandHandlerSave* self = new (ELeave) CGlxCommandHandlerSave(); CleanupStack::PushL( self ); self->ConstructL(); CleanupStack::Pop( self ); @@ -69,8 +43,7 @@ // might leave. // --------------------------------------------------------------------------- // -CGlxCommandHandlerSave::CGlxCommandHandlerSave(MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) - : CGlxMpxCommandCommandHandler( aMediaListProvider, aHasToolbarItem ) +CGlxCommandHandlerSave::CGlxCommandHandlerSave() { // Don't do anything. } @@ -82,21 +55,7 @@ void CGlxCommandHandlerSave::ConstructL() { TRACER("CGlxCommandHandlerSave::ConstructL"); - iUiUtility = CGlxUiUtility::UtilityL(); iImageViewerInstance = CGlxImageViewerManager::InstanceL(); - // Load resource file - TParse parse; - parse.Set(KGlxUiUtilitiesResource, &KDC_APP_RESOURCE_DIR, NULL); - TFileName resourceFile; - resourceFile.Append(parse.FullName()); - CGlxResourceUtilities::GetResourceFilenameL(resourceFile); - iResourceOffset = CCoeEnv::Static()->AddResourceFileL(resourceFile); - - // Add supported command - TCommandInfo saveInfo( EGlxCmdSave ); - // Filter out static items - saveInfo.iMinSelectionLength = 1; - AddCommandL(saveInfo); } // --------------------------------------------------------------------------- @@ -106,14 +65,6 @@ EXPORT_C CGlxCommandHandlerSave::~CGlxCommandHandlerSave() { TRACER("CGlxCommandHandlerSave::~CGlxCommandHandlerSave"); - if (iResourceOffset) - { - CCoeEnv::Static()->DeleteResourceFile(iResourceOffset); - } - if(iUiUtility) - { - iUiUtility->Close(); - } if ( NULL != iImageViewerInstance) { iImageViewerInstance->DeleteInstance(); @@ -121,20 +72,26 @@ } // --------------------------------------------------------------------------- -// Create an add to container command +// Create save command // --------------------------------------------------------------------------- // -CMPXCommand* CGlxCommandHandlerSave::CreateCommandL(TInt /*aCommandId*/, - MGlxMediaList& /*aMediaList*/, TBool& /*aConsume*/) const +TBool CGlxCommandHandlerSave::ExecuteL(TInt aCommandId) { TRACER("CGlxCommandHandlerSave::CreateCommandL"); - CMPXCommand* command = NULL; - TDataType nullType; - CDocumentHandler* handler = CDocumentHandler::NewLC( NULL ); - HBufC* imagePath = iImageViewerInstance->ImageUri(); - TInt err = handler->CopyL( *imagePath, *imagePath, nullType, NULL ); - CleanupStack::PopAndDestroy(handler); - return command; + if(aCommandId == EGlxCmdSave) + { + TDataType nullType; + RFile64& imageHandle = iImageViewerInstance->ImageFileHandle(); + if ( imageHandle.SubSessionHandle() != KNullHandle ) + { + CDocumentHandler* handler = CDocumentHandler::NewLC(NULL); + __ASSERT_ALWAYS(handler, Panic(EGlxPanicNullPointer)); + TRAP_IGNORE(handler->CopyL(imageHandle, KNullDesC, nullType, NULL)); + CleanupStack::PopAndDestroy(handler); + } + return ETrue; + } + return EFalse; } // --------------------------------------------------------------------------- // DynInitMenuPaneL @@ -161,7 +118,16 @@ // ---------------------------------------------------------------------------- void CGlxCommandHandlerSave::DoActivateL(TInt /*aViewId*/) { + // Do Nothing + } +// ----------------------------------------------------------------------------- +// Deactivate +// ----------------------------------------------------------------------------- +// +void CGlxCommandHandlerSave::Deactivate() + { + // Do Nothing } // ---------------------------------------------------------------------------- @@ -174,7 +140,7 @@ // Is the key event from the Cancel (Backspace) key if (aKeyEvent.iCode == EKeyBackspace && aType == EEventKey) { - // try to execute the delete command + // try to execute the save command if(ExecuteL( EGlxCmdSave )) { response = EKeyWasConsumed; @@ -183,15 +149,13 @@ return response; } -// ---------------------------------------------------------------------------- -// PopulateToolbar -// ---------------------------------------------------------------------------- +// ----------------------------------------------------------------------------- +// PreDynInitMenuPaneL +// ----------------------------------------------------------------------------- // -void CGlxCommandHandlerSave::PopulateToolbarL() +void CGlxCommandHandlerSave::PreDynInitMenuPaneL( TInt /*aResourceId*/ ) { - TRACER( "CGlxCommandHandlerRename::PopulateToolbar" ); - - iUiUtility->ScreenFurniture()->SetTooltipL( EGlxCmdSave, CAknButton::EPositionLeft ); + // Do Nothing } - - + +//End of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerslideshow.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerslideshow.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerslideshow.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -50,10 +50,6 @@ const TInt KShwDefaultBufferSize = 128; } -// This class does not have access to a CEikonEnv and hence -// pls ignore the code scanner warning - Using CEikonEnv::Static -#define GetAppUi() (dynamic_cast(CEikonEnv::Static()->EikAppUi())) - // --------------------------------------------------------------------------- // Two-phased constructor. // --------------------------------------------------------------------------- @@ -300,7 +296,7 @@ } // show HUI display CGlxUiUtility::ShowAlfDisplayL(); - GetAppUi()->ProcessCommandL(EGlxCmdResetView); + iAvkonAppUi->ProcessCommandL(EGlxCmdResetView); break; } case EGlxCmdShowViaUpnpStateChanged: diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerupload.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerupload.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlerupload.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -53,11 +53,6 @@ const TUid KCmdGetOneClickToolTip = { 15 }; } -// Get the AppUi instance -// This class does not have access to a CEikonEnv and hence -// pls ignore the code scanner warning - Using CEikonEnv::Static -#define GetAppUi() (dynamic_cast(CEikonEnv::Static()->EikAppUi())) - // ---------------------------------------------------------------------------- // Two-phased constructor. // ---------------------------------------------------------------------------- @@ -370,47 +365,48 @@ void CGlxCommandHandlerUpload::SetToolTipL() { TRACER("CGlxCommandHandlerUpload::SetToolTipL"); - - CAknToolbar* toolbar = GetAppUi()->CurrentFixedToolbar(); - if(toolbar) + CAknToolbar* toolbar = iAvkonAppUi->CurrentFixedToolbar(); + if (!toolbar) { - CAknButton* uploadButton = static_cast - (toolbar->ControlOrNull( EGlxCmdUpload )); - - if(uploadButton && iUploadSupported) + return; + } + + CAknButton* uploadButton = + static_cast (toolbar->ControlOrNull(EGlxCmdUpload)); + + if (uploadButton && iUploadSupported) + { + // Get the tooltip text from AIW ShareOnline application + HBufC* toolTipText = NULL; + + // GetToolTipL might allocate memory. Hence toolTipText should + // be popped and destroyed if present. + GetToolTipL(toolTipText); + + if (toolTipText) { - // Get the tooltip text from AIW ShareOnline application - HBufC* toolTipText = NULL; - - // GetToolTipL might allocate memory. Hence toolTipText should - // be popped and destroyed if present. - GetToolTipL(toolTipText); - - if( toolTipText ) - { - // Get current button state and set the help text(tool tip) - CAknButtonState* currentState = uploadButton->State(); - - TBool dimmed = uploadButton->IsDimmed(); - if(dimmed) - { - uploadButton->SetDimmed(EFalse); - currentState->SetHelpTextL( toolTipText->Des()); - uploadButton->SetDimmed(ETrue); - } - else - { - currentState->SetHelpTextL( toolTipText->Des()); - } - CleanupStack::PopAndDestroy(toolTipText); + // Get current button state and set the help text(tool tip) + CAknButtonState* currentState = uploadButton->State(); + + TBool dimmed = uploadButton->IsDimmed(); + if (dimmed) + { + uploadButton->SetDimmed(EFalse); + currentState->SetHelpTextL(toolTipText->Des()); + uploadButton->SetDimmed(ETrue); } else { - User::Leave(KErrArgument); - } + currentState->SetHelpTextL(toolTipText->Des()); + } + CleanupStack::PopAndDestroy(toolTipText); } - } + else + { + User::Leave(KErrArgument); + } + } // if(uploadButton && iUploadSupported) } // End of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlervideoplayback.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlervideoplayback.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandlervideoplayback.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -91,11 +91,6 @@ { iUiUtility = CGlxUiUtility::UtilityL(); - const TUid playbackMode = { 0x200009EE }; // photos UID - iPlaybackUtility = MMPXPlaybackUtility::UtilityL( playbackMode ); - MMPXPlayerManager& manager = iPlaybackUtility->PlayerManager(); - manager.SelectPlayerL( KVideoHelixPlaybackPluginUid ); - iPlaybackUtility->AddObserverL( *this ); iViewUtility = MMPXViewUtility::UtilityL(); @@ -215,6 +210,16 @@ { if(media->IsSupported(KMPXMediaGeneralUri)) { + if (!iPlaybackUtility) + { + GLX_LOG_INFO( "CmdHandler VideoPlayback - SelectPlayerL(+)" ); + const TUid playbackMode = { 0x200009EE }; // photos UID + iPlaybackUtility = MMPXPlaybackUtility::UtilityL( playbackMode ); + MMPXPlayerManager& manager = iPlaybackUtility->PlayerManager(); + manager.SelectPlayerL( KVideoHelixPlaybackPluginUid ); + iPlaybackUtility->AddObserverL( *this ); + GLX_LOG_INFO( "CmdHandler VideoPlayback - SelectPlayerL(-)" ); + } // MPX playbackutility instead of VIA Player const TDesC& filename = media->ValueText(KMPXMediaGeneralUri); // Causes callback to HandlePlaybackMessage() diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/commandhandlers/tsrc/group/bld.inf --- a/photosgallery/viewframework/commandhandlers/tsrc/group/bld.inf Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/tsrc/group/bld.inf Mon Jan 18 20:19:20 2010 +0200 @@ -16,7 +16,7 @@ */ - +#include "../ut_commandhandlermoreinfo/group/bld.inf" PRJ_PLATFORMS ARMV5 GCCE WINSCW @@ -27,9 +27,6 @@ PRJ_TESTMMPFILES -//../ut__commandhandlermarking/group/t_glxcommandhandlermarking.mmp -//../ut_commandhandlerdrm/group/t_glxcommandhandlerdrm.mmp -../ut_commandhandlermoreinfo/group/t_glxcommandhandlermoreinfo.mmp // End of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/dataprovider/src/glxpreviewthumbnailbinding.cpp --- a/photosgallery/viewframework/dataprovider/src/glxpreviewthumbnailbinding.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/dataprovider/src/glxpreviewthumbnailbinding.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -334,28 +334,26 @@ // This function resets any existing timer and starts a new timer tick // ---------------------------------------------------------------------------- // - -CGlxBinding::TResponse CGlxPreviewThumbnailBinding::HandleFocusChanged( TBool aIsGained ) +CGlxBinding::TResponse CGlxPreviewThumbnailBinding::HandleFocusChanged( + TBool aIsGained) { TRACER("CGlxPreviewThumbnailBinding::HandleFocusChanged"); - if(aIsGained) - { - if(iTimer) - { - iTimer->Cancel(); - } - - if(!iTimer->IsActive() ) - { - iTimer->Start(KThumbnailStartTimeDelay, KThumbnailIntervalTimeDelay, - TCallBack(IsTime,this)); - - } - } - //return EUpdateRequested; - return ENoUpdateNeeded; + if (aIsGained && iTimer) + { + if (iTimer->IsActive()) + { + iTimer->Cancel(); + } + + if (!iTimer->IsActive()) + { + iTimer->Start(KThumbnailStartTimeDelay, + KThumbnailIntervalTimeDelay, TCallBack(IsTime, this)); + } + } + + return ENoUpdateNeeded; } - // ---------------------------------------------------------------------------- // HandleItemChangedL diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/eabi/glxmedialistsu.def --- a/photosgallery/viewframework/medialists/eabi/glxmedialistsu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/eabi/glxmedialistsu.def Mon Jan 18 20:19:20 2010 +0200 @@ -57,140 +57,141 @@ _ZN21TGlxSelectionIteratorD1Ev @ 56 NONAME _ZN21TGlxSelectionIteratorD2Ev @ 57 NONAME _ZN21TGlxSelectionIteratorppEi @ 58 NONAME - _ZN22CGlxImageViewerManager8ImageUriEv @ 59 NONAME - _ZN22CGlxImageViewerManager9IsPrivateEv @ 60 NONAME - _ZN22TGlxSequentialIterator8SetRangeEi @ 61 NONAME - _ZN22TGlxSequentialIteratorC1Ev @ 62 NONAME - _ZN22TGlxSequentialIteratorC2Ev @ 63 NONAME - _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 64 NONAME - _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 65 NONAME - _ZN23TGlxFetchContextRemover5CloseEv @ 66 NONAME - _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 67 NONAME - _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 68 NONAME - _ZN23TGlxFetchContextRemoverD1Ev @ 69 NONAME - _ZN23TGlxFetchContextRemoverD2Ev @ 70 NONAME - _ZN25TGlxFirstThenLastIteratorC1Ev @ 71 NONAME - _ZN25TGlxFirstThenLastIteratorC2Ev @ 72 NONAME - _ZN25TGlxFirstThenLastIteratorD1Ev @ 73 NONAME - _ZN25TGlxFirstThenLastIteratorD2Ev @ 74 NONAME - _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 75 NONAME - _ZN27CGlxDefaultAttributeContext4NewLEv @ 76 NONAME - _ZN27CGlxDefaultAttributeContextD0Ev @ 77 NONAME - _ZN27CGlxDefaultAttributeContextD1Ev @ 78 NONAME - _ZN27CGlxDefaultAttributeContextD2Ev @ 79 NONAME - _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 80 NONAME - _ZN27CGlxDefaultThumbnailContext4NewLEv @ 81 NONAME - _ZN27CGlxDefaultThumbnailContextD0Ev @ 82 NONAME - _ZN27CGlxDefaultThumbnailContextD1Ev @ 83 NONAME - _ZN27CGlxDefaultThumbnailContextD2Ev @ 84 NONAME - _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 85 NONAME - _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 86 NONAME - _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 87 NONAME - _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 88 NONAME - _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 89 NONAME - _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 90 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 91 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 92 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 93 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 94 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 95 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 96 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 97 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 98 NONAME - _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 99 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 100 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 101 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 102 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 103 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 104 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 105 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 106 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 107 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 108 NONAME - _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 109 NONAME - _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 110 NONAME - _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 111 NONAME - _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 112 NONAME - _ZN9CGlxMedia5ResetEv @ 113 NONAME - _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 114 NONAME - _ZN9CGlxMediaC1ERK11TGlxMediaId @ 115 NONAME - _ZN9CGlxMediaC2ERK11TGlxMediaId @ 116 NONAME - _ZN9CGlxMediaD0Ev @ 117 NONAME - _ZN9CGlxMediaD1Ev @ 118 NONAME - _ZN9CGlxMediaD2Ev @ 119 NONAME - _ZN9MGlxCache9InstanceLEv @ 120 NONAME - _ZN9TGlxMedia23DeleteLocationAttributeEv @ 121 NONAME - _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 122 NONAME - _ZNK14CGlxListWindow2AtEi @ 123 NONAME - _ZNK14CGlxListWindow8IteratorEv @ 124 NONAME - _ZNK20CGlxUStringConverter9AsStringLERK9TGlxMediaRK13TMPXAttributeiRP7HBufC16 @ 125 NONAME - _ZNK21TGlxSelectionIterator7InRangeEi @ 126 NONAME - _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 127 NONAME - _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 128 NONAME - _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 129 NONAME - _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 130 NONAME - _ZNK9TGlxMedia11GetDurationERf @ 131 NONAME - _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 132 NONAME - _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 133 NONAME - _ZNK9TGlxMedia13GetDimensionsER5TSize @ 134 NONAME - _ZNK9TGlxMedia13GetFrameCountERi @ 135 NONAME - _ZNK9TGlxMedia13GetSystemItemERi @ 136 NONAME - _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 137 NONAME - _ZNK9TGlxMedia14IsDrmProtectedEv @ 138 NONAME - _ZNK9TGlxMedia15GetDrmProtectedERi @ 139 NONAME - _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 140 NONAME - _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 141 NONAME - _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 142 NONAME - _ZNK9TGlxMedia20GetStaticItemCommandERi @ 143 NONAME - _ZNK9TGlxMedia21GetContainedItemCountERi @ 144 NONAME - _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 145 NONAME - _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 146 NONAME - _ZNK9TGlxMedia3UriEv @ 147 NONAME - _ZNK9TGlxMedia5TitleEv @ 148 NONAME - _ZNK9TGlxMedia7CommentEv @ 149 NONAME - _ZNK9TGlxMedia7GetDateER5TTime @ 150 NONAME - _ZNK9TGlxMedia7GetSizeERi @ 151 NONAME - _ZNK9TGlxMedia8CategoryEv @ 152 NONAME - _ZNK9TGlxMedia8IsStaticEv @ 153 NONAME - _ZNK9TGlxMedia8MimeTypeEv @ 154 NONAME - _ZNK9TGlxMedia8SubTitleEv @ 155 NONAME - _ZNK9TGlxMedia9IdSpaceIdEv @ 156 NONAME - _ZTI13CGlxMediaList @ 157 NONAME - _ZTI14CGlxListWindow @ 158 NONAME - _ZTI15CGlxImageReader @ 159 NONAME - _ZTI16CGlxCacheManager @ 160 NONAME - _ZTI20CGlxAttributeContext @ 161 NONAME - _ZTI20CGlxGarbageCollector @ 162 NONAME - _ZTI20CGlxThumbnailContext @ 163 NONAME - _ZTI21TGlxExclusionIterator @ 164 NONAME - _ZTI21TGlxSelectionIterator @ 165 NONAME - _ZTI22TGlxSequentialIterator @ 166 NONAME - _ZTI22TGlxSpecificIdIterator @ 167 NONAME - _ZTI25TGlxFirstThenLastIterator @ 168 NONAME - _ZTI27CGlxDefaultAttributeContext @ 169 NONAME - _ZTI27CGlxDefaultThumbnailContext @ 170 NONAME - _ZTI28TGlxFromFocusOutwardIterator @ 171 NONAME - _ZTI33TGlxFromManualIndexBlockyIterator @ 172 NONAME - _ZTI34TGlxFromFocusOutwardBlockyIterator @ 173 NONAME - _ZTI34TGlxFromIndexOutwardBlockyIterator @ 174 NONAME - _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 175 NONAME - _ZTV13CGlxMediaList @ 176 NONAME - _ZTV14CGlxListWindow @ 177 NONAME - _ZTV15CGlxImageReader @ 178 NONAME - _ZTV16CGlxCacheManager @ 179 NONAME - _ZTV20CGlxAttributeContext @ 180 NONAME - _ZTV20CGlxGarbageCollector @ 181 NONAME - _ZTV20CGlxThumbnailContext @ 182 NONAME - _ZTV21TGlxExclusionIterator @ 183 NONAME - _ZTV21TGlxSelectionIterator @ 184 NONAME - _ZTV22TGlxSequentialIterator @ 185 NONAME - _ZTV22TGlxSpecificIdIterator @ 186 NONAME - _ZTV25TGlxFirstThenLastIterator @ 187 NONAME - _ZTV27CGlxDefaultAttributeContext @ 188 NONAME - _ZTV27CGlxDefaultThumbnailContext @ 189 NONAME - _ZTV28TGlxFromFocusOutwardIterator @ 190 NONAME - _ZTV33TGlxFromManualIndexBlockyIterator @ 191 NONAME - _ZTV34TGlxFromFocusOutwardBlockyIterator @ 192 NONAME - _ZTV34TGlxFromIndexOutwardBlockyIterator @ 193 NONAME - _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 194 NONAME + _ZN22CGlxImageViewerManager17IncrementRefCountEv @ 59 NONAME + _ZN22CGlxImageViewerManager8ImageUriEv @ 60 NONAME + _ZN22CGlxImageViewerManager9IsPrivateEv @ 61 NONAME + _ZN22TGlxSequentialIterator8SetRangeEi @ 62 NONAME + _ZN22TGlxSequentialIteratorC1Ev @ 63 NONAME + _ZN22TGlxSequentialIteratorC2Ev @ 64 NONAME + _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 65 NONAME + _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 66 NONAME + _ZN23TGlxFetchContextRemover5CloseEv @ 67 NONAME + _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 68 NONAME + _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 69 NONAME + _ZN23TGlxFetchContextRemoverD1Ev @ 70 NONAME + _ZN23TGlxFetchContextRemoverD2Ev @ 71 NONAME + _ZN25TGlxFirstThenLastIteratorC1Ev @ 72 NONAME + _ZN25TGlxFirstThenLastIteratorC2Ev @ 73 NONAME + _ZN25TGlxFirstThenLastIteratorD1Ev @ 74 NONAME + _ZN25TGlxFirstThenLastIteratorD2Ev @ 75 NONAME + _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 76 NONAME + _ZN27CGlxDefaultAttributeContext4NewLEv @ 77 NONAME + _ZN27CGlxDefaultAttributeContextD0Ev @ 78 NONAME + _ZN27CGlxDefaultAttributeContextD1Ev @ 79 NONAME + _ZN27CGlxDefaultAttributeContextD2Ev @ 80 NONAME + _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 81 NONAME + _ZN27CGlxDefaultThumbnailContext4NewLEv @ 82 NONAME + _ZN27CGlxDefaultThumbnailContextD0Ev @ 83 NONAME + _ZN27CGlxDefaultThumbnailContextD1Ev @ 84 NONAME + _ZN27CGlxDefaultThumbnailContextD2Ev @ 85 NONAME + _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 86 NONAME + _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 87 NONAME + _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 88 NONAME + _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 89 NONAME + _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 90 NONAME + _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 91 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 92 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 93 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 94 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 95 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 96 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 97 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 98 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 99 NONAME + _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 100 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 101 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 102 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 103 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 104 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 105 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 106 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 107 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 108 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 109 NONAME + _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 110 NONAME + _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 111 NONAME + _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 112 NONAME + _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 113 NONAME + _ZN9CGlxMedia5ResetEv @ 114 NONAME + _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 115 NONAME + _ZN9CGlxMediaC1ERK11TGlxMediaId @ 116 NONAME + _ZN9CGlxMediaC2ERK11TGlxMediaId @ 117 NONAME + _ZN9CGlxMediaD0Ev @ 118 NONAME + _ZN9CGlxMediaD1Ev @ 119 NONAME + _ZN9CGlxMediaD2Ev @ 120 NONAME + _ZN9MGlxCache9InstanceLEv @ 121 NONAME + _ZN9TGlxMedia23DeleteLocationAttributeEv @ 122 NONAME + _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 123 NONAME + _ZNK14CGlxListWindow2AtEi @ 124 NONAME + _ZNK14CGlxListWindow8IteratorEv @ 125 NONAME + _ZNK20CGlxUStringConverter9AsStringLERK9TGlxMediaRK13TMPXAttributeiRP7HBufC16 @ 126 NONAME + _ZNK21TGlxSelectionIterator7InRangeEi @ 127 NONAME + _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 128 NONAME + _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 129 NONAME + _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 130 NONAME + _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 131 NONAME + _ZNK9TGlxMedia11GetDurationERf @ 132 NONAME + _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 133 NONAME + _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 134 NONAME + _ZNK9TGlxMedia13GetDimensionsER5TSize @ 135 NONAME + _ZNK9TGlxMedia13GetFrameCountERi @ 136 NONAME + _ZNK9TGlxMedia13GetSystemItemERi @ 137 NONAME + _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 138 NONAME + _ZNK9TGlxMedia14IsDrmProtectedEv @ 139 NONAME + _ZNK9TGlxMedia15GetDrmProtectedERi @ 140 NONAME + _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 141 NONAME + _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 142 NONAME + _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 143 NONAME + _ZNK9TGlxMedia20GetStaticItemCommandERi @ 144 NONAME + _ZNK9TGlxMedia21GetContainedItemCountERi @ 145 NONAME + _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 146 NONAME + _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 147 NONAME + _ZNK9TGlxMedia3UriEv @ 148 NONAME + _ZNK9TGlxMedia5TitleEv @ 149 NONAME + _ZNK9TGlxMedia7CommentEv @ 150 NONAME + _ZNK9TGlxMedia7GetDateER5TTime @ 151 NONAME + _ZNK9TGlxMedia7GetSizeERi @ 152 NONAME + _ZNK9TGlxMedia8CategoryEv @ 153 NONAME + _ZNK9TGlxMedia8IsStaticEv @ 154 NONAME + _ZNK9TGlxMedia8MimeTypeEv @ 155 NONAME + _ZNK9TGlxMedia8SubTitleEv @ 156 NONAME + _ZNK9TGlxMedia9IdSpaceIdEv @ 157 NONAME + _ZTI13CGlxMediaList @ 158 NONAME + _ZTI14CGlxListWindow @ 159 NONAME + _ZTI15CGlxImageReader @ 160 NONAME + _ZTI16CGlxCacheManager @ 161 NONAME + _ZTI20CGlxAttributeContext @ 162 NONAME + _ZTI20CGlxGarbageCollector @ 163 NONAME + _ZTI20CGlxThumbnailContext @ 164 NONAME + _ZTI21TGlxExclusionIterator @ 165 NONAME + _ZTI21TGlxSelectionIterator @ 166 NONAME + _ZTI22TGlxSequentialIterator @ 167 NONAME + _ZTI22TGlxSpecificIdIterator @ 168 NONAME + _ZTI25TGlxFirstThenLastIterator @ 169 NONAME + _ZTI27CGlxDefaultAttributeContext @ 170 NONAME + _ZTI27CGlxDefaultThumbnailContext @ 171 NONAME + _ZTI28TGlxFromFocusOutwardIterator @ 172 NONAME + _ZTI33TGlxFromManualIndexBlockyIterator @ 173 NONAME + _ZTI34TGlxFromFocusOutwardBlockyIterator @ 174 NONAME + _ZTI34TGlxFromIndexOutwardBlockyIterator @ 175 NONAME + _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 176 NONAME + _ZTV13CGlxMediaList @ 177 NONAME + _ZTV14CGlxListWindow @ 178 NONAME + _ZTV15CGlxImageReader @ 179 NONAME + _ZTV16CGlxCacheManager @ 180 NONAME + _ZTV20CGlxAttributeContext @ 181 NONAME + _ZTV20CGlxGarbageCollector @ 182 NONAME + _ZTV20CGlxThumbnailContext @ 183 NONAME + _ZTV21TGlxExclusionIterator @ 184 NONAME + _ZTV21TGlxSelectionIterator @ 185 NONAME + _ZTV22TGlxSequentialIterator @ 186 NONAME + _ZTV22TGlxSpecificIdIterator @ 187 NONAME + _ZTV25TGlxFirstThenLastIterator @ 188 NONAME + _ZTV27CGlxDefaultAttributeContext @ 189 NONAME + _ZTV27CGlxDefaultThumbnailContext @ 190 NONAME + _ZTV28TGlxFromFocusOutwardIterator @ 191 NONAME + _ZTV33TGlxFromManualIndexBlockyIterator @ 192 NONAME + _ZTV34TGlxFromFocusOutwardBlockyIterator @ 193 NONAME + _ZTV34TGlxFromIndexOutwardBlockyIterator @ 194 NONAME + _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 195 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/inc/glxcachemanager.h --- a/photosgallery/viewframework/medialists/inc/glxcachemanager.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/inc/glxcachemanager.h Mon Jan 18 20:19:20 2010 +0200 @@ -180,7 +180,7 @@ void StopRAMReleaseL(); //OOM void ForceCleanupMedia(TGlxIdSpaceId aSpaceId,TGlxMediaId aId); - TBool HasDRMRightsL(TDesC& aFileName); + public: void ImageReadyL(const TInt& aError, const TSize aSz); private: @@ -287,7 +287,8 @@ */ CMPXCollectionPath* RequestAsPathLC(const CGlxMediaList& aList); - void GetMimeType(TFileName& aFileName, TDataType& aMimeType ); + void GetMimeTypeL(TFileName& aFileName, TDataType& aMimeType ); + #ifdef USE_S60_TNM /* * This function doesnt add up any value, added to reduce compiler warnings diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/inc/glximagereader.h --- a/photosgallery/viewframework/medialists/inc/glximagereader.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/inc/glximagereader.h Mon Jan 18 20:19:20 2010 +0200 @@ -48,7 +48,7 @@ public: static CGlxImageReader* NewL(MImageReadyCallBack& aNotify); ~CGlxImageReader(); - TBool HasDRMRightsL(); + TInt GetDRMRightsL(TInt aAttribute); private: MImageReadyCallBack& iNotify; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/src/glxcachemanager.cpp --- a/photosgallery/viewframework/medialists/src/glxcachemanager.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/src/glxcachemanager.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -211,6 +211,7 @@ // Cancel the pending attribute request collection.CancelRequest(); +#ifdef USE_S60_TNM GLX_DEBUG2("CGlxCacheManager::CancelPreviousRequest() iThumbnailRequestIds.Count() %d", iThumbnailRequestIds.Count()); // Check if any thumbnail requests are pending and cancel the requests. @@ -219,6 +220,7 @@ iTnEngine->CancelRequest(iThumbnailRequestIds[i].iId); } iThumbnailRequestIds.Reset(); +#endif iRequestOwner = NULL; } } @@ -595,7 +597,7 @@ #ifdef MEDIA_ID_BASED_TN_FETCH_ENABLED GLX_DEBUG2("CGlxCacheManager::MaintainCacheL() requesting TN attribute (Medialist) itemId %d", itemId.Value()); if (item.Uri().Find(KFileIdentifier) != KErrNotFound || - item.Uri().Length() == 0 && itemId.Value()) + item.Uri().Length() && itemId.Value()) #else GLX_DEBUG1("CGlxCacheManager::MaintainCacheL() requesting TN attribute (Medialist) Uri"); if (item.Uri().Find(KFileIdentifier) != KErrNotFound) @@ -764,9 +766,22 @@ } else if ( iRequestedAttrs[i] == KGlxMediaGeneralLastModifiedDate ) { - TTime time; - time.HomeTime(); - iMPXMedia->SetTObjectValueL(KGlxMediaGeneralLastModifiedDate, time.Int64()); + if(errInImage == KErrNone) + { + RFs fs; + fs.Connect(); + TEntry entry; + fs.Entry(fileName,entry); + TTime time = entry.iModified; + fs.Close(); + iMPXMedia->SetTObjectValueL(KGlxMediaGeneralLastModifiedDate, time.Int64()); + } + else + { + TTime time; + time.HomeTime(); + iMPXMedia->SetTObjectValueL(KGlxMediaGeneralLastModifiedDate, time.Int64()); + } } else if ( iRequestedAttrs[i] == KMPXMediaGeneralSize ) { @@ -805,7 +820,7 @@ if(errInImage == KErrNone) { TDataType dataType; - GetMimeType(fileName, dataType); + GetMimeTypeL(fileName, dataType); iMPXMedia->SetTextValueL(KMPXMediaGeneralMimeType, dataType.Des()); } else @@ -846,12 +861,17 @@ } else if (iRequestedAttrs[i] == KMPXMediaDrmProtected ) { - iMPXMedia->SetTObjectValueL(KMPXMediaDrmProtected, EFalse); + TBool protection = iReader->GetDRMRightsL + (ContentAccess::EIsProtected); + iMPXMedia->SetTObjectValueL(KMPXMediaDrmProtected, protection); } - else if ( iRequestedAttrs[i] == KGlxMediaGeneralDRMRightsValid ) - { + else if ( iRequestedAttrs[i] == KGlxMediaGeneralDRMRightsValid ) + { + TBool canView = iReader->GetDRMRightsL(ContentAccess::ECanView); + TInt rightsValid = canView ? + EGlxDrmRightsValid : EGlxDrmRightsInvalid; iMPXMedia->SetTObjectValueL(KGlxMediaGeneralDRMRightsValid, - EGlxDrmRightsValidityUnknown); + rightsValid); } else if ( iRequestedAttrs[i] == KMPXMediaGeneralCount ) { @@ -860,7 +880,8 @@ else if ( iRequestedAttrs[i] == KMPXMediaColDetailSpaceId ) { TGlxIdSpaceId spaceId = list->IdSpaceId(iRequestedItemIndexes[0]); - iMPXMedia->SetTObjectValueL(KMPXMediaColDetailSpaceId, spaceId.Value()); + iMPXMedia->SetTObjectValueL(KMPXMediaColDetailSpaceId, + spaceId.Value()); } else if ( iRequestedAttrs[i] == KGlxMediaGeneralSlideshowableContent ) { @@ -1406,8 +1427,10 @@ } #endif -void CGlxCacheManager::GetMimeType(TFileName& aFileName, TDataType& aMimeType) +void CGlxCacheManager::GetMimeTypeL(TFileName& aFileName, TDataType& aMimeType) { + TRACER("CGlxCacheManager::GetMimeTypeL"); + RApaLsSession session; User::LeaveIfError( session.Connect() ); CleanupClosePushL( session ); @@ -1419,9 +1442,13 @@ } void CGlxCacheManager::ImageReadyL(const TInt& aError, const TSize aSz) { + TRACER("CGlxCacheManager::ImageReadyL"); + GLX_DEBUG2("CGlxCacheManager::ImageReadyL aError=%d", aError); + iImgSz = TSize(); if(iSchedulerWait) { iSchedulerWait->AsyncStop(); } + User::LeaveIfError( aError ); iImgSz = aSz; } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/src/glximagereader.cpp --- a/photosgallery/viewframework/medialists/src/glximagereader.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/src/glximagereader.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -18,6 +18,9 @@ #include #include +#include +#include + //for DRM #include #include @@ -93,16 +96,21 @@ void CGlxImageReader::ConstructL() { TRACER("CGlxImageReader::ConstructL"); - + CActiveScheduler::Add(this); iIsLaunchedFromFMngr = EFalse; iImgViewerMgr = CGlxImageViewerManager::InstanceL(); - if (iImgViewerMgr && iImgViewerMgr->IsPrivate()) + if (!iImgViewerMgr) { - iIsLaunchedFromFMngr = ETrue; + return; } - + + if (iImgViewerMgr->IsPrivate()) + { + iIsLaunchedFromFMngr = ETrue; + } + TInt errInImage = KErrNone; if (iIsLaunchedFromFMngr) { @@ -114,13 +122,15 @@ TRAP(errInImage,iImageDecoder = CImageDecoder::FileNewL(CCoeEnv::Static()->FsSession(), iImgViewerMgr->ImageUri()->Des())); } - if(errInImage != KErrNone) + if (errInImage != KErrNone) { User::Leave(errInImage); } - iFrame = new(ELeave)CFbsBitmap(); - iFrame->Create(iImageDecoder->FrameInfo(0).iOverallSizeInPixels,iImageDecoder->FrameInfo(0).iFrameDisplayMode); - iImageDecoder->Convert(&iStatus,*iFrame,0); + iFrame = new (ELeave) CFbsBitmap(); + iFrame->Create(iImageDecoder->FrameInfo(0).iOverallSizeInPixels, + iImageDecoder->FrameInfo(0).iFrameDisplayMode); + iImageDecoder->Convert(&iStatus, *iFrame, 0); + SetActive(); } @@ -143,55 +153,52 @@ { TRACER("CGlxImageReader::RunL"); - const TSize sz = iFrame->SizeInPixels(); - iNotify.ImageReadyL(iStatus.Int(),sz); + TSize size = TSize(); + TInt reqStatus = iStatus.Int(); + if (reqStatus == KErrNone && iFrame) + { + size = iFrame->SizeInPixels(); + } + GLX_DEBUG2("CGlxImageReader::RunL() reqStatus=%d", reqStatus); + iNotify.ImageReadyL(reqStatus, size); } // --------------------------------------------------------- -// CGlxImageReader::HasDRMRightsL +// CGlxImageReader::GetDRMRightsL // --------------------------------------------------------- // -TBool CGlxImageReader::HasDRMRightsL() +TInt CGlxImageReader::GetDRMRightsL(TInt aAttribute) { - TRACER("Entering CGlxImageReader::HasDRMRightsL"); - - RAttributeSet attributeSet; - CleanupClosePushL(attributeSet); - attributeSet.AddL(ECanView); - attributeSet.AddL(EIsProtected); - CContent* content; + TRACER("CGlxImageReader::GetDRMRightsL"); + + TInt value = KErrNone; + TInt error = KErrNone; + CContent* content = NULL; if(iIsLaunchedFromFMngr) { - content = CContent::NewL(iImgViewerMgr->ImageFileHandle()); + content = CContent::NewLC(iImgViewerMgr->ImageFileHandle()); } else { - content = CContent::NewL(iImgViewerMgr->ImageUri()->Des()); + content = CContent::NewLC(iImgViewerMgr->ImageUri()->Des()); } - // Retrieve the attributes from the agent - User::LeaveIfError(content->GetAttributeSet(attributeSet)); - TInt rights = ERightsNone; - TBool drmProtected = EFalse; - attributeSet.GetValue(EIsProtected,drmProtected); - if(!drmProtected) - { - CleanupStack::PopAndDestroy(&attributeSet); - delete content; - content = NULL; - return EFalse; - } - attributeSet.GetValue(ECanView,rights); - CleanupStack::PopAndDestroy(&attributeSet); - - if(content) - { - delete content; - content = NULL; - } - - if(rights) - { - return ETrue; - } - return EFalse; + __ASSERT_ALWAYS(content, Panic(EGlxPanicNullPointer)); + error = content->GetAttribute(aAttribute, value); + CleanupStack::PopAndDestroy( content ); + GLX_DEBUG2("CGlxImageReader::GetDRMRightsL value=%d", value); + if(error != KErrNone) + { + switch ( aAttribute ) + { + case ContentAccess::EIsProtected : + value = ETrue; + break; + case ContentAccess::ECanView : + value = EFalse; + break; + default: + value = EFalse; + } + } + return value; } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/t_cglxcacheu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/t_cglxcacheu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/t_cglxcacheu.def Mon Jan 18 20:19:20 2010 +0200 @@ -2,56 +2,62 @@ _Z16CreateTestSuiteLv @ 1 NONAME _ZN15GlxErrorManager18HasAttributeErrorLEPK9CGlxMediaRK13TMPXAttribute @ 2 NONAME _ZN15GlxErrorManager18HasAttributeErrorLEPK9CGlxMediai @ 3 NONAME - _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 4 NONAME - _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 5 NONAME - _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 6 NONAME - _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 7 NONAME - _ZN9CGlxMedia5ResetEv @ 8 NONAME - _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 9 NONAME - _ZN9CGlxMediaC1ERK11TGlxMediaId @ 10 NONAME - _ZN9CGlxMediaC2ERK11TGlxMediaId @ 11 NONAME - _ZN9CGlxMediaD0Ev @ 12 NONAME - _ZN9CGlxMediaD1Ev @ 13 NONAME - _ZN9CGlxMediaD2Ev @ 14 NONAME - _ZN9TGlxMedia23DeleteLocationAttributeEv @ 15 NONAME - _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 16 NONAME - _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 17 NONAME - _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 18 NONAME - _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 19 NONAME - _ZNK9TGlxMedia11GetDurationERf @ 20 NONAME - _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 21 NONAME - _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 22 NONAME - _ZNK9TGlxMedia13GetDimensionsER5TSize @ 23 NONAME - _ZNK9TGlxMedia13GetFrameCountERi @ 24 NONAME - _ZNK9TGlxMedia13GetSystemItemERi @ 25 NONAME - _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 26 NONAME - _ZNK9TGlxMedia14IsDrmProtectedEv @ 27 NONAME - _ZNK9TGlxMedia15GetDrmProtectedERi @ 28 NONAME - _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 29 NONAME - _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 30 NONAME - _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 31 NONAME - _ZNK9TGlxMedia20GetStaticItemCommandERi @ 32 NONAME - _ZNK9TGlxMedia21GetContainedItemCountERi @ 33 NONAME - _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 34 NONAME - _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 35 NONAME - _ZNK9TGlxMedia3UriEv @ 36 NONAME - _ZNK9TGlxMedia5TitleEv @ 37 NONAME - _ZNK9TGlxMedia7CommentEv @ 38 NONAME - _ZNK9TGlxMedia7GetDateER5TTime @ 39 NONAME - _ZNK9TGlxMedia7GetSizeERi @ 40 NONAME - _ZNK9TGlxMedia8CategoryEv @ 41 NONAME - _ZNK9TGlxMedia8IsStaticEv @ 42 NONAME - _ZNK9TGlxMedia8MimeTypeEv @ 43 NONAME - _ZNK9TGlxMedia8SubTitleEv @ 44 NONAME - _ZNK9TGlxMedia9IdSpaceIdEv @ 45 NONAME - _ZTI13CGlxMediaList @ 46 NONAME ; ## - _ZTI16CGlxCacheManager @ 47 NONAME ; ## - _ZTI20CGlxGarbageCollector @ 48 NONAME ; ## - _ZTIN11T_CGlxCache17CGlxMediaUserTestE @ 49 NONAME ; ## - _ZTIN11T_CGlxCache21CGlxCacheObserverTestE @ 50 NONAME ; ## - _ZTV13CGlxMediaList @ 51 NONAME ; ## - _ZTV16CGlxCacheManager @ 52 NONAME ; ## - _ZTV20CGlxGarbageCollector @ 53 NONAME ; ## - _ZTVN11T_CGlxCache17CGlxMediaUserTestE @ 54 NONAME ; ## - _ZTVN11T_CGlxCache21CGlxCacheObserverTestE @ 55 NONAME ; ## + _ZN22CGlxImageViewerManager17IncrementRefCountEv @ 4 NONAME + _ZN22CGlxImageViewerManager8ImageUriEv @ 5 NONAME + _ZN22CGlxImageViewerManager9IsPrivateEv @ 6 NONAME + _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 7 NONAME + _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 8 NONAME + _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 9 NONAME + _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 10 NONAME + _ZN9CGlxMedia5ResetEv @ 11 NONAME + _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 12 NONAME + _ZN9CGlxMediaC1ERK11TGlxMediaId @ 13 NONAME + _ZN9CGlxMediaC2ERK11TGlxMediaId @ 14 NONAME + _ZN9CGlxMediaD0Ev @ 15 NONAME + _ZN9CGlxMediaD1Ev @ 16 NONAME + _ZN9CGlxMediaD2Ev @ 17 NONAME + _ZN9TGlxMedia23DeleteLocationAttributeEv @ 18 NONAME + _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 19 NONAME + _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 20 NONAME + _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 21 NONAME + _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 22 NONAME + _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 23 NONAME + _ZNK9TGlxMedia11GetDurationERf @ 24 NONAME + _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 25 NONAME + _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 26 NONAME + _ZNK9TGlxMedia13GetDimensionsER5TSize @ 27 NONAME + _ZNK9TGlxMedia13GetFrameCountERi @ 28 NONAME + _ZNK9TGlxMedia13GetSystemItemERi @ 29 NONAME + _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 30 NONAME + _ZNK9TGlxMedia14IsDrmProtectedEv @ 31 NONAME + _ZNK9TGlxMedia15GetDrmProtectedERi @ 32 NONAME + _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 33 NONAME + _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 34 NONAME + _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 35 NONAME + _ZNK9TGlxMedia20GetStaticItemCommandERi @ 36 NONAME + _ZNK9TGlxMedia21GetContainedItemCountERi @ 37 NONAME + _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 38 NONAME + _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 39 NONAME + _ZNK9TGlxMedia3UriEv @ 40 NONAME + _ZNK9TGlxMedia5TitleEv @ 41 NONAME + _ZNK9TGlxMedia7CommentEv @ 42 NONAME + _ZNK9TGlxMedia7GetDateER5TTime @ 43 NONAME + _ZNK9TGlxMedia7GetSizeERi @ 44 NONAME + _ZNK9TGlxMedia8CategoryEv @ 45 NONAME + _ZNK9TGlxMedia8IsStaticEv @ 46 NONAME + _ZNK9TGlxMedia8MimeTypeEv @ 47 NONAME + _ZNK9TGlxMedia8SubTitleEv @ 48 NONAME + _ZNK9TGlxMedia9IdSpaceIdEv @ 49 NONAME + _ZTI13CGlxMediaList @ 50 NONAME + _ZTI15CGlxImageReader @ 51 NONAME + _ZTI16CGlxCacheManager @ 52 NONAME + _ZTI20CGlxGarbageCollector @ 53 NONAME + _ZTIN11T_CGlxCache17CGlxMediaUserTestE @ 54 NONAME + _ZTIN11T_CGlxCache21CGlxCacheObserverTestE @ 55 NONAME + _ZTV13CGlxMediaList @ 56 NONAME + _ZTV15CGlxImageReader @ 57 NONAME + _ZTV16CGlxCacheManager @ 58 NONAME + _ZTV20CGlxGarbageCollector @ 59 NONAME + _ZTVN11T_CGlxCache17CGlxMediaUserTestE @ 60 NONAME + _ZTVN11T_CGlxCache21CGlxCacheObserverTestE @ 61 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/t_cglxgarbagecollectoru.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/t_cglxgarbagecollectoru.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/t_cglxgarbagecollectoru.def Mon Jan 18 20:19:20 2010 +0200 @@ -2,68 +2,74 @@ _Z16CreateTestSuiteLv @ 1 NONAME _ZN15GlxErrorManager18HasAttributeErrorLEPK9CGlxMediaRK13TMPXAttribute @ 2 NONAME _ZN15GlxErrorManager18HasAttributeErrorLEPK9CGlxMediai @ 3 NONAME - _ZN5CIdle3NewEi @ 4 NONAME - _ZN5CIdle4NewLEi @ 5 NONAME - _ZN5CIdle4RunLEv @ 6 NONAME - _ZN5CIdle5StartE9TCallBack @ 7 NONAME - _ZN5CIdle8DoCancelEv @ 8 NONAME - _ZN5CIdleC1Ei @ 9 NONAME - _ZN5CIdleC2Ei @ 10 NONAME - _ZN5CIdleD0Ev @ 11 NONAME - _ZN5CIdleD1Ev @ 12 NONAME - _ZN5CIdleD2Ev @ 13 NONAME - _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 14 NONAME - _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 15 NONAME - _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 16 NONAME - _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 17 NONAME - _ZN9CGlxMedia5ResetEv @ 18 NONAME - _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 19 NONAME - _ZN9CGlxMediaC1ERK11TGlxMediaId @ 20 NONAME - _ZN9CGlxMediaC2ERK11TGlxMediaId @ 21 NONAME - _ZN9CGlxMediaD0Ev @ 22 NONAME - _ZN9CGlxMediaD1Ev @ 23 NONAME - _ZN9CGlxMediaD2Ev @ 24 NONAME - _ZN9TGlxMedia23DeleteLocationAttributeEv @ 25 NONAME - _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 26 NONAME - _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 27 NONAME - _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 28 NONAME - _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 29 NONAME - _ZNK9TGlxMedia11GetDurationERf @ 30 NONAME - _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 31 NONAME - _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 32 NONAME - _ZNK9TGlxMedia13GetDimensionsER5TSize @ 33 NONAME - _ZNK9TGlxMedia13GetFrameCountERi @ 34 NONAME - _ZNK9TGlxMedia13GetSystemItemERi @ 35 NONAME - _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 36 NONAME - _ZNK9TGlxMedia14IsDrmProtectedEv @ 37 NONAME - _ZNK9TGlxMedia15GetDrmProtectedERi @ 38 NONAME - _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 39 NONAME - _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 40 NONAME - _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 41 NONAME - _ZNK9TGlxMedia20GetStaticItemCommandERi @ 42 NONAME - _ZNK9TGlxMedia21GetContainedItemCountERi @ 43 NONAME - _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 44 NONAME - _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 45 NONAME - _ZNK9TGlxMedia3UriEv @ 46 NONAME - _ZNK9TGlxMedia5TitleEv @ 47 NONAME - _ZNK9TGlxMedia7CommentEv @ 48 NONAME - _ZNK9TGlxMedia7GetDateER5TTime @ 49 NONAME - _ZNK9TGlxMedia7GetSizeERi @ 50 NONAME - _ZNK9TGlxMedia8CategoryEv @ 51 NONAME - _ZNK9TGlxMedia8IsStaticEv @ 52 NONAME - _ZNK9TGlxMedia8MimeTypeEv @ 53 NONAME - _ZNK9TGlxMedia8SubTitleEv @ 54 NONAME - _ZNK9TGlxMedia9IdSpaceIdEv @ 55 NONAME - _ZTI13CGlxMediaList @ 56 NONAME ; ## - _ZTI16CGlxCacheManager @ 57 NONAME ; ## - _ZTI20CGlxGarbageCollector @ 58 NONAME ; ## - _ZTI5CIdle @ 59 NONAME ; ## - _ZTIN22T_CGlxGarbageCollector10CTimerTestE @ 60 NONAME ; ## - _ZTIN22T_CGlxGarbageCollector17CGlxMediaUserTestE @ 61 NONAME ; ## - _ZTV13CGlxMediaList @ 62 NONAME ; ## - _ZTV16CGlxCacheManager @ 63 NONAME ; ## - _ZTV20CGlxGarbageCollector @ 64 NONAME ; ## - _ZTV5CIdle @ 65 NONAME ; ## - _ZTVN22T_CGlxGarbageCollector10CTimerTestE @ 66 NONAME ; ## - _ZTVN22T_CGlxGarbageCollector17CGlxMediaUserTestE @ 67 NONAME ; ## + _ZN22CGlxImageViewerManager17IncrementRefCountEv @ 4 NONAME + _ZN22CGlxImageViewerManager8ImageUriEv @ 5 NONAME + _ZN22CGlxImageViewerManager9IsPrivateEv @ 6 NONAME + _ZN5CIdle3NewEi @ 7 NONAME + _ZN5CIdle4NewLEi @ 8 NONAME + _ZN5CIdle4RunLEv @ 9 NONAME + _ZN5CIdle5StartE9TCallBack @ 10 NONAME + _ZN5CIdle8DoCancelEv @ 11 NONAME + _ZN5CIdleC1Ei @ 12 NONAME + _ZN5CIdleC2Ei @ 13 NONAME + _ZN5CIdleD0Ev @ 14 NONAME + _ZN5CIdleD1Ev @ 15 NONAME + _ZN5CIdleD2Ev @ 16 NONAME + _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 17 NONAME + _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 18 NONAME + _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 19 NONAME + _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 20 NONAME + _ZN9CGlxMedia5ResetEv @ 21 NONAME + _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 22 NONAME + _ZN9CGlxMediaC1ERK11TGlxMediaId @ 23 NONAME + _ZN9CGlxMediaC2ERK11TGlxMediaId @ 24 NONAME + _ZN9CGlxMediaD0Ev @ 25 NONAME + _ZN9CGlxMediaD1Ev @ 26 NONAME + _ZN9CGlxMediaD2Ev @ 27 NONAME + _ZN9TGlxMedia23DeleteLocationAttributeEv @ 28 NONAME + _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 29 NONAME + _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 30 NONAME + _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 31 NONAME + _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 32 NONAME + _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 33 NONAME + _ZNK9TGlxMedia11GetDurationERf @ 34 NONAME + _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 35 NONAME + _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 36 NONAME + _ZNK9TGlxMedia13GetDimensionsER5TSize @ 37 NONAME + _ZNK9TGlxMedia13GetFrameCountERi @ 38 NONAME + _ZNK9TGlxMedia13GetSystemItemERi @ 39 NONAME + _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 40 NONAME + _ZNK9TGlxMedia14IsDrmProtectedEv @ 41 NONAME + _ZNK9TGlxMedia15GetDrmProtectedERi @ 42 NONAME + _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 43 NONAME + _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 44 NONAME + _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 45 NONAME + _ZNK9TGlxMedia20GetStaticItemCommandERi @ 46 NONAME + _ZNK9TGlxMedia21GetContainedItemCountERi @ 47 NONAME + _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 48 NONAME + _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 49 NONAME + _ZNK9TGlxMedia3UriEv @ 50 NONAME + _ZNK9TGlxMedia5TitleEv @ 51 NONAME + _ZNK9TGlxMedia7CommentEv @ 52 NONAME + _ZNK9TGlxMedia7GetDateER5TTime @ 53 NONAME + _ZNK9TGlxMedia7GetSizeERi @ 54 NONAME + _ZNK9TGlxMedia8CategoryEv @ 55 NONAME + _ZNK9TGlxMedia8IsStaticEv @ 56 NONAME + _ZNK9TGlxMedia8MimeTypeEv @ 57 NONAME + _ZNK9TGlxMedia8SubTitleEv @ 58 NONAME + _ZNK9TGlxMedia9IdSpaceIdEv @ 59 NONAME + _ZTI13CGlxMediaList @ 60 NONAME + _ZTI15CGlxImageReader @ 61 NONAME + _ZTI16CGlxCacheManager @ 62 NONAME + _ZTI20CGlxGarbageCollector @ 63 NONAME + _ZTI5CIdle @ 64 NONAME + _ZTIN22T_CGlxGarbageCollector10CTimerTestE @ 65 NONAME + _ZTIN22T_CGlxGarbageCollector17CGlxMediaUserTestE @ 66 NONAME + _ZTV13CGlxMediaList @ 67 NONAME + _ZTV15CGlxImageReader @ 68 NONAME + _ZTV16CGlxCacheManager @ 69 NONAME + _ZTV20CGlxGarbageCollector @ 70 NONAME + _ZTV5CIdle @ 71 NONAME + _ZTVN22T_CGlxGarbageCollector10CTimerTestE @ 72 NONAME + _ZTVN22T_CGlxGarbageCollector17CGlxMediaUserTestE @ 73 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/t_glxlistwindowu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/t_glxlistwindowu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/t_glxlistwindowu.def Mon Jan 18 20:19:20 2010 +0200 @@ -21,6 +21,6 @@ _ZN18TGlxWindowIteratorppEi @ 20 NONAME _ZNK14CGlxListWindow2AtEi @ 21 NONAME _ZNK14CGlxListWindow8IteratorEv @ 22 NONAME - _ZTI14CGlxListWindow @ 23 NONAME ; ## - _ZTV14CGlxListWindow @ 24 NONAME ; ## + _ZTI14CGlxListWindow @ 23 NONAME + _ZTV14CGlxListWindow @ 24 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/t_tglxexclusioniteratoru.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/t_tglxexclusioniteratoru.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/t_tglxexclusioniteratoru.def Mon Jan 18 20:19:20 2010 +0200 @@ -68,26 +68,26 @@ _ZNK14CGlxListWindow2AtEi @ 67 NONAME _ZNK14CGlxListWindow8IteratorEv @ 68 NONAME _ZNK21TGlxSelectionIterator7InRangeEi @ 69 NONAME - _ZTI14CGlxListWindow @ 70 NONAME ; ## - _ZTI21TGlxExclusionIterator @ 71 NONAME ; ## - _ZTI21TGlxSelectionIterator @ 72 NONAME ; ## - _ZTI22TGlxSequentialIterator @ 73 NONAME ; ## - _ZTI22TGlxSpecificIdIterator @ 74 NONAME ; ## - _ZTI25TGlxFirstThenLastIterator @ 75 NONAME ; ## - _ZTI28TGlxFromFocusOutwardIterator @ 76 NONAME ; ## - _ZTI33TGlxFromManualIndexBlockyIterator @ 77 NONAME ; ## - _ZTI34TGlxFromFocusOutwardBlockyIterator @ 78 NONAME ; ## - _ZTI34TGlxFromIndexOutwardBlockyIterator @ 79 NONAME ; ## - _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 80 NONAME ; ## - _ZTV14CGlxListWindow @ 81 NONAME ; ## - _ZTV21TGlxExclusionIterator @ 82 NONAME ; ## - _ZTV21TGlxSelectionIterator @ 83 NONAME ; ## - _ZTV22TGlxSequentialIterator @ 84 NONAME ; ## - _ZTV22TGlxSpecificIdIterator @ 85 NONAME ; ## - _ZTV25TGlxFirstThenLastIterator @ 86 NONAME ; ## - _ZTV28TGlxFromFocusOutwardIterator @ 87 NONAME ; ## - _ZTV33TGlxFromManualIndexBlockyIterator @ 88 NONAME ; ## - _ZTV34TGlxFromFocusOutwardBlockyIterator @ 89 NONAME ; ## - _ZTV34TGlxFromIndexOutwardBlockyIterator @ 90 NONAME ; ## - _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 91 NONAME ; ## + _ZTI14CGlxListWindow @ 70 NONAME + _ZTI21TGlxExclusionIterator @ 71 NONAME + _ZTI21TGlxSelectionIterator @ 72 NONAME + _ZTI22TGlxSequentialIterator @ 73 NONAME + _ZTI22TGlxSpecificIdIterator @ 74 NONAME + _ZTI25TGlxFirstThenLastIterator @ 75 NONAME + _ZTI28TGlxFromFocusOutwardIterator @ 76 NONAME + _ZTI33TGlxFromManualIndexBlockyIterator @ 77 NONAME + _ZTI34TGlxFromFocusOutwardBlockyIterator @ 78 NONAME + _ZTI34TGlxFromIndexOutwardBlockyIterator @ 79 NONAME + _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 80 NONAME + _ZTV14CGlxListWindow @ 81 NONAME + _ZTV21TGlxExclusionIterator @ 82 NONAME + _ZTV21TGlxSelectionIterator @ 83 NONAME + _ZTV22TGlxSequentialIterator @ 84 NONAME + _ZTV22TGlxSpecificIdIterator @ 85 NONAME + _ZTV25TGlxFirstThenLastIterator @ 86 NONAME + _ZTV28TGlxFromFocusOutwardIterator @ 87 NONAME + _ZTV33TGlxFromManualIndexBlockyIterator @ 88 NONAME + _ZTV34TGlxFromFocusOutwardBlockyIterator @ 89 NONAME + _ZTV34TGlxFromIndexOutwardBlockyIterator @ 90 NONAME + _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 91 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxattributecontextu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxattributecontextu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxattributecontextu.def Mon Jan 18 20:19:20 2010 +0200 @@ -27,165 +27,172 @@ _ZN19GlxThumbnailUtility16ClosestThumbnailERK5TSizeRK9CGlxMediai @ 26 NONAME _ZN20CGlxAttributeContext13AddAttributeLERK13TMPXAttribute @ 27 NONAME _ZN20CGlxAttributeContext14AttributeCountEv @ 28 NONAME - _ZN20CGlxAttributeContext14SetGranularityEj @ 29 NONAME - _ZN20CGlxAttributeContext15RemoveAttributeERK13TMPXAttribute @ 30 NONAME - _ZN20CGlxAttributeContextC1EP21MGlxMediaListIterator @ 31 NONAME - _ZN20CGlxAttributeContextC2EP21MGlxMediaListIterator @ 32 NONAME - _ZN20CGlxAttributeContextD0Ev @ 33 NONAME - _ZN20CGlxAttributeContextD1Ev @ 34 NONAME - _ZN20CGlxAttributeContextD2Ev @ 35 NONAME - _ZN20CGlxThumbnailContext14SetDefaultSpecEii @ 36 NONAME - _ZN20CGlxThumbnailContext15AddSpecForItemLEiii @ 37 NONAME - _ZN20CGlxThumbnailContext18SetHighQualityOnlyEi @ 38 NONAME - _ZN20CGlxThumbnailContext4NewLEP21MGlxMediaListIterator @ 39 NONAME - _ZN20CGlxThumbnailContextC1EP21MGlxMediaListIterator @ 40 NONAME - _ZN20CGlxThumbnailContextC2EP21MGlxMediaListIterator @ 41 NONAME - _ZN20CGlxThumbnailContextD0Ev @ 42 NONAME - _ZN20CGlxThumbnailContextD1Ev @ 43 NONAME - _ZN20CGlxThumbnailContextD2Ev @ 44 NONAME - _ZN21TGlxExclusionIterator10SetToFirstEPK13MGlxMediaList @ 45 NONAME - _ZN21TGlxExclusionIteratorC1ER21MGlxMediaListIteratorS1_ @ 46 NONAME - _ZN21TGlxExclusionIteratorC2ER21MGlxMediaListIteratorS1_ @ 47 NONAME - _ZN21TGlxExclusionIteratorD1Ev @ 48 NONAME - _ZN21TGlxExclusionIteratorD2Ev @ 49 NONAME - _ZN21TGlxSelectionIterator10SetToFirstEPK13MGlxMediaList @ 50 NONAME - _ZN21TGlxSelectionIterator34SetDisabledIfMoreThanRangeSelectedEi @ 51 NONAME - _ZN21TGlxSelectionIterator8SetRangeEi @ 52 NONAME - _ZN21TGlxSelectionIteratorC1Ev @ 53 NONAME - _ZN21TGlxSelectionIteratorC2Ev @ 54 NONAME - _ZN21TGlxSelectionIteratorD1Ev @ 55 NONAME - _ZN21TGlxSelectionIteratorD2Ev @ 56 NONAME - _ZN21TGlxSelectionIteratorppEi @ 57 NONAME - _ZN22TGlxSequentialIterator8SetRangeEi @ 58 NONAME - _ZN22TGlxSequentialIteratorC1Ev @ 59 NONAME - _ZN22TGlxSequentialIteratorC2Ev @ 60 NONAME - _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 61 NONAME - _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 62 NONAME - _ZN23TGlxFetchContextRemover5CloseEv @ 63 NONAME - _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 64 NONAME - _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 65 NONAME - _ZN23TGlxFetchContextRemoverD1Ev @ 66 NONAME - _ZN23TGlxFetchContextRemoverD2Ev @ 67 NONAME - _ZN25TGlxFirstThenLastIteratorC1Ev @ 68 NONAME - _ZN25TGlxFirstThenLastIteratorC2Ev @ 69 NONAME - _ZN25TGlxFirstThenLastIteratorD1Ev @ 70 NONAME - _ZN25TGlxFirstThenLastIteratorD2Ev @ 71 NONAME - _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 72 NONAME - _ZN27CGlxDefaultAttributeContext4NewLEv @ 73 NONAME - _ZN27CGlxDefaultAttributeContextD0Ev @ 74 NONAME - _ZN27CGlxDefaultAttributeContextD1Ev @ 75 NONAME - _ZN27CGlxDefaultAttributeContextD2Ev @ 76 NONAME - _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 77 NONAME - _ZN27CGlxDefaultThumbnailContext4NewLEv @ 78 NONAME - _ZN27CGlxDefaultThumbnailContextD0Ev @ 79 NONAME - _ZN27CGlxDefaultThumbnailContextD1Ev @ 80 NONAME - _ZN27CGlxDefaultThumbnailContextD2Ev @ 81 NONAME - _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 82 NONAME - _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 83 NONAME - _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 84 NONAME - _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 85 NONAME - _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 86 NONAME - _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 87 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 88 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 89 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 90 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 91 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 92 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 93 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 94 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 95 NONAME - _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 96 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 97 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 98 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 99 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 100 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 101 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 102 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 103 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 104 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 105 NONAME - _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 106 NONAME - _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 107 NONAME - _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 108 NONAME - _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 109 NONAME - _ZN9CGlxMedia5ResetEv @ 110 NONAME - _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 111 NONAME - _ZN9CGlxMediaC1ERK11TGlxMediaId @ 112 NONAME - _ZN9CGlxMediaC2ERK11TGlxMediaId @ 113 NONAME - _ZN9CGlxMediaD0Ev @ 114 NONAME - _ZN9CGlxMediaD1Ev @ 115 NONAME - _ZN9CGlxMediaD2Ev @ 116 NONAME - _ZN9MGlxCache9InstanceLEv @ 117 NONAME - _ZN9TGlxMedia23DeleteLocationAttributeEv @ 118 NONAME - _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 119 NONAME - _ZNK14CGlxListWindow2AtEi @ 120 NONAME - _ZNK14CGlxListWindow8IteratorEv @ 121 NONAME - _ZNK21TGlxSelectionIterator7InRangeEi @ 122 NONAME - _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 123 NONAME - _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 124 NONAME - _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 125 NONAME - _ZNK9TGlxMedia11GetDurationERf @ 126 NONAME - _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 127 NONAME - _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 128 NONAME - _ZNK9TGlxMedia13GetDimensionsER5TSize @ 129 NONAME - _ZNK9TGlxMedia13GetFrameCountERi @ 130 NONAME - _ZNK9TGlxMedia13GetSystemItemERi @ 131 NONAME - _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 132 NONAME - _ZNK9TGlxMedia14IsDrmProtectedEv @ 133 NONAME - _ZNK9TGlxMedia15GetDrmProtectedERi @ 134 NONAME - _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 135 NONAME - _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 136 NONAME - _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 137 NONAME - _ZNK9TGlxMedia20GetStaticItemCommandERi @ 138 NONAME - _ZNK9TGlxMedia21GetContainedItemCountERi @ 139 NONAME - _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 140 NONAME - _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 141 NONAME - _ZNK9TGlxMedia3UriEv @ 142 NONAME - _ZNK9TGlxMedia5TitleEv @ 143 NONAME - _ZNK9TGlxMedia7CommentEv @ 144 NONAME - _ZNK9TGlxMedia7GetDateER5TTime @ 145 NONAME - _ZNK9TGlxMedia7GetSizeERi @ 146 NONAME - _ZNK9TGlxMedia8CategoryEv @ 147 NONAME - _ZNK9TGlxMedia8IsStaticEv @ 148 NONAME - _ZNK9TGlxMedia8MimeTypeEv @ 149 NONAME - _ZNK9TGlxMedia8SubTitleEv @ 150 NONAME - _ZNK9TGlxMedia9IdSpaceIdEv @ 151 NONAME - _ZTI13CGlxMediaList @ 152 NONAME ; ## - _ZTI14CGlxListWindow @ 153 NONAME ; ## - _ZTI16CGlxCacheManager @ 154 NONAME ; ## - _ZTI20CGlxAttributeContext @ 155 NONAME ; ## - _ZTI20CGlxGarbageCollector @ 156 NONAME ; ## - _ZTI20CGlxThumbnailContext @ 157 NONAME ; ## - _ZTI21TGlxExclusionIterator @ 158 NONAME ; ## - _ZTI21TGlxSelectionIterator @ 159 NONAME ; ## - _ZTI22TGlxSequentialIterator @ 160 NONAME ; ## - _ZTI22TGlxSpecificIdIterator @ 161 NONAME ; ## - _ZTI25TGlxFirstThenLastIterator @ 162 NONAME ; ## - _ZTI27CGlxDefaultAttributeContext @ 163 NONAME ; ## - _ZTI27CGlxDefaultThumbnailContext @ 164 NONAME ; ## - _ZTI28TGlxFromFocusOutwardIterator @ 165 NONAME ; ## - _ZTI33TGlxFromManualIndexBlockyIterator @ 166 NONAME ; ## - _ZTI34TGlxFromFocusOutwardBlockyIterator @ 167 NONAME ; ## - _ZTI34TGlxFromIndexOutwardBlockyIterator @ 168 NONAME ; ## - _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 169 NONAME ; ## - _ZTIN23UT_CGlxAttributeContext17CGlxMediaListTestE @ 170 NONAME ; ## - _ZTV13CGlxMediaList @ 171 NONAME ; ## - _ZTV14CGlxListWindow @ 172 NONAME ; ## - _ZTV16CGlxCacheManager @ 173 NONAME ; ## - _ZTV20CGlxAttributeContext @ 174 NONAME ; ## - _ZTV20CGlxGarbageCollector @ 175 NONAME ; ## - _ZTV20CGlxThumbnailContext @ 176 NONAME ; ## - _ZTV21TGlxExclusionIterator @ 177 NONAME ; ## - _ZTV21TGlxSelectionIterator @ 178 NONAME ; ## - _ZTV22TGlxSequentialIterator @ 179 NONAME ; ## - _ZTV22TGlxSpecificIdIterator @ 180 NONAME ; ## - _ZTV25TGlxFirstThenLastIterator @ 181 NONAME ; ## - _ZTV27CGlxDefaultAttributeContext @ 182 NONAME ; ## - _ZTV27CGlxDefaultThumbnailContext @ 183 NONAME ; ## - _ZTV28TGlxFromFocusOutwardIterator @ 184 NONAME ; ## - _ZTV33TGlxFromManualIndexBlockyIterator @ 185 NONAME ; ## - _ZTV34TGlxFromFocusOutwardBlockyIterator @ 186 NONAME ; ## - _ZTV34TGlxFromIndexOutwardBlockyIterator @ 187 NONAME ; ## - _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 188 NONAME ; ## - _ZTVN23UT_CGlxAttributeContext17CGlxMediaListTestE @ 189 NONAME ; ## + _ZN20CGlxAttributeContext14SetDefaultSpecEii @ 29 NONAME + _ZN20CGlxAttributeContext14SetGranularityEj @ 30 NONAME + _ZN20CGlxAttributeContext15RemoveAttributeERK13TMPXAttribute @ 31 NONAME + _ZN20CGlxAttributeContextC1EP21MGlxMediaListIterator @ 32 NONAME + _ZN20CGlxAttributeContextC2EP21MGlxMediaListIterator @ 33 NONAME + _ZN20CGlxAttributeContextD0Ev @ 34 NONAME + _ZN20CGlxAttributeContextD1Ev @ 35 NONAME + _ZN20CGlxAttributeContextD2Ev @ 36 NONAME + _ZN20CGlxThumbnailContext14SetDefaultSpecEii @ 37 NONAME + _ZN20CGlxThumbnailContext15AddSpecForItemLEiii @ 38 NONAME + _ZN20CGlxThumbnailContext18SetHighQualityOnlyEi @ 39 NONAME + _ZN20CGlxThumbnailContext4NewLEP21MGlxMediaListIterator @ 40 NONAME + _ZN20CGlxThumbnailContextC1EP21MGlxMediaListIterator @ 41 NONAME + _ZN20CGlxThumbnailContextC2EP21MGlxMediaListIterator @ 42 NONAME + _ZN20CGlxThumbnailContextD0Ev @ 43 NONAME + _ZN20CGlxThumbnailContextD1Ev @ 44 NONAME + _ZN20CGlxThumbnailContextD2Ev @ 45 NONAME + _ZN21TGlxExclusionIterator10SetToFirstEPK13MGlxMediaList @ 46 NONAME + _ZN21TGlxExclusionIteratorC1ER21MGlxMediaListIteratorS1_ @ 47 NONAME + _ZN21TGlxExclusionIteratorC2ER21MGlxMediaListIteratorS1_ @ 48 NONAME + _ZN21TGlxExclusionIteratorD1Ev @ 49 NONAME + _ZN21TGlxExclusionIteratorD2Ev @ 50 NONAME + _ZN21TGlxSelectionIterator10SetToFirstEPK13MGlxMediaList @ 51 NONAME + _ZN21TGlxSelectionIterator34SetDisabledIfMoreThanRangeSelectedEi @ 52 NONAME + _ZN21TGlxSelectionIterator8SetRangeEi @ 53 NONAME + _ZN21TGlxSelectionIteratorC1Ev @ 54 NONAME + _ZN21TGlxSelectionIteratorC2Ev @ 55 NONAME + _ZN21TGlxSelectionIteratorD1Ev @ 56 NONAME + _ZN21TGlxSelectionIteratorD2Ev @ 57 NONAME + _ZN21TGlxSelectionIteratorppEi @ 58 NONAME + _ZN22CGlxImageViewerManager17IncrementRefCountEv @ 59 NONAME + _ZN22CGlxImageViewerManager8ImageUriEv @ 60 NONAME + _ZN22CGlxImageViewerManager9IsPrivateEv @ 61 NONAME + _ZN22TGlxSequentialIterator8SetRangeEi @ 62 NONAME + _ZN22TGlxSequentialIteratorC1Ev @ 63 NONAME + _ZN22TGlxSequentialIteratorC2Ev @ 64 NONAME + _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 65 NONAME + _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 66 NONAME + _ZN23TGlxFetchContextRemover5CloseEv @ 67 NONAME + _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 68 NONAME + _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 69 NONAME + _ZN23TGlxFetchContextRemoverD1Ev @ 70 NONAME + _ZN23TGlxFetchContextRemoverD2Ev @ 71 NONAME + _ZN25TGlxFirstThenLastIteratorC1Ev @ 72 NONAME + _ZN25TGlxFirstThenLastIteratorC2Ev @ 73 NONAME + _ZN25TGlxFirstThenLastIteratorD1Ev @ 74 NONAME + _ZN25TGlxFirstThenLastIteratorD2Ev @ 75 NONAME + _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 76 NONAME + _ZN27CGlxDefaultAttributeContext4NewLEv @ 77 NONAME + _ZN27CGlxDefaultAttributeContextD0Ev @ 78 NONAME + _ZN27CGlxDefaultAttributeContextD1Ev @ 79 NONAME + _ZN27CGlxDefaultAttributeContextD2Ev @ 80 NONAME + _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 81 NONAME + _ZN27CGlxDefaultThumbnailContext4NewLEv @ 82 NONAME + _ZN27CGlxDefaultThumbnailContextD0Ev @ 83 NONAME + _ZN27CGlxDefaultThumbnailContextD1Ev @ 84 NONAME + _ZN27CGlxDefaultThumbnailContextD2Ev @ 85 NONAME + _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 86 NONAME + _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 87 NONAME + _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 88 NONAME + _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 89 NONAME + _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 90 NONAME + _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 91 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 92 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 93 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 94 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 95 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 96 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 97 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 98 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 99 NONAME + _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 100 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 101 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 102 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 103 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 104 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 105 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 106 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 107 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 108 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 109 NONAME + _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 110 NONAME + _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 111 NONAME + _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 112 NONAME + _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 113 NONAME + _ZN9CGlxMedia5ResetEv @ 114 NONAME + _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 115 NONAME + _ZN9CGlxMediaC1ERK11TGlxMediaId @ 116 NONAME + _ZN9CGlxMediaC2ERK11TGlxMediaId @ 117 NONAME + _ZN9CGlxMediaD0Ev @ 118 NONAME + _ZN9CGlxMediaD1Ev @ 119 NONAME + _ZN9CGlxMediaD2Ev @ 120 NONAME + _ZN9MGlxCache9InstanceLEv @ 121 NONAME + _ZN9TGlxMedia23DeleteLocationAttributeEv @ 122 NONAME + _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 123 NONAME + _ZNK14CGlxListWindow2AtEi @ 124 NONAME + _ZNK14CGlxListWindow8IteratorEv @ 125 NONAME + _ZNK21TGlxSelectionIterator7InRangeEi @ 126 NONAME + _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 127 NONAME + _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 128 NONAME + _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 129 NONAME + _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 130 NONAME + _ZNK9TGlxMedia11GetDurationERf @ 131 NONAME + _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 132 NONAME + _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 133 NONAME + _ZNK9TGlxMedia13GetDimensionsER5TSize @ 134 NONAME + _ZNK9TGlxMedia13GetFrameCountERi @ 135 NONAME + _ZNK9TGlxMedia13GetSystemItemERi @ 136 NONAME + _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 137 NONAME + _ZNK9TGlxMedia14IsDrmProtectedEv @ 138 NONAME + _ZNK9TGlxMedia15GetDrmProtectedERi @ 139 NONAME + _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 140 NONAME + _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 141 NONAME + _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 142 NONAME + _ZNK9TGlxMedia20GetStaticItemCommandERi @ 143 NONAME + _ZNK9TGlxMedia21GetContainedItemCountERi @ 144 NONAME + _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 145 NONAME + _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 146 NONAME + _ZNK9TGlxMedia3UriEv @ 147 NONAME + _ZNK9TGlxMedia5TitleEv @ 148 NONAME + _ZNK9TGlxMedia7CommentEv @ 149 NONAME + _ZNK9TGlxMedia7GetDateER5TTime @ 150 NONAME + _ZNK9TGlxMedia7GetSizeERi @ 151 NONAME + _ZNK9TGlxMedia8CategoryEv @ 152 NONAME + _ZNK9TGlxMedia8IsStaticEv @ 153 NONAME + _ZNK9TGlxMedia8MimeTypeEv @ 154 NONAME + _ZNK9TGlxMedia8SubTitleEv @ 155 NONAME + _ZNK9TGlxMedia9IdSpaceIdEv @ 156 NONAME + _ZTI13CGlxMediaList @ 157 NONAME + _ZTI14CGlxListWindow @ 158 NONAME + _ZTI15CGlxImageReader @ 159 NONAME + _ZTI16CGlxCacheManager @ 160 NONAME + _ZTI20CGlxAttributeContext @ 161 NONAME + _ZTI20CGlxGarbageCollector @ 162 NONAME + _ZTI20CGlxThumbnailContext @ 163 NONAME + _ZTI21TGlxExclusionIterator @ 164 NONAME + _ZTI21TGlxSelectionIterator @ 165 NONAME + _ZTI22TGlxSequentialIterator @ 166 NONAME + _ZTI22TGlxSpecificIdIterator @ 167 NONAME + _ZTI25TGlxFirstThenLastIterator @ 168 NONAME + _ZTI27CGlxDefaultAttributeContext @ 169 NONAME + _ZTI27CGlxDefaultThumbnailContext @ 170 NONAME + _ZTI28TGlxFromFocusOutwardIterator @ 171 NONAME + _ZTI33TGlxFromManualIndexBlockyIterator @ 172 NONAME + _ZTI34TGlxFromFocusOutwardBlockyIterator @ 173 NONAME + _ZTI34TGlxFromIndexOutwardBlockyIterator @ 174 NONAME + _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 175 NONAME + _ZTIN23UT_CGlxAttributeContext17CGlxMediaListTestE @ 176 NONAME + _ZTV13CGlxMediaList @ 177 NONAME + _ZTV14CGlxListWindow @ 178 NONAME + _ZTV15CGlxImageReader @ 179 NONAME + _ZTV16CGlxCacheManager @ 180 NONAME + _ZTV20CGlxAttributeContext @ 181 NONAME + _ZTV20CGlxGarbageCollector @ 182 NONAME + _ZTV20CGlxThumbnailContext @ 183 NONAME + _ZTV21TGlxExclusionIterator @ 184 NONAME + _ZTV21TGlxSelectionIterator @ 185 NONAME + _ZTV22TGlxSequentialIterator @ 186 NONAME + _ZTV22TGlxSpecificIdIterator @ 187 NONAME + _ZTV25TGlxFirstThenLastIterator @ 188 NONAME + _ZTV27CGlxDefaultAttributeContext @ 189 NONAME + _ZTV27CGlxDefaultThumbnailContext @ 190 NONAME + _ZTV28TGlxFromFocusOutwardIterator @ 191 NONAME + _ZTV33TGlxFromManualIndexBlockyIterator @ 192 NONAME + _ZTV34TGlxFromFocusOutwardBlockyIterator @ 193 NONAME + _ZTV34TGlxFromIndexOutwardBlockyIterator @ 194 NONAME + _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 195 NONAME + _ZTVN23UT_CGlxAttributeContext17CGlxMediaListTestE @ 196 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxitemlistu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxitemlistu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxitemlistu.def Mon Jan 18 20:19:20 2010 +0200 @@ -44,8 +44,8 @@ _ZNK9TGlxMedia8MimeTypeEv @ 43 NONAME _ZNK9TGlxMedia8SubTitleEv @ 44 NONAME _ZNK9TGlxMedia9IdSpaceIdEv @ 45 NONAME - _ZTI16CGlxListTestBaseI12CGlxItemList26CGlxItemListReconstructionE @ 46 NONAME ; ## - _ZTI26CGlxListReconstructionBase @ 47 NONAME ; ## - _ZTV16CGlxListTestBaseI12CGlxItemList26CGlxItemListReconstructionE @ 48 NONAME ; ## - _ZTV26CGlxListReconstructionBase @ 49 NONAME ; ## + _ZTI16CGlxListTestBaseI12CGlxItemList26CGlxItemListReconstructionE @ 46 NONAME + _ZTI26CGlxListReconstructionBase @ 47 NONAME + _ZTV16CGlxListTestBaseI12CGlxItemList26CGlxItemListReconstructionE @ 48 NONAME + _ZTV26CGlxListReconstructionBase @ 49 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxnavigablelistu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxnavigablelistu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxnavigablelistu.def Mon Jan 18 20:19:20 2010 +0200 @@ -44,8 +44,8 @@ _ZNK9TGlxMedia8MimeTypeEv @ 43 NONAME _ZNK9TGlxMedia8SubTitleEv @ 44 NONAME _ZNK9TGlxMedia9IdSpaceIdEv @ 45 NONAME - _ZTI16CGlxListTestBaseI17CGlxNavigableList31CGlxNavigableListReconstructionE @ 46 NONAME ; ## - _ZTI26CGlxListReconstructionBase @ 47 NONAME ; ## - _ZTV16CGlxListTestBaseI17CGlxNavigableList31CGlxNavigableListReconstructionE @ 48 NONAME ; ## - _ZTV26CGlxListReconstructionBase @ 49 NONAME ; ## + _ZTI16CGlxListTestBaseI17CGlxNavigableList31CGlxNavigableListReconstructionE @ 46 NONAME + _ZTI26CGlxListReconstructionBase @ 47 NONAME + _ZTV16CGlxListTestBaseI17CGlxNavigableList31CGlxNavigableListReconstructionE @ 48 NONAME + _ZTV26CGlxListReconstructionBase @ 49 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxstaticitemlistu.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxstaticitemlistu.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/ut_cglxstaticitemlistu.def Mon Jan 18 20:19:20 2010 +0200 @@ -44,8 +44,8 @@ _ZNK9TGlxMedia8MimeTypeEv @ 43 NONAME _ZNK9TGlxMedia8SubTitleEv @ 44 NONAME _ZNK9TGlxMedia9IdSpaceIdEv @ 45 NONAME - _ZTI16CGlxListTestBaseI18CGlxStaticItemList32CGlxStaticItemListReconstructionE @ 46 NONAME ; ## - _ZTI26CGlxListReconstructionBase @ 47 NONAME ; ## - _ZTV16CGlxListTestBaseI18CGlxStaticItemList32CGlxStaticItemListReconstructionE @ 48 NONAME ; ## - _ZTV26CGlxListReconstructionBase @ 49 NONAME ; ## + _ZTI16CGlxListTestBaseI18CGlxStaticItemList32CGlxStaticItemListReconstructionE @ 46 NONAME + _ZTI26CGlxListReconstructionBase @ 47 NONAME + _ZTV16CGlxListTestBaseI18CGlxStaticItemList32CGlxStaticItemListReconstructionE @ 48 NONAME + _ZTV26CGlxListReconstructionBase @ 49 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/medialists/tsrc/eabi/ut_glxerrormanageru.def --- a/photosgallery/viewframework/medialists/tsrc/eabi/ut_glxerrormanageru.def Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/medialists/tsrc/eabi/ut_glxerrormanageru.def Mon Jan 18 20:19:20 2010 +0200 @@ -27,163 +27,170 @@ _ZN19GlxThumbnailUtility16ClosestThumbnailERK5TSizeRK9CGlxMediai @ 26 NONAME _ZN20CGlxAttributeContext13AddAttributeLERK13TMPXAttribute @ 27 NONAME _ZN20CGlxAttributeContext14AttributeCountEv @ 28 NONAME - _ZN20CGlxAttributeContext14SetGranularityEj @ 29 NONAME - _ZN20CGlxAttributeContext15RemoveAttributeERK13TMPXAttribute @ 30 NONAME - _ZN20CGlxAttributeContextC1EP21MGlxMediaListIterator @ 31 NONAME - _ZN20CGlxAttributeContextC2EP21MGlxMediaListIterator @ 32 NONAME - _ZN20CGlxAttributeContextD0Ev @ 33 NONAME - _ZN20CGlxAttributeContextD1Ev @ 34 NONAME - _ZN20CGlxAttributeContextD2Ev @ 35 NONAME - _ZN20CGlxThumbnailContext14SetDefaultSpecEii @ 36 NONAME - _ZN20CGlxThumbnailContext15AddSpecForItemLEiii @ 37 NONAME - _ZN20CGlxThumbnailContext18SetHighQualityOnlyEi @ 38 NONAME - _ZN20CGlxThumbnailContext4NewLEP21MGlxMediaListIterator @ 39 NONAME - _ZN20CGlxThumbnailContextC1EP21MGlxMediaListIterator @ 40 NONAME - _ZN20CGlxThumbnailContextC2EP21MGlxMediaListIterator @ 41 NONAME - _ZN20CGlxThumbnailContextD0Ev @ 42 NONAME - _ZN20CGlxThumbnailContextD1Ev @ 43 NONAME - _ZN20CGlxThumbnailContextD2Ev @ 44 NONAME - _ZN21TGlxExclusionIterator10SetToFirstEPK13MGlxMediaList @ 45 NONAME - _ZN21TGlxExclusionIteratorC1ER21MGlxMediaListIteratorS1_ @ 46 NONAME - _ZN21TGlxExclusionIteratorC2ER21MGlxMediaListIteratorS1_ @ 47 NONAME - _ZN21TGlxExclusionIteratorD1Ev @ 48 NONAME - _ZN21TGlxExclusionIteratorD2Ev @ 49 NONAME - _ZN21TGlxSelectionIterator10SetToFirstEPK13MGlxMediaList @ 50 NONAME - _ZN21TGlxSelectionIterator34SetDisabledIfMoreThanRangeSelectedEi @ 51 NONAME - _ZN21TGlxSelectionIterator8SetRangeEi @ 52 NONAME - _ZN21TGlxSelectionIteratorC1Ev @ 53 NONAME - _ZN21TGlxSelectionIteratorC2Ev @ 54 NONAME - _ZN21TGlxSelectionIteratorD1Ev @ 55 NONAME - _ZN21TGlxSelectionIteratorD2Ev @ 56 NONAME - _ZN21TGlxSelectionIteratorppEi @ 57 NONAME - _ZN22TGlxSequentialIterator8SetRangeEi @ 58 NONAME - _ZN22TGlxSequentialIteratorC1Ev @ 59 NONAME - _ZN22TGlxSequentialIteratorC2Ev @ 60 NONAME - _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 61 NONAME - _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 62 NONAME - _ZN23TGlxFetchContextRemover5CloseEv @ 63 NONAME - _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 64 NONAME - _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 65 NONAME - _ZN23TGlxFetchContextRemoverD1Ev @ 66 NONAME - _ZN23TGlxFetchContextRemoverD2Ev @ 67 NONAME - _ZN25TGlxFirstThenLastIteratorC1Ev @ 68 NONAME - _ZN25TGlxFirstThenLastIteratorC2Ev @ 69 NONAME - _ZN25TGlxFirstThenLastIteratorD1Ev @ 70 NONAME - _ZN25TGlxFirstThenLastIteratorD2Ev @ 71 NONAME - _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 72 NONAME - _ZN27CGlxDefaultAttributeContext4NewLEv @ 73 NONAME - _ZN27CGlxDefaultAttributeContextD0Ev @ 74 NONAME - _ZN27CGlxDefaultAttributeContextD1Ev @ 75 NONAME - _ZN27CGlxDefaultAttributeContextD2Ev @ 76 NONAME - _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 77 NONAME - _ZN27CGlxDefaultThumbnailContext4NewLEv @ 78 NONAME - _ZN27CGlxDefaultThumbnailContextD0Ev @ 79 NONAME - _ZN27CGlxDefaultThumbnailContextD1Ev @ 80 NONAME - _ZN27CGlxDefaultThumbnailContextD2Ev @ 81 NONAME - _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 82 NONAME - _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 83 NONAME - _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 84 NONAME - _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 85 NONAME - _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 86 NONAME - _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 87 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 88 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 89 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 90 NONAME - _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 91 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 92 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 93 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 94 NONAME - _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 95 NONAME - _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 96 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 97 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 98 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 99 NONAME - _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 100 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 101 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 102 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 103 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 104 NONAME - _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 105 NONAME - _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 106 NONAME - _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 107 NONAME - _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 108 NONAME - _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 109 NONAME - _ZN9CGlxMedia5ResetEv @ 110 NONAME - _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 111 NONAME - _ZN9CGlxMediaC1ERK11TGlxMediaId @ 112 NONAME - _ZN9CGlxMediaC2ERK11TGlxMediaId @ 113 NONAME - _ZN9CGlxMediaD0Ev @ 114 NONAME - _ZN9CGlxMediaD1Ev @ 115 NONAME - _ZN9CGlxMediaD2Ev @ 116 NONAME - _ZN9MGlxCache9InstanceLEv @ 117 NONAME - _ZN9TGlxMedia23DeleteLocationAttributeEv @ 118 NONAME - _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 119 NONAME - _ZNK14CGlxListWindow2AtEi @ 120 NONAME - _ZNK14CGlxListWindow8IteratorEv @ 121 NONAME - _ZNK21TGlxSelectionIterator7InRangeEi @ 122 NONAME - _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 123 NONAME - _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 124 NONAME - _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 125 NONAME - _ZNK9TGlxMedia11GetDurationERf @ 126 NONAME - _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 127 NONAME - _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 128 NONAME - _ZNK9TGlxMedia13GetDimensionsER5TSize @ 129 NONAME - _ZNK9TGlxMedia13GetFrameCountERi @ 130 NONAME - _ZNK9TGlxMedia13GetSystemItemERi @ 131 NONAME - _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 132 NONAME - _ZNK9TGlxMedia14IsDrmProtectedEv @ 133 NONAME - _ZNK9TGlxMedia15GetDrmProtectedERi @ 134 NONAME - _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 135 NONAME - _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 136 NONAME - _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 137 NONAME - _ZNK9TGlxMedia20GetStaticItemCommandERi @ 138 NONAME - _ZNK9TGlxMedia21GetContainedItemCountERi @ 139 NONAME - _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 140 NONAME - _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 141 NONAME - _ZNK9TGlxMedia3UriEv @ 142 NONAME - _ZNK9TGlxMedia5TitleEv @ 143 NONAME - _ZNK9TGlxMedia7CommentEv @ 144 NONAME - _ZNK9TGlxMedia7GetDateER5TTime @ 145 NONAME - _ZNK9TGlxMedia7GetSizeERi @ 146 NONAME - _ZNK9TGlxMedia8CategoryEv @ 147 NONAME - _ZNK9TGlxMedia8IsStaticEv @ 148 NONAME - _ZNK9TGlxMedia8MimeTypeEv @ 149 NONAME - _ZNK9TGlxMedia8SubTitleEv @ 150 NONAME - _ZNK9TGlxMedia9IdSpaceIdEv @ 151 NONAME - _ZTI13CGlxMediaList @ 152 NONAME ; ## - _ZTI14CGlxListWindow @ 153 NONAME ; ## - _ZTI16CGlxCacheManager @ 154 NONAME ; ## - _ZTI20CGlxAttributeContext @ 155 NONAME ; ## - _ZTI20CGlxGarbageCollector @ 156 NONAME ; ## - _ZTI20CGlxThumbnailContext @ 157 NONAME ; ## - _ZTI21TGlxExclusionIterator @ 158 NONAME ; ## - _ZTI21TGlxSelectionIterator @ 159 NONAME ; ## - _ZTI22TGlxSequentialIterator @ 160 NONAME ; ## - _ZTI22TGlxSpecificIdIterator @ 161 NONAME ; ## - _ZTI25TGlxFirstThenLastIterator @ 162 NONAME ; ## - _ZTI27CGlxDefaultAttributeContext @ 163 NONAME ; ## - _ZTI27CGlxDefaultThumbnailContext @ 164 NONAME ; ## - _ZTI28TGlxFromFocusOutwardIterator @ 165 NONAME ; ## - _ZTI33TGlxFromManualIndexBlockyIterator @ 166 NONAME ; ## - _ZTI34TGlxFromFocusOutwardBlockyIterator @ 167 NONAME ; ## - _ZTI34TGlxFromIndexOutwardBlockyIterator @ 168 NONAME ; ## - _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 169 NONAME ; ## - _ZTV13CGlxMediaList @ 170 NONAME ; ## - _ZTV14CGlxListWindow @ 171 NONAME ; ## - _ZTV16CGlxCacheManager @ 172 NONAME ; ## - _ZTV20CGlxAttributeContext @ 173 NONAME ; ## - _ZTV20CGlxGarbageCollector @ 174 NONAME ; ## - _ZTV20CGlxThumbnailContext @ 175 NONAME ; ## - _ZTV21TGlxExclusionIterator @ 176 NONAME ; ## - _ZTV21TGlxSelectionIterator @ 177 NONAME ; ## - _ZTV22TGlxSequentialIterator @ 178 NONAME ; ## - _ZTV22TGlxSpecificIdIterator @ 179 NONAME ; ## - _ZTV25TGlxFirstThenLastIterator @ 180 NONAME ; ## - _ZTV27CGlxDefaultAttributeContext @ 181 NONAME ; ## - _ZTV27CGlxDefaultThumbnailContext @ 182 NONAME ; ## - _ZTV28TGlxFromFocusOutwardIterator @ 183 NONAME ; ## - _ZTV33TGlxFromManualIndexBlockyIterator @ 184 NONAME ; ## - _ZTV34TGlxFromFocusOutwardBlockyIterator @ 185 NONAME ; ## - _ZTV34TGlxFromIndexOutwardBlockyIterator @ 186 NONAME ; ## - _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 187 NONAME ; ## + _ZN20CGlxAttributeContext14SetDefaultSpecEii @ 29 NONAME + _ZN20CGlxAttributeContext14SetGranularityEj @ 30 NONAME + _ZN20CGlxAttributeContext15RemoveAttributeERK13TMPXAttribute @ 31 NONAME + _ZN20CGlxAttributeContextC1EP21MGlxMediaListIterator @ 32 NONAME + _ZN20CGlxAttributeContextC2EP21MGlxMediaListIterator @ 33 NONAME + _ZN20CGlxAttributeContextD0Ev @ 34 NONAME + _ZN20CGlxAttributeContextD1Ev @ 35 NONAME + _ZN20CGlxAttributeContextD2Ev @ 36 NONAME + _ZN20CGlxThumbnailContext14SetDefaultSpecEii @ 37 NONAME + _ZN20CGlxThumbnailContext15AddSpecForItemLEiii @ 38 NONAME + _ZN20CGlxThumbnailContext18SetHighQualityOnlyEi @ 39 NONAME + _ZN20CGlxThumbnailContext4NewLEP21MGlxMediaListIterator @ 40 NONAME + _ZN20CGlxThumbnailContextC1EP21MGlxMediaListIterator @ 41 NONAME + _ZN20CGlxThumbnailContextC2EP21MGlxMediaListIterator @ 42 NONAME + _ZN20CGlxThumbnailContextD0Ev @ 43 NONAME + _ZN20CGlxThumbnailContextD1Ev @ 44 NONAME + _ZN20CGlxThumbnailContextD2Ev @ 45 NONAME + _ZN21TGlxExclusionIterator10SetToFirstEPK13MGlxMediaList @ 46 NONAME + _ZN21TGlxExclusionIteratorC1ER21MGlxMediaListIteratorS1_ @ 47 NONAME + _ZN21TGlxExclusionIteratorC2ER21MGlxMediaListIteratorS1_ @ 48 NONAME + _ZN21TGlxExclusionIteratorD1Ev @ 49 NONAME + _ZN21TGlxExclusionIteratorD2Ev @ 50 NONAME + _ZN21TGlxSelectionIterator10SetToFirstEPK13MGlxMediaList @ 51 NONAME + _ZN21TGlxSelectionIterator34SetDisabledIfMoreThanRangeSelectedEi @ 52 NONAME + _ZN21TGlxSelectionIterator8SetRangeEi @ 53 NONAME + _ZN21TGlxSelectionIteratorC1Ev @ 54 NONAME + _ZN21TGlxSelectionIteratorC2Ev @ 55 NONAME + _ZN21TGlxSelectionIteratorD1Ev @ 56 NONAME + _ZN21TGlxSelectionIteratorD2Ev @ 57 NONAME + _ZN21TGlxSelectionIteratorppEi @ 58 NONAME + _ZN22CGlxImageViewerManager17IncrementRefCountEv @ 59 NONAME + _ZN22CGlxImageViewerManager8ImageUriEv @ 60 NONAME + _ZN22CGlxImageViewerManager9IsPrivateEv @ 61 NONAME + _ZN22TGlxSequentialIterator8SetRangeEi @ 62 NONAME + _ZN22TGlxSequentialIteratorC1Ev @ 63 NONAME + _ZN22TGlxSequentialIteratorC2Ev @ 64 NONAME + _ZN22TGlxSpecificIdIteratorC1ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 65 NONAME + _ZN22TGlxSpecificIdIteratorC2ERK6TGlxIdI17TGlxIdSpaceIdBaseE11TGlxMediaId @ 66 NONAME + _ZN23TGlxFetchContextRemover5CloseEv @ 67 NONAME + _ZN23TGlxFetchContextRemoverC1EP16MGlxFetchContextR13MGlxMediaList @ 68 NONAME + _ZN23TGlxFetchContextRemoverC2EP16MGlxFetchContextR13MGlxMediaList @ 69 NONAME + _ZN23TGlxFetchContextRemoverD1Ev @ 70 NONAME + _ZN23TGlxFetchContextRemoverD2Ev @ 71 NONAME + _ZN25TGlxFirstThenLastIteratorC1Ev @ 72 NONAME + _ZN25TGlxFirstThenLastIteratorC2Ev @ 73 NONAME + _ZN25TGlxFirstThenLastIteratorD1Ev @ 74 NONAME + _ZN25TGlxFirstThenLastIteratorD2Ev @ 75 NONAME + _ZN27CGlxDefaultAttributeContext15SetRangeOffsetsEii @ 76 NONAME + _ZN27CGlxDefaultAttributeContext4NewLEv @ 77 NONAME + _ZN27CGlxDefaultAttributeContextD0Ev @ 78 NONAME + _ZN27CGlxDefaultAttributeContextD1Ev @ 79 NONAME + _ZN27CGlxDefaultAttributeContextD2Ev @ 80 NONAME + _ZN27CGlxDefaultThumbnailContext15SetRangeOffsetsEii @ 81 NONAME + _ZN27CGlxDefaultThumbnailContext4NewLEv @ 82 NONAME + _ZN27CGlxDefaultThumbnailContextD0Ev @ 83 NONAME + _ZN27CGlxDefaultThumbnailContextD1Ev @ 84 NONAME + _ZN27CGlxDefaultThumbnailContextD2Ev @ 85 NONAME + _ZN28TGlxFromFocusOutwardIterator15SetRangeOffsetsEii @ 86 NONAME + _ZN28TGlxFromFocusOutwardIteratorC1Ev @ 87 NONAME + _ZN28TGlxFromFocusOutwardIteratorC2Ev @ 88 NONAME + _ZN28TGlxFromFocusOutwardIteratorD1Ev @ 89 NONAME + _ZN28TGlxFromFocusOutwardIteratorD2Ev @ 90 NONAME + _ZN33TGlxFromManualIndexBlockyIterator15SetRangeOffsetsEii @ 91 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC1Ev @ 92 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorC2Ev @ 93 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD1Ev @ 94 NONAME + _ZN33TGlxFromManualIndexBlockyIteratorD2Ev @ 95 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC1Ev @ 96 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorC2Ev @ 97 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD1Ev @ 98 NONAME + _ZN34TGlxFromFocusOutwardBlockyIteratorD2Ev @ 99 NONAME + _ZN34TGlxFromIndexOutwardBlockyIterator15SetRangeOffsetsEii @ 100 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC1ERKNS_9MGlxIndexE @ 101 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorC2ERKNS_9MGlxIndexE @ 102 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD1Ev @ 103 NONAME + _ZN34TGlxFromIndexOutwardBlockyIteratorD2Ev @ 104 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIterator8SetIndexEi @ 105 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC1Ev @ 106 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorC2Ev @ 107 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD1Ev @ 108 NONAME + _ZN40TGlxFromManualIndexOutwardBlockyIteratorD2Ev @ 109 NONAME + _ZN9CGlxMedia13SetTextValueLERK13TMPXAttributeRK7TDesC16 @ 110 NONAME + _ZN9CGlxMedia14HandleModifiedERK6RArrayI13TMPXAttributeE @ 111 NONAME + _ZN9CGlxMedia15DeleteAttributeERK13TMPXAttribute @ 112 NONAME + _ZN9CGlxMedia16SetCObjectValueLERK13TMPXAttributeP5CBase @ 113 NONAME + _ZN9CGlxMedia5ResetEv @ 114 NONAME + _ZN9CGlxMedia9SetValueLERK13TMPXAttributePv17TMPXAttributeType @ 115 NONAME + _ZN9CGlxMediaC1ERK11TGlxMediaId @ 116 NONAME + _ZN9CGlxMediaC2ERK11TGlxMediaId @ 117 NONAME + _ZN9CGlxMediaD0Ev @ 118 NONAME + _ZN9CGlxMediaD1Ev @ 119 NONAME + _ZN9CGlxMediaD2Ev @ 120 NONAME + _ZN9MGlxCache9InstanceLEv @ 121 NONAME + _ZN9TGlxMedia23DeleteLocationAttributeEv @ 122 NONAME + _ZN9TGlxMedia9MatchByIdERKS_S1_ @ 123 NONAME + _ZNK14CGlxListWindow2AtEi @ 124 NONAME + _ZNK14CGlxListWindow8IteratorEv @ 125 NONAME + _ZNK21TGlxSelectionIterator7InRangeEi @ 126 NONAME + _ZNK22CGlxImageViewerManager15ImageFileHandleEv @ 127 NONAME + _ZNK9CGlxMedia12GetValueTextER7TPtrC16RK13TMPXAttribute @ 128 NONAME + _ZNK9CGlxMedia12ValueCObjectERK13TMPXAttribute @ 129 NONAME + _ZNK9CGlxMedia9ValueTextERK13TMPXAttribute @ 130 NONAME + _ZNK9TGlxMedia11GetDurationERf @ 131 NONAME + _ZNK9TGlxMedia11GetIconInfoER9TIconInfo @ 132 NONAME + _ZNK9TGlxMedia13GetCoordinateER11TCoordinate @ 133 NONAME + _ZNK9TGlxMedia13GetDimensionsER5TSize @ 134 NONAME + _ZNK9TGlxMedia13GetFrameCountERi @ 135 NONAME + _ZNK9TGlxMedia13GetSystemItemERi @ 136 NONAME + _ZNK9TGlxMedia14GetDrmValidityER30TGlxMediaGeneralRightsValidity @ 137 NONAME + _ZNK9TGlxMedia14IsDrmProtectedEv @ 138 NONAME + _ZNK9TGlxMedia15GetDrmProtectedERi @ 139 NONAME + _ZNK9TGlxMedia18ThumbnailAttributeER13TMPXAttribute @ 140 NONAME + _ZNK9TGlxMedia19GetClosestThumbnailER13TMPXAttributeRK5TSizei @ 141 NONAME + _ZNK9TGlxMedia19GetLastModifiedDateER5TTime @ 142 NONAME + _ZNK9TGlxMedia20GetStaticItemCommandERi @ 143 NONAME + _ZNK9TGlxMedia21GetContainedItemCountERi @ 144 NONAME + _ZNK9TGlxMedia26IsSlideShowPlayableContentEv @ 145 NONAME + _ZNK9TGlxMedia38GetSlideshowPlayableContainedItemCountERi @ 146 NONAME + _ZNK9TGlxMedia3UriEv @ 147 NONAME + _ZNK9TGlxMedia5TitleEv @ 148 NONAME + _ZNK9TGlxMedia7CommentEv @ 149 NONAME + _ZNK9TGlxMedia7GetDateER5TTime @ 150 NONAME + _ZNK9TGlxMedia7GetSizeERi @ 151 NONAME + _ZNK9TGlxMedia8CategoryEv @ 152 NONAME + _ZNK9TGlxMedia8IsStaticEv @ 153 NONAME + _ZNK9TGlxMedia8MimeTypeEv @ 154 NONAME + _ZNK9TGlxMedia8SubTitleEv @ 155 NONAME + _ZNK9TGlxMedia9IdSpaceIdEv @ 156 NONAME + _ZTI13CGlxMediaList @ 157 NONAME + _ZTI14CGlxListWindow @ 158 NONAME + _ZTI15CGlxImageReader @ 159 NONAME + _ZTI16CGlxCacheManager @ 160 NONAME + _ZTI20CGlxAttributeContext @ 161 NONAME + _ZTI20CGlxGarbageCollector @ 162 NONAME + _ZTI20CGlxThumbnailContext @ 163 NONAME + _ZTI21TGlxExclusionIterator @ 164 NONAME + _ZTI21TGlxSelectionIterator @ 165 NONAME + _ZTI22TGlxSequentialIterator @ 166 NONAME + _ZTI22TGlxSpecificIdIterator @ 167 NONAME + _ZTI25TGlxFirstThenLastIterator @ 168 NONAME + _ZTI27CGlxDefaultAttributeContext @ 169 NONAME + _ZTI27CGlxDefaultThumbnailContext @ 170 NONAME + _ZTI28TGlxFromFocusOutwardIterator @ 171 NONAME + _ZTI33TGlxFromManualIndexBlockyIterator @ 172 NONAME + _ZTI34TGlxFromFocusOutwardBlockyIterator @ 173 NONAME + _ZTI34TGlxFromIndexOutwardBlockyIterator @ 174 NONAME + _ZTI40TGlxFromManualIndexOutwardBlockyIterator @ 175 NONAME + _ZTV13CGlxMediaList @ 176 NONAME + _ZTV14CGlxListWindow @ 177 NONAME + _ZTV15CGlxImageReader @ 178 NONAME + _ZTV16CGlxCacheManager @ 179 NONAME + _ZTV20CGlxAttributeContext @ 180 NONAME + _ZTV20CGlxGarbageCollector @ 181 NONAME + _ZTV20CGlxThumbnailContext @ 182 NONAME + _ZTV21TGlxExclusionIterator @ 183 NONAME + _ZTV21TGlxSelectionIterator @ 184 NONAME + _ZTV22TGlxSequentialIterator @ 185 NONAME + _ZTV22TGlxSpecificIdIterator @ 186 NONAME + _ZTV25TGlxFirstThenLastIterator @ 187 NONAME + _ZTV27CGlxDefaultAttributeContext @ 188 NONAME + _ZTV27CGlxDefaultThumbnailContext @ 189 NONAME + _ZTV28TGlxFromFocusOutwardIterator @ 190 NONAME + _ZTV33TGlxFromManualIndexBlockyIterator @ 191 NONAME + _ZTV34TGlxFromFocusOutwardBlockyIterator @ 192 NONAME + _ZTV34TGlxFromIndexOutwardBlockyIterator @ 193 NONAME + _ZTV40TGlxFromManualIndexOutwardBlockyIterator @ 194 NONAME diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/plugins/fullscreenviewpluginbase/src/glxfullscreenviewpluginbase.cpp --- a/photosgallery/viewframework/plugins/fullscreenviewpluginbase/src/glxfullscreenviewpluginbase.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/plugins/fullscreenviewpluginbase/src/glxfullscreenviewpluginbase.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -171,7 +171,7 @@ GLX_LOG_INFO( "Adding CGlxCommandHandlerSave" ); iFullScreenView->AddCommandHandlerL( - CGlxCommandHandlerSave::NewL( iFullScreenView, ETrue ) ); + CGlxCommandHandlerSave::NewL() ); GLX_LOG_INFO( "Adding CGlxCommandHandlerSlideshow" ); iFullScreenView->AddCommandHandlerL( diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/plugins/gridviewplugin/data/glxgridviewdata.rss --- a/photosgallery/viewframework/plugins/gridviewplugin/data/glxgridviewdata.rss Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/plugins/gridviewplugin/data/glxgridviewdata.rss Mon Jan 18 20:19:20 2010 +0200 @@ -551,7 +551,7 @@ bmpmask = EMbmGlxiconsQgn_indi_tb_slideshow_mask; press_bmpid = EMbmGlxiconsQgn_indi_tb_slideshow; press_bmpmask = EMbmGlxiconsQgn_indi_tb_slideshow_mask; - helptxt = qtn_lgal_options_slideshow; + helptxt = qtn_lgal_tooltip_slideshow; } }; }; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/plugins/gridviewplugin/src/glxmaingridviewplugin.cpp --- a/photosgallery/viewframework/plugins/gridviewplugin/src/glxmaingridviewplugin.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/plugins/gridviewplugin/src/glxmaingridviewplugin.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -108,9 +108,6 @@ TGlxHelpContext helpInfo; helpInfo.iBrowseContext = LGAL_HLP_ALL_GRID; helpInfo.iViewContext = LGAL_HLP_ALL_FULLSCREEN; - GLX_LOG_INFO( "Adding CGlxCommandHandlerSlideshow" ); - iGridView->AddCommandHandlerL( - CGlxCommandHandlerSlideshow::NewL( iGridView, ETrue , EFalse ) ); iGridView->AddCommandHandlerL(CGlxCommandHandlerHelp::NewL(helpInfo)); } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp --- a/photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/tvout/src/glxhdmicontroller.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -53,6 +53,10 @@ DestroyContainer(); delete iStoredImagePath; iStoredImagePath = NULL; + if(iGlxTvOut) + { + delete iGlxTvOut; + } } // ----------------------------------------------------------------------------- diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/tvout/src/glxhdmisurfaceupdater.cpp --- a/photosgallery/viewframework/tvout/src/glxhdmisurfaceupdater.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/tvout/src/glxhdmisurfaceupdater.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -359,8 +359,8 @@ #ifdef _DEBUG iStopTime.HomeTime(); - GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::HandleRunL() ConvertImageL took us %d us", - iStopTime.MicroSecondsFrom(iStartTime) ); + GLX_LOG_INFO1("CGlxHdmiSurfaceUpdater::HandleRunL() ConvertImageL took" + " <%d> us", (TInt)iStopTime.MicroSecondsFrom(iStartTime).Int64()); #endif iZoomRectSz = iDecodedBitmap->SizeInPixels(); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/cloudview/group/glxcloudview.mmp --- a/photosgallery/viewframework/views/cloudview/group/glxcloudview.mmp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/cloudview/group/glxcloudview.mmp Mon Jan 18 20:19:20 2010 +0200 @@ -76,6 +76,7 @@ LIBRARY cdlengine.lib LIBRARY aknlayout2scalable.lib +LIBRARY aknphysics.lib // End of File \ No newline at end of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/cloudview/inc/glxcloudviewcontrol.h --- a/photosgallery/viewframework/views/cloudview/inc/glxcloudviewcontrol.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/cloudview/inc/glxcloudviewcontrol.h Mon Jan 18 20:19:20 2010 +0200 @@ -35,6 +35,7 @@ #include #include +#include //Physics - Kinetic scrolling listener using namespace Alf; @@ -52,6 +53,7 @@ class MGlxCloudViewMskObserver; class MGlxEnterKeyEventObserver; class MGlxCloudViewLayoutObserver; +class CAknPhysics; enum TTagEventType { @@ -66,6 +68,7 @@ class CGlxCloudViewControl : public CAlfControl,public IAlfWidgetEventHandler ,public MGlxMediaListObserver + ,public MAknPhysicsObserver { public: @@ -304,9 +307,39 @@ * */ void AppendToCloudArrayL( TGlxCloudInfo& aCloudInfo, const TInt& aStartIndex, const TInt& aEndIndex ); - + +private: // from MAknPhysicsObserver + + /* + * Observer to get notified about new position to be displayed in + * @param aNewPosition The new point where the virtual port should start from + * @param aDrawNow value to determine whether to draw at new position or not + * @param aFags Special value (not used here) + */ + void ViewPositionChanged( const TPoint& aNewPosition, TBool aDrawNow, TUint /*aFlags*/ ); + + /* + * Obsrever to get notified whether the physics emulation ended + */ + void PhysicEmulationEnded(); + + /* + * Observer callback used by CAknPhysics to know our current viewposition + * (which is with reference to displayable viewportposition + screeenheight/2) + * Returns current viewposition point + */ + TPoint ViewPosition() const; + + private: - + + TBool IsLandscape(); + + /* + * Initializes the physcs library with total size, displayable size, etc + */ + void InitPhysicsL(); + /** * Sets focused item color **/ @@ -568,7 +601,30 @@ TInt iIsDragging; TAknWindowLineLayout iScrollPaneHandle; - + + //View position w.r.t. viewportposition + (screeenwidth/2, screenheight/2) + TPoint iViewPosition; + + //determins whether dragging is currently going on or not + TBool iDragging; + + //Notes the time before dragging, when pointer down event happens + TTime iStartTime; + + //Notes the last pointer co-ordinates + TPoint iPrev; + + //The pointer coordinates before dragging when pointerDown event happened + TPoint iStart; + + //owning - Physics library object + CAknPhysics* iPhysics; + + //boolean to check whether physics emulation is going on or not + TBool iPhysicsStarted; + + //boolean to check if dragging really happened + TBool iViewDragged; }; #endif // C_GLXCLOUDVIEWCONTROL_H diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/cloudview/src/glxcloudviewcontrol.cpp --- a/photosgallery/viewframework/views/cloudview/src/glxcloudviewcontrol.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/cloudview/src/glxcloudviewcontrol.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -33,7 +33,7 @@ #include // For CAlfDisplay #include // For alfScrollbar model #include - +#include // For Kinetic Scrolling #include #include #include @@ -65,8 +65,9 @@ const TInt KRightmargin = 20; const TInt KMinTagSize = 77; const TInt KTagScreenHeight = 460; -const TInt KDragHoldTime = 500; - +const TReal KBoundaryMargin = 0.1; //10% = 10/100 = 0.1 +const TInt KFastCloudMovement = 100; //Transition time to move cloud view +const TInt KSlowCloudMovement = 1000; //Transition time to move cloud view // --------------------------------------------------------------------------- // Two-phased constructor. @@ -142,7 +143,7 @@ iParentLayout = CAlfLayout::AddNewL(*this, aAnchorLayout); iTagScreenWidth = rect.Width() - iScrollPaneHandle.iW - KRightmargin; - if (GlxGeneralUiUtilities::IsLandscape()) + if(IsLandscape()) { iTagScreenHeight = rect.Height(); } @@ -194,6 +195,8 @@ } //get touch feedback instance iTouchFeedback = MTouchFeedback::Instance(); + iPhysics = CAknPhysics::NewL(*this, NULL); + InitPhysicsL(); } @@ -206,10 +209,10 @@ TRACER("GLX_CLOUD::CGlxCloudViewControl::VisualLayoutUpdated"); TRect rect; AknLayoutUtils::LayoutMetricsRect (AknLayoutUtils::EMainPane, rect); - if ( (rect.Width() != iTagScreenWidth) && ( rect.Height () != iScreenHeight)) + if ((rect.Width() != (iTagScreenWidth + iScrollPaneHandle.iW + KRightmargin)) || (rect.Height() != iScreenHeight)) { //set the new screen dimensions - UpdateLayoutL(); + TRAP_IGNORE(UpdateLayoutL()); } } @@ -237,6 +240,7 @@ iUiUtility->Close (); } delete iEmptyText; + delete iPhysics; } // --------------------------------------------------------------------------- @@ -408,7 +412,7 @@ iViewPortLayout->SetSize(TAlfRealSize(iTagScreenWidth,iTagScreenHeight), 0); iViewPortSize.iWidth = iTagScreenWidth; iViewPortSize.iHeight = iTagScreenHeight; - iViewPortLayout->SetViewportPos(TAlfRealPoint(0, 0),1000); + iViewPortLayout->SetViewportPos(TAlfRealPoint(0, 0), KSlowCloudMovement); iViewPortPosition.iX =0; iViewPortPosition.iY =0; @@ -475,7 +479,7 @@ case EKeyDownArrow: { - if(iCloudInfo.Count() >1 ) + if (iCloudInfo.Count() > 1) { HandleKeyDownL (); consumed = ETrue; @@ -594,35 +598,6 @@ //if its a pointer event consumed = HandlePointerEventL(aEvent); } - else if( aEvent.IsCustomEvent() ) - { - if(aEvent.CustomParameter() == ECustomEventFocusDragScroll) - { - //dragging down - if( iIsDragging == 1 ) - { - if(iFocusRowIndex!=iCloudInfo.Count()-1) - { - SetRelativeFocusL(iFocusRowIndex+1); - iFocusRowIndex = RowNumber (iMediaList.FocusIndex ()); - // iScrollDirection = 0; - MoveDownIfRequired(); - } - } - //dragging up - else if(iIsDragging == 2) - { - if(iFocusRowIndex!=0) - { - SetRelativeFocusL(iFocusRowIndex-1); - iFocusRowIndex = RowNumber (iMediaList.FocusIndex ()); - // iScrollDirection = 0; - MoveUpIfRequired(); - } - } - } - consumed = EFalse; - } return consumed; } @@ -663,10 +638,9 @@ // If the last item is focused and if we are navigating downwards,then set the // focus to first element. - if( iFocusRowIndex == iCloudInfo.Count()-1 ) - { - iMediaList.SetFocusL (NGlxListDefs::EAbsolute, - 0); + if (iFocusRowIndex == iCloudInfo.Count() - 1) + { + iMediaList.SetFocusL(NGlxListDefs::EAbsolute, 0); } //else set the focus to the item which is in the next row,that overlaps with midpoint of the @@ -818,6 +792,7 @@ UpdateRowDataL (); //updates the row data and reassigns font sizes and draw the layout on screen. } + InitPhysicsL(); } @@ -859,6 +834,7 @@ DisplayEmptyCloudViewL(); } } + InitPhysicsL(); } // --------------------------------------------------------------------------- @@ -910,6 +886,8 @@ } //generate row structures and draw rows on screen UpdateRowDataL (); + + InitPhysicsL(); } } @@ -1336,7 +1314,7 @@ { iViewPortPosition.iY = iViewPortVirtualSize.iHeight - iViewPortSize.iHeight; } - iViewPortLayout->SetViewportPos (iViewPortPosition,1000); + iViewPortLayout->SetViewportPos(iViewPortPosition, KSlowCloudMovement); iScrollEventData.mViewStartPos = iViewPortPosition.iY; Scroll(); //CalculateBubleMidPoint (); @@ -1371,7 +1349,7 @@ { iViewPortPosition.iY = 0; } - iViewPortLayout->SetViewportPos (iViewPortPosition,1000); + iViewPortLayout->SetViewportPos(iViewPortPosition, KSlowCloudMovement); iScrollEventData.mViewStartPos = iViewPortPosition.iY; if(iScrollBarWidget) { @@ -1434,8 +1412,21 @@ TRACER("GLX_CLOUD::CGlxCloudViewControl::HandlePointerEventL"); CAlfVisual* tappedvisual = aEvent.Visual(); TBool consumed = EFalse; + if(aEvent.PointerEvent().iType == TPointerEvent::EButton1Down) { + //reset variables & Physics simulator + iPhysics->StopPhysics(); + iPhysics->ResetFriction(); + iDragging = EFalse; + iPhysicsStarted = EFalse; + iStartTime.HomeTime(); + iViewDragged = EFalse; + Display()->Roster().SetPointerEventObservers( + EAlfPointerEventReportDrag + EAlfPointerEventReportLongTap + + EAlfPointerEventReportUnhandled, *this); + Display()->Roster().DisableLongTapEventsWhenDragging(*this); + if(tappedvisual) { for(TInt index=0;indexCount();index++) @@ -1445,19 +1436,53 @@ if(layoutvisual == tappedvisual) { TInt focus = iMediaList.FocusIndex(); - //if the visual is already focused then for next tap open the next view - if( focus == index ) + if (index != focus) { - iTouchFeedback->InstantFeedback( ETouchFeedbackBasic ); - iObserverEnterKeyEvent.HandleEnterKeyEventL( (TInt)EAknCmdOpen ); - consumed = ETrue; + iTouchFeedback->InstantFeedback(ETouchFeedbackBasic); + iMediaList.SetFocusL(NGlxListDefs::EAbsolute, index); + SetFocusColor(); } - else if( index!= focus ) + consumed = ETrue; + break; + } + } + } + } + else if (aEvent.PointerEvent().iType == TPointerEvent::EDrag) + { + GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::HandlePointerEventL(EDrag) event"); + iTouchFeedback->InstantFeedback(ETouchFeedbackBasic); + + consumed = HandleDragL(aEvent.PointerEvent()); + } + else if (aEvent.PointerUp()) + { + Display()->Roster().SetPointerEventObservers(0, *this); + consumed = ETrue; + + //Check if dragging actually happened using iViewDragged + if (iDragging && iViewDragged) + { + iDragging = EFalse; + TPoint drag = iStart - aEvent.PointerEvent().iPosition; + iPhysics->StartPhysics(drag, iStartTime); + iPhysicsStarted = ETrue; + } + //If dragging not happened consider it as Tapped event + else if (tappedvisual && !iViewDragged) + { + for (TInt index = 0; index < iLayout->Count(); index++) + { + CAlfVisual* layoutvisual = &(iLayout->Visual(index)); + //if the tapped visual is same as the visual in the layout then focus that visual + if (layoutvisual == tappedvisual) + { + TInt focus = iMediaList.FocusIndex(); + if (index != focus) { iTouchFeedback->InstantFeedback( ETouchFeedbackBasic ); TInt focusrowindex = iFocusRowIndex; - iMediaList.SetFocusL (NGlxListDefs::EAbsolute, - index); + iMediaList.SetFocusL(NGlxListDefs::EAbsolute, index); SetFocusColor(); iFocusRowIndex = RowNumber (iMediaList.FocusIndex ()); if( iFocusRowIndex > focusrowindex) @@ -1473,29 +1498,15 @@ MoveUpIfRequired(); } } + + iTouchFeedback->InstantFeedback(ETouchFeedbackBasic); + iObserverEnterKeyEvent.HandleEnterKeyEventL((TInt) EAknCmdOpen); consumed = ETrue; - Display()->Roster().SetPointerEventObservers( EAlfPointerEventReportDrag - + EAlfPointerEventReportLongTap - + EAlfPointerEventReportUnhandled, *this ); - Display()->Roster().DisableLongTapEventsWhenDragging(*this); break; } } } - } - - else if (aEvent.PointerEvent().iType == TPointerEvent::EDrag) - { - GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::HandlePointerEventL(EDrag) event"); - iTouchFeedback->InstantFeedback( ETouchFeedbackBasic ); - consumed = HandleDragL(aEvent.PointerEvent()); - } - else if (aEvent.PointerUp()) - { - - Env().CancelCustomCommands(this,ECustomEventFocusDragScroll); - Display()->Roster().SetPointerEventObservers(0, *this); - consumed = ETrue; + iViewDragged = EFalse; } return consumed; } @@ -1506,59 +1517,65 @@ // TBool CGlxCloudViewControl::HandleDragL(const TPointerEvent& aPointerEvent) { - TRACER("GLX_CLOUD::CGlxCloudViewControl::HandleDragL"); - TBool consumed = EFalse; - TInt itemindex = GetAbsoluteIndex(aPointerEvent.iPosition); - TInt focus = iMediaList.FocusIndex(); - TInt focusrowindex = iFocusRowIndex; + TBool consumed(EFalse); + + // If Physics Emulation is going on, no need to entertain drag event + if (iPhysicsStarted) + return consumed; - //if index is not NULL then focus the tag and move the viewport down if necessary - if ( itemindex != KErrNotFound ) + //Simply ignore the first drag event as there is huge difference between position + //coordinates in drag event and corordinates in normal pointer down / up events + if (!iDragging) { - if (focus != itemindex ) - { - iTouchFeedback->InstantFeedback( ETouchFeedbackSensitive ); - iMediaList.SetFocusL (NGlxListDefs::EAbsolute,itemindex); - iFocusRowIndex = RowNumber (iMediaList.FocusIndex ()); - GLX_LOG_INFO1("GLX_CLOUD :: CGlxCloudViewControl::HandleDragL,focusrowindex = %d",iFocusRowIndex); - if( iFocusRowIndex > focusrowindex) - { - GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::HandleDragL,b4 movedown"); - iScrollDirection = 0; - MoveDownIfRequired(); - } - else if( iFocusRowIndex < focusrowindex ) - { - GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::HandleDragL,b4 moveup"); - iScrollDirection = 1; - MoveUpIfRequired(); - } - } - consumed = ETrue; + //Note the current position for future reference + iStart = aPointerEvent.iPosition; + iPrev = iStart; + iDragging = ETrue; + return consumed; } - TRect screenstartrect; - //the starting rect of the visible screen - screenstartrect.SetRect(0,0,iTagScreenWidth,2*KRowHeight); + TRect rect; + AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, rect); + TInt cntrlTopYLimit = rect.iTl.iY; + TInt cntrlBottomYLimit = rect.iBr.iY; + TInt delta = iPrev.iY - aPointerEvent.iPosition.iY; - TRect screenendrect; - //the end rect of the visible screen - screenendrect.SetRect(0,(iTagScreenHeight-(2*KRowHeight)),iTagScreenWidth,iTagScreenHeight); + //Check for physics threshold, before regidterting drag corordinates + TInt deltaAbs = delta < 0 ? -delta : delta; + TBool panning = deltaAbs >= iPhysics->DragThreshold(); + if (panning) + { + TPoint deltaPt = iPrev - aPointerEvent.iPosition; + iPhysics->RegisterPanningPosition(deltaPt); + iPrev = aPointerEvent.iPosition; + iViewDragged = ETrue; + } + consumed = ETrue; - //dragging down - if(screenendrect.Contains(aPointerEvent.iPosition)) - { - iIsDragging = 1; - Env().Send(TAlfCustomEventCommand(ECustomEventFocusDragScroll, - this),KDragHoldTime); + //Calculate margin after which we might get pointer out of screen, and we might not + //get further pointer events. Also This is currently only 10% of total delta we can find, + //to get margin corresponding to movement of user flicking speed + //This implies higher speed - higher margin + //Lower speed - 0 margin + TInt deltaMargin = deltaAbs * KBoundaryMargin; + + //Code to predict future movement if same delta movement we might get in future + //For flick event down - If the movement goes below screen, start physics + //or For flick event up - If the movement goes above screen, start physics + if (((delta < 0) && (aPointerEvent.iPosition.iY - delta >= cntrlBottomYLimit - deltaMargin)) + || ((delta > 0) && (aPointerEvent.iPosition.iY - delta <= cntrlTopYLimit + deltaMargin))) + { + iPhysicsStarted = ETrue; } - //dragging up - else if (screenstartrect.Contains(aPointerEvent.iPosition)) + + //If found that possibly in next move it might go out of bounds, start physics + //emulation + if (iPhysicsStarted && iDragging) { - iIsDragging = 2; - Env().Send(TAlfCustomEventCommand(ECustomEventFocusDragScroll, - this),KDragHoldTime); - } + TPoint drag = iStart - aPointerEvent.iPosition; + iPhysics->StartPhysics(drag, iStartTime); + iDragging = EFalse; + } return consumed; } @@ -1684,6 +1701,8 @@ TInt steps = TInt(aEvent.CustomEventData()); UpdateScrollBar(steps,EFalse); Scroll(); + iPhysics->StopPhysics(); + status = EEventHandled; } break; @@ -1692,7 +1711,8 @@ GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::offerEvent(EEventScrollPageUp) event"); UpdateScrollBar(-iScrollEventData.mViewLength); Scroll(); - status = EEventHandled; + iPhysics->StopPhysics(); + status = EEventHandled; } break; case EEventScrollPageDown: @@ -1700,6 +1720,7 @@ GLX_LOG_INFO("GLX_CLOUD :: CGlxCloudViewControl::offerEvent(EEventScrollPageDown) event"); UpdateScrollBar(iScrollEventData.mViewLength); Scroll(); + iPhysics->StopPhysics(); status = EEventHandled; } break; @@ -1755,7 +1776,7 @@ iScrollbarElement->offerEvent(*(iScrollBarWidget->control()),customevent); GLX_LOG_INFO1("GLX_CLOUD ::CGlxCloudViewControl::Scroll(),position %d ",iScrollEventData.mViewStartPos); iViewPortPosition.iY = iScrollEventData.mViewStartPos; - iViewPortLayout->SetViewportPos (iViewPortPosition,1000); + iViewPortLayout->SetViewportPos(iViewPortPosition, KSlowCloudMovement); } // --------------------------------------------------------------------------- @@ -1820,12 +1841,12 @@ { TRect rect; AknLayoutUtils::LayoutMetricsRect (AknLayoutUtils::EMainPane, rect); - if ( (rect.Width() != iTagScreenWidth) && ( rect.Height () != iScreenHeight)) + if ((rect.Width() != (iTagScreenWidth + iScrollPaneHandle.iW + KRightmargin)) || (rect.Height() != iScreenHeight)) { //set the new screen dimensions iScreenHeight=rect.Height(); iTagScreenWidth = rect.Width()- iScrollPaneHandle.iW - KRightmargin; - if (GlxGeneralUiUtilities::IsLandscape()) + if(IsLandscape()) { iTagScreenHeight = rect.Height(); } @@ -1842,8 +1863,79 @@ FetchAttributeFromCacheL(); //generate row structures and draw rows on screen UpdateRowDataL (); + + InitPhysicsL(); } } } + +// --------------------------------------------------------------------------- +// InitPhysicsL() +// --------------------------------------------------------------------------- +// +void CGlxCloudViewControl::InitPhysicsL() + { + //Update physics with new total layout, viewable size and our landscape mode + iPhysics->InitPhysicsL(TSize(iViewPortVirtualSize.iWidth, + iViewPortVirtualSize.iHeight), TSize(iTagScreenWidth, + iTagScreenHeight), EFalse); + + //Note: Physics viewposition must always be mid of viewable screen size to get best result + //I learned the hard way + iViewPosition.SetXY(iTagScreenWidth / 2, iTagScreenHeight / 2); + } + +// --------------------------------------------------------------------------- +// ViewPositionChanged() +// --------------------------------------------------------------------------- +// +void CGlxCloudViewControl::ViewPositionChanged(const TPoint& aNewPosition, + TBool aDrawNow, TUint /*aFlags*/) + { + iViewPosition = aNewPosition; + iViewPortPosition.iY = iViewPosition.iY - iTagScreenHeight / 2; + if (aDrawNow) + { + iViewPortLayout->SetViewportPos(iViewPortPosition, KFastCloudMovement); + iScrollEventData.mViewStartPos = iViewPortPosition.iY; + Scroll(); + } + } + +// --------------------------------------------------------------------------- +// PhysicEmulationEnded() +// --------------------------------------------------------------------------- +// +void CGlxCloudViewControl::PhysicEmulationEnded() + { + iPhysicsStarted = EFalse; + } + +// --------------------------------------------------------------------------- +// ViewPosition() +// --------------------------------------------------------------------------- +// +TPoint CGlxCloudViewControl::ViewPosition() const + { + return iViewPosition; + } + +// --------------------------------------------------------------------------- +// IsLandscape() +// --------------------------------------------------------------------------- +// +TBool CGlxCloudViewControl::IsLandscape() + { + TRect rect; + AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EScreen, rect); + if(rect.Width() > rect.Height()) + { + return ETrue; + } + else + { + return EFalse; + } + } //End of file diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenviewimp.h --- a/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenviewimp.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/inc/glxfullscreenviewimp.h Mon Jan 18 20:19:20 2010 +0200 @@ -40,7 +40,7 @@ class CEikButtonGroupContainer; class CGlxActiveMediaListRegistry; class CGlxZoomControl; -class CGlxSinleLineMetaPane; +class CGlxSingleLineMetaPane; class CGlxCommandHandlerAiwShowMapHardKey; class CGlxDRMUtility; class CGlxHdmiController; @@ -295,7 +295,7 @@ CGlxCommandHandlerAiwShowMapHardKey* iShowOnMapHardKeyhandler; CGlxScreenFurniture* iScreenFurniture; - //CGlxSinleLineMetaPane* iSingleLineMetaPane; + //CGlxSingleLineMetaPane* iSingleLineMetaPane; // CHgContextUtility* iContextUtility; CGlxHdmiController* iHdmiController; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/inc/glxsinglelinemetapanecontrol.h --- a/photosgallery/viewframework/views/fullscreenview/inc/glxsinglelinemetapanecontrol.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/inc/glxsinglelinemetapanecontrol.h Mon Jan 18 20:19:20 2010 +0200 @@ -61,7 +61,7 @@ /* * For craeting and maintaining the Single Line metapane */ -class CGlxSinleLineMetaPane: public CAlfControl, +class CGlxSingleLineMetaPane: public CAlfControl, public MGlxMediaListObserver, public MGlxSLMPObserver { @@ -69,13 +69,13 @@ /* * NewL() */ - static CGlxSinleLineMetaPane* NewL( CGlxFullScreenViewImp& aFullscreenView, + static CGlxSingleLineMetaPane* NewL( CGlxFullScreenViewImp& aFullscreenView, MGlxMediaList& aMediaList, CGlxUiUtility& aUiUtility); /* * destructor */ - ~CGlxSinleLineMetaPane(); + ~CGlxSingleLineMetaPane(); /* * Show/Hide the Metapane @@ -109,7 +109,7 @@ /* * Constructor */ - CGlxSinleLineMetaPane(CGlxFullScreenViewImp& aFullscreenView, + CGlxSingleLineMetaPane(CGlxFullScreenViewImp& aFullscreenView, MGlxMediaList& aMediaList,CGlxUiUtility& aUiUtility); /* diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/inc/glxslmpfavmlobserver.h --- a/photosgallery/viewframework/views/fullscreenview/inc/glxslmpfavmlobserver.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/inc/glxslmpfavmlobserver.h Mon Jan 18 20:19:20 2010 +0200 @@ -31,7 +31,7 @@ /* * Newl() */ - static CGlxSLMPFavMLObserver* NewL( CGlxSinleLineMetaPane& aSingleLineMetaPane, + static CGlxSLMPFavMLObserver* NewL( CGlxSingleLineMetaPane& aSingleLineMetaPane, TInt aFocusIndex,MGlxMediaList* aList); /* @@ -58,7 +58,7 @@ /* * Constructor */ - CGlxSLMPFavMLObserver(CGlxSinleLineMetaPane& aSingleLineMetaPane); + CGlxSLMPFavMLObserver(CGlxSingleLineMetaPane& aSingleLineMetaPane); /* * 2nd Phase Ctor @@ -68,7 +68,7 @@ void ConstructL(TInt aFocusIndex, MGlxMediaList* aList); private: - CGlxSinleLineMetaPane& iSingleLineMetaPane; // SingleLineMetapane Reference + CGlxSingleLineMetaPane& iSingleLineMetaPane; // SingleLineMetapane Reference MGlxMediaList* iFavMediaList; // Favourite Medialist CGlxDefaultAttributeContext* iFavAttribContext; // Attribute context for favourites }; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/src/glxfullscreenviewimp.cpp --- a/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenviewimp.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/src/glxfullscreenviewimp.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -70,8 +70,6 @@ using namespace Alf; -//To disable AppUi status pane -#define GetAppViewUi() (dynamic_cast(CEikonEnv::Static()->EikAppUi())) const TInt KGlxScreenTimeout =10000000; const TInt KCoverflowDataWindowSize = 1; const TInt KGlxMaxSmallImageZoomLevel =150; @@ -343,7 +341,7 @@ *iZoomButtonGroup, *iSliderWidget, iGestureHelper); // Create the Metapane - //iSingleLineMetaPane = CGlxSinleLineMetaPane::NewL(*this,*iMediaList,*iUiUtility); + //iSingleLineMetaPane = CGlxSingleLineMetaPane::NewL(*this,*iMediaList,*iUiUtility); // hide the screen furniture HideUi(ETrue); @@ -380,39 +378,41 @@ // Get widget factory from CAlfEnv // Factory is then used to create the individual widgets & data model - IAlfWidgetFactory& widgetFactory = AlfWidgetEnvExtension::widgetFactory(*iEnv); + IAlfWidgetFactory& widgetFactory = + AlfWidgetEnvExtension::widgetFactory(*iEnv); - // create a view widget - iViewWidget = widgetFactory.createViewWidget ( - KCoverflowViewWidget, 0x113); - // hide control and status pane - iViewWidget->enableControlPane(EFalse); - iViewWidget->enableStatusPane(EFalse); - iViewWidget->setRect(TRect(TPoint(0,0),AlfUtil::ScreenSize())); - iViewWidget->show(true); - // create coverflow widget - iCoverFlowWidget = widgetFactory.createWidget ( - KWidgetName, KCoverflowWidget, *iViewWidget, NULL); - iCoverFlowWidget->SetFlags(IMulMultiItemWidget::EMulWidgetDoubleTap); + // create a view widget + iViewWidget = widgetFactory.createViewWidget(KCoverflowViewWidget, + 0x113); + // hide control and status pane + iViewWidget->enableControlPane(EFalse); + iViewWidget->enableStatusPane(EFalse); + iViewWidget->setRect(TRect(TPoint(0, 0), AlfUtil::ScreenSize())); + iViewWidget->show(true); + // create coverflow widget + iCoverFlowWidget = widgetFactory.createWidget ( + KWidgetName, KCoverflowWidget, *iViewWidget, NULL); + iCoverFlowWidget->SetFlags(IMulMultiItemWidget::EMulWidgetDoubleTap); - // Widget takes the ownership - iCoverFlowWidget->AddEventHandler (*this); + // Widget takes the ownership + iCoverFlowWidget->AddEventHandler(*this); - // hide appui's status pane - GetAppViewUi()->StatusPane()->MakeVisible(EFalse); + CAknViewAppUi* appui = AppUi(); + if ( appui ) + { + appui->StatusPane()->MakeVisible(EFalse); + appui->Cba()->MakeVisible(EFalse); + } - // hide appui's softkeys - GetAppViewUi()->Cba()->MakeVisible(EFalse); - iCoverFlowWidget->ShowWidget(ETrue); - iCoverFlowWidget->control()->AcquireFocus(); + iCoverFlowWidget->ShowWidget(ETrue); + iCoverFlowWidget->control()->AcquireFocus(); + iMediaListMulModelProvider = CGlxMediaListMulModelProvider::NewL( + *iEnv, *iCoverFlowWidget, *iMediaList, iFullScreenBindingSet, + mulwidget::KTemplate4, KCoverflowDataWindowSize); - iMediaListMulModelProvider = CGlxMediaListMulModelProvider::NewL (*iEnv, - *iCoverFlowWidget, *iMediaList, iFullScreenBindingSet, - mulwidget::KTemplate4, KCoverflowDataWindowSize ); - - iGestureHelper = (GestureHelper::CGestureHelper*)iCoverFlowWidget->Gesturehelper(); + iGestureHelper + = (GestureHelper::CGestureHelper*) iCoverFlowWidget->Gesturehelper(); } - catch(...) { User::Leave(KErrGeneral); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/src/glxsinglelinemetapanecontrol.cpp --- a/photosgallery/viewframework/views/fullscreenview/src/glxsinglelinemetapanecontrol.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/src/glxsinglelinemetapanecontrol.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -70,18 +70,15 @@ _LIT8(KTagLoc, "Loc"); _LIT8(KTagFav, "Fav"); -#define GetAppUi() (dynamic_cast(CEikonEnv::Static()->EikAppUi())) - - // --------------------------------------------------------------------------- // NewL // --------------------------------------------------------------------------- // -CGlxSinleLineMetaPane* CGlxSinleLineMetaPane::NewL(CGlxFullScreenViewImp& aFullscreenView, +CGlxSingleLineMetaPane* CGlxSingleLineMetaPane::NewL(CGlxFullScreenViewImp& aFullscreenView, MGlxMediaList& aMediaList, CGlxUiUtility& aUiUtility) { - TRACER("CGlxSinleLineMetaPane* CGlxSinleLineMetaPane::NewL()"); - CGlxSinleLineMetaPane* self = new (ELeave) CGlxSinleLineMetaPane(aFullscreenView, + TRACER("CGlxSingleLineMetaPane* CGlxSingleLineMetaPane::NewL()"); + CGlxSingleLineMetaPane* self = new (ELeave) CGlxSingleLineMetaPane(aFullscreenView, aMediaList, aUiUtility); CleanupStack::PushL(self); self->ConstructL(); @@ -90,14 +87,14 @@ } // --------------------------------------------------------------------------- -// CGlxSinleLineMetaPane() constructor +// CGlxSingleLineMetaPane() constructor // --------------------------------------------------------------------------- // -CGlxSinleLineMetaPane::CGlxSinleLineMetaPane(CGlxFullScreenViewImp& aFullscreenView, +CGlxSingleLineMetaPane::CGlxSingleLineMetaPane(CGlxFullScreenViewImp& aFullscreenView, MGlxMediaList& aMediaList, CGlxUiUtility& aUiUtility) :iFullscreenView(aFullscreenView), iMediaList(aMediaList), iUiUtility(aUiUtility) { - TRACER("CGlxSinleLineMetaPane* CGlxSinleLineMetaPane::NewL()"); + TRACER("CGlxSingleLineMetaPane* CGlxSingleLineMetaPane::NewL()"); // No Implementation } @@ -105,9 +102,9 @@ // ConstructL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::ConstructL() +void CGlxSingleLineMetaPane::ConstructL() { - TRACER("CGlxSinleLineMetaPane::ConstructL()"); + TRACER("CGlxSingleLineMetaPane::ConstructL()"); // Construct the base class. // Get the icon file TFileName resFile(KDC_APP_BITMAP_DIR); @@ -185,12 +182,12 @@ } // --------------------------------------------------------------------------- -// ~CGlxSinleLineMetaPane Destructor +// ~CGlxSingleLineMetaPane Destructor // --------------------------------------------------------------------------- // -CGlxSinleLineMetaPane::~CGlxSinleLineMetaPane() +CGlxSingleLineMetaPane::~CGlxSingleLineMetaPane() { - TRACER("CGlxSinleLineMetaPane::~CGlxSinleLineMetaPane()"); + TRACER("CGlxSingleLineMetaPane::~CGlxSingleLineMetaPane()"); iMediaList.RemoveMediaListObserver(this); if( iAttribContext ) { @@ -213,9 +210,9 @@ // CreateIconTextureAndUpdateVisualsL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::CreateIconTextureAndUpdateVisualsL() +void CGlxSingleLineMetaPane::CreateIconTextureAndUpdateVisualsL() { - TRACER("CGlxSinleLineMetaPane::CreateIconTextureAndUpdateVisualsL()"); + TRACER("CGlxSingleLineMetaPane::CreateIconTextureAndUpdateVisualsL()"); // Get the icon file TFileName resFile(KDC_APP_BITMAP_DIR); resFile.Append(KGlxIconsFilename); @@ -235,9 +232,9 @@ // @bug :tapadar :major :This function is using magic numbers, would be corrected with updated LAF docs // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::CreateGridL() +void CGlxSingleLineMetaPane::CreateGridL() { - TRACER("CGlxSinleLineMetaPane::CreateGridL()"); + TRACER("CGlxSingleLineMetaPane::CreateGridL()"); iGridVisual->SetPadding(TPoint(1,1)); iGridVisual->SetInnerPadding( TPoint(1,1) ); @@ -289,10 +286,10 @@ // ShowMetaPane // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::ShowMetaPane(TBool aShow) +void CGlxSingleLineMetaPane::ShowMetaPane(TBool aShow) { - TRACER("CGlxSinleLineMetaPane::ShowMetaPane()"); - GLX_LOG_INFO1("CGlxSinleLineMetaPane::ShowMetaPane() value %d",aShow); + TRACER("CGlxSingleLineMetaPane::ShowMetaPane()"); + GLX_LOG_INFO1("CGlxSingleLineMetaPane::ShowMetaPane() value %d",aShow); if(aShow) { iMainVisual->SetOpacity(KOpacityOpaque); @@ -307,14 +304,14 @@ // OfferEventL // --------------------------------------------------------------------------- // -TBool CGlxSinleLineMetaPane::OfferEventL(const TAlfEvent &aEvent) +TBool CGlxSingleLineMetaPane::OfferEventL(const TAlfEvent &aEvent) { - TRACER("CGlxSinleLineMetaPane::OfferEventL()"); + TRACER("CGlxSingleLineMetaPane::OfferEventL()"); TBool consumed = EFalse; if (aEvent.IsKeyEvent()) { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::KeyEvent"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::KeyEvent"); } // Dont handle if not visible. [HACK ALERT]: This might probably be a hack. @@ -326,27 +323,27 @@ if(aEvent.IsPointerEvent() && aEvent.PointerDown() ) { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::PointerEvent"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::PointerEvent"); CAlfVisual* onVisual = NULL; onVisual = aEvent.Visual(); if(AlfUtil::TagMatches(onVisual->Tag(), KTagFav)) { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::PointerEvent - KTagFav"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::PointerEvent - KTagFav"); if (iFavIconStatus) { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::PointerEvent - Already Fav"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::PointerEvent - Already Fav"); iFullscreenView.HandleCommandL(EGlxCmdRemoveFromFavourites,this); } else { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::PointerEvent - Add to Fav"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::PointerEvent - Add to Fav"); iFullscreenView.HandleCommandL(EGlxCmdAddToFavourites,this); } consumed = ETrue; } else if (AlfUtil::TagMatches(onVisual->Tag(), KTagLoc)) { - GLX_LOG_INFO( "CGlxSinleLineMetaPane::OfferEventL::PointerEvent - KTagLoc , Location info present"); + GLX_LOG_INFO( "CGlxSingleLineMetaPane::OfferEventL::PointerEvent - KTagLoc , Location info present"); iFullscreenView.HandleCommandL(KGlxCmdMnShowMap,this); consumed = ETrue; } @@ -358,9 +355,9 @@ // VisualLayoutUpdated // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::VisualLayoutUpdated(CAlfVisual&/* aVisual*/) +void CGlxSingleLineMetaPane::VisualLayoutUpdated(CAlfVisual&/* aVisual*/) { - TRACER("CGlxSinleLineMetaPane::VisualLayoutUpdated()"); + TRACER("CGlxSingleLineMetaPane::VisualLayoutUpdated()"); // Update the Screen positions only if the layout has changed. // For performace improvement TRect presentScreenSize = GetScreenSize(); @@ -375,9 +372,9 @@ // DetermineOrientation // --------------------------------------------------------------------------- // -TInt CGlxSinleLineMetaPane::DetermineOrientation(TRect aRect) +TInt CGlxSingleLineMetaPane::DetermineOrientation(TRect aRect) { - TRACER("CGlxSinleLineMetaPane::DetermineOrientation()"); + TRACER("CGlxSingleLineMetaPane::DetermineOrientation()"); TInt orientationValue = (aRect.Width()>aRect.Height()?EMetaOrinentaionLandscape: EMetaOrinentaionPortrait); return orientationValue; @@ -387,9 +384,9 @@ // GetScreenSize // --------------------------------------------------------------------------- // -TRect CGlxSinleLineMetaPane::GetScreenSize() +TRect CGlxSingleLineMetaPane::GetScreenSize() { - TRACER("CGlxSinleLineMetaPane::GetScreenSize()"); + TRACER("CGlxSingleLineMetaPane::GetScreenSize()"); return AlfUtil::ScreenSize(); } // --------------------------------------------------------------------------- @@ -398,9 +395,9 @@ // @bug :tapadar :major :This function needs to be worked upon across corrolla and ivalo once LAF present // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::UpdatePosition() +void CGlxSingleLineMetaPane::UpdatePosition() { - TRACER("CGlxSinleLineMetaPane::UpdatePosition()"); + TRACER("CGlxSingleLineMetaPane::UpdatePosition()"); TRect rect = GetScreenSize(); TInt screenWidth = rect.Width(); TInt screenHeight = rect.Height(); @@ -410,8 +407,8 @@ iMainVisual->ClearFlag( EAlfVisualFlagLayoutUpdateNotification); if (EMetaOrinentaionPortrait == orientation) { - GLX_LOG_INFO("CGlxSinleLineMetaPane::UpdatePosition - EMetaOrinentaionPortrait Orientation"); - CAknToolbar* toolbar = GetAppUi()->CurrentFixedToolbar(); + GLX_LOG_INFO("CGlxSingleLineMetaPane::UpdatePosition - EMetaOrinentaionPortrait Orientation"); + CAknToolbar* toolbar = iAvkonAppUi->CurrentFixedToolbar(); if (toolbar->IsToolbarDisabled()) { @@ -428,14 +425,14 @@ } else if(EMetaOrinentaionLandscape == orientation) { - GLX_LOG_INFO("CGlxSinleLineMetaPane::UpdatePosition - EMetaOrinentaionLandscape Orientation"); + GLX_LOG_INFO("CGlxSingleLineMetaPane::UpdatePosition - EMetaOrinentaionLandscape Orientation"); //set the control size iMainVisual->SetSize(TSize(screenWidth-100,45)); iMainVisual->SetPos(TAlfRealPoint(3,screenHeight-45)); } else { - GLX_LOG_INFO("CGlxSinleLineMetaPane::UpdatePosition - Wrong Orientation"); + GLX_LOG_INFO("CGlxSingleLineMetaPane::UpdatePosition - Wrong Orientation"); } iMainVisual->SetFlag ( EAlfVisualFlagLayoutUpdateNotification); } @@ -444,10 +441,10 @@ // UpdateMetaPaneL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::UpdateMetaPaneL(TInt aFocusIndex, MGlxMediaList* aList, +void CGlxSingleLineMetaPane::UpdateMetaPaneL(TInt aFocusIndex, MGlxMediaList* aList, TBool aUpdateFavIcon) { - TRACER("CGlxSinleLineMetaPane::UpdateMetaPaneL()"); + TRACER("CGlxSingleLineMetaPane::UpdateMetaPaneL()"); const TGlxMedia& item = aList->Item(aFocusIndex); const CGlxMedia* media = item.Properties(); @@ -497,9 +494,9 @@ // HandleUpdateIconL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleUpdateIconL(TBool aModify) +void CGlxSingleLineMetaPane::HandleUpdateIconL(TBool aModify) { - TRACER("CGlxSinleLineMetaPane::HandleUpdateIconL()"); + TRACER("CGlxSingleLineMetaPane::HandleUpdateIconL()"); // Check if the item is added to favourites already if (aModify) { @@ -517,10 +514,10 @@ // HandleItemAddedL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleItemAddedL( TInt /*aStartIndex*/, TInt /*aEndIndex*/, +void CGlxSingleLineMetaPane::HandleItemAddedL( TInt /*aStartIndex*/, TInt /*aEndIndex*/, MGlxMediaList* /*aList*/ ) { - TRACER("CGlxSinleLineMetaPane::HandleItemAddedL()"); + TRACER("CGlxSingleLineMetaPane::HandleItemAddedL()"); // No Implementation } @@ -528,10 +525,10 @@ // HandleItemRemovedL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleItemRemovedL( TInt/* aStartIndex*/, +void CGlxSingleLineMetaPane::HandleItemRemovedL( TInt/* aStartIndex*/, TInt/* aEndIndex*/, MGlxMediaList*/* aList */) { - TRACER("CGlxSinleLineMetaPane::HandleItemRemovedL()"); + TRACER("CGlxSingleLineMetaPane::HandleItemRemovedL()"); // No Implementation } @@ -539,13 +536,13 @@ // HandleAttributesAvailableL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleAttributesAvailableL( TInt aItemIndex, +void CGlxSingleLineMetaPane::HandleAttributesAvailableL( TInt aItemIndex, const RArray& /*aAttributes*/, MGlxMediaList* aList ) { - TRACER("CGlxSinleLineMetaPane::HandleAttributesAvailableL()"); + TRACER("CGlxSingleLineMetaPane::HandleAttributesAvailableL()"); TInt focusIndex = iMediaList.FocusIndex(); - GLX_LOG_INFO2("CGlxSinleLineMetaPane::HandleAttributesAvailableL FocusIndex is : %d and ItemIdex is : %d", + GLX_LOG_INFO2("CGlxSingleLineMetaPane::HandleAttributesAvailableL FocusIndex is : %d and ItemIdex is : %d", focusIndex, aItemIndex); // Update the metapane only for the focus Index, do not make unnecessary calls. @@ -561,10 +558,10 @@ // HandleFocusChangedL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleFocusChangedL( NGlxListDefs::TFocusChangeType /*aType*/, +void CGlxSingleLineMetaPane::HandleFocusChangedL( NGlxListDefs::TFocusChangeType /*aType*/, TInt aNewIndex, TInt /*aOldIndex*/, MGlxMediaList* aList ) { - TRACER("CGlxSinleLineMetaPane::HandleFocusChangedL()"); + TRACER("CGlxSingleLineMetaPane::HandleFocusChangedL()"); // Check the count here to ensure the medialist is present // this case may be occurred when the last item of the Fs view is deleted and it // wants to go back to the grid view @@ -585,10 +582,10 @@ // HandleItemSelectedL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleItemSelectedL(TInt/* aIndex*/, TBool/* aSelected*/, +void CGlxSingleLineMetaPane::HandleItemSelectedL(TInt/* aIndex*/, TBool/* aSelected*/, MGlxMediaList* /*aList*/ ) { - TRACER("CGlxSinleLineMetaPane::HandleItemSelectedL()"); + TRACER("CGlxSingleLineMetaPane::HandleItemSelectedL()"); // No Implementation } @@ -596,10 +593,10 @@ // HandleMessageL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleMessageL( const CMPXMessage& /*aMessage*/, +void CGlxSingleLineMetaPane::HandleMessageL( const CMPXMessage& /*aMessage*/, MGlxMediaList*/* aList */) { - TRACER("CGlxSinleLineMetaPane::HandleMessageL()"); + TRACER("CGlxSingleLineMetaPane::HandleMessageL()"); // No Implementation } @@ -607,9 +604,9 @@ // HandleError // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleError( TInt /*aError*/ ) +void CGlxSingleLineMetaPane::HandleError( TInt /*aError*/ ) { - TRACER("CGlxSinleLineMetaPane::HandleError()"); + TRACER("CGlxSingleLineMetaPane::HandleError()"); // No Implementation } @@ -617,10 +614,10 @@ // HandleCommandCompleteL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleCommandCompleteL( CMPXCommand* /*aCommandResult*/, +void CGlxSingleLineMetaPane::HandleCommandCompleteL( CMPXCommand* /*aCommandResult*/, TInt /*aError*/, MGlxMediaList*/* aList */) { - TRACER("CGlxSinleLineMetaPane::HandleCommandCompleteL()"); + TRACER("CGlxSingleLineMetaPane::HandleCommandCompleteL()"); // No Implementation } @@ -628,9 +625,9 @@ // HandleMediaL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleMediaL( TInt /*aListIndex*/, MGlxMediaList*/* aList */) +void CGlxSingleLineMetaPane::HandleMediaL( TInt /*aListIndex*/, MGlxMediaList*/* aList */) { - TRACER("CGlxSinleLineMetaPane::HandleMediaL()"); + TRACER("CGlxSingleLineMetaPane::HandleMediaL()"); // No Implementation } @@ -638,10 +635,10 @@ // HandleItemModifiedL // --------------------------------------------------------------------------- // -void CGlxSinleLineMetaPane::HandleItemModifiedL( const RArray& /*aItemIndexes*/, +void CGlxSingleLineMetaPane::HandleItemModifiedL( const RArray& /*aItemIndexes*/, MGlxMediaList*/* aList */) { - TRACER("CGlxSinleLineMetaPane::HandleItemModifiedL()"); + TRACER("CGlxSingleLineMetaPane::HandleItemModifiedL()"); // No Implementation } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/fullscreenview/src/glxslmpfavmlobserver.cpp --- a/photosgallery/viewframework/views/fullscreenview/src/glxslmpfavmlobserver.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/fullscreenview/src/glxslmpfavmlobserver.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -28,7 +28,7 @@ // NewL() // --------------------------------------------------------------------------- // -CGlxSLMPFavMLObserver* CGlxSLMPFavMLObserver::NewL( CGlxSinleLineMetaPane& aSingleLineMetapane, +CGlxSLMPFavMLObserver* CGlxSLMPFavMLObserver::NewL( CGlxSingleLineMetaPane& aSingleLineMetapane, TInt aFocusIndex, MGlxMediaList* aList) { TRACER("CGlxSLMPFavMLObserver::NewL()"); @@ -43,7 +43,7 @@ // CGlxSLMPFavMLObserver() // --------------------------------------------------------------------------- // -CGlxSLMPFavMLObserver::CGlxSLMPFavMLObserver(CGlxSinleLineMetaPane& aSingleLineMetaPane) +CGlxSLMPFavMLObserver::CGlxSLMPFavMLObserver(CGlxSingleLineMetaPane& aSingleLineMetaPane) : iSingleLineMetaPane( aSingleLineMetaPane) { TRACER("CGlxSLMPFavMLObserver::CGlxSLMPFavMLObserver()"); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/gridview/inc/glxgridviewcontainer.h --- a/photosgallery/viewframework/views/gridview/inc/glxgridviewcontainer.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/gridview/inc/glxgridviewcontainer.h Mon Jan 18 20:19:20 2010 +0200 @@ -123,18 +123,6 @@ // Create Grid once again after returning from FS as No calls for handleItem added. void CreateGridAfterFSDeactivatedL(); /** - * Set FS thumbnail context with FromFocusOutwardIterator - * for FS thumbnails - */ - void FetchFSThumbnailL(); - /** - * Set the Time stamp for Scrollbar Time Strip - */ - void SetDownloadLinksTimeL(); - /** - * Removes the thumbnail contexts for FS - */ - void RemoveFSThumbnailContext(); /** * Handle Multiple marking */ @@ -178,19 +166,13 @@ // Thumbnail context CGlxThumbnailContext* iThumbnailContext; - // FS thumbnail context - CGlxThumbnailContext* iFsThumbnailContext; // Iterators for Grid and FS TGlxFromManualIndexBlockyIterator iBlockyIterator; - TGlxFromFocusOutwardIterator iFsFromFocusOutwardIterator; // Grid Icon size from FS view TSize iGridIconSize; - // Flag to indicate the downloads plugin - TBool iDownloadsPlugin; - // Bool to check backward navigation TBool iBackwardActivation; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/gridview/inc/glxgridviewmlobserver.h --- a/photosgallery/viewframework/views/gridview/inc/glxgridviewmlobserver.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/gridview/inc/glxgridviewmlobserver.h Mon Jan 18 20:19:20 2010 +0200 @@ -117,9 +117,6 @@ //No of visible items in a page/view TInt iItemsPerPage; - // Flag to indicate the downloads plugin - TBool iDownloadsPlugin; - // Modified Indexes array to refresh the screen RArray iModifiedIndexes; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp --- a/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/gridview/src/glxgridviewcontainer.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -19,7 +19,6 @@ #include #include #include -#include // Feature Manager // Ganes Headers #include // Gul Icons @@ -28,7 +27,6 @@ // Framework #include -#include #include // For EGlxCmdFullScreenBack #include // All item collection plugin id @@ -48,7 +46,6 @@ const TInt KNoOfPages(3); const TInt KBufferTresholdSize(3); // in rows -const TInt KMaxNoOfSeamlessLinks(2); // ======== MEMBER FUNCTIONS ======== @@ -106,10 +103,6 @@ iMediaList->RemoveContext(iThumbnailContext); delete iThumbnailContext; } - if(iUiUtility->IsPenSupported()) - { - RemoveFSThumbnailContext(); - } if(iNavigationalstate) { iNavigationalstate->Close(); @@ -289,11 +282,6 @@ } } } - - if (iDownloadsPlugin && aRequestStart == KMaxNoOfSeamlessLinks) - { - SetDownloadLinksTimeL(); - } } // ---------------------------------------------------------------------------- @@ -384,35 +372,19 @@ TInt mediaCount = iMediaList->Count(); if (!iHgGrid) { + TSize tnSize = CHgGrid::PreferredImageSize(); + GLX_DEBUG3("GlxGrid: CHgGrid::PreferredImageSize() w(%d) h(%d)", + tnSize.iWidth, tnSize.iHeight); TFileName resFile(KDC_APP_BITMAP_DIR); resFile.Append(KGlxIconsFilename); CFbsBitmap* bitmap = AknIconUtils::CreateIconL(resFile, EMbmGlxiconsQgn_prop_image_notcreated); - AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize()); + AknIconUtils::SetSize(bitmap, tnSize); TRect rect = iEikonEnv->EikAppUi()->ClientRect(); // Create Hg grid object iHgGrid = CHgGrid::NewL (rect,mediaCount,CGulIcon::NewL(bitmap)); } - if (mediaCount) - { - // Mediacount would give the no of static items present and - // coz medialist doesnt have all the item at - // this stage, it will focus index for only download icons. - // For other grid views, we have to set focus elsewhere - for (TInt i=0; iItem(i); - TIconInfo icon; - if (item.GetIconInfo(icon) ) - { - CFbsBitmap* bitmap = AknIconUtils::CreateIconL(icon.bmpfile, icon.bitmapId); - AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize()); - iHgGrid->ItemL(i).SetIcon(CGulIcon::NewL(bitmap)); - } - } - // Setting the initial focus - iHgGrid->SetSelectedIndex(iMediaList->FocusIndex()); - } + // Setting to MopParent to update background skin iHgGrid->SetMopParent(this); // Setting Selction observer for getting callback on key event change @@ -448,11 +420,6 @@ CreateGridMediaListObserverL(); // Create Grid once again after returning from FS as No calls for handleItem added. CreateGridAfterFSDeactivatedL(); - if (iUiUtility->IsPenSupported()) - { - // Fetch fullscreen thumbnails of the focused item with low priority - FetchFSThumbnailL(); - } } // --------------------------------------------------------------------------- @@ -468,14 +435,6 @@ iThumbnailContext = CGlxThumbnailContext::NewL( &iBlockyIterator ); // set the thumbnail context iThumbnailContext->SetDefaultSpec( iGridIconSize.iWidth,iGridIconSize.iHeight ); iMediaList->AddContextL(iThumbnailContext, KGlxFetchContextPriorityNormal ); - - iDownloadsPlugin = EFalse; - CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathParent ); - if (path->Id() == KGlxCollectionPluginDownloadsImplementationUid) - { - iDownloadsPlugin = ETrue; - } - CleanupStack::PopAndDestroy(path); } // --------------------------------------------------------------------------- @@ -525,8 +484,6 @@ SetIconsL(index); } - SetDownloadLinksTimeL(); - iHgGrid->SetSelectedIndex(focusIndex); iHgGrid->RefreshScreen(focusIndex); } @@ -565,14 +522,6 @@ iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap)); GLX_LOG_INFO1("### CGlxGridViewContainer::SetIconsL speedTn-Index is %d",index); } - else if (item.GetIconInfo(icon)) - { - GLX_LOG_INFO1("CGlxGridViewContainer::SetIconsL - icon(%d)", index); - CFbsBitmap* bitmap = AknIconUtils::CreateIconL(icon.bmpfile, icon.bitmapId); - AknIconUtils::SetSize(bitmap, setSize); - iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap)); - GLX_LOG_INFO1("### CGlxGridViewContainer::SetIconsL GetIconInfo-Index is %d",index); - } else if ( KErrNone != tnError && KErrNotSupported != tnError && KErrCANoRights !=tnError) { GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)", @@ -660,76 +609,7 @@ } } -// --------------------------------------------------------------------------- -// FetchFSThumbnailL -// --------------------------------------------------------------------------- -// -void CGlxGridViewContainer::FetchFSThumbnailL() - { - TRACER("CGlxGridViewContainer::FetchFSThumbnailL()"); - TSize dispSize = iUiUtility->DisplaySize(); - iFsFromFocusOutwardIterator.SetRangeOffsets(0,0); - - iFsThumbnailContext = CGlxThumbnailContext::NewL(&iFsFromFocusOutwardIterator); - - if (dispSize.iHeight > dispSize.iWidth) - { - iFsThumbnailContext->SetDefaultSpec(dispSize.iHeight, dispSize.iWidth); - } - else - { - iFsThumbnailContext->SetDefaultSpec(dispSize.iWidth, dispSize.iHeight); - } - iMediaList->AddContextL(iFsThumbnailContext, KGlxFetchContextPriorityLow); - } - -// --------------------------------------------------------------------------- -// SetDownloadLinksTimeL -// --------------------------------------------------------------------------- -// -void CGlxGridViewContainer::SetDownloadLinksTimeL() - { - TRACER("CGlxGridViewContainer::SetDownloadLinksTimeL()"); - // Sets up TLS, must be done before FeatureManager is used. - FeatureManager::InitializeLibL(); - TInt mediaCount = iMediaList->Count(); - if (FeatureManager::FeatureSupported(KFeatureIdSeamlessLinks)) - { - if (iDownloadsPlugin && mediaCount > iHgGrid->ItemsOnScreen() ) - { - TTime time(0); - if (iMediaList->Item(KMaxNoOfSeamlessLinks).GetDate(time)) - { - if (iMediaList->Item(0).IsStatic()) - { - iHgGrid->ItemL(0).SetTime(time); // Image Downloads link Icon - } - if (iMediaList->Item(1).IsStatic()) - { - iHgGrid->ItemL(1).SetTime(time); // Video Downloads link Icon - } - } - } - } - // Frees the TLS. Must be done after FeatureManager is used. - FeatureManager::UnInitializeLib(); - } - -// --------------------------------------------------------------------------- -// RemoveFSThumbnailContext -// --------------------------------------------------------------------------- -// -void CGlxGridViewContainer::RemoveFSThumbnailContext() - { - TRACER("CGlxGridViewContainer::RemoveFSThumbnailContext()"); - if (iMediaList) - { - iMediaList->RemoveContext(iFsThumbnailContext); - delete iFsThumbnailContext; - iFsThumbnailContext = NULL; - } - } - + // ----------------------------------------------------------------------------- // MopSupplyObject // To handle Skin support diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/gridview/src/glxgridviewmlobserver.cpp --- a/photosgallery/viewframework/views/gridview/src/glxgridviewmlobserver.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/gridview/src/glxgridviewmlobserver.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -49,7 +49,7 @@ #include "glxgridviewmlobserver.h" -const TInt KRecreateGridSize(100); //minimum no of items added to trigger recreate grid +const TInt KRecreateGridSize(5); //minimum no of items added to trigger recreate grid // ======== MEMBER FUNCTIONS ======== // --------------------------------------------------------------------------- @@ -96,15 +96,6 @@ iItemsPerPage = uiUtility->VisibleItemsInPageGranularityL(); uiUtility->Close() ; - iDownloadsPlugin = EFalse; - - CMPXCollectionPath* path = iMediaList.PathLC( NGlxListDefs::EPathParent ); - if (path->Id() == KGlxCollectionPluginDownloadsImplementationUid) - { - iDownloadsPlugin = ETrue; - } - CleanupStack::PopAndDestroy(path); - iQualityTnAttrib = TMPXAttribute (KGlxMediaIdThumbnail, GlxFullThumbnailAttributeId( ETrue, iGridIconSize.iWidth, iGridIconSize.iHeight ) ); @@ -140,28 +131,27 @@ GLX_DEBUG3("CGlxGridViewMLObserver::HandleItemAddedL() aStartIndex(%d)," " aEndIndex(%d)", aStartIndex, aEndIndex); - if (iHgGrid) + if (!iHgGrid) { - if ((aEndIndex - aStartIndex) >= KRecreateGridSize) + return; + } + + if ((aEndIndex - aStartIndex) > KRecreateGridSize) + { + iHgGrid->ResizeL(aList->Count()); + } + else + { + for (TInt i = aStartIndex; i <= aEndIndex; i++) { - iHgGrid->ResizeL(aList->Count()); - } - else - { - for (TInt i = aStartIndex; i<= aEndIndex; i++) - { - iHgGrid->InsertItem(CHgItem::NewL(), i); - } + iHgGrid->InsertItem(CHgItem::NewL(), i); } } + // Setting the initial focus for all grid views except downloads, // for downloads it is already set. - TInt focusIndex = aList->FocusIndex(); + TInt focusIndex = aList->FocusIndex(); iHgGrid->SetSelectedIndex(focusIndex); - - // if the Medialist has any item, set the First index context to Hg Context Utility -// TGlxMedia item = aList->Item( focusIndex ); -// iContextUtility->PublishPhotoContextL(item.Uri()); } // ---------------------------------------------------------------------------- @@ -256,14 +246,6 @@ GLX_LOG_INFO1("### CGlxGridViewMLObserver::HandleAttributesAvailableL" " speedTn-Index is %d",aItemIndex); } - else if (item.GetIconInfo(icon)) - { - CFbsBitmap* bitmap = AknIconUtils::CreateIconL(icon.bmpfile, icon.bitmapId); - AknIconUtils::SetSize(bitmap, setSize ); - iHgGrid->ItemL(aItemIndex).SetIcon(CGulIcon::NewL(bitmap)); - GLX_LOG_INFO1("### CGlxGridViewMLObserver::HandleAttributesAvailableL " - "GetIconInfo-Index is %d",aItemIndex); - } else if ( KErrNone != tnError && KErrNotSupported != tnError && KErrArgument != tnError ) { @@ -409,7 +391,6 @@ CleanupStack::PopAndDestroy(emptyText); GLX_DEBUG2("GridMLObserver::HandlePopulatedL() iMediaList.Count()=%d", iMediaList.Count()); - if (iMediaList.Count() <= 0) { @@ -475,6 +456,15 @@ " RefreshScreen - firstIndex(%d)", firstIndex); iHgGrid->RefreshScreen(firstIndex); } + else if (aItemIndex > firstIndex && aItemIndex <= lastOnScreen) + { + if ( HasRelevantThumbnail(lastOnScreen) ) + { + GLX_DEBUG2("GridMLObserver::HandleAttributesAvailableL()" + " RefreshScreen - aItemIndex(%d)", aItemIndex); + iHgGrid->RefreshScreen(aItemIndex); + } + } } else if (aItemIndex > firstIndex && aItemIndex <= lastOnScreen) { @@ -582,28 +572,6 @@ { iHgGrid->ItemL(aItemIndex).SetTime(time); } - - // Sets up TLS, must be done before FeatureManager is used. - FeatureManager::InitializeLibL(); - - if (FeatureManager::FeatureSupported(KFeatureIdSeamlessLinks)) - { - if (iDownloadsPlugin && mediaCount > iHgGrid->ItemsOnScreen() - && aItemIndex == 2) - { - if (iMediaList.Item(0).IsStatic()) - { - iHgGrid->ItemL(0).SetTime(time); // Image Downloads link Icon - } - if (iMediaList.Item(1).IsStatic()) - { - iHgGrid->ItemL(1).SetTime(time); // Video Downloads link Icon - } - } - } - - // Frees the TLS. Must be done after FeatureManager is used. - FeatureManager::UnInitializeLib(); } if (aAttributes.Find(KMPXMediaGeneralCategory, match) != KErrNotFound) diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/listview/inc/glxlistviewimp.h --- a/photosgallery/viewframework/views/listview/inc/glxlistviewimp.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/listview/inc/glxlistviewimp.h Mon Jan 18 20:19:20 2010 +0200 @@ -27,7 +27,6 @@ #include "glxlistview.h" #include "glxpreviewthumbnailbinding.h" -#include // Fetch context to retrieve thumbnails #include // Interface for going through items in #include @@ -149,6 +148,7 @@ protected: void Request(TInt aRequestStart, TInt aRequestEnd, THgScrollDirection aDirection); + void RequestL(TInt aRequestStart, TInt aRequestEnd); void Release(TInt aReleaseStart, TInt aReleaseEnd); protected: @@ -190,9 +190,6 @@ // Fetch context for retrieving subtitle CGlxDefaultAttributeContext* iSubtitleAttributeContext; - // Thumbnail context - CGlxThumbnailContext* iThumbnailContext; //Own - // for thumbnail context TGlxSequentialIterator iThumbnailIterator; @@ -207,6 +204,8 @@ TBool iPopulateListTNs; + TBool iBackwardNavigation; + TInt iStartIndex; TInt iLastFocusedIndex; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/listview/inc/glxpreviewthumbnailbinding.h --- a/photosgallery/viewframework/views/listview/inc/glxpreviewthumbnailbinding.h Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/listview/inc/glxpreviewthumbnailbinding.h Mon Jan 18 20:19:20 2010 +0200 @@ -67,11 +67,6 @@ */ ~CGlxPreviewThumbnailBinding(); - /** - * HasFirstThumbnail - */ - TBool HasFirstThumbnail( const RArray< TMPXAttribute >& aAttributes ); - private: /** @@ -85,8 +80,10 @@ void ConstructL(); public: - void HandleItemChangedL(const CMPXCollectionPath& aPath, TBool aPopulateListTNs); + void HandleItemChangedL(const CMPXCollectionPath& aPath, + TBool aPopulateListTNs, TBool aBackwardNavigation); void StartTimer(TBool aPopulateListTNs); + void StopTimer(); // From MGlxMediaListObserver void HandleItemAddedL( TInt aStartIndex, TInt aEndIndex, MGlxMediaList* aList ); @@ -102,6 +99,7 @@ MGlxMediaList* aList ); void HandleMediaL( TInt aListIndex, MGlxMediaList* aList ); void HandleItemModifiedL( const RArray& aItemIndexes, MGlxMediaList* aList ); + void HandlePopulatedL( MGlxMediaList* aList ); private: /** @@ -123,8 +121,8 @@ //Medialist that holds the thumbnail information MGlxMediaList* iMediaList; - // Thumbnail context - CGlxThumbnailContext* iThumbnailContext; + // Thumbnail Attrib context + CGlxAttributeContext* iThumbnailContext; // for thumbnail context TGlxSequentialIterator iThumbnailIterator; @@ -149,6 +147,10 @@ TInt iTrialCount; TInt iTrial; + + TBool iBackwardNavigation; + + CMPXFilter* iPreviewFilter; }; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/listview/src/glxlistviewimp.cpp --- a/photosgallery/viewframework/views/listview/src/glxlistviewimp.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/listview/src/glxlistviewimp.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -42,8 +42,12 @@ #include #include //StringLoader #include +#include -const TInt KListDataWindowSize(10); +const TInt KListDataWindowSize(25); +const TInt KNoOfPages(2); +const TInt KBufferTresholdSize(6); +const TInt KRecreateListSize(5); // ======== MEMBER FUNCTIONS ======== @@ -112,6 +116,8 @@ //Register the view to recieve toolbar events. ViewBase handles the events SetToolbarObserver(this); + + iBackwardNavigation = EFalse; } // --------------------------------------------------------------------------- @@ -198,6 +204,11 @@ iBgContext = CAknsBasicBackgroundControlContext::NewL( KAknsIIDQsnBgScreen,apRect,ETrue); + if(iUiUtility->ViewNavigationDirection() == EGlxNavigationBackwards ) + { + iBackwardNavigation = ETrue; + } + iPreviewTNBinding = CGlxPreviewThumbnailBinding::NewL(*this); CreateListL(); if (iPreviewTNBinding) @@ -205,7 +216,8 @@ iPopulateListTNs = ETrue; CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathFocusOrSelection ); - iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs); + iPreviewTNBinding->HandleItemChangedL(*path, + iPopulateListTNs, iBackwardNavigation); CleanupStack::PopAndDestroy( path ); } @@ -328,12 +340,65 @@ return CAknView::MopSupplyObject(aId); } -void CGlxListViewImp::Request(TInt /*aRequestStart*/, TInt /*aRequestEnd*/, +void CGlxListViewImp::Request(TInt aRequestStart, TInt aRequestEnd, THgScrollDirection /*aDirection*/) { TRACER("CGlxListViewImp::Request"); + //Doing this to avoid codescanner warning. + TRAP_IGNORE(RequestL(aRequestStart, aRequestEnd)); } +// --------------------------------------------------------------------------- +// RequestL +// --------------------------------------------------------------------------- +// +void CGlxListViewImp::RequestL(TInt aRequestStart, TInt aRequestEnd) + { + TRACER("CGlxListViewImp::RequestL()"); + TInt mediaCount = iMediaList->Count(); + GLX_LOG_INFO1("CGlxListViewImp::RequestL - mediaCount(%d)", mediaCount); + if(mediaCount<=0) + { + return; + } + + TInt visIndex = iList->FirstIndexOnScreen(); + aRequestStart = (aRequestStart < 0 ? 0 : aRequestStart) ; + aRequestEnd = (aRequestEnd >= mediaCount ? (mediaCount-1) : aRequestEnd); + GLX_LOG_INFO3("CGlxListViewImp::RequestL - aRequestStart(%d), " + "aRequestEnd(%d), visIndex(%d)", aRequestStart, aRequestEnd, visIndex); + + if (visIndex >= mediaCount ) + { + visIndex = mediaCount-1; + } + if (visIndex < 0 || mediaCount <= 0) + { + visIndex = 0; + } + + for (TInt i=aRequestStart; i<= aRequestEnd; i++) + { + const TGlxMedia& item = iMediaList->Item(i); + iList->ItemL(i).SetTitleL(item.Title()); + iList->ItemL(i).SetTextL(item.SubTitle()); + } + + iList->RefreshScreen(visIndex); + + if ( visIndex != iLastFocusedIndex && !iPopulateListTNs) + { + GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()" + " iPopulateListTNs(%d)", iPopulateListTNs); + GLX_LOG_INFO1("CGlxListViewImp::RequestL - SetFocusL()" + " visIndex(%d)", visIndex); + iPopulateListTNs = ETrue; + iStartIndex = KErrNotFound; + iMediaList->SetFocusL(NGlxListDefs::EAbsolute, visIndex); + } + } + + void CGlxListViewImp::Release(TInt /*aBufferStart*/, TInt /*aBufferEnd*/) { TRACER("CGlxListViewImp::Release"); @@ -371,7 +436,9 @@ /*aMask*/, TInt /*aIndex*/) { TRACER("CGlxListViewImp::PreviewTNReadyL"); - + + iPreviewTNBinding->StopTimer(); + TInt focusIndex = iMediaList->FocusIndex(); TInt mediaCount = iMediaList->Count(); @@ -448,7 +515,11 @@ */ if(count==1) { - iPreviewTNBinding->StartTimer( iPopulateListTNs ); + CMPXCollectionPath* path = iMediaList->PathLC( + NGlxListDefs::EPathFocusOrSelection ); + iPreviewTNBinding->HandleItemChangedL(*path, + iPopulateListTNs, iBackwardNavigation); + CleanupStack::PopAndDestroy( path ); } } } @@ -486,14 +557,18 @@ iList->SetSelectionObserver(*this); + // Enable Buffer support + iList->EnableScrollBufferL(*this, (KNoOfPages * KBufferTresholdSize), + KBufferTresholdSize); + if (iUiUtility->ViewNavigationDirection() == EGlxNavigationBackwards) { GLX_DEBUG1("CGlxListViewImp::CreateListL() - SetEmptyTextL()"); //set the text to be shown if the list is empty. HBufC* emptyText = StringLoader::LoadLC(R_LIST_EMPTY_VIEW_TEXT); iList->SetEmptyTextL(*emptyText); - CleanupStack::PopAndDestroy(emptyText); - iLastFocusedIndex = iMediaList->FocusIndex(); + CleanupStack::PopAndDestroy(emptyText); + iLastFocusedIndex = iList->FirstIndexOnScreen(); } //Fix for ESLM-7SAHPT::Clear Flag to Disable QWERTY search input in list view @@ -522,30 +597,36 @@ // ---------------------------------------------------------------------------- // void CGlxListViewImp::HandleItemAddedL( TInt aStartIndex, TInt aEndIndex, - MGlxMediaList* /*aList*/ ) - { - TRACER("CGlxListViewImp::HandleItemAddedL"); - - if (iList) - { - for (TInt i = aStartIndex; i<= aEndIndex; i++) - { - const TGlxMedia& item = iMediaList->Item(i); - iList->InsertItem(CHgItem::NewL(CHgItem::EHgItemFlagsNone, - NULL, item.Title(), item.SubTitle()), i); - } - - if(aStartIndex == aEndIndex ) - { - iLastFocusedIndex = aStartIndex; - iPopulateListTNs = EFalse; - iMediaList->SetFocusL(NGlxListDefs::EAbsolute, iLastFocusedIndex); - } + MGlxMediaList* aList ) + { + TRACER("CGlxListViewImp::HandleItemAddedL"); + if (iList) + { + if ((aEndIndex - aStartIndex) >= KRecreateListSize) + { + iList->ResizeL(aList->Count()); + } + else + { + for (TInt i = aStartIndex; i<= aEndIndex; i++) + { + const TGlxMedia& item = iMediaList->Item(i); + iList->InsertItem(CHgItem::NewL(CHgItem::EHgItemFlagsNone, + NULL, item.Title(), item.SubTitle()), i); + } - iList->SetSelectedIndex(iLastFocusedIndex); - iList->RefreshScreen(iLastFocusedIndex); - } - } + if(aStartIndex == aEndIndex ) + { + iLastFocusedIndex = aStartIndex; + iPopulateListTNs = EFalse; + iMediaList->SetFocusL(NGlxListDefs::EAbsolute, iLastFocusedIndex); + } + + iList->SetSelectedIndex(iLastFocusedIndex); + iList->RefreshScreen(iLastFocusedIndex); + } + } + } // ---------------------------------------------------------------------------- // HandleItemRemoved @@ -605,7 +686,8 @@ iStartIndex = KErrNotFound; CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathFocusOrSelection ); - iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs); + iPreviewTNBinding->HandleItemChangedL(*path, + iPopulateListTNs, iBackwardNavigation); CleanupStack::PopAndDestroy( path ); } } @@ -625,7 +707,8 @@ { CMPXCollectionPath* path = iMediaList->PathLC( NGlxListDefs::EPathFocusOrSelection ); - iPreviewTNBinding->HandleItemChangedL(*path, iPopulateListTNs); + iPreviewTNBinding->HandleItemChangedL(*path, + iPopulateListTNs, iBackwardNavigation); CleanupStack::PopAndDestroy( path ); } } diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/listview/src/glxpreviewthumbnailbinding.cpp --- a/photosgallery/viewframework/views/listview/src/glxpreviewthumbnailbinding.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/listview/src/glxpreviewthumbnailbinding.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -31,9 +31,9 @@ const TInt KInitialThumbnailsTimeDelay(100000); const TInt KWaitCount(5); -const TInt KThumbnailStartTimeDelay(2000000); -const TInt KThumbnailIntervalTimeDelay(2000000); -const TInt KPreviewThumbnailFetchCount(18); +const TInt KThumbnailStartTimeDelay(250000); +const TInt KThumbnailIntervalTimeDelay(50000); +const TInt KPreviewThumbnailFetchCount(1); // ---------------------------------------------------------------------------- // NewL @@ -83,9 +83,19 @@ CGlxUiUtility* uiUtility = CGlxUiUtility::UtilityL(); iGridIconSize = uiUtility->GetGridIconSize(); uiUtility->Close() ; + + // Filter that filters out any GIF, corrupted images + iPreviewFilter = TGlxFilterFactory::CreatePreviewFilterL(); + iThumbnailIterator.SetRange(KPreviewThumbnailFetchCount); + iThumbnailContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); + TMPXAttribute tnAttr( KGlxMediaIdThumbnail, + GlxFullThumbnailAttributeId(ETrue, + iGridIconSize.iWidth,iGridIconSize.iHeight) ); + iThumbnailContext->SetDefaultSpec(iGridIconSize.iWidth, + iGridIconSize.iHeight); + iThumbnailContext->AddAttributeL(tnAttr); } - // ---------------------------------------------------------------------------- // Destructor // ---------------------------------------------------------------------------- @@ -98,11 +108,11 @@ { iMediaList->RemoveMediaListObserver( this ); iMediaList->RemoveContext(iThumbnailContext); - delete iThumbnailContext; iMediaList->Close(); iMediaList = NULL; } - + delete iThumbnailContext; + delete iPreviewFilter; // cancel any outstanding request of the timer if(iTimer->IsActive()) { @@ -139,13 +149,6 @@ CFbsBitmap* bitmap = new (ELeave) CFbsBitmap; bitmap->Duplicate( value->iBitmap->Handle()); iObserver.PreviewTNReadyL(bitmap, NULL,iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iPreviewItemCount.Count() || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } } } } @@ -177,12 +180,6 @@ CFbsBitmap* bitmap = new (ELeave) CFbsBitmap; bitmap->Duplicate( value->iBitmap->Handle()); iObserver.PreviewTNReadyL(bitmap, NULL,iProgressIndex); - iProgressIndex++; - if (iProgressIndex >= KPreviewThumbnailFetchCount || - iProgressIndex >= iMediaList->Count()) - { - iProgressIndex = 0; - } } else { @@ -223,11 +220,12 @@ // ---------------------------------------------------------------------------- // void CGlxPreviewThumbnailBinding::HandleItemChangedL(const CMPXCollectionPath& aPath, - TBool aPopulateListTNs ) + TBool aPopulateListTNs, TBool aBackwardNavigation) { TRACER("CGlxPreviewThumbnailBinding::HandleItemChangedL"); iTimerTicked = EFalse; iPopulateListTNs = aPopulateListTNs; + iBackwardNavigation = aBackwardNavigation; iProgressIndex = KErrNone; // remove and close old medialist @@ -238,29 +236,14 @@ iTrialCount = 0; iMediaList->RemoveMediaListObserver( this ); iMediaList->RemoveContext(iThumbnailContext); - delete iThumbnailContext; - iThumbnailContext = NULL; iMediaList->Close(); iMediaList = NULL; } - // Filter that filters out any GIF, corrupted images - CMPXFilter* filter = NULL; - filter = TGlxFilterFactory::CreatePreviewFilterL(); - CleanupStack::PushL( filter ); - // create new medialist with the required filter which filters out all DRM, GIFS and corrupt - // thumbnial - iMediaList = MGlxMediaList::InstanceL( aPath ,KGlxIdNone, filter); - iThumbnailContext = CGlxThumbnailContext::NewL( &iThumbnailIterator ); // set the thumbnail context - iThumbnailIterator.SetRange( KPreviewThumbnailFetchCount ); // request for fifiteen thumbnails - iThumbnailContext->SetDefaultSpec( iGridIconSize.iWidth,iGridIconSize.iHeight ); - iMediaList->AddContextL(iThumbnailContext ,KGlxFetchContextPriorityNormal ); + iMediaList = MGlxMediaList::InstanceL(aPath, KGlxIdNone, iPreviewFilter); + iMediaList->AddContextL(iThumbnailContext, KGlxFetchContextPriorityNormal); // adding the medialist to observ any changes or updates done iMediaList->AddMediaListObserverL(this); - CleanupStack::PopAndDestroy( filter ); - - //Start the timer - StartTimer(iPopulateListTNs); } // ---------------------------------------------------------------------------- @@ -282,32 +265,34 @@ if (iPopulateListTNs) { - iTimer->Start(KInitialThumbnailsTimeDelay, KInitialThumbnailsTimeDelay, - TCallBack(IsTimeL,this)); + if (iBackwardNavigation) + { + iTimer->Start(KThumbnailIntervalTimeDelay, KThumbnailIntervalTimeDelay/KWaitCount, + TCallBack(IsTimeL,this)); + } + else + { + iTimer->Start(KThumbnailStartTimeDelay, + KInitialThumbnailsTimeDelay, TCallBack(IsTimeL,this)); + } } - else + } + +// ---------------------------------------------------------------------------- +// StopTimer - Stop the timer +// ---------------------------------------------------------------------------- +// +void CGlxPreviewThumbnailBinding::StopTimer() + { + TRACER("CGlxPreviewThumbnailBinding::StopTimer"); + + if (iTimer && iTimer->IsActive()) { - iTimer->Start(KThumbnailStartTimeDelay, KThumbnailIntervalTimeDelay, - TCallBack(IsTimeL,this)); + iTimer->Cancel(); } } // ---------------------------------------------------------------------------- -// HasFirstThumbnail -// ---------------------------------------------------------------------------- -// - TBool CGlxPreviewThumbnailBinding::HasFirstThumbnail( const RArray< TMPXAttribute >& aAttributes ) - { - TRACER("CGlxPreviewThumbnailBinding::HasFirstThumbnail"); - TMPXAttribute thumbnailAttribute(KGlxMediaIdThumbnail, - GlxFullThumbnailAttributeId( ETrue, - iGridIconSize.iWidth, - iGridIconSize.iHeight) ); - - TIdentityRelation< TMPXAttribute > match ( &TMPXAttribute::Match ); - return ( KErrNotFound != aAttributes.Find( thumbnailAttribute, match ) ); - } -// ---------------------------------------------------------------------------- // HandleItemAddedL // ---------------------------------------------------------------------------- // @@ -428,3 +413,15 @@ { } + +// ---------------------------------------------------------------------------- +// HandlePopulatedL +// ---------------------------------------------------------------------------- +// +void CGlxPreviewThumbnailBinding::HandlePopulatedL( MGlxMediaList* /*aList*/ ) + { + TRACER("CGlxPreviewThumbnailBinding::HandlePopulatedL()"); + //Start the timer + StartTimer(iPopulateListTNs); + } + diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatadialog.cpp --- a/photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatadialog.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/metadatadialog/src/glximgvwrmetadatadialog.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -47,9 +47,6 @@ #include // For Panics #include "glxmetadatacommandhandler.h" -#define GetAppUi() (dynamic_cast(iEikonEnv->EikAppUi())) - - // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -110,7 +107,7 @@ { delete text; } - GetAppUi()->StatusPane()->MakeVisible(ETrue); + iAvkonAppUi->StatusPane()->MakeVisible(ETrue); } iUiUtility = CGlxUiUtility::UtilityL(); @@ -131,13 +128,12 @@ //To Disable the status pane if the dialog is launched from fullscreenview - if(!iStatusPaneAvailable) + if (!iStatusPaneAvailable && iAvkonAppUi) { - GetAppUi()->StatusPane()->MakeVisible(EFalse); + iAvkonAppUi->StatusPane()->MakeVisible(EFalse); } TRAP_IGNORE(SetPreviousTitleL()); - delete iPreviousTitle; // Restore the Toolbar as it was in the Calling application @@ -145,7 +141,10 @@ // If details launched from FullScreen View, while moving back, // all the UI components should be hidden. Hence processing this command here. - TRAP_IGNORE(GetAppUi()->ProcessCommandL(EGlxCmdResetView)); + if (iAvkonAppUi) + { + TRAP_IGNORE(iAvkonAppUi->ProcessCommandL(EGlxCmdResetView)); + } if( iUiUtility ) { @@ -164,11 +163,9 @@ void CGlxImgVwrMetadataDialog::SetDetailsDlgToolbarVisibility(TBool aVisible) { TRACER("CGlxImgVwrMetadataDialog::SetDetailsDlgToolbarVisibility"); - CAknAppUi* appUi = GetAppUi(); - __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer)); HandleToolbarResetting(aVisible); - CAknToolbar* currentPopupToolbar = appUi->CurrentPopupToolbar(); + CAknToolbar* currentPopupToolbar = iAvkonAppUi->CurrentPopupToolbar(); if(currentPopupToolbar) { currentPopupToolbar->SetToolbarVisibility(aVisible); @@ -235,7 +232,7 @@ controlInfo.iFlags = 0; if (aControlType == EMetaDataDialogListBox) { - iContainer = CGlxImgVwrMetadataContainer::NewL(GetAppUi()->ClientRect(),iUri); + iContainer = CGlxImgVwrMetadataContainer::NewL(iAvkonAppUi->ClientRect(),iUri); controlInfo.iControl = iContainer; // giving ownership } return controlInfo; // returns ownership of ItemList @@ -245,9 +242,10 @@ // CGlxImgVwrMetadataDialog::DynInitMenuPaneL // ----------------------------------------------------------------------------- // -void CGlxImgVwrMetadataDialog::DynInitMenuPaneL( TInt aMenuId, CEikMenuPane* aMenuPane ) +void CGlxImgVwrMetadataDialog::DynInitMenuPaneL(TInt /*aMenuId*/, + CEikMenuPane* /*aMenuPane*/) { - //no implementation + //no implementation } //----------------------------------------------------------------------------- @@ -389,10 +387,8 @@ void CGlxImgVwrMetadataDialog::HandleToolbarResetting(TBool aVisible) { TRACER("CGlxImgVwrMetadataDialog::HandleToolbarResetting"); - CAknAppUi* appUi = GetAppUi(); - __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer)); - CAknToolbar* popupToolbar = appUi->PopupToolbar(); + CAknToolbar* popupToolbar = iAvkonAppUi->PopupToolbar(); if(popupToolbar) { popupToolbar->SetToolbarVisibility( !aVisible ); @@ -402,7 +398,7 @@ popupToolbar->DrawNow(); } } - CAknToolbar* toolbar = appUi->CurrentFixedToolbar(); + CAknToolbar* toolbar = iAvkonAppUi->CurrentFixedToolbar(); if(toolbar) { toolbar->HideItemsAndDrawOnlyBackground(!aVisible); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/metadatadialog/src/glxmetadatadialog.cpp --- a/photosgallery/viewframework/views/metadatadialog/src/glxmetadatadialog.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/metadatadialog/src/glxmetadatadialog.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -46,9 +46,6 @@ #include // For Panics #include "glxmetadatacommandhandler.h" -#define GetAppUi() (dynamic_cast(iEikonEnv->EikAppUi())) - - // ============================ MEMBER FUNCTIONS =============================== // ----------------------------------------------------------------------------- @@ -107,7 +104,7 @@ { delete text; } - GetAppUi()->StatusPane()->MakeVisible(ETrue); + iAvkonAppUi->StatusPane()->MakeVisible(ETrue); } iUiUtility = CGlxUiUtility::UtilityL(); @@ -128,46 +125,48 @@ // CGlxMetadataDialog::~CGlxMetadataDialog() { - - TRACER("CGlxMetadataDialog::~CGlxMetadataDialog"); - - //To Disable the status pane if the dialog is launched from fullscreenview - if(!iStatusPaneAvailable) - { - GetAppUi()->StatusPane()->MakeVisible(EFalse); - } - - TRAP_IGNORE(SetPreviousTitleL()); - - delete iPreviousTitle; - delete iMetadataCmdHandler; + TRACER("CGlxMetadataDialog::~CGlxMetadataDialog"); + + //To Disable the status pane if the dialog is launched from fullscreenview + if (!iStatusPaneAvailable && iAvkonAppUi) + { + iAvkonAppUi->StatusPane()->MakeVisible(EFalse); + } + + TRAP_IGNORE(SetPreviousTitleL()); + + delete iPreviousTitle; + delete iMetadataCmdHandler; // Restore the Toolbar as it was in the Calling application SetDetailsDlgToolbarVisibility(ETrue); - - // If details launched from FullScreen View, while moving back, - // all the UI components should be hidden. Hence processing this command here. - TRAP_IGNORE(GetAppUi()->ProcessCommandL(EGlxCmdResetView)); - - if(iAddToTag) - { - delete iAddToTag; - } - - if(iAddToAlbum) - { - delete iAddToAlbum; - } - - if( iUiUtility ) - { - iUiUtility->Close(); - } - - if (iResourceOffset) - { - CCoeEnv::Static()->DeleteResourceFile(iResourceOffset); - } + + // If details launched from FullScreen View, while moving back, + // all the UI components should be hidden. Hence processing this command here. + if (iAvkonAppUi) + { + TRAP_IGNORE(iAvkonAppUi->ProcessCommandL(EGlxCmdResetView)); + } + + if (iAddToTag) + { + delete iAddToTag; + } + + if (iAddToAlbum) + { + delete iAddToAlbum; + } + + if (iUiUtility) + { + iUiUtility->Close(); + } + + if (iResourceOffset) + { + CCoeEnv::Static()->DeleteResourceFile(iResourceOffset); + } } // --------------------------------------------------------------------------- @@ -176,12 +175,9 @@ void CGlxMetadataDialog::SetDetailsDlgToolbarVisibility(TBool aVisible) { TRACER("CGlxMetadataDialog::SetDetailsDlgToolbarVisibility"); - CAknAppUi* appUi = GetAppUi(); - __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer)); - HandleToolbarResetting(aVisible); - CAknToolbar* currentPopupToolbar = appUi->CurrentPopupToolbar(); + CAknToolbar* currentPopupToolbar = iAvkonAppUi->CurrentPopupToolbar(); if(currentPopupToolbar) { currentPopupToolbar->SetToolbarVisibility(aVisible); @@ -284,7 +280,7 @@ controlInfo.iFlags = 0; if (aControlType == EMetaDataDialogListBox) { - iContainer = CGlxMetadataContainer::NewL(GetAppUi()->ClientRect(), + iContainer = CGlxMetadataContainer::NewL(iAvkonAppUi->ClientRect(), *this, iUri, *this); controlInfo.iControl = iContainer; // giving ownership } @@ -565,10 +561,8 @@ void CGlxMetadataDialog::HandleToolbarResetting(TBool aVisible) { TRACER("CGlxMetadataDialog::HandleToolbarResetting"); - CAknAppUi* appUi = GetAppUi(); - __ASSERT_DEBUG(appUi, Panic(EGlxPanicNullPointer)); - CAknToolbar* popupToolbar = appUi->PopupToolbar(); + CAknToolbar* popupToolbar = iAvkonAppUi->PopupToolbar(); if(popupToolbar) { popupToolbar->SetToolbarVisibility( !aVisible ); @@ -578,7 +572,7 @@ popupToolbar->DrawNow(); } } - CAknToolbar* toolbar = appUi->CurrentFixedToolbar(); + CAknToolbar* toolbar = iAvkonAppUi->CurrentFixedToolbar(); if(toolbar) { toolbar->HideItemsAndDrawOnlyBackground(!aVisible); diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp --- a/photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/viewbase/src/glxmedialistviewbase.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -162,6 +162,7 @@ iMediaList = &iMediaListFactory->CreateMediaListL(*iCollectionUtility); iMediaList->AddContextL(iPreloadContextForCommandHandlers, 0); } + __ASSERT_ALWAYS(iMediaList, Panic(EGlxPanicNullMediaList)); if(iFixedTitle) { @@ -181,7 +182,7 @@ //Allow the MskController to observe medialist everytime a view with a valid //medialist becomes active - if( iCbaControl && iMediaList && Cba()&& iEnableMidddleSoftkey ) + if( iCbaControl && Cba()&& iEnableMidddleSoftkey ) { CMPXCollectionPath* navigationalState = iCollectionUtility->Collection().PathL(); CleanupStack::PushL(navigationalState); @@ -215,21 +216,25 @@ EXPORT_C void CGlxMediaListViewBase::DoViewDeactivate() { DoMLViewDeactivate(); - if( iCbaControl && iMediaList && Cba() ) - { - //Remove Mskcontroller from medialist observer - iCbaControl->RemoveFromObserver(*iMediaList); - } - if( Toolbar() && iToolbarControl ) + + if( iMediaList ) { - //Remove Toolbarcontroller from medialist observer - iToolbarControl->RemoveFromObserver(*iMediaList); - } - - // Only close the medialist if navigating backwards - if ( iUiUtility->ViewNavigationDirection() == EGlxNavigationBackwards ) - { - CloseMediaList(); + if (iCbaControl && Cba()) + { + //Remove Mskcontroller from medialist observer + iCbaControl->RemoveFromObserver(*iMediaList); + } + if (Toolbar() && iToolbarControl) + { + //Remove Toolbarcontroller from medialist observer + iToolbarControl->RemoveFromObserver(*iMediaList); + } + + // Only close the medialist if navigating backwards + if (iUiUtility->ViewNavigationDirection() == EGlxNavigationBackwards) + { + CloseMediaList(); + } } delete iTitleFetcher; diff -r 9ba538e329bd -r 7d9067c6fcb1 photosgallery/viewframework/views/zoomview/src/glxzoomcontrol.cpp --- a/photosgallery/viewframework/views/zoomview/src/glxzoomcontrol.cpp Thu Jan 07 12:46:23 2010 +0200 +++ b/photosgallery/viewframework/views/zoomview/src/glxzoomcontrol.cpp Mon Jan 18 20:19:20 2010 +0200 @@ -230,6 +230,10 @@ iTimer->Cancel(); } delete iTimer; + if(iGlxTvOut) + { + delete iGlxTvOut; + } if(iEventHandler) { delete iEventHandler;