src/ui/polygonobjecteditor.h

Tue, 28 Sep 2021 22:14:00 +0300

author
Teemu Piippo <teemu@hecknology.net>
date
Tue, 28 Sep 2021 22:14:00 +0300
changeset 143
7b62c52835a1
parent 100
43ce3672648a
child 152
03f8e6d42e13
permissions
-rw-r--r--

Fix memory corruption involving document tools.
I don't think that the metaobject-initialization had anything to do with this
but it is a lot simpler without it anyway.

#pragma once
#include <QWidget>
#include <QSplitter>
#include "main.h"
#include "../widgets/vec3editor.h"

class Model;

class PolygonObjectEditor : public QWidget
{
public:
	PolygonObjectEditor(Model* model, ldraw::id_t id, QWidget* parent = nullptr);
	~PolygonObjectEditor();
	ldraw::id_t objectId() const;
	void setObjectId(ldraw::id_t id);
private:
	void buildWidgets();
	void setupPointWidget(int n);
	Q_SLOT void pointChanged(const glm::vec3& value);
	Model* model;
	ldraw::id_t storedObjectId;
	std::vector<std::unique_ptr<QWidget>> widgets;
	std::optional<QSplitter> splitter;
};

mercurial