meetingrequest/mrgui/inc/cmrlistpane.h
branchRCL_3
changeset 17 8592a65ad3fb
parent 16 4ce476e64c59
child 24 b5fbb9b25d57
equal deleted inserted replaced
16:4ce476e64c59 17:8592a65ad3fb
    19 #define CMRLISTPANE_H
    19 #define CMRLISTPANE_H
    20 
    20 
    21 // INCLUDES
    21 // INCLUDES
    22 #include <coecntrl.h>
    22 #include <coecntrl.h>
    23 #include <aknlongtapdetector.h>
    23 #include <aknlongtapdetector.h>
       
    24 #include <touchlogicalfeedback.h>
       
    25 
    24 #include "mmrphysicsobserver.h"
    26 #include "mmrphysicsobserver.h"
    25 #include "mmrfieldcontainerobserver.h"
    27 #include "mmrfieldcontainerobserver.h"
    26 
    28 
    27 // FORWARD DECLARATIONS
    29 // FORWARD DECLARATIONS
    28 class MESMRFieldStorage;
    30 class MESMRFieldStorage;
    31 class CMRListPanePhysics;
    33 class CMRListPanePhysics;
    32 class CAknDoubleSpanScrollBar;
    34 class CAknDoubleSpanScrollBar;
    33 class MMRScrollBarObserver;
    35 class MMRScrollBarObserver;
    34 class CESMRField;
    36 class CESMRField;
    35 class MESMRCalEntry;
    37 class MESMRCalEntry;
       
    38 class MTouchFeedback;
    36 
    39 
    37 // CLASS DECLARATIONS
    40 // CLASS DECLARATIONS
    38 NONSHARABLE_CLASS( CMRListPane ) : 
    41 NONSHARABLE_CLASS( CMRListPane ) : 
    39         public CCoeControl,
    42         public CCoeControl,
    40         public MAknLongTapDetectorCallBack,
    43         public MAknLongTapDetectorCallBack,
   157         void HandlePointerEventL( const TPointerEvent &aPointerEvent );
   160         void HandlePointerEventL( const TPointerEvent &aPointerEvent );
   158         void ActivateL();
   161         void ActivateL();
   159         
   162         
   160     private: // From MMRPhysicsObserver
   163     private: // From MMRPhysicsObserver
   161         void PhysicsEmulationEnded();
   164         void PhysicsEmulationEnded();
       
   165         void UpdateScrollBarDuringOngoingPhysics();
   162         
   166         
   163     private: // From MAknLongTapDetectorCallBack
   167     private: // From MAknLongTapDetectorCallBack
   164         void HandleLongTapEventL(
   168         void HandleLongTapEventL(
   165                 const TPoint& aPenEventLocation, 
   169                 const TPoint& aPenEventLocation, 
   166                 const TPoint& aPenEventScreenLocation );
   170                 const TPoint& aPenEventScreenLocation );
   176         void SetFocusAfterPointerEventL( 
   180         void SetFocusAfterPointerEventL( 
   177                 const TPointerEvent &aPointerEvent );
   181                 const TPointerEvent &aPointerEvent );
   178         void UpdateClickedField( const TPointerEvent &aPointerEvent );
   182         void UpdateClickedField( const TPointerEvent &aPointerEvent );
   179         TBool HiddenFocus();
   183         TBool HiddenFocus();
   180         void ForwardReceivedPointerEventsToChildrenL();
   184         void ForwardReceivedPointerEventsToChildrenL();
       
   185         void HandleTactileFeedback( const TTouchLogicalFeedback& aType );
       
   186         TBool FeedbackScrollMarginExceeded( TInt aMargin );
   181         
   187         
   182     private: // Data
   188     private: // Data
   183         /// Ref: Storage for list items.
   189         /// Ref: Storage for list items.
   184         MESMRFieldStorage& iFactory;
   190         MESMRFieldStorage& iFactory;
   185         /// Ref: scrollbar model
   191         /// Ref: scrollbar model
   202         /// Own: Boolean to check, if physics action is ongoing or not
   208         /// Own: Boolean to check, if physics action is ongoing or not
   203         TBool iPhysicsActionOngoing;
   209         TBool iPhysicsActionOngoing;
   204         /// Own: Record if the long tapping event have been comsumed, if yes, 
   210         /// Own: Record if the long tapping event have been comsumed, if yes, 
   205         /// then do not handle signal pointer event anymore.
   211         /// then do not handle signal pointer event anymore.
   206         TBool iLongTapEventConsumed;
   212         TBool iLongTapEventConsumed;
       
   213         /// Ref: Reference to tactile feedback
       
   214         MTouchFeedback* iTactileFeedback;
       
   215         /// Own: This records vertical scroll index for tactile feedback
       
   216         TInt iPreviousVerticalScrollIndex;
       
   217         /// Own: This records default field height for tactile feedback during scroll
       
   218         TInt iDefaultFieldHeight;
   207     };
   219     };
   208     
   220     
   209 #endif // CMRLISTPANE_H
   221 #endif // CMRLISTPANE_H
   210 // End of file
   222 // End of file