javamanager/javasettings_qt/src/javaapplicationsettingsview_p.h
author hgs
Mon, 04 Oct 2010 11:29:25 +0300
changeset 78 71ad690e91f5
parent 72 1f0034e370aa
permissions -rw-r--r--
v2.2.17_1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
50
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     1
/*
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     3
* All rights reserved.
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     8
*
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
     9
* Initial Contributors:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    11
*
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    12
* Contributors:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    13
*
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    14
* Description:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    15
*
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    16
*/
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    17
#ifndef JAVAAPPLICATIONSETTINGSVIEW_P_H
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    18
#define JAVAAPPLICATIONSETTINGSVIEW_P_H
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    19
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    20
#include <QVector>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    21
#include <QList>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    22
#include <QTranslator>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    23
#include <QModelIndex>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    24
#include <QEventLoop>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    25
#include <memory>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    26
#include <cmapplsettingsui.h>
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    27
#include "javaapplicationsettings.h"
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    28
#include "javastorage.h"
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    29
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    30
class HbWidget;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    31
class HbPushButton;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    32
class HbDataForm;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    33
class HbDataFormModel;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    34
class HbDataFormModelItem;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    35
class HbAction;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    36
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    37
namespace java
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    38
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    39
namespace settings
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    40
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    41
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    42
// constants used for retrieving the translations of different texts via hbTrId function
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    43
const char* const ID_BLANKET = "txt_java_sett_setlabel_permission_val_blanket";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    44
const char* const ID_SESSION = "txt_java_sett_setlabel_permission_val_session";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    45
const char* const ID_ONESHOT = "txt_java_sett_setlabel_permission_val_oneshot";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    46
const char* const ID_DENIED = "txt_java_sett_setlabel_permission_val_no";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    47
const char* const ID_SECURITY_LEVEL = "txt_java_sett_setlabel_security_level";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    48
const char* const ID_USER_DEFINED = "txt_java_sett_setlabel_security_level_val_user_defined";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    49
const char* const ID_SENSITIVE_SETTINGS = "txt_java_sett_info_query_perm_sec";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    50
const char* const ID_SENSITIVE_SETTINGS_NET_USAGE = "txt_java_sett_info_query_perm_net";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    51
const char* const ID_MUTUALLY_EXCLUSIVE_SETTINGS = "txt_java_sett_info_query_perm_warn";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    52
const char* const ID_OK = "txt_java_sett_button_settings_ok";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    53
const char* const ID_CANCEL = "txt_java_sett_button_settings_cancel";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    54
const char* const ID_SECURITY_WARNING_TITLE = "txt_java_sett_title_note_security_warn";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    55
const char* const ID_NET_ACCESS = "txt_java_sett_setlabel_net_access";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    56
const char* const ID_LOW_LEVEL_NET_ACCESS = "txt_java_sett_setlabel_low_level_net_access";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    57
const char* const ID_NETWORK_CONNECTION = "txt_occ_title_network_connection";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    58
const char* const ID_SETTINGS_TITLE = "txt_java_sett_title_settings";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    59
const char* const ID_SETTINGS_NOT_AVAILABLE = "txt_java_sett_info_settings_not_available";
78
71ad690e91f5 v2.2.17_1
hgs
parents: 72
diff changeset
    60
const char* const ID_GENERAL_GROUP_TITLE = "txt_java_sett_subhead_general";
71ad690e91f5 v2.2.17_1
hgs
parents: 72
diff changeset
    61
