--- a/vtuis/videotelui/inc/tvtuiappstatebase.h Thu Aug 19 09:57:36 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,256 +0,0 @@
-/*
-* Copyright (c) 2007 - 2008 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: Base class for application states.
-*
-*/
-
-
-#ifndef T_VTUIAPPSTATEBASE_H
-#define T_VTUIAPPSTATEBASE_H
-
-#include <e32base.h>
-#include <mvtengsessioninfo.h>
-#include "mvtuistatecontext.h"
-#include "mvtuishutterobserver.h"
-#include "tvtuistates.h"
-
-/**
-* Base class for application states related to application startup, normal
-* operation and shutdown. AppUi delegates decision making by forwarding
-* events/commands it receives to current state.
-* Not all event handlers declared by the base class are applicable in
-* all concrete states. All methods returning TEventResponse imply that it may
-* consume the event completely and caller should not process it further.
-*
-* It should be kept in mind that as new functionality is added to application,
-* state classes may need changes if e.g. handling of specific event should be
-* allowed in appUi. By default event handler in specific state may consume all
-* events. Note that in this context e.g. HandleCommandL is considered as an
-* event handler.
-*
-* @since S60 v3.2
-*/
-class TVtUiAppStateBase : public MVtUiShutterObserver
- {
-public: // new functions
-
- /**
- * Return value from state's event handlers.
- */
- enum TEventResponse
- {
- /** Event was handled by a state and should
- * not be further processed by caller.
- */
- EEventHandled,
- /** Event can be handled by caller. */
- EEventNotHandled
- };
-
- /**
- * Performs state dependent actions when phase 1 of
- * startup is completed.
- */
- virtual void AppUiStartupPhase1DoneL();
-
- /**
- * Performs state dependent actions when startup fails.
- */
- virtual void AppUiStartupFailedL();
-
- /**
- * Performs state dependent actions when phase 2 of
- * startup is completed.
- */
- virtual void AppUiStartupPhase2DoneL();
-
- /**
- * Handles completion of shutdown.
- */
- virtual void ShutdownDoneL();
-
- /**
- * Handles completion of an VT engine command.
- * @param aCommand completed command
- * @param aError error
- * @return event response, is caller allowed to handle event
- */
- virtual TEventResponse HandleVTCommandPerformedL(
- const TVtEngCommandId aCommand,
- const TInt aError );
-
- /**
- * Handles event from the engine.
- * @param aEvent
- * @return event response, is caller allowed to handle event
- */
- virtual TEventResponse HandleVtEventL( const TInt aEvent );
-
- /**
- * Handles command from the user (or application framework).
- * @param aCommand
- * @return event response, is caller allowed to handle event
- */
- virtual TEventResponse HandleCommandL( const TInt aCommand );
-
- /**
- * Performs state dependent actions for foreground change event.
- * @param aIsForeground foreground status passed from UI framework
- * @return ETrue if application should behave as in foreground
- */
- virtual TBool HandleForegroundChangedL( const TBool aIsForeground );
-
- /**
- * Performs state dependent previous actions for foreground change event.
- * @param aIsForeground foreground status passed from UI framework
- * @return ETrue if application should behave as in foreground
- */
- virtual TBool PreHandleForegroundChangedL( const TBool aIsForeground );
- /**
- * Performs state dependent actions for layout change.
- */
- virtual void HandleLayoutChangedL();
-
- /**
- * Sends DTMF tone if allowed by current state.
- * @param aTone DTMF tone to send
- */
- virtual void StartDtmfTone( const TChar& aTone );
-
- /**
- * Stops DTMF tone if allowed by current state.
- */
- virtual void StopDtmfTone();
-
- /**
- * Sets initial application state.
- * @param aCtx state context providing services to states
- * @param aUiStates ui states
- */
- static void SetInitialStateL(
- MVtUiStateContext& aCtx,
- TVtUiStates& aUiStates);
-
- /**
- * Get whether the shutdown requested
- * @return ETrue if shutdown requested
- */
- static TBool ShutdownRequested();
-
-protected: // for concrete state classes
-
- /**
- * Destructor, for cleanup.
- */
- virtual ~TVtUiAppStateBase();
-
- /**
- * Performs entry action for a state.
- */
- virtual void OpenL();
-
- /**
- * Performs exit action for a state and deletes that state.
- */
- virtual void Close();
-
- /**
- * Sets current state.
- */
- void ChangeStateL( TVtUiAppStateBase& aNewState );
-
- /**
- * Sets transition to resetting state as cleanup item.
- */
- void CleanupResetPushL();
-
- /**
- * Starts shutdown when leave occurred.
- */
- static void TransitionToReset( TAny* aAny );
-
-
- /**
- * Ends the call if necessary and starts shutdown.
- * @return ETrue if shutdown started.
- */
- TBool CheckEndActiveCallL();
-
- /**
- * Returns engine session state.
- * @param aUpdate is state forced to update
- * @return session state
- */
- MVtEngSessionInfo::TSessionState SessionState(
- const TBool aUpdate ) const;
-
- /**
- * Sets forced lights state in the system.
- */
- void SetLightsState( const TBool aOn );
-
- /**
- * Delegates engine command execution to the state context.
- */
- template < typename T >
- inline void ExecuteEngineCommand(
- TInt aCommand, T& aParam );
-
- /**
- * Sets execution state.
- */
- void SetExecState( const TVtUiStates::TVtUiExecState aState );
-
-protected: // constructor
-
- // c++ constructor
- TVtUiAppStateBase( MVtUiStateContext& aCtx, TVtUiStates& aUiStates );
-
-private: // from MVtUiShutterObserver
-
- /**
- * Handles 'shutdown ready' event.
- */
- virtual void HandleShutdownReady();
-
-private: // new functions
-
- /**
- * Updates applications lock state and sends to background if
- * the device is locked.
- */
- void HandleDeviceLockEventL( const TBool aDeviceIsLocked );
-
-protected: // data members
-
- // Context providing services to states
- MVtUiStateContext& iCtx;
-
- // Various application specific state information
- TVtUiStates& iUiStates;
-
- /** Prevents sending end call command to call handling if ETrue.
- * It is not allowed when call clearing is network originated.
- */
-
- /**
- * shutdown request received
- */
- static TBool iShutdownRequested;
-
- };
-
-#include "tvtuiappstatebase.inl"
-
-#endif // T_VTUIAPPSTATEBASE_H