mpx/tsrc/public/basic/common/testviewframework/src/scrollertimer.cpp
changeset 64 92dbd2a406d9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mpx/tsrc/public/basic/common/testviewframework/src/scrollertimer.cpp	Mon Oct 04 00:50:27 2010 +0300
@@ -0,0 +1,242 @@
+/*
+* Copyright (c) 2002 - 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:  CScrollerTimer class implementation
+*
+*/
+
+#include "scrollertimer.h"
+#include "consolemain.h"
+
+// CONSTANTS
+const TInt KScrollPeriod = 300000;		   // Scrolling speed
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: ConstructL
+
+    Description: Second level constructor
+
+    Parameters: CConsoleMain*             :in:      Pointer to main console
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+void CScrollerTimer::ConstructL( CConsoleMain* aMain )
+    {
+
+    // Store module information
+    iMain = aMain;
+	iTimer.CreateLocal();
+
+	CActiveScheduler::Add ( this );
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: CScrollerTimer
+
+    Description: Constructor.
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+CScrollerTimer::CScrollerTimer() : CActive (CActive::EPriorityStandard)
+    {
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: ~CScrollerTimer
+
+    Description: None
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+CScrollerTimer::~CScrollerTimer( )
+    {
+
+	Cancel();
+	iTimer.Close();
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: DoCancel
+
+    Description: None
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+void CScrollerTimer::DoCancel( )
+    {
+
+	iTimer.Cancel();
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: NewL
+
+    Description: Construct a new CScrollerTimer object
+
+    Parameters: CConsoleMain*             :in:      Pointer to main console               
+
+    Return Values: CScrollerTimer*                         New CScrollerTimer object
+
+    Errors/Exceptions: Leaves if memory allocation or ConstructL leaves
+
+    Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+CScrollerTimer* CScrollerTimer::NewL( CConsoleMain* aMain )
+    {
+
+    CScrollerTimer* self = new ( ELeave ) CScrollerTimer();
+    CleanupStack::PushL( self );
+    self->ConstructL( aMain );
+    CleanupStack::Pop( self );
+    return self;
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: RunError
+
+    Description: None
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+TInt CScrollerTimer::RunError( TInt aError)
+    {
+
+	return aError;
+
+    }    
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: RunL
+
+    Description: None
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+void CScrollerTimer::RunL( )
+    {
+
+	iMain->TimerUpdate();
+
+	// Restart request
+	SetActive();
+	iTimer.After ( iStatus, KScrollPeriod );
+
+    }
+
+/*
+-------------------------------------------------------------------------------
+
+    Class: CScrollerTimer
+
+    Method: StartL
+
+    Description: None
+
+    Parameters: None
+
+    Return Values: None
+
+    Errors/Exceptions: None
+
+    Status: Draft
+    
+-------------------------------------------------------------------------------
+*/
+void CScrollerTimer::Start( )
+    {
+
+	SetActive();
+	iTimer.After ( iStatus, KScrollPeriod );	
+
+    }