diff -r 4ea6f81c838a -r 0e9bb658ef58 mulwidgets/alfscrollbarwidget/inc/alfscrollbarlongtaptimer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mulwidgets/alfscrollbarwidget/inc/alfscrollbarlongtaptimer.h Wed Sep 01 12:23:18 2010 +0100 @@ -0,0 +1,92 @@ +/* +* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Timer for creating longtap event +* +*/ + +#ifndef __ALF_SCROLLBARLLONGTAPTIMER_H__ +#define __ALF_SCROLLBARLLONGTAPTIMER_H__ + +#include +#include +#include + +namespace Alf + { + +// Forward declarations +class AlfScrollBarBaseElement; + +class AlfScrollBarLongTapTimer: public CActive + { + + enum TState + { + //To indicate the event is in running state. + ERunning, + + //To indicate the event is in stopped state. + EStopped + }; +public: +/** + * Constructor + * @param aBaseElement . + * @since S60 ?S60_version + */ + AlfScrollBarLongTapTimer(IAlfScrollBarDefaultBaseElement* aBaseElement); + +/** + * Destructor + */ + ~AlfScrollBarLongTapTimer(); + +/** + * Start the Timer. + */ + void Start(); + + /** + * Stops the Timer. + */ + void Stop(); + + /** + * user code runs under this active object. + */ + void RunL(); + + /** + * Implements cancellation of an outstanding request. + */ + void DoCancel(); + +private: + RTimer iTimer; + TState iState; + + /** + * Instance of IAlfScrollBarBaseElement. + */ + IAlfScrollBarDefaultBaseElement* iBaseElement; + + /** + * Instance of TAlfEvent. + */ + TAlfEvent* mEvent; + }; + + } + +#endif // __ALF_SCROLLBARLLONGTAPTIMER_H__