From 3e853e37a5b0b9509fb92b1ddb3031f117578fb9 Mon Sep 17 00:00:00 2001 From: willemferguson Date: Sat, 7 Dec 2019 20:27:25 +0200 Subject: 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 Signed-off-by: Dirk Hohndel --- core/settings/qPrefEquipment.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 core/settings/qPrefEquipment.h (limited to 'core/settings/qPrefEquipment.h') diff --git a/core/settings/qPrefEquipment.h b/core/settings/qPrefEquipment.h new file mode 100644 index 000000000..33fe9f8d6 --- /dev/null +++ b/core/settings/qPrefEquipment.h @@ -0,0 +1,40 @@ +// SPDX-License-Identifier: GPL-2.0 +#ifndef QPREFEQUIPMENT_H +#define QPREFEQUIPMENT_H +#include "core/pref.h" + +#include + +class qPrefEquipment : public QObject { + Q_OBJECT + Q_PROPERTY(QString default_cylinder READ default_cylinder WRITE set_default_cylinder NOTIFY default_cylinderChanged) + Q_PROPERTY(bool display_unused_tanks READ display_unused_tanks WRITE set_display_unused_tanks NOTIFY display_unused_tanksChanged) + +public: + static qPrefEquipment *instance(); + + // Load/Sync local settings (disk) and struct preference + static void loadSync(bool doSync); + static void load() { loadSync(false); } + static void sync() { loadSync(true); } + +public: + static QString default_cylinder() { return prefs.default_cylinder; } + static bool display_unused_tanks() { return prefs.display_unused_tanks; } + +public slots: + static void set_default_cylinder(const QString& value); + static void set_display_unused_tanks(bool value); + +signals: + void default_cylinderChanged(const QString& value); + void display_unused_tanksChanged(bool value); + +private: + qPrefEquipment() {} + static void disk_default_cylinder(bool doSync); + static void disk_display_unused_tanks(bool doSync); +}; + +#endif + -- cgit v1.2.3-70-g09d2