vtuis/videotelui/inc/tvtuiappstatebase.h
branchRCL_3
changeset 24 f15ac8e65a02
parent 23 890b5dd735f8
child 25 779871d1e4f4
--- 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