]> sigrok.org Git - pulseview.git/blobdiff - pv/globalsettings.hpp
Fix random clazy warnings
[pulseview.git] / pv / globalsettings.hpp
index 51212b023ab19f2e79145d991117bf804c707904..d23bf637153a093b277671aad684d506ec31a561 100644 (file)
 #include <map>
 
 #include <glib.h>
+#include <glibmm/variant.h>
 
+#include <QPalette>
 #include <QSettings>
 #include <QString>
 #include <QVariant>
 
 using std::map;
+using std::pair;
 using std::vector;
 
 namespace pv {
 
+extern const vector< pair<QString, QString> > Themes;
+
+
 class GlobalSettingsInterface
 {
 public:
@@ -45,17 +51,23 @@ class GlobalSettings : public QSettings
        Q_OBJECT
 
 public:
+       static const QString Key_General_Theme;
        static const QString Key_View_ZoomToFitDuringAcq;
        static const QString Key_View_ZoomToFitAfterAcq;
        static const QString Key_View_TriggerIsZeroTime;
-       static const QString Key_View_ColouredBG;
+       static const QString Key_View_ColoredBG;
        static const QString Key_View_StickyScrolling;
        static const QString Key_View_ShowSamplingPoints;
+       static const QString Key_View_FillSignalHighAreas;
+       static const QString Key_View_FillSignalHighAreaColor;
        static const QString Key_View_ShowAnalogMinorGrid;
        static const QString Key_View_ConversionThresholdDispMode;
        static const QString Key_View_DefaultDivHeight;
        static const QString Key_View_DefaultLogicHeight;
+       static const QString Key_View_ShowHoverMarker;
+       static const QString Key_View_SnapDistance;
        static const QString Key_Dec_InitialStateConfigurable;
+       static const QString Key_Dec_ExportFormat;
        static const QString Key_Log_BufferSize;
        static const QString Key_Log_NotifyOfStacktrace;
 
@@ -70,6 +82,9 @@ public:
 
        void set_defaults_where_needed();
 
+       void save_default_palette();
+       void apply_theme();
+
        static void add_change_handler(GlobalSettingsInterface *cb);
        static void remove_change_handler(GlobalSettingsInterface *cb);
 
@@ -97,11 +112,17 @@ public:
 
        static GVariant* restore_gvariant(QSettings &settings);
 
+       static void store_variantbase(QSettings &settings, Glib::VariantBase v);
+
+       static Glib::VariantBase restore_variantbase(QSettings &settings);
+
 private:
        static vector<GlobalSettingsInterface*> callbacks_;
 
        static bool tracking_;
        static map<QString, QVariant> tracked_changes_;
+
+       static QPalette default_palette_;
 };
 
 } // namespace pv