|
| ScrollView (Context *context) |
| Construct.
|
|
| ~ScrollView () override |
| Destruct.
|
|
void | Update (float timeStep) override |
| Perform UI element update.
|
|
void | ApplyAttributes () override |
| Apply attribute changes that can not be applied immediately.
|
|
void | OnWheel (int delta, MouseButtonFlags buttons, QualifierFlags qualifiers) override |
| React to mouse wheel.
|
|
void | OnKey (Key key, MouseButtonFlags buttons, QualifierFlags qualifiers) override |
| React to a key press.
|
|
void | OnResize (const IntVector2 &newSize, const IntVector2 &delta) override |
| React to resize.
|
|
bool | IsWheelHandler () const override |
| Return whether the element could handle wheel input.
|
|
void | SetContentElement (UIElement *element) |
|
void | SetViewPosition (const IntVector2 &position) |
|
void | SetViewPosition (int x, int y) |
| Set view offset from the top-left corner.
|
|
void | SetScrollBarsVisible (bool horizontal, bool vertical) |
| Set scrollbars' visibility manually. Disables scrollbar autoshow/hide.
|
|
void | SetHorizontalScrollBarVisible (bool visible) |
|
void | SetVerticalScrollBarVisible (bool visible) |
|
void | SetScrollBarsAutoVisible (bool enable) |
|
void | SetScrollStep (float step) |
|
void | SetPageStep (float step) |
|
void | SetScrollDeceleration (float deceleration) |
|
void | SetScrollSnapEpsilon (float snap) |
|
void | SetAutoDisableChildren (bool disable) |
|
void | SetAutoDisableThreshold (float amount) |
|
const IntVector2 & | GetViewPosition () const |
|
UIElement * | GetContentElement () const |
|
ScrollBar * | GetHorizontalScrollBar () const |
|
ScrollBar * | GetVerticalScrollBar () const |
|
BorderImage * | GetScrollPanel () const |
|
bool | GetScrollBarsAutoVisible () const |
|
bool | GetHorizontalScrollBarVisible () const |
|
bool | GetVerticalScrollBarVisible () const |
|
float | GetScrollStep () const |
|
float | GetPageStep () const |
|
float | GetScrollDeceleration () const |
|
float | GetScrollSnapEpsilon () const |
|
bool | GetAutoDisableChildren () const |
|
float | GetAutoDisableThreshold () const |
|
void | SetViewPositionAttr (const IntVector2 &value) |
| Set view position attribute.
|
|
| UIElement (Context *context) |
| Construct.
|
|
| ~UIElement () override |
| Destruct.
|
|
void | ApplyAttributes () override |
| Apply attribute changes that can not be applied immediately.
|
|
bool | LoadXML (const XMLElement &source) override |
| Load from XML data. Return true if successful.
|
|
virtual bool | LoadXML (const XMLElement &source, XMLFile *styleFile) |
| Load from XML data with style. Return true if successful.
|
|
virtual UIElement * | LoadChildXML (const XMLElement &childElem, XMLFile *styleFile) |
| Create a child by loading from XML data with style. Returns the child element if successful, null if otherwise.
|
|
bool | SaveXML (XMLElement &dest) const override |
| Save as XML data. Return true if successful.
|
|
virtual bool | IsWithinScissor (const IntRect ¤tScissor) |
| Return whether is visible and inside a scissor rectangle and should be rendered.
|
|
virtual const IntVector2 & | GetScreenPosition () const |
|
virtual void | GetBatches (ea::vector< UIBatch > &batches, ea::vector< float > &vertexData, const IntRect ¤tScissor) |
| Return UI rendering batches.
|
|
virtual void | GetDebugDrawBatches (ea::vector< UIBatch > &batches, ea::vector< float > &vertexData, const IntRect ¤tScissor) |
| Return UI rendering batches for debug draw.
|
|
virtual void | OnHover (const IntVector2 &position, const IntVector2 &screenPosition, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor) |
| React to mouse hover.
|
|
virtual void | OnClickBegin (const IntVector2 &position, const IntVector2 &screenPosition, MouseButton button, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor) |
| React to mouse click begin.
|
|
virtual void | OnClickEnd (const IntVector2 &position, const IntVector2 &screenPosition, MouseButton button, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor, UIElement *beginElement) |
| React to mouse click end.
|
|
virtual void | OnDoubleClick (const IntVector2 &position, const IntVector2 &screenPosition, MouseButton button, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor) |
| React to double mouse click.
|
|
virtual void | OnDragBegin (const IntVector2 &position, const IntVector2 &screenPosition, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor) |
| React to mouse drag begin.
|
|
virtual void | OnDragMove (const IntVector2 &position, const IntVector2 &screenPosition, const IntVector2 &deltaPos, MouseButtonFlags buttons, QualifierFlags qualifiers, Cursor *cursor) |
| React to mouse drag motion.
|
|
virtual void | OnDragEnd (const IntVector2 &position, const IntVector2 &screenPosition, MouseButtonFlags dragButtons, MouseButtonFlags releaseButtons, Cursor *cursor) |
| React to mouse drag end.
|
|
virtual void | OnDragCancel (const IntVector2 &position, const IntVector2 &screenPosition, MouseButtonFlags dragButtons, MouseButtonFlags cancelButtons, Cursor *cursor) |
| React to a mouse drag cancel event (ie, when an extra button is pressed).
|
|
virtual bool | OnDragDropTest (UIElement *source) |
| React to drag and drop test. Return true to signal that the drop is acceptable.
|
|
virtual bool | OnDragDropFinish (UIElement *source) |
| React to drag and drop finish. Return true to signal that the drop was accepted.
|
|
virtual void | OnTextInput (const ea::string &text) |
| React to text input event.
|
|
virtual void | OnPositionSet (const IntVector2 &newPosition) |
| React to position change.
|
|
virtual void | OnSetEditable () |
| React to editable status change.
|
|
virtual void | OnIndentSet () |
| React to indent change.
|
|
virtual IntVector2 | ScreenToElement (const IntVector2 &screenPosition) |
| Convert screen coordinates to element coordinates.
|
|
virtual IntVector2 | ElementToScreen (const IntVector2 &position) |
| Convert element coordinates to screen coordinates.
|
|
bool | LoadXML (Deserializer &source) |
| Load from an XML file. Return true if successful.
|
|
bool | SaveXML (Serializer &dest, const ea::string &indentation="\t") const |
| Save to an XML file. Return true if successful.
|
|
bool | FilterAttributes (XMLElement &dest) const |
| Filter attributes in serialization process.
|
|
void | SetName (const ea::string &name) |
|
void | SetPosition (const IntVector2 &position) |
|
void | SetPosition (int x, int y) |
| Set position.
|
|
void | SetSize (const IntVector2 &size) |
|
void | SetSize (int width, int height) |
| Set size.
|
|
void | SetWidth (int width) |
|
void | SetHeight (int height) |
|
void | SetMinSize (const IntVector2 &minSize) |
|
void | SetMinSize (int width, int height) |
| Set minimum size.
|
|
void | SetMinWidth (int width) |
|
void | SetMinHeight (int height) |
|
void | SetMaxSize (const IntVector2 &maxSize) |
|
void | SetMaxSize (int width, int height) |
| Set maximum size.
|
|
void | SetMaxWidth (int width) |
|
void | SetMaxHeight (int height) |
|
void | SetFixedSize (const IntVector2 &size) |
| Set fixed size.
|
|
void | SetFixedSize (int width, int height) |
| Set fixed size.
|
|
void | SetFixedWidth (int width) |
| Set fixed width.
|
|
void | SetFixedHeight (int height) |
| Set fixed height.
|
|
void | SetAlignment (HorizontalAlignment hAlign, VerticalAlignment vAlign) |
| Set horizontal and vertical alignment.
|
|
void | SetHorizontalAlignment (HorizontalAlignment align) |
|
void | SetVerticalAlignment (VerticalAlignment align) |
|
void | SetEnableAnchor (bool enable) |
|
void | SetMinAnchor (const Vector2 &anchor) |
|
void | SetMinAnchor (float x, float y) |
| Set minimum anchor.
|
|
void | SetMaxAnchor (const Vector2 &anchor) |
|
void | SetMaxAnchor (float x, float y) |
| Set maximum anchor.
|
|
void | SetMinOffset (const IntVector2 &offset) |
|
void | SetMaxOffset (const IntVector2 &offset) |
|
void | SetPivot (const Vector2 &pivot) |
|
void | SetPivot (float x, float y) |
| Set pivot relative to element's size (from 0 to 1, where 0.5 is center). Overrides horizontal & vertical alignment.
|
|
void | SetClipBorder (const IntRect &rect) |
|
void | SetColor (const Color &color) |
|
void | SetColor (Corner corner, const Color &color) |
|
void | SetPriority (int priority) |
|
void | SetOpacity (float opacity) |
|
void | SetBringToFront (bool enable) |
|
void | SetBringToBack (bool enable) |
|
void | SetClipChildren (bool enable) |
|
void | SetSortChildren (bool enable) |
|
void | SetUseDerivedOpacity (bool enable) |
|
void | SetEnabled (bool enable) |
|
void | SetDeepEnabled (bool enable) |
| Set enabled state on self and child elements. Elements' own enabled state is remembered (IsEnabledSelf) and can be restored.
|
|
void | ResetDeepEnabled () |
| Reset enabled state to the element's remembered state prior to calling SetDeepEnabled.
|
|
void | SetEnabledRecursive (bool enable) |
| Set enabled state on self and child elements. Unlike SetDeepEnabled this does not remember the elements' own enabled state, but overwrites it.
|
|
void | SetEditable (bool enable) |
|
void | SetFocus (bool enable) |
|
void | SetSelected (bool enable) |
|
void | SetVisible (bool enable) |
|
void | SetFocusMode (FocusMode mode) |
|
void | SetDragDropMode (DragAndDropModeFlags mode) |
|
bool | SetStyle (const ea::string &styleName, XMLFile *file=nullptr) |
| Set style from an XML file. Find the style element by name. If the style file is not explicitly provided, use the default style from parental chain. Return true if the style is applied successfully. See also Defining UI layouts programmatically.
|
|
bool | SetStyle (const XMLElement &element) |
| Set style from an XML element. Return true if the style is applied successfully.
|
|
bool | SetStyleAuto (XMLFile *file=nullptr) |
| Set style from an XML file. Find the style element automatically by using the element's typename. If the style file is not explicitly provided, use the default style from parental chain. Return true if the style is applied successfully. See also Defining UI layouts programmatically.
|
|
void | SetDefaultStyle (XMLFile *style) |
|
void | SetLayout (LayoutMode mode, int spacing=0, const IntRect &border=IntRect::ZERO) |
| Set layout parameters.
|
|
void | SetLayoutMode (LayoutMode mode) |
|
void | SetLayoutSpacing (int spacing) |
|
void | SetLayoutBorder (const IntRect &border) |
|
void | SetLayoutFlexScale (const Vector2 &scale) |
|
void | SetIndent (int indent) |
|
void | SetIndentSpacing (int indentSpacing) |
|
void | UpdateLayout () |
| Manually update layout. Should not be necessary in most cases, but is provided for completeness.
|
|
void | DisableLayoutUpdate () |
| Disable automatic layout update. Should only be used if there are performance problems.
|
|
void | EnableLayoutUpdate () |
| Enable automatic layout update.
|
|
void | BringToFront () |
| Bring UI element to front.
|
|
UIElement * | CreateChild (StringHash type, const ea::string &name=EMPTY_STRING, unsigned index=M_MAX_UNSIGNED) |
| Create and add a child element and return it.
|
|
void | AddChild (UIElement *element) |
| Add a child element.
|
|
void | InsertChild (unsigned index, UIElement *element) |
| Insert a child element into a specific position in the child list.
|
|
void | RemoveChild (UIElement *element, unsigned index=0) |
| Remove a child element. Starting search at specified index if provided.
|
|
void | RemoveChildAtIndex (unsigned index) |
| Remove a child element at index.
|
|
void | RemoveAllChildren () |
| Remove all child elements.
|
|
void | Remove () |
| Remove from the parent element. If no other shared pointer references exist, causes immediate deletion.
|
|
unsigned | FindChild (UIElement *element) const |
| Find child index. Return M_MAX_UNSIGNED if not found.
|
|
void | SetParent (UIElement *parent, unsigned index=M_MAX_UNSIGNED) |
| Set parent element. Same as parent->InsertChild(index, this).
|
|
void | SetVar (const ea::string &key, const Variant &value) |
| Set a user variable.
|
|
void | SetVarByHash (StringHash hash, const Variant &value) |
|
void | SetInternal (bool enable) |
|
void | SetTraversalMode (TraversalMode traversalMode) |
|
void | SetElementEventSender (bool flag) |
|
void | SetTags (const StringVector &tags) |
| Set tags. Old tags are overwritten.
|
|
void | AddTag (const ea::string &tag) |
| Add a tag.
|
|
void | AddTags (const ea::string &tags, char separator=';') |
| Add tags with the specified separator (; by default).
|
|
void | AddTags (const StringVector &tags) |
| Add tags.
|
|
bool | RemoveTag (const ea::string &tag) |
| Remove specific tag. Return true if existed.
|
|
void | RemoveAllTags () |
| Remove all tags.
|
|
template<class T > |
T * | CreateChild (const ea::string &name=EMPTY_STRING, unsigned index=M_MAX_UNSIGNED) |
| Template version of creating a child element.
|
|
template<class T > |
T * | GetChildStaticCast (unsigned index) const |
| Template version of returning child element by index using static cast.
|
|
template<class T > |
T * | GetChildStaticCast (const ea::string &name, bool recursive=false) const |
| Template version of returning child element by name using static cast.
|
|
template<class T > |
T * | GetChildStaticCast (const StringHash &key, const Variant &value=Variant::EMPTY, bool recursive=false) const |
| Template version of returning child element by variable using static cast. If only key is provided, return the first child having the matching variable key. If value is also provided then the actual variable value would also be checked against.
|
|
template<class T > |
T * | GetChildDynamicCast (unsigned index) const |
| Template version of returning child element by index using dynamic cast. May return 0 when casting failed.
|
|
template<class T > |
T * | GetChildDynamicCast (const ea::string &name, bool recursive=false) const |
| Template version of returning child element by name using dynamic cast. May return 0 when casting failed.
|
|
template<class T > |
T * | GetChildDynamicCast (const StringHash &key, const Variant &value=Variant::EMPTY, bool recursive=false) const |
| Template version of returning child element by variable. If only key is provided, return the first child having the matching variable key. If value is also provided then the actual variable value would also be checked against using dynamic cast. May return 0 when casting failed.
|
|
const ea::string & | GetName () const |
|
const IntVector2 & | GetPosition () const |
|
const IntVector2 & | GetSize () const |
|
int | GetWidth () const |
|
int | GetHeight () const |
|
const IntVector2 & | GetMinSize () const |
|
int | GetMinWidth () const |
|
int | GetMinHeight () const |
|
const IntVector2 & | GetMaxSize () const |
|
int | GetMaxWidth () const |
|
int | GetMaxHeight () const |
|
bool | IsFixedSize () const |
|
bool | IsFixedWidth () const |
|
bool | IsFixedHeight () const |
|
const IntVector2 & | GetChildOffset () const |
|
HorizontalAlignment | GetHorizontalAlignment () const |
|
VerticalAlignment | GetVerticalAlignment () const |
|
bool | GetEnableAnchor () const |
|
const Vector2 & | GetMinAnchor () const |
|
const Vector2 & | GetMaxAnchor () const |
|
const IntVector2 & | GetMinOffset () const |
|
const IntVector2 & | GetMaxOffset () const |
|
const Vector2 & | GetPivot () const |
|
const IntRect & | GetClipBorder () const |
|
const Color & | GetColor (Corner corner) const |
|
int | GetPriority () const |
|
float | GetOpacity () const |
|
float | GetDerivedOpacity () const |
|
bool | GetBringToFront () const |
|
bool | GetBringToBack () const |
|
bool | GetClipChildren () const |
|
bool | GetSortChildren () const |
|
bool | GetUseDerivedOpacity () const |
|
bool | HasFocus () const |
|
bool | IsChildOf (UIElement *element) const |
| Return whether is a direct or indirect child of specified element.
|
|
bool | IsEnabled () const |
|
bool | IsEnabledSelf () const |
|
bool | IsEditable () const |
|
bool | IsSelected () const |
|
bool | IsVisible () const |
|
bool | IsVisibleEffective () const |
|
bool | IsHovering () const |
|
bool | IsInternal () const |
|
bool | HasColorGradient () const |
|
FocusMode | GetFocusMode () const |
|
DragAndDropModeFlags | GetDragDropMode () const |
|
const ea::string & | GetAppliedStyle () const |
|
XMLFile * | GetDefaultStyle (bool recursiveUp=true) const |
| Return default style.
|
|
LayoutMode | GetLayoutMode () const |
|
int | GetLayoutSpacing () const |
|
const IntRect & | GetLayoutBorder () const |
|
const Vector2 & | GetLayoutFlexScale () const |
|
unsigned | GetNumChildren (bool recursive=false) const |
| Return number of child elements.
|
|
UIElement * | GetChild (unsigned index) const |
|
UIElement * | GetChild (const ea::string &name, bool recursive=false) const |
| Return child element by name.
|
|
UIElement * | GetChild (const StringHash &key, const Variant &value=Variant::EMPTY, bool recursive=false) const |
| Return child element by variable. If only key is provided, return the first child having the matching variable key. If value is also provided then the actual variable value would also be checked against.
|
|
const ea::vector< SharedPtr< UIElement > > & | GetChildren () const |
| Return immediate child elements.
|
|
void | GetChildren (ea::vector< UIElement * > &dest, bool recursive=false) const |
| Return child elements either recursively or non-recursively.
|
|
ea::vector< UIElement * > | GetChildren (bool recursive) const |
| Return child elements, optionally recursive.
|
|
UIElement * | GetParent () const |
|
UIElement * | GetRoot () const |
|
const Color & | GetDerivedColor () const |
| Return derived color. Only valid when no gradient.
|
|
const Variant & | GetVar (const ea::string &key) const |
| Return a user variable.
|
|
const Variant & | GetVarByHash (StringHash key) const |
|
const StringVariantMap & | GetVars () const |
| Return all user variables.
|
|
bool | HasTag (const ea::string &tag) const |
| Return whether element is tagged by a specific tag.
|
|
const StringVector & | GetTags () const |
|
void | GetChildrenWithTag (ea::vector< UIElement * > &dest, const ea::string &tag, bool recursive=false) const |
| Return child elements with a specific tag either recursively or non-recursively.
|
|
ea::vector< UIElement * > | GetChildrenWithTag (const ea::string &tag, bool recursive=false) const |
| Return child elements with a specific tag either recursively or non-recursively.
|
|
MouseButtonFlags | GetDragButtonCombo () const |
|
unsigned | GetDragButtonCount () const |
|
bool | IsInside (IntVector2 position, bool isScreen) |
| Return whether a point (either in element or screen coordinates) is inside the element.
|
|
bool | IsInsideCombined (IntVector2 position, bool isScreen) |
| Return whether a point (either in element or screen coordinates) is inside the combined rect of the element and its children.
|
|
IntRect | GetCombinedScreenRect () |
|
void | SortChildren () |
| Sort child elements if sorting enabled and order dirty. Called by UI.
|
|
int | GetLayoutElementMaxSize () const |
| Return maximum layout element size in the layout direction. Only valid after layout has been calculated. Used internally by UI for optimizations.
|
|
int | GetIndent () const |
|
int | GetIndentSpacing () const |
|
int | GetIndentWidth () const |
|
void | SetChildOffset (const IntVector2 &offset) |
| Set child offset.
|
|
void | SetHovering (bool enable) |
| Set hovering state.
|
|
void | AdjustScissor (IntRect ¤tScissor) |
| Adjust scissor for rendering.
|
|
void | GetBatchesWithOffset (IntVector2 &offset, ea::vector< UIBatch > &batches, ea::vector< float > &vertexData, IntRect currentScissor) |
| Get UI rendering batches with a specified offset. Also recurse to child elements.
|
|
const Color & | GetColorAttr () const |
| Return color attribute. Uses just the top-left color.
|
|
TraversalMode | GetTraversalMode () const |
|
bool | IsElementEventSender () const |
|
UIElement * | GetElementEventSender () const |
| Get element which should send child added / removed events.
|
|
IntVector2 | GetEffectiveMinSize () const |
| Return effective minimum size, also considering layout. Used internally.
|
|
| Animatable (Context *context) |
| Construct.
|
|
| ~Animatable () override |
| Destruct.
|
|
bool | LoadJSON (const JSONValue &source) override |
| Load from JSON data. Return true if successful.
|
|
bool | SaveJSON (JSONValue &dest) const override |
| Save as JSON data. Return true if successful.
|
|
void | SetAnimationEnabled (bool enable) |
|
void | SetAnimationTime (float time) |
| Set time position of all attribute animations or an object animation manually. Automatic update should be disabled in this case.
|
|
void | SetObjectAnimation (ObjectAnimation *objectAnimation) |
|
void | SetAttributeAnimation (const ea::string &name, ValueAnimation *attributeAnimation, WrapMode wrapMode=WM_LOOP, float speed=1.0f) |
| Set attribute animation.
|
|
void | SetAttributeAnimationWrapMode (const ea::string &name, WrapMode wrapMode) |
| Set attribute animation wrap mode.
|
|
void | SetAttributeAnimationSpeed (const ea::string &name, float speed) |
| Set attribute animation speed.
|
|
void | SetAttributeAnimationTime (const ea::string &name, float time) |
| Set attribute animation time position manually. Automatic update should be disabled in this case.
|
|
void | RemoveObjectAnimation () |
| Remove object animation. Same as calling SetObjectAnimation with a null pointer.
|
|
void | RemoveAttributeAnimation (const ea::string &name) |
| Remove attribute animation. Same as calling SetAttributeAnimation with a null pointer.
|
|
bool | GetAnimationEnabled () const |
|
ObjectAnimation * | GetObjectAnimation () const |
|
ValueAnimation * | GetAttributeAnimation (const ea::string &name) const |
| Return attribute animation.
|
|
WrapMode | GetAttributeAnimationWrapMode (const ea::string &name) const |
| Return attribute animation wrap mode.
|
|
float | GetAttributeAnimationSpeed (const ea::string &name) const |
| Return attribute animation speed.
|
|
float | GetAttributeAnimationTime (const ea::string &name) const |
| Return attribute animation time position.
|
|
void | SetObjectAnimationAttr (const ResourceRef &value) |
| Set object animation attribute.
|
|
ResourceRef | GetObjectAnimationAttr () const |
| Return object animation attribute.
|
|
| Serializable (Context *context) |
| Construct.
|
|
| ~Serializable () override |
| Destruct.
|
|
virtual void | OnSetAttribute (const AttributeInfo &attr, const Variant &src) |
| Handle attribute write access. Default implementation writes to the variable at offset, or invokes the set accessor.
|
|
virtual void | OnGetAttribute (const AttributeInfo &attr, Variant &dest) const |
| Handle attribute read access. Default implementation reads the variable at offset, or invokes the get accessor.
|
|
virtual ObjectReflection * | GetReflection () const |
| Return reflection used for serialization.
|
|
virtual const ea::vector< AttributeInfo > * | GetAttributes () const |
| Return attribute descriptions, or null if none defined.
|
|
void | SerializeInBlock (Archive &archive) override |
| Serialize content from/to archive. May throw ArchiveException.
|
|
void | SerializeInBlock (Archive &archive, bool serializeTemporary) |
|
virtual bool | Load (Deserializer &source) |
| Load from binary data. Return true if successful.
|
|
virtual bool | Save (Serializer &dest) const |
| Save as binary data. Return true if successful.
|
|
virtual bool | Load (const ea::string &resourceName) |
| Load from binary resource.
|
|
virtual bool | LoadXML (const ea::string &resourceName) |
| Load from XML resource.
|
|
virtual bool | LoadJSON (const ea::string &resourceName) |
| Load from JSON resource.
|
|
virtual bool | LoadFile (const ea::string &resourceName) |
| Load from resource of automatically detected type.
|
|
virtual bool | SaveDefaultAttributes (const AttributeInfo &attr) const |
| Return whether should save default-valued attributes into XML. Default false.
|
|
bool | SetAttribute (unsigned index, const Variant &value) |
|
bool | SetAttribute (const ea::string &name, const Variant &value) |
| Set attribute by name. Return true if successfully set.
|
|
void | SetInstanceDefault (bool enable) |
| (Internal use) Set instance-level default flag.
|
|
void | SetInstanceDefault (const ea::string &name, const Variant &defaultValue) |
| (Internal use) Set instance-level default value. Allocate the internal data structure as necessary.
|
|
virtual Variant | GetInstanceDefault (const ea::string &name) const |
| (Internal use) Get instance-level default value.
|
|
void | ResetToDefault () |
| Reset all editable attributes to their default values.
|
|
void | RemoveInstanceDefault () |
| Remove instance's default values if they are set previously.
|
|
void | SetTemporary (bool enable) |
|
Variant | GetAttribute (unsigned index) const |
|
Variant | GetAttribute (const ea::string &name) const |
| Return attribute value by name. Return empty if not found.
|
|
Variant | GetAttributeDefault (unsigned index) const |
|
Variant | GetAttributeDefault (const ea::string &name) const |
| Return attribute default value by name. Return empty if not found.
|
|
unsigned | GetNumAttributes () const |
|
void | CopyAttributes (const Serializable *source, bool resetToDefault=true) |
| Copy all attributes from another serializable.
|
|
SharedPtr< Serializable > | Clone (bool resetToDefault=true) const |
| Clone this serializable.
|
|
bool | IsTemporary () const |
|
| Object (Context *context) |
| Construct.
|
|
| ~Object () override |
| Destruct. Clean up self from event sender & receiver structures.
|
|
virtual StringHash | GetType () const =0 |
|
virtual const ea::string & | GetTypeName () const =0 |
|
virtual const TypeInfo * | GetTypeInfo () const =0 |
| Return type info.
|
|
virtual bool | IsInstanceOf (StringHash type) const =0 |
| Check whether current instance implements specified type.
|
|
virtual void | OnEvent (Object *sender, StringHash eventType, VariantMap &eventData) |
| Handle event.
|
|
template<typename T > |
bool | IsInstanceOf () const |
| Check current instance is type of specified class.
|
|
template<typename T > |
T * | Cast () |
| Cast the object to specified most derived class.
|
|
template<typename T > |
const T * | Cast () const |
| Cast the object to specified most derived class.
|
|
void | SubscribeToEventManual (StringHash eventType, EventHandler *handler) |
| Subscribe to an event that can be sent by any sender.
|
|
void | SubscribeToEventManual (Object *sender, StringHash eventType, EventHandler *handler) |
| Subscribe to a specific sender's event.
|
|
template<class T > |
void | SubscribeToEvent (StringHash eventType, T handler) |
| Subscribe to an event that can be sent by any sender.
|
|
template<class T > |
void | SubscribeToEvent (Object *sender, StringHash eventType, T handler) |
| Subscribe to a specific sender's event.
|
|
void | UnsubscribeFromEvent (StringHash eventType) |
| Unsubscribe from an event.
|
|
void | UnsubscribeFromEvent (Object *sender, StringHash eventType) |
| Unsubscribe from a specific sender's event.
|
|
void | UnsubscribeFromEvents (Object *sender) |
| Unsubscribe from a specific sender's events.
|
|
void | UnsubscribeFromAllEvents () |
| Unsubscribe from all events.
|
|
void | UnsubscribeFromAllEventsExcept (const ea::vector< StringHash > &exceptions) |
| Unsubscribe from all events except those listed.
|
|
void | UnsubscribeFromAllEventsExcept (const ea::vector< Object * > &exceptions) |
| Unsubscribe from all events except those with listed senders.
|
|
void | SendEvent (StringHash eventType) |
| Send event to all subscribers.
|
|
void | SendEvent (StringHash eventType, VariantMap &eventData) |
| Send event with parameters to all subscribers.
|
|
VariantMap & | GetEventDataMap () const |
| Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps.
|
|
template<typename... Args> |
void | SendEvent (StringHash eventType, const Args &... args) |
| Send event with variadic parameter pairs to all subscribers. The parameters are (paramID, paramValue) pairs.
|
|
Context * | GetContext () const |
| Return execution context.
|
|
const Variant & | GetGlobalVar (StringHash key) const |
|
const VariantMap & | GetGlobalVars () const |
|
void | SetGlobalVar (StringHash key, const Variant &value) |
|
Object * | GetSubsystem (StringHash type) const |
| Return subsystem by type.
|
|
Object * | GetEventSender () const |
| Return active event sender. Null outside event handling.
|
|
EventHandler * | GetEventHandler () const |
| Return active event handler. Null outside event handling.
|
|
bool | HasSubscribedToEvent (StringHash eventType) const |
| Return whether has subscribed to an event without specific sender.
|
|
bool | HasSubscribedToEvent (Object *sender, StringHash eventType) const |
| Return whether has subscribed to a specific sender's event.
|
|
bool | HasEventHandlers () const |
| Return whether has subscribed to any event.
|
|
template<class T > |
T * | GetSubsystem () const |
| Template version of returning a subsystem.
|
|
const ea::string & | GetCategory () const |
|
void | SendEvent (StringHash eventType, const VariantMap &eventData) |
| Send event with parameters to all subscribers.
|
|
void | SetBlockEvents (bool block) |
| Block object from sending and receiving events.
|
|
bool | GetBlockEvents () const |
| Return sending and receiving events blocking status.
|
|
| RefCounted () |
| Construct. Allocate the reference count structure and set an initial self weak reference.
|
|
virtual | ~RefCounted () |
| Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.
|
|
| RefCounted (const RefCounted &rhs)=delete |
| Prevent copy construction.
|
|
RefCounted & | operator= (const RefCounted &rhs)=delete |
| Prevent assignment.
|
|
int | AddRef () |
|
int | ReleaseRef () |
|
int | Refs () const |
|
int | WeakRefs () const |
|
RefCount * | RefCountPtr () const |
| Return pointer to the reference count structure.
|
|
bool | HasScriptObject () const |
| Return true if script runtime object wrapping this native object exists.
|
|
bool | IsScriptStrongRef () const |
| Return true if script reference is strong.
|
|