summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/preferences/preferences_equipment.cpp
diff options
context:
space:
mode:
authorGravatar willemferguson <willemferguson@zoology.up.ac.za>2019-12-07 20:27:25 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-12-25 02:57:42 +0900
commit3e853e37a5b0b9509fb92b1ddb3031f117578fb9 (patch)
tree35281a57f8ca70611c78a85ef3dbfa459d9efacb /desktop-widgets/preferences/preferences_equipment.cpp
parentc121afc96c0135ada550de4504153434fa83feb4 (diff)
downloadsubsurface-3e853e37a5b0b9509fb92b1ddb3031f117578fb9.tar.gz
Preferences UI: create new equipment tab
Remove the "Show unused cylinders" checkbox (Profile tab) and the "Set default cylinder" qTextEdit box (General tab) and put them in a separate and new Equipment tab. This sounds like a simple task but, as can be seen from the files changed, was actually a complex matter. Adapt the existing test programs (General and TechDetails) for creating a test program that tests parts of the Equipment tab. Signed-off-by: willemferguson <willemferguson@zoology.up.ac.za> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'desktop-widgets/preferences/preferences_equipment.cpp')
-rw-r--r--desktop-widgets/preferences/preferences_equipment.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/desktop-widgets/preferences/preferences_equipment.cpp b/desktop-widgets/preferences/preferences_equipment.cpp
new file mode 100644
index 000000000..a446a279b
--- /dev/null
+++ b/desktop-widgets/preferences/preferences_equipment.cpp
@@ -0,0 +1,41 @@
+// SPDX-License-Identifier: GPL-2.0
+#include "preferences_equipment.h"
+#include "ui_preferences_equipment.h"
+#include "core/settings/qPrefEquipment.h"
+#include "core/qthelper.h"
+#include "core/dive.h"
+
+#include <QApplication>
+#include <QMessageBox>
+#include <QSortFilterProxyModel>
+
+#include "qt-models/models.h"
+
+PreferencesEquipment::PreferencesEquipment() : AbstractPreferencesWidget(tr("Equipment"), QIcon(":preferences-equipment-icon"), 4)
+{
+ ui = new Ui::PreferencesEquipment();
+ ui->setupUi(this);
+}
+
+PreferencesEquipment::~PreferencesEquipment()
+{
+ delete ui;
+}
+
+void PreferencesEquipment::refreshSettings()
+{
+ ui->display_unused_tanks->setChecked(prefs.display_unused_tanks);
+ ui->default_cylinder->clear();
+ for (int i = 0; i < MAX_TANK_INFO && tank_info[i].name != NULL; i++) {
+ ui->default_cylinder->addItem(tank_info[i].name);
+ if (qPrefEquipment::default_cylinder() == tank_info[i].name)
+ ui->default_cylinder->setCurrentIndex(i);
+ }
+}
+
+void PreferencesEquipment::syncSettings()
+{
+ auto equipment = qPrefEquipment::instance();
+ qPrefEquipment::set_display_unused_tanks(ui->display_unused_tanks->isChecked());
+ equipment->set_default_cylinder(ui->default_cylinder->currentText());
+}