split transform into cut and copy commands and implement history
This commit is contained in:
@@ -122,12 +122,12 @@ class CanvasModeMaskFree : public CanvasMode
|
||||
bool m_dragging = false;
|
||||
std::vector<vertex_t> m_points;
|
||||
std::vector<glm::vec2> m_points2d;
|
||||
std::map<int, int> m_dirty_planes;
|
||||
public:
|
||||
virtual void on_Draw(const glm::mat4& ortho, const glm::mat4& proj, const glm::mat4& camera) override;
|
||||
virtual void on_MouseEvent(MouseEvent* me, glm::vec2& loc) override;
|
||||
virtual void init() override;
|
||||
virtual void leave() override;
|
||||
void clear();
|
||||
};
|
||||
|
||||
class CanvasModeMaskLine : public CanvasMode
|
||||
@@ -170,9 +170,12 @@ class CanvasModeTransform : public CanvasMode
|
||||
glm::mat4 m_drag_xform_local{1};
|
||||
std::vector<vertex_t> m_points{};
|
||||
std::vector<glm::vec2> m_points2d{};
|
||||
std::vector<vertex_t> m_points_face[6];
|
||||
std::map<int, int> m_dirty_planes{};
|
||||
bool m_active_tool = false;
|
||||
public:
|
||||
enum class ActionType : uint8_t { Copy, Cut, Import };
|
||||
ActionType m_action;
|
||||
CanvasModeTransform() = default;
|
||||
virtual void on_Draw(const glm::mat4& ortho, const glm::mat4& proj, const glm::mat4& camera) override;
|
||||
virtual void on_MouseEvent(MouseEvent* me, glm::vec2& loc) override;
|
||||
|
||||
Reference in New Issue
Block a user