diff --git a/pref.h b/pref.h index ca969655a..3efe0a5ca 100644 --- a/pref.h +++ b/pref.h @@ -64,6 +64,7 @@ struct preferences { bool doo2breaks; bool drop_stone_mode; bool show_pictures_in_profile; + bool use_default_file; }; enum unit_system_values { METRIC, diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp index a35675690..cc5cfefb8 100644 --- a/qt-ui/preferences.cpp +++ b/qt-ui/preferences.cpp @@ -132,6 +132,7 @@ void PreferencesDialog::setUiFromPrefs() ui.proxyUsername->setText(prefs.proxy_user); ui.proxyPassword->setText(prefs.proxy_pass); ui.proxyType->setCurrentIndex(ui.proxyType->findData(prefs.proxy_type)); + ui.btnUseDefaultFile->setChecked(prefs.use_default_file); } void PreferencesDialog::restorePrefs() @@ -227,6 +228,7 @@ void PreferencesDialog::syncSettings() s.beginGroup("GeneralSettings"); s.setValue("default_filename", ui.defaultfilename->text()); s.setValue("default_cylinder", ui.default_cylinder->currentText()); + s.setValue("use_default_file", ui.btnUseDefaultFile->isChecked()); s.endGroup(); s.beginGroup("Display"); @@ -326,6 +328,7 @@ void PreferencesDialog::loadSettings() s.beginGroup("GeneralSettings"); GET_TXT("default_filename", default_filename); GET_TXT("default_cylinder", default_cylinder); + GET_BOOL("use_default_file", use_default_file); s.endGroup(); s.beginGroup("Display"); @@ -427,3 +430,13 @@ void PreferencesDialog::proxyType_changed(int idx) ui.proxyPassword->setEnabled(hpEnabled & ui.proxyAuthRequired->isChecked()); ui.proxyAuthRequired->setChecked(ui.proxyAuthRequired->isChecked()); } + +void PreferencesDialog::on_btnUseDefaultFile_toggled(bool toggle) +{ + if (toggle) { + ui.defaultfilename->setText(system_default_filename()); + ui.defaultfilename->setEnabled(false); + } else { + ui.defaultfilename->setEnabled(true); + } +} diff --git a/qt-ui/preferences.h b/qt-ui/preferences.h index ac54cc027..2a909db17 100644 --- a/qt-ui/preferences.h +++ b/qt-ui/preferences.h @@ -14,6 +14,7 @@ public: static PreferencesDialog *instance(); void showEvent(QShowEvent *); void emitSettingsChanged(); + signals: void settingsChanged(); public @@ -28,6 +29,7 @@ slots: void gflowChanged(int gf); void gfhighChanged(int gf); void proxyType_changed(int idx); + void on_btnUseDefaultFile_toggled(bool toggle); private: explicit PreferencesDialog(QWidget *parent = 0, Qt::WindowFlags f = 0); diff --git a/qt-ui/preferences.ui b/qt-ui/preferences.ui index 1b5409821..78979d0de 100644 --- a/qt-ui/preferences.ui +++ b/qt-ui/preferences.ui @@ -7,7 +7,7 @@ 0 0 872 - 648 + 830 @@ -192,6 +192,16 @@ + + + + Use default + + + true + + + @@ -969,8 +979,8 @@ accept() - 247 - 635 + 259 + 817 157 @@ -985,8 +995,8 @@ reject() - 315 - 635 + 327 + 817 286 @@ -1225,12 +1235,12 @@ setValue(int) - 181 - 319 + 361 + 439 - 798 - 314 + 831 + 447 @@ -1241,12 +1251,12 @@ setValue(int) - 798 - 314 + 831 + 447 - 181 - 319 + 361 + 439 @@ -1257,12 +1267,12 @@ setEnabled(bool) - 211 - 122 + 200 + 42 - 257 - 151 + 200 + 42 @@ -1273,23 +1283,39 @@ setEnabled(bool) - 230 - 124 + 200 + 42 - 319 - 187 + 200 + 42 + + + + + btnUseDefaultFile + toggled(bool) + chooseFile + setHidden(bool) + + + 754 + 216 + + + 801 + 213 - +