Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CEGUI::ImageryComponent Class Reference

Class that encapsulates information for a single image component. More...

#include <CEGUIFalImageryComponent.h>

Inheritance diagram for CEGUI::ImageryComponent:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ImageryComponent ()
 Constructor.
const ImagegetImage () const
 Return the Image object that will be drawn by this ImageryComponent.
void setImage (const Image *image)
 Set the Image that will be drawn by this ImageryComponent.
void setImage (const String &imageset, const String &image)
 Set the Image that will be drawn by this ImageryComponent.
VerticalFormatting getVerticalFormatting () const
 Return the current vertical formatting setting for this ImageryComponent.
void setVerticalFormatting (VerticalFormatting fmt)
 Set the vertical formatting setting for this ImageryComponent.
HorizontalFormatting getHorizontalFormatting () const
 Return the current horizontal formatting setting for this ImageryComponent.
void setHorizontalFormatting (HorizontalFormatting fmt)
 Set the horizontal formatting setting for this ImageryComponent.
void writeXMLToStream (OutStream &out_stream) const
 Writes an xml representation of this ImageryComponent to out_stream.
bool isImageFetchedFromProperty () const
 Return whether this ImageryComponent fetches it's image via a property on the target window.
const StringgetImagePropertySource () const
 Return the name of the property that will be used to determine the image for this ImageryComponent.
void setImagePropertySource (const String &property)
 Set the name of the property that will be used to determine the image for this ImageryComponent.
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 ComponentAreagetComponentArea () const
 Return the ComponentArea of this ImageryComponent.
void setComponentArea (const ComponentArea &area)
 Set the ImageryComponent's ComponentArea.
const ColourRectgetColours () 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 render_impl (Window &srcWindow, Rect &destRect, float base_z, const CEGUI::ColourRect *modColours, const Rect *clipper, bool clipToDisplay) const
 Method to do main render caching work.
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.
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

const Imaged_image
 CEGUI::Image to be drawn by this image component.
VerticalFormatting d_vertFormatting
 Vertical formatting to be applied when rendering the image component.
HorizontalFormatting d_horzFormatting
 Horizontal formatting to be applied when rendering the image component.
String d_imagePropertyName
 Name of the property to access to obtain the image to be used.
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

Class that encapsulates information for a single image component.

Definition at line 36 of file CEGUIFalImageryComponent.h.


Constructor & Destructor Documentation

CEGUI::ImageryComponent::ImageryComponent  ) 
 

Constructor.

Definition at line 38 of file CEGUIFalImageryComponent.cpp.


Member Function Documentation

const ColourRect & CEGUI::FalagardComponentBase::getColours  )  const [inherited]
 

Return the ColourRect set for use by this ImageryComponent.

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

Definition at line 62 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_colours.

const ComponentArea & CEGUI::FalagardComponentBase::getComponentArea  )  const [inherited]
 

Return the ComponentArea of this ImageryComponent.

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

Definition at line 52 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_area.

HorizontalFormatting CEGUI::ImageryComponent::getHorizontalFormatting  )  const
 

Return the current horizontal formatting setting for this ImageryComponent.

Returns:
One of the HorizontalFormatting enumerated values.

Definition at line 76 of file CEGUIFalImageryComponent.cpp.

References d_horzFormatting.

const Image * CEGUI::ImageryComponent::getImage  )  const
 

Return the Image object that will be drawn by this ImageryComponent.

Returns:
Image object.

Definition at line 44 of file CEGUIFalImageryComponent.cpp.

References d_image.

const String & CEGUI::ImageryComponent::getImagePropertySource  )  const
 

Return the name of the property that will be used to determine the image for this ImageryComponent.

Returns:
String object holding the name of a Propery.

Definition at line 256 of file CEGUIFalImageryComponent.cpp.

References d_imagePropertyName.

VerticalFormatting CEGUI::ImageryComponent::getVerticalFormatting  )  const
 

Return the current vertical formatting setting for this ImageryComponent.

Returns:
One of the VerticalFormatting enumerated values.

Definition at line 66 of file CEGUIFalImageryComponent.cpp.

References d_vertFormatting.

void CEGUI::FalagardComponentBase::initColoursRect const Window wnd,
const ColourRect modCols,
ColourRect cr
const [protected, inherited]
 

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.

Definition at line 82 of file CEGUIFalComponentBase.cpp.

