meetingrequest/mrgui/mrfieldbuildercommon/inc/cesmrfield.h
branchRCL_3
changeset 60 d620048b4810
parent 24 b5fbb9b25d57
equal deleted inserted replaced
52:efd4f1afd43e 60:d620048b4810
    32 #include <coecntrl.h>
    32 #include <coecntrl.h>
    33 #include <esmrgui.mbg>
    33 #include <esmrgui.mbg>
    34 
    34 
    35 class MESMRListObserver;
    35 class MESMRListObserver;
    36 class MESMRCalEntry;
    36 class MESMRCalEntry;
    37 class CESMRBorderLayer;
       
    38 class CMRBackground;
    37 class CMRBackground;
    39 class MTouchFeedback;
    38 class MTouchFeedback;
    40 class MESMRFieldValidator;
    39 class MESMRFieldValidator;
    41 class CEikMenuPane;
    40 class CEikMenuPane;
    42 class MTouchFeedback;
    41 class MTouchFeedback;
       
    42 class CMRRecordingGc;
    43 
    43 
    44 // Enumeration for border type
    44 // Enumeration for border type
    45 enum TESMRFieldFocusType
    45 enum TESMRFieldFocusType
    46     {
    46     {
    47     EESMRNoFocus = 0,
    47     EESMRNoFocus = 0,
   346       * @return ETrue if field supports longtap functionality
   346       * @return ETrue if field supports longtap functionality
   347       */
   347       */
   348      IMPORT_C virtual TBool SupportsLongTapFunctionalityL(
   348      IMPORT_C virtual TBool SupportsLongTapFunctionalityL(
   349     		 const TPointerEvent &aPointerEvent );
   349     		 const TPointerEvent &aPointerEvent );
   350 
   350 
       
   351     /**
       
   352      * Moves field to and away from screen
       
   353      * @param aVisible if ETrue, field is moved to screen
       
   354      */
       
   355     IMPORT_C void MoveToScreen( TBool aVisible );
       
   356 
       
   357     /**
       
   358      * Records field drawing commands to custom graphics context
       
   359      */
       
   360     IMPORT_C void RecordField();
       
   361 
   351 protected:
   362 protected:
   352 
   363 
   353     /**
   364     /**
   354      * Sends event to the event queue.
   365      * Sends event to the event queue.
   355      * @param aEvent event to send.
   366      * @param aEvent event to send.
   421     IMPORT_C virtual TKeyResponse OfferKeyEventL( const TKeyEvent& aEvent, TEventCode aType );
   432     IMPORT_C virtual TKeyResponse OfferKeyEventL( const TKeyEvent& aEvent, TEventCode aType );
   422     IMPORT_C virtual void SizeChanged();
   433     IMPORT_C virtual void SizeChanged();
   423     IMPORT_C virtual TInt CountComponentControls() const;
   434     IMPORT_C virtual TInt CountComponentControls() const;
   424     IMPORT_C virtual CCoeControl* ComponentControl( TInt aInd ) const;
   435     IMPORT_C virtual CCoeControl* ComponentControl( TInt aInd ) const;
   425     IMPORT_C virtual TSize MinimumSize();
   436     IMPORT_C virtual TSize MinimumSize();
       
   437     IMPORT_C void Draw( const TRect& aRect ) const;
   426 
   438 
   427 protected: // From base class CCoeControl
   439 protected: // From base class CCoeControl
   428 
   440 
   429     /**
   441     /**
   430      *  Implements pointer event handling for fields.
   442      *  Implements pointer event handling for fields.
   462     IMPORT_C void HandleTactileFeedbackL();
   474     IMPORT_C void HandleTactileFeedbackL();
   463 
   475 
   464 
   476 
   465 private:
   477 private:
   466     void AquireTactileFeedback();
   478     void AquireTactileFeedback();
       
   479     void DrawControl( CCoeControl* aControl ) const;
   467 
   480 
   468 protected: // data
   481 protected: // data
   469     /// Own: control which is surrounded by border
   482     /// Own: control which is surrounded by border
   470     CCoeControl* iExtControl;
   483     CCoeControl* iExtControl;
   471     /// Ref: Observer for notifying list component
   484     /// Ref: Observer for notifying field container
   472     MESMRListObserver* iObserver;
   485     MESMRListObserver* iObserver;
   473     /// Ref: Id for this field.
   486     /// Ref: Id for this field.
   474     TESMREntryFieldId iFieldId;
   487     TESMREntryFieldId iFieldId;
   475     /// Ref: Id for preceding item index.
   488     /// Ref: Id for preceding item index.
   476     TInt iPreItemIndex;
   489     TInt iPreItemIndex;
   502     MTouchFeedback* iTactileFeedback;
   515     MTouchFeedback* iTactileFeedback;
   503     /// Ref: Validator
   516     /// Ref: Validator
   504     MESMRFieldValidator* iValidator;
   517     MESMRFieldValidator* iValidator;
   505     /// Own: lock status
   518     /// Own: lock status
   506     TBool iLocked;
   519     TBool iLocked;
       
   520     /// Own: Cache for drawing commands
       
   521     CMRRecordingGc* iRecordingGc;
   507     };
   522     };
   508 
   523 
   509 #endif
   524 #endif // CESMRFIELD_H