diff -r 7d9067c6fcb1 -r 9a9c174934f5 photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp --- a/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Mon Jan 18 20:19:20 2010 +0200 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/src/glxcommandhandleraddtocontainer.cpp Tue Jan 26 11:58:28 2010 +0200 @@ -66,6 +66,19 @@ } // --------------------------------------------------------------------------- +// Return add to album command handler for singleclick options menu +// --------------------------------------------------------------------------- +// +EXPORT_C CGlxCommandHandlerAddToContainer* + CGlxCommandHandlerAddToContainer::NewAddToAlbumSingleClickCommandHandlerL( + MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) + { + return CGlxCommandHandlerAddToContainer::NewL (aMediaListProvider, + EGlxCmdSingleClickAddToAlbum, aHasToolbarItem); + } + + +// --------------------------------------------------------------------------- // Return add (to) tags command handler // --------------------------------------------------------------------------- // @@ -79,6 +92,19 @@ } // --------------------------------------------------------------------------- +// Return add (to) tags command handler for singleclick option menu +// --------------------------------------------------------------------------- +// +EXPORT_C CGlxCommandHandlerAddToContainer* + CGlxCommandHandlerAddToContainer::NewAddToTagSingleClickCommandHandlerL( + MGlxMediaListProvider* aMediaListProvider, TBool aHasToolbarItem) + { + return CGlxCommandHandlerAddToContainer::NewL(aMediaListProvider, + EGlxCmdSingleClickAddTag, aHasToolbarItem); + } + + +// --------------------------------------------------------------------------- // Return add (to) Favourites command handler // --------------------------------------------------------------------------- // @@ -194,6 +220,7 @@ break; } case EGlxCmdAddToAlbum: + case EGlxCmdSingleClickAddToAlbum: { enablePopup = ETrue; targetCollection->AppendL(KGlxCollectionPluginAlbumsImplementationUid); @@ -202,6 +229,7 @@ break; } case EGlxCmdAddTag: + case EGlxCmdSingleClickAddTag: { enableMultipleSelection = ETrue; enablePopup = ETrue; @@ -262,7 +290,8 @@ HBufC* CGlxCommandHandlerAddToContainer::CompletionTextL() const { TRACER("CGlxCommandHandlerAddToContainer::CompletionTextL()"); - if (iCommandId == EGlxCmdAddToAlbum) + if (iCommandId == EGlxCmdAddToAlbum || + iCommandId == EGlxCmdSingleClickAddToAlbum ) { if (iSelectionCount > 1) { @@ -270,7 +299,8 @@ } return StringLoader::LoadL(R_GLX_COMPLETION_ADD_TO_CONTAINER_ONE_ITEM_ALBUM); } - else if (iCommandId == EGlxCmdAddTag) + else if (iCommandId == EGlxCmdAddTag || + iCommandId == EGlxCmdSingleClickAddTag) { if (iSelectionCount > 1) { @@ -324,3 +354,26 @@ { } + +// --------------------------------------------------------------------------- +// CGlxCommandHandlerAddToContainer::DoIsDisabled +// --------------------------------------------------------------------------- +// +TBool CGlxCommandHandlerAddToContainer::DoIsDisabled(TInt aCommandId, + MGlxMediaList& aList) const + { + TRACER("CGlxCommandHandlerAddToContainer::DoIsDisabled"); + if ( (EGlxCmdSingleClickAddToAlbum==aCommandId || + EGlxCmdSingleClickAddTag == aCommandId) && + aList.SelectionCount() > 0 ) + { + return EFalse; + } + else if (EGlxCmdAddToAlbum==aCommandId || EGlxCmdAddTag == aCommandId) + { + return EFalse; + } + + return ETrue; + } +