References CEGUI::ColourRect::d_bottom_left, CEGUI::ColourRect::d_bottom_right, CEGUI::FalagardComponentBase::d_colourPropertyName, CEGUI::FalagardComponentBase::d_colourProperyIsRect, CEGUI::FalagardComponentBase::d_colours, CEGUI::ColourRect::d_top_left, CEGUI::ColourRect::d_top_right, CEGUI::String::empty(), CEGUI::PropertySet::getProperty(), CEGUI::PropertyHelper::stringToColour(), and CEGUI::PropertyHelper::stringToColourRect().

Referenced by CEGUI::TextComponent::render_impl(), render_impl(), and CEGUI::FrameComponent::render_impl().

bool CEGUI::ImageryComponent::isImageFetchedFromProperty  )  const
 

Return whether this ImageryComponent fetches it's image via a property on the target window.

Returns:
  • true if the image comes via a Propery.
  • false if the image is defined explicitly.

Definition at line 251 of file CEGUIFalImageryComponent.cpp.

References d_imagePropertyName, and CEGUI::String::empty().

Referenced by render_impl(), and writeXMLToStream().

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 [inherited]
 

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.

Definition at line 46 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_area, CEGUI::ComponentArea::getPixelRect(), and CEGUI::FalagardComponentBase::render_impl().

void CEGUI::FalagardComponentBase::render Window srcWindow,
float  base_z,
const CEGUI::ColourRect modColours = 0,
const Rect clipper = 0,
bool  clipToDisplay = false
const [inherited]
 

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.

Definition at line 40 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_area, CEGUI::ComponentArea::getPixelRect(), and CEGUI::FalagardComponentBase::render_impl().

void CEGUI::ImageryComponent::render_impl Window srcWindow,
Rect destRect,
float  base_z,
const CEGUI::ColourRect modColours,
const Rect clipper,
bool  clipToDisplay
const [protected, virtual]
 

Method to do main render caching work.

Implements CEGUI::FalagardComponentBase.

Definition at line 86 of file CEGUIFalImageryComponent.cpp.

References CEGUI::RenderCache::cacheImage(), CEGUI::Rect::d_bottom, CEGUI::Size::d_height, CEGUI::FalagardComponentBase::d_horzFormatPropertyName, d_horzFormatting, d_image, d_imagePropertyName, CEGUI::Rect::d_left, CEGUI::Rect::d_right, CEGUI::Rect::d_top, CEGUI::FalagardComponentBase::d_vertFormatPropertyName, d_vertFormatting, CEGUI::Size::d_width, CEGUI::String::empty(), CEGUI::Rect::getHeight(), CEGUI::Rect::getIntersection(), CEGUI::PropertySet::getProperty(), CEGUI::Window::getRenderCache(), CEGUI::Image::getSize(), CEGUI::Rect::getWidth(), CEGUI::HF_CENTRE_ALIGNED, CEGUI::HF_LEFT_ALIGNED, CEGUI::HF_RIGHT_ALIGNED, CEGUI::HF_STRETCHED, CEGUI::HF_TILED, CEGUI::FalagardComponentBase::initColoursRect(), isImageFetchedFromProperty(), PixelAligned, CEGUI::FalagardXMLHelper::stringToHorzFormat(), CEGUI::PropertyHelper::stringToImage(), CEGUI::FalagardXMLHelper::stringToVertFormat(), CEGUI::VF_BOTTOM_ALIGNED, CEGUI::VF_CENTRE_ALIGNED, CEGUI::VF_STRETCHED, CEGUI::VF_TILED, and CEGUI::VF_TOP_ALIGNED.

void CEGUI::FalagardComponentBase::setColours const ColourRect cols  )  [inherited]
 

Set the colours to be used by this ImageryComponent.

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

Definition at line 67 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_colours.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::FalagardComponentBase::setColoursPropertyIsColourRect bool  setting = true  )  [inherited]
 

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.

Definition at line 77 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_colourProperyIsRect.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::FalagardComponentBase::setColoursPropertySource const String property  )  [inherited]
 

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

Parameters:
property String containing the name of the property.
Returns:
Nothing.

Definition at line 72 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_colourPropertyName.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::FalagardComponentBase::setComponentArea const ComponentArea area  )  [inherited]
 

Set the ImageryComponent's ComponentArea.

Parameters:
area ComponentArea object describing a new target area for the ImageryComponent.
Returns:
Nothing.

Definition at line 57 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_area.

Referenced by CEGUI::Falagard_xmlHandler::elementEnd().

