--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/camerauis/cameraapp/generic/inc/CamApplicationPane.h Wed Sep 01 12:30:54 2010 +0100
@@ -0,0 +1,180 @@
+/*
+* 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: Control for containing the NaviPane
+*
+* CCopyright © 2007 Nokia. All rights reserved.
+* This material, including documentation and any related computer
+* programs, is protected by copyright controlled by Nokia. All
+* rights are reserved. Copying, including reproducing, storing,
+* adapting or translating, any or all of this material requires the
+* prior written consent of Nokia. This material also contains
+* confidential information which may not be disclosed to others
+* without the prior written consent of Nokia.
+
+*
+*
+*/
+
+
+#ifndef CAMAPPLICATIONPANE_H
+#define CAMAPPLICATIONPANE_H
+
+// INCLUDES
+#include <coecntrl.h>
+#include <aknutils.h>
+#include "CamSettings.hrh"
+#include "CamAppController.h"
+
+// FORWARD DECLARATIONS
+class MAknsSkinInstance;
+class CAknsBasicBackgroundControlContext;
+class CCamNaviCounter;
+class CCamNaviProgressBar;
+class CCamBurstThumbnailGridModel;
+class CCamTitlePane;
+
+// CLASS DECLARATION
+
+/**
+* Control for containing the NaviPane
+* @since 2.8
+*/
+class CCamApplicationPane : public CCoeControl
+ {
+ private:
+ // Enumeration used to indicate the pane currently visible
+ enum TAppPane
+ {
+ EAppPaneUndefined,
+ EAppPaneCounter,
+ EAppPaneProgress
+ };
+
+ public: // Constructors and destructor
+ /**
+ * Static factory construction function
+ * @since 3.0
+ * @param aController Reference to CCamAppController
+ * @return pointer to constructed instance of CCamApplicationPane
+ */
+ static CCamApplicationPane* NewL( CCamAppController& aController );
+
+ /**
+ * Destructor.
+ */
+ ~CCamApplicationPane();
+
+ public: // New functions
+ /**
+ * Shows the NaviProgress control in the Application Pane
+ * @since 3.0
+ */
+ void ShowProgress();
+
+ /**
+ * Shows the NaviCounter control in the Application Pane
+ * @since 3.0
+ */
+ void ShowCounter();
+
+ /**
+ * Sets the capture mode the pane should indicate
+ * @since 3.0
+ * @param aCaptureMode The capture mode to use
+ */
+ void SetCaptureMode( TCamCameraMode aMode );
+
+ /**
+ * Sets the burst model to use if app pane showing burst filenames
+ * @since 3.0
+ * @param aModel The grid model to get filenames from
+ */
+ void SetBurstModelL( CCamBurstThumbnailGridModel* aModel );
+
+ /**
+ * Sets the owned panes to a known good state (all invisible)
+ * @since 3.0
+ */
+ void InitialisePanesL();
+
+ public: // Functions from base classes
+ /**
+ * Returns the number of component controls
+ * @since 3.0
+ * @return The number of owned controls to display
+ */
+ TInt CountComponentControls() const;
+
+ /**
+ * Returns the specified component control
+ * @since 3.0
+ * @param aIndex The index of the control to return
+ * @return Pointer to the specified control
+ */
+ CCoeControl* ComponentControl( TInt aIndex ) const;
+
+ protected:
+ /**
+ * C++ constructor.
+ * @since 3.0
+ * @param aController Reference to CCamAppController
+ */
+ CCamApplicationPane( CCamAppController& aController );
+
+ /**
+ * Symbian OS 2nd phase constructor.
+ * @since 3.0
+ */
+ void ConstructL();
+
+ private: // Functions from base classes
+
+ /**
+ * From CCoeControl
+ * @since 3.0
+ * Set the size and position of its component controls.
+ */
+ void SizeChanged();
+
+ /**
+ * From CCoeControl Draw the view
+ * @since 3.0
+ * @param aRect area where to draw
+ */
+ void Draw( const TRect& aRect ) const;
+
+
+ protected: //data
+ // The current pane displayed in the Application Pane
+ TAppPane iPaneInUse;
+
+ // Instance of Navi Counter control
+ CCamNaviCounter* iNaviCounter;
+
+ // Instance of Navi Progress control
+ CCamNaviProgressBar* iNaviProgressBar;
+
+ // Controller used to initialise the Navi controls. Not owned
+ CCamAppController& iController;
+
+ // Instance of the Title Pane control
+ CCamTitlePane* iTitlePane;
+
+ // Layout for the Application Pane rectangle
+ TAknLayoutRect iAppPaneLayoutRect;
+ };
+
+#endif // CAMAPPLICATIONPANE_H
+
+// End of File