3#include <EditorPluginScene/Objects/SceneObjectManager.h>
4#include <EditorPluginScene/Scene/SceneDocument.h>
5#include <Foundation/Types/UniquePtr.h>
6#include <ToolsFoundation/Document/DocumentManager.h>
7#include <ToolsFoundation/Object/ObjectCommandAccessor.h>
78 plSelectionManager* GetSceneSelectionManager()
const {
return m_pSceneSelectionManager.Borrow(); }
79 plCommandHistory* GetSceneCommandHistory()
const {
return m_pSceneCommandHistory.Borrow(); }
90 plSelectionManager* GetLayerSelectionManager()
const {
return m_pLayerSelection.Borrow(); }
95 const plUuid& GetActiveLayer()
const;
98 bool IsLayerLoaded(
const plUuid& layerGuid)
const;
103 bool IsLayerVisible(
const plUuid& layerGuid)
const;
109 bool IsAnyLayerModified()
const;
115 virtual void InitializeAfterLoading(
bool bFirstTimeCreation)
override;
116 virtual void InitializeAfterLoadingAndSaving()
override;
135 void SendLayerVisibility();
136 void LayerAdded(
const plUuid& layerGuid,
const plUuid& layerObjectGuid);
137 void LayerRemoved(
const plUuid& layerGuid);
141 plCopyOnBroadcastEvent<const plDocumentObjectStructureEvent&>::Unsubscriber m_StructureEventSubscriber;
142 plCopyOnBroadcastEvent<const plSelectionManagerEvent&>::Unsubscriber m_LayerSelectionEventSubscriber;
143 plEvent<const plCommandHistoryEvent&, plMutex>::Unsubscriber m_CommandHistoryEventSubscriber;
144 plCopyOnBroadcastEvent<const plDocumentManager::Event&>::Unsubscriber m_DocumentManagerEventSubscriber;
151 bool m_bVisible =
true;
virtual plTaskGroupID InternalSaveDocument(AfterSaveCallback callback) override
Overrides the base function to call UpdateAssetDocumentInfo() to update the settings hash.
Definition AssetDocument.cpp:92
Stores the undo / redo stacks of transactions done on a document.
Definition CommandHistory.h:52
Definition DocumentObjectBase.h:11
Represents to content of a document. Every document has exactly one root object under which all objec...
Definition DocumentObjectManager.h:116
Definition DynamicArray.h:81
Base class for all messages that are tied to some document.
Definition EngineProcessMessages.h:151
virtual void SendGameWorldToEngine()
Sends the current state of the scene to the engine process. This is typically done after scene load o...
Definition GameObjectDocument.cpp:797
Definition HashTable.h:333
Definition ObjectAccessorBase.h:8
All classes that should be dynamically reflectable, need to be derived from this base class.
Definition DynamicRTTI.h:86
Definition Scene2Document.h:66
Definition SceneDocument.h:22
virtual void HandleEngineMessage(const plEditorEngineDocumentMsg *pMsg) override
Handles all messages received from the corresponding plEngineProcessDocumentContext on the engine pro...
Definition SceneDocument.cpp:1574
Definition SceneObjectManager.h:11
Definition Scene2Document.h:36
Definition Scene2Document.h:12
Definition Scene2Document.h:24
Selection Manager stores a set of selected document objects.
Definition SelectionManager.h:26
plStringView represent a read-only sub-string of a larger string, as it can store a dedicated string ...
Definition StringView.h:34
Given out by plTaskSystem::CreateTaskGroup to identify a task group.
Definition TaskSystemDeclarations.h:103
A Unique ptr manages an object and destroys that object when it goes out of scope....
Definition UniquePtr.h:10
This data type is the abstraction for 128-bit Uuid (also known as GUID) instances.
Definition Uuid.h:11
Definition CommandHistory.h:31
Definition DocumentManager.h:65
Used by plDocumentObjectManager::m_StructureEvents.
Definition DocumentObjectManager.h:45
Definition Scene2Document.h:49
Definition SelectionManager.h:10
An plResult with an additional message for the reason of failure.
Definition Status.h:12