emailuis/uicomponents/src/fstreeplainonelineitemvisualizer.cpp
branchRCL_3
changeset 73 c8382f7b54ef
parent 64 3533d4323edc
child 80 726fba06891a
equal deleted inserted replaced
70:968773a0b6ef 73:c8382f7b54ef
    13 *
    13 *
    14 * Description:  A visualizer for data items with plain text.
    14 * Description:  A visualizer for data items with plain text.
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 
       
    19 //<cmail> removed __FS_ALFRED_SUPPORT flag
       
    20 //#include <fsconfig.h>
       
    21 //</cmail> removed __FS_ALFRED_SUPPORT flag
       
    22 
       
    23 #include "emailtrace.h"
    18 #include "emailtrace.h"
    24 #include "fstreeplainonelineitemvisualizer.h"
    19 #include "fstreeplainonelineitemvisualizer.h"
    25 #include "fstreeplainonelineitemdata.h"
    20 #include "fstreeplainonelineitemdata.h"
    26 #include "fstreelist.h"
    21 #include "fstreelist.h"
    27 #include "fslayoutmanager.h"
    22 #include "fslayoutmanager.h"
    28 #include "fstextstylemanager.h"
    23 #include "fstextstylemanager.h"
    29 #include "fsalftextstylemanager.h"
    24 #include "fsalftextstylemanager.h"
    30 #include "fsmarqueeclet.h"
    25 #include "fsmarqueeclet.h"
    31 #include <touchlogicalfeedback.h>
    26 #include <touchlogicalfeedback.h>
    32 
    27 
    33 // <cmail> SF
       
    34 #include <alf/alfanchorlayout.h>
    28 #include <alf/alfanchorlayout.h>
    35 #include <alf/alfimagevisual.h>
    29 #include <alf/alfimagevisual.h>
    36 #include <alf/alfviewportlayout.h>
    30 #include <alf/alfviewportlayout.h>
    37 #include <alf/alftextvisual.h>
    31 #include <alf/alftextvisual.h>
    38 #include <alf/alfimage.h>
    32 #include <alf/alfimage.h>
    39 #include <alf/alfenv.h>
    33 #include <alf/alfenv.h>
    40 #include <alf/alftextstyle.h>
    34 #include <alf/alftextstyle.h>
    41 
    35 
    42 #include <alf/alfevent.h>
    36 #include <alf/alfevent.h>
    43 #include <alf/alfmappingfunctions.h>
    37 #include <alf/alfmappingfunctions.h>
    44 // </cmail>
       
    45 
    38 
    46 // ======== MEMBER FUNCTIONS ========
    39 // ======== MEMBER FUNCTIONS ========
    47 
    40 
    48 // ---------------------------------------------------------------------------
    41 // ---------------------------------------------------------------------------
    49 // Two-phased constructor.
    42 // Two-phased constructor.
   345         }
   338         }
   346 
   339 
   347     if ( iFlags & KFsTreeListItemMarked )
   340     if ( iFlags & KFsTreeListItemMarked )
   348         {
   341         {
   349         TInt iconMarkedVisIndex =
   342         TInt iconMarkedVisIndex =
   350                             iLayout->FindVisual(iIconMarked);
   343                             iLayout->FindVisual(iIconMark);
   351         if ( iconMarkedVisIndex != KErrNotFound )
   344         if ( iconMarkedVisIndex != KErrNotFound )
   352             {
   345             {
   353             iLayout->SetAnchor(EAlfAnchorTopLeft,
   346             iLayout->SetAnchor(EAlfAnchorTopLeft,
   354                     iconMarkedVisIndex,
   347                     iconMarkedVisIndex,
   355                     EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
   348                     EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
   363                     EAlfAnchorMetricAbsolute,
   356                     EAlfAnchorMetricAbsolute,
   364                     tpMarkIconBr );
   357                     tpMarkIconBr );
   365 
   358 
   366             TAlfTimedValue opacity;
   359             TAlfTimedValue opacity;
   367             opacity.SetValueNow(1.0f);
   360             opacity.SetValueNow(1.0f);
   368             iIconMarked->SetOpacity(opacity);
   361             iIconMark->SetOpacity(opacity);
   369             }
   362             }
   370         }
   363         }
   371     else
   364     else
   372         {
   365         {
   373         if (iIconMarked)
   366         if (iIconMark)
   374             {
   367             {
   375             TAlfTimedValue opacity;
   368             TAlfTimedValue opacity;
   376             opacity.SetValueNow(0.0f);
   369             opacity.SetValueNow(0.0f);
   377             iIconMarked->SetOpacity(opacity);
   370             iIconMark->SetOpacity(opacity);
   378             }
   371             }
   379         }
   372         }
   380     iLayout->UpdateChildrenLayout();
   373     iLayout->UpdateChildrenLayout();
   381 
   374 
   382     }
   375     }
   405 
   398 
   406         if (!iIconVisual)
   399         if (!iIconVisual)
   407             {
   400             {
   408             iIconVisual =
   401             iIconVisual =
   409                         CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   402                         CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   410             // <cmail> aspect ratio preserved
       
   411             iIconVisual->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   403             iIconVisual->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   412             iIconVisual->SetFlag( EAlfVisualFlagIgnorePointer );
   404             iIconVisual->SetFlag( EAlfVisualFlagIgnorePointer );
   413             }
   405             }
   414 
   406 
   415         if (!iViewportLayout) 
   407         if (!iViewportLayout) 
   424             iTextVisual =
   416             iTextVisual =
   425                       CAlfTextVisual::AddNewL(iOwnerControl, iViewportLayout);
   417                       CAlfTextVisual::AddNewL(iOwnerControl, iViewportLayout);
   426             iTextVisual->SetFlag( EAlfVisualFlagIgnorePointer );
   418             iTextVisual->SetFlag( EAlfVisualFlagIgnorePointer );
   427             }
   419             }
   428 
   420 
   429         if (!iIconMarked)
   421         if (!iIconMark)
   430             {
   422             {
   431             iIconMarked = CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   423             iIconMark = CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   432             iIconMarked->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   424             iIconMark->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   433             iIconMarked->SetFlag( EAlfVisualFlagIgnorePointer );
   425             iIconMark->SetFlag( EAlfVisualFlagIgnorePointer );
   434             }
   426             }
   435 
   427 
   436         if (!iIconMenu)
   428         if (!iIconMenu)
   437             {
   429             {
   438             iIconMenu = CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   430             iIconMenu = CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
   459 // ---------------------------------------------------------------------------
   451 // ---------------------------------------------------------------------------
   460 //
   452 //
   461 void CFsTreePlainOneLineItemVisualizer::UpdateL( const MFsTreeItemData& aData,
   453 void CFsTreePlainOneLineItemVisualizer::UpdateL( const MFsTreeItemData& aData,
   462                                           TBool aFocused,
   454                                           TBool aFocused,
   463                                           const TUint aLevel,
   455                                           const TUint aLevel,
   464                                           CAlfTexture*& aMarkIcon,
   456                                           CAlfTexture*& aMarkOnIcon,
       
   457                                           CAlfTexture*& /*aMarkOffIcon*/,
   465                                           CAlfTexture*& aMenuIcon,
   458                                           CAlfTexture*& aMenuIcon,
   466                                           const TUint /*aTimeout*/,
   459                                           const TUint /*aTimeout*/,
   467                                           TBool aUpdateData)
   460                                           TBool aUpdateData)
   468     {
   461     {
   469     FUNC_LOG;
   462     FUNC_LOG;
   497             const TInt indent( iTextIndentation * ( aLevel - 1 ) );
   490             const TInt indent( iTextIndentation * ( aLevel - 1 ) );
   498             UpdateLayout(data, indent);
   491             UpdateLayout(data, indent);
   499 
   492 
   500             if (iIconVisual && data->IsIconSet())
   493             if (iIconVisual && data->IsIconSet())
   501                 {
   494                 {
   502                 // <cmail> aspect ratio preserved
       
   503                 iIconVisual->SetScaleMode( CAlfImageVisual::EScaleFitInside );
   495                 iIconVisual->SetScaleMode( CAlfImageVisual::EScaleFitInside );
   504                 // </cmail>
       
   505                 iIconVisual->SetImage( TAlfImage( data->Icon() ) );
   496                 iIconVisual->SetImage( TAlfImage( data->Icon() ) );
   506                 }
   497                 }
   507 
   498 
   508             if ( iTextVisual && aUpdateData )
   499             if ( iTextVisual && aUpdateData )
   509                 {
   500                 {
   564                 }
   555                 }
   565 
   556 
   566             if ( IsMarked() )
   557             if ( IsMarked() )
   567                 {
   558                 {
   568                 // <cmail> aspect ratio preserved
   559                 // <cmail> aspect ratio preserved
   569                 iIconMarked->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   560                 iIconMark->SetScaleMode( CAlfImageVisual::EScaleFitInside);
   570                 // </cmail>
   561                 // </cmail>
   571                 iIconMarked->SetImage( *aMarkIcon );
   562                 iIconMark->SetImage( *aMarkOnIcon );
   572                 }
   563                 }
   573 
   564 
   574             if ((iFlags & KFsTreeListItemHasMenu)
   565             if ((iFlags & KFsTreeListItemHasMenu)
   575                     && (iFlags & KFsTreeListItemFocused))
   566                     && (iFlags & KFsTreeListItemFocused))
   576                 {
   567                 {
   628         iParentLayout->Remove(iLayout, aTimeout);
   619         iParentLayout->Remove(iLayout, aTimeout);
   629         iLayout->RemoveAndDestroyAllD();
   620         iLayout->RemoveAndDestroyAllD();
   630         iLayout = NULL;
   621         iLayout = NULL;
   631         iTextVisual = NULL;
   622         iTextVisual = NULL;
   632         iIconVisual = NULL;
   623         iIconVisual = NULL;
   633         iIconMarked = NULL;
   624         iIconMark = NULL;
   634         iIconMenu = NULL;
   625         iIconMenu = NULL;
   635         iParentLayout = NULL;
   626         iParentLayout = NULL;
   636         iViewportLayout = NULL;
   627         iViewportLayout = NULL;
   637         }
   628         }
   638     }
   629     }