8QSettings *Settings::settingsInstance()
10 if (!Settings::settings) {
14 Settings::settings =
new QSettings(QSettings::NativeFormat, QSettings::UserScope,
"GIBIS-UNIFESP",
"wiRedPanda");
20 Settings::settings =
new QSettings(QSettings::IniFormat, QSettings::UserScope,
"GIBIS-UNIFESP",
"wiRedPanda");
23 return Settings::settings;
28 return settingsInstance()->fileName();
31QVariant Settings::value(
const QString &key)
33 return settingsInstance()->value(key);
36void Settings::setValue(
const QString &key,
const QVariant &value)
38 settingsInstance()->setValue(key, value);
47 return value(
"MainWindow/geometry").toByteArray();
52 setValue(
"MainWindow/geometry", geometry);
57 return value(
"MainWindow/windowState").toByteArray();
62 setValue(
"MainWindow/windowState", state);
67 return value(
"MainWindow/splitter/geometry").toByteArray();
72 setValue(
"MainWindow/splitter/geometry", geometry);
77 return value(
"MainWindow/splitter/state").toByteArray();
82 setValue(
"MainWindow/splitter/state", state);
87 return value(
"beWavedDolphin/geometry").toByteArray();
92 setValue(
"beWavedDolphin/geometry", geometry);
99 return value(
"fastMode").toBool();
104 setValue(
"fastMode", enabled);
111 const QVariant saved = value(
"labelsUnderIcons");
112 return saved.isValid() ? saved.toBool() :
true;
117 setValue(
"labelsUnderIcons", enabled);
122 return value(
"icPreviewDisabled").toBool();
127 setValue(
"icPreviewDisabled", disabled);
132 return value(
"updateChecksDisabled").toBool();
137 setValue(
"updateChecksDisabled", disabled);
144 return value(
"language").toString();
149 setValue(
"language", lang);
156 const QVariant v = value(
"theme");
160 const int saved = v.toInt();
161 if (saved >= 0 && saved <=
static_cast<int>(
Theme::System)) {
162 return static_cast<Theme>(saved);
169 setValue(
"theme",
static_cast<int>(
theme));
176 return value(
"recentFileList").toStringList();
181 setValue(
"recentFileList", files);
188 return value(
"autosaveFile").toStringList();
193 setValue(
"autosaveFile", files);
198 return value(
"hideV4Warning").toBool();
204 setValue(
"hideV4Warning",
"true");
206 settingsInstance()->remove(
"hideV4Warning");
212 return value(
"updateCheck/lastCheckDate").toString();
217 setValue(
"updateCheck/lastCheckDate", date);
222 return value(
"updateCheck/skippedVersion").toString();
227 setValue(
"updateCheck/skippedVersion", version);
234 return value(
"exercises/completed").toStringList();
239 setValue(
"exercises/completed", ids);
244 const QVariant v = value(QStringLiteral(
"exercises/progress/") + exerciseId);
245 return v.isValid() ? v.toInt() : -1;
250 setValue(QStringLiteral(
"exercises/progress/") + exerciseId, step);
257 return value(
"tours/completed").toStringList();
262 setValue(
"tours/completed", ids);
267 const QVariant v = value(QStringLiteral(
"tours/progress/") + tourId);
268 return v.isValid() ? v.toInt() : -1;
273 setValue(QStringLiteral(
"tours/progress/") + tourId, step);
278 return value(
"tours/welcomeShown").toBool();
283 setValue(
"tours/welcomeShown", shown);
289 const QVariant v = value(
"minimap/visible");
297 setValue(
"minimap/visible", visible);
302 return value(
"minimap/geometry").toRect();
307 setValue(
"minimap/geometry", geometry);
Typed wrappers around QSettings for all application preferences.
Theme management types and singleton ThemeManager.
Theme
Enumeration of available application themes.
static bool hideV4Warning()
static QByteArray splitterState()
static QByteArray splitterGeometry()
static void setMainWindowState(const QByteArray &state)
static QString updateCheckLastDate()
static int exerciseProgress(const QString &exerciseId)
Returns -1 if no record.
static void setUpdateCheckSkippedVersion(const QString &version)
static void setCompletedTours(const QStringList &ids)
static void setMinimapGeometry(const QRect &geometry)
static void setMinimapVisible(bool visible)
static void setSplitterGeometry(const QByteArray &geometry)
static void setMainWindowGeometry(const QByteArray &geometry)
static bool updateChecksDisabled()
Global opt-out of update checks (for offline/managed installs); default false (enabled).
static QString updateCheckSkippedVersion()
static void setCompletedExercises(const QStringList &ids)
static QByteArray dolphinGeometry()
static QStringList autosaveFiles()
static bool minimapVisible()
static void setAutosaveFiles(const QStringList &files)
static void setIcPreviewDisabled(bool disabled)
static bool labelsUnderIcons()
static QString fileName()
Returns the path to the settings file on disk.
static bool welcomeTourShown()
static void setDolphinGeometry(const QByteArray &geometry)
static QByteArray mainWindowState()
static int tourProgress(const QString &tourId)
Returns -1 if no record.
static void setUpdateCheckLastDate(const QString &date)
static void setSplitterState(const QByteArray &state)
static QStringList recentFiles()
static void setWelcomeTourShown(bool shown)
static void setTourProgress(const QString &tourId, int step)
static QByteArray mainWindowGeometry()
static void setLanguage(const QString &lang)
static QRect minimapGeometry()
static void setExerciseProgress(const QString &exerciseId, int step)
static void setHideV4Warning(bool hide)
static void setUpdateChecksDisabled(bool disabled)
static QString language()
static void setFastMode(bool enabled)
static void setRecentFiles(const QStringList &files)
static QStringList completedExercises()
static bool icPreviewDisabled()
static void setTheme(Theme theme)
static QStringList completedTours()
static void setLabelsUnderIcons(bool enabled)