void CEGUI::ImageryComponent::setHorizontalFormatting HorizontalFormatting  fmt  ) 
 

Set the horizontal formatting setting for this ImageryComponent.

Parameters:
fmt One of the HorizontalFormatting enumerated values.
Returns:
Nothing.

Definition at line 81 of file CEGUIFalImageryComponent.cpp.

References d_horzFormatting.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::FalagardComponentBase::setHorzFormattingPropertySource const String property  )  [inherited]
 

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

Parameters:
property String containing the name of the property.
Returns:
Nothing.

Definition at line 120 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_horzFormatPropertyName.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::ImageryComponent::setImage const String imageset,
const String image
 

Set the Image that will be drawn by this ImageryComponent.

Parameters:
imageset String holding the name of the Imagset that contains the Image to be rendered.
image String holding the name of the Image to be rendered.
Returns:
Nothing.

Definition at line 54 of file CEGUIFalImageryComponent.cpp.

References d_image, CEGUI::Imageset::getImage(), CEGUI::ImagesetManager::getImageset(), and CEGUI::ImagesetManager::getSingleton().

void CEGUI::ImageryComponent::setImage const Image image  ) 
 

Set the Image that will be drawn by this ImageryComponent.

Parameters:
Pointer to the Image object to be drawn by this ImageryComponent.
Returns:
Nothing.

Definition at line 49 of file CEGUIFalImageryComponent.cpp.

References d_image.

void CEGUI::ImageryComponent::setImagePropertySource const String property  ) 
 

Set the name of the property that will be used to determine the image for this ImageryComponent.

Parameters:
property String object holding the name of a Propery. The property should access a imageset & image specification.
Returns:
Nothing.

Definition at line 261 of file CEGUIFalImageryComponent.cpp.

References d_imagePropertyName.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::FalagardComponentBase::setVertFormattingPropertySource const String property  )  [inherited]
 

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

Parameters:
property String containing the name of the property.
Returns:
Nothing.

Definition at line 115 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_vertFormatPropertyName.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

void CEGUI::ImageryComponent::setVerticalFormatting VerticalFormatting  fmt  ) 
 

Set the vertical formatting setting for this ImageryComponent.

Parameters:
fmt One of the VerticalFormatting enumerated values.
Returns:
Nothing.

Definition at line 71 of file CEGUIFalImageryComponent.cpp.

References d_vertFormatting.

Referenced by CEGUI::Falagard_xmlHandler::elementStart().

bool CEGUI::FalagardComponentBase::writeColoursXML OutStream out_stream  )  const [protected, inherited]
 

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.)

Definition at line 125 of file CEGUIFalComponentBase.cpp.

References CEGUI::PropertyHelper::colourToString(), CEGUI::ColourRect::d_bottom_left, CEGUI::ColourRect::d_bottom_right, CEGUI::FalagardComponentBase::d_colourPropertyName, CEGUI::FalagardComponentBase::d_colourProperyIsRect, CEGUI::FalagardComponentBase::d_colours, CEGUI::ColourRect::d_top_left, CEGUI::ColourRect::d_top_right, CEGUI::String::empty(), and CEGUI::ColourRect::isMonochromatic().

Referenced by CEGUI::TextComponent::writeXMLToStream(), writeXMLToStream(), and CEGUI::FrameComponent::writeXMLToStream().

bool CEGUI::FalagardComponentBase::writeHorzFormatXML OutStream out_stream  )  const [protected, inherited]
 

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.)

Definition at line 163 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_horzFormatPropertyName, and CEGUI::String::empty().

Referenced by CEGUI::TextComponent::writeXMLToStream(), writeXMLToStream(), and CEGUI::FrameComponent::writeXMLToStream().

bool CEGUI::FalagardComponentBase::writeVertFormatXML OutStream out_stream  )  const [protected, inherited]
 

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.)

Definition at line 152 of file CEGUIFalComponentBase.cpp.

References CEGUI::FalagardComponentBase::d_vertFormatPropertyName, and CEGUI::String::empty().

Referenced by CEGUI::TextComponent::writeXMLToStream(), writeXMLToStream(), and CEGUI::FrameComponent::writeXMLToStream().

void CEGUI::ImageryComponent::writeXMLToStream OutStream out_stream  )  const
 

Writes an xml representation of this ImageryComponent to out_stream.

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

Definition at line 217 of file CEGUIFalImageryComponent.cpp.

