CartoType API
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
CartoType::C32BitColorBitmapGraphicsContext Class Reference

#include <cartotype_graphics.h>

Inheritance diagram for CartoType::C32BitColorBitmapGraphicsContext:
CartoType::CLabelGraphicsContext CartoType::CBitmapGraphicsContext CartoType::CGraphicsContext

List of all members.

Public Member Functions

void Sync ()
TResult DrawBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult DrawRect (const TRect &aRect)
TResult DrawShape (const MPath &aOutline, uint32 aFlags)
void Clear ()
TResult DrawTexture (const CTexture &aTexture, const TPointFP &aTopLeft, const TTransformFP &aTransform)
TResult TestBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft, bool aCanOverlapEdge)
TResult TestTexture (const CTexture &aTexture, const TPointFP &aTopLeft, const TTransformFP &aTransform, bool aCanOverlapEdge)
TResult TestRectZ (const TRect &aRect, bool aCanOverlapEdge, uint32 aZ)
TResult TestShapeZ (const MPath &aOutline, uint32 aFlags, uint32 aZ)
TResult DrawRectZ (const TRect &aRect, uint32 aZ)
TResult DrawShapeZ (const MPath &aPath, uint32 aFlags, uint32 aZ)
void SetGlow (TColor aColor, TFixed aWidth, const TPointFixed &aOffset)
const MPaletteBitmapPalette ()

Static Public Member Functions

static CT_IMPORT
C32BitColorBitmapGraphicsContext
New (TResult &aError, CEngine &aEngine, int32 aWidth, int32 aHeight)

Protected Member Functions

 C32BitColorBitmapGraphicsContext (CEngine &aEngine, CBitmap *aBitmap)
 C32BitColorBitmapGraphicsContext (const C32BitColorBitmapGraphicsContext &)
void operator= (const C32BitColorBitmapGraphicsContext &)
TResult Draw1BitMonoBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult Draw8BitMonoBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult Draw24BitColorBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult Draw32BitColorBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult Draw8BitTwinBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult Test1BitMonoBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft, bool aCanOverlapEdge) const
TResult Test8BitMonoBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft, bool aCanOverlapEdge) const
TResult Test32BitColorBitmap (const TBitmap &aBitmap, const TPoint &aTopLeft, bool aCanOverlapEdge) const
TResult Draw8BitMonoGlow (const TBitmap &aBitmap, const TPoint &aTopLeft)
TResult DrawBitmapTexture (const TBitmap &aBitmap, const TPointFP &aTopLeft, const TTransformFP &aTransform)
TResult DrawBitmapTextureUsingRamp (const TBitmap &aBitmap, const TPointFP &aTopLeft, const TTransformFP &aTransform)

Protected Attributes

uint8 iRed
uint8 iGreen
uint8 iBlue
uint8 iAlpha
uint8 iRawRed
uint8 iRawGreen
uint8 iRawBlue
uint32 iFullIntensityColorValue
uint32 iTextureMaskColorValue
TColor iGlowColor
TFixed iGlowWidth
TPoint iGlowOffset
uint8 iRedGlow
uint8 iGreenGlow
uint8 iBlueGlow
uint8 iAlphaGlow
uint8 iRawRedGlow
uint8 iRawGreenGlow
uint8 iRawBlueGlow
uint32 iFullIntensityGlowValue
bool iGlowIsWhite
bool iCompositeOpIsRout

Detailed Description

A 32-bit RGBA color bitmap graphics context that stores premultiplied alpha values. It is also used to store and test z-levels, which are represented using zero alpha levels and are not drawn.


Member Function Documentation

const MPalette* CartoType::C32BitColorBitmapGraphicsContext::BitmapPalette ( ) [inline, virtual]

Return a pointer to the palette associated with the bitmap owned by the graphics context. If the bitmap has no palette return null.

Implements CartoType::CLabelGraphicsContext.

void C32BitColorBitmapGraphicsContext::Clear ( ) [virtual]

Clear the drawing area to transparent black. If colors are not stored set all pixels to zero intensity. If transparency levels are not stored set all pixels to black.

