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)
 
xiiDocumentObjectCreateObject (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 xiiDocumentObjectGetRootObject () const
 
xiiDocumentObjectGetRootObject ()
 
const xiiDocumentObjectGetObject (const xiiUuid &guid) const
 
xiiDocumentObjectGetObject (const xiiUuid &guid)
 
const xiiDocumentGetDocument () const
 
xiiDocumentGetDocument ()
 
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::StorageSwapStorage (xiiSharedPtr< xiiDocumentObjectManager::Storage > pNewStorage)
 
xiiSharedPtr< xiiDocumentObjectManager::StorageGetStorage ()
 

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: