Public Member Functions | Protected Member Functions | Protected Attributes

LowLevelGraphicsSoftwareRenderer Class Reference

A lowest-common-denominator implementation of LowLevelGraphicsContext that does all its rendering in memory. More...

Inherits LowLevelGraphicsContext.

List of all members.

Public Member Functions

 LowLevelGraphicsSoftwareRenderer (const Image &imageToRenderOn)
 LowLevelGraphicsSoftwareRenderer (const Image &imageToRenderOn, int xOffset, int yOffset, const RectangleList &initialClip)
 ~LowLevelGraphicsSoftwareRenderer ()
bool isVectorDevice () const
 Returns true if this device is vector-based, e.g.
void setOrigin (int x, int y)
 Moves the origin to a new position.
void addTransform (const AffineTransform &transform)
float getScaleFactor ()
bool clipToRectangle (const Rectangle< int > &r)
bool clipToRectangleList (const RectangleList &clipRegion)
void excludeClipRectangle (const Rectangle< int > &r)
void clipToPath (const Path &path, const AffineTransform &transform)
void clipToImageAlpha (const Image &sourceImage, const AffineTransform &transform)
bool clipRegionIntersects (const Rectangle< int > &r)
const Rectangle< int > getClipBounds () const
bool isClipEmpty () const
void saveState ()
void restoreState ()
void beginTransparencyLayer (float opacity)
void endTransparencyLayer ()
void setFill (const FillType &fillType)
void setOpacity (float opacity)
void setInterpolationQuality (Graphics::ResamplingQuality quality)
void fillRect (const Rectangle< int > &r, bool replaceExistingContents)
void fillPath (const Path &path, const AffineTransform &transform)
void drawImage (const Image &sourceImage, const AffineTransform &transform, bool fillEntireClipAsTiles)
void drawLine (const Line< float > &line)
void drawVerticalLine (int x, float top, float bottom)
void drawHorizontalLine (int x, float top, float bottom)
void setFont (const Font &newFont)
Font getFont ()
void drawGlyph (int glyphNumber, float x, float y)
void drawGlyph (int glyphNumber, const AffineTransform &transform)

Protected Member Functions

 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LowLevelGraphicsSoftwareRenderer)

Protected Attributes

Image image
ScopedPointer< SavedState > currentState
OwnedArray< SavedState > stateStack

Detailed Description

A lowest-common-denominator implementation of LowLevelGraphicsContext that does all its rendering in memory.

User code is not supposed to create instances of this class directly - do all your rendering via the Graphics class instead.


Constructor & Destructor Documentation

LowLevelGraphicsSoftwareRenderer::LowLevelGraphicsSoftwareRenderer ( const Image imageToRenderOn )
LowLevelGraphicsSoftwareRenderer::LowLevelGraphicsSoftwareRenderer ( const Image imageToRenderOn,
int  xOffset,
int  yOffset,
const RectangleList initialClip 
)
LowLevelGraphicsSoftwareRenderer::~LowLevelGraphicsSoftwareRenderer (  )

Member Function Documentation

bool LowLevelGraphicsSoftwareRenderer::isVectorDevice (  ) const [virtual]

Returns true if this device is vector-based, e.g.

a printer.

Implements LowLevelGraphicsContext.

void LowLevelGraphicsSoftwareRenderer::setOrigin ( int  x,
int  y 
) [virtual]

Moves the origin to a new position.

The co-ords are relative to the current origin, and indicate the new position of (0, 0).

Implements LowLevelGraphicsContext.

void LowLevelGraphicsSoftwareRenderer::addTransform ( const AffineTransform transform ) [virtual]
float LowLevelGraphicsSoftwareRenderer::getScaleFactor (  ) [virtual]
bool LowLevelGraphicsSoftwareRenderer::clipToRectangle ( const Rectangle< int > &  r ) [virtual]
bool LowLevelGraphicsSoftwareRenderer::clipToRectangleList ( const RectangleList clipRegion ) [virtual]
void LowLevelGraphicsSoftwareRenderer::excludeClipRectangle ( const Rectangle< int > &  r ) [virtual]
void LowLevelGraphicsSoftwareRenderer::clipToPath ( const Path path,
const AffineTransform transform 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::clipToImageAlpha ( const Image sourceImage,
const AffineTransform transform 
) [virtual]
bool LowLevelGraphicsSoftwareRenderer::clipRegionIntersects ( const Rectangle< int > &  r ) [virtual]
const Rectangle<int> LowLevelGraphicsSoftwareRenderer::getClipBounds (  ) const [virtual]
bool LowLevelGraphicsSoftwareRenderer::isClipEmpty (  ) const [virtual]
void LowLevelGraphicsSoftwareRenderer::saveState (  ) [virtual]
void LowLevelGraphicsSoftwareRenderer::restoreState (  ) [virtual]
void LowLevelGraphicsSoftwareRenderer::beginTransparencyLayer ( float  opacity ) [virtual]
void LowLevelGraphicsSoftwareRenderer::endTransparencyLayer (  ) [virtual]
void LowLevelGraphicsSoftwareRenderer::setFill ( const FillType fillType ) [virtual]
void LowLevelGraphicsSoftwareRenderer::setOpacity ( float  opacity ) [virtual]
void LowLevelGraphicsSoftwareRenderer::setInterpolationQuality ( Graphics::ResamplingQuality  quality ) [virtual]
void LowLevelGraphicsSoftwareRenderer::fillRect ( const Rectangle< int > &  r,
bool  replaceExistingContents 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::fillPath ( const Path path,
const AffineTransform transform 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::drawImage ( const Image sourceImage,
const AffineTransform transform,
bool  fillEntireClipAsTiles 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::drawLine ( const Line< float > &  line ) [virtual]
void LowLevelGraphicsSoftwareRenderer::drawVerticalLine ( int  x,
float  top,
float  bottom 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::drawHorizontalLine ( int  x,
float  top,
float  bottom 
) [virtual]
void LowLevelGraphicsSoftwareRenderer::setFont ( const Font newFont ) [virtual]
Font LowLevelGraphicsSoftwareRenderer::getFont (  ) [virtual]
void LowLevelGraphicsSoftwareRenderer::drawGlyph ( int  glyphNumber,
float  x,
float  y 
)
void LowLevelGraphicsSoftwareRenderer::drawGlyph ( int  glyphNumber,
const AffineTransform transform 
) [virtual]
LowLevelGraphicsSoftwareRenderer::JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR ( LowLevelGraphicsSoftwareRenderer   ) [protected]

Member Data Documentation


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines