Plasma Engine  2.0
Loading...
Searching...
No Matches
StandardGizmoEditTools.h
1#pragma once
2
3#include <EditorFramework/EditTools/GizmoEditTool.h>
4#include <EditorFramework/EditorFrameworkDLL.h>
5#include <EditorFramework/Gizmos/DragToPositionGizmo.h>
6#include <EditorFramework/Gizmos/RotateGizmo.h>
7#include <EditorFramework/Gizmos/ScaleGizmo.h>
8#include <EditorFramework/Gizmos/TranslateGizmo.h>
9
11class plPreferences;
12
13class PL_EDITORFRAMEWORK_DLL plTranslateGizmoEditTool : public plGameObjectGizmoEditTool
14{
15 PL_ADD_DYNAMIC_REFLECTION(plTranslateGizmoEditTool, plGameObjectGizmoEditTool);
16
17public:
20
21 virtual plEditToolSupportedSpaces GetSupportedSpaces() const override { return plEditToolSupportedSpaces::LocalAndWorldSpace; }
22 virtual bool GetSupportsMoveParentOnly() const override { return true; }
23 virtual void GetGridSettings(plGridSettingsMsgToEngine& out_gridSettings) override;
24
25protected:
26 virtual void OnConfigured() override;
27 virtual void ApplyGizmoVisibleState(bool visible) override;
28 virtual void ApplyGizmoTransformation(const plTransform& transform) override;
29 virtual void TransformationGizmoEventHandlerImpl(const plGizmoEvent& e) override;
30 virtual void OnActiveChanged(bool bIsActive) override;
31
32private:
33 void OnPreferenceChange(plPreferences* pref);
34
35 plTranslateGizmo m_TranslateGizmo;
36};
37
39
40class PL_EDITORFRAMEWORK_DLL plRotateGizmoEditTool : public plGameObjectGizmoEditTool
41{
42 PL_ADD_DYNAMIC_REFLECTION(plRotateGizmoEditTool, plGameObjectGizmoEditTool);
43
44public:
47
48 virtual plEditToolSupportedSpaces GetSupportedSpaces() const override { return plEditToolSupportedSpaces::LocalAndWorldSpace; }
49 virtual bool GetSupportsMoveParentOnly() const override { return true; }
50
51protected:
52 virtual void OnConfigured() override;
53 virtual void ApplyGizmoVisibleState(bool visible) override;
54 virtual void ApplyGizmoTransformation(const plTransform& transform) override;
55 virtual void TransformationGizmoEventHandlerImpl(const plGizmoEvent& e) override;
56 virtual void OnActiveChanged(bool bIsActive) override;
57
58private:
59 plRotateGizmo m_RotateGizmo;
60};
61
63
64class PL_EDITORFRAMEWORK_DLL plScaleGizmoEditTool : public plGameObjectGizmoEditTool
65{
66 PL_ADD_DYNAMIC_REFLECTION(plScaleGizmoEditTool, plGameObjectGizmoEditTool);
67
68public:
71
72 virtual plEditToolSupportedSpaces GetSupportedSpaces() const override { return plEditToolSupportedSpaces::LocalSpaceOnly; }
73
74protected:
75 virtual void OnConfigured() override;
76 virtual void ApplyGizmoVisibleState(bool visible) override;
77 virtual void ApplyGizmoTransformation(const plTransform& transform) override;
78 virtual void TransformationGizmoEventHandlerImpl(const plGizmoEvent& e) override;
79 virtual void OnActiveChanged(bool bIsActive) override;
80
81private:
82 plScaleGizmo m_ScaleGizmo;
83};
84
86
87class PL_EDITORFRAMEWORK_DLL plDragToPositionGizmoEditTool : public plGameObjectGizmoEditTool
88{
90
91public:
94
95 virtual plEditToolSupportedSpaces GetSupportedSpaces() const override { return plEditToolSupportedSpaces::LocalSpaceOnly; }
96 virtual bool GetSupportsMoveParentOnly() const override { return true; }
97
98protected:
99 virtual void OnConfigured() override;
100 virtual void ApplyGizmoVisibleState(bool visible) override;
101 virtual void ApplyGizmoTransformation(const plTransform& transform) override;
102 virtual void TransformationGizmoEventHandlerImpl(const plGizmoEvent& e) override;
103 virtual void OnActiveChanged(bool bIsActive) override;
104
105private:
106 plDragToPositionGizmo m_DragToPosGizmo;
107};
Definition StandardGizmoEditTools.h:88
Definition DragToPositionGizmo.h:9
Definition GizmoEditTool.h:15
Definition EngineProcessMessages.h:508
Base class for all preferences.
Definition Preferences.h:17
Definition GameObjectDocumentWindow.moc.h:12
Definition StandardGizmoEditTools.h:41
Definition RotateGizmo.h:8
Definition StandardGizmoEditTools.h:65
Definition ScaleGizmo.h:8
Definition StandardGizmoEditTools.h:14
Definition TranslateGizmo.h:9
Definition GizmoBase.h:11