# CEGUI::FalagardComponentBase Class Reference

Common base class used for renderable components within an ImagerySection. More...

Inheritance diagram for CEGUI::FalagardComponentBase:

[legend]
Collaboration diagram for CEGUI::FalagardComponentBase:

[legend]
List of all members.

## Public Member Functions

| FalagardComponentBase ()
| Constructor.
virtual | ~FalagardComponentBase ()
| Destructor.
void | render (Window &srcWindow, float base_z, const CEGUI::ColourRect *modColours=0, const Rect *clipper=0, bool clipToDisplay=false) const
| Render this component. More correctly, the component is cached for rendering.
void | render (Window &srcWindow, const Rect &baseRect, float base_z, const CEGUI::ColourRect *modColours=0, const Rect *clipper=0, bool clipToDisplay=false) const
| Render this component. More correctly, the component is cached for rendering.
const ComponentArea & | getComponentArea () const
| Return the ComponentArea of this ImageryComponent.
void | setComponentArea (const ComponentArea &area)
| Set the ImageryComponent's ComponentArea.
const ColourRect & | getColours () const
| Return the ColourRect set for use by this ImageryComponent.
void | setColours (const ColourRect &cols)
| Set the colours to be used by this ImageryComponent.
void | setColoursPropertySource (const String &property)
| Set the name of the property where colour values can be obtained.
void | setColoursPropertyIsColourRect (bool setting=true)
| Set whether the colours property source represents a full ColourRect.
void | setVertFormattingPropertySource (const String &property)
| Set the name of the property where vertical formatting option can be obtained.
void | setHorzFormattingPropertySource (const String &property)
| Set the name of the property where horizontal formatting option can be obtained.

## Protected Member Functions

void | initColoursRect (const Window &wnd, const ColourRect *modCols, ColourRect &cr) const
| Helper method to initialise a ColourRect with appropriate values according to the way the ImageryComponent is set up.
virtual void | render_impl (Window &srcWindow, Rect &destRect, float base_z, const CEGUI::ColourRect *modColours, const Rect *clipper, bool clipToDisplay) const =0
| Method to do main render caching work.
bool | writeColoursXML (OutStream &out_stream) const
| Writes xml for the colours to a OutStream. Will prefer property colours before explicit.
bool | writeVertFormatXML (OutStream &out_stream) const
| Writes xml for the vertical formatting to a OutStream if such a property is defined.
bool | writeHorzFormatXML (OutStream &out_stream) const
| Writes xml for the horizontal formatting to a OutStream if such a property is defined.

## Protected Attributes

ComponentArea | d_area
| Destination area for this component.
ColourRect | d_colours
| base colours to be applied when rendering the image component.
String | d_colourPropertyName
| name of property to fetch colours from.
bool | d_colourProperyIsRect
| true if the colour property will fetch a full ColourRect.
String | d_vertFormatPropertyName
| name of property to fetch vertical formatting setting from.
String | d_horzFormatPropertyName
| name of property to fetch horizontal formatting setting from.

## Detailed Description

Common base class used for renderable components within an ImagerySection.

## Member Function Documentation

const ColourRect & CEGUI::FalagardComponentBase::getColours | ( |  | ) | const

Return the ColourRect set for use by this ImageryComponent.

Returns:
  ColourRect object holding the colours currently in use by this ImageryComponent.

const ComponentArea & CEGUI::FalagardComponentBase::getComponentArea | ( |  | ) | const

Return the ComponentArea of this ImageryComponent.

Returns:
  ComponentArea object describing the ImageryComponent's current target area.

void CEGUI::FalagardComponentBase::initColoursRect | ( | const Window & | wnd,
|  | const ColourRect * | modCols,
|  | ColourRect & | cr
| ) | const`[protected]`

Helper method to initialise a ColourRect with appropriate values according to the way the ImageryComponent is set up.

This will try and get values from multiple places:

- a property attached to wnd
- or the integral d_colours value.

