|
| ezVariantSubAccessor (ezObjectAccessorBase *pSource, const ezAbstractProperty *pProp) |
| Constructor.
|
|
void | SetSubItems (const ezMap< const ezDocumentObject *, ezVariant > &subItemMap) |
| Sets the sub-tree indices for the selected objects.
|
|
const ezAbstractProperty * | GetRootProperty () const |
| Returns the property this accessor wraps.
|
|
ezInt32 | GetDepth () const |
| How many level deep the view is inside the property.
|
|
ezResult | GetPath (const ezDocumentObject *pObject, ezDynamicArray< ezVariant > &out_path) const |
|
virtual ezStatus | GetValue (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezVariant &out_value, ezVariant index=ezVariant()) override |
|
virtual ezStatus | SetValue (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, const ezVariant &newValue, ezVariant index=ezVariant()) override |
|
virtual ezStatus | InsertValue (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, const ezVariant &newValue, ezVariant index=ezVariant()) override |
|
virtual ezStatus | RemoveValue (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezVariant index=ezVariant()) override |
|
virtual ezStatus | MoveValue (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, const ezVariant &oldIndex, const ezVariant &newIndex) override |
|
virtual ezStatus | GetCount (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezInt32 &out_iCount) override |
|
virtual ezStatus | GetKeys (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezDynamicArray< ezVariant > &out_keys) override |
|
virtual ezStatus | GetValues (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezDynamicArray< ezVariant > &out_values) override |
|
virtual ezObjectAccessorBase * | ResolveProxy (const ezDocumentObject *&ref_pObject, const ezRTTI *&ref_pType, const ezAbstractProperty *&ref_pProp, ezDynamicArray< ezVariant > &ref_indices) override |
| If this accessor is a proxy accessor, transform the input parameters into those of the source accessor. The default implementation does nothing and returns this. Usually this only needs to be implemented on ezObjectProxyAccessor derived accessors that modify the type, property, view etc of an object.
|
|
| ezObjectProxyAccessor (ezObjectAccessorBase *pSource) |
|
ezObjectAccessorBase * | GetSourceAccessor () const |
|
virtual void | StartTransaction (ezStringView sDisplayString) override |
|
virtual void | CancelTransaction () override |
|
virtual void | FinishTransaction () override |
|
virtual void | BeginTemporaryCommands (ezStringView sDisplayString, bool bFireEventsWhenUndoingTempCommands=false) override |
|
virtual void | CancelTemporaryCommands () override |
|
virtual void | FinishTemporaryCommands () override |
|
virtual const ezDocumentObject * | GetObject (const ezUuid &object) override |
|
virtual ezStatus | AddObject (const ezDocumentObject *pParent, const ezAbstractProperty *pParentProp, const ezVariant &index, const ezRTTI *pType, ezUuid &inout_objectGuid) override |
|
virtual ezStatus | RemoveObject (const ezDocumentObject *pObject) override |
|
virtual ezStatus | MoveObject (const ezDocumentObject *pObject, const ezDocumentObject *pNewParent, const ezAbstractProperty *pParentProp, const ezVariant &index) override |
|
const ezDocumentObjectManager * | GetObjectManager () const |
|
ezStatus | GetValueByName (const ezDocumentObject *pObject, ezStringView sProp, ezVariant &out_value, ezVariant index=ezVariant()) |
|
ezStatus | SetValueByName (const ezDocumentObject *pObject, ezStringView sProp, const ezVariant &newValue, ezVariant index=ezVariant()) |
|
ezStatus | InsertValueByName (const ezDocumentObject *pObject, ezStringView sProp, const ezVariant &newValue, ezVariant index=ezVariant()) |
|
ezStatus | RemoveValueByName (const ezDocumentObject *pObject, ezStringView sProp, ezVariant index=ezVariant()) |
|
ezStatus | MoveValueByName (const ezDocumentObject *pObject, ezStringView sProp, const ezVariant &oldIndex, const ezVariant &newIndex) |
|
ezStatus | GetCountByName (const ezDocumentObject *pObject, ezStringView sProp, ezInt32 &out_iCount) |
|
ezStatus | AddObjectByName (const ezDocumentObject *pParent, ezStringView sParentProp, const ezVariant &index, const ezRTTI *pType, ezUuid &inout_objectGuid) |
|
ezStatus | MoveObjectByName (const ezDocumentObject *pObject, const ezDocumentObject *pNewParent, ezStringView sParentProp, const ezVariant &index) |
|
ezStatus | GetKeysByName (const ezDocumentObject *pObject, ezStringView sProp, ezDynamicArray< ezVariant > &out_keys) |
|
ezStatus | GetValuesByName (const ezDocumentObject *pObject, ezStringView sProp, ezDynamicArray< ezVariant > &out_values) |
|
const ezDocumentObject * | GetChildObjectByName (const ezDocumentObject *pObject, ezStringView sProp, ezVariant index) |
|
ezStatus | ClearByName (const ezDocumentObject *pObject, ezStringView sProp) |
|
const ezAbstractProperty * | FindPropertyByName (const ezDocumentObject *pObject, ezStringView sProp) |
|
template<typename T > |
T | Get (const ezDocumentObject *pObject, const ezAbstractProperty *pProp, ezVariant index=ezVariant()) |
|
template<typename T > |
T | GetByName (const ezDocumentObject *pObject, ezStringView sProp, ezVariant index=ezVariant()) |
|
ezInt32 | GetCount (const ezDocumentObject *pObject, const ezAbstractProperty *pProp) |
|
ezInt32 | GetCountByName (const ezDocumentObject *pObject, ezStringView sProp) |
|
virtual const ezRTTI * | GetDynamicRTTI () const |
|
bool | IsInstanceOf (const ezRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
template<typename T > |
EZ_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
Accessor for a sub-tree on an ezVariant property. The tools foundation code uses an ezDocumentObject, one of its ezAbstractProperty and an optional ezVariant index to reference to properties. Any deeper hierarchies must be built from additional objects. This principle prevents the GUI to reference anything inside an ezVariant that stores an VariantArray or VariantDictionary as ezVariant is a pure value type and cannot store additional objects on the tool side. To work around this, this class creates a view one level deeper into an ezVariant. This is done by calling SetSubItems which for each object in the map moves the view into the sub-tree referenced by the given value of the map.