diff -r f15ac8e65a02 -r 779871d1e4f4 vtuis/videotelui/inc/commands/tvtuilocalvariation.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vtuis/videotelui/inc/commands/tvtuilocalvariation.h Wed Sep 01 12:29:12 2010 +0100 @@ -0,0 +1,231 @@ +/* +* 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: Video Telephone local variation class definition. +* +*/ + + +#ifndef T_VTUILOCALVARIATION_H +#define T_VTUILOCALVARIATION_H + +#include + +#include "tvtflagcontainer.h" + +// User selectable Call answer status values +const TInt KAllwaysQuery = 0; +const TInt KAllwaysAllow = 2; +const TInt KNumberOfTbButtons = 6; + +/** + * TVtUiVariationBase + * + * Base class for local variation classes. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS( TVtUiVariationBase ) : public TVtFlagContainer + { +public: + + /** + * Reads variations from central reposityory. + * and set default value in case error + */ + virtual void ReadL( const TInt adefault = -1 ); + +protected: + + /** + * Returns UID of the repository to be read. + */ + virtual const TUid& Uid() const = 0; + + /** + * ID of the key inside repository to be read. + */ + virtual TUint32 Key() const = 0; + + /** + * Gets key value. + */ + virtual TUint32 ReceiveValue() const; + + }; + +/** + * TVtUiVideoTelephonyVariation + * + * Video Telephony variation class. Reads VT local variation flags from the + * CenRep and contains methods to query flag states. This class should be + * instanced only once and same instance should be passesd as reference to + * modules that need this local variation information. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS( TVtUiVideoTelephonyVariation ) : public TVtUiVariationBase + { + +public: + + /** + * Return whether or not ScalingMethodENearest is set in local variation. + * + * @return ETrue if ScalingMethodENearest local variation flag is set, + * EFalse otherwise. + */ + inline TBool IsScalingMethodENearest() const; + + /** + * Return whether or not ScalingMethodEBilinear is set in local variation. + * + * @return ETrue if ScalingMethodEBilinear local variation flag is set, + * EFalse otherwise. + */ + inline TBool IsScalingMethodEBilinear() const; + + /** + * Return whether or not EnableBitReversal is set in local variation. + * + * @return ETrue if EnableBitReversal local variation flag is set, EFalse + * otherwise. + */ + inline TBool IsEnableBitReversal() const; + +private: // from TVtUiVariationBase + + /** + * @see TVtUiVariationBase::Uid + */ + const TUid& Uid() const; + + /** + * @see TVtUiVariationBase::Key + */ + TUint32 Key() const; + }; + +/** + * TVtUiActiveIdleVariation + * + * Active Idle variation class. Reads AI local variation flags from the + * CenRep and contains methods to query flag states. This class should be + * instanced only once and same instance should be passesd as reference to + * modules that need this local variation information. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS( TVtUiActiveIdleVariation ) : public TVtUiVariationBase + { + +public: + /** + * Return whether or not active idle is enabled in local variation. + * + * @return ETrue if active idle is enabled in local variation. + */ + TBool IsActiveIdleEnabled(); + +private: // from TVtUiVariationBase + + /** + * @see TVtUiVariationBase::Uid + */ + const TUid& Uid() const; + + /** + * @see TVtUiVariationBase::Key + */ + TUint32 Key() const; + +private: + }; + +/** + * TVtUiGsMuteVariation + * + * General settings (Gs) variation class. Reads GS local variation flags from the + * CenRep and contains methods to query flag states and values. This class should be + * instanced only once and same instance should be passesd as reference to + * modules that need this local variation information. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS( TVtUiGsMuteVariation ) : public TVtUiVariationBase + { + +public: + + /** + * Returns Gs mute state value from CanRep. + * + * @return Gs mute state value. + */ + TUint32 GsMuteState(); + +private: // from TVtUiVariationBase + + /** + * @see TVtUiVariationBase::Uid + */ + const TUid& Uid() const; + + /** + * @see TVtUiVariationBase::Key + */ + TUint32 Key() const; + +private: + }; + +/** + * TVtUiToolbarVariation + * + * Toolbar variation class. Reads TB local variation flags from the + * CenRep and contains methods to query flag states and values. This class should be + * instanced only once and same instance should be passesd as reference to + * modules that need this local variation information. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS( TVtUiToolbarVariation ) : public TVtUiVariationBase + { + +public: + /** + * Returns number of toolbar buttons from CanRep. + * + * @return number of toolbar buttons. + */ + TUint32 NumberOfButtons(); + +private: // from TVtUiVariationBase + + /** + * @see TVtUiVariationBase::Uid + */ + const TUid& Uid() const; + + /** + * @see TVtUiVariationBase::Key + */ + TUint32 Key() const; + +private: + }; + + +#include "tvtuilocalvariation.inl" + +#endif // T_VTUILOCALVARIATION_H