const char* const ID_SECURITY_GROUP_TITLE = "txt_java_sett_subhead_security";
50
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    62
const char* const ID_OSK_NO = "txt_java_sett_setlabel_osk_val_no";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    63
const char* const ID_OSK_GAME = "txt_java_sett_setlabel_osk_val_game";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    64
const char* const ID_OSK_NAVIGATION = "txt_java_sett_setlabel_osk_val_navigation";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    65
const char* const ID_OSK = "txt_java_sett_setlabel_osk";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    66
const char* const ID_SECURITY_LEVEL_DEFAULT = "txt_java_sett_setlabel_security_level_val_default";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    67
const char* const ID_MESSAGING = "txt_java_sett_setlabel_messaging";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    68
const char* const ID_RESTRICTED_MESSAGING = "txt_java_sett_setlabel_restricted_messaging";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    69
const char* const ID_CALL_CONTROL = "txt_java_sett_setlabel_call_control";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    70
const char* const ID_LOCAL_CONNECTIVITY = "txt_java_sett_setlabel_local_conn";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    71
const char* const ID_MULTIMEDIA_RECORDING = "txt_java_sett_setlabel_mm_record";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    72
const char* const ID_WRITE_USER_DATA_ACCESS = "txt_java_sett_setlabel_write_data";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    73
const char* const ID_READ_USER_DATA_ACCESS = "txt_java_sett_setlabel_read_data";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    74
const char* const ID_LOCATION = "txt_java_sett_setlabel_location";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    75
const char* const ID_LANDMARK = "txt_java_sett_setlabel_landmarks";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    76
const char* const ID_AUTHENTICATION = "txt_java_sett_setlabel_auth";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    77
const char* const ID_SMART_CARD_COMMUNICATION = "txt_java_sett_setlabel_smartcard";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    78
const char* const ID_APPLICATION_AUTO_INVOCATION = "txt_java_sett_setlabel_app_auto_invoc";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    79
const char* const ID_BROADCAST = "txt_java_sett_setlabel_broadcast";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    80
const char* const ID_NFC_WRITE_ACCESS = "txt_java_sett_setlabel_nfc_write_access";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    81
const char* const ID_URL_START = "txt_java_sett_setlabel_url_start";
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    82
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    83
class JavaApplicationSettingsView;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    84
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    85
// this structures are used for ensuring the settings are always
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    86
// displayed in same order: each setting has associated an index
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    87
// - the lower the index is the higher in the list the setting is
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    88
// displayed
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    89
enum SettingsIndexes
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    90
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    91
    NET_ACCESS_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    92
    LOW_LEVEL_NET_ACCESS_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    93
    MESSAGING_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    94
    RESTRICTED_MESSAGING_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    95
    CALL_CONTROL_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    96
    LOCAL_CONNECTIVITY_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    97
    MULTIMEDIA_RECORDING_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    98
    WRITE_USER_DATA_ACCESS_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
    99
    READ_USER_DATA_ACCESS_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   100
    LOCATION_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   101
    LANDMARK_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   102
    AUTHENTICATION_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   103
    SMART_CARD_COMMUNICATION_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   104
    APPLICATION_AUTO_INVOCATION_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   105
    BROADCAST_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   106
    NFC_WRITE_ACCESS_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   107
    URL_START_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   108
    LAST_SETTINGS_INDEX,
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   109
};
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   110
struct IndexedSettingsName
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   111
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   112
    std::wstring name;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   113
    int index;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   114
};
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   115
struct AscendingSort
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   116
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   117
    bool operator()(const IndexedSettingsName& i1, const IndexedSettingsName& i2)
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   118
    {
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   119
        return i1.index < i2.index;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   120
    }
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   121
};
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   122
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   123
/**
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   124
 * The Ui is build around the Orbit's HbDataForm, with one group for the general settings
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   125
 * (including network settings and On screen keypad settings) and another group for
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   126
 * security settings (including the security warnings mode and the actual security settings).
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   127
 * The items inside the group are either of type tooglebutton (network settings and security
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   128
 * warnings mode) or of type combobox. When the plugin is instantiated the two groups are
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   129
 * created and the settings are read from storage. When the plugin receives an initialization
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   130
 * signal the HbDataModel's  (associated to the main HbDataForm) itemShown signal is connected
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   131
 * to the plugin's slot _q_dataItemDisplayed. While the groups become visible they are populated
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   132
 * with dataitems of either type tooglebutton or combobox. After being added to their parent's
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   133
 * group the dataitems's currentIndexChanged signal is connected to the plugin's _q_settingsChanged
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   134
 * slot where the settings changes are handled.
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   135
 */
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   136
class JavaApplicationSettingsViewPrivate: public QObject
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   137
{
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   138
    Q_OBJECT
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   139
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   140
public:
72
1f0034e370aa v2.2.15_1
hgs
parents: 50
diff changeset
   141
    JavaApplicationSettingsViewPrivate(const QString& aJavaAppUid, const QString& aJavaAppName = QString());
50
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   142
    virtual ~JavaApplicationSettingsViewPrivate();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   143
    void init(JavaApplicationSettingsView* aPublicView);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   144
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   145
    // slots
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   146
    void _q_settingsChanged(const QString& aNewValue);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   147
    void _q_settingsChanged(bool aNewValue);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   148
    void _q_dataItemDisplayed(const QModelIndex aDataItemIndex);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   149
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   150
private slots:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   151
    void netConnSelected(uint aNetConnSelectionStatus);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   152
    void securityWarningDismissed(HbAction* aDismissAction);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   153
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   154
private:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   155
    void init();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   156
    void initGeneralSettings();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   157
    void initSecuritySettings();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   158
    void readAllSettings();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   159
    void initSettings(QVector<JavaApplicationSettings>& aSettings, HbDataFormModelItem * aParent);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   160
    void writeSettings(JavaApplicationSettings& aSettings, const QString &aNewValue);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   161
    void securityWarningsChanged(const QString& aNewValue);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   162
    bool isBlanketAllowed(const JavaApplicationSettings& aSettings);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   163
    HbWidget * itemToWidget(const HbDataFormModelItem * aItem);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   164
    JavaApplicationSettings* findSettings(HbWidget* aId);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   165
    JavaApplicationSettings* findSettings(HbWidget* aId, QVector<JavaApplicationSettings>& aAllSettings);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   166
    void readFromStorage(JavaApplicationSettings& aSettings);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   167
    void writeToStorage(JavaApplicationSettings& aSettings);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   168
    bool isInStorage(const std::wstring& aColumnName, const std::wstring& aColumnFilterName, const std::wstring& aColumnFilterValue, const std::string& aTableName);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   169
    std::wstring readFromStorage(const std::wstring& aColumnName, const std::wstring& aColumnFilterName, const std::wstring& aColumnFilterValue, const std::string& aTableName);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   170
    std::vector<IndexedSettingsName> readFromStorage(const std::wstring& aColumnName, const std::string& aPrimaryTableName, const std::string& aSecondaryTableName);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   171
    void filterSecuritySettings(JavaApplicationSettings& aSettings);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   172
    void findEntry(const java::storage::JavaStorageApplicationList_t& aQueryResult, const std::wstring& aName, std::wstring& aValue);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   173
    void readSuiteUid(const QString& aAppUid);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   174
    bool isSecurityWarningAccepted(const QString& aText, const QString& aAcceptActionLabel, const QString& aRejectActionLabel, const QString& aHeadingText);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   175
    void handleNetworkSettings();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   176
    void readNetworkConnectionName();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   177
    void initNetworkConnection();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   178
    void configureList(QList<JavaApplicationSettings*>& aList, const QStringList& aSettingsNames,  const QHash<QString, int>& aSettingsIndexes);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   179
    void attachList(const QString& aSettingsName, const QList<JavaApplicationSettings*>& aList, const QHash<QString, int>& aSettingsIndexes, bool isHighRiskList = true);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   180
    void configureLists();
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   181
    void installTranslator(const QString& aTranslationFileName);
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   182
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   183
private:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   184
    HbDataForm * mMainForm;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   185
    HbDataFormModel *mModel;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   186
    HbDataFormModelItem * mGeneralSettingsGroup;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   187
    HbDataFormModelItem * mSecuritySettingsGroup;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   188
    QVector<JavaApplicationSettings> mGeneralSettings;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   189
    QVector<JavaApplicationSettings> mSecuritySettings;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   190
    QVector<JavaApplicationSettings> mExtraSettings;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   191
    JavaApplicationSettingsView* mPublicView;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   192
    std::auto_ptr<java::storage::JavaStorage> mStorage;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   193
    std::wstring mSuiteUid;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   194
    // licalized strings used more than once: the translation is
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   195
    // retrieved only once
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   196
    QString TXT_BLANKET,TXT_SESSION,TXT_ONESHOT,TXT_DENIED,TXT_SECURITY_LEVEL,TXT_USER_DEFINED,TXT_SENSITIVE_SETTINGS,TXT_SENSITIVE_SETTINGS_NET_USAGE,TXT_MUTUALLY_EXCLUSIVE_SETTINGS,TXT_OK,TXT_CANCEL,TXT_SECURITY_WARNING_TITLE,TXT_NET_ACCESS,TXT_LOW_LEVEL_NET_ACCESS,TXT_NETWORK_CONNECTION,TXT_NETWORK_CONNECTION_CHANGE,TXT_SETTINGS_TITLE,TXT_SETTINGS_NOT_AVAILABLE;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   197
    CmApplSettingsUi* mNetConnSettingsUi;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   198
    CmApplSettingsUi::SettingSelection mNetConnSelection;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   199
    JavaApplicationSettings::NetworkConnection mNetConn;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   200
    int mNetSettIndex;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   201
    // own event loop used for "translating" asynchronous calls into
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   202
    // synchronous calls
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   203
    QEventLoop* mAsyncToSyncCallEventLoop;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   204
    // boolean for carying the user's input in between two async calls
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   205
    bool mSecWarningAccepted;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   206
    // the default network connection used if user did not specify one
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   207
    // or the user specified network connection became invalid
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   208
    // (e.g. after removing the user defined snap)
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   209
    int mDefaultConnId;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   210
    // list of installed translators: settings view uses own
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   211
    // translator ("javaruntimeapplicationsettings")
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   212
    // and for network settings it uses the cmmanager's translators:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   213
    // "cmapplsettingsui" and "cmmanager"
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   214
    QList<QTranslator *> mTranslators;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   215
    QHash<QString, QString> mLocalizedSettingsNames;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   216
    // hash for associating settings names with indexes within
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   217
    // vectors (mGeneralSettings, mSecuritySettings)
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   218
    QHash<QString, int> mSettingsIndexes;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   219
    // hash for associating settings names with display indexes:
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   220
    // a settings with lower index is shown before a settings
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   221
    // with a higher index
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   222
    QHash<QString, int> mSettingsNamesIndexes;
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   223
};
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   224
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   225
} // namespace settings
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   226
} // namespace java
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   227
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   228
023eef975703 v2.2.4_1
hgs
parents:
diff changeset
   229
#endif // JAVAAPPLICATIONSETTINGSVIEW_P_H