#include <node.h>
This is a generic attribute which can be used instead of the standard built in types.
The difference between a standard type and this attribute is that this attribute can be viewed and its value can be changed by the user. Attributes can be linked together also so when the value of an attribute is changed, all target attributes value will be changed also. The owner node also can catch events regarding to the attrbibutes, for example when the user changes the value.
Public Member Functions | |
AttributeInstance (Node *pOwner, const QString &sID) | |
Standard constructor. You have to specify the name of the attribute which will be used in the user interface. More... | |
AttributeInstance (Node *pOwner, const QString &sID, const type &cValue) | |
Using this constructor you can also specify the initial value of the attribute with its name. More... | |
AttributeInstance (const AttributeInstance< type > &o) | |
virtual | ~AttributeInstance (void) |
const type & | Value (void) const |
Returns the value of the attribute. More... | |
virtual void | SetValue (type cValue, bool bInternal=false) |
Set the value of the attribute to cValue. More... | |
void | UpdateTargets (void) |
void | Serialize (Stream &s) |
Serialize the value of the attribute into a stream. More... | |
void | AddTarget (Attribute &cTarget, bool bInternal=false) |
Connection management. More... | |
virtual QString | AsString (bool bLocalized=false) const |
Returns the value of the attribute as a string. More... | |
virtual void | SetFromString (const QString &sValue, bool bInternal=true, bool=false) |
Sets the value of the attribute as a string. More... | |
AttributeWidget * | CreateEditorWidget (QWidget *pParent, int iWidth) |
This function creates and returns the address of a QWidget object. More... | |
Attribute::AttributeType | Type (void) const |
Returns the type of the attribute. More... | |
OPERATORS (type) | |
Public Member Functions inherited from Attribute | |
unsigned int | TargetCount (void) const |
Returns the number of attributes currently linked to this attribute as target. More... | |
Attribute * | Target (unsigned int iIndex) const |
Returns the target with the given index. If iIndex is greater than the number of targets, returns 0;. More... | |
Attribute * | Source (void) const |
Returns the source attribute, or 0 if there is no source. More... | |
bool | operator== (const Attribute &cAttribute) const |
This is a special operator, it does NOT compare the value of the attribute. See Node::OnNodeEvent for details. More... | |
bool | operator!= (const Attribute &cAttribute) const |
This is a special operator, it does NOT compare the value of the attribute. See Node::OnNodeEvent for details. More... | |
QString | ID (void) const |
Returns the unique ID (within this node) of the attribute. More... | |
QString | Name (void) const |
Returns the name of the attribute. More... | |
void | SetName (const QString &sName) |
Sets the name of the attribute. More... | |
QString | Category (void) const |
Returns the category of the attribute. More... | |
void | SetCategory (const QString &sCategory, bool bSeparator=false) |
Sets the category of the attribute. This value will be used in the user interface to determine which attribute group to be used. More... | |
bool | Separator (void) const |
Returns the separator state of the widget. More... | |
void | SetSeparator (bool bSeparator) |
Call this with true to display a separator line below this widget. More... | |
bool | Const (void) const |
Gets the constant status of the attribute. Default value is false. If this is set to true the attribute will not be editable by the user on the interface. More... | |
void | SetConst (bool bConst) |
Sets the constant status of the attribute. Default value is false. If this is set to true the attribute will not be editable by the user on the interface. More... | |
bool | InstantEdit (void) const |
Returns true, if the attribute edition should be instant, i.e. the attribute should change every time the user makes any changes to the widget. Default is false. More... | |
void | SetInstantEdit (bool bOn) |
If bOn is true, editing the attribute on the UI will be instant, i.e. More... | |
bool | Visible (void) const |
Returns true if the property is visible. More... | |
void | SetVisible (bool bVisible) |
Sets the visible status of the property. More... | |
QString | ToolTip (void) const |
Gets the tooltip text to be used on the user interface, this is optional. More... | |
void | SetToolTip (const QString &sToolTip) |
Sets the tooltip text to be used on the user interface, this is optional. More... | |
unsigned int | Size (void) const |
Returns the size of the attribute value in bytes. More... | |
float | LabelWidth (void) const |
Returns the width of label relative to the full width of the line. More... | |
void | SetLabelWidth (float fLabelWidth) |
Set the width of label. More... | |
int | Index (void) const |
Returns the attribute index;. More... | |
void | SetIndex (int iIndex) |
Sets the attribute index;. More... | |
Node * | Owner (void) const |
Gets the address of the Node which contains this attribute. More... | |
virtual | ~Attribute (void) |
virtual void | StartEvent (NodeEventType cType) const |
void | SetOwner (Node *pOwner) |
This function sets the owner of the attribute. More... | |
void | LogTargets (void) |
void | LogSource (void) |
void | CheckValidity (void) |
void | ClearTargets (void) |
Removes all outgoing connections from the attribute. More... | |
void | ClearSource (void) |
Removes the incoming connection for this attribute. More... | |
void | Connect (Attribute &cSource, bool bInternal=false) |
Connect this attribute to another one. More... | |
virtual const ClassDesc * | TargetType (void) const |
This is valid only for pointer attributes (See AttributePointer). Returns the type of the pointer. More... | |
virtual void | SetPointerValue (Node *pValue, bool bLink=true) |
This is valid only for pointer attributes (See AttributePointer). More... | |
virtual Node * | PointerValue (void) const |
This is valid only for pointer attributes (See AttributePointer). More... | |
virtual bool | ValidatePointerValue (const Node *pValue) |
Validate a possible value for the pointer, returns true if the value is acceptable. More... | |
virtual unsigned int | ParameterCount (void) const |
virtual QString | ParameterName (unsigned int iIndex) const |
Returns the name of a parameter with a given index. More... | |
virtual QString | ParameterValue (unsigned int iIndex) const |
Returns the value of parameter with a given index. More... | |
virtual void | SetParameterValue (const QString &sName, const QString &sValue) |
Set the value of a parameter. More... | |
Public Attributes | |
type | m_cValue |
Protected Member Functions | |
AttributeInstance (Node *pOwner, const QString &sName, bool bInstall) | |
Protected constructor, do not use it. You have to specify the name of the attribute which will be used in the user interface. More... | |
Protected Member Functions inherited from Attribute | |
Attribute (Node *pOwner, const QString &sID) | |
Attribute (Node *pOwner, bool bInstall) | |
void | Uninstall (void) |
Additional Inherited Members | |
Public Types inherited from Attribute | |
enum | AttributeType { typeUnknown, typeInt, typeFloat, typeBool, typeString, typePointer, typeColor, typeVector, typeEnum, typeWatch } |
Type of the attribute. More... | |
Protected Attributes inherited from Attribute | |
int | m_iSize |
Attribute * | m_pSource |
Attribute * | m_pNext |
Store< Attribute * > | m_aTargets |
Node * | m_pNode |
QString | m_sName |
bool | m_bSeparator |
QString | m_sCategory |
QString | m_sToolTip |
float | m_fLabelWidth |
bool | m_bConst |
bool | m_bVisible |
int | m_iIndex |
bool | m_bInstantEdit |
QString | m_sID |
|
inline |
|
inline |
|
inline |
Definition at line 400 of file node.h.
|
virtual |
|
inlineprotected |
Set the value of the attribute to cValue.
bInternal | if this is false the owner node will receive an event about the value change (See NodeEventType::etValueChanged). |
Reimplemented in AttributePointer< type >, and AttributePointer< NURBSCurve >.
Definition at line 409 of file node.h.
Update the values of all the connected target attributes with the current value. Used internally only, do not call this directly.
Reimplemented from Attribute.
Definition at line 416 of file node.h.
Serialize the value of the attribute into a stream.
Reimplemented from Attribute.
Reimplemented in AttributePointer< NURBSCurve >.
Definition at line 319 of file stream.h.
Connection management.
bInternal | if this is false the target's node will receive an event about the value changing in the target |
Reimplemented from Attribute.
Definition at line 430 of file node.h.
|
inlinevirtual |
Returns the value of the attribute as a string.
See also SetFromString.
bLocalized | if this is true the string representation of the value is assumed to be localized (translated) |
Reimplemented from Attribute.
Reimplemented in AttributeCheckableFloat, AttributePointer< type >, and AttributePointer< NURBSCurve >.
Definition at line 601 of file math.h.
|
inlinevirtual |
Sets the value of the attribute as a string.
See also AsString.
bInternal | if this is false the owner node will receive an event about the value change (See NodeEventType::etValueChanged). |
bLocalized | if this is true the string representation of the value is assumed to be localized (translated) |
Reimplemented from Attribute.
Reimplemented in AttributeCheckableFloat, AttributePointer< type >, and AttributePointer< NURBSCurve >.
Definition at line 605 of file math.h.
|
inlinevirtual |
This function creates and returns the address of a QWidget object.
The object then can be used in the interface to give the user control over the attribute value. Mudbox calls this function for every attribute in a node when it displays a properties dialog box for it. You must override it if you implement a new kind of attribute and want a special interface.
Reimplemented from Attribute.
Reimplemented in AttributeTextureFilename, and AttributeFilename.
Definition at line 449 of file node.h.
|
inlinevirtual |
Returns the type of the attribute.
Reimplemented from Attribute.
Reimplemented in AttributePointer< NURBSCurve >.
Definition at line 450 of file node.h.
OPERATORS | ( | type | ) |