--- a/camerauis/cameraapp/generic/inc/CamCaptureSetupViewBase.h Thu Aug 19 09:36:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,300 +0,0 @@
-/*
-* Copyright (c) 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: Base class for pre capture views*
-*/
-
-
-#ifndef CAMCAPTURESETUPVIEWBASE_H
-#define CAMCAPTURESETUPVIEWBASE_H
-
-// INCLUDES
-#include "CamViewBase.h"
-
-// FORWARD DECLARATIONS
-class CCamCaptureSetupControlHandler;
-class CCamCaptureSetupContainer;
-class CCamShootingModeContainer;
-class CCamInfoListBoxContainer;
-
-// CLASS DECLARATION
-
-/**
-* Base class for views that need to run capture setup
-*
-* @since 2.8
-*/
-class CCamCaptureSetupViewBase : public CCamViewBase
- {
- public: // data types
-
- /**
- * Setting mode
- */
- enum TCamSettingMode
- {
- ECamSettingModeNone,
- ECamSettingModeCaptureMenu,
- ECamSettingModeCapture,
- ECamSettingModeScene,
- ECamSettingModeInfoListBox
- };
-
- // Info listbox mode
- enum TCamInfoListBoxMode
- {
- EInfoListBoxModeNone,
- EInfoListBoxModeTimeLapse,
- EInfoListBoxModeISO
- };
-
- public: // Constructors and destructor
-
- /**
- * Destructor.
- * @since 2.8
- */
- virtual ~CCamCaptureSetupViewBase();
-
- public: // Functions from base classes
-
- /**
- * Handle events sending app to foreground or background
- * @param aForeground whether the event brings the app to fore or background
- */
- void HandleForegroundEventL( TBool aForeground );
-
- /**
- * From CAknView Handle commands
- * @since 2.8
- * @param aCommand command to be handled
- */
- void HandleCommandL( TInt aCommand );
-
- /**
- * Handle change of focus to another application
- * This only handles another application coming to the foreground when
- * the camera application is already in the background behind an eikon
- * server window
- * @since 2.8
- */
- void HandleFocusLossL();
-
- /**
- * Revert to normal mode
- * @since 2.8
- */
- virtual void ExitAllModesL();
-
- public: // New functions
-
- /**
- * From CAknView deactivate the view (free resources)
- * @return void
- */
- void DoDeactivate();
-
- /**
- * Sets the iSceneSettingModeActive flag
- * @param aActive What to set iSceneSettingModeActive to
- */
- void SetSceneSettingMode(TBool aActive);
-
- /**
- * Sets the iInfoListBoxActive flag
- * @param aActive What to set iInfoListBoxActive to
- */
- void SetInfoListBoxMode(TBool aActive, TBool aFullySkinned=EFalse);
-
- /**
- * Sets the iCaptureSetupModeActive flag
- * @param aActive What to set iCaptureSetupModeActive to
- */
- void SetCaptureSetupModeActive(TBool aActive);
-
- protected: // New functions
-
- /**
- * C++ default constructor.
- * @param aController Reference to either the application controller
- * base class or test base class
- * @since 2.8
- */
- CCamCaptureSetupViewBase( CCamAppController& aController );
-
- /**
- * Creates a control handler for the appropriate control type
- * @since 2.8
- * @param aSetupCommand The command that initiated capture setup mode, used to
- * determine the required control type
- */
- void CreateCaptureSetupControlHandlerL( TInt aSetupCommand );
-
- /**
- * Enter capture setup mode.
- * Creates a capture setup control handler and a second container to replace
- * the normal container on the control stack. Updates the Cba, title pane
- * and navi pane.
- * Derived classes should override this method to add any additional
- * functionality they require e.g. starting the viewfinder in the
- * appropriate capture mode if it is not already active.
- * @since 2.8
- * @param aSetupCommand The command that initiated capture setup mode, used to
- * determine the required control type
- */
- virtual void SwitchToCaptureSetupModeL( TInt aSetupCommand, TBool aFullScreenVF=ETrue );
-
- /**
- * Exit capture setup mode.
- * Replaces the normal container on the control stack.
- * Reverts the Cba and title pane.
- * Derived classes should override this method to add any additional
- * functionality they require e.g exiting the viewfinder and
- * reverting the navi pane if necessary when switching back to the view's
- * normal mode.
- * @since 2.8
- */
- virtual void ExitCaptureSetupModeL();
-
-
- /**
- * Enter scene setting mode.
- * Creates a container to replace the normal container on the control stack.
- * Updates the Cba, title pane and navi pane.
- * @since 2.8
- */
- virtual void SwitchToSceneSettingModeL();
-
- /**
- * Exit capture setup mode.
- * Replaces the normal container on the control stack.
- * Reverts the Cba and title pane.
- * @since 2.8
- */
- virtual void ExitSceneSettingModeL();
-
- /**
- * Enter InfoListBox mode
- * Creates a container to replace the normal container on the control stack.
- * Updates the Cba, title pane and navi pane.
- * @param aMode
- * @since 3.0
- */
- virtual void SwitchToInfoListBoxL( TCamInfoListBoxMode aMode, TBool aFullySkinned=EFalse );
-
- /**
- * Handle InfoListBox item selection
- * Updates the Cba, title pane and navi pane.
- * @since 3.0
- */
- virtual void HandleInfoListBoxSelectionL();
-
- /**
- * Exit InfoListBox
- * Updates the Cba, title pane and navi pane.
- * @since 3.0
- */
- virtual void ExitInfoListBoxL();
-
- /**
- * Determine the title pane resource for the current setup mode
- * @since 2.8
- * @return Id of the title pane text for current setup mode
- */
- TInt SetupModeTitlePaneResourceId();
-
- /**
- * From MEikMenuObserver Changes MenuPane dynamically
- * @param aResourceId Resource Id
- * @param aMenuPane Handle to menu pane
- * @since 2.8
- */
- void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
-
- void CaptureSetupModeSelection();
- private:
-
- /**
- * Cleans up the capture setup container if a leave occurs
- * while switching to capture setup mode
- * @param aAny pointer to the object to cleanup
- * @since 2.8
- */
- static void CleanupCaptureSetupContainer( TAny* aAny );
-
- /**
- * Cleans up the scene setting container if a leave occurs
- * while switching to scene setting mode
- * @param aAny pointer to the object to cleanup
- * @since 2.8
- */
- static void CleanupSceneSettingContainer( TAny* aAny );
-
- /**
- * Cleans up InfoListBox if a leave occurs
- * while switching to scene setting mode
- * @param aAny pointer to the object to cleanup
- * @since 2.8
- */
- static void CleanupInfoListBox( TAny* aAny );
-
- /**
- * Cleans up the containers if a leave occurs
- * while exiting scene setting/capture setup mode
- * @param aAny pointer to the object to cleanup
- * @since 2.8
- */
- static void CleanupExit( TAny* aAny );
-
- protected: // data
- // Used to determine when the view is in capture setup mode
- TBool iCaptureSetupModeActive;
-
- // Used to determine when the view is in scene settings mode
- TBool iSceneSettingModeActive;
-
- // Used to determine InfoListBox is visible
- TBool iInfoListBoxActive;
-
- // Resource Id for title view when in capture setup or scene setting mode
- TInt iSettingModeTitleResourceId;
-
- // Used to determine when user has pressed change button
- TBool iChangeButtonPressed;
-
- protected:
- // A container that the view uses when in scene settings mode
- CCamShootingModeContainer* iSceneSettingContainer;
-
- // Container for other settings using info listbox
- CCamInfoListBoxContainer* iInfoListBoxContainer;
- // Purpose of current instance of iInfoListBoxContainer
- TCamInfoListBoxMode iInfoListBoxMode;
-
- TBool iForceAvkonCBA;
- private: // data
-
- // Handler for the capture setup control
- CCamCaptureSetupControlHandler* iCaptureSetupControlHandler;
-
- // A second container that the view uses when in capture setup mode
- CCamCaptureSetupContainer* iCaptureSetupContainer;
-
- // Stores the previous capture mode of camera before entering Infolistbox mode
- TCamPreCaptureMode iPrevCaptureMode;
-
- };
-
-#endif // CAMCAPTURESETUPVIEWBASE_H
-
-// End of File