diff -r b31261fd4e04 -r ccd8e69b5392 mmsharing/mmshui/inc/musuilevelindicator.h --- a/mmsharing/mmshui/inc/musuilevelindicator.h Tue Feb 02 00:09:07 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,200 +0,0 @@ -/* -* Copyright (c) 2005 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 displaying icons in viewfinder view -* -*/ - - -#ifndef MUSUILEVELINDICATOR_H -#define MUSUILEVELINDICATOR_H - -#include "musuidefinitions.h" -#include "musuiactivetimerobserver.h" - -// SYSTEM -#include -#include -#include - -class MAknsSkinInstance; -class CGulIcon; -class MMusUiLevelIndicatorObserver; -class CAknSlider; - -/** -* Class for displaying icons in viewfinder view -*/ -class CMusUiLevelIndicator : public CCoeControl, - public MCoeControlObserver, - public MMusUiActiveTimerObserver - { - - - public: // Constructors and destructor - - /** - * Symbian OS two-phased constructor. - * @param aController reference to CCcorController - */ - static CMusUiLevelIndicator* NewL( - TAknOrientation aLayout, - TInt aMinLevel, - TInt aMaxLevel, - CCoeControl* aParent, - const TRect& aRect, - MMusUiLevelIndicatorObserver* aObserver ); - - /** - * Symbian OS two-phased constructor. - * @param aController reference to CCcorController - */ - static CMusUiLevelIndicator* NewLC( - TAknOrientation aLayout, - TInt aMinLevel, - TInt aMaxLevel, - CCoeControl* aParent, - const TRect& aRect, - MMusUiLevelIndicatorObserver* aObserver ); - - /** - * Destructor. - */ - ~CMusUiLevelIndicator(); - - - public: // New functions - - /** - * - */ - void SetLevelL( TMusUiIndicatorType aType, - TInt aLevel, - TBool aUseTimer ); - - /** - * - */ - TInt GetLevel(TMusUiIndicatorType aType); - - /** - * - */ - void SetRange( TInt aMinLevel, TInt aMaxLevel, TBool aUseTimer); - - /** - * - */ - void SetIndicatorType( TMusUiIndicatorType aType ); - - - private: // From CCoeControl - - /** - * Handles the size change events. - * - */ - virtual void SizeChanged(); - - virtual void Draw(const TRect& aRect) const; - - virtual TInt CountComponentControls() const; - - virtual CCoeControl* ComponentControl( TInt aIndex ) const; - - virtual void HandleResourceChange( TInt aType ); - - - private: // From CCoeControlObserver - - virtual void HandleControlEventL( CCoeControl* aControl, - TCoeEvent aEventType ); - - - private: // From MMusUiActiveTimerObserver - - virtual void TimerComplete( CMusUiActiveTimer* aTimer ); - - - private: // Constructors and destructor - - /** - * C++ constructor - */ - CMusUiLevelIndicator( TInt aMinLevel, - TInt aMaxLevel, - MMusUiLevelIndicatorObserver* aObserver ); - - /** - * Symbian 2nd phase constructor. - */ - void ConstructL( TAknOrientation aLayout, - CCoeControl* aParent, - const TRect& aRect ); - - - private: // HELPERS - - void ConstructImageL( CEikImage* aImage, - MAknsSkinInstance* aSkin, - const TAknsItemID& aId, - TInt aBitmapId, - TInt aMaskId, - TParse aParse ); - - /** - * Callback for disable level indicator. - * @since 2.8 - * @return KErrNone - */ - //static TInt DisableLevelIndicator( TAny* aThis ); - //void DisableTimer(); - //void EnableTimer(); - - - private: //data - - - TRect iParentRect; - - TRect iViewfinderRect; - - TInt iMinLevel; - - TInt iMaxLevel; - - TInt iZoomLevel; - - TInt iBrightnessLevel; - - TInt iDurationLevel; - - CMusUiActiveTimer* iDisableLevelTimer; - - TInt iIndicatorType; - - CAknSlider* iSlider; - - CMusUiActiveTimer* iSliderEventTimer; - - /** - * NOT OWN!!! - */ - MMusUiLevelIndicatorObserver* iObserver; - - }; - - -#endif - -// End of File