diff options
-rw-r--r-- | qt-gui.cpp | 3 | ||||
-rw-r--r-- | qt-ui/maintab.cpp | 1 | ||||
-rw-r--r-- | qt-ui/mainwindow.cpp | 54 | ||||
-rw-r--r-- | qt-ui/preferences.cpp | 49 | ||||
-rw-r--r-- | qt-ui/preferences.h | 1 | ||||
-rw-r--r-- | qt-ui/profilegraphics.cpp | 1 | ||||
-rw-r--r-- | qt-ui/tableview.cpp | 1 | ||||
-rw-r--r-- | subsurfacestartup.c | 2 | ||||
-rw-r--r-- | subsurfacestartup.h | 2 |
9 files changed, 23 insertions, 91 deletions
diff --git a/qt-gui.cpp b/qt-gui.cpp index a943bff76..c868f6648 100644 --- a/qt-gui.cpp +++ b/qt-gui.cpp @@ -116,9 +116,6 @@ void init_ui(int *argcp, char ***argvp) } QSettings s; - s.beginGroup("GeneralSettings"); - prefs.default_filename = getSetting(s, "default_filename"); - s.endGroup(); s.beginGroup("DiveComputer"); default_dive_computer_vendor = getSetting(s, "dive_computer_vendor"); default_dive_computer_product = getSetting(s,"dive_computer_product"); diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index a56b2fc5d..e3cf0bccb 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -21,7 +21,6 @@ #include <QDebug> #include <QSet> #include <QTableView> -#include <QSettings> #include <QPalette> MainTab::MainTab(QWidget *parent) : QTabWidget(parent), diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 53198902c..23c972741 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -557,6 +557,13 @@ bool MainWindow::askSaveChanges() else \ prefs.field = default_prefs.field +#define GET_TXT(name, field) \ + v = s.value(QString(name)); \ + if (v.isValid()) \ + prefs.field = strdup(v.toString().toUtf8().constData()); \ + else \ + prefs.field = default_prefs.field + void MainWindow::initialUiSetup() { @@ -620,18 +627,17 @@ void MainWindow::readSettings() GET_BOOL("show_sac", show_sac); s.endGroup(); + s.beginGroup("GeneralSettings"); + GET_TXT("default_filename", default_filename); + s.endGroup(); + s.beginGroup("Display"); - v = s.value(QString("divelist_font")); - if (v.isValid()) - prefs.divelist_font = strdup(v.toString().toUtf8().data()); + GET_TXT("divelist_font", divelist_font); + GET_INT("font_size", font_size); + GET_INT("displayinvalid", display_invalid_dives); + s.endGroup(); } -#define SAVE_VALUE(name, field) \ - if (prefs.field != default_prefs.field) \ - settings.setValue(name, prefs.field); \ - else \ - settings.remove(name) - void MainWindow::writeSettings() { QSettings settings; @@ -643,36 +649,6 @@ void MainWindow::writeSettings() saveSplitterSizes(); } settings.endGroup(); - - settings.beginGroup("Units"); - SAVE_VALUE("length", units.length); - SAVE_VALUE("pressure", units.pressure); - SAVE_VALUE("volume", units.volume); - SAVE_VALUE("temperature", units.temperature); - SAVE_VALUE("weight", units.weight); - SAVE_VALUE("vertical_speed_time", units.vertical_speed_time); - settings.endGroup(); - settings.beginGroup("TecDetails"); - SAVE_VALUE("po2graph", pp_graphs.po2); - SAVE_VALUE("pn2graph", pp_graphs.pn2); - SAVE_VALUE("phegraph", pp_graphs.phe); - SAVE_VALUE("po2threshold", pp_graphs.po2_threshold); - SAVE_VALUE("pn2threshold", pp_graphs.pn2_threshold); - SAVE_VALUE("phethreshold", pp_graphs.phe_threshold); - SAVE_VALUE("mod", mod); - SAVE_VALUE("modppO2", mod_ppO2); - SAVE_VALUE("ead", ead); - SAVE_VALUE("redceiling", profile_red_ceiling); - SAVE_VALUE("calcceiling", profile_calc_ceiling); - SAVE_VALUE("calcceiling3m", calc_ceiling_3m_incr); - SAVE_VALUE("calcalltissues", calc_all_tissues); - SAVE_VALUE("dcceiling", profile_dc_ceiling); - SAVE_VALUE("gflow", gflow); - SAVE_VALUE("gfhigh", gfhigh); - settings.endGroup(); - settings.beginGroup("GeneralSettings"); - SAVE_VALUE("default_filename", default_filename); - settings.endGroup(); } void MainWindow::closeEvent(QCloseEvent *event) diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp index b9fb26018..f638d9d7d 100644 --- a/qt-ui/preferences.cpp +++ b/qt-ui/preferences.cpp @@ -77,7 +77,7 @@ void PreferencesDialog::setUiFromPrefs() ui.font->setFont(QString(prefs.divelist_font)); ui.fontsize->setValue(prefs.font_size); ui.defaultfilename->setText(prefs.default_filename); - ui.displayinvalid->setChecked(prefs.show_invalid); + ui.displayinvalid->setChecked(prefs.display_invalid_dives); ui.show_sac->setChecked(prefs.show_sac); ui.vertical_speed_minutes->setChecked(prefs.units.vertical_speed_time == units::MINUTES); ui.vertical_speed_seconds->setChecked(prefs.units.vertical_speed_time == units::SECONDS); @@ -86,6 +86,7 @@ void PreferencesDialog::setUiFromPrefs() void PreferencesDialog::restorePrefs() { prefs = oldPrefs; + setUiFromPrefs(); } void PreferencesDialog::rememberPrefs() @@ -93,41 +94,6 @@ void PreferencesDialog::rememberPrefs() oldPrefs = prefs; } -#define SP(V, B) prefs.V = (int)(B->isChecked() ? 1 : 0) - -void PreferencesDialog::setPrefsFromUi() -{ - SP(pp_graphs.phe, ui.phe); - SP(pp_graphs.po2, ui.po2); - SP(pp_graphs.pn2, ui.pn2); - prefs.pp_graphs.phe_threshold = ui.pheThreshold->value(); - prefs.pp_graphs.po2_threshold = ui.po2Threshold->value(); - prefs.pp_graphs.pn2_threshold = ui.pn2Threshold->value(); - SP(ead, ui.ead_end_eadd); - SP(mod, ui.mod); - prefs.mod_ppO2 = ui.maxppo2->value(); - SP(profile_dc_ceiling, ui.dc_reported_ceiling); - SP(profile_red_ceiling, ui.red_ceiling); - SP(profile_calc_ceiling, ui.calculated_ceiling); - SP(calc_ceiling_3m_incr, ui.increment_3m); - SP(calc_ndl_tts, ui.calc_ndl_tts); - SP(calc_all_tissues, ui.all_tissues); - prefs.gflow = ui.gflow->value(); - prefs.gfhigh = ui.gfhigh->value(); - prefs.unit_system = ui.metric->isChecked() ? METRIC : (ui.imperial->isChecked() ? IMPERIAL : PERSONALIZE); - prefs.units.temperature = ui.fahrenheit->isChecked() ? units::FAHRENHEIT : units::CELSIUS; - prefs.units.length = ui.feet->isChecked() ? units::FEET : units::METERS; - prefs.units.pressure = ui.psi->isChecked() ? units::PSI : units::BAR; - prefs.units.volume = ui.cuft->isChecked() ? units::CUFT : units::LITER; - prefs.units.weight = ui.lbs->isChecked() ? units::LBS : units::KG; - prefs.units.vertical_speed_time = ui.vertical_speed_minutes->isChecked() ? units::MINUTES : units::SECONDS; - prefs.divelist_font = strdup(ui.font->font().family().toUtf8().data()); - prefs.font_size = ui.fontsize->value(); - prefs.default_filename = strdup(ui.defaultfilename->text().toUtf8().data()); - prefs.display_invalid_dives = ui.displayinvalid->isChecked(); - SP(show_sac, ui.show_sac); -} - #define SB(V, B) s.setValue(V, (int)(B->isChecked() ? 1 : 0)) void PreferencesDialog::syncSettings() @@ -170,9 +136,12 @@ void PreferencesDialog::syncSettings() s.endGroup(); // Defaults s.beginGroup("GeneralSettings"); - s.value("table_fonts", ui.font->font().family()); - s.value("font_size", ui.fontsize->value()); s.value("default_filename", ui.defaultfilename->text()); + s.endGroup(); + + s.beginGroup("Display"); + s.value("divelist_font", ui.font->font().family()); + s.value("font_size", ui.fontsize->value()); s.value("displayinvalid", ui.displayinvalid->isChecked()); s.endGroup(); s.sync(); @@ -185,16 +154,12 @@ void PreferencesDialog::buttonClicked(QAbstractButton* button) switch(ui.buttonBox->standardButton(button)){ case QDialogButtonBox::Discard: restorePrefs(); - setUiFromPrefs(); - syncSettings(); close(); break; case QDialogButtonBox::Apply: - setPrefsFromUi(); syncSettings(); break; case QDialogButtonBox::FirstButton: - setPrefsFromUi(); syncSettings(); close(); break; diff --git a/qt-ui/preferences.h b/qt-ui/preferences.h index c9590db07..1cd3d9096 100644 --- a/qt-ui/preferences.h +++ b/qt-ui/preferences.h @@ -26,7 +26,6 @@ public slots: private: explicit PreferencesDialog(QWidget* parent = 0, Qt::WindowFlags f = 0); void setUiFromPrefs(); - void setPrefsFromUi(); void setUIFromSettings(); Ui::PreferencesDialog ui; struct preferences oldPrefs; diff --git a/qt-ui/profilegraphics.cpp b/qt-ui/profilegraphics.cpp index 3e7cff237..834d7bdb1 100644 --- a/qt-ui/profilegraphics.cpp +++ b/qt-ui/profilegraphics.cpp @@ -1557,7 +1557,6 @@ void ToolTipItem::persistPos() s.beginGroup("ProfileMap"); s.setValue("tooltip_position", currentPos); s.endGroup(); - s.sync(); } void ToolTipItem::readPos() diff --git a/qt-ui/tableview.cpp b/qt-ui/tableview.cpp index d9731b477..80100218a 100644 --- a/qt-ui/tableview.cpp +++ b/qt-ui/tableview.cpp @@ -36,7 +36,6 @@ TableView::~TableView() s.setValue(QString("colwidth%1").arg(i), ui.tableView->columnWidth(i)); } s.endGroup(); - s.sync(); } void TableView::setBtnToolTip(const QString& tooltip) diff --git a/subsurfacestartup.c b/subsurfacestartup.c index 1cf52e3b0..8d5e609a9 100644 --- a/subsurfacestartup.c +++ b/subsurfacestartup.c @@ -26,7 +26,7 @@ struct preferences default_prefs = { .gflow = 30, .gfhigh = 75, .font_size = 14.0, - .show_invalid = FALSE, + .display_invalid_dives = FALSE, .show_sac = FALSE, }; diff --git a/subsurfacestartup.h b/subsurfacestartup.h index c979dc71e..e5d7750f7 100644 --- a/subsurfacestartup.h +++ b/subsurfacestartup.h @@ -10,8 +10,6 @@ extern "C" { #endif -extern struct preferences prefs; -extern struct preferences default_prefs; extern bool imported; void setup_system_prefs(void); |