00001
00012
00013
00014 #ifndef IMEDGINE_SETTINGS_DIALOG_H
00015 #define IMEDGINE_SETTINGS_DIALOG_H
00016
00017
00018 #include <qdialog.h>
00019 #include <QtCore/QVariant>
00020 #include <QtGui/QAction>
00021 #include <QtGui/QApplication>
00022 #include <QtGui/QButtonGroup>
00023 #include <QtGui/QDialog>
00024 #include <QtGui/QGridLayout>
00025 #include <QtGui/QHBoxLayout>
00026 #include <QtGui/QListWidget>
00027 #include <QtGui/QPushButton>
00028 #include <QtGui/QSpacerItem>
00029 #include <QtGui/QStackedWidget>
00030 #include <QtGui/QWidget>
00031
00032 namespace imedgine {
00033
00034 class AlgorithmSettingsWidget;
00035 class WindowLevelSettingsWidget;
00036
00037
00053
00054
00055 class SettingsDialog : public QDialog
00056 {
00057 Q_OBJECT
00058 public:
00059
00060
00064
00065 SettingsDialog(QWidget* parent);
00066
00067
00070
00071 virtual ~SettingsDialog();
00072
00073 private slots:
00074
00075
00081
00082 void changePage(QListWidgetItem* current, QListWidgetItem* previous);
00083
00084
00087
00088 void checkChanges();
00089
00090 private:
00091
00092
00095
00096 void setupUi(QDialog* settings_dialog);
00097
00098
00102
00103 void initializePages();
00104
00105
00106
00107 AlgorithmSettingsWidget* algorithm_settings_widget_;
00108
00109 WindowLevelSettingsWidget* window_level_settings_widget_;
00110
00111
00112 QGridLayout* main_grid_layout_;
00113 QStackedWidget* pages_stacked_widget_;
00114 QListWidget* page_selection_list_widget_;
00115 QHBoxLayout* button_layout_;
00116 QSpacerItem* spacer_item_;
00117 QPushButton* ok_push_button_;
00118 QPushButton* apply_push_button_;
00119 QPushButton* cancel_push_button_;
00120
00121 };
00122
00123 }
00124
00125 #endif