remove ui namespace which is not really used, move CameraData in camera_modes.h to avoid the inclusion of canva.h

This commit is contained in:
2018-11-27 14:24:01 +01:00
parent f34ffa825d
commit 0c6b409606
57 changed files with 538 additions and 597 deletions

View File

@@ -3,18 +3,26 @@
#include "shape.h"
#include "brush.h"
#include "texture.h"
#include "canvas.h"
#include <poly2tri.h>
// NS_START
// class Canvas;
// NS_END
class Canvas;
struct CameraData
{
glm::mat4 m_mv{ 1 };
glm::mat4 m_proj{ 1 };
glm::vec4 m_box{ 0 };
glm::vec4 m_vp{ 0 };
glm::vec2 m_pan{ 0 };
glm::mat4 m_plane_unproject[6] = SIXPLETTE(glm::mat4(1));
glm::vec3 m_plane_dir[6] = SIXPLETTE(glm::vec3(0));
};
class CanvasMode
{
public:
static class NodeCanvas* node;
static ui::Canvas* canvas;
static Canvas* canvas;
virtual void on_MouseEvent(MouseEvent* me, glm::vec2& loc) {}
virtual void on_KeyEvent(KeyEvent* ke) {}
virtual void on_GestureEvent(GestureEvent* ge) {}
@@ -53,7 +61,7 @@ class CanvasModePen : public CanvasMode
float m_zoom_canvas = 1.f;
float m_zoom_start;
bool m_valid_brush = false;
ui::Brush m_brush;
Brush m_brush;
// resizing the tip
bool m_resizing = false;
public:
@@ -67,7 +75,7 @@ public:
class CanvasModeLine : public CanvasMode
{
ui::LineSegment m_line;
LineSegment m_line;
bool m_dragging = false;
glm::vec2 m_drag_start;
glm::vec2 m_drag_pos;
@@ -79,7 +87,7 @@ public:
class CanvasModeGrid : public CanvasMode
{
ui::LineSegment m_line;
LineSegment m_line;
glm::vec3 origin;
glm::vec3 dir;
int m_plane_id;
@@ -105,7 +113,7 @@ public:
class CanvasModeFill : public CanvasMode
{
ui::DynamicShape m_shape;
DynamicShape m_shape;
bool m_dragging = false;
std::vector<vertex_t> m_points;
std::map<int, int> m_dirty_planes;
@@ -119,11 +127,11 @@ public:
class CanvasModeMaskFree : public CanvasMode
{
friend class CanvasModeTransform;
ui::DynamicShape m_shape;
DynamicShape m_shape;
bool m_dragging = false;
std::vector<vertex_t> m_points;
std::vector<glm::vec2> m_points2d;
struct ui::CameraData m_selection_cam;
CameraData m_selection_cam;
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;
@@ -134,7 +142,7 @@ public:
class CanvasModeMaskLine : public CanvasMode
{
ui::DynamicShape m_shape;
DynamicShape m_shape;
bool m_dragging = false;
std::vector<vertex_t> m_points;
std::vector<glm::vec2> m_points2d;
@@ -150,9 +158,9 @@ public:
class CanvasModeTransform : public CanvasMode
{
ui::DynamicShape m_shape[6]{};
ui::Sphere m_sphere{};
ui::Circle m_circle{};
DynamicShape m_shape[6]{};
Sphere m_sphere{};
Circle m_circle{};
Texture2D m_tex[6]{};
glm::vec3 m_origin{0, 0, 1 };
std::vector<glm::vec3> corners{};
@@ -178,7 +186,7 @@ class CanvasModeTransform : public CanvasMode
public:
enum class ActionType : uint8_t { Copy, Cut, Import };
ActionType m_action;
ui::Image m_source_image;
Image m_source_image;
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;