ddt 1.4.0
 
Loading...
Searching...
No Matches
ddtDialog.hpp
Go to the documentation of this file.
1
9
10#ifndef DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
11#define DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
12
13#include <QtWidgets>
14
18class DdtDialog : public QDialog {
19 Q_OBJECT
20
21 public:
26 explicit DdtDialog(QWidget* parent = nullptr);
27
31 virtual ~DdtDialog();
32
39 virtual void SetInitialParameter(const QString parameter_id,
40 const QVariant parameter) = 0;
41
47 virtual QString GetDialogName() = 0;
48
49 protected:
53 virtual void CreateDialog() = 0;
54
58 virtual void AddDefaultButtonsToLayout(QBoxLayout* layout,
59 bool show_confirm_button,
60 bool show_quit_button,
61 bool show_cancel_button);
62
67 virtual QLayout* GetMainLayout();
68
80 void connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member);
81 void connect(const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method);
82 void connect(const QObject *sender, const char *signal, const char *member);
83
94 template <typename Func1, typename Func2>
95 void connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot);
96
100 QLayout* main_layout;
101
102 private:
103 QPushButton* confirm_button;
104 QPushButton* quit_button;
105 QPushButton* cancel_button;
106
107 public slots:
112 virtual void ConfirmPressed();
113
118 virtual void CancelPressed();
119
124 virtual void QuitPressed();
125
129 virtual void SetChangedParameter(const QString param_id,
130 const QVariant parameter);
131
132 signals:
136 void ParameterChanged(const QString dialog_id, const QString param_id,
137 const QVariant parameter);
138};
139
140template <typename Func1, typename Func2>
141void DdtDialog::connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot) {
142 QObject::connect(sender, signal, context, slot, Qt::QueuedConnection);
143}
144
145#endif // DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
virtual void CreateDialog()=0
virtual void QuitPressed()
Definition ddtDialog.cpp:63
DdtDialog(QWidget *parent=nullptr)
Definition ddtDialog.cpp:16
virtual void AddDefaultButtonsToLayout(QBoxLayout *layout, bool show_confirm_button, bool show_quit_button, bool show_cancel_button)
Definition ddtDialog.cpp:26
virtual QString GetDialogName()=0
virtual QLayout * GetMainLayout()
Definition ddtDialog.cpp:70
virtual ~DdtDialog()
virtual void CancelPressed()
Definition ddtDialog.cpp:61
virtual void ConfirmPressed()
Definition ddtDialog.cpp:59
void ParameterChanged(const QString dialog_id, const QString param_id, const QVariant parameter)
virtual void SetInitialParameter(const QString parameter_id, const QVariant parameter)=0
void connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member)
connect Group of overloaded functions that use the QObject::connect method with the Qt::QueuedConnect...
Definition ddtDialog.cpp:72
virtual void SetChangedParameter(const QString param_id, const QVariant parameter)
Definition ddtDialog.cpp:65
QLayout * main_layout
Definition ddtDialog.hpp:100