ddt 1.2.1
Loading...
Searching...
No Matches
ddtDialog.hpp
Go to the documentation of this file.
1
19#ifndef DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
20#define DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
21
22#include <QtWidgets>
23
27class DdtDialog : public QDialog {
28 Q_OBJECT
29
30 public:
35 explicit DdtDialog(QWidget* parent = nullptr);
36
40 virtual ~DdtDialog();
41
48 virtual void SetInitialParameter(const QString parameter_id,
49 const QVariant parameter) = 0;
50
56 virtual QString GetDialogName() = 0;
57
58 protected:
62 virtual void CreateDialog() = 0;
63
67 virtual void AddDefaultButtonsToLayout(QBoxLayout* layout,
68 bool show_confirm_button,
69 bool show_quit_button,
70 bool show_cancel_button);
71
76 virtual QLayout* GetMainLayout();
77
89 void connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member);
90 void connect(const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method);
91 void connect(const QObject *sender, const char *signal, const char *member);
92
103 template <typename Func1, typename Func2>
104 void connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot);
105
109 QLayout* main_layout;
110
111 private:
112 QPushButton* confirm_button;
113 QPushButton* quit_button;
114 QPushButton* cancel_button;
115
116 public slots:
121 virtual void ConfirmPressed();
122
127 virtual void CancelPressed();
128
133 virtual void QuitPressed();
134
138 virtual void SetChangedParameter(const QString param_id,
139 const QVariant parameter);
140
141 signals:
145 void ParameterChanged(const QString dialog_id, const QString param_id,
146 const QVariant parameter);
147};
148
149template <typename Func1, typename Func2>
150void DdtDialog::connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal, const QObject *context, Func2 slot) {
151 QObject::connect(sender, signal, context, slot, Qt::QueuedConnection);
152}
153
154#endif // DDT_DATAVISUALISATION_DDTDIALOGS_DIALOG_HPP
155
Definition ddtDialog.hpp:27
virtual void CreateDialog()=0
virtual void QuitPressed()
Definition ddtDialog.cpp:72
DdtDialog(QWidget *parent=nullptr)
Definition ddtDialog.cpp:25
virtual void AddDefaultButtonsToLayout(QBoxLayout *layout, bool show_confirm_button, bool show_quit_button, bool show_cancel_button)
Definition ddtDialog.cpp:35
virtual QString GetDialogName()=0
virtual QLayout * GetMainLayout()
Definition ddtDialog.cpp:79
virtual ~DdtDialog()
virtual void CancelPressed()
Definition ddtDialog.cpp:70
virtual void ConfirmPressed()
Definition ddtDialog.cpp:68
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:81
virtual void SetChangedParameter(const QString param_id, const QVariant parameter)
Definition ddtDialog.cpp:74
QLayout * main_layout
Definition ddtDialog.hpp:109