widgets/vec3editor.h

changeset 255
5188f8a74a5c
parent 254
b7b29cb82360
child 264
76a025db4948
equal deleted inserted replaced
254:b7b29cb82360 255:5188f8a74a5c
4 #include "ui_vec3editor.h" 4 #include "ui_vec3editor.h"
5 5
6 class VectorInput : public QWidget 6 class VectorInput : public QWidget
7 { 7 {
8 Q_OBJECT 8 Q_OBJECT
9 Q_PROPERTY(qreal x READ x WRITE setX)
10 Q_PROPERTY(qreal y READ y WRITE setY)
11 Q_PROPERTY(qreal z READ z WRITE setZ)
9 Ui_Vec3Editor ui; 12 Ui_Vec3Editor ui;
10 public: 13 public:
11 enum Flag 14 enum Flag
12 { 15 {
13 NoMultiplyButton = 0x1 16 NoMultiplyButton = 0x1
15 explicit VectorInput(const glm::vec3& value, QWidget* parent = nullptr, QFlags<Flag> flags = {}); 18 explicit VectorInput(const glm::vec3& value, QWidget* parent = nullptr, QFlags<Flag> flags = {});
16 explicit VectorInput(QWidget* parent = nullptr, QFlags<Flag> flags = {}); 19 explicit VectorInput(QWidget* parent = nullptr, QFlags<Flag> flags = {});
17 ~VectorInput(); 20 ~VectorInput();
18 glm::vec3 value() const; 21 glm::vec3 value() const;
19 void setValue(const glm::vec3& value); 22 void setValue(const glm::vec3& value);
20 Q_SIGNALS: 23 qreal x() const;
21 void valueChanged(const glm::vec3& value); 24 qreal y() const;
25 qreal z() const;
26 Q_SLOT void setX(qreal x);
27 Q_SLOT void setY(qreal y);
28 Q_SLOT void setZ(qreal z);
29 Q_SIGNAL void valueChanged(const glm::vec3& value);
22 private: 30 private:
23 std::array<class DoubleSpinBox*, 3> spinboxes(); 31 std::array<class DoubleSpinBox*, 3> spinboxes();
24 Q_SLOT void multiplyPressed(); 32 Q_SLOT void multiplyPressed();
25 }; 33 };
26 34

mercurial