--- a/voicerecorder/RecViewSrc/CVRRecViewContainer.h Mon Jan 18 20:21:38 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,315 +0,0 @@
-/*
-* Copyright (c) 2002-2006 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:
-* A compound control class. It is responsible for owning CVRButtonPanel
-* and CVRStateInfoPanel. It also handles the changing of softkeys, menubar
-* and volume control.
-*
-*/
-
-
-#ifndef __CVRRECVIEWCONTAINER_H__
-#define __CVRRECVIEWCONTAINER_H__
-
-// INCLUDES
-#include <bldvariant.hrh>
-#include <coecntrl.h>
-#include "MVRObserver.h"
-#include "MVRVolumeEventObserver.h"
-#include <AknUtils.h>
-
-// FORWARD DECLARATIONS
-class CVRButtonPanel;
-class CVRStateInfoPanel;
-class MVRButtonPanelModel;
-class MVRDecoratorModel;
-class MVRStateInfoModel;
-class MVRKeyObserver;
-class MVRVolumeChangeObserver;
-class MVRVolumeEventObserver;
-class CVRRecView;
-class CAknNavigationDecorator;
-class CAknNavigationControlContainer;
-class MAknsSkinInstance;
-class CAknsBasicBackgroundControlContext;
-class CVRRemConObserver;
-
-
-// CLASS DEFINITION
-/**
-* A compound control class. It is responsible for owning CVRButtonPanel
-* and CVRStateInfoPanel. It also handles the changing of softkeys, menubar,
-* volume control and navipane. It also observers volume changes through
-* MRemConCoreApiTargetObserver interface.
-*/
-NONSHARABLE_CLASS( CVRRecViewContainer )
- : public CCoeControl,
- public MVRObserver,
- public MVRVolumeEventObserver,
- public MCoeControlObserver
- {
- public: // Constructors and destructor
-
- /**
- * Default constructor.
- */
- CVRRecViewContainer();
-
- /**
- * Destructor
- */
- ~CVRRecViewContainer();
-
- /**
- * 2nd phase constructor
- * @param aRect The screen rectangle for this component
- * @param aButtonModelPointer to a button panel observer (or NULL)
- * @param aDecoratorModel Pointer to a decorator observer (or NULL)
- * @param aStateInfoModel Pointer to a state info observer (or NULL)
- * @param aOwningView Pointer to the view that owns us.
- */
- void ConstructL( const TRect& aRect,
- MVRButtonPanelModel* aButtonModel,
- MVRDecoratorModel* aDecoratorModel,
- MVRStateInfoModel* aStateInfoModel,
- CVRRecView* aOwningView );
-
- public: // from CCoeControl
-
- /**
- * Specifies the help context for this form.
- * @param aContext the context IDs are placed here
- */
- void GetHelpContext( TCoeHelpContext& aContext ) const;
-
- public:
- // from CCoeControl
-
- /**
- * Called by the framework to get the number of sub-components
- * contained in this component.
- * @return The number of component controls contained by this control
- */
- TInt CountComponentControls() const;
-
- /**
- * Called by the framework to get a specified sub-component
- * of this component.
- * @param aIndex The index of the component to get.
- * @return The component control with an index of aIndex.
- */
- CCoeControl* ComponentControl( TInt aIndex ) const;
-
- /**
- * When a key event occurs, the control framework calls this function
- * for each control on the control stack, until one of them can process
- * the key event (and returns EKeyWasConsumed).
- * @param aKeyEvent The key event.
- * @param aType The type of key event: EEventKey, EEventKeyUp
- * or EEventKeyDown
- * @return Indicates whether or not the key event was used by this
- * control
- */
- TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
- TEventCode aType );
-
- private: // from CCoeControl
-
- /*
- * From CCoeControl
- * @see CCoeControl
- */
- void SizeChanged();
-
- /**
- * Draws this control.
- * @param aRect The area that needs updating. Ignored.
- */
- void Draw( const TRect& aRect ) const;
-
- /*
- * From CCoeControl
- * @see CCoeControl
- */
- TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
-
- /*
- * From CCoeControl
- * @see CCoeControl
- */
- void HandlePointerEventL( const TPointerEvent& aPointerEvent );
-
- /**
- *From MCoeControlObserver. To handle the volume events for touch UI.
- */
- void HandleControlEventL( CCoeControl* aControl, TCoeEvent aEventType );
-
-
-
- public: // from MVRObserver
-
- /**
- * Called to notify a change in the observed subject's state.
- */
- void Update( TVRUpdateCommand aCommand = EVRUpdate );
-
- public: // from MVRVolumeEventObserver
-
- /**
- * Handles volume change event received from either side volume
- * keys or left-right rocker presses.
- * @param aKeyEvent The key event. Will be forwarded to CAknVolumeControl
- * @param aType The type of key event: EEventKey, EEventKeyUp
- * or EEventKeyDown. Will be forwarded to CAknVolumeControl
- */
-
- TInt HandleVolumeChangeL( const TKeyEvent& aKeyEvent,
- TEventCode aType );
-
-
- public: // new methods
-
- /**
- * Registers an observer for receiving
- * key event notifications from this class.
- * @param aObserver The observer object.
- */
- void SetKeyObserver( MVRKeyObserver* aObserver );
-
- /**
- * Registers an observer for receiving
- * audio volume change notifications from this class.
- * @param aObserver The observer object.
- */
- void SetVolumeChangeObserver( MVRVolumeChangeObserver* aObserver );
-
- /**
- * Updates the layout of all child controls to current active
- * layout (Euro, Apac, Arabic/Hebrew)
- */
- void UpdateLayoutL();
-
- /**
- * Handles a change to the application's resources
- * @param aType The type of changed resource
- */
- void HandleResourceChangeL( TInt aType );
-
- /**
- * Returns the currently focused button index in Button Panel
- * @return The focused button index
- */
- TInt FocusedButton() const;
-
- /**
- * Gives the update command to Button Panel
- * @param Update command
- */
- void UpdateButtonPanel( TVRUpdateCommand aCommand );
-
-
- private:
-
- /**
- * Tells the volume observer to update the volume
- */
- void UpdateVolumeObserver();
-
- /**
- * Updates the navipane according to the current IHF setting
- */
- void UpdateVolumeControlL();
-
- /**
- * Updates the CBA Buttons (LSK, RSK, MSK)
- */
- void UpdateCBA();
-
- private: // data
-
- /**
- * The ihf volume control (in navi pane),
- */
- CAknNavigationDecorator* iIhfVolumeControl;
-
- /**
- * The ear piece volume control (in navi pane),
- */
- CAknNavigationDecorator* iEarPieceVolumeControl;
-
- /**
- * A pointer to the active volume control (ihf or ear piece)
- */
- CAknNavigationDecorator* iActiveVolumeControl;
-
- /**
- * Pointer to the navi pane,
- * used as a short cut. Not owned.
- */
- CAknNavigationControlContainer* iNaviPane;
-
- /**
- * Pointer to the button panel component. Owned.
- */
- CVRButtonPanel* iButtonPanel;
-
- /**
- * Pointer to the state info panel component. Owned.
- */
- CVRStateInfoPanel* iStateInfoPanel;
-
- /**
- * Pointer to the view that owns us. Not owned.
- */
- CVRRecView* iOwningView;
-
- /**
- * Pointer to the decorator data model. Not owned.
- */
- MVRDecoratorModel* iModel;
-
- /**
- * Pointer to the key event observer (or NULL). Not owned.
- */
- MVRKeyObserver* iKeyObserver;
-
- /**
- * Pointer to the audio volume change observer (or NULL). Not owned.
- */
- MVRVolumeChangeObserver* iVolumeChangeObserver;
-
- TRect iHorizontalLine;
- TRect iVerticalLine;
-
- TAknLayoutRect iHorizontalLineRect;
- TAknLayoutRect iVerticalLineRect;
- TAknLayoutRect iButtonPanelRect;
-
- /**
- * Skin instance from AknsUtils. Not owned.
- */
- MAknsSkinInstance* iSkinInstance;
-
- /**
- * Background context for clearing screen. Owned.
- */
- CAknsBasicBackgroundControlContext* iBackgroundSkinContext;
-
- /**
- * Notifier for side volume key events. Owned.
- */
- CVRRemConObserver* iRemConObserver;
- };
-
-#endif // __CVRRECVIEWCONTAINER_H__