Crazy Eddies GUI System
0.7.9
|
Offers functions to define, access, and draw, a set of image components on a single graphical surface or Texture. More...
Public Types | |
typedef ConstBaseIterator < ImageRegistry > | ImageIterator |
Iterator type for this collection. | |
Public Member Functions | |
Imageset (const String &name, Texture &texture) | |
Construct a new Imageset object. Object will initially have no Images defined. More... | |
Imageset (const String &name, const String &filename, const String &resourceGroup) | |
Construct a new Imageset using the specified image file and imageset name. The created imageset will, by default, have a single Image defined named "full_image" which represents the entire area of the loaded image file. More... | |
~Imageset (void) | |
Destroys Imageset objects. | |
Texture * | getTexture (void) const |
return Texture object for this Imageset More... | |
const String & | getName (void) const |
return String object holding the name of the Imageset More... | |
uint | getImageCount (void) const |
return number of images defined for this Imageset More... | |
bool | isImageDefined (const String &name) const |
return true if an Image with the specified name exists. More... | |
const Image & | getImage (const String &name) const |
return a copy of the Image object for the named image More... | |
void | undefineImage (const String &name) |
remove the definition for the Image with the specified name. If no such Image exists, nothing happens. More... | |
void | undefineAllImages (void) |
Removes the definitions for all Image objects currently defined in the Imageset. More... | |
Size | getImageSize (const String &name) const |
return a Size object describing the dimensions of the named image. More... | |
float | getImageWidth (const String &name) const |
return the width of the named image. More... | |
float | getImageHeight (const String &name) const |
return the height of the named image. More... | |
Point | getImageOffset (const String &name) const |
return the rendering offsets applied to the named image. More... | |
float | getImageOffsetX (const String &name) const |
return the x rendering offset for the named image. More... | |
float | getImageOffsetY (const String &name) const |
return the y rendering offset for the named image. More... | |
void | defineImage (const String &name, const Point &position, const Size &size, const Point &render_offset) |
Define a new Image for this Imageset. More... | |
void | defineImage (const String &name, const Rect &image_rect, const Point &render_offset) |
Define a new Image for this Imageset. More... | |
void | draw (GeometryBuffer &buffer, const Rect &source_rect, const Rect &dest_rect, const Rect *clip_rect, const ColourRect &colours, QuadSplitMode quad_split_mode) const |
Queues an area of the associated Texture the be drawn on the screen. Low-level routine to be used carefully! More... | |
void | draw (GeometryBuffer &buffer, const Rect &source_rect, const Rect &dest_rect, const Rect *clip_rect, const colour &top_left_colour=0xFFFFFFFF, const colour &top_right_colour=0xFFFFFFFF, const colour &bottom_left_colour=0xFFFFFFFF, const colour &bottom_right_colour=0xFFFFFFFF, QuadSplitMode quad_split_mode=TopLeftToBottomRight) const |
Queues an area of the associated Texture the be drawn on the screen. Low-level routine to be used carefully! More... | |
bool | isAutoScaled (void) const |
Return whether this Imageset is auto-scaled. More... | |
Size | getNativeResolution (void) const |
Return the native display size for this Imageset. This is only relevant if the Imageset is being auto-scaled. More... | |
void | setAutoScalingEnabled (bool setting) |
Enable or disable auto-scaling for this Imageset. More... | |
void | setNativeResolution (const Size &size) |
Set the native resolution for this Imageset. More... | |
void | notifyDisplaySizeChanged (const Size &size) |
Notify the Imageset that the display size may have changed. More... | |
ImageIterator | getIterator (void) const |
Return an Imageset::ImageIterator object that can be used to iterate over the Image objects in the Imageset. | |
void | writeXMLToStream (XMLSerializer &xml_stream) const |
Writes an xml representation of this Imageset to out_stream. More... | |
Static Public Member Functions | |
static void | setDefaultResourceGroup (const String &resourceGroup) |
Sets the default resource group to be used when loading imageset data. More... | |
static const String & | getDefaultResourceGroup () |
Returns the default resource group currently set for Imagesets. More... | |
Protected Member Functions | |
void | unload (void) |
Unloads all loaded data and leaves the Imageset in a clean (but un-usable) state. This should be called for cleanup purposes only. | |
void | setTexture (Texture *texture) |
set the Texture object to be used by this Imageset. Changing textures on an Imageset that is in use is not a good idea! More... | |
void | updateImageScalingFactors (void) |
Sets the scaling factor for all Images that are a part of this Imageset. More... | |
Protected Attributes | |
String | d_name |
Holds the name of this imageset. | |
ImageRegistry | d_images |
Registry of Image objects for the images defined for this Imageset. | |
Texture * | d_texture |
Texture object that handles imagery for this Imageset. | |
String | d_textureFilename |
String holding the name of the texture filename (if any). | |
bool | d_autoScale |
true when auto-scaling is enabled. | |
float | d_horzScaling |
current horizontal scaling factor. | |
float | d_vertScaling |
current vertical scaling factor. | |
float | d_nativeHorzRes |
native horizontal resolution for this Imageset. | |
float | d_nativeVertRes |
native vertical resolution for this Imageset. | |
Static Protected Attributes | |
static String | d_defaultResourceGroup |
Default resource group specifically for Imagesets. | |
Offers functions to define, access, and draw, a set of image components on a single graphical surface or Texture.
Imageset objects are a means by which a single graphical image (file, Texture, etc), can be split into a number of 'components' which can later be accessed via name. The components of an Imageset can queried for various details, and sent to the Renderer object for drawing.
CEGUI::Imageset::Imageset | ( | const String & | name, |
const String & | filename, | ||
const String & | resourceGroup | ||
) |
Construct a new Imageset using the specified image file and imageset name. The created imageset will, by default, have a single Image defined named "full_image" which represents the entire area of the loaded image file.
name | String object holding the name to be assigned to the created imageset. |
filename | String object holding the filename of the image that is to be loaded. The image should be of some format that is supported by the Renderer that is in use. |
resourceGroup | Resource group identifier to be passed to the resource manager, which may specify a group from which the image file is to be loaded. |
FileIOException | thrown if something goes wrong while loading the image. |
|
inline |
Define a new Image for this Imageset.
name | String object holding the name that will be assigned to the new Image, which must be unique within the Imageset. |
position | Point object describing the pixel location of the Image on the image file / texture associated with this Imageset. |
size | Size object describing the dimensions of the Image, in pixels. |
render_offset | Point object describing the offsets, in pixels, that are to be applied to the Image when it is drawn. |
AlreadyExistsException | thrown if an Image named name is already defined for this Imageset |
void CEGUI::Imageset::defineImage | ( | const String & | name, |
const Rect & | image_rect, | ||
const Point & | render_offset | ||
) |
Define a new Image for this Imageset.
name | String object holding the name that will be assigned to the new Image, which must be unique within the Imageset. |
image_rect | Rect object describing the area on the image file / texture associated with this Imageset that will be used for the Image. |
render_offset | Point object describing the offsets, in pixels, that are to be applied to the Image when it is drawn. |
AlreadyExistsException | thrown if an Image named name is already defined for this Imageset |
void CEGUI::Imageset::draw | ( | GeometryBuffer & | buffer, |
const Rect & | source_rect, | ||
const Rect & | dest_rect, | ||
const Rect * | clip_rect, | ||
const ColourRect & | colours, | ||
QuadSplitMode | quad_split_mode | ||
) | const |
Queues an area of the associated Texture the be drawn on the screen. Low-level routine to be used carefully!
buffer | GeometryBuffer object where the geometry for the area to be drawn will be queued. |
source_rect | Rect object describing the area of the image file / texture that is to be queued for drawing |
dest_rect | Rect describing the area of the screen that will be filled with the imagery from source_rect. |
clip_rect | Rect object describing a 'clipping rectangle' that will be applied when drawing the requested imagery |
colours | ColourRect object holding the ARGB colours to be applied to the four corners of the rendered imagery. |
quad_split_mode | One of the QuadSplitMode values specifying the way the quad geometry for the image is to be split into triangles. |
|
inline |
Queues an area of the associated Texture the be drawn on the screen. Low-level routine to be used carefully!
buffer | GeometryBuffer object where the geometry for the area to be drawn will be queued. |
source_rect | Rect object describing the area of the image file / texture that is to be queued for drawing. |
dest_rect | Rect describing the area of the screen that will be filled with the imagery from source_rect. |
clip_rect | Rect object describing a 'clipping rectangle' that will be applied when drawing the requested imagery. |
top_left_colour | colour to be applied to the top left corner of the rendered imagery. |
top_right_colour | colour to be applied to the top right corner of the rendered imagery. |
bottom_left_colour | colour to be applied to the bottom left corner of the rendered imagery. |
bottom_right_colour | colour to be applied to the bottom right corner of the rendered imagery. |
quad_split_mode | One of the QuadSplitMode values specifying the way the quad geometry for the image is to be split into triangles. |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void CEGUI::Imageset::notifyDisplaySizeChanged | ( | const Size & | size | ) |
void CEGUI::Imageset::setAutoScalingEnabled | ( | bool | setting | ) |
Enable or disable auto-scaling for this Imageset.
setting | true to enable auto-scaling, false to disable auto-scaling. |
|
inlinestatic |
Sets the default resource group to be used when loading imageset data.
resourceGroup | String describing the default resource group identifier to be used. |
void CEGUI::Imageset::setNativeResolution | ( | const Size & | size | ) |
|
protected |
set the Texture object to be used by this Imageset. Changing textures on an Imageset that is in use is not a good idea!
texture | Texture object to be used by the Imageset. The old texture is NOT disposed of, that is the clients responsibility. |
NullObjectException | thrown if texture is NULL |
void CEGUI::Imageset::undefineAllImages | ( | void | ) |
void CEGUI::Imageset::undefineImage | ( | const String & | name | ) |
|
protected |
Sets the scaling factor for all Images that are a part of this Imageset.
void CEGUI::Imageset::writeXMLToStream | ( | XMLSerializer & | xml_stream | ) | const |
Writes an xml representation of this Imageset to out_stream.
out_stream | Stream where xml data should be output. |
indentLevel | Current XML indentation level |