Inherits CEGUI::EventSet.
Inherited by CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Public Member Functions | |
virtual void | addQuad (const Rect &dest_rect, float z, const Texture *tex, const Rect &texture_rect, const ColourRect &colours, QuadSplitMode quad_split_mode)=0 |
Add a quad to the rendering queue. All clipping and other adjustments should have been made prior to calling this. | |
virtual void | doRender (void)=0 |
Perform final rendering for all quads that have been queued for rendering. | |
virtual void | clearRenderList (void)=0 |
Clears all queued quads from the render queue. | |
virtual void | setQueueingEnabled (bool setting)=0 |
Enable or disable the queueing of quads from this point on. | |
virtual Texture * | createTexture (void)=0 |
Creates a 'null' Texture object. | |
virtual Texture * | createTexture (const String &filename, const String &resourceGroup)=0 |
Create a Texture object using the given image file. | |
virtual Texture * | createTexture (float size)=0 |
Create a Texture object with the given pixel dimensions as specified by size. NB: Textures are always square. | |
virtual void | destroyTexture (Texture *texture)=0 |
Destroy the given Texture object. | |
virtual void | destroyAllTextures (void)=0 |
Destroy all Texture objects. | |
virtual bool | isQueueingEnabled (void) const =0 |
Return whether queueing is enabled. | |
virtual float | getWidth (void) const =0 |
Return the current width of the display in pixels. | |
virtual float | getHeight (void) const =0 |
Return the current height of the display in pixels. | |
virtual Size | getSize (void) const =0 |
Return the size of the display in pixels. | |
virtual Rect | getRect (void) const =0 |
Return a Rect describing the screen. | |
virtual uint | getMaxTextureSize (void) const =0 |
Return the maximum texture size available. | |
virtual uint | getHorzScreenDPI (void) const =0 |
Return the horizontal display resolution dpi. | |
virtual uint | getVertScreenDPI (void) const =0 |
Return the vertical display resolution dpi. | |
void | resetZValue (void) |
Reset the z co-ordinate for rendering. | |
void | advanceZValue (void) |
Update the z co-ordinate for the next major UI element (window). | |
float | getCurrentZ (void) const |
return the current Z value to use (equates to layer 0 for this UI element). | |
float | getZLayer (uint layer) const |
return the z co-ordinate to use for the requested layer on the current GUI element. | |
const String & | getIdentifierString () const |
Return identification string for the renderer module. If the internal id string has not been set by the Renderer module creator, a generic string of "Unknown renderer" will be returned. | |
virtual ResourceProvider * | createResourceProvider (void) |
Static Public Attributes | |
static const String | EventNamespace |
Namespace for global events. | |
static const String | EventDisplaySizeChanged |
Protected Attributes | |
ResourceProvider * | d_resourceProvider |
Holds the pointer to the ResourceProvider object. | |
String | d_identifierString |
String that holds some id information about the renderer. |
Objects derived from Renderer are the means by which the GUI system interfaces with specific rendering technologies. To use a rendering system or API to draw CEGUI imagery requires that an appropriate Renderer object be available.
virtual void CEGUI::Renderer::addQuad | ( | const Rect & | dest_rect, | |
float | z, | |||
const Texture * | tex, | |||
const Rect & | texture_rect, | |||
const ColourRect & | colours, | |||
QuadSplitMode | quad_split_mode | |||
) | [pure virtual] |
Add a quad to the rendering queue. All clipping and other adjustments should have been made prior to calling this.
dest_rect | Rect object describing the destination area (values are in pixels) | |
z | float value specifying the z co-ordinate / z order of the quad | |
tex | pointer to the Texture object that holds the imagery to be rendered | |
texture_rect | Rect object holding the area of tex that is to be rendered (values are in texture co-ordinates). | |
colours | ColourRect object describing the colour values that are to be applied when rendering. | |
quad_split_mode | One of the QuadSplitMode values specifying the way quads are split into triangles |
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::Imageset::draw().
void CEGUI::Renderer::advanceZValue | ( | void | ) | [inline] |
Update the z co-ordinate for the next major UI element (window).
Referenced by CEGUI::Window::render().
virtual void CEGUI::Renderer::clearRenderList | ( | void | ) | [pure virtual] |
Clears all queued quads from the render queue.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::System::renderGUI().
virtual Texture* CEGUI::Renderer::createTexture | ( | float | size | ) | [pure virtual] |
Create a Texture object with the given pixel dimensions as specified by size. NB: Textures are always square.
size | float value that specifies the size to use for the width and height when creating the new texture. |
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
virtual Texture* CEGUI::Renderer::createTexture | ( | const String & | filename, | |
const String & | resourceGroup | |||
) | [pure virtual] |
Create a Texture object using the given image file.
filename | String object that specifies the path and filename of the image file to use when creating the texture. | |
resourceGroup | Resource group identifier to be passed to the resource provider when loading the texture file. |
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
virtual Texture* CEGUI::Renderer::createTexture | ( | void | ) | [pure virtual] |
Creates a 'null' Texture object.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::FreeTypeFont::rasterize().
virtual void CEGUI::Renderer::destroyAllTextures | ( | void | ) | [pure virtual] |
Destroy all Texture objects.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
virtual void CEGUI::Renderer::destroyTexture | ( | Texture * | texture | ) | [pure virtual] |
Destroy the given Texture object.
texture | pointer to the Texture object to be destroyed |
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::Imageset::unload().
virtual void CEGUI::Renderer::doRender | ( | void | ) | [pure virtual] |
Perform final rendering for all quads that have been queued for rendering.
The contents of the rendering queue is retained and can be rendered again as required. If the contents is not required call clearRenderList().
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::System::renderGUI().
float CEGUI::Renderer::getCurrentZ | ( | void | ) | const [inline] |
return the current Z value to use (equates to layer 0 for this UI element).
Referenced by CEGUI::FalagardMultiLineEditbox::cacheCaratImagery(), CEGUI::FalagardMultiLineEditbox::cacheTextLines(), CEGUI::Tree::populateRenderCache(), CEGUI::FalagardMultiColumnList::render(), CEGUI::FalagardListbox::render(), and CEGUI::Window::render().
virtual float CEGUI::Renderer::getHeight | ( | void | ) | const [pure virtual] |
Return the current height of the display in pixels.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::Window::getParentPixelHeight(), CEGUI::FrameWindow::moveBottomEdge(), and CEGUI::FrameWindow::moveTopEdge().
virtual uint CEGUI::Renderer::getHorzScreenDPI | ( | void | ) | const [pure virtual] |
Return the horizontal display resolution dpi.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::FreeTypeFont::updateFont().
const String & CEGUI::Renderer::getIdentifierString | ( | ) | const |
Return identification string for the renderer module. If the internal id string has not been set by the Renderer module creator, a generic string of "Unknown renderer" will be returned.
References d_identifierString.
virtual uint CEGUI::Renderer::getMaxTextureSize | ( | void | ) | const [pure virtual] |
Return the maximum texture size available.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::FreeTypeFont::getTextureSize().
virtual Rect CEGUI::Renderer::getRect | ( | void | ) | const [pure virtual] |
Return a Rect describing the screen.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::FalagardTitlebar::getPixelRect(), CEGUI::FalagardSystemButton::getPixelRect(), CEGUI::ScrolledContainer::getUnclippedInnerRect_impl(), and CEGUI::Titlebar::onMouseButtonDown().
virtual Size CEGUI::Renderer::getSize | ( | void | ) | const [pure virtual] |
Return the size of the display in pixels.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::Font::Font(), CEGUI::MouseCursor::getConstraintArea(), CEGUI::CoordConverter::screenToWindow(), and CEGUI::Window::setArea_impl().
virtual uint CEGUI::Renderer::getVertScreenDPI | ( | void | ) | const [pure virtual] |
Return the vertical display resolution dpi.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::FreeTypeFont::updateFont().
virtual float CEGUI::Renderer::getWidth | ( | void | ) | const [pure virtual] |
Return the current width of the display in pixels.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::ListHeaderSegment::doDragSizing(), CEGUI::Window::getParentPixelWidth(), CEGUI::FrameWindow::moveLeftEdge(), and CEGUI::FrameWindow::moveRightEdge().
float CEGUI::Renderer::getZLayer | ( | uint | layer | ) | const [inline] |
return the z co-ordinate to use for the requested layer on the current GUI element.
layer | Specifies the layer to return the Z co-ordinate for. Each GUI element can use up to 10 layers, so valid inputs are 0 to 9 inclusive. If you specify an invalid value for layer, results are undefined. |
Referenced by CEGUI::FalagardMultiLineEditbox::cacheCaratImagery(), CEGUI::FalagardMultiLineEditbox::cacheTextLines(), CEGUI::Tree::populateRenderCache(), CEGUI::FalagardMultiColumnList::render(), and CEGUI::FalagardListbox::render().
virtual bool CEGUI::Renderer::isQueueingEnabled | ( | void | ) | const [pure virtual] |
Return whether queueing is enabled.
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
void CEGUI::Renderer::resetZValue | ( | void | ) | [inline] |
virtual void CEGUI::Renderer::setQueueingEnabled | ( | bool | setting | ) | [pure virtual] |
Enable or disable the queueing of quads from this point on.
This only affects queueing. If queueing is turned off, any calls to addQuad will cause the quad to be rendered directly. Note that disabling queueing will not cause currently queued quads to be rendered, nor is the queue cleared - at any time the queue can still be drawn by calling doRender, and the list can be cleared by calling clearRenderList. Re-enabling the queue causes subsequent quads to be added as if queueing had never been disabled.
setting | true to enable queueing, or false to disable queueing (see notes above). |
Implemented in CEGUI::DirectfbRenderer, CEGUI::DirectX10Renderer, CEGUI::DirectX81Renderer, CEGUI::DirectX9Renderer, CEGUI::IrrlichtRenderer, and CEGUI::OpenGLRenderer.
Referenced by CEGUI::System::renderGUI().
const String CEGUI::Renderer::EventDisplaySizeChanged [static] |
event that fires when the underlying display size had changed.
It is important that all Renderer implementers fire this properly as the system itself subscribes to this event.
Referenced by CEGUI::DirectX81Renderer::setDisplaySize(), CEGUI::OpenGLRenderer::setDisplaySize(), CEGUI::IrrlichtRenderer::setDisplaySize(), CEGUI::DirectX9Renderer::setDisplaySize(), CEGUI::DirectX10Renderer::setDisplaySize(), and CEGUI::System::System().