meetingrequest/mrgui/mrfieldbuilderplugin/inc/cesmrpriorityfield.h
branchRCL_3
changeset 12 4ce476e64c59
parent 0 8466d47a6819
equal deleted inserted replaced
11:0396474f30f5 12:4ce476e64c59
     1 /*
     1 /*
     2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
    17 
    17 
    18 
    18 
    19 #ifndef CESMRPRIORITYFIELD_H
    19 #ifndef CESMRPRIORITYFIELD_H
    20 #define CESMRPRIORITYFIELD_H
    20 #define CESMRPRIORITYFIELD_H
    21 
    21 
    22 #include "cesmriconfield.h"
    22 #include "cesmrfield.h"
    23 #include "cesmrpriority.h"
    23 #include "cesmrpriority.h"
       
    24 #include "mesmrcalentry.h"
    24 
    25 
    25 class MESMRCalEntry;
    26 class CMRImage;
    26 class CEikLabel;
    27 class CMRLabel;
    27 class MESMRTitlePaneObserver;
       
    28 
    28 
    29 NONSHARABLE_CLASS( CESMRPriorityField ): public CESMRIconField
    29 NONSHARABLE_CLASS( CESMRPriorityField ): public CESMRField
    30     {
    30     {
    31 public:
    31 public:
    32     /**
    32     /**
    33      * Creates new CESMRPriorityField object. Ownership
    33      * Creates new CESMRPriorityField object. Ownership
    34      * is transferred to caller.
    34      * is transferred to caller.
    39     /**
    39     /**
    40      * C++ Destructor.
    40      * C++ Destructor.
    41      */
    41      */
    42     ~CESMRPriorityField();
    42     ~CESMRPriorityField();
    43 
    43 
    44 public: // From CESMRIconField
    44 public: // From base class CESMRField
    45     void InitializeL();
    45     void InitializeL();
    46     void InternalizeL( MESMRCalEntry& aEntry );
    46     void InternalizeL( MESMRCalEntry& aEntry );
    47     void ExternalizeL( MESMRCalEntry& aEntry );
    47     void ExternalizeL( MESMRCalEntry& aEntry );
    48     void ExecuteGenericCommandL( TInt aCommand );
    48     TBool ExecuteGenericCommandL( TInt aCommand );
    49     void SetOutlineFocusL( TBool aFocus );
    49     void SetOutlineFocusL( TBool aFocus );
    50     void SetTitlePaneObserver( MESMRTitlePaneObserver* aObserver );
       
    51 
    50 
    52 public: // From CCoeControl
    51 public: // From base class CCoeControl
    53     TKeyResponse OfferKeyEventL(const TKeyEvent& aEvent, TEventCode aType);
    52     TKeyResponse OfferKeyEventL(const TKeyEvent& aEvent, TEventCode aType);
    54 
    53     void SizeChanged();
       
    54     TInt CountComponentControls() const;
       
    55     CCoeControl* ComponentControl( TInt aIndex ) const;    
       
    56     
    55 private: // Implementation
    57 private: // Implementation
    56     /**
    58     /**
    57      * Constructor.
    59      * Constructor.
    58      */
    60      */
    59     CESMRPriorityField();
    61     CESMRPriorityField();
    76      *
    78      *
    77      */
    79      */
    78     void ExecutePriorityQueryL();
    80     void ExecutePriorityQueryL();
    79 
    81 
    80 private:
    82 private:
    81     /**
       
    82      * Not owned. Priority label.
       
    83      */
       
    84     CEikLabel* iPriority;
       
    85 
    83 
    86     /**
    84     /**
    87      * Own. Array of available priorities.
    85      * Own. Array of available priorities.
    88      */
    86      */
    89     RPointerArray< CESMRPriority > iArray;
    87     RPointerArray< CESMRPriority > iArray;
    95 
    93 
    96     /**
    94     /**
    97      * Entry type
    95      * Entry type
    98      */
    96      */
    99     MESMRCalEntry::TESMRCalEntryType iEntryType;
    97     MESMRCalEntry::TESMRCalEntryType iEntryType;
       
    98     
       
    99     /**
       
   100      * Owned: Field icon
       
   101      */
       
   102     CMRImage* iIcon;
   100 
   103 
   101     /**
   104     /**
   102      * Title pane observer for setting the priority icon
   105      * Not own: Field text label
   103      */
   106      */
   104     MESMRTitlePaneObserver* iObserver;
   107     CMRLabel* iLabel;    
   105     };
   108     };
   106 
   109 
   107 #endif  // CESMRPRIORITYFIELD_H
   110 #endif  // CESMRPRIORITYFIELD_H
   108 
   111