meetingrequest/mrgui/mrfieldbuilderplugin/src/cesmrviewerdetailedsubjectfield.cpp
--- a/meetingrequest/mrgui/mrfieldbuilderplugin/src/cesmrviewerdetailedsubjectfield.cpp Wed Sep 15 11:52:37 2010 +0300
+++ b/meetingrequest/mrgui/mrfieldbuilderplugin/src/cesmrviewerdetailedsubjectfield.cpp Wed Oct 13 14:11:15 2010 +0300
@@ -118,12 +118,15 @@
iFieldIcon = CMRImage::NewL(
NMRBitmapManager::EMRBitmapOccasion,
this );
-
+ iPriorityIcon = CMRImage::NewL(
+ NMRBitmapManager::EMRBitmapLockField,
+ this );
iRichTextViewer = CESMRRichTextViewer::NewL( this );
CESMRField::ConstructL( iRichTextViewer ); // ownership transferred
iRichTextViewer->SetEdwinSizeObserver( this );
iRichTextViewer->SetParent( this );
iRichTextViewer->SetLinkObserver( this );
+ iCurrentPriority = EFSCalenMRPriorityNormal;
}
// ---------------------------------------------------------------------------
@@ -199,17 +202,29 @@
{
if( entry.PriorityL() == EFSCalenMRPriorityHigh )
{
+ if( iPriorityIcon )
+ {
+ delete iPriorityIcon;
+ iPriorityIcon = NULL;
+ }
iPriorityIcon = CMRImage::NewL(
NMRBitmapManager::EMRBitmapPriorityHigh,
this,
ETrue );
+ iCurrentPriority = EFSCalenMRPriorityHigh;
}
if( entry.PriorityL() == EFSCalenMRPriorityLow )
{
+ if( iPriorityIcon )
+ {
+ delete iPriorityIcon;
+ iPriorityIcon = NULL;
+ }
iPriorityIcon = CMRImage::NewL(
NMRBitmapManager::EMRBitmapPriorityLow,
this,
ETrue );
+ iCurrentPriority = EFSCalenMRPriorityLow;
}
}
@@ -425,12 +440,15 @@
CESMRField::LockL();
- delete iPriorityIcon;
- iPriorityIcon = NULL;
- iPriorityIcon = CMRImage::NewL(
- NMRBitmapManager::EMRBitmapLockField,
- this,
- ETrue );
+ if( !iPriorityIcon )
+ {
+ delete iPriorityIcon;
+ iPriorityIcon = NULL;
+ iPriorityIcon = CMRImage::NewL(
+ NMRBitmapManager::EMRBitmapLockField,
+ this,
+ ETrue );
+ }
}
// ---------------------------------------------------------------------------
@@ -483,12 +501,12 @@
++count;
}
- if ( iRichTextViewer )
+ if ( iPriorityIcon )
{
++count;
}
- if ( iPriorityIcon )
+ if ( iRichTextViewer )
{
++count;
}
@@ -508,9 +526,9 @@
case 0:
return iFieldIcon;
case 1:
- return iRichTextViewer;
+ return iPriorityIcon;
case 2:
- return iPriorityIcon;
+ return iRichTextViewer;
default:
return NULL;
@@ -541,7 +559,7 @@
}
// Layouting priority icon
- if( iPriorityIcon )
+ if( iPriorityIcon && ( IsLocked() || iCurrentPriority != EFSCalenMRPriorityNormal ) )
{
TAknWindowComponentLayout iconLayout(
NMRLayoutManager::GetWindowComponentLayout(
@@ -551,7 +569,7 @@
TAknLayoutText viewerLayoutText;
- if( iPriorityIcon )
+ if( iPriorityIcon && ( IsLocked() || iCurrentPriority != EFSCalenMRPriorityNormal ) )
{
viewerLayoutText = NMRLayoutManager::GetLayoutText( rowRect,
NMRLayoutManager::EMRTextLayoutSingleRowEditorText );