Rebel Fork Framework
Attribute.h File Reference
#include "../Container/FlagSet.h"
#include "../Container/Ptr.h"
#include "../Core/Variant.h"
#include <EASTL/optional.h>

Classes

class  Urho3D::AttributeAccessor
 Abstract base class for invoking attribute accessors. More...
 
struct  Urho3D::AttributeInfo
 Description of an automatically serializable variable. More...
 
struct  Urho3D::AttributeHandle
 

Enumerations

enum  Urho3D::AttributeMode {
  Urho3D::AM_EDIT = 0 , Urho3D::AM_FILE = 1 << 0 , Urho3D::AM_NOEDIT = 1 << 1 , Urho3D::AM_NODEID = 1 << 2 ,
  Urho3D::AM_COMPONENTID = 1 << 3 , Urho3D::AM_NODEIDVECTOR = 1 << 4 , Urho3D::AM_READONLY = 1 << 5 , Urho3D::AM_PREFAB = 1 << 6 ,
  Urho3D::AM_TEMPORARY = 1 << 7 , Urho3D::AM_DEFAULT = 1 << 0 | 1 << 6
}
 
enum class  Urho3D::AttributeScopeHint { Attribute , Serializable , Node , Scene }
 

Functions

 Urho3D::URHO3D_FLAGSET (AttributeMode, AttributeModeFlags)
 

Enumeration Type Documentation

◆ AttributeMode

Enumerator
AM_EDIT 

Attribute shown only in the editor, but not serialized.

AM_FILE 

Attribute used for file serialization.

AM_NOEDIT 

Attribute should not be shown in the editor.

AM_NODEID 

Attribute is a node ID and may need rewriting.

AM_COMPONENTID 

Attribute is a component ID and may need rewriting.

AM_NODEIDVECTOR 

Attribute is a node ID vector where first element is the amount of nodes.

AM_READONLY 

Attribute is readonly. Can't be used with binary serialized objects.

AM_PREFAB 

Attribute should be saved in prefab.

AM_TEMPORARY 

Attribute should be saved in temporary storages even when other serialization is disabled.

AM_DEFAULT 

Default mode, same as AM_FILE and AM_PREFAB.

◆ AttributeScopeHint

enum class Urho3D::AttributeScopeHint
strong

Attribute scope hint. Indicates the scope of changes caused by an attribute. Used for undo/redo in the Editor.

Enumerator
Attribute 

Attribute change doesn't affect any other attributes.

Serializable 

Attribute change may affect other attributes in the same object (node or component).

Node 

Attribute change may affect other attributes, components or children nodes in the owner node.

Scene 

Attribute change may affect anything in the scene.

Warning
It is not fully supported by the Editor yet!