void CEGUI::FalagardComponentBase::render | ( | Window & | srcWindow,
|  | const Rect & | baseRect,
|  | float | base_z,
|  | const CEGUI::ColourRect * | modColours = `0`,
|  | const Rect * | clipper = `0`,
|  | bool | clipToDisplay = `false`
| ) | const

Render this component. More correctly, the component is cached for rendering.

Parameters:

  | srcWindow | Window to use as the base for translating the component's ComponentArea into pixel values.
  | baseRect | Rect to use as the base for translating the component's ComponentArea into pixel values.
  | base_z | The z value to use for rendering the component. Note that this is not the final z value to use, but some z offset from a currently unknown starting value.
  | modColours | ColourRect describing colours that are to be modulated with the component's stored colour values to calculate a set of 'final' colour values to be used. May be 0.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::render | ( | Window & | srcWindow,
|  | float | base_z,
|  | const CEGUI::ColourRect * | modColours = `0`,
|  | const Rect * | clipper = `0`,
|  | bool | clipToDisplay = `false`
| ) | const

Render this component. More correctly, the component is cached for rendering.

Parameters:

  | srcWindow | Window to use as the base for translating the component's ComponentArea into pixel values.
  | base_z | The z value to use for rendering the component. Note that this is not the final z value to use, but some z offset from a currently unknown starting value.
  | modColours | ColourRect describing colours that are to be modulated with the component's stored colour values to calculate a set of 'final' colour values to be used. May be 0.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::setColours | ( | const ColourRect & | cols | ) |

Set the colours to be used by this ImageryComponent.

Parameters:

  | cols | ColourRect object describing the colours to be used by this ImageryComponent.

void CEGUI::FalagardComponentBase::setColoursPropertyIsColourRect | ( | bool | setting = `true` | ) |

Set whether the colours property source represents a full ColourRect.

Parameters:

  setting

  - true if the colours property will access a ColourRect object.
  - false if the colours property will access a colour object.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::setColoursPropertySource | ( | const String & | property | ) |

Set the name of the property where colour values can be obtained.

Parameters:

  | property | String containing the name of the property.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::setComponentArea | ( | const ComponentArea & | area | ) |

Set the ImageryComponent's ComponentArea.

Parameters:

  | area | ComponentArea object describing a new target area for the ImageryComponent.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::setHorzFormattingPropertySource | ( | const String & | property | ) |

Set the name of the property where horizontal formatting option can be obtained.

Parameters:

  | property | String containing the name of the property.

Returns:
  Nothing.

void CEGUI::FalagardComponentBase::setVertFormattingPropertySource | ( | const String & | property | ) |

Set the name of the property where vertical formatting option can be obtained.

Parameters:

  | property | String containing the name of the property.

Returns:
  Nothing.

bool CEGUI::FalagardComponentBase::writeColoursXML | ( | OutStream & | out_stream | ) | const`[protected]`

Writes xml for the colours to a OutStream. Will prefer property colours before explicit.

Note:
  This is intended as a helper method for sub-classes when outputting xml to a stream.

Returns:
  - true if xml element was written.
  - false if nothing was output due to the formatting not being set (sub-class may then choose to do something else.)

bool CEGUI::FalagardComponentBase::writeHorzFormatXML | ( | OutStream & | out_stream | ) | const`[protected]`

Writes xml for the horizontal formatting to a OutStream if such a property is defined.

Note:
  This is intended as a helper method for sub-classes when outputting xml to a stream.

Returns:
  - true if xml element was written.
  - false if nothing was output due to the formatting not being set (sub-class may then choose to do something else.)

bool CEGUI::FalagardComponentBase::writeVertFormatXML | ( | OutStream & | out_stream | ) | const`[protected]`

Writes xml for the vertical formatting to a OutStream if such a property is defined.

Note:
  This is intended as a helper method for sub-classes when outputting xml to a stream.

Returns:
  - true if xml element was written.
  - false if nothing was output due to the formatting not being set (sub-class may then choose to do something else.)