diff -r fb3763350a08 -r 4d54b72983ae menufw/menufwui/mmwidgets/inc/mmgrid.h --- a/menufw/menufwui/mmwidgets/inc/mmgrid.h Fri Jan 22 09:35:14 2010 +0200 +++ b/menufw/menufwui/mmwidgets/inc/mmgrid.h Tue Jan 26 11:48:23 2010 +0200 @@ -12,7 +12,7 @@ * Contributors: * * Description: CMmGrid declaration -* Version : %version: MM_32.1.20 % << Don't touch! Updated by Synergy at check-out. +* Version : %version: MM_32.1.22 % << Don't touch! Updated by Synergy at check-out. * */ @@ -398,6 +398,34 @@ * area. In normal (non-mirrored) mode this method does nothing. */ void RedrawScrollbarBackground() const; + + /** + * Does actual handling of scroll events. + * + * @param aScrollBar Scrollbar being scrolled. + * @param aEventType Type of scrollbar event. + */ + void ProcessScrollEventL( CEikScrollBar* aScrollBar, + TEikScrollEvent aEventType ); + + /** + * Handles periodic events from @c iRedrawTimer. + * Such events are generated at equal time intervals while + * the view is being scrolled using the scrollbar. + * This function typically calls @c ProcessScrollEventL, + * which actually scrolls the view and causes a redraw. + */ + void HandleRedrawTimerEvent(); + +private: + /** + * Callback function for @c iRedrawTimer. + * It simply calls @c HandleRedrawTimerEvent and returns 0. + * + * @param aPtr A pointer to CMmGrid object. + * @return 0 (always). + */ + static TInt RedrawTimerCallback( TAny* aPtr ); private: /** @@ -448,6 +476,33 @@ * are blocked in the CountComponentControls() method; */ TBool iDisableChildComponentDrawing; + + /** + * This member is only used in edit mode to store the position of the pointer + * during EButton1Down event. + */ + TPoint iButton1DownPos; + + /** + * ETrue if the view is being scrolled with the scrollbar. + */ + TBool iScrollbarThumbIsBeingDragged; + + /** + * Stores the number of scrollbar events that were ignored. + * It is only used while scrolling the view using scrollbar, + * in such situation the scroll events that this object receives + * are ignored, and actual scrolling is done only when + * iRedrawTimer completes. + */ + TInt iSkippedScrollbarEventsCount; + + /** + * A timer that initiates redraws at certain time intervals. + * It is used to refresh the view while scrolling with + * the scrollbar. + */ + CPeriodic* iRedrawTimer; }; #endif // C_MMGRID_H