XII Release 0.1.0
Loading...
Searching...
No Matches
xiiDocumentObjectManager Class Reference

Represents to content of a document. Every document has exactly one root object under which all objects need to be parented. The default root object is xiiDocumentRoot. More...

#include <DocumentObjectManager.h>

Inheritance diagram for xiiDocumentObjectManager:
[legend]

Classes

class  Storage

Public Member Functions

 xiiDocumentObjectManager (const xiiRTTI *pRootType=xiiDocumentRoot::GetStaticRTTI())
void SetDocument (xiiDocument *pDocument)
xiiDocumentObject * CreateObject (const xiiRTTI *pRtti, xiiUuid guid=xiiUuid())
void DestroyObject (xiiDocumentObject *pObject)
virtual void DestroyAllObjects ()
virtual void GetCreateableTypes (xiiHybridArray< const xiiRTTI *, 32 > &ref_types) const
void PatchEmbeddedClassObjects (const xiiDocumentObject *pObject) const
const xiiDocumentObject * GetRootObject () const
xiiDocumentObject * GetRootObject ()
const xiiDocumentObject * GetObject (const xiiUuid &guid) const
xiiDocumentObject * GetObject (const xiiUuid &guid)
const xiiDocument * GetDocument () const
xiiDocument * GetDocument ()
xiiStatus SetValue (xiiDocumentObject *pObject, xiiStringView sProperty, const xiiVariant &newValue, xiiVariant index=xiiVariant())
xiiStatus InsertValue (xiiDocumentObject *pObject, xiiStringView sProperty, const xiiVariant &newValue, xiiVariant index=xiiVariant())
xiiStatus RemoveValue (xiiDocumentObject *pObject, xiiStringView sProperty, xiiVariant index=xiiVariant())
xiiStatus MoveValue (xiiDocumentObject *pObject, xiiStringView sProperty, const xiiVariant &oldIndex, const xiiVariant &newIndex)
void AddObject (xiiDocumentObject *pObject, xiiDocumentObject *pParent, xiiStringView sParentProperty, xiiVariant index)
void RemoveObject (xiiDocumentObject *pObject)
void MoveObject (xiiDocumentObject *pObject, xiiDocumentObject *pNewParent, xiiStringView sParentProperty, xiiVariant index)
xiiStatus CanAdd (const xiiRTTI *pRtti, const xiiDocumentObject *pParent, xiiStringView sParentProperty, const xiiVariant &index) const
xiiStatus CanRemove (const xiiDocumentObject *pObject) const
xiiStatus CanMove (const xiiDocumentObject *pObject, const xiiDocumentObject *pNewParent, xiiStringView sParentProperty, const xiiVariant &index) const
xiiStatus CanSelect (const xiiDocumentObject *pObject) const
bool IsUnderRootProperty (xiiStringView sRootProperty, const xiiDocumentObject *pObject) const
bool IsUnderRootProperty (xiiStringView sRootProperty, const xiiDocumentObject *pParent, xiiStringView sParentProperty) const
bool IsTemporary (const xiiDocumentObject *pObject) const
bool IsTemporary (const xiiDocumentObject *pParent, xiiStringView sParentProperty) const
xiiSharedPtr< xiiDocumentObjectManager::Storage > SwapStorage (xiiSharedPtr< xiiDocumentObjectManager::Storage > pNewStorage)
xiiSharedPtr< xiiDocumentObjectManager::Storage > GetStorage ()

Public Attributes

xiiCopyOnBroadcastEvent< const xiiDocumentObjectStructureEvent & > m_StructureEvents
xiiCopyOnBroadcastEvent< const xiiDocumentObjectPropertyEvent & > m_PropertyEvents
xiiEvent< const xiiDocumentObjectEvent & > m_ObjectEvents

Friends

class xiiObjectAccessorBase

Detailed Description

Represents to content of a document. Every document has exactly one root object under which all objects need to be parented. The default root object is xiiDocumentRoot.

Member Function Documentation

◆ InternalCanAdd()

virtual xiiStatus xiiDocumentObjectManager::InternalCanAdd ( const xiiRTTI * pRtti,
const xiiDocumentObject * pParent,
xiiStringView sParentProperty,
const xiiVariant & index ) const
inlineprivatevirtual

Reimplemented in xiiVisualShaderNodeManager.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Tools/Libs/ToolsFoundation/Object/DocumentObjectManager.h
  • /home/runner/work/XII/XII/Source/Tools/Libs/ToolsFoundation/Object/Implementation/DocumentObjectManager.cpp