diff -r 17302fa075e1 -r da6ac9d688df messagingappbase/mce/src/MceMessageListView.cpp --- a/messagingappbase/mce/src/MceMessageListView.cpp Wed Sep 15 12:08:45 2010 +0300 +++ b/messagingappbase/mce/src/MceMessageListView.cpp Wed Oct 13 14:27:34 2010 +0300 @@ -94,7 +94,7 @@ // These are for opening the viewer in inbox. // try to open viewer immediately if there is no other viewer is open const TInt KMceLaunchViewerStartTime = 1; -//0.3 sec delay is taken to ensure previously launched viewer is closed as to avoid the crashes and KErrCancel/KErrInUse errors due to launching of new viewer when currently running +//0.3 sec is taken to ensure previously launched viewer is closed as to avoid the crashes and KErrCancel/KErrInUse errors due to launching of new viewer when currently running //viewer is still in the process of exiting const TInt KMceLaunchViewerStartTimeWhenEditorOpen = 300000; const TInt KMceLaunchViewerRetryTime = 500000; // wait 0.5 secs for the next trial @@ -483,12 +483,6 @@ iDateTimeNotifier->Start(); } - // if we are in marking mode then "press" rsk - // cancel to return to normal mode - if( iMarkingModeOn ) - { - SetMarkingModeOff(); - } MCELOGGER_LEAVEFN("CMceMessageListView::DoActivateL()"); } @@ -560,7 +554,33 @@ iMceUi->GoOfflineL( iMsgListContainer->FolderEntry().iServiceId ); } break; - } + } + case EAknCmdMark: + { + iMsgListContainer->AddCurrentItemToSelectionL(); + SetMSKButtonL(); + break; + } + case EAknCmdUnmark: + { + iMsgListContainer->RemoveCurrentItemFromSelection(); + SetMSKButtonL(); + break; + } + case EAknUnmarkAll: + { + iMsgListContainer->ClearSelection(); + SetMSKButtonL(); + break; + } + + case EAknMarkAll: + { + iMsgListContainer->AddAllToSelectionL(); + SetMSKButtonL(); + break; + } + case EAknCmdMarkReadMsgs: { FindAllReadMsgAndMarkL(); @@ -1011,6 +1031,10 @@ switch ( aResourceId ) { case R_MCE_FOLDER_MENU: + if(!listPopulated) + { + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); + } aMenuPane->SetItemDimmed( EAknCmdHelp, !FeatureManager::FeatureSupported( KFeatureIdHelp ) ); @@ -1081,7 +1105,9 @@ } break; - + case R_MCE_EDIT_MENU: + EditMenuL( aMenuPane ); + break; case R_MCE_FETCH_MENU: FetchMenuL( aMenuPane ); break; @@ -1420,12 +1446,12 @@ } if ( iFolderId == KMsvGlobalOutBoxIndexEntryId ) { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); } else if ( count > 0 && totalCount == subfolderCount ) { // only folders in the list, then "Edit" submenu would be empty so delete it - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); aMenuPane->SetItemDimmed( EMceCmdSort, ETrue ); } @@ -1569,7 +1595,7 @@ void CMceMessageListView::FolderMenuNoItemsL( CEikMenuPane* aMenuPane ) const { aMenuPane->SetItemDimmed( EAknCmdOpen, ETrue ); - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); aMenuPane->SetItemDimmed( EMceCmdDelete, ETrue ); aMenuPane->SetItemDimmed( EMceCmdUndelete, ETrue ); aMenuPane->SetItemDimmed( EMceCmdMove, ETrue ); @@ -2214,7 +2240,7 @@ aMenuPane->SetItemDimmed( EMceCmdNewFolder, ETrue ); aMenuPane->SetItemDimmed( EMceCmdRenameFolder, ETrue ); aMenuPane->SetItemDimmed( EMceCmdCopy, ETrue ); - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); aMenuPane->SetItemDimmed( EMceCmdMailboxSettings, ETrue ); // + MessageDetails } @@ -2278,7 +2304,7 @@ // SyncML Outbox if ( SyncMlOutboxInbox( KMsvGlobalOutBoxIndexEntryIdValue ) ) { - aMenuPane->SetItemDimmed( EAknCmdMarkingModeEnter, ETrue ); + aMenuPane->SetItemDimmed( EMceCmdEditList, ETrue ); aMenuPane->SetItemDimmed( EAknCmdOpen, ETrue ); aMenuPane->SetItemDimmed( EMceCmdFetch, ETrue ); aMenuPane->SetItemDimmed( EMceCmdMarkAsRead, ETrue ); @@ -4230,45 +4256,5 @@ { aClearer = &iLocalScreenClearer; } -// ---------------------------------------------------- -// CMceMessageListView::SetMarkingMode( TBool aMarkingModeOn ) -// ---------------------------------------------------- - -void CMceMessageListView::SetMarkingMode( TBool aMarkingModeOn ) - { - iMarkingModeOn = aMarkingModeOn; - } -// ---------------------------------------------------- -// CMceMessageListView::MarkingMode() const -// ---------------------------------------------------- - -TBool CMceMessageListView::MarkingMode() const - { - return iMarkingModeOn; - } -// ---------------------------------------------------- -// CMceMessageListView::MessageCount() const -// ---------------------------------------------------- - -TInt CMceMessageListView::MessageCount() const - { - if ( iMsgListContainer ) - { - return iMsgListContainer->MessageCount(); - } - return 0; - } -// ---------------------------------------------------- -// CMceMessageListView::SetMarkingModeOff() -// ---------------------------------------------------- - -void CMceMessageListView::SetMarkingModeOff() - { - if( iMsgListContainer ) - { - iMsgListContainer->SetMarkingModeOff(); - } - iMarkingModeOn = EFalse; - } // End of File