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

gcn::OpenGLGraphics Class Reference

#include <openglgraphics.hpp>

Inheritance diagram for gcn::OpenGLGraphics:

gcn::Graphics List of all members.

Detailed Description

OpenGL implementation of the Graphics.

Definition at line 66 of file openglgraphics.hpp.

Public Member Functions

 OpenGLGraphics ()
 Constructor.
 OpenGLGraphics (int width, int height)
 Constructor.
virtual ~OpenGLGraphics ()
 Destructor.
virtual void setTargetPlane (int width, int height)
 Sets the target plane on where to draw.
virtual void _beginDraw ()
 Initializes drawing.
virtual void _endDraw ()
 Deinitializes drawing.
virtual bool pushClipArea (Rectangle area)
 Pushes a clip area onto the stack.
virtual void popClipArea ()
 Removes the topmost clip area from the stack.
virtual void drawImage (const Image *image, int srcX, int srcY, int dstX, int dstY, int width, int height)
 Draws a part of an Image.
virtual void drawPoint (int x, int y)
 Draws a single point/pixel.
virtual void drawLine (int x1, int y1, int x2, int y2)
 Ddraws a line.
virtual void drawRectangle (const Rectangle &rectangle)
 Draws a simple, non-filled, Rectangle with one pixel width.
virtual void fillRectangle (const Rectangle &rectangle)
 Draws a filled Rectangle.
virtual void setColor (const Color &color)
 Sets the Color to use when drawing.
virtual const ColorgetColor ()
 Gets the Color to use when drawing.

Protected Attributes

int mWidth
int mHeight
bool mAlpha
Color mColor


Constructor & Destructor Documentation

gcn::OpenGLGraphics::OpenGLGraphics int  width,
int  height
 

Constructor.

Parameters:
width the width of the logical drawing surface. Should be the same as the screen resolution.
height the height ot the logical drawing surface. Should be the same as the screen resolution.

Definition at line 85 of file openglgraphics.cpp.

References setTargetPlane().

gcn::OpenGLGraphics::~OpenGLGraphics  )  [virtual]
 

Destructor.

Definition at line 90 of file openglgraphics.cpp.


Member Function Documentation

void gcn::OpenGLGraphics::_beginDraw  )  [virtual]
 

Initializes drawing.

Called by the Gui when Gui::draw() is called. It is needed by some implementations of Graphics to perform preparations before drawing. An example of such an implementation would be OpenGLGraphics.

NOTE: You will never need to call this function yourself. Gui will do it for you.

See also:
_endDraw, Gui::draw

Reimplemented from gcn::Graphics.

Definition at line 95 of file openglgraphics.cpp.

References pushClipArea().

void gcn::OpenGLGraphics::_endDraw  )  [virtual]
 

Deinitializes drawing.

Called by the Gui when a Gui::draw() is done. done. It should reset any state changes made by _beginDraw().

NOTE: You will never need to call this function yourself. Gui will do it for you.

See also:
_beginDraw, Gui::draw

Reimplemented from gcn::Graphics.

Definition at line 145 of file openglgraphics.cpp.

References popClipArea().

void gcn::OpenGLGraphics::drawImage const Image image,
int  srcX,
int  srcY,
int  dstX,
int  dstY,
int  width,
int  height
[virtual]
 

Draws a part of an Image.

NOTE: Width and height arguments will not scale the Image but specifies the size of the part to be drawn. If you want to draw the whole Image there is a simplified version of this function.

EXAMPLE:

 drawImage(myImage, 10, 10, 20, 20, 40, 40); 
Will draw a rectangular piece of myImage starting at coordinate (10, 10) in myImage, with width and height 40. The piece will be drawn with it's top left corner at coordinate (20, 20).

Parameters:
image the Image to draw.
srcX source Image x coordinate.
srcY source Image y coordinate.
dstX destination x coordinate.
dstY destination y coordinate.
width the width of the piece.
height the height of the piece.

Implements gcn::Graphics.

Definition at line 194 of file openglgraphics.cpp.

void gcn::OpenGLGraphics::drawLine int  x1,
int  y1,
int  x2,
int  y2
[virtual]
 

Ddraws a line.

Parameters:
x1 the first x coordinate.
y1 the first y coordinate.
x2 the second x coordinate.
y2 the second y coordinate.

Implements gcn::Graphics.

Definition at line 266 of file openglgraphics.cpp.

void gcn::OpenGLGraphics::drawPoint int  x,
int  y
[virtual]
 

Draws a single point/pixel.

Parameters:
x the x coordinate.
y the y coordinate.

Implements gcn::Graphics.

Definition at line 256 of file openglgraphics.cpp.

void gcn::OpenGLGraphics::drawRectangle const Rectangle rectangle  )  [virtual]
 

Draws a simple, non-filled, Rectangle with one pixel width.

Parameters:
rectangle the Rectangle to draw.

Implements gcn::Graphics.

Definition at line 283 of file openglgraphics.cpp.

void gcn::OpenGLGraphics::fillRectangle const Rectangle rectangle  )  [virtual]
 

Draws a filled Rectangle.

Parameters:
rectangle the filled Rectangle to draw.

Implements gcn::Graphics.

Definition at line 297 of file openglgraphics.cpp.

const Color & gcn::OpenGLGraphics::getColor  )  [virtual]
 

Gets the Color to use when drawing.

Returns:
the Color used when drawing.

Implements gcn::Graphics.

Definition at line 327 of file openglgraphics.cpp.

void gcn::OpenGLGraphics::popClipArea  )  [virtual]
 

Removes the topmost clip area from the stack.

Exceptions:
Exception if the stack is empty.

Reimplemented from gcn::Graphics.

Definition at line 173 of file openglgraphics.cpp.

Referenced by _endDraw().

bool gcn::OpenGLGraphics::pushClipArea Rectangle  area  )  [virtual]
 

Pushes a clip area onto the stack.

The x and y coordinates in the Rectangle will be relative to the last pushed clip area. If the new area falls outside the current clip area, it will be clipped as necessary.

Parameters:
area the clip area to be pushed onto the stack.
Returns:
false if the the new area lays totally outside the current clip area. Note that an empty clip area will be pused in this case.

Reimplemented from gcn::Graphics.

Definition at line 161 of file openglgraphics.cpp.

Referenced by _beginDraw().

void gcn::OpenGLGraphics::setColor const Color color  )  [virtual]
 

Sets the Color to use when drawing.

Parameters:
color a Color.

Implements gcn::Graphics.

Definition at line 311 of file openglgraphics.cpp.

References gcn::Color::a.

void gcn::OpenGLGraphics::setTargetPlane int  width,
int  height
[virtual]
 

Sets the target plane on where to draw.

Parameters:
width the width of the logical drawing surface. Should be the same as the screen resolution.
height the height ot the logical drawing surface. Should be the same as the screen resolution.

Definition at line 188 of file openglgraphics.cpp.

Referenced by OpenGLGraphics().


The documentation for this class was generated from the following files:
Generated on Tue May 17 21:23:26 2005 for Guichan by  doxygen 1.4.1