ddt 1.2.1
Loading...
Searching...
No Matches
ddtPVCMDialog.hpp
Go to the documentation of this file.
1
21#ifndef DDT_DATAVISUALISATION_DDTDIALOGS_PVCM_HPP
22#define DDT_DATAVISUALISATION_DDTDIALOGS_PVCM_HPP
23
24#include <QtWidgets>
25
29
33class DdtPVCMDialog : public DdtDialog {
34 Q_OBJECT
35
36 public:
41 explicit DdtPVCMDialog(QWidget *parent = nullptr);
42
46 virtual ~DdtPVCMDialog() = default;
47
54 void SetInitialParameter(const QString parameter_id,
55 const QVariant parameter) override;
56
62 void SetChangedParameter(const QString param_id,
63 const QVariant parameter) override;
64
69 QString GetDialogName() override;
70
71 protected:
75 virtual void CreateDialog() override;
76
77 virtual void RetranslateUi();
78
79 virtual void paintEvent(QPaintEvent *event) override;
80
81 private:
82 QVBoxLayout *vertical_layout;
83 QVBoxLayout *vertical_layout_header;
84 QLabel *label_header;
85 QHBoxLayout *horizontal_layout_low_high;
86 QLabel *label_low;
87 QLineEdit *line_edit_low_0;
88 QLineEdit *line_edit_low_1;
89 QSpacerItem *horizontal_spacer;
90 QLabel *label_high;
91 QLineEdit *line_edit_high_0;
92 QLineEdit *line_edit_high_1;
93 QHBoxLayout *horizontal_layout_autoset;
94 QLabel *label_autoset;
95 QRadioButton *radio_button_0;
96 QRadioButton *radio_button_1;
97 QRadioButton *radio_button_2;
98 QRadioButton *radio_button_3;
99 QRadioButton *radio_button_4;
100 QRadioButton *radio_button_5;
101 QDialogButtonBox *push_buttons_box;
102 QPushButton *push_button_median;
103 QPushButton *push_button_reset;
104 QPushButton *push_button_cancel;
105
106 QList<QRadioButton *> radio_button_list;
107
108 QGridLayout *chart_layout;
109
110 QLabel *label_chart;
111 QLabel *label_xaxis;
112 QLabel *label_yaxis;
113 QLabel *label_fill;
114
115 std::unique_ptr<QPainterPath> line_path;
116 std::unique_ptr<QGraphicsPathItem> line_path_item;
117
118 QList<QVariant> spectrum_vals;
119 QList<QPointF> point_list;
120
121 double pixel_min;
122 double pixel_max;
123
124 double range_x_min;
125 double range_x_max;
126 double value_y_min;
127 double value_y_max;
128
129 double chart_x_min;
130 double chart_x_max;
131 double chart_y_min;
132 double chart_y_max;
133
134 bool initialized;
135
136 void CreateLayouts();
137 void CreateWidgets();
138 void CreateLineEditWidgets(const QFont font);
139 void CreateLabelWidgets(const QFont font);
140 void CreateButtonWidgets();
141 void ClearEditWidgets();
142 void CreateChart();
143 void ResetRadioButtons();
144 void ClearChart();
145
146 void SetCutValues(const QList<QVariant> cut_values, const bool initial_set);
147 void SetHistogram(const QList<QVariant> hist_values);
148
149 void ShowHistogram();
150 void DrawScaleX(const double min_value, const double max_value,
151 double *chart_min_value, double *chart_max_value,
152 QPainter &painter) const;
153 void DrawScaleY(const double min_value, const double max_value,
154 double *chart_min_value, double *chart_max_value,
155 QPainter &painter) const;
156 double CalculateTickPositionLinear(const double tick, const double min_value,
157 const double width,
158 const double maxsize) const;
159
160 void FillPointList(const double xfactor, const double yfactor,
161 const int height);
162
163 void FindValueMinMax();
164
165 public slots:
170 virtual void ResetPressed();
171
176 virtual void MedianFilterPressed();
177
181 virtual void QuitPressed() override;
182
186 virtual void UpdateCutValues();
187
191 virtual void AutoSetPressed0();
192
196 virtual void AutoSetPressed1();
197
201 virtual void AutoSetPressed2();
202
206 virtual void AutoSetPressed3();
207
211 virtual void AutoSetPressed4();
212
216 virtual void AutoSetPressed5();
217
218 signals:
222 void ParameterChanged(const QString dialog_id, const QString param_id,
223 const QVariant parameter);
224};
225
226#endif // DDT_DATAVISUALISATION_DDTDIALOGS_PVCM_HPP
227
Definition ddtDialog.hpp:27
Definition ddtPVCMDialog.hpp:33
void SetInitialParameter(const QString parameter_id, const QVariant parameter) override
Definition ddtPVCMDialog.cpp:672
virtual void UpdateCutValues()
Definition ddtPVCMDialog.cpp:778
void SetChangedParameter(const QString param_id, const QVariant parameter) override
Definition ddtPVCMDialog.cpp:694
virtual void AutoSetPressed0()
Definition ddtPVCMDialog.cpp:741
virtual ~DdtPVCMDialog()=default
virtual void paintEvent(QPaintEvent *event) override
Definition ddtPVCMDialog.cpp:144
virtual void RetranslateUi()
Definition ddtPVCMDialog.cpp:640
virtual void QuitPressed() override
Definition ddtPVCMDialog.cpp:736
virtual void MedianFilterPressed()
Definition ddtPVCMDialog.cpp:728
virtual void AutoSetPressed3()
Definition ddtPVCMDialog.cpp:759
QString GetDialogName() override
Definition ddtPVCMDialog.cpp:36
DdtPVCMDialog(QWidget *parent=nullptr)
Definition ddtPVCMDialog.cpp:31
virtual void AutoSetPressed2()
Definition ddtPVCMDialog.cpp:753
virtual void AutoSetPressed5()
Definition ddtPVCMDialog.cpp:771
void ParameterChanged(const QString dialog_id, const QString param_id, const QVariant parameter)
virtual void AutoSetPressed1()
Definition ddtPVCMDialog.cpp:747
virtual void CreateDialog() override
Definition ddtPVCMDialog.cpp:40
virtual void AutoSetPressed4()
Definition ddtPVCMDialog.cpp:765
virtual void ResetPressed()
Definition ddtPVCMDialog.cpp:720
DDT Utils. Helper classes for DDT Datavisualisation. Utilities for the DDT Datavisualisation.
DDT Dialog IDs. ID values for all used dialogs. IDs for the used dialogs.
DDT Dialogs. Base class for the DDT dialogs. Base class for the DDT dialogs.