#include <BIGraphicsDevice.h>

Public Member Functions | |
| virtual void | initialize (uint16_t width, uint16_t height, uint8_t depth)=0 |
| Initialize an allocate the buffer. | |
| virtual void | finalize ()=0 |
| deallocate all surfaces allocated through intialize() method. | |
| virtual BINativeImage * | createNativeImage (const WebCore::IntSize size)=0 |
| Create an empty buffer called NativeImage which can be blitted into primary buffer. | |
| virtual BINativeImage * | createNativeImage (RGBA32Array &, const WebCore::IntSize size)=0 |
| Create a buffer filled with data from an RGBA32Array. | |
| virtual void | copy (const BTWidget &, const BINativeImage &, WebCore::IntRect zone, WebCore::IntPoint, const uint8_t alphaChannel=255)=0 |
| Copy a NativeImage (buffer) into a widget buffer. | |
| virtual void | drawArc (const BTWidget &, const WebCore::IntRect, uint16_t startAngle, uint16_t angleSpan, const WebCore::Color)=0 |
| draw an arc into widget buffer. | |
| virtual void | drawEllipse (const BTWidget &, WebCore::IntRect, const WebCore::Color)=0 |
| draw an ellipse into widget buffer. | |
| virtual void | drawLine (const BTWidget &, WebCore::IntPoint, WebCore::IntPoint, const WebCore::Color)=0 |
| draw an line into widget buffer. | |
| virtual void | drawRect (const BTWidget &, WebCore::IntRect, const WebCore::Color)=0 |
| draw an empty rectangle into widget buffer. | |
| virtual void | fillConvexPolygon (const BTWidget &, size_t numPoints, const WebCore::IntPoint *, const WebCore::Color)=0 |
| Draw a filled convex polygon into widget buffer. | |
| virtual void | fillRect (const BTWidget &, WebCore::IntRect, const WebCore::Color)=0 |
| Draw a filled rectangle into widget buffer. | |
| virtual void | setClip (const BTWidget &, WebCore::IntRect)=0 |
| Set a clipping zone for the widget buffer. | |
| virtual WebCore::IntRect | clip (const BTWidget &)=0 |
| Get the clipping zone for the widget buffer. | |
| virtual void | stretchBlit (const BTWidget &, const BINativeImage &, WebCore::IntRect src, WebCore::IntRect dst, const uint8_t alphaChannel=255)=0 |
| Stretch a buffer and blit it into the widget buffer. | |
| virtual WebCore::IntSize | size () const =0 |
| Get the size of the Graphics device. | |
| virtual void | update (const BTWidget &, const WebCore::IntRect)=0 |
| Update zone in the widget buffer. | |
| virtual void | clear (const BTWidget &, const WebCore::IntRect)=0 |
| Clear a zone in the widget buffer FIXME should redraw with background color. | |
| virtual | ~BIGraphicsDevice () |
| Destructor for the Graphics device. | |
| virtual BAL::BIGraphicsDevice::~BIGraphicsDevice | ( | ) | [inline, virtual] |
Destructor for the Graphics device.
| virtual void BAL::BIGraphicsDevice::initialize | ( | uint16_t | width, | |
| uint16_t | height, | |||
| uint8_t | depth | |||
| ) | [pure virtual] |
Initialize an allocate the buffer.
Use the implementation header if the buffer is own by another object and simply passed in argument.
| [in] | width,: | width of the buffer to allocate |
| [in] | height,: | height of the buffer to allocate |
| [in] | depth,: | depth of the buffer to allocate |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::finalize | ( | ) | [pure virtual] |
deallocate all surfaces allocated through intialize() method.
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual BINativeImage* BAL::BIGraphicsDevice::createNativeImage | ( | const WebCore::IntSize | size | ) | [pure virtual] |
Create an empty buffer called NativeImage which can be blitted into primary buffer.
| [in] | IntSize,: | size of the buffer to allocate |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual BINativeImage* BAL::BIGraphicsDevice::createNativeImage | ( | RGBA32Array & | , | |
| const WebCore::IntSize | size | |||
| ) | [pure virtual] |
Create a buffer filled with data from an RGBA32Array.
This method is typically used to allocate buffer for decoded images or fonts.
| [in] | RGBA32Array&,: | the data to fill the buffer with |
| [in] | IntSize,: | size of the buffer to allocate (must be size of the RGBA32Array) |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::copy | ( | const BTWidget & | , | |
| const BINativeImage & | , | |||
| WebCore::IntRect | zone, | |||
| WebCore::IntPoint | , | |||
| const uint8_t | alphaChannel = 255 | |||
| ) | [pure virtual] |
Copy a NativeImage (buffer) into a widget buffer.
| [in] | BTWidget | |
| [in] | BINativeImage,: | the buffer to copy |
| [in] | IntRect,: | where to copy buffer |
| [in] | IntPoint | |
| [in] | alphaChannel,: | global alpha to apply to the copied buffer |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::drawArc | ( | const BTWidget & | , | |
| const WebCore::IntRect | , | |||
| uint16_t | startAngle, | |||
| uint16_t | angleSpan, | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
draw an arc into widget buffer.
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | IntRect,: | rectangle which contains arc |
| [in] | startAngle | |
| [in] | angleSpan,: | endAngle = startAngle + angleSpan |
| [in] | Color,: | color of the arc to draw |
| virtual void BAL::BIGraphicsDevice::drawEllipse | ( | const BTWidget & | , | |
| WebCore::IntRect | , | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
draw an ellipse into widget buffer.
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | IntRect,: | rectangle which contains ellipse. Ellipse specific params can be computed from this rectangle. |
| [in] | Color,: | color of the ellipse to draw |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::drawLine | ( | const BTWidget & | , | |
| WebCore::IntPoint | , | |||
| WebCore::IntPoint | , | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
draw an line into widget buffer.
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | IntPoint,: | starting point |
| [in] | IntPoint,: | end point |
| [in] | Color,: | color of the line to draw |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::drawRect | ( | const BTWidget & | , | |
| WebCore::IntRect | , | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
draw an empty rectangle into widget buffer.
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | IntRect,: | rectangle to draw |
| [in] | Color,: | color of the line to draw |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::fillConvexPolygon | ( | const BTWidget & | , | |
| size_t | numPoints, | |||
| const WebCore::IntPoint * | , | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
Draw a filled convex polygon into widget buffer.
I mean from a triangle to whatever. Of course to draw square or rectangle, use a method like drawRect().
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | size_t,: | number of points of the polygon |
| [in] | IntPoint*,: | list of numPoint size which contains each point coordinate |
| [in] | Color,: | color of the polygon to draw |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::fillRect | ( | const BTWidget & | , | |
| WebCore::IntRect | , | |||
| const WebCore::Color | ||||
| ) | [pure virtual] |
Draw a filled rectangle into widget buffer.
| [in] | BTWidget,: | use widget buffer to draw |
| [in] | IntRect,: | rectangle to draw |
| [in] | Color,: | color of the polygon to draw |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::setClip | ( | const BTWidget & | , | |
| WebCore::IntRect | ||||
| ) | [pure virtual] |
Set a clipping zone for the widget buffer.
| [in] | BTWidget,: | use widget buffer |
| [in] | IntRect,: | clipping zone to set |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual WebCore::IntRect BAL::BIGraphicsDevice::clip | ( | const BTWidget & | ) | [pure virtual] |
Get the clipping zone for the widget buffer.
| [in] | BTWidget,: | use widget buffer |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::stretchBlit | ( | const BTWidget & | , | |
| const BINativeImage & | , | |||
| WebCore::IntRect | src, | |||
| WebCore::IntRect | dst, | |||
| const uint8_t | alphaChannel = 255 | |||
| ) | [pure virtual] |
Stretch a buffer and blit it into the widget buffer.
If you do not need to stretch the buffer before blitting, use copy() method.
| [in] | BTWidget,: | use widget buffer |
| [in] | BINativeImage&,: | the buffer to stretch and blit |
| [in] | IntRect,: | size and coordinate of the buffer to blit |
| [in] | IntRect,: | size and coordinate of the destination blit |
| [in] | alphaChannel,: | global alpha to apply to the copied buffer |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual WebCore::IntSize BAL::BIGraphicsDevice::size | ( | ) | const [pure virtual] |
| virtual void BAL::BIGraphicsDevice::update | ( | const BTWidget & | , | |
| const WebCore::IntRect | ||||
| ) | [pure virtual] |
Update zone in the widget buffer.
| [in] | BTWidget,: | use widget buffer |
| [in] | IntRect,: | zone to update |
Implemented in BAL::BCGraphicsDeviceSDL.
| virtual void BAL::BIGraphicsDevice::clear | ( | const BTWidget & | , | |
| const WebCore::IntRect | ||||
| ) | [pure virtual] |
Clear a zone in the widget buffer FIXME should redraw with background color.
| [in] | BTWidget,: | use widget buffer |
| [in] | IntRect,: | the rectangular zone to clear |
Implemented in BAL::BCGraphicsDeviceSDL.