meetingrequest/mrgui/mrfieldbuilderplugin/inc/cesmrrepeatuntil.h
branchRCL_3
changeset 12 4ce476e64c59
parent 0 8466d47a6819
equal deleted inserted replaced
11:0396474f30f5 12:4ce476e64c59
     1 /*
     1 /*
     2 * Copyright (c) 2007-2009 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".
    19 #ifndef CESMRREPEATUNTIL_H
    19 #ifndef CESMRREPEATUNTIL_H
    20 #define CESMRREPEATUNTIL_H
    20 #define CESMRREPEATUNTIL_H
    21 
    21 
    22 #include "cesmrfield.h"
    22 #include "cesmrfield.h"
    23 
    23 
    24 #include <AknsControlContext.h>
    24 class CMRLabel;
    25 
       
    26 class CEikLabel;
       
    27 class CEikDateEditor;
    25 class CEikDateEditor;
    28 class MESMRFieldValidator;
    26 class MESMRFieldValidator;
    29 class CAknsFrameBackgroundControlContext;
    27 class CAknsBasicBackgroundControlContext;
       
    28 
    30 
    29 
    31 NONSHARABLE_CLASS( CESMRRepeatUntilField ) : public CESMRField
    30 NONSHARABLE_CLASS( CESMRRepeatUntilField ) : public CESMRField
    32     {
    31     {
    33 public:
    32 public:
    34     /**
    33     /**
    42      * Destructor.
    41      * Destructor.
    43      */
    42      */
    44     ~CESMRRepeatUntilField();
    43     ~CESMRRepeatUntilField();
    45 
    44 
    46 public: // From CESMRField
    45 public: // From CESMRField
    47     void InitializeL();
       
    48     TBool OkToLoseFocusL( TESMREntryFieldId aNextItem );
    46     TBool OkToLoseFocusL( TESMREntryFieldId aNextItem );
    49     void SetOutlineFocusL( TBool aFocus );
    47     void SetOutlineFocusL( TBool aFocus );
       
    48     void SetValidatorL( MESMRFieldValidator* aValidator );
       
    49     TBool ExecuteGenericCommandL( TInt aCommand );
    50     
    50     
    51 public: // From CCoeControl
    51 public: // From CCoeControl
       
    52     TSize MinimumSize();
    52     TInt CountComponentControls() const;
    53     TInt CountComponentControls() const;
    53     CCoeControl* ComponentControl( TInt aInd ) const;
    54     CCoeControl* ComponentControl( TInt aInd ) const;
    54     void SizeChanged();
    55     void SizeChanged();
    55     void ActivateL();
       
    56     void PositionChanged();
       
    57     TKeyResponse OfferKeyEventL(
    56     TKeyResponse OfferKeyEventL(
    58             const TKeyEvent& aEvent,
    57             const TKeyEvent& aEvent,
    59             TEventCode aType );
    58             TEventCode aType );
    60     void CheckIfValidatingNeededL(
    59     void CheckIfValidatingNeededL(
    61             TInt aStartFieldIndex );
    60             TInt aStartFieldIndex );
       
    61     void SetContainerWindowL( const CCoeControl& aContainer );
    62 
    62 
    63 private:
    63 private:
    64     /**
    64     /**
    65      * Constructor.
    65      * Constructor.
    66      * @param aValidator validator object
    66      * @param aValidator validator object
    70     /**
    70     /**
    71      * Second phase constructor.
    71      * Second phase constructor.
    72      */
    72      */
    73     void ConstructL();
    73     void ConstructL();
    74 
    74 
       
    75     void DoEnvChangeL();
       
    76     
    75 private:
    77 private:
    76     /**
       
    77      * Own. Repeat until field label.
       
    78      */
       
    79     CEikLabel* iLabel;
       
    80 
    78 
    81     /**
    79     // Own. Repeat until field label.
    82      * Not owned. Repeat until field editor.
    80     CMRLabel* iLabel;
    83      */
    81 
       
    82     // Not owned. Repeat until field editor.
    84     CEikDateEditor* iDate;
    83     CEikDateEditor* iDate;
    85 
    84 
    86     /**
    85     // Own. Background control context.
    87      * Not owned. Validator object.
    86     CAknsBasicBackgroundControlContext* iBgCtrlContext;
    88      */
    87     
    89     MESMRFieldValidator* iValidator;
    88     /// Ref: Pointer to container window
    90 
    89     const CCoeControl* iContainerWindow;    
    91     /**
       
    92      * Background control context
       
    93      */
       
    94     MAknsControlContext* iBackground;
       
    95 
       
    96     /**
       
    97      * Actual background for the editor.
       
    98      */
       
    99     CAknsFrameBackgroundControlContext* iFrameBgContext;
       
   100     };
    90     };
   101 
    91 
   102 #endif  // CESMRREPEATUNTIL_H
    92 #endif  // CESMRREPEATUNTIL_H