38
38
#include <QSettings>
41
namespace Utils { class PersistentSettingsWriter; }
42
44
namespace Internal {
44
class BlackBerryConfiguration;
46
class BlackBerryApiLevelConfiguration;
47
class BlackBerryRuntimeConfiguration;
46
50
class BlackBerryConfigurationManager : public QObject
50
static BlackBerryConfigurationManager &instance();
54
static BlackBerryConfigurationManager *instance();
51
55
~BlackBerryConfigurationManager();
52
bool addConfiguration(BlackBerryConfiguration *config);
53
void removeConfiguration(BlackBerryConfiguration *config);
54
QList<BlackBerryConfiguration*> configurations() const;
55
QList<BlackBerryConfiguration*> manualConfigurations() const;
56
QList<BlackBerryConfiguration *> activeConfigurations() const;
57
BlackBerryConfiguration *configurationFromEnvFile(const Utils::FileName &envFile) const;
56
bool addApiLevel(BlackBerryApiLevelConfiguration *config);
57
void removeApiLevel(BlackBerryApiLevelConfiguration *config);
58
bool addRuntime(BlackBerryRuntimeConfiguration *runtime);
59
void removeRuntime(BlackBerryRuntimeConfiguration *runtime);
60
QList<BlackBerryApiLevelConfiguration*> apiLevels() const;
61
QList<BlackBerryRuntimeConfiguration *> runtimes() const;
62
QList<BlackBerryApiLevelConfiguration*> manualApiLevels() const;
63
QList<BlackBerryApiLevelConfiguration *> activeApiLevels() const;
64
BlackBerryApiLevelConfiguration *apiLevelFromEnvFile(const Utils::FileName &envFile) const;
65
BlackBerryRuntimeConfiguration *runtimeFromFilePath(const QString &path);
66
BlackBerryApiLevelConfiguration *defaultApiLevel() const;
59
68
QString barsignerCskPath() const;
60
69
QString idTokenPath() const;
61
70
QString barsignerDbPath() const;
62
71
QString defaultKeystorePath() const;
63
72
QString defaultDebugTokenPath() const;
64
void clearConfigurationSettings(BlackBerryConfiguration *config);
66
QList<Utils::EnvironmentItem> defaultQnxEnv();
68
void loadAutoDetectedConfigurations();
74
// returns the environment for the default API level
75
QList<Utils::EnvironmentItem> defaultConfigurationEnv() const;
77
void loadAutoDetectedApiLevels();
78
void loadAutoDetectedRuntimes();
79
void setDefaultConfiguration(BlackBerryApiLevelConfiguration *config);
81
bool newestApiLevelEnabled() const;
83
void emitSettingsChanged();
71
86
void loadSettings();
76
91
void settingsLoaded();
92
void settingsChanged();
79
95
BlackBerryConfigurationManager(QObject *parent = 0);
80
97
static BlackBerryConfigurationManager *m_instance;
81
QList<BlackBerryConfiguration*> m_configs;
99
QList<BlackBerryApiLevelConfiguration*> m_apiLevels;
100
QList<BlackBerryRuntimeConfiguration*> m_runtimes;
102
BlackBerryApiLevelConfiguration *m_defaultConfiguration;
104
Utils::PersistentSettingsWriter *m_writer;
106
void saveConfigurations();
107
void restoreConfigurations();
83
109
void loadManualConfigurations();
84
void saveManualConfigurations();
85
void saveActiveConfigurationNdkEnvPath();
86
void clearInvalidConfigurations();
88
QStringList activeConfigurationNdkEnvPaths();
110
void setKitsAutoDetectionSource();
112
void insertApiLevelByVersion(BlackBerryApiLevelConfiguration* apiLevel);
113
void insertRuntimeByVersion(BlackBerryRuntimeConfiguration* runtime);
115
friend class QnxPlugin;
91
118
} // namespace Internal