iVS3D v2.0.0
Loading...
Searching...
No Matches
settingswidget.h
1#ifndef SETTINGSWIDGET_H
2#define SETTINGSWIDGET_H
3
4#define DESCRIPTION_STYLE "color: rgb(58, 58, 58); border-left: 6px solid rgb(58, 58, 58); border-top-right-radius: 5px; border-bottom-right-radius: 5px; background-color: lightblue;"
5
6#define PROCESSOR_LABEL_STYLE_DEFAULT "color: green; height: 2em"
7#define PROCESSOR_LABEL_STYLE_ERROR "color: red; height: 2em"
8
9#define SPINNER_ICON_STYLE_DEFAULT "background: transparent; color: green"
10#define SPINNER_ICON_STYLE_ERROR "background: transparent; color: red"
11
12#include <QObject>
13#include <QWidget>
14#include <QLayout>
15#include <QGridLayout>
16#include <QFormLayout>
17#include <QComboBox>
18#include <QLabel>
19#include <QCheckBox>
20#include <QSlider>
21#include <QPushButton>
22#include <QCoreApplication>
23
24#include <opencv2/core.hpp>
25
26#include "cvmat_qmetadata.h"
27#include "spinnericon.h"
28
43class SettingsWidget : public QWidget
44{
45 Q_OBJECT
46public:
53 explicit SettingsWidget(QWidget *parent = nullptr, QStringList ONNXmodelList = QStringList(""), float blendAlpha = 0.5f, const QString &modelPath="");
55
56 void setClasses(QBoolList boolList);
57 void setModel(uint modelIndex);
58
59signals:
65
70 void sig_selectedClassesChanged(QBoolList classes);
71
76 void sig_blendAlphaChanged(float alpha);
77
78public slots:
85 void slot_classesAndColorsChanged(QStringList classes, QColorList colors, QBoolList selectedClasses);
86
92 void slot_showTask(QString processor, QString task, bool active);
93
94 void slot_showError(QString message);
95
96private slots:
97 // --- slots for gui elements to process events and emit signals ---
98 void slot_comboBoxIdxChanged(int idx);
99 void slot_selectedClassesChanged(bool);
100 void slot_overlayAlphaChanged(int percent);
101 void slot_invertSelectionPressed();
102
103private:
104 std::vector<QCheckBox*> m_classBoxes;
105 QGridLayout *m_gridLayout;
106 QComboBox *m_comboBox;
107 QSlider *m_alphaSlider;
108 QPushButton *m_invertButton;
109 QLabel *m_processorLabel;
110 SpinnerIcon *m_spinnerIcon;
111};
112
113#endif // SETTINGSWIDGET_H
The SettingsWidget class provides user access to the parameters of SemanticSegmentation....
Definition settingswidget.h:44
void slot_classesAndColorsChanged(QStringList classes, QColorList colors, QBoolList selectedClasses)
[slot] slot_classesAndColorsChanged updates the class list for the chosen model.
Definition settingswidget.cpp:114
void sig_selectedClassesChanged(QBoolList classes)
[signal] sig_selectedClassesChanged is emitted if a class is selected / deselected.
void slot_showTask(QString processor, QString task, bool active)
[slot] slot_showTask displays the given task message and the processor used .
Definition settingswidget.cpp:137
void sig_blendAlphaChanged(float alpha)
[signal] sig_blendAlphaChanged is emitted on blend alpha value changed.
void sig_selectedONNXIndexChanged(int idx)
[signal] sig_selectedONNXIndexChanged is emitted if a different model is chosen.
Definition spinnericon.h:10