--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/profilesservices/ProfileEngine/WrapperSrc/CProEngToneSettingsImpl.h Thu Dec 17 08:52:52 2009 +0200
@@ -0,0 +1,182 @@
+/*
+* Copyright (c) 2009 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: This class implements MProEngToneSettings interface.
+*
+*/
+
+
+
+#ifndef CPROENGTONESETTINGSIMPL_H
+#define CPROENGTONESETTINGSIMPL_H
+
+// INCLUDES
+#include <MProEngToneSettings.h>
+#include <e32base.h>
+#include <TProfileToneSettings.h>
+
+// FORWARD DECLARATIONS
+class MProfileTones;
+class MProfileSetTones;
+
+// CLASS DECLARATION
+
+/**
+* This class implements MProEngToneSettings interface.
+*
+* @lib ProfileEngine.lib
+* @since 3.1
+*/
+NONSHARABLE_CLASS( CProEngToneSettingsImpl ) : public CBase,
+ public MProEngToneSettings
+ {
+ public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor.
+ */
+ static CProEngToneSettingsImpl* NewL(
+ TProfileToneSettings& aToneSettings,
+ TUint32 aModifiableFlags );
+
+ /**
+ * Destructor.
+ */
+ virtual ~CProEngToneSettingsImpl();
+
+ public:
+
+ /**
+ * From MProEngToneSettings
+ */
+ TProfileRingingType RingingType() const;
+
+ /**
+ * Returns the keypad volume.
+ * @since 3.1
+ * @return Returns the keypad volume.
+ */
+ TProfileKeypadVolume KeypadVolume() const;
+
+ /**
+ * Returns the ringing volume.
+ * @since 3.1
+ * @return Returns the ringing volume.
+ */
+ TProfileRingingVolume RingingVolume() const;
+
+ /**
+ * Returns the state of vibrating alert setting.
+ * @since 3.1
+ * @return Returns the state of vibrating alert setting.
+ */
+ TBool VibratingAlert() const;
+
+ /**
+ * Returns the state of warning and game tones setting.
+ * @since 3.1
+ * @return Returns the state of warning and game tones setting.
+ */
+ TBool WarningAndGameTones() const;
+
+ /**
+ * Returns the state of text-to-speech setting.
+ * @since 3.1
+ * @return Returns the state of text-to-speech setting.
+ */
+ TBool TextToSpeech() const;
+
+ /**
+ * Sets the ringing type.
+ * @since 3.1
+ * @param aRingingType The new value for ringing type.
+ * @return KErrNone if succesful, KErrAccessDenied if ringing type
+ * setting of this profile is read-only.
+ */
+ TInt SetRingingType( TProfileRingingType aRingingType );
+
+ /**
+ * Sets the keypad volume.
+ * @since 3.1
+ * @param aKeypadVolume The new value for keypad tones volume.
+ * @return KErrNone if succesful, KErrAccessDenied if keypad tones
+ * setting of this profile is read-only.
+ */
+ TInt SetKeypadVolume( TProfileKeypadVolume aKeypadVolume );
+
+ /**
+ * Sets the ringing volume.
+ * @since 3.1
+ * @param aRingingVolume The new value for ringing volume.
+ * @return KErrNone if succesful, KErrAccessDenied if ringing volume
+ * setting of this profile is read-only.
+ */
+ TInt SetRingingVolume(
+ TProfileRingingVolume aRingingVolume );
+
+ /**
+ * Sets the state of vibrating alert setting.
+ * @since 3.1
+ * @param aVibratingAlert The new state for the vibrating alert setting.
+ * @return KErrNone if succesful, KErrAccessDenied if vibrating alert
+ * setting of this profile is read-only.
+ */
+ TInt SetVibratingAlert( TBool aVibratingAlert );
+
+ /**
+ * Sets the state of warning and game tones setting.
+ * @since 3.1
+ * @param aWarningAndGameTones The new state for Warning and Game tones
+ * setting.
+ * @return KErrNone if succesful, KErrAccessDenied if warning and game
+ * tones setting of this profile is read-only.
+ */
+ TInt SetWarningAndGameTones( TBool aWarningAndGameTones );
+
+ /**
+ * Sets the state of text-to-speech setting.
+ * @since 3.1
+ * @param aTextToSpeech The new state for text-to-speech setting.
+ * @return KErrNone if succesful, KErrAccessDenied if text-to-speech
+ * setting of this profile is read-only.
+ */
+ TInt SetTextToSpeech( TBool aTextToSpeech );
+
+
+ private:
+
+ /**
+ * C++ default constructor.
+ */
+ CProEngToneSettingsImpl(
+ TProfileToneSettings& aToneSettings,
+ TUint32 aModifiableFlags );
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ */
+ void ConstructL();
+
+ private: // Data
+
+ // The real implementation of the profile tone settings
+ TProfileToneSettings& iToneSettings;
+
+ // Flags to check is modification allowed:
+ TUint32 iModifiableFlags;
+ };
+
+#endif // CPROENGTONESETTINGSIMPL_H
+
+// End of File
+