CEGUI::PropertyDefinitionBase Class Reference

common base class used for types representing a new property to be available on all widgets that use the WidgetLook that the property definition is a part of. More...

Inheritance diagram for CEGUI::PropertyDefinitionBase:

Inheritance graph
[legend]
Collaboration diagram for CEGUI::PropertyDefinitionBase:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 PropertyDefinitionBase (const String &name, const String &help, const String &initialValue, bool redrawOnWrite, bool layoutOnWrite)
void set (PropertyReceiver *receiver, const String &value)
 Sets the value of the property.
virtual void writeXMLToStream (XMLSerializer &xml_stream) const
 Writes an xml representation of the PropertyDefinitionBase based object to out_stream.

Protected Member Functions

virtual void writeXMLElementType (XMLSerializer &xml_stream) const =0
 Write out the text of the XML element type. Note that you should not write the opening '<' character, nor any other information such as attributes in this function. The writeExtraAttributes function can be used for writing attributes.
virtual void writeXMLAttributes (XMLSerializer &xml_stream) const
 Write out any xml attributes added in a sub-class. Note that you should not write the closing '/>' character sequence, nor any other information in this function. You should always call the base class implementation of this function when overriding.

Protected Attributes

bool d_writeCausesRedraw
bool d_writeCausesLayout


Detailed Description

common base class used for types representing a new property to be available on all widgets that use the WidgetLook that the property definition is a part of.

Member Function Documentation

void CEGUI::PropertyDefinitionBase::set ( PropertyReceiver receiver,
const String value 
) [virtual]

Sets the value of the property.

Note:
When overriding the set() member of PropertyDefinitionBase, you MUST call the base class implementation after you have set the property value (i.e. you must call PropertyDefinitionBase::set()).
Parameters:
receiver Pointer to the target object.
value A String object that contains a textual representation of the new value to assign to the Property.
Returns:
Nothing.
Exceptions:
InvalidRequestException Thrown when the Property was unable to interpret the content of value.

Implements CEGUI::Property.

Reimplemented in CEGUI::PropertyDefinition, and CEGUI::PropertyLinkDefinition.

void CEGUI::PropertyDefinitionBase::writeXMLAttributes ( XMLSerializer xml_stream  )  const [protected, virtual]

Write out any xml attributes added in a sub-class. Note that you should not write the closing '/>' character sequence, nor any other information in this function. You should always call the base class implementation of this function when overriding.

Parameters:
xml_stream Stream where xml data should be output.

Reimplemented in CEGUI::PropertyLinkDefinition.

References CEGUI::XMLSerializer::attribute(), CEGUI::Property::d_default, CEGUI::Property::d_name, and CEGUI::String::empty().

Referenced by writeXMLToStream().

virtual void CEGUI::PropertyDefinitionBase::writeXMLElementType ( XMLSerializer xml_stream  )  const [protected, pure virtual]

Write out the text of the XML element type. Note that you should not write the opening '<' character, nor any other information such as attributes in this function. The writeExtraAttributes function can be used for writing attributes.

Parameters:
xml_stream Stream where xml data should be output.

Implemented in CEGUI::PropertyDefinition, and CEGUI::PropertyLinkDefinition.

Referenced by writeXMLToStream().

void CEGUI::PropertyDefinitionBase::writeXMLToStream ( XMLSerializer xml_stream  )  const [virtual]

Writes an xml representation of the PropertyDefinitionBase based object to out_stream.

Parameters:
xml_stream Stream where xml data should be output.
Returns:
Nothing.

References CEGUI::XMLSerializer::closeTag(), writeXMLAttributes(), and writeXMLElementType().


Generated on Thu Nov 27 20:34:41 2008 for Crazy Eddies GUI System by  doxygen 1.5.7.1