src/ui/objecteditor.h

changeset 200
ca23936b455b
parent 183
97b591813c8b
child 206
654661eab7f3
equal deleted inserted replaced
199:6988973515d2 200:ca23936b455b
1 #pragma once 1 #pragma once
2 #include <QWidget> 2 #include <QWidget>
3 #include "../main.h" 3 #include "../main.h"
4 #include "../model.h" 4 #include "../model.h"
5
6 class Document;
7
8 class ObjectEditor : public QWidget
9 {
10 Q_OBJECT
11 public:
12 explicit ObjectEditor(Document* document, ldraw::id_t id = ldraw::NULL_ID);
13 ~ObjectEditor();
14 void setObjectId(ldraw::id_t id);
15 private:
16 Q_SLOT void handleColorChange(ldraw::Color value);
17 Q_SLOT void handleVec3Change(const glm::vec3& value);
18 Q_SLOT void handleBoolChange(bool value);
19 Q_SLOT void handleStringChange(const QString& value);
20 class Ui_ObjectEditor& ui;
21 Document* const document;
22 ldraw::id_t objectId = ldraw::NULL_ID;
23 QMap<ldraw::Property, QPair<QWidget*, QWidget*>> propertyWidgets;
24 QWidget* makeEditorWidgetForProperty(ldraw::Property property);
25 void handlePropertyChange(QObject* caller, const QVariant& value);
26 };

mercurial