diff -r 000000000000 -r 2f259fa3e83a uifw/AvKon/src/aknprogresstimer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uifw/AvKon/src/aknprogresstimer.cpp Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,71 @@ +/* +* Copyright (c) 2002 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: +* +*/ + +// AknProgressTimer.cpp: implementation of the CAknProgressTimer class. +// +////////////////////////////////////////////////////////////////////// + +#include "aknnotecontrol.h" +#include "aknprogresstimer.h" +#include + +////////////////////////////////////////////////////////////////////// +// Construction/Destruction +////////////////////////////////////////////////////////////////////// + +CAknProgressTimer::CAknProgressTimer() : CTimer(EActivePriorityClockTimer) + { + + } + + +CAknProgressTimer::~CAknProgressTimer() + { + Cancel(); + } + +void CAknProgressTimer::AdjustRunningState() + { + (iModel->iRunning) ? Queue() : Cancel(); + } + +void CAknProgressTimer::ConstructL(TTimerModel *aModel,CAknNoteControl *aContainer,TCallBack aCallBack) + { + iCallBack = aCallBack; + CTimer::ConstructL(); + CActiveScheduler::Add(this); + iModel = aModel; + iContainer = aContainer; + iContainer->SetFinalProgressValue(iModel->iFinalValue); + if (iModel->iRunning) + Queue(); + } + +void CAknProgressTimer::Queue() + { + After(10000 * iModel->iHundreths); + } + +void CAknProgressTimer::RunL() + { + if (iContainer->IncrementBarsAndDraw(iModel->iIncrement)) + Queue(); + else + iCallBack.CallBack(); + } + +// End of File