References CEGUI::FalagardComponentBase::d_area, d_horzFormatting, d_image, d_imagePropertyName, d_vertFormatting, CEGUI::Image::getImagesetName(), CEGUI::Image::getName(), CEGUI::FalagardXMLHelper::horzFormatToString(), isImageFetchedFromProperty(), CEGUI::FalagardXMLHelper::vertFormatToString(), CEGUI::FalagardComponentBase::writeColoursXML(), CEGUI::FalagardComponentBase::writeHorzFormatXML(), CEGUI::FalagardComponentBase::writeVertFormatXML(), and CEGUI::ComponentArea::writeXMLToStream().


Member Data Documentation

ComponentArea CEGUI::FalagardComponentBase::d_area [protected, inherited]
 

Destination area for this component.

Definition at line 242 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FalagardComponentBase::getComponentArea(), CEGUI::FalagardComponentBase::render(), CEGUI::FalagardComponentBase::setComponentArea(), CEGUI::TextComponent::writeXMLToStream(), writeXMLToStream(), and CEGUI::FrameComponent::writeXMLToStream().

String CEGUI::FalagardComponentBase::d_colourPropertyName [protected, inherited]
 

name of property to fetch colours from.

Definition at line 244 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FalagardComponentBase::initColoursRect(), CEGUI::FalagardComponentBase::setColoursPropertySource(), and CEGUI::FalagardComponentBase::writeColoursXML().

bool CEGUI::FalagardComponentBase::d_colourProperyIsRect [protected, inherited]
 

true if the colour property will fetch a full ColourRect.

Definition at line 245 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FalagardComponentBase::initColoursRect(), CEGUI::FalagardComponentBase::setColoursPropertyIsColourRect(), and CEGUI::FalagardComponentBase::writeColoursXML().

ColourRect CEGUI::FalagardComponentBase::d_colours [protected, inherited]
 

base colours to be applied when rendering the image component.

Definition at line 243 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FalagardComponentBase::getColours(), CEGUI::FalagardComponentBase::initColoursRect(), CEGUI::FalagardComponentBase::setColours(), and CEGUI::FalagardComponentBase::writeColoursXML().

String CEGUI::FalagardComponentBase::d_horzFormatPropertyName [protected, inherited]
 

name of property to fetch horizontal formatting setting from.

Definition at line 247 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FrameComponent::doBackgroundRender(), CEGUI::TextComponent::render_impl(), render_impl(), CEGUI::FalagardComponentBase::setHorzFormattingPropertySource(), and CEGUI::FalagardComponentBase::writeHorzFormatXML().

HorizontalFormatting CEGUI::ImageryComponent::d_horzFormatting [protected]
 

Horizontal formatting to be applied when rendering the image component.

Definition at line 172 of file CEGUIFalImageryComponent.h.

Referenced by getHorizontalFormatting(), render_impl(), setHorizontalFormatting(), and writeXMLToStream().

const Image* CEGUI::ImageryComponent::d_image [protected]
 

CEGUI::Image to be drawn by this image component.

Definition at line 170 of file CEGUIFalImageryComponent.h.

Referenced by getImage(), render_impl(), setImage(), and writeXMLToStream().

String CEGUI::ImageryComponent::d_imagePropertyName [protected]
 

Name of the property to access to obtain the image to be used.

Definition at line 173 of file CEGUIFalImageryComponent.h.

Referenced by getImagePropertySource(), isImageFetchedFromProperty(), render_impl(), setImagePropertySource(), and writeXMLToStream().

String CEGUI::FalagardComponentBase::d_vertFormatPropertyName [protected, inherited]
 

name of property to fetch vertical formatting setting from.

Definition at line 246 of file CEGUIFalComponentBase.h.

Referenced by CEGUI::FrameComponent::doBackgroundRender(), CEGUI::TextComponent::render_impl(), render_impl(), CEGUI::FalagardComponentBase::setVertFormattingPropertySource(), and CEGUI::FalagardComponentBase::writeVertFormatXML().

VerticalFormatting CEGUI::ImageryComponent::d_vertFormatting [protected]
 

Vertical formatting to be applied when rendering the image component.

Definition at line 171 of file CEGUIFalImageryComponent.h.

Referenced by getVerticalFormatting(), render_impl(), setVerticalFormatting(), and writeXMLToStream().


The documentation for this class was generated from the following files:
Generated on Wed Sep 7 10:10:07 2005 for Crazy Eddies GUI System by  doxygen 1.4.3