Implements CartoType::CGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawBitmap ( const TBitmap aBitmap,
const TPoint aTopLeft 
) [virtual]

Draw a bitmap. If the bitmap has no color information use the current color. Combine any alpha information from the bitmap with the current alpha level. The coordinates are whole pixels.

Implements CartoType::CGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawBitmapTextureUsingRamp ( const TBitmap aBitmap,
const TPointFP aTopLeft,
const TTransformFP aTransform 
) [protected]

Draw a bitmap texture, using a paint server as a color ramp. 8-bit pixel values are used as x coordinates for the paint server. The y coordinate is always zero.

TResult C32BitColorBitmapGraphicsContext::DrawRect ( const TRect aRect) [virtual]

Draw a filled rectangle in the current color. The coordinates are whole pixels.

Reimplemented from CartoType::CGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawRectZ ( const TRect aRect,
uint32  aZ 
) [virtual]

Set a Z value indicating a priority or other front-to-back ordering by setting all the pixels of a rectangle to the value aZ unless their existing value is higher.

Implements CartoType::CLabelGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawShape ( const MPath aPath,
uint32  aFlags 
) [virtual]

Draw a filled shape in the current color.

Implements CartoType::CGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawShapeZ ( const MPath aPath,
uint32  aFlags,
uint32  aZ 
) [virtual]

Set a Z value indicating a priority or other front-to-back ordering by setting all the non-transparent pixels of a shape to the value aZ unless their existing value is higher.

Implements CartoType::CLabelGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::DrawTexture ( const CTexture aTexture,
const TPointFP aTopLeft,
const TTransformFP aTransform 
) [virtual]

Draw a texture at aTopLeft, transforming it by aTransform. The baseimplementation returns KErrorUnimplemented.

Reimplemented from CartoType::CGraphicsContext.

void C32BitColorBitmapGraphicsContext::SetGlow ( TColor  aColor,
TFixed  aWidth,
const TPointFixed aOffset 
) [virtual]

Set the current glow parameters. Bitmaps are drawn with a glowing border if the glow color is not fully transparent and the glow width is greater than zero.

Implements CartoType::CLabelGraphicsContext.

void C32BitColorBitmapGraphicsContext::Sync ( ) [virtual]

Synchronize the private graphics state to take account of any changes in iChangeFlags.

Implements CartoType::CGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::TestBitmap ( const TBitmap aBitmap,
const TPoint aTopLeft,
bool  aCanOverlapEdge 
) [virtual]

Find out whether any of the non-transparent pixels of aBitmap would overlap pixels with a non-zero value and return KErrorOverlap if so, or if aCanOverlapEdge is false and aBitmap is partly outside the drawable area of the GC. If not, return KErrorNone or an error code if some actual error occurred.

Implements CartoType::CLabelGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::TestRectZ ( const TRect aRect,
bool  aCanOverlapEdge,
uint32  aZ 
) [virtual]

Find out whether any of the pixels of aRect would overlap pixels with a value of aZ or more and return KErrorOverlap if so. If not, return KErrorNone or an error code if some actual error occurred. If aCanOverlapEdge is true the rectangle may overlap the edge of the display.

Implements CartoType::CLabelGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::TestShapeZ ( const MPath aPath,
uint32  aFlags,
uint32  aZ 
) [virtual]

Find out whether any of the pixels drawn when drawing aPath would overlap pixels with a value of aZ or more and return KErrorOverlap if so. If not, return KErrorNone or an error code if some actual error occurred.

Implements CartoType::CLabelGraphicsContext.

TResult C32BitColorBitmapGraphicsContext::TestTexture ( const CTexture aTexture,
const TPointFP aTopLeft,
const TTransformFP aTransform,
bool  aCanOverlapEdge 
) [virtual]

Find out whether any of the non-transparent pixels of aTexture would overlap pixels with a non-zero value and return KErrorOverlap if so, or if aCanOverlapEdge is false and aBitmap is partly outside the drawable area of the GC. If not, return KErrorNone or an error code if some actual error occurred.

Implements CartoType::CLabelGraphicsContext.


The documentation for this class was generated from the following files: