Plasma Engine  2.0
Loading...
Searching...
No Matches
SceneDocumentWindow.moc.h
1#pragma once
2
3#include <EditorFramework/DocumentWindow/EngineDocumentWindow.moc.h>
4#include <EditorFramework/DocumentWindow/EngineViewWidget.moc.h>
5#include <EditorFramework/DocumentWindow/GameObjectDocumentWindow.moc.h>
6#include <EditorFramework/EditTools/EditTool.h>
7#include <EditorFramework/Gizmos/DragToPositionGizmo.h>
8#include <EditorFramework/Gizmos/RotateGizmo.h>
9#include <EditorFramework/Gizmos/ScaleGizmo.h>
10#include <EditorFramework/Gizmos/TranslateGizmo.h>
11#include <EditorFramework/IPC/EngineProcessConnection.h>
12#include <EditorFramework/InputContexts/CameraMoveContext.h>
13#include <EditorPluginScene/Actions/GizmoActions.h>
14#include <Foundation/Basics.h>
15#include <GuiFoundation/PropertyGrid/Declarations.h>
16
18class QGridLayout;
21class QSettings;
23class plPreferences;
26class plSceneDocument;
27class QMenu;
28
29Q_DECLARE_OPAQUE_POINTER(plQtSceneViewWidget*);
30
32{
33 Q_OBJECT
34
35public:
38
39 plSceneDocument* GetSceneDocument() const;
40
41 virtual void CreateImageCapture(const char* szOutputPath) override;
42
43public Q_SLOTS:
44 void ToggleViews(QWidget* pView);
45
46public:
49 virtual plObjectAccessorBase* GetObjectAccessor() override;
50 virtual bool CanDuplicateSelection() const override;
51 virtual void DuplicateSelection() override;
53
54protected:
55 virtual void ProcessMessageEventHandler(const plEditorEngineDocumentMsg* pMsg) override;
56 virtual void InternalRedraw() override;
57
58 void GameObjectEventHandler(const plGameObjectEvent& e);
59 void SnapSelectionToPosition(bool bSnapEachObject);
60 void SendRedrawMsg();
61 void ExtendPropertyGridContextMenu(QMenu& menu, const plHybridArray<plPropertySelection, 8>& items, const plAbstractProperty* pProp);
62
63protected:
64 plQtQuadViewWidget* m_pQuadViewWidget = nullptr;
65};
66
68{
69 Q_OBJECT
70
71public:
74
75 virtual const char* GetWindowLayoutGroupName() const override { return "Scene"; }
76};
This is the base interface for all properties in the reflection system. It provides enough informatio...
Definition AbstractProperty.h:150
Base class for all messages that are tied to some document.
Definition EngineProcessMessages.h:151
Definition EditTool.h:12
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
Definition ObjectAccessorBase.h:8
Base class for all preferences.
Definition Preferences.h:17
Definition GameObjectDocumentWindow.moc.h:12
Definition QuadViewWidget.moc.h:18
Definition SceneDocumentWindow.moc.h:32
virtual void CreateImageCapture(const char *szOutputPath) override
For unit tests to take a screenshot of the window (may include multiple views) to do image comparison...
Definition SceneDocumentWindow.cpp:114
Definition SceneDocumentWindow.moc.h:68
virtual const char * GetWindowLayoutGroupName() const override
The 'GroupName' is used for serializing window layouts. It should be unique among different window ty...
Definition SceneDocumentWindow.moc.h:75
Definition SceneViewWidget.moc.h:7
Wraps and decorates a view widget with a toolbar and layout.
Definition EngineViewWidget.moc.h:167
Definition SceneDocument.h:22
Definition QuadViewPreferences.h:7
Definition EngineDocumentWindow.moc.h:21
Definition GameObjectDocument.h:28
Definition ManipulatorManager.h:14