diff -r 8b2d6d0384b0 -r d9aefe59d544 camerauis/cameraapp/generic/inc/CamCaptureSetupSlider.h --- a/camerauis/cameraapp/generic/inc/CamCaptureSetupSlider.h Tue Feb 02 00:01:39 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,308 +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: Class for showing the EV slider* -*/ - - - -#ifndef __CCAMCAPTURESETUPSLIDER_H -#define __CCAMCAPTURESETUPSLIDER_H - -// INCLUDES -#include -#include // for TAknLayoutText - -#include "CamSettingsInternal.hrh" -#include "CamSettings.hrh" -#include "Cam.hrh" -#include "CamSettingValueObserver.h" - - -/** -* Utility class used to group together related layout information into one -* object, and construct itself using a supplied resource reader. -* -* @since 2.8 -*/ -class CCamSliderLegend : public CBase - { -public: - virtual ~CCamSliderLegend(); - - /** - * Constructs the layout information for a text object - * @since 5.0 - * @param aRect The parent rect for the layout entries - * @param aLayout Layout for the text - */ - void ConstructTextL( - TResourceReader& aReader, - const TRect& aRect, - const TAknTextComponentLayout& aLayout ); - - /** - * Constructs the layout information for an icon object - * @since 5.0 - * @param aRect The parent rect for the layout entries - * @param aLayout Layout for the icon - */ - void ConstructIconL( - TResourceReader& aReader, - const TRect& aRect, - const TAknWindowComponentLayout& aLayout ); - - /** - * Draws the legend - * @since 2.8 - * @param aGc The window contest to use for the drawing - */ - void Draw( CWindowGc& aGc ) const; - - /** - * Returns the rect for the legend - * @since 2.8 - * @return The rect for the legend - */ - TRect Rect() const; - -private: - TCamSliderLegendItem iItem; - TAknLayoutText iPosition; - HBufC* iText; - TAknLayoutRect iIconRect; - CFbsBitmap* iBitmap; - CFbsBitmap* iMask; - }; - - - -/** -* Slider for showing Exposure Value in capture settings -* -* @since 2.8 -*/ -class CCamCaptureSetupSlider : public CCoeControl - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CCamCaptureSetupSlider* NewL( const CCoeControl* aParent, - MCamSettingValueObserver* aObserver, - TCamSettingItemIds aSettingType, - TInt aSteps ); - - /** - * Destructor. - */ - virtual ~CCamCaptureSetupSlider(); - - public: // New functions - - /** - * Sets up the range and initial value of the slider - * @since 2.8 - * @param aValue The value to start with on the slider. - */ - void InitializeL( TInt aValue ); - - /** - * Returns the minium slider value - * @since 2.8 - * @return The minimum slider value - */ - TInt MinValue() const; - - /** - * Returns the maximum slider value - * @since 2.8 - * @return The maximum slider value - */ - TInt MaxValue() const; - - - /** - * Sets the minimum and maximum values of the slider control - * @since 3.0 - * @param aMin The minimum slider value - * @param aMax The maximum slider value - */ - void SetRange( TInt aMin, TInt aMax ); - - public: // Functions from base classes - - /** - * From CCoeControl - * @since 2.8 - * @param aRect Rect indicating the specific area to draw - */ - void Draw( const TRect& aRect ) const; - - /** - * From CCoeControl - * @since 2.8 - * @param aKeyEvent Details of the key event - * @param aType The keypress type - * @return TKeyResponse whether the key event was handled or ignored - */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType ) ; - - /** - * From CCoeControl - * @since 2.8 - * @return The minimum size required for the control to display - */ - TSize MinimumSize(); - - /** - * From CCoeControl - * @since 2.8 - */ - void SizeChanged(); - - /** - * From CCoeControl - * @ - */ - void HandlePointerEventL(const TPointerEvent& aPointerEvent); - - protected: // New functions - - protected: // Functions from base classes - - private: - - /** - * C++ default constructor. - */ - CCamCaptureSetupSlider( MCamSettingValueObserver* aObserver, - TCamSettingItemIds aSettingType, - TInt aSteps ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL( const CCoeControl* aParent ); - - /** - * Called to read the layout information from a resource - * @since 2.8 - */ - void ReadLayoutL(); - - /* - * Read touch layout - */ - void TouchLayoutL(); - - /* - * Read non-touch layout - */ - void NonTouchLayoutL(); - - /* - * Read touch contrast layout - */ - void TouchContrastLayoutL( const TRect& aParentRect ); - - /* - * Read non-touch contrast layout - */ - void NonTouchContrastLayoutL( const TRect& aParentRect ); - - /* - * Read touch exposure value layout - */ - void TouchEVLayoutL( const TRect& aParentRect ); - - /* - * Read non-touch exposure value layout - */ - void NonTouchEVLayoutL( const TRect& aParentRect ); - - /* - * Initialzing slider values - */ - void InitializeSliderValuesL(); - - - public: // Data - - protected: // Data - - private: // Data - - // Bitmap and mask for slider "shaft" - CFbsBitmap* iBitmapShaft; - CFbsBitmap* iBitmapShaftMask; - - // Bitmap and mask for slider "thumb" - CFbsBitmap* iBitmapThumb; - CFbsBitmap* iBitmapThumbMask; - - // Bitmap and mask for pressed slider "thumb" - CFbsBitmap* iBitmapThumbSelected; - CFbsBitmap* iBitmapThumbSelectedMask; - - // Bitmap and mask for slider "thumb" currently in use - CFbsBitmap* iBitmapThumbCurrent; - CFbsBitmap* iBitmapThumbCurrentMask; - - // Current level to be indicated by the thumb - TInt iValue; - - // Pointer to the observer of slider events - MCamSettingValueObserver* iSettingObserver; - - // Point of where the top-left of the thumb bitmap will be drawn - TPoint iThumbPoint; - - // The values that - RPointerArray iLegendArray; - - // Layout structure for the Shaft - TAknLayoutRect iShaftLayout; - - // Layout structure for the Thumb - TAknLayoutRect iThumbLayout; - - // Main parent - TRect iLayoutAreaRect; - - // The minimum size the control requires to be drawn - TSize iMinimumSize; - - // The parent control of the slider - const CCoeControl* iParentControl; - - // The maximum slider value - TInt iMaxSliderValue; - - // The minium slider value - TInt iMinSliderValue; - - // the number of slider values - TInt iNumSliderValues; - - // Identifies which setting is being edited - TCamSettingItemIds iSettingType; - - // number of slider steps - TInt iSteps; - }; - -#endif // __CCAMCAPTURESETUPSLIDER_H - -// End of File