--- a/uifw/AvKon/aknhlist/src/akntreelistview.cpp Tue Sep 14 21:48:24 2010 +0300
+++ b/uifw/AvKon/aknhlist/src/akntreelistview.cpp Wed Sep 15 12:29:17 2010 +0300
@@ -30,6 +30,7 @@
#include <avkon.mbg>
#include <gulicon.h>
#include <aknmarkingmodeobserver.h>
+#include <aknmarkingmode.h>
#include "akntreelistview.h"
#include "akntree.h"
#include "akntreelist.h"
@@ -2971,6 +2972,8 @@
const TInt itemCount = iItems.Count();
for ( TInt ii = 0; ii < itemCount; ++ii )
{
+ TBool itemIsMarkable = ( iItems[ii].Item() &&
+ iItems[ii].Item()->IsMarkable() );
TRect drawRect( iItems[ii].Rect() );
if ( iFlags.IsSet( EFlagMarkingMode ) )
@@ -3087,7 +3090,7 @@
if ( iFlags.IsSet( EFlagMarkingMode ) && iMarkingIconArray
&& iMarkingIconArray->Count() ==
- KMarkingModeIconArraySize )
+ KMarkingModeIconArraySize && itemIsMarkable )
{
// Rect for the marking icon
TRect iconRect = RectFromLayout( drawRect,
@@ -3604,6 +3607,18 @@
return ( count > 0 );
}
+// ---------------------------------------------------------------------------
+// CAknTreeListView::SetMarkingMode
+// ---------------------------------------------------------------------------
+//
+void CAknTreeListView::SetMarkingMode( TBool aEnable )
+ {
+ if ( ( iFlags.IsSet( EFlagMarkingMode ) != aEnable ) && iItemActionMenu )
+ {
+ iItemActionMenu->MarkingMode().SetCollectionMultipleMarkingState(
+ aEnable );
+ }
+ }
#ifdef RD_UI_TRANSITION_EFFECTS_LIST
// ---------------------------------------------------------------------------