diff -r f5050f1da672 -r 04becd199f91 javamanager/javasettings/appmngrplugin/inc/appmngr2midletsettingsutil.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/javamanager/javasettings/appmngrplugin/inc/appmngr2midletsettingsutil.h Tue Apr 27 16:30:29 2010 +0300 @@ -0,0 +1,223 @@ +/* +* Copyright (c) 2008 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 APPMNGR2MIDLETSETTINGSUTIL_H +#define APPMNGR2MIDLETSETTINGSUTIL_H + +// INCLUDES +#include +#include +#include + +// FORWARD DECLARATIONS +// CONSTANTS +const int INTERACTION_MODE_DENIED = 1; +const int INTERACTION_MODE_BLANKET = 2; +const int INTERACTION_MODE_SESSION = 4; +const int INTERACTION_MODE_ONESHOT = 8; + +// interaction modes display indexes +const int DENIED_INTERACTION_MODE_DISPLAY_INDEX = 0; +const int ONESHOT_INTERACTION_MODE_DISPLAY_INDEX = 1; +const int SESSION_INTERACTION_MODE_DISPLAY_INDEX = 2; +const int BLANKET_INTERACTION_MODE_DISPLAY_INDEX = 3; + +// on screen keypad values display indexes +const int ON_SCREEN_KEYPAD_VALUE_NO_DISPLAY_INDEX = 0; +const int ON_SCREEN_KEYPAD_VALUE_GAMEACTIONS_DISPLAY_INDEX = 1; +const int ON_SCREEN_KEYPAD_VALUE_NAVIGATION_DISPLAY_INDEX = 2; + +// security warnings values display indexes +const int SECURITY_WARNINGS_DEFAULT_MODE_DISPLAY_INDEX = 0; +const int SECURITY_WARNINGS_USER_DEFINED_MODE_DISPLAY_INDEX = 1; + +// settings display indexes +const int ON_SCREEN_KEYPAD_SETTINGS_DISPLAY_INDEX = 0; +const int SECURITY_WARNINGS_SETTINGS_DISPLAY_INDEX = 1; +const int NET_ACCESS_SETTINGS_DISPLAY_INDEX = 2; +const int LOW_LEVEL_NET_ACCESS_SETTINGS_DISPLAY_INDEX = 3; +const int CALL_CONTROL_SETTINGS_DISPLAY_INDEX = 4; +const int MESSAGING_SETTINGS_DISPLAY_INDEX = 5; +const int RESTRICTED_MESSAGING_SETTINGS_DISPLAY_INDEX = 6; +const int APPLICATION_AUTO_INVOCATION_SETTINGS_DISPLAY_INDEX = 7; +const int LOCAL_CONNECTIVITY_SETTINGS_DISPLAY_INDEX = 8; +const int MULTIMEDIA_RECORDING_SETTINGS_DISPLAY_INDEX = 9; +const int READ_USER_DATA_ACCESS_SETTINGS_DISPLAY_INDEX = 10; +const int WRITE_USER_DATA_ACCESS_SETTINGS_DISPLAY_INDEX = 11; +const int LOCATION_SETTINGS_DISPLAY_INDEX = 12; +const int LANDMARK_SETTINGS_DISPLAY_INDEX = 12; +const int AUTHENTICATION_SETTINGS_DISPLAY_INDEX = 14; +const int SMART_CARD_COMMUNICATION_SETTINGS_DISPLAY_INDEX = 15; +const int BROADCAST_SETTINGS_DISPLAY_INDEX = 16; +const int NFC_WRITE_ACCESS_SETTINGS_DISPLAY_INDEX = 17; +const int LAST_SETTINGS_DISPLAY_INDEX = 18; + +// CLASS DECLARATION +class MidletSuiteSecuritySettings: public CBase +{ +public: + MidletSuiteSecuritySettings(const std::wstring& aSettingsName, + const std::wstring& aCurrentInteractionMode, + const std::wstring& aAllowedInteractionModes); + + MidletSuiteSecuritySettings &operator=(const MidletSuiteSecuritySettings&); + + MidletSuiteSecuritySettings(const MidletSuiteSecuritySettings&); + + MidletSuiteSecuritySettings(); + + const std::wstring getName() const; + const std::wstring getCurrentInteractionMode() const; + const std::wstring getAllowedInteractionModes() const; + +private: + std::wstring iSettingsName; + std::wstring iCurrentInteractionMode; + std::wstring iAllowedInteractionModes; +}; + +class LocalizedString: public CBase +{ +public: + LocalizedString(const std::wstring& aId, + const std::wstring& aValue); + + LocalizedString(const std::wstring& aId, + const std::wstring& aValue, + int aIndex); + + LocalizedString(TUint aId, + const std::wstring& aValue); + + LocalizedString &operator=(const LocalizedString&); + + LocalizedString(const LocalizedString&); + + LocalizedString(); + + const std::wstring& getId() const; + const std::wstring& getValue() const; + int getIndex() const; + +private: + std::wstring iId; + std::wstring iValue; + int iIndex; +}; + +class ListItem: public CBase +{ +public: + ListItem(const LocalizedString& aName, + const std::vector& aPossibleValues); + + ListItem(const LocalizedString& aName, + const std::vector& aPossibleValues, + bool aEnabled); + + ListItem(const LocalizedString& aName, + const std::vector& aPossibleValues, + bool aEnabled, + int aCurrentValueIndex); + + ListItem(const LocalizedString& aName, + const std::vector& aPossibleValues, + bool aEnabled, + int aCurrentValueIndex, + int aIndex); + + ListItem &operator=(const ListItem&); + + ListItem(const ListItem&); + + ListItem(); + + void setCurrentValue(int aSelectedValueIndex); + int getCurrentValue() const; + + const LocalizedString& getName() const; + const std::vector& getValues() const; + const LocalizedString& getValue() const; + const LocalizedString& getValue(int aValueIndex) const; + bool getEnabled() const; + void setEnabled(bool aEnabled); + int getIndex() const; + +private: + LocalizedString iName; + std::vector iPossibleValues; + int iCurrentValueIndex; + bool iEnabled; + int iIndex; +}; + +/** +* CAppMngr2SuiteSnapItem +* +*/ +class CAppMngr2SuiteSnapItem: public CBase +{ +public: + CAppMngr2SuiteSnapItem(); + CAppMngr2SuiteSnapItem(const CAppMngr2SuiteSnapItem&); + + TUint32 iId; + std::wstring iName; +}; + +// CLASS DECLARATION + +class AppMngr2MidletSettingsUtil +{ +public: + struct AscendingListItemSort + { + bool operator()(const ListItem& i1, const ListItem& i2) + { + return i1.getIndex() < i2.getIndex(); + } + }; + struct AscendingLocalizedStringSort + { + bool operator()(const LocalizedString& i1, const LocalizedString& i2) + { + return i1.getIndex() < i2.getIndex(); + } + }; + + static const ListItem SettingsToListItem(MidletSuiteSecuritySettings aSettings, bool aSettingsEnabled); + static const MidletSuiteSecuritySettings ListItemToSettings(const ListItem& aListItem); + static const ListItem OnScreenKeypadToListItem(std::wstring aOnScreenKeypadValue, bool aOnScreenKeypadEnabled); + static const ListItem SnapToListItem(CAppMngr2SuiteSnapItem aSnap, bool aSnapEnabled); + static const ListItem SecurityWarningsModeToListItem(std::wstring aSecurityWarningsModeValue, bool aSecurityWarningsModeEnabled); + static TInt GetLocalizedSettingsName(std::wstring aSettingsName); + +private: + static const std::wstring getLocalizedSettingsName(std::wstring aSettingsName); + static const std::wstring getLocalizedSettingsInteractionMode(int aInteractionMode); + static const std::wstring getLocalizedOnScreenKeypadValue(std::wstring aOnScreenKeypadValue); + static const std::wstring getLocalizedSecurityWarningsModeValue(std::wstring aSecurityWarningsModeValue); + static int getSettingsDisplayIndex(std::wstring aSettingsName); + static int findItem(std::vector aListItems, std::wstring aListItemId); + +}; + +#endif // APPMNGR2MIDLETSETTINGSUTIL_H + + +// End of file