|
1 /* |
|
2 * Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef APPMNGR2MIDLETSETTINGSUTIL_H |
|
20 #define APPMNGR2MIDLETSETTINGSUTIL_H |
|
21 |
|
22 // INCLUDES |
|
23 #include <e32base.h> |
|
24 #include <string> |
|
25 #include <vector> |
|
26 |
|
27 // FORWARD DECLARATIONS |
|
28 // CONSTANTS |
|
29 const int INTERACTION_MODE_DENIED = 1; |
|
30 const int INTERACTION_MODE_BLANKET = 2; |
|
31 const int INTERACTION_MODE_SESSION = 4; |
|
32 const int INTERACTION_MODE_ONESHOT = 8; |
|
33 |
|
34 // interaction modes display indexes |
|
35 const int DENIED_INTERACTION_MODE_DISPLAY_INDEX = 0; |
|
36 const int ONESHOT_INTERACTION_MODE_DISPLAY_INDEX = 1; |
|
37 const int SESSION_INTERACTION_MODE_DISPLAY_INDEX = 2; |
|
38 const int BLANKET_INTERACTION_MODE_DISPLAY_INDEX = 3; |
|
39 |
|
40 // on screen keypad values display indexes |
|
41 const int ON_SCREEN_KEYPAD_VALUE_NO_DISPLAY_INDEX = 0; |
|
42 const int ON_SCREEN_KEYPAD_VALUE_GAMEACTIONS_DISPLAY_INDEX = 1; |
|
43 const int ON_SCREEN_KEYPAD_VALUE_NAVIGATION_DISPLAY_INDEX = 2; |
|
44 |
|
45 // security warnings values display indexes |
|
46 const int SECURITY_WARNINGS_DEFAULT_MODE_DISPLAY_INDEX = 0; |
|
47 const int SECURITY_WARNINGS_USER_DEFINED_MODE_DISPLAY_INDEX = 1; |
|
48 |
|
49 // settings display indexes |
|
50 const int ON_SCREEN_KEYPAD_SETTINGS_DISPLAY_INDEX = 0; |
|
51 const int SECURITY_WARNINGS_SETTINGS_DISPLAY_INDEX = 1; |
|
52 const int NET_ACCESS_SETTINGS_DISPLAY_INDEX = 2; |
|
53 const int LOW_LEVEL_NET_ACCESS_SETTINGS_DISPLAY_INDEX = 3; |
|
54 const int CALL_CONTROL_SETTINGS_DISPLAY_INDEX = 4; |
|
55 const int MESSAGING_SETTINGS_DISPLAY_INDEX = 5; |
|
56 const int RESTRICTED_MESSAGING_SETTINGS_DISPLAY_INDEX = 6; |
|
57 const int APPLICATION_AUTO_INVOCATION_SETTINGS_DISPLAY_INDEX = 7; |
|
58 const int LOCAL_CONNECTIVITY_SETTINGS_DISPLAY_INDEX = 8; |
|
59 const int MULTIMEDIA_RECORDING_SETTINGS_DISPLAY_INDEX = 9; |
|
60 const int READ_USER_DATA_ACCESS_SETTINGS_DISPLAY_INDEX = 10; |
|
61 const int WRITE_USER_DATA_ACCESS_SETTINGS_DISPLAY_INDEX = 11; |
|
62 const int LOCATION_SETTINGS_DISPLAY_INDEX = 12; |
|
63 const int LANDMARK_SETTINGS_DISPLAY_INDEX = 12; |
|
64 const int AUTHENTICATION_SETTINGS_DISPLAY_INDEX = 14; |
|
65 const int SMART_CARD_COMMUNICATION_SETTINGS_DISPLAY_INDEX = 15; |
|
66 const int BROADCAST_SETTINGS_DISPLAY_INDEX = 16; |
|
67 const int NFC_WRITE_ACCESS_SETTINGS_DISPLAY_INDEX = 17; |
|
68 const int LAST_SETTINGS_DISPLAY_INDEX = 18; |
|
69 |
|
70 // CLASS DECLARATION |
|
71 class MidletSuiteSecuritySettings: public CBase |
|
72 { |
|
73 public: |
|
74 MidletSuiteSecuritySettings(const std::wstring& aSettingsName, |
|
75 const std::wstring& aCurrentInteractionMode, |
|
76 const std::wstring& aAllowedInteractionModes); |
|
77 |
|
78 MidletSuiteSecuritySettings &operator=(const MidletSuiteSecuritySettings&); |
|
79 |
|
80 MidletSuiteSecuritySettings(const MidletSuiteSecuritySettings&); |
|
81 |
|
82 MidletSuiteSecuritySettings(); |
|
83 |
|
84 const std::wstring getName() const; |
|
85 const std::wstring getCurrentInteractionMode() const; |
|
86 const std::wstring getAllowedInteractionModes() const; |
|
87 |
|
88 private: |
|
89 std::wstring iSettingsName; |
|
90 std::wstring iCurrentInteractionMode; |
|
91 std::wstring iAllowedInteractionModes; |
|
92 }; |
|
93 |
|
94 class LocalizedString: public CBase |
|
95 { |
|
96 public: |
|
97 LocalizedString(const std::wstring& aId, |
|
98 const std::wstring& aValue); |
|
99 |
|
100 LocalizedString(const std::wstring& aId, |
|
101 const std::wstring& aValue, |
|
102 int aIndex); |
|
103 |
|
104 LocalizedString(TUint aId, |
|
105 const std::wstring& aValue); |
|
106 |
|
107 LocalizedString &operator=(const LocalizedString&); |
|
108 |
|
109 LocalizedString(const LocalizedString&); |
|
110 |
|
111 LocalizedString(); |
|
112 |
|
113 const std::wstring& getId() const; |
|
114 const std::wstring& getValue() const; |
|
115 int getIndex() const; |
|
116 |
|
117 private: |
|
118 std::wstring iId; |
|
119 std::wstring iValue; |
|
120 int iIndex; |
|
121 }; |
|
122 |
|
123 class ListItem: public CBase |
|
124 { |
|
125 public: |
|
126 ListItem(const LocalizedString& aName, |
|
127 const std::vector<LocalizedString>& aPossibleValues); |
|
128 |
|
129 ListItem(const LocalizedString& aName, |
|
130 const std::vector<LocalizedString>& aPossibleValues, |
|
131 bool aEnabled); |
|
132 |
|
133 ListItem(const LocalizedString& aName, |
|
134 const std::vector<LocalizedString>& aPossibleValues, |
|
135 bool aEnabled, |
|
136 int aCurrentValueIndex); |
|
137 |
|
138 ListItem(const LocalizedString& aName, |
|
139 const std::vector<LocalizedString>& aPossibleValues, |
|
140 bool aEnabled, |
|
141 int aCurrentValueIndex, |
|
142 int aIndex); |
|
143 |
|
144 ListItem &operator=(const ListItem&); |
|
145 |
|
146 ListItem(const ListItem&); |
|
147 |
|
148 ListItem(); |
|
149 |
|
150 void setCurrentValue(int aSelectedValueIndex); |
|
151 int getCurrentValue() const; |
|
152 |
|
153 const LocalizedString& getName() const; |
|
154 const std::vector<LocalizedString>& getValues() const; |
|
155 const LocalizedString& getValue() const; |
|
156 const LocalizedString& getValue(int aValueIndex) const; |
|
157 bool getEnabled() const; |
|
158 void setEnabled(bool aEnabled); |
|
159 int getIndex() const; |
|
160 |
|
161 private: |
|
162 LocalizedString iName; |
|
163 std::vector<LocalizedString> iPossibleValues; |
|
164 int iCurrentValueIndex; |
|
165 bool iEnabled; |
|
166 int iIndex; |
|
167 }; |
|
168 |
|
169 /** |
|
170 * CAppMngr2SuiteSnapItem |
|
171 * |
|
172 */ |
|
173 class CAppMngr2SuiteSnapItem: public CBase |
|
174 { |
|
175 public: |
|
176 CAppMngr2SuiteSnapItem(); |
|
177 CAppMngr2SuiteSnapItem(const CAppMngr2SuiteSnapItem&); |
|
178 |
|
179 TUint32 iId; |
|
180 std::wstring iName; |
|
181 }; |
|
182 |
|
183 // CLASS DECLARATION |
|
184 |
|
185 class AppMngr2MidletSettingsUtil |
|
186 { |
|
187 public: |
|
188 struct AscendingListItemSort |
|
189 { |
|
190 bool operator()(const ListItem& i1, const ListItem& i2) |
|
191 { |
|
192 return i1.getIndex() < i2.getIndex(); |
|
193 } |
|
194 }; |
|
195 struct AscendingLocalizedStringSort |
|
196 { |
|
197 bool operator()(const LocalizedString& i1, const LocalizedString& i2) |
|
198 { |
|
199 return i1.getIndex() < i2.getIndex(); |
|
200 } |
|
201 }; |
|
202 |
|
203 static const ListItem SettingsToListItem(MidletSuiteSecuritySettings aSettings, bool aSettingsEnabled); |
|
204 static const MidletSuiteSecuritySettings ListItemToSettings(const ListItem& aListItem); |
|
205 static const ListItem OnScreenKeypadToListItem(std::wstring aOnScreenKeypadValue, bool aOnScreenKeypadEnabled); |
|
206 static const ListItem SnapToListItem(CAppMngr2SuiteSnapItem aSnap, bool aSnapEnabled); |
|
207 static const ListItem SecurityWarningsModeToListItem(std::wstring aSecurityWarningsModeValue, bool aSecurityWarningsModeEnabled); |
|
208 static TInt GetLocalizedSettingsName(std::wstring aSettingsName); |
|
209 |
|
210 private: |
|
211 static const std::wstring getLocalizedSettingsName(std::wstring aSettingsName); |
|
212 static const std::wstring getLocalizedSettingsInteractionMode(int aInteractionMode); |
|
213 static const std::wstring getLocalizedOnScreenKeypadValue(std::wstring aOnScreenKeypadValue); |
|
214 static const std::wstring getLocalizedSecurityWarningsModeValue(std::wstring aSecurityWarningsModeValue); |
|
215 static int getSettingsDisplayIndex(std::wstring aSettingsName); |
|
216 static int findItem(std::vector<LocalizedString> aListItems, std::wstring aListItemId); |
|
217 |
|
218 }; |
|
219 |
|
220 #endif // APPMNGR2MIDLETSETTINGSUTIL_H |
|
221 |
|
222 |
|
223 // End of file |