summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/preferences/preferencesdialog.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2015-11-02 19:54:34 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-11-02 19:54:34 -0800
commit8ea7f404574c2ee571d2dde6bb6be3791e962150 (patch)
tree6a050178bfc71bf10558968f2a3bc0a12d8c525f /desktop-widgets/preferences/preferencesdialog.h
parentb273c1b0ca7bfe933e7c83742f1610f6bbe3f4d3 (diff)
parentdf7818a9b8495285b4d9812e5d6d50d6f9c08813 (diff)
downloadsubsurface-8ea7f404574c2ee571d2dde6bb6be3791e962150.tar.gz
Merge branch 'cmakeAndPreferences'
Diffstat (limited to 'desktop-widgets/preferences/preferencesdialog.h')
-rw-r--r--desktop-widgets/preferences/preferencesdialog.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/desktop-widgets/preferences/preferencesdialog.h b/desktop-widgets/preferences/preferencesdialog.h
new file mode 100644
index 000000000..5f7f5f979
--- /dev/null
+++ b/desktop-widgets/preferences/preferencesdialog.h
@@ -0,0 +1,35 @@
+#ifndef PREFERENCES_WIDGET_H
+#define PREFERENCES_WIDGET_H
+
+#include <QDialog>
+#include "pref.h"
+
+class AbstractPreferencesWidget;
+class QListWidget;
+class QStackedWidget;
+class QDialogButtonBox;
+class QAbstractButton;
+
+class PreferencesDialog : public QDialog {
+ Q_OBJECT
+public:
+ static PreferencesDialog* instance();
+ virtual ~PreferencesDialog();
+ void addPreferencePage(AbstractPreferencesWidget *page);
+ void refreshPages();
+ void emitSettingsChanged();
+signals:
+ void settingsChanged();
+private:
+ PreferencesDialog();
+ void cancelRequested();
+ void applyRequested(bool closeIt);
+ void defaultsRequested();
+ void buttonClicked(QAbstractButton *btn);
+ QList<AbstractPreferencesWidget*> pages;
+ QListWidget *pagesList;
+ QStackedWidget *pagesStack;
+ QDialogButtonBox *buttonBox;
+};
+
+#endif