--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/radioapp/radioenginewrapper/inc/radiosettings_p.h Fri Mar 19 09:29:04 2010 +0200
@@ -0,0 +1,73 @@
+/*
+* 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:
+*
+*/
+
+#ifndef RADIOSETTINGS_P_H_
+#define RADIOSETTINGS_P_H_
+
+class MRadioApplicationSettings;
+
+class RadioSettingsPrivate
+{
+ Q_DECLARE_PUBLIC( RadioSettings )
+ Q_DISABLE_COPY( RadioSettingsPrivate )
+
+ /**
+ * On/Off type flags.
+ *
+ * Bit shifting in the value initialization is used to easily create
+ * progressing bit patterns like so:
+ * 1 << 0 equals 0001 equals 0x1
+ * 1 << 1 equals 0010 equals 0x2
+ * 1 << 2 equals 0100 equals 0x4
+ * 1 << 3 equals 1000 equals 0x8
+ */
+ enum ToggleFlag
+ {
+ EShowFavorites = 1 << 0
+ };
+ Q_DECLARE_FLAGS( Toggles, ToggleFlag )
+
+public:
+
+ RadioSettingsPrivate( RadioSettings* settingsPublic );
+
+ ~RadioSettingsPrivate();
+
+ void init( MRadioApplicationSettings* storage );
+
+ // First time start
+ bool isFirstTimeStart();
+
+ bool isFlagSet( ToggleFlag flag ) const;
+ void toggleFlag( ToggleFlag flag );
+ void saveFlags();
+
+private: // data
+
+ /**
+ * Pointer to the public class
+ * Not own.
+ */
+ RadioSettings* q_ptr;
+
+ Toggles mFlags;
+
+ MRadioApplicationSettings* mSettingsStorage;
+
+};
+
+#endif // RADIOSETTINGS_P_H_