Relative position from another Gadget. More...
Public Types | |
using | Specif = int32_t |
Specificity of Properties. | |
Public Member Functions | |
GRelativePos * | clone (bool copy_value) const override |
Clones the prop (when applicable). More... | |
void | set (GProp const &) override |
Changes value. More... | |
virtual void | set (GPosValueconst &value, bool callalways) |
Changes the value. More... | |
void | set (GString const &str) override |
Changes the value from a string. | |
void | blend (GProp const &a, GProp const &b, float mix) override |
Changes value by blending the value of two props. More... | |
GPos & | operator<<= (GTextExpr &) |
Binds this prop to an active expression. | |
bool | onAdd (Gadget *) override |
Called when the property is added to an object. More... | |
void | onRemove (Gadget *) override |
Called when the property is removed from an object. More... | |
GString | stringValue () const override |
Implicitely converts to value. More... | |
GVarProp * | toVarProp () override |
Type conversions. | |
bool | isMutable () const override |
Returns true if the prop is mutable. More... | |
void | setImmutable () override |
Makes the prop immutable. More... | |
void | blink (GString const &msg="", GTime duration=500) |
Blinks gadget parents of the prop. More... | |
void | update () |
updates gadget parents of the prop. | |
void | perform (std::function< void(Gadget &)> fun) |
performs this function on gadget parents. | |
GPropList const & | props () const |
Returns callbacks and bound props. | |
virtual void | removeNotifiers (void *object) override |
[Implementation] Notifies this object that it must no longer refer obj. | |
virtual void | removeAll () |
Removes callbacks and notifiers. | |
virtual float | floatValue () const |
Returns the value of the prop as a float. More... | |
virtual bool | boolValue () const |
Returns the value as a bool. More... | |
virtual bool | isEquivalent (GProp const &other) const |
Returns true if these props are equivalent. More... | |
virtual void | error (GString const &funname, GString const &message) const |
Prints an error message. More... | |
void | operator delete (void *) |
delete does nothing, see GObject class. | |
void | forgetSmartPointers () |
Forgets all smart pointers pointing this object. More... | |
unsigned int | useCount () const |
Returns the numbers of smart pointers referencing the object. | |
auto | xField () |
Returns a Field for active expressions or binding. More... | |
GPosValueconst & | value () const |
Returns the value. | |
bool | read (GString const &filename) |
Reads the value of the prop from a file or a stream. | |
void | unbind (GVarProp &sender) |
Unbinds this prop. More... | |
GString | typeName () const override |
Returns the name and role of the prop's type. | |
GProp * | toProp () override |
Class conversions. | |
bool | write (GString const &filename) const |
Writes the value of the prop on a file or a stream. | |
template<class Subclass > | |
Subclass * | to () |
Class conversions. | |
void | ignoreSmartPointers () |
Checks/sets whether this object can be auto-deleted by smart pointers. More... | |
Relative position from another Gadget.
|
overridevirtual |
Clones the prop (when applicable).
Mutable props (i.e. deriving from GVarProp) can be cloned, otherwise this method returns null. The value is copied if copy_value is used, the default value is used otherwise.
Reimplemented from guit::GPos.
|
overridevirtualinherited |
Changes value.
Does nothing if the type of from is not convertible to the type of this prop.
Implements guit::GVarProp.
|
inlinevirtualinherited |
Changes the value.
Callbacks are fired and parent gadgets updated if:
|
overridevirtualinherited |
Changes value by blending the value of two props.
Does nothing if the type of from1 or from2 is not convertible to the type of this prop.
Reimplemented from guit::GVarProp.
|
inlineinherited |
Returns a Field for active expressions or binding.
This field can be bound to a prop or another prop field using <<=. A textual Active Expression (GExpr) can refer this field.
|
overridevirtualinherited |
Called when the property is added to an object.
note: must call addModes().
Reimplemented from guit::GProp.
Reimplemented in guit::GDragPos.
|
overridevirtualinherited |
Called when the property is removed from an object.
note: must call removeModes().
Reimplemented from guit::GProp.
Reimplemented in guit::GDragPos.
|
inlineoverridevirtualinherited |
|
inlineoverridevirtualinherited |
Returns true if the prop is mutable.
Returns true only if the prop derives from GVarProp and setImmutable() was not called. Props with another type than GVarProp are always immutable.
Reimplemented from guit::GProp.
|
inlineoverridevirtualinherited |
Makes the prop immutable.
Affects only GVarProp props (other props are always immutable). A prop cannot be made mutable again after this method has been called.
Reimplemented from guit::GProp.
|
inherited |
Unbinds this prop.
Importantly, these methods unbinds props both ways if the binding was done both ways (e.g. by using sync())
|
inherited |
Blinks gadget parents of the prop.
Shows a warning if msg is not empty.
|
inlinevirtualinherited |
Returns the value of the prop as a float.
Returns 0.f if the prop has no value of its value cannot be converted to a float.
Reimplemented in guit::GNumExpr, guit::GTextExpr, guit::GBoolExpr, guit::GExpr, guit::GState, guit::GText, and guit::GBool.
|
inlinevirtualinherited |
Returns the value as a bool.
Returns false if the prop has no value of its value cannot be converted to a bool.
Reimplemented in guit::GNumExpr, guit::GTextExpr, guit::GBoolExpr, guit::GExpr, and guit::GBool.
|
virtualinherited |
Returns true if these props are equivalent.
Adding a prop to a gadget replaces the equivalent prop it contains (if it contains any). In all other cases, the prop is added to the gadget proplist. NOTE: props with a negative role are never equivalent!
Reimplemented in guit::GExpr, guit::GCond, guit::GState, and guit::GAnim.
|
virtualinherited |
Prints an error message.
|
inlineinherited |
Checks/sets whether this object can be auto-deleted by smart pointers.
ignoreSmartPointers() has a permanent effect, contrary to forgetSmartPointers(). Objects not created by calling new are never auto-deleted by smart pointers.
|
inlineinherited |
Forgets all smart pointers pointing this object.
The smart pointers that are currently pointing to the object won't auto-delete it. forgetSmartPointers() has a temporary effect, contrary to ignoreSmartPointers().