taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapgrid.h
changeset 5 c743ef5928ba
parent 4 4d54b72983ae
child 9 f966699dea19
equal deleted inserted replaced
4:4d54b72983ae 5:c743ef5928ba
    55 /**
    55 /**
    56  * Avkon grid implementing custom item drawer
    56  * Avkon grid implementing custom item drawer
    57  */
    57  */
    58 class CTsFastSwapGrid: 
    58 class CTsFastSwapGrid: 
    59     public CAknGrid,
    59     public CAknGrid,
    60     public MTsDeviceStateObserver
    60     public MTsDeviceStateObserver,
       
    61     public MTsFastSwapTimerObserver
    61     {
    62     {
    62 public: // enums
    63 public: // enums
    63     enum TFastSwapGridBehaviour
    64     enum TFastSwapGridBehaviour
    64         {
    65         {
    65         // Highlight always visible
    66         // Highlight always visible
   198     TBool MoveToPartialVisibleItems(TInt aItem) const;
   199     TBool MoveToPartialVisibleItems(TInt aItem) const;
   199 
   200 
   200 private: // From CAknGrid
   201 private: // From CAknGrid
   201     virtual void CreateItemDrawerL();
   202     virtual void CreateItemDrawerL();
   202 
   203 
       
   204 private: // From MTsFastSwapTimerObserver
       
   205     void TimerCompletedL( CTsFastSwapTimer* aSource );
       
   206     
   203 private: // New functions
   207 private: // New functions
   204     
   208     
   205     /**
   209     /**
   206      * Loads close icon bitmap and mask
   210      * Loads close icon bitmap and mask
   207      */
   211      */
   222     
   226     
   223     // Close icon handling
   227     // Close icon handling
   224     RArray<TInt> iCloseItems;
   228     RArray<TInt> iCloseItems;
   225     TInt iCloseIconHitIdx;
   229     TInt iCloseIconHitIdx;
   226     MTsFastSwapGridObserver* iFastSwapGridObserver;
   230     MTsFastSwapGridObserver* iFastSwapGridObserver;
       
   231     CTsFastSwapTimer* iCloseIconRedrawTimer;
   227 
   232 
   228     // Highlight handling
   233     // Highlight handling
   229     TFastSwapGridBehaviour iBehaviour;
   234     TFastSwapGridBehaviour iBehaviour;
   230     TBool iHighlightVisible;
   235     TBool iHighlightVisible;
   231     
   236     
   232     // Visible view rectangle (horizontal scrolling support)
   237     // Visible view rectangle (horizontal scrolling support)
   233     TRect iVisibleViewRect;
   238     TRect iVisibleViewRect;
   234     
   239     
       
   240     // Feedback support
   235     TBool iTactileFeedbackSupport;
   241     TBool iTactileFeedbackSupport;
   236     
   242     
   237     mutable RArray<TInt> iFullyVisibleItems;
   243     mutable RArray<TInt> iFullyVisibleItems;
   238     mutable RArray<TInt> iPartialVisibleItems;
   244     mutable RArray<TInt> iPartialVisibleItems;
   239     };
   245     };