preparations for multiple unit (uBTC, mBTC, BTC) support, fix amount entry issue
[novacoin.git] / src / qt / optionsdialog.h
1 #ifndef OPTIONSDIALOG_H
2 #define OPTIONSDIALOG_H
3
4 #include <QDialog>
5
6 QT_BEGIN_NAMESPACE
7 class QStackedWidget;
8 class QListWidget;
9 class QListWidgetItem;
10 class QPushButton;
11 QT_END_NAMESPACE
12 class OptionsModel;
13 class MainOptionsPage;
14 class DisplayOptionsPage;
15 class MonitoredDataMapper;
16
17 class OptionsDialog : public QDialog
18 {
19     Q_OBJECT
20 public:
21     explicit OptionsDialog(QWidget *parent=0);
22
23     void setModel(OptionsModel *model);
24
25 signals:
26
27 public slots:
28     void changePage(int index);
29
30 private slots:
31     void okClicked();
32     void cancelClicked();
33     void applyClicked();
34     void enableApply();
35     void disableApply();
36 private:
37     QListWidget *contents_widget;
38     QStackedWidget *pages_widget;
39     OptionsModel *model;
40     MonitoredDataMapper *mapper;
41     QPushButton *apply_button;
42
43     // Pages
44     MainOptionsPage *main_page;
45     DisplayOptionsPage *display_page;
46
47     void setupMainPage();
48 };
49
50 #endif // OPTIONSDIALOG_H