CFbsBitGc Class Reference

class CFbsBitGc : public CBitmapContext

Concrete implementation of a bitmapped graphics context.

The class provides new functionality, and implementations of the pure virtual functions defined in CGraphicsContext and CBitmapContext.

Public Member Functions
~CFbsBitGc()
IMPORT_C voidActivate(CFbsDevice *)
IMPORT_C voidActivateNoJustAutoUpdate(CFbsDevice *)
IMPORT_C TIntAlphaBlendBitmaps(const TPoint &, const CFbsBitmap *, const CFbsBitmap *, const TRect &, const TPoint &, const CFbsBitmap *, const TPoint &)
IMPORT_C TIntAlphaBlendBitmaps(const TPoint &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, const TPoint &)
IMPORT_C TIntAlphaBlendBitmaps(const TPoint &, const CWsBitmap *, const TRect &, const CWsBitmap *, const TPoint &)
IMPORT_C voidBitBlt(const TPoint &, const CFbsBitGc &)
IMPORT_C voidBitBlt(const TPoint &, const CFbsBitGc &, const TRect &)
IMPORT_C voidBitBlt(const TPoint &, const CFbsBitmap *)
IMPORT_C voidBitBlt(const TPoint &, const CFbsBitmap *, const TRect &)
IMPORT_C voidBitBltMasked(const TPoint &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, TBool)
IMPORT_C TRgbBrushColor()
IMPORT_C voidCancelClipping()
IMPORT_C voidCancelClippingRect()
IMPORT_C voidCancelClippingRegion()
IMPORT_C voidChangeDevice(CFbsDevice *)
IMPORT_C voidClear()
IMPORT_C voidClear(const TRect &)
IMPORT_C voidCopyRect(const TPoint &, const TRect &)
IMPORT_C voidCopySettings(const CFbsBitGc &)
IMPORT_C CGraphicsDevice *Device()
IMPORT_C voidDiscardBrushPattern()
IMPORT_C voidDiscardFont()
IMPORT_C voidDrawArc(const TRect &, const TPoint &, const TPoint &)
IMPORT_C voidDrawBitmap(const TPoint &, const CFbsBitmap *)
IMPORT_C voidDrawBitmap(const TRect &, const CFbsBitmap *)
IMPORT_C voidDrawBitmap(const TRect &, const CFbsBitmap *, const TRect &)
IMPORT_C voidDrawBitmapMasked(const TRect &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, TBool)
IMPORT_C voidDrawBitmapMasked(const TRect &, const CWsBitmap *, const TRect &, const CWsBitmap *, TBool)
IMPORT_C voidDrawEllipse(const TRect &)
IMPORT_C voidDrawLine(const TPoint &, const TPoint &)
IMPORT_C voidDrawLineBy(const TPoint &)
IMPORT_C voidDrawLineTo(const TPoint &)
IMPORT_C voidDrawPie(const TRect &, const TPoint &, const TPoint &)
IMPORT_C voidDrawPolyLine(const CArrayFix< TPoint > *)
IMPORT_C voidDrawPolyLine(const TPoint *, TInt)
IMPORT_C voidDrawPolyLineNoEndPoint(const CArrayFix< TPoint > *)
IMPORT_C voidDrawPolyLineNoEndPoint(const TPoint *, TInt)
IMPORT_C TIntDrawPolygon(const CArrayFix< TPoint > *, CGraphicsContext::TFillRule)
IMPORT_C TIntDrawPolygon(const TPoint *, TInt, CGraphicsContext::TFillRule)
IMPORT_C voidDrawRect(const TRect &)
IMPORT_C voidDrawRoundRect(const TRect &, const TSize &)
IMPORT_C voidDrawText(const TDesC &)
IMPORT_C voidDrawText(const TDesC &, const TPoint &)
IMPORT_C voidDrawText(const TDesC &, const TRect &)
IMPORT_C voidDrawText(const TDesC &, const TRect &, TInt, TTextAlign, TInt)
IMPORT_C voidDrawText(const TDesC &, const TRect &, TInt, TInt, TTextAlign, TInt)
IMPORT_C voidDrawText(const TDesC &, const TTextParameters *)
IMPORT_C voidDrawText(const TDesC &, const TTextParameters *, const TPoint &)
IMPORT_C voidDrawText(const TDesC &, const TTextParameters *, const TRect &)
IMPORT_C voidDrawText(const TDesC &, const TTextParameters *, const TRect &, TInt, TTextAlign, TInt)
IMPORT_C voidDrawText(const TDesC &, const TTextParameters *, const TRect &, TInt, TInt, TTextAlign, TInt)
IMPORT_C voidDrawTextVertical(const TDesC &, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TPoint &, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TRect &, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TRect &, TInt, TBool, TTextAlign, TInt)
IMPORT_C voidDrawTextVertical(const TDesC &, const TRect &, TInt, TInt, TBool, TTextAlign, TInt)
IMPORT_C voidDrawTextVertical(const TDesC &, const TTextParameters *, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TTextParameters *, const TPoint &, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TBool)
IMPORT_C voidDrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TInt, TBool, TTextAlign, TInt)
IMPORT_C voidDrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TInt, TInt, TBool, TTextAlign, TInt)
IMPORT_C voidExternalizeL(RWriteStream &)
IMPORT_C voidFadeArea(const TRegion *)
IMPORT_C voidInternalizeL(RReadStream &)
IMPORT_C TBoolIsBrushPatternUsed()
IMPORT_C TBoolIsFontUsed()
TInt16 Load16(const TUint8 *)
IMPORT_C voidMapColors(const TRect &, const TRgb *, TInt, TBool)
IMPORT_C voidMoveBy(const TPoint &)
IMPORT_C voidMoveTo(const TPoint &)
IMPORT_C CFbsBitGc *NewL()
IMPORT_C voidOrientationsAvailable(TBool)
IMPORT_C TRgbPenColor()
IMPORT_C voidPlot(const TPoint &)
IMPORT_C voidRectDrawnTo(TRect &)
IMPORT_C voidReset()
IMPORT_C voidResized()
IMPORT_C voidSetBrushColor(const TRgb &)
IMPORT_C voidSetBrushOrigin(const TPoint &)
IMPORT_C voidSetBrushStyle(TBrushStyle)
IMPORT_C voidSetCharJustification(TInt, TInt)
IMPORT_C voidSetClippingRect(const TRect &)
IMPORT_C voidSetClippingRegion(const TRegion *)
IMPORT_C TIntSetClippingRegion(const TRegion &)
IMPORT_C voidSetDitherOrigin(const TPoint &)
IMPORT_C voidSetDrawMode(TDrawMode)
voidSetFadeMode(TBool)
IMPORT_C voidSetFaded(TBool)
voidSetFadingParameters(TUint8)
IMPORT_C voidSetFadingParameters(TUint8, TUint8)
IMPORT_C TBoolSetOrientation(TGraphicsOrientation)
IMPORT_C voidSetOrigin(const TPoint &)
IMPORT_C voidSetPenColor(const TRgb &)
IMPORT_C voidSetPenSize(const TSize &)
IMPORT_C voidSetPenStyle(TPenStyle)
IMPORT_C voidSetShadowMode(TBool)
IMPORT_C voidSetStrikethroughStyle(TFontStrikethrough)
IMPORT_C voidSetUnderlineStyle(TFontUnderline)
IMPORT_C voidSetUserDisplayMode(TDisplayMode)
IMPORT_C voidSetWordJustification(TInt, TInt)
IMPORT_C voidShadowArea(const TRegion *)
IMPORT_C voidUpdateJustification(const TDesC &)
IMPORT_C voidUpdateJustification(const TDesC &, const TTextParameters *)
IMPORT_C voidUpdateJustificationVertical(const TDesC &, TBool)
IMPORT_C voidUpdateJustificationVertical(const TDesC &, const TTextParameters *, TBool)
IMPORT_C voidUseBrushPattern(const CFbsBitmap *)
IMPORT_C TIntUseBrushPattern(TInt)
IMPORT_C voidUseFont(const CFont *)
IMPORT_C TIntUseFont(TInt)
IMPORT_C voidUseFontNoDuplicate(const CFbsBitGcFont *)
Protected Member Functions
IMPORT_C TIntAPIExtension(TUid, TAny *&, TAny *)
Private Member Functions
CFbsBitGc()
TInt APIExGetShadowColor(TAny *&)
voidAPIExGetUnderlineMetrics(TAny *&)
TInt APIExIsFbsBitGc(TAny *&)
TInt APIExSetShadowColor(TAny *)
voidAddRect(const TRect &)
TBool AnalyseEllipse(const TRect &, TPoint &, TPoint &, TInt &, TInt &, TBool *)
TInt BaselineCorrection()
voidBitMultiply(TUint32 *, TInt, TInt)
voidCheckDevice()
TBool CheckDevice(const TRect &)
TUint32 *ClipBinaryArray(TUint32 *, TUint32 *, TInt, TInt &, TInt &, TPoint &)
voidClipFillLine(TPoint, TPoint)
voidCopyCharLine(TUint32 *, TInt, const TUint8 *, TInt, TInt)
voidCopyCharWord(TUint32 *, const TUint8 *, TInt)
voidDoBitBlt(const TPoint &, CFbsDevice *, const TRect &)
voidDoBitBlt(const TPoint &, CBitwiseBitmap *, TUint32 *, TInt, const TRect &)
voidDoBitBltAlpha(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, const TPoint &, TInt, TBool)
voidDoBitBltAlpha(const TPoint &, const CBitwiseBitmap *, TUint32 *, const CBitwiseBitmap *, TUint32 *, const CBitwiseBitmap *, TUint32 *, const TRect &, const TPoint &, const TPoint &, TInt)
voidDoBitBltMasked(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)
voidDoBitBltMaskedFlicker(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)
voidDoBitBltMaskedNonFlicker(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)
voidDoBitBltMaskedNonFlickerPatterned(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)
voidDoBitBltMaskedNonFlickerSolid(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)
voidDoCopyRect(const TPoint &, const TRect &)
voidDoDrawBitmap(const TRect &, CBitwiseBitmap *, TUint32 *, TInt, const TRect &, const TPoint &)
voidDoDrawBitmapMasked(const TRect &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &)
voidDoDrawCharacter(const TPoint &, const TSize &, const TUint8 *)
voidDoDrawCharacterAntiAliased(const TPoint &, const TSize &, const TUint8 *, const TGlyphBitmapType)
voidDoDrawCharacterEx(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt)
voidDoDrawCharacterExLarge(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)
voidDoDrawCharacterLarge(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)
voidDoDrawCharacterMultiplied(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)
voidDoDrawCharacterVertical(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt, TBool)
voidDoDrawCharacterVerticalAntiAliased(const TPoint &, const TSize &, const TUint8 *, TBool, TGlyphBitmapType)
voidDoDrawDottedWideLine(const TPoint &, const TPoint &, TBool, const TRect &)
voidDoDrawLine(TPoint, TPoint, TBool)
voidDoDrawSolidWideLine(const TPoint &, const TPoint &, TBool, const TRect &)
voidDoDrawText(CFont::TPositionParam &, const TInt)
voidDoDrawTextEx(CFont::TPositionParam &, const CBitmapFont *, const TInt, const TInt)
voidDoDrawTextLarge(CFont::TPositionParam &, const CBitmapFont *, const TInt)
voidDoDrawTextVertical(CFont::TPositionParam &, const CBitmapFont *, TBool, const TInt)
voidDoPlot(const TPoint &)
voidDrawText(const TDesC &, const TTextParameters *, const TPoint &, TTextAlign, CFont::TTextDirection, const TRect *)
voidEllipseFill(const TRect &)
voidEllipseOutline(const TRect &)
voidEllipseOutlineWide(const TRect &)
TInt FastBlendInterface(const CBitwiseBitmap *, const CBitwiseBitmap *, MFastBlend *&)
TUint32 *GetScanLineOffsetPtr(CBitwiseBitmap *, TUint32 *&, TInt, TPoint, TUint32 *, TLineScanningPosition &, TUint)
voidGetStrikethroughMetrics(TInt &, TInt &)
CGraphicsAccelerator *GraphicsAccelerator()
TUint MemoryOffsetForPixelPitch(TUint, TDisplayMode)
voidOutputCharLine(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt)
voidOutputCharLineMultiplied(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt)
voidOutputCharLineVertical(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt, TBool)
voidPenAllocate()
voidPenDrawClipped(TPoint)
voidPenDrawDeferred(TPoint, TInt *, TInt)
voidPieArcOutline(const TRect &, const TPoint &, const TPoint &, TBool)
voidPieFill(const TRect &, const TPoint &, const TPoint &, TInt, TInt, const TBool *)
voidPieShell(const TRect &, const TPoint &, const TPoint &, const TBool *, TInt, TInt)
voidPieSliver(const TRect &, const TPoint &, const TPoint &, TInt)
voidPieTriangles(TBool, const TPoint &, const TPoint &)
voidPolyFill(const CArrayFix< TPoint > *, TFillRule)
voidPolyFill(const TPoint *, TInt, TFillRule)
voidPolyFillLarge(const CArrayFix< TPoint > *, TFillRule)
voidPolyFillLarge(const TPoint *, TInt, TFillRule)
voidPolyOutline(const CArrayFix< TPoint > *)
voidPolyOutline(const TPoint *, TInt)
CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &)
CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &, const TRect &, const TPoint &)
CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &, const TRect &, const TRect &)
voidRectFill(const TRect &)
IMPORT_C voidReserved_CBitmapContext_1()
IMPORT_C voidReserved_CBitmapContext_2()
IMPORT_C voidReserved_CBitmapContext_3()
IMPORT_C voidReserved_CFbsBitGc_1()
IMPORT_C voidReserved_CFbsBitGc_2()
IMPORT_C voidReserved_CFbsBitGc_3()
IMPORT_C voidReserved_CFbsBitGc_4()
IMPORT_C voidReserved_CFbsBitGc_5()
IMPORT_C voidReserved_CGraphicsContext_2()
voidRoundRectFill(const TRect &, TSize)
voidRoundRectOutline(const TRect &, TSize)
TDisplayMode ScanLineBufferDisplayMode(CFbsDrawDevice *)
voidSetupDevice()
voidShadowFadeArea(const TRegion *, TInt8)
TBool UserClipRect(TRect &)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CGraphicsContext::DrawText(const TDesC &,const TPoint &,const TDrawTextParam &)
CGraphicsContext::DrawText(const TDesC &,const TTextParameters *,const TPoint &,const TDrawTextParam &)
CGraphicsContext::DrawTextExtended(const TDesC &,const TPoint &,const TDrawTextExtendedParam &)
CGraphicsContext::DrawTextExtended(const TDesC &,const TTextParameters *,const TPoint &,const TDrawTextExtendedParam &)
CGraphicsContext::GetShadowColor(TRgb &)
CGraphicsContext::GetUnderlineMetrics(TInt &,TInt &)
CGraphicsContext::IsFbsBitGc()const
CGraphicsContext::JustificationInPixels(TInt &,TInt &)
CGraphicsContext::JustificationInPixels(TInt,TInt,TInt,TInt)
CGraphicsContext::Reserved()
CGraphicsContext::SetShadowColor(const TRgb &)
Public Member Enumerations
enumTGraphicsOrientation { EGraphicsOrientationNormal, EGraphicsOrientationRotated90, EGraphicsOrientationRotated180, EGraphicsOrientationRotated270 }
Inherited Enumerations
CGraphicsContext:TBrushStyle
CGraphicsContext:TDrawMode
CGraphicsContext:TDrawModeComponents
CGraphicsContext:TFillRule
CGraphicsContext:TPenStyle
CGraphicsContext:TTextAlign
Private Attributes
TInt8 iAutoUpdateJustification
CFbsBitGcBitmap iBrushBitmap
TRgb iBrushColor
TPoint iBrushOrigin
TBrushStyle iBrushStyle
TBool iBrushUsed
TInt iCharJustExcess
TInt iCharJustNum
TRect iClipRect
RRegion iClippingRegion
TRegionFix< 1 >iDefaultRegion
const TRegion *iDefaultRegionPtr
CFbsDevice *iDevice
TPoint iDitherOrigin
TInt iDotDirection
TInt iDotLength
TInt iDotMask
TInt iDotParam
TDrawMode iDrawMode
TRect iDrawnTo
TUint8 iFadeBlackMap
TUint8 iFadeWhiteMap
CFbsBitGcExtraData *iFbsBitGcExtraData
CFbsBitGcFont iFont
TPoint iLastPrintPosition
TPoint iLinePosition
TPoint iOrigin
TRgb iPenColor
TSize iPenSize
TPenStyle iPenStyle
TInt8 iShadowMode
TFontStrikethrough iStrikethrough
TFontUnderline iUnderline
TRect iUserClipRect
TDisplayMode iUserDisplayMode
TInt iWordJustExcess
TInt iWordJustNum

Constructor & Destructor Documentation

CFbsBitGc()

CFbsBitGc()[private]

~CFbsBitGc()

IMPORT_C~CFbsBitGc()[virtual]

Member Functions Documentation

APIExGetShadowColor(TAny *&)

TInt APIExGetShadowColor(TAny *&aShadowColor)[private]

Parameters

TAny *& aShadowColor

APIExGetUnderlineMetrics(TAny *&)

voidAPIExGetUnderlineMetrics(TAny *&aOutput)[private]

Parameters

TAny *& aOutput

APIExIsFbsBitGc(TAny *&)

TInt APIExIsFbsBitGc(TAny *&aIsCFbsBitGc)[private]

Parameters

TAny *& aIsCFbsBitGc

APIExSetShadowColor(TAny *)

TInt APIExSetShadowColor(TAny *aShadowColor)[private]

Parameters

TAny * aShadowColor

APIExtension(TUid, TAny *&, TAny *)

IMPORT_C TIntAPIExtension(TUidaUid,
TAny *&aOutput,
TAny *aInput
)[protected, virtual]

This function should not be used by externals but must retain the same ordinal number to maintain BC, thus is exported.

Parameters

TUid aUid
TAny *& aOutput
TAny * aInput

Activate(CFbsDevice *)

IMPORT_C voidActivate(CFbsDevice *aDevice)

Parameters

CFbsDevice * aDevice

ActivateNoJustAutoUpdate(CFbsDevice *)

IMPORT_C voidActivateNoJustAutoUpdate(CFbsDevice *aDevice)

Parameters

CFbsDevice * aDevice

AddRect(const TRect &)

voidAddRect(const TRect &aRect)[private]

Parameters

const TRect & aRect

AlphaBlendBitmaps(const TPoint &, const CFbsBitmap *, const CFbsBitmap *, const TRect &, const TPoint &, const CFbsBitmap *, const TPoint &)

IMPORT_C TIntAlphaBlendBitmaps(const TPoint &aDestPt,
const CFbsBitmap *aSrcBmp1,
const CFbsBitmap *aSrcBmp2,
const TRect &aSrcRect1,
const TPoint &aSrcPt2,
const CFbsBitmap *aAlphaBmp,
const TPoint &aAlphaPt
)

Parameters

const TPoint & aDestPt
const CFbsBitmap * aSrcBmp1
const CFbsBitmap * aSrcBmp2
const TRect & aSrcRect1
const TPoint & aSrcPt2
const CFbsBitmap * aAlphaBmp
const TPoint & aAlphaPt

AlphaBlendBitmaps(const TPoint &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, const TPoint &)

IMPORT_C TIntAlphaBlendBitmaps(const TPoint &aDestPt,
const CFbsBitmap *aSrcBmp,
const TRect &aSrcRect,
const CFbsBitmap *aAlphaBmp,
const TPoint &aAlphaPt
)[virtual]
Performs an alpha blending of the source data, aSrcBmp, with the CBitmapContext, using the data from aAlphaBmp as an alpha blending factor. The formula used is: (S * A + W * (255 - A)) / 255, where:
  • S - a pixel from aSrcBmp;

  • W - a pixel from the window;

  • A - a pixel from aAlphaBmp; The contents of source and alpha bitmap are preserved. The calculated alpha blended pixels are written to the destination CBitmapContext.

Parameters

const TPoint & aDestPtPosition in the target the result should be drawn to.
const CFbsBitmap * aSrcBmpA pointer to the source bitmap.
const TRect & aSrcRectThe part of the source bitmap that should be used.
const CFbsBitmap * aAlphaBmpA pointer to the bitmap used as an alpha blending factor.
const TPoint & aAlphaPtPosition of the first pixel in the alpha bitmap that should be used as a source for the alpha blending. The size of the area is the same as the source bitmap area - aSrcRect parameter.

AlphaBlendBitmaps(const TPoint &, const CWsBitmap *, const TRect &, const CWsBitmap *, const TPoint &)

IMPORT_C TIntAlphaBlendBitmaps(const TPoint &aDestPt,
const CWsBitmap *aSrcBmp,
const TRect &aSrcRect,
const CWsBitmap *aAlphaBmp,
const TPoint &aAlphaPt
)[virtual]

The method performs an alpha blending of the source data, aSrcBmp, with the CBitmapContext, using the data from aAlphaBmp as an alpha blending factor. For information on how this function works, see the other overload.

Parameters

const TPoint & aDestPtPosition in the target the result should be drawn to.
const CWsBitmap * aSrcBmpA pointer to the source bitmap.
const TRect & aSrcRectThe part of the source bitmap that should be used.
const CWsBitmap * aAlphaBmpA pointer to the bitmap used as an alpha blending factor.
const TPoint & aAlphaPtPosition of the first pixel in the alpha bitmap that should be used as a source for the alpha blending. The size of the area is the same as the source bitmap area - aSrcRect parameter.

AnalyseEllipse(const TRect &, TPoint &, TPoint &, TInt &, TInt &, TBool *)

TBool AnalyseEllipse(const TRect &rc,
TPoint &srad,
TPoint &erad,
TInt &startq,
TInt &endq,
TBool *quads
)[private]

Parameters

const TRect & rc
TPoint & srad
TPoint & erad
TInt & startq
TInt & endq
TBool * quads

BaselineCorrection()

TInt BaselineCorrection()[private]

BitBlt(const TPoint &, const CFbsBitGc &)

IMPORT_C voidBitBlt(const TPoint &aPoint,
const CFbsBitGc &aGc
)

Parameters

const TPoint & aPoint
const CFbsBitGc & aGc

BitBlt(const TPoint &, const CFbsBitGc &, const TRect &)

IMPORT_C voidBitBlt(const TPoint &aPoint,
const CFbsBitGc &aGc,
const TRect &aSourceRect
)

Parameters

const TPoint & aPoint
const CFbsBitGc & aGc
const TRect & aSourceRect

BitBlt(const TPoint &, const CFbsBitmap *)

IMPORT_C voidBitBlt(const TPoint &aPoint,
const CFbsBitmap *aBitmap
)[virtual]

Performs a bitmap block transfer.

This pure virtual function is implemented in derived classes.

Parameters

const TPoint & aPointThe destination for the top left corner of the transferred bitmap. It is relative to the top left corner of the destination bitmap, which may be the screen.
const CFbsBitmap * aBitmapA memory-resident bitmap.

BitBlt(const TPoint &, const CFbsBitmap *, const TRect &)

IMPORT_C voidBitBlt(const TPoint &aPoint,
const CFbsBitmap *aBitmap,
const TRect &aRect
)[virtual]

Performs a bitmap block transfer of a rectangular piece of a bitmap.

If the specified rectangle is larger than the bitmap then the bitmap is padded with white.

This pure virtual function is implemented in derived classes.

Parameters

const TPoint & aPointThe destination for the top left corner of the transferred bitmap. It is relative to the top left corner of the destination bitmap, which may be the screen.
const CFbsBitmap * aBitmapA memory-resident bitmap
const TRect & aRectA rectangle defining the portion of the bitmap to transfer. Its coordinates are relative to the top left corner of the source bitmap.

BitBltMasked(const TPoint &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, TBool)

IMPORT_C voidBitBltMasked(const TPoint &aPoint,
const CFbsBitmap *aBitmap,
const TRect &aSourceRect,
const CFbsBitmap *aMaskBitmap,
TBoolaInvertMask
)[virtual]

Performs a masked bitmap block transfer.

The mask bitmap can be used as either a positive or negative mask. Masked pixels are not mapped to the destination rectangle.

This function uses either a black and white (binary) mask bitmap, or if aMaskBitmap's display mode is EGray256, alpha blending is used. Use of any other mode may result in unpredictable results

With aInvertMask=EFalse, black pixels in the mask bitmap stop corresponding pixels in the source bitmap from being transferred to the destination rectangle. With aInvertMask=ETrue, white pixels in the mask bitmap stop corresponding pixels in the source bitmap from being transferred to the destination rectangle.

Note that if the mask bitmap is smaller than the source bitmap, then it is tiled across the bitmap. Note that the mask is applied before the piece of the bitmap is defined - the mask is tiled relative to the top left of the original source bitmap rather than the top left of the bitmap piece.

This pure virtual function is implemented in derived classes.

Parameters

const TPoint & aPointThe destination for the top left corner of the transferred bitmap. It is relative to the top left corner of the destination bitmap, which may be the screen.
const CFbsBitmap * aBitmapA memory-resident source bitmap.
const TRect & aSourceRectA rectangle defining the piece of the bitmap to be drawn, with co-ordinates relative to the top left corner of the bitmap.
const CFbsBitmap * aMaskBitmapA mask bitmap
TBool aInvertMaskIf EFalse, a source pixel that is masked by a black pixel is not transferred to the destination rectangle. If ETrue, then a source pixel that is masked by a white pixel is not transferred to the destination rectangle.

BitMultiply(TUint32 *, TInt, TInt)

voidBitMultiply(TUint32 *aBinaryDataPtr,
TIntaBitLength,
TIntaMultiplier
)[private]

Parameters

TUint32 * aBinaryDataPtr
TInt aBitLength
TInt aMultiplier

BrushColor()

IMPORT_C TRgbBrushColor()

CancelClipping()

IMPORT_C voidCancelClipping()

CancelClippingRect()

IMPORT_C voidCancelClippingRect()[virtual]

Cancels any clipping rectangle.

Clipping thus reverts to the full device area, the default.

SetClippingRect()

CancelClippingRegion()

IMPORT_C voidCancelClippingRegion()[virtual]

Cancels the current clipping region. CGraphicsContext::SetClippingRegion()

ChangeDevice(CFbsDevice *)

IMPORT_C voidChangeDevice(CFbsDevice *aDevice)

Parameters

CFbsDevice * aDevice

CheckDevice()

voidCheckDevice()const [private]

CheckDevice(const TRect &)

TBool CheckDevice(const TRect &aRect)const [private]

Parameters

const TRect & aRect

Clear()

IMPORT_C voidClear()[virtual]

Clears the whole bitmap.

The cleared area is filled with the current brush colour.

This pure virtual function is implemented in derived classes.

Clear(const TRect &)

IMPORT_C voidClear(const TRect &aRect)[virtual]

Clears a rectangular area of a bitmap.

The cleared area is filled with the current brush colour.

This pure virtual function is implemented in derived classes.

Parameters

const TRect & aRectThe rectangle to clear.

ClipBinaryArray(TUint32 *, TUint32 *, TInt, TInt &, TInt &, TPoint &)

TUint32 *ClipBinaryArray(TUint32 *aArray,
TUint32 *aArrayLimit,
TIntaArrayWordWd,
TInt &aDataWd,
TInt &aDataHt,
TPoint &aPos
)[private]

Parameters

TUint32 * aArray
TUint32 * aArrayLimit
TInt aArrayWordWd
TInt & aDataWd
TInt & aDataHt
TPoint & aPos

ClipFillLine(TPoint, TPoint)

voidClipFillLine(TPoint,
TPoint
)[private]

Parameters

TPoint
TPoint

CopyCharLine(TUint32 *, TInt, const TUint8 *, TInt, TInt)

voidCopyCharLine(TUint32 *aBinaryDataPtr,
TIntaBufferWords,
const TUint8 *aData,
TIntaBitShift,
TIntaCharWidth
)[private]

Parameters

TUint32 * aBinaryDataPtr
TInt aBufferWords
const TUint8 * aData
TInt aBitShift
TInt aCharWidth

CopyCharWord(TUint32 *, const TUint8 *, TInt)

voidCopyCharWord(TUint32 *aBinaryDataPtr,
const TUint8 *aData,
TIntaBitShift
)[private]

Parameters

TUint32 * aBinaryDataPtr
const TUint8 * aData
TInt aBitShift

CopyRect(const TPoint &, const TRect &)

IMPORT_C voidCopyRect(const TPoint &aOffset,
const TRect &aRect
)[virtual]

Copies a rectangle.

This pure virtual function is implemented in derived classes.

Parameters

const TPoint & aOffsetThe offset from the top left corner of the rectangle to be copied to the top left corner of the copy.
const TRect & aRectThe rectangular area to be copied.

CopySettings(const CFbsBitGc &)

IMPORT_C voidCopySettings(const CFbsBitGc &aGc)

Parameters

const CFbsBitGc & aGc

Device()

IMPORT_C CGraphicsDevice *Device()const [virtual]

Gets a pointer to the graphics context's graphics device.

A pointer to the graphics device.

DiscardBrushPattern()

IMPORT_C voidDiscardBrushPattern()[virtual]

Discards a non-built-in brush pattern.

This frees up the memory used by the bitmap, if it is not being shared by another process.

Notes:

The brush is used for filling shapes and the background of text boxes. The brush has colour, style, pattern and pattern origin parameters.

If DiscardBrushPattern() is used, with no brush pattern set, then there is no effect.

DiscardFont()

IMPORT_C voidDiscardFont()[virtual]

Discards a font.

This frees up the memory used, if the font is not being shared.

The function can be called when no font is in use.

DoBitBlt(const TPoint &, CFbsDevice *, const TRect &)

voidDoBitBlt(const TPoint &aDest,
CFbsDevice *aDevice,
const TRect &aSourceRect
)[private]

Parameters

const TPoint & aDest
CFbsDevice * aDevice
const TRect & aSourceRect

DoBitBlt(const TPoint &, CBitwiseBitmap *, TUint32 *, TInt, const TRect &)

voidDoBitBlt(const TPoint &aDest,
CBitwiseBitmap *aBitmap,
TUint32 *aBase,
TIntaStride,
const TRect &aSourceRect
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aBitmap
TUint32 * aBase
TInt aStride
const TRect & aSourceRect

DoBitBltAlpha(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, const TPoint &, TInt, TBool)

voidDoBitBltAlpha(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
const TPoint &aAlphaPoint,
TIntaShadowMode,
TBoolaInvertMask
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
const TPoint & aAlphaPoint
TInt aShadowMode
TBool aInvertMask

DoBitBltAlpha(const TPoint &, const CBitwiseBitmap *, TUint32 *, const CBitwiseBitmap *, TUint32 *, const CBitwiseBitmap *, TUint32 *, const TRect &, const TPoint &, const TPoint &, TInt)

voidDoBitBltAlpha(const TPoint &aDestPt,
const CBitwiseBitmap *aSrcBmp1,
TUint32 *aSrcBmpDataAddr1,
const CBitwiseBitmap *aSrcBmp2,
TUint32 *aSrcBmpDataAddr2,
const CBitwiseBitmap *aAlphaBmp,
TUint32 *aAlphaBmpDataAddr,
const TRect &aSrcRect1,
const TPoint &aSrcPt2,
const TPoint &aAlphaPt,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDestPt
const CBitwiseBitmap * aSrcBmp1
TUint32 * aSrcBmpDataAddr1
const CBitwiseBitmap * aSrcBmp2
TUint32 * aSrcBmpDataAddr2
const CBitwiseBitmap * aAlphaBmp
TUint32 * aAlphaBmpDataAddr
const TRect & aSrcRect1
const TPoint & aSrcPt2
const TPoint & aAlphaPt
TInt aShadowMode

DoBitBltMasked(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)

voidDoBitBltMasked(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin
TInt aShadowMode

DoBitBltMaskedFlicker(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)

voidDoBitBltMaskedFlicker(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin
TInt aShadowMode

DoBitBltMaskedNonFlicker(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)

voidDoBitBltMaskedNonFlicker(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin
TInt aShadowMode

DoBitBltMaskedNonFlickerPatterned(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)

voidDoBitBltMaskedNonFlickerPatterned(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin
TInt aShadowMode

DoBitBltMaskedNonFlickerSolid(const TPoint &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &, TInt)

voidDoBitBltMaskedNonFlickerSolid(const TPoint &aDest,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin,
TIntaShadowMode
)[private]

Parameters

const TPoint & aDest
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin
TInt aShadowMode

DoCopyRect(const TPoint &, const TRect &)

voidDoCopyRect(const TPoint &,
const TRect &
)[private]

Parameters

const TPoint &
const TRect &

DoDrawBitmap(const TRect &, CBitwiseBitmap *, TUint32 *, TInt, const TRect &, const TPoint &)

voidDoDrawBitmap(const TRect &,
CBitwiseBitmap *,
TUint32 *aBase,
TIntaStride,
const TRect &,
const TPoint &aDitherOrigin
)[private]

Parameters

const TRect &
CBitwiseBitmap *
TUint32 * aBase
TInt aStride
const TRect &
const TPoint & aDitherOrigin

DoDrawBitmapMasked(const TRect &, CBitwiseBitmap *, TUint32 *, const TRect &, CBitwiseBitmap *, TUint32 *, TBool, const TPoint &)

voidDoDrawBitmapMasked(const TRect &aDestRect,
CBitwiseBitmap *aSourceBitmap,
TUint32 *aSourceBase,
const TRect &aSourceRect,
CBitwiseBitmap *aMaskBitmap,
TUint32 *aMaskBase,
TBoolaInvertMask,
const TPoint &aDitherOrigin
)[private]

Parameters

const TRect & aDestRect
CBitwiseBitmap * aSourceBitmap
TUint32 * aSourceBase
const TRect & aSourceRect
CBitwiseBitmap * aMaskBitmap
TUint32 * aMaskBase
TBool aInvertMask
const TPoint & aDitherOrigin

DoDrawCharacter(const TPoint &, const TSize &, const TUint8 *)

voidDoDrawCharacter(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData

DoDrawCharacterAntiAliased(const TPoint &, const TSize &, const TUint8 *, const TGlyphBitmapType)

voidDoDrawCharacterAntiAliased(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
const TGlyphBitmapTypeaGlyphType
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
const TGlyphBitmapType aGlyphType

DoDrawCharacterEx(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt)

voidDoDrawCharacterEx(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaBold,
TBoolaItalic,
TIntaSemiAscent
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aBold
TBool aItalic
TInt aSemiAscent

DoDrawCharacterExLarge(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)

voidDoDrawCharacterExLarge(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaBold,
TBoolaItalic,
TIntaSemiAscent,
TIntaWidthFactor,
TIntaHeightFactor
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aBold
TBool aItalic
TInt aSemiAscent
TInt aWidthFactor
TInt aHeightFactor

DoDrawCharacterLarge(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)

voidDoDrawCharacterLarge(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaBold,
TBoolaItalic,
TIntaSemiAscent,
TIntaWidthFactor,
TIntaHeightFactor
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aBold
TBool aItalic
TInt aSemiAscent
TInt aWidthFactor
TInt aHeightFactor

DoDrawCharacterMultiplied(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt)

voidDoDrawCharacterMultiplied(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaBold,
TBoolaItalic,
TIntaSemiAscent,
TIntaWidthMultiplier,
TIntaHeightMultiplier
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aBold
TBool aItalic
TInt aSemiAscent
TInt aWidthMultiplier
TInt aHeightMultiplier

DoDrawCharacterVertical(const TPoint &, const TSize &, const TUint8 *, TBool, TBool, TInt, TInt, TInt, TBool)

voidDoDrawCharacterVertical(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaBold,
TBoolaItalic,
TIntaSemiAscent,
TIntaWidthFactor,
TIntaHeightFactor,
TBoolaUp
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aBold
TBool aItalic
TInt aSemiAscent
TInt aWidthFactor
TInt aHeightFactor
TBool aUp

DoDrawCharacterVerticalAntiAliased(const TPoint &, const TSize &, const TUint8 *, TBool, TGlyphBitmapType)

voidDoDrawCharacterVerticalAntiAliased(const TPoint &aTopLeft,
const TSize &aDataSize,
const TUint8 *aData,
TBoolaUp,
TGlyphBitmapTypeaGlyphBitmapType
)[private]

Parameters

const TPoint & aTopLeft
const TSize & aDataSize
const TUint8 * aData
TBool aUp
TGlyphBitmapType aGlyphBitmapType

DoDrawDottedWideLine(const TPoint &, const TPoint &, TBool, const TRect &)

voidDoDrawDottedWideLine(const TPoint &pt1,
const TPoint &pt2,
TBooldrawstart,
const TRect &screenrect
)[private]

Parameters

const TPoint & pt1
const TPoint & pt2
TBool drawstart
const TRect & screenrect

DoDrawLine(TPoint, TPoint, TBool)

voidDoDrawLine(TPointaStart,
TPointaEnd,
TBoolaDrawStartPoint
)[private]

Parameters

TPoint aStart
TPoint aEnd
TBool aDrawStartPoint

DoDrawSolidWideLine(const TPoint &, const TPoint &, TBool, const TRect &)

voidDoDrawSolidWideLine(const TPoint &pt1,
const TPoint &pt2,
TBooldrawstart,
const TRect &screenrect
)[private]

Parameters

const TPoint & pt1
const TPoint & pt2
TBool drawstart
const TRect & screenrect

DoDrawText(CFont::TPositionParam &, const TInt)

voidDoDrawText(CFont::TPositionParam &aParam,
const TIntaEnd
)[private]

Parameters

CFont::TPositionParam & aParam
const TInt aEnd

DoDrawTextEx(CFont::TPositionParam &, const CBitmapFont *, const TInt, const TInt)

voidDoDrawTextEx(CFont::TPositionParam &aParam,
const CBitmapFont *font,
const TIntaEnd,
const TIntaUnderlineStrikethroughOffset
)[private]

Parameters

CFont::TPositionParam & aParam
const CBitmapFont * font
const TInt aEnd
const TInt aUnderlineStrikethroughOffset

DoDrawTextLarge(CFont::TPositionParam &, const CBitmapFont *, const TInt)

voidDoDrawTextLarge(CFont::TPositionParam &aParam,
const CBitmapFont *font,
const TIntaEnd
)[private]

Parameters

CFont::TPositionParam & aParam
const CBitmapFont * font
const TInt aEnd

DoDrawTextVertical(CFont::TPositionParam &, const CBitmapFont *, TBool, const TInt)

voidDoDrawTextVertical(CFont::TPositionParam &aParam,
const CBitmapFont *font,
TBoolaUp,
const TIntaEnd
)[private]

Parameters

CFont::TPositionParam & aParam
const CBitmapFont * font
TBool aUp
const TInt aEnd

DoPlot(const TPoint &)

voidDoPlot(const TPoint &pt)[private]

Parameters

const TPoint & pt

DrawArc(const TRect &, const TPoint &, const TPoint &)

IMPORT_C voidDrawArc(const TRect &aRect,
const TPoint &aStart,
const TPoint &aEnd
)[virtual]

Draws an arc.

The arc is considered a portion of an ellipse. The ellipse is defined by the TRect argument.

The pixels at both the start point and the end point are drawn.

The arc itself is the segment of the ellipse drawn in an anti-clockwise direction from the start point to the end point.

Notes:

A rectangle is used in the construction of the ellipse of which the arc is a segment. This rectangle is passed as an argument of type TRect.

A wide line arc is drawn with the pixels distributed either side of a true ellipse, in such a way that the outer edge of the line would touch the edge of the construction rectangle. In other words, the ellipse used to construct it is slightly smaller than that for a single pixel line size.

If the specified start or end point is at the centre of the ellipse, then the line that defines the start or end of the arc defaults to one extending vertically above the centre point.

If the start and end point are the same point or are points on the same line through the ellipse centre then a complete unfilled ellipse is drawn.

DrawEllipse()

Parameters

const TRect & aRectA rectangle in which to draw the ellipse, of which the arc is a segment.
const TPoint & aStartThe point defining the start of the arc. It defines one end of a line from the geometric centre of the ellipse. The point of intersection between this line and the ellipse defines the start point of the arc.
const TPoint & aEndThe point defining the end of the arc. It defines one end of a second line from the geometric centre of the ellipse. The point of intersection between this line and the ellipse defines the end point of the arc.

DrawBitmap(const TPoint &, const CFbsBitmap *)

IMPORT_C voidDrawBitmap(const TPoint &aTopLeft,
const CFbsBitmap *aSource
)[virtual]

Draws a bitmap at the specified point.

The point specifies the top left hand corner of the bitmap. The bitmap is compressed or stretched based on its internally stored size in twips.

Notes:

This member function uses the bitmap's size in twips and does a stretch/compress blit using a linear DDA.

As this function scales the bitmap, it is unavoidably slow. Therefore, where possible, use CBitmapContext::BitBlt() instead. If the bitmap has to be scaled, consider creating another bitmap along with an CFbsBitmapDevice etc, doing DrawBitmap() once and using BitBlt() subsequently.

Note that all bitmaps are clipped to the device boundaries.

TLinearDDA

Parameters

const TPoint & aTopLeftThe point where the top left pixel of the bitmap is to be drawn
const CFbsBitmap * aSourceA source bitmap

DrawBitmap(const TRect &, const CFbsBitmap *)

IMPORT_C voidDrawBitmap(const TRect &aDestRect,
const CFbsBitmap *aSource
)[virtual]

Draws a bitmap to fit a given rectangle.

The bitmap is compressed or stretched based on its internally stored size in pixels.

Notes:

This member function uses the bitmap's size in pixels and does a stretch/compress blit using a linear DDA.

As this function scales the bitmap, it is unavoidably slow. Therefore, where possible, use CBitmapContext::BitBlt() instead. If the bitmap has to be scaled, consider creating another bitmap along with an CFbsBitmapDevice etc., doing DrawBitmap() once and using BitBlt() subsequently.

Note that all bitmaps are clipped to the device boundaries.

TLinearDDA

Parameters

const TRect & aDestRectThe rectangle within which the bitmap is to be drawn.
const CFbsBitmap * aSourceA source bitmap.

DrawBitmap(const TRect &, const CFbsBitmap *, const TRect &)

IMPORT_C voidDrawBitmap(const TRect &aDestRect,
const CFbsBitmap *aSource,
const TRect &aSourceRect
)[virtual]

Draws a specified rectangle of a source bitmap to fit into a given destination rectangle.

Notes:

This member function uses rectangle sizes in pixels and does a stretch/compress blit using a linear DDA.

As this function scales the bitmap, it is unavoidably slow. Therefore, where possible, use CBitmapContext::BitBlt() instead. If the bitmap has to be scaled, consider creating another bitmap along with an CFbsBitmapDevice etc., doing DrawBitmap() once and using BitBlt() subsequently.

Note that all bitmaps are clipped to the device boundaries.

TLinearDDA

Parameters

const TRect & aDestRectThe rectangle within which the bitmap is to be drawn.
const CFbsBitmap * aSourceA source bitmap.
const TRect & aSourceRectThe rectangle in the source bitmap that is copied to the destination rectangle.

DrawBitmapMasked(const TRect &, const CFbsBitmap *, const TRect &, const CFbsBitmap *, TBool)

IMPORT_C voidDrawBitmapMasked(const TRect &aDestRect,
const CFbsBitmap *aBitmap,
const TRect &aSourceRect,
const CFbsBitmap *aMaskBitmap,
TBoolaInvertMask
)[virtual]

Draws a specified rectangle of a source bitmap to fit into a given rectangle using a given mask.

Notes:

This member function uses rectangle sizes in pixels and does a stretch/compress blit using a linear DDA.

Parameters

const TRect & aDestRectThe rectangle within which the bitmap is to be drawn.
const CFbsBitmap * aBitmapThe source bitmap
const TRect & aSourceRectThe rectangle in the source bitmap that is to be drawn
const CFbsBitmap * aMaskBitmapThe mask to be applied to the source bitmap while drawing
TBool aInvertMaskFlag to indicate if the mask should be inverted.

DrawBitmapMasked(const TRect &, const CWsBitmap *, const TRect &, const CWsBitmap *, TBool)

IMPORT_C voidDrawBitmapMasked(const TRect &aDestRect,
const CWsBitmap *aBitmap,
const TRect &aSourceRect,
const CWsBitmap *aMaskBitmap,
TBoolaInvertMask
)[virtual]

Draws a specified rectangle from a wserv bitmap and its mask into another rectangle.

The function compresses/stretches the specified rectangle from the bitmap to fit the destination rectangle. The mask bitmap can be used as either a positive or negative mask. Masked pixels are not mapped to the destination rectangle.

A black and white (binary) mask bitmap is used. With aInvertMask=EFalse, black pixels in the mask bitmap stop corresponding pixels in the source bitmap from being transferred to the destination rectangle. With aInvertMask=ETrue, white pixels in the mask bitmap stop corresponding pixels in the source bitmap from being transferred to the destination rectangle.

Note: this member function uses rectangle sizes in pixels and does a stretch/compress blit using a linear DDA.

Parameters

const TRect & aDestRectThe rectangle within which the masked bitmap is to be drawn.
const CWsBitmap * aBitmapA source wserv bitmap.
const TRect & aSourceRectThe rectangle in the source bitmap that is copied to the destination rectangle.
const CWsBitmap * aMaskBitmapA mask wserv bitmap.
TBool aInvertMaskIf false, a source pixel that is masked by a black pixel is not transferred to the destination rectangle. If true, then a source pixel that is masked by a white pixel is not transferred to the destination rectangle.

DrawEllipse(const TRect &)

IMPORT_C voidDrawEllipse(const TRect &aRect)[virtual]

Draws and fills an ellipse.

The ellipse is drawn inside the rectangle defined by the TRect argument. Any rectangle that has odd pixel dimensions, has the bottom right corner trimmed to give even pixel dimensions before the ellipse is constructed.

Note:

A wide outline ellipse is drawn with the pixels distributed either side of a true ellipse, in such a way that the outer edge of the line touches the edge of the construction rectangle. In other words, the ellipse used to construct it is smaller than that for a single pixel line size.

Parameters

const TRect & aRectThe rectangle in which the ellipse is drawn.

DrawLine(const TPoint &, const TPoint &)

IMPORT_C voidDrawLine(const TPoint &aPoint1,
const TPoint &aPoint2
)[virtual]

Draws a straight line between two points.

Parameters

const TPoint & aPoint1The point at the start of the line.
const TPoint & aPoint2The point at the end of the line.

DrawLineBy(const TPoint &)

IMPORT_C voidDrawLineBy(const TPoint &aVector)[virtual]

Draws a straight line relative to the current drawing point, using a vector.

The start point of the line is the current drawing point. The specified vector is added to the drawing point to give the end point of the line

MoveTo()

MoveBy()

Parameters

const TPoint & aVectorThe vector to add to the current internal drawing position, giving the end point of the line.

DrawLineTo(const TPoint &)

IMPORT_C voidDrawLineTo(const TPoint &aPoint)[virtual]

Draws a straight line from the current drawing point to a specified point.

MoveTo()

MoveBy()

Parameters

const TPoint & aPointThe point at the end of the line.

DrawPie(const TRect &, const TPoint &, const TPoint &)

IMPORT_C voidDrawPie(const TRect &aRect,
const TPoint &aStart,
const TPoint &aEnd
)[virtual]

Draws and fills a pie slice.

The pie slice is an area bounded by:

the arc of an ellipse drawn in an anticlockwise direction from the start point to the end point

the straight line drawn to the start point from the geometric centre of the ellipse.

the straight line to the end point from the geometric centre of the ellipse.

Notes:

A rectangle is used in the construction of the pie slice. This rectangle is passed as an argument of type TRect. The curved edge of the pie slice is an arc of an ellipse constructed within the rectangle.

The line drawn by the pen goes inside the specified rectangle.

The pixels at the end point of the arc are not drawn.

A wide line edged pie slice has the arc drawn with the pixels distributed either side of a true ellipse. This is done in such a way that the outer edge of the line touches the edge of the construction rectangle. In other words, the ellipse used to construct it is slightly smaller than that for a single pixel line size.

If the specified start or end point is at the centre of the ellipse, then the line that defines the start or end of the arc defaults to one extending vertically above the centre point.

If the start and end point are the same point or are points on the same line through the ellipse centre then a complete filled ellipse is drawn. A line is also drawn from the edge to the ellipse centre.

Parameters

const TRect & aRectA rectangle in which to draw the ellipse bounding the pie slice.
const TPoint & aStartA point defining the start of the arc bounding the pie slice. It defines one end of a line from the geometrical centre of the ellipse. The point of intersection between this line and the ellipse defines the start point of the arc.
const TPoint & aEndA point to define the end of the arc bounding the pie slice. It defines one end of a second line from the geometrical centre of the ellipse. The point of intersection between this line and the ellipse defines the end point of the arc.

DrawPolyLine(const CArrayFix< TPoint > *)

IMPORT_C voidDrawPolyLine(const CArrayFix< TPoint > *aPointList)[virtual]

Draws a polyline from a set of points in an array.

A polyline is a series of concatenated straight lines joining a set of points.

Parameters

const CArrayFix< TPoint > * aPointListAn array containing the points on the polyline.

DrawPolyLine(const TPoint *, TInt)

IMPORT_C voidDrawPolyLine(const TPoint *aPointList,
TIntaNumPoints
)[virtual]

Draws a polyline from a set of points in a list.

A polyline is a series of concatenated straight lines joining a set of points.

Parameters

const TPoint * aPointListPointer to a set of points on the polyline.
TInt aNumPointsNumber of points in the list.

DrawPolyLineNoEndPoint(const CArrayFix< TPoint > *)

IMPORT_C voidDrawPolyLineNoEndPoint(const CArrayFix< TPoint > *aPointList)

Parameters

const CArrayFix< TPoint > * aPointList

DrawPolyLineNoEndPoint(const TPoint *, TInt)

IMPORT_C voidDrawPolyLineNoEndPoint(const TPoint *aPointList,
TIntaNumPoints
)

Parameters

const TPoint * aPointList
TInt aNumPoints

DrawPolygon(const CArrayFix< TPoint > *, CGraphicsContext::TFillRule)

IMPORT_C TIntDrawPolygon(const CArrayFix< TPoint > *aPointList,
CGraphicsContext::TFillRuleaFillRule = CGraphicsContext::EAlternate
)[virtual]

Draws and fills a polygon defined using an array of points.

The first point in the array defines the start of the first side of the polygon. The second point defines the second vertex (the end point of the first side and the start point of the second side).

The final side of the polygon is drawn using the last point from the array, and the line is drawn to the start point of the first side.

Self-crossing polygons are filled according to the specified fill rule.

KErrNone, if successful; otherwise, another of the system-wide error codes.

Parameters

const CArrayFix< TPoint > * aPointListAn array of points, specifying the vertices of the polygon.
CGraphicsContext::TFillRule aFillRule = CGraphicsContext::EAlternateThe fill rule. By default, this is TFillRule::EAlternate.

DrawPolygon(const TPoint *, TInt, CGraphicsContext::TFillRule)

IMPORT_C TIntDrawPolygon(const TPoint *aPointList,
TIntaNumPoints,
CGraphicsContext::TFillRuleaFillRule = CGraphicsContext::EAlternate
)[virtual]

Draws and fills a polygon defined using a list of points.

The first point in the list defines the start of the first side of the polygon. The second point defines the second vertex (the end point of the first side and the start point of the second side).

The final side of the polygon is drawn using the last point from the list, and the line is drawn to the start point of the first side.

Self-crossing polygons are filled according to the specified fill rule.

KErrNone, if successful; otherwise, another of the system-wide error codes.

Parameters

const TPoint * aPointListPointer to list of points, specifying the vertices of the polygon.
TInt aNumPointsThe number of points in the list.
CGraphicsContext::TFillRule aFillRule = CGraphicsContext::EAlternateThe fill rule. By default this is TFillRule::EAlternate.

DrawRect(const TRect &)

IMPORT_C voidDrawRect(const TRect &aRect)[virtual]

Draws and fills a rectangle.

Parameters

const TRect & aRectThe rectangle to be drawn.

DrawRoundRect(const TRect &, const TSize &)

IMPORT_C voidDrawRoundRect(const TRect &aRect,
const TSize &aCornerSize
)[virtual]

Draws and fills a rectangle with rounded corners.

The rounded corners are each constructed as an arc of an ellipse.

The line drawn by the pen, if any, goes inside the specified rectangle.

Notes:

Dotted and dashed pen styles cannot be used for the outline of a rounded rectangle.

If either corner size dimension is greater than half the corresponding rectangle length, the corner size dimension is reduced to half the rectangle size.

DrawArc()

Parameters

const TRect & aRectThe rectangle to be drawn.
const TSize & aCornerSizeThe dimensions of each corner.

DrawText(const TDesC &)

IMPORT_C voidDrawText(const TDesC &aText)

Parameters

const TDesC & aText

DrawText(const TDesC &, const TPoint &)

IMPORT_C voidDrawText(const TDesC &aText,
const TPoint &aPosition
)[virtual]

Draws text without a surrounding box.

The text baseline is aligned with the y co-ordinate of the specified point, and the left end of the text is aligned with the x co-ordinate of the specified point.

Note:

Text drawing is done with the pen, and is subject to the pen colour. The effective text colour also depends on the drawing mode. The size and style of the text depends on the font used. The layout of the text depends on the justification mode set.

Parameters

const TDesC & aTextThe text string to be drawn.
const TPoint & aPositionA point specifying the position of the left end of the text.

DrawText(const TDesC &, const TRect &)

IMPORT_C voidDrawText(const TDesC &aText,
const TRect &aBox
)

Parameters

const TDesC & aText
const TRect & aBox

DrawText(const TDesC &, const TRect &, TInt, TTextAlign, TInt)

IMPORT_C voidDrawText(const TDesC &aText,
const TRect &aBox,
TIntaBaselineOffset,
TTextAlignaAlignment = ELeft,
TIntaLeftMargin = 0
)[virtual]

Draws text inside a box.

The surrounding box is filled with the current brush colour (not a pattern) and is drawn without any outline. The effective box colour depends on the drawing mode - if a brush colour has not been set then the brush defaults to white. The brush may be set to TBrushStyle::ENullBrush if text positioning relative to a box is required, but the box should not be filled.

The font used is that set by UseFont(). If no font is in use then a panic occurs.

The alignment of the text within the box can be specified.

Text drawn within a box is also clipped to that box. Unless you intend to clip the top off the text, aBaselineOffset should be greater than or equal to the ascent of the current font.

Offsets:

If the offset is negative, zero, or less than font height this is handled as would be expected, i.e. no text will be seen in the box in the first two instances, and the top of the text will be clipped in the latter case.

Margins:

For the drawing of right-aligned text, aLeftMargin indicates the margin from the right of aBox - where a positive value results in a leftwards offset.

Negative margins can be used to display portions of the text string clipped by the box. A negative margin for left aligned text would clip the start of the text string. Similarly, a negative margin for right aligned text would clip the end of the text string.

If the margin is greater than the width of the box then no text will be visible.

The margin is still honoured for centred text - centred text will not be centred in the box, unless the margin is zero.

Note:

Text drawing is done with the pen, and is thus subject to the pen colour. The effective text colour also depends on the drawing mode. The size and style of the text depends on the used font. The layout of the text depends on the justification mode set.

Parameters

const TDesC & aTextThe text string to be drawn.
const TRect & aBoxThe box to draw the text in.
TInt aBaselineOffsetAn offset from the top of the box to the text baseline.
TTextAlign aAlignment = ELeftThe text alignment mode default is left aligned.
TInt aLeftMargin = 0The left margin for left-aligned text, or the right margin for right-aligned text default is zero.

DrawText(const TDesC &, const TRect &, TInt, TInt, TTextAlign, TInt)

IMPORT_C voidDrawText(const TDesC &aText,
const TRect &aBox,
TIntaBaselineOffset,
TIntaTextWidth,
TTextAlignaHrz = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TRect & aBox
TInt aBaselineOffset
TInt aTextWidth
TTextAlign aHrz = ELeft
TInt aMargin = 0

DrawText(const TDesC &, const TTextParameters *)

IMPORT_C voidDrawText(const TDesC &aText,
const TTextParameters *aParam
)

Parameters

const TDesC & aText
const TTextParameters * aParam

DrawText(const TDesC &, const TTextParameters *, const TPoint &)

IMPORT_C voidDrawText(const TDesC &aText,
const TTextParameters *aParam,
const TPoint &aPosition
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TPoint & aPosition

DrawText(const TDesC &, const TTextParameters *, const TRect &)

IMPORT_C voidDrawText(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox

DrawText(const TDesC &, const TTextParameters *, const TRect &, TInt, TTextAlign, TInt)

IMPORT_C voidDrawText(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox,
TIntaBaselineOffset,
TTextAlignaHrz = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox
TInt aBaselineOffset
TTextAlign aHrz = ELeft
TInt aMargin = 0

DrawText(const TDesC &, const TTextParameters *, const TRect &, TInt, TInt, TTextAlign, TInt)

IMPORT_C voidDrawText(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox,
TIntaBaselineOffset,
TIntaTextWidth,
TTextAlignaHrz = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox
TInt aBaselineOffset
TInt aTextWidth
TTextAlign aHrz = ELeft
TInt aMargin = 0

DrawText(const TDesC &, const TTextParameters *, const TPoint &, TTextAlign, CFont::TTextDirection, const TRect *)

voidDrawText(const TDesC &aText,
const TTextParameters *aParam,
const TPoint &aPosition,
TTextAlignaAlignment,
CFont::TTextDirectionaDirection,
const TRect *aBox = NULL
)[private]

Parameters

const TDesC & aText
const TTextParameters * aParam
const TPoint & aPosition
TTextAlign aAlignment
CFont::TTextDirection aDirection
const TRect * aBox = NULL

DrawTextVertical(const TDesC &, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
TBoolaUp
)

Parameters

const TDesC & aText
TBool aUp

DrawTextVertical(const TDesC &, const TPoint &, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TPoint &aPos,
TBoolaUp
)[virtual]

Draws vertical text in the specified direction.

Parameters

const TDesC & aTextThe text to be drawn.
const TPoint & aPosPoint of origin of the text baseline.
TBool aUpDirection. ETrue for up, EFalse for down.

DrawTextVertical(const TDesC &, const TRect &, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TRect &aBox,
TBoolaUp
)

Parameters

const TDesC & aText
const TRect & aBox
TBool aUp

DrawTextVertical(const TDesC &, const TRect &, TInt, TBool, TTextAlign, TInt)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TRect &aBox,
TIntaBaselineOffset,
TBoolaUp,
TTextAlignaVert = ELeft,
TIntaMargin = 0
)[virtual]

Draws text vertically in the specified direction, within a box of the specified size.

Parameters

const TDesC & aTextThe text to be drawn.
const TRect & aBoxThe bounding box within which the text should be drawn, and which it is clipped to.
TInt aBaselineOffsetThe height of the top of the characters from their text baseline.
TBool aUpThe direction. ETrue for up, EFalse for down.
TTextAlign aVert = ELeftThe text alignment.
TInt aMargin = 0The margin.

DrawTextVertical(const TDesC &, const TRect &, TInt, TInt, TBool, TTextAlign, TInt)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TRect &aBox,
TIntaBaselineOffset,
TIntaTextWidth,
TBoolaUp,
TTextAlignaVert = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TRect & aBox
TInt aBaselineOffset
TInt aTextWidth
TBool aUp
TTextAlign aVert = ELeft
TInt aMargin = 0

DrawTextVertical(const TDesC &, const TTextParameters *, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TTextParameters *aParam,
TBoolaUp
)

Parameters

const TDesC & aText
const TTextParameters * aParam
TBool aUp

DrawTextVertical(const TDesC &, const TTextParameters *, const TPoint &, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TTextParameters *aParam,
const TPoint &aPosition,
TBoolaUp
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TPoint & aPosition
TBool aUp

DrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TBool)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox,
TBoolaUp
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox
TBool aUp

DrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TInt, TBool, TTextAlign, TInt)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox,
TIntaBaselineOffset,
TBoolaUp,
TTextAlignaVert = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox
TInt aBaselineOffset
TBool aUp
TTextAlign aVert = ELeft
TInt aMargin = 0

DrawTextVertical(const TDesC &, const TTextParameters *, const TRect &, TInt, TInt, TBool, TTextAlign, TInt)

IMPORT_C voidDrawTextVertical(const TDesC &aText,
const TTextParameters *aParam,
const TRect &aBox,
TIntaBaselineOffset,
TIntaTextWidth,
TBoolaUp,
TTextAlignaVert = ELeft,
TIntaMargin = 0
)

Parameters

const TDesC & aText
const TTextParameters * aParam
const TRect & aBox
TInt aBaselineOffset
TInt aTextWidth
TBool aUp
TTextAlign aVert = ELeft
TInt aMargin = 0

EllipseFill(const TRect &)

voidEllipseFill(const TRect &aRect)[private]

Parameters

const TRect & aRect

EllipseOutline(const TRect &)

voidEllipseOutline(const TRect &aRect)[private]

Parameters

const TRect & aRect

EllipseOutlineWide(const TRect &)

voidEllipseOutlineWide(const TRect &aRect)[private]

Parameters

const TRect & aRect

ExternalizeL(RWriteStream &)

IMPORT_C voidExternalizeL(RWriteStream &aWriteStream)

Parameters

RWriteStream & aWriteStream

FadeArea(const TRegion *)

IMPORT_C voidFadeArea(const TRegion *aRegion)

Parameters

const TRegion * aRegion

FastBlendInterface(const CBitwiseBitmap *, const CBitwiseBitmap *, MFastBlend *&)

TInt FastBlendInterface(const CBitwiseBitmap *aSource,
const CBitwiseBitmap *aMask,
MFastBlend *&aFastBlend
)const [private]

Parameters

const CBitwiseBitmap * aSource
const CBitwiseBitmap * aMask
MFastBlend *& aFastBlend

GetScanLineOffsetPtr(CBitwiseBitmap *, TUint32 *&, TInt, TPoint, TUint32 *, TLineScanningPosition &, TUint)

TUint32 *GetScanLineOffsetPtr(CBitwiseBitmap *aSrce,
TUint32 *&aSlptr,
TIntaLength,
TPointaPixel,
TUint32 *aBase,
TLineScanningPosition &aLineScanningPosition,
TUintaXOffset
)[private]

Parameters

CBitwiseBitmap * aSrce
TUint32 *& aSlptr
TInt aLength
TPoint aPixel
TUint32 * aBase
TLineScanningPosition & aLineScanningPosition
TUint aXOffset

GetStrikethroughMetrics(TInt &, TInt &)

voidGetStrikethroughMetrics(TInt &aTop,
TInt &aBottom
)[private]

Parameters

TInt & aTop
TInt & aBottom

GraphicsAccelerator()

CGraphicsAccelerator *GraphicsAccelerator()[private]

InternalizeL(RReadStream &)

IMPORT_C voidInternalizeL(RReadStream &aReadStream)

Parameters

RReadStream & aReadStream

IsBrushPatternUsed()

IMPORT_C TBoolIsBrushPatternUsed()const

IsFontUsed()

IMPORT_C TBoolIsFontUsed()const

Load16(const TUint8 *)

TInt16 Load16(const TUint8 *aPtr)[static, inline]

Parameters

const TUint8 * aPtr

MapColors(const TRect &, const TRgb *, TInt, TBool)

IMPORT_C voidMapColors(const TRect &aRect,
const TRgb *aColors,
TIntaNumPairs = 2,
TBoolaMapForwards = ETrue
)[virtual]

Maps pixels in the specified rectangle. The function tries to match the colour of a pixel with one of the RGB values in an array of RGB pairs. If there is a match, the colour is changed to the value specified in the other RGB in the RGB pair.

Parameters

const TRect & aRectThe rectangle in which pixels are to be mapped.
const TRgb * aColorsA pointer to a set of RGB pairs.
TInt aNumPairs = 2The number of pairs
TBool aMapForwards = ETrueETrue, mapping is done from the first RGB to the second RGB in the pair; EFalse, mapping is done from the second RGB to the first RGB in the pair.

MemoryOffsetForPixelPitch(TUint, TDisplayMode)

TUint MemoryOffsetForPixelPitch(TUintaX,
TDisplayModeaDisplayMode
)[private]

Parameters

TUint aX
TDisplayMode aDisplayMode

MoveBy(const TPoint &)

IMPORT_C voidMoveBy(const TPoint &aVector)[virtual]

Sets the drawing point relative to the current co-ordinates.

A subsequent call to DrawLineTo() or DrawLineBy() uses the new drawing point as the start point for the line drawn.

Notes

The operations DrawLine(), DrawLineTo(), DrawLineBy() and DrawPolyline() also change the internal drawing position to the last point of the drawn line(s).

The internal drawing position is set to the co-ordinate origin if no drawing or moving operations have yet taken place.

Parameters

const TPoint & aVectorThe amount by which the internal drawing position is to move.

MoveTo(const TPoint &)

IMPORT_C voidMoveTo(const TPoint &aPoint)[virtual]

Sets the drawing point relative to the co-ordinate origin.

A subsequent call to DrawLineTo() or DrawLineBy() uses the new drawing point as the start point for the line drawn.

Notes

The operations DrawLine(), DrawLineTo(), DrawLineBy() and DrawPolyline() also change the internal drawing position to the last point of the drawn line(s).

The internal drawing position is set to the co-ordinate origin if no drawing or moving operations have yet taken place.

Parameters

const TPoint & aPointThe new internal drawing position.

NewL()

IMPORT_C CFbsBitGc *NewL()[static]

OrientationsAvailable(TBool)

IMPORT_C voidOrientationsAvailable(TBoolaOrientation)

Parameters

TBool aOrientation

OutputCharLine(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt)

voidOutputCharLine(TPointaPrintPos,
TUint32 *aBuffer,
TIntaDataLength,
TIntaNum,
TBoolaBold,
TIntaWidthFactor,
TIntaHeightFactor
)[private]

Parameters

TPoint aPrintPos
TUint32 * aBuffer
TInt aDataLength
TInt aNum
TBool aBold
TInt aWidthFactor
TInt aHeightFactor

OutputCharLineMultiplied(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt)

voidOutputCharLineMultiplied(TPointaPrintPos,
TUint32 *aBuffer,
TIntaDataLength,
TIntaNum,
TBoolaBold,
TIntaWidthMultiplier,
TIntaHeightMultiplier
)[private]

Parameters

TPoint aPrintPos
TUint32 * aBuffer
TInt aDataLength
TInt aNum
TBool aBold
TInt aWidthMultiplier
TInt aHeightMultiplier

OutputCharLineVertical(TPoint, TUint32 *, TInt, TInt, TBool, TInt, TInt, TBool)

voidOutputCharLineVertical(TPointaPrintPos,
TUint32 *aBuffer,
TIntaDataLength,
TIntaNum,
TBoolaBold,
TIntaWidthFactor,
TIntaHeightFactor,
TBoolaUp
)[private]

Parameters

TPoint aPrintPos
TUint32 * aBuffer
TInt aDataLength
TInt aNum
TBool aBold
TInt aWidthFactor
TInt aHeightFactor
TBool aUp

PenAllocate()

voidPenAllocate()[private]

PenColor()

IMPORT_C TRgbPenColor()

PenDrawClipped(TPoint)

voidPenDrawClipped(TPointaPoint)[private]

Parameters

TPoint aPoint

PenDrawDeferred(TPoint, TInt *, TInt)

voidPenDrawDeferred(TPointaPoint,
TInt *aArray,
TIntaFirstElement
)[private]

Parameters

TPoint aPoint
TInt * aArray
TInt aFirstElement

PieArcOutline(const TRect &, const TPoint &, const TPoint &, TBool)

voidPieArcOutline(const TRect &aRect,
const TPoint &aStartRadius,
const TPoint &aEndRadius,
TBoolaDoPie
)[private]

Parameters

const TRect & aRect
const TPoint & aStartRadius
const TPoint & aEndRadius
TBool aDoPie

PieFill(const TRect &, const TPoint &, const TPoint &, TInt, TInt, const TBool *)

voidPieFill(const TRect &ellrect,
const TPoint &aStartIntersect,
const TPoint &aEndIntersect,
TIntaStartQuadrant,
TIntaEndQuadrant,
const TBool *aQuadrants
)[private]

Parameters

const TRect & ellrect
const TPoint & aStartIntersect
const TPoint & aEndIntersect
TInt aStartQuadrant
TInt aEndQuadrant
const TBool * aQuadrants

PieShell(const TRect &, const TPoint &, const TPoint &, const TBool *, TInt, TInt)

voidPieShell(const TRect &ellrect,
const TPoint &startradius,
const TPoint &endradius,
const TBool *quads,
TIntstartquad,
TIntendquad
)[private]

Parameters

const TRect & ellrect
const TPoint & startradius
const TPoint & endradius
const TBool * quads
TInt startquad
TInt endquad

PieSliver(const TRect &, const TPoint &, const TPoint &, TInt)

voidPieSliver(const TRect &ellrect,
const TPoint &startradius,
const TPoint &endradius,
TIntquad
)[private]

Parameters

const TRect & ellrect
const TPoint & startradius
const TPoint & endradius
TInt quad

PieTriangles(TBool, const TPoint &, const TPoint &)

voidPieTriangles(TBoolaInside,
const TPoint &aStart,
const TPoint &aEnd
)[private]

Parameters

TBool aInside
const TPoint & aStart
const TPoint & aEnd

Plot(const TPoint &)

IMPORT_C voidPlot(const TPoint &aPoint)[virtual]

Draws a single point. The point is drawn with the current pen settings using the current drawing mode.

Note:

If the pen size is greater than one pixel, a filled circle of the current pen colour is drawn, with the pen size as the diameter and the plotted point as the centre. If the pen size is an even number of pixels, the extra pixels are drawn below and to the right of the centre.

SetPenSize()

Parameters

const TPoint & aPointThe point to be drawn.

PolyFill(const CArrayFix< TPoint > *, TFillRule)

voidPolyFill(const CArrayFix< TPoint > *aPointList,
TFillRuleaFillRule
)[private]

Parameters

const CArrayFix< TPoint > * aPointList
TFillRule aFillRule

PolyFill(const TPoint *, TInt, TFillRule)

voidPolyFill(const TPoint *aPointList,
TIntaNumPoints,
TFillRuleaFillRule
)[private]

Parameters

const TPoint * aPointList
TInt aNumPoints
TFillRule aFillRule

PolyFillLarge(const CArrayFix< TPoint > *, TFillRule)

voidPolyFillLarge(const CArrayFix< TPoint > *aPointList,
TFillRuleaFillRule
)[private]

Parameters

const CArrayFix< TPoint > * aPointList
TFillRule aFillRule

PolyFillLarge(const TPoint *, TInt, TFillRule)

voidPolyFillLarge(const TPoint *aPointList,
TIntaNumPoints,
TFillRuleaFillRule
)[private]

Parameters

const TPoint * aPointList
TInt aNumPoints
TFillRule aFillRule

PolyOutline(const CArrayFix< TPoint > *)

voidPolyOutline(const CArrayFix< TPoint > *aPointList)[private]

Parameters

const CArrayFix< TPoint > * aPointList

PolyOutline(const TPoint *, TInt)

voidPolyOutline(const TPoint *aPointList,
TIntaNumPoints
)[private]

Parameters

const TPoint * aPointList
TInt aNumPoints

PrepareRasterizerForExtendedBitmap(const CFbsBitmap &)

CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &aBitmap)[private]

Parameters

const CFbsBitmap & aBitmap

PrepareRasterizerForExtendedBitmap(const CFbsBitmap &, const TRect &, const TPoint &)

CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &aBitmap,
const TRect &aDestRect,
const TPoint &aOffset
)[private]

Parameters

const CFbsBitmap & aBitmap
const TRect & aDestRect
const TPoint & aOffset

PrepareRasterizerForExtendedBitmap(const CFbsBitmap &, const TRect &, const TRect &)

CFbsRasterizer *PrepareRasterizerForExtendedBitmap(const CFbsBitmap &aBitmap,
const TRect &aDestRect,
const TRect &aSourceRect
)[private]

Parameters

const CFbsBitmap & aBitmap
const TRect & aDestRect
const TRect & aSourceRect

RectDrawnTo(TRect &)

IMPORT_C voidRectDrawnTo(TRect &aRect)

Parameters

TRect & aRect

RectFill(const TRect &)

voidRectFill(const TRect &aRect)[private]

Parameters

const TRect & aRect

Reserved_CBitmapContext_1()

IMPORT_C voidReserved_CBitmapContext_1()[private, virtual]

Reserved_CBitmapContext_2()

IMPORT_C voidReserved_CBitmapContext_2()[private, virtual]

Reserved_CBitmapContext_3()

IMPORT_C voidReserved_CBitmapContext_3()[private, virtual]

Reserved_CFbsBitGc_1()

IMPORT_C voidReserved_CFbsBitGc_1()[private, virtual]

Reserved_CFbsBitGc_2()

IMPORT_C voidReserved_CFbsBitGc_2()[private, virtual]

Reserved_CFbsBitGc_3()

IMPORT_C voidReserved_CFbsBitGc_3()[private, virtual]

Reserved_CFbsBitGc_4()

IMPORT_C voidReserved_CFbsBitGc_4()[private, virtual]

Reserved_CFbsBitGc_5()

IMPORT_C voidReserved_CFbsBitGc_5()[private, virtual]

Reserved_CGraphicsContext_2()

IMPORT_C voidReserved_CGraphicsContext_2()[private, virtual]

A reserved virtual function for future use.

Reset()

IMPORT_C voidReset()[virtual]

Resets the graphics context to its default settings:

the drawing mode is TDrawMode::EDrawModePen (pen and brush colours used as they are)

there is no clipping rectangle

the pen settings are: black, solid, single pixel size

the brush style is null

no text font is selected

Resized()

IMPORT_C voidResized()

RoundRectFill(const TRect &, TSize)

voidRoundRectFill(const TRect &aRect,
TSizeaSize
)[private]

Parameters

const TRect & aRect
TSize aSize

RoundRectOutline(const TRect &, TSize)

voidRoundRectOutline(const TRect &aRect,
TSizeaSize
)[private]

Parameters

const TRect & aRect
TSize aSize

ScanLineBufferDisplayMode(CFbsDrawDevice *)

TDisplayMode ScanLineBufferDisplayMode(CFbsDrawDevice *aDrawDevice)[private]

Parameters

CFbsDrawDevice * aDrawDevice

SetBrushColor(const TRgb &)

IMPORT_C voidSetBrushColor(const TRgb &aColor)[virtual]

Sets the brush colour.

The effective brush colour depends on the drawing mode.

Notes:

The brush is used for filling shapes and the background of text boxes. The brush has colour, style, pattern and pattern origin parameters.

If no brush colour has been set, it defaults to white. However the default brush style is null, so when drawing to a window the default appears to be the window's background colour.

SetDrawMode()

Parameters

const TRgb & aColorAn RGB colour for the brush.

SetBrushOrigin(const TPoint &)

IMPORT_C voidSetBrushOrigin(const TPoint &aOrigin)[virtual]

Sets the brush pattern origin.

This specifies the top left-hand corner position for the pattern tile around which copies of the pattern are tiled.

The brush pattern may be a built-in style, or a bitmap. To use a bitmap, the brush must have a pattern set and the brush style must be set to TBrushStyle::EPatternedBrush.

Notes

The brush is used for filling shapes and the background of text boxes. The brush has colour, style, pattern and pattern origin parameters.

If SetBrushOrigin() is not used, then the origin defaults to (0,0).

This brush origin remains in effect for all fillable shapes drawn subsequently, until a new brush origin is set. Shapes can thus be considered as windows onto a continuous pattern field (covering the whole clipping region of a screen device, or the whole device area of a printer).

SetBrushStyle()

UseBrushPattern()

Parameters

const TPoint & aOriginAn origin point for the brush. The coordinates are relative to the rectangle to fill, i.e. specify 0,0 to align the pattern flush with the top and left hand sides of the rectangle.

SetBrushStyle(TBrushStyle)

IMPORT_C voidSetBrushStyle(TBrushStyleaBrushStyle)[virtual]

Sets the brush style.

Ten brush styles are provided, including six built-in hatching patterns. Note: The brush is used for filling shapes and the background of text boxes. The brush has colour, style, pattern and pattern origin parameters. Note: Use TBrushStyle::ENullBrush to draw the outline of a fillable shape on its own, without filling. Note: If the TBrushStyle::EPatternedBrush style is set, but no bitmap pattern has been selected using UseBrushPattern(), then the function panics. Note: Hatching lines are done in the current pen colour, set using SetPenColor(). The hatching pattern starts at the brush origin, set using SetBrushOrigin(). TBrushStyle::ENullBrush

TBrushStyle::EPatternedBrush

UseBrushPattern()

SetPenColor()

SetBrushOrigin()

Parameters

TBrushStyle aBrushStyleA brush style.

SetCharJustification(TInt, TInt)

IMPORT_C voidSetCharJustification(TIntaExcessWidth,
TIntaNumChars
)[virtual]

Sets character justification.

This function is required by the Text Views API, and is not intended for regular use by developers.

It affects the strings of text used in the calls to DrawText() that follow, until the number of characters drawn equals aNumChars.

The text line that is to be justified has a certain number of characters this includes the spaces between the words. It also has a distance (in pixels) between the end of the last word and the actual end of the line (right hand margin, usually). These excess width pixels are distributed amongst all the characters, increasing the gaps between them, to achieve full justification of the text line.

Use CFont::TextCount() to return the excess width.

Notes:

This function is provided to allow simulation of printer fonts on screen. Due to the fact that fully-scalable fonts are not used before v5, large printer fonts can be simulated by using the nearest smaller font and widening it slightly.

If the excess width is zero, then calling SetCharJustification() has no effect.

SetCharJustification() is required for WYSIWYG where the layout uses printer font metrics but screen fonts have to be drawn on the screen. Because continuously scalable typefaces (c.f. TrueType) are not used before v5 and because screen fonts are coarser and less numerous in their variety than the printer fonts, the best matching smaller screen font must be used with character justification to simulate the printer font on the screen.

There is also a situation where the gaps between characters on screen have to be reduced with character clipping. The screen font that best matches the printer font may have the required height, but has characters that are too wide. A line of text that works on the printer will then be too long on the screen, unless it is squashed horizontally. The number of pixels that overlap the end of the screen line must now be removed from the gaps between the characters, i.e. there is a negative excess width. This situation is especially important where adding a TAB on screen gives perfectly acceptable printout, but would push the last character of the line off the right hand side of the screen.

In practice what you do in printer layout mode is:

Calculate where the line breaks will come on the printer. To do this you use a printer font (which in practice means a table of character widths of the font that the printer will use).

Now change to use a screen font that is the closest font which is no taller that the printer font. In practice it will often be fatter maybe only for certain characters such as 'i'.

You have to recalculate the width of the characters using the screen fonts. You can do this using CFont::TextWidth() as you have already determined how many characters will fit on the line.

If, in the screen font, the characters are not as wide as the line then you can just use word justification to expand the line. You would only do this if the text is to be justified.

If, however, the characters are wider than the line then you would use character justification to clip each character. You would need to do this even if the line is not justified.

Thus, in practice, character justification will only very rarely be used to expand a line of characters.

Parameters

TInt aExcessWidthThe excess width (in pixels) to be distributed between the specified number of characters. It may be positive, in which case the text is stretched, or negative, in which case it is shrunk.
TInt aNumCharsThe number of characters involved.

SetClippingRect(const TRect &)

IMPORT_C voidSetClippingRect(const TRect &aRect)[virtual]

Sets the clipping rectangle.

The area of visible drawing depends on the clipping rectangle, any items that fall outside the extent of the clipping rectangle will not be drawn. The default clipping rectangle is the full device area.

Note that clipping is additive. If a clipping region has been set using SetClippingRegion() then clipping will be to the intersection of that region and this rectangle.

CGraphicsContext::SetClippingRegion()

CGraphicsContext::SetOrigin()

Parameters

const TRect & aRectThe rectangle to be used as the clipping rectangle. Note that this rectangle is tranformed by the current co-ordinate origin before it is used. The co-ordinate origin is set using SetOrigin().

SetClippingRegion(const TRegion *)

IMPORT_C voidSetClippingRegion(const TRegion *aRegion)

Parameters

const TRegion * aRegion

SetClippingRegion(const TRegion &)

IMPORT_C TIntSetClippingRegion(const TRegion &aRegion)[virtual]

Sets the clipping region, any items that fall outside the extent of the clipping region will not be drawn.

Note that clipping is additive. If a clipping rectangle has been set using SetClippingRect() then clipping will be to the intersection of that rectangle and this region.

KErrNone if successful; KErrArgument if the TRegion is not valid; KErrNoMemory if there is insufficient memory.

CGraphicsContext::CancelClippingRegion()

CGraphicsContext::SetClippingRect()

Parameters

const TRegion & aRegionThe new clipping region. Note that clipping region co-ordinates are used as absolute co-ordinates, they are not transformed by the current co-ordinate origin before use (as occurs in SetClippingRect()).

SetDitherOrigin(const TPoint &)

IMPORT_C voidSetDitherOrigin(const TPoint &aPoint)

Parameters

const TPoint & aPoint

SetDrawMode(TDrawMode)

IMPORT_C voidSetDrawMode(TDrawModeaDrawingMode)[virtual]

Sets the drawing mode.

The way that the pen and brush draw depends on the drawing mode. The drawing mode affects the colour that is actually drawn, because it defines the way that the current screen colour logically combines with the current pen colour and brush colour. There are many drawing modes, each giving different logical combinations of pen, brush and screen colours. Each mode is produced by ORing together different combinations of seven drawing mode components.

The three most important modes are TDrawMode::EDrawModePEN, TDrawMode::EDrawModeNOTSCREEN and TDrawMode::EDrawModeXOR. The default drawing mode is TDrawMode::EDrawModePEN.

The drawing mode is over-ridden for line and shape drawing functions when a wide pen line has been selected. It is forced to TDrawMode::EDrawModePEN. This is to prevent undesired effects at line joins (vertexes).

Notes:

TDrawMode::EDrawModeAND gives a "colour filter" effect. For example:

  • ANDing with white gives the original colour

  • ANDing with black gives black

TDrawMode::EDrawModeOR gives a "colour boost" effect. For example:

  • ORing with black gives the original colour

  • ORing with white gives white

TDrawMode::EDrawModeXOR gives an "Exclusive OR" effect. For example:

  • white XOR black gives white

  • white XOR white gives black

  • black XOR black gives black

TDrawMode::EDrawModeWriteAlpha should not normally need to be used by client code. The following are exceptions:-

  • When a client side EColor16MA bitmap needs to have a transparent background (because you are intending to blend it onto something else), then you need to set EDrawModeWriteAlpha to Clear() it.

  • When you want to BitBlt() with an EColor16MA source bitmap that is opaque everywhere, then using EDrawModeWriteAlpha is more efficient than EDrawModePEN, because the bitmap does not need to be blended.

Note that if you have a transparent brush or source bitmap and you are drawing to a window, then it is a defect to use EDrawModeWriteAlpha.

CGraphicsContext::TDrawMode

CGraphicsContext::TDrawModeComponents

Parameters

TDrawMode aDrawingModeThe drawing mode.

SetFadeMode(TBool)

voidSetFadeMode(TBoolaFadeMode = EFalse)[inline]

Parameters

TBool aFadeMode = EFalse

SetFaded(TBool)

IMPORT_C voidSetFaded(TBoolaFaded)[virtual]

Sets whether the graphics context is faded.

Parameters

TBool aFadedETrue to fade the GC; EFalse to unfade it.

SetFadingParameters(TUint8)

voidSetFadingParameters(TUint8aBlackMap = 0)[inline]

Parameters

TUint8 aBlackMap = 0

SetFadingParameters(TUint8, TUint8)

IMPORT_C voidSetFadingParameters(TUint8aBlackMap,
TUint8aWhiteMap
)[virtual]

Sets the fading parameters.

This function allows you to override the map used when drawing with a faded graphics context (GC). However if you draw to a faded window with a faded GC, then fading on the GC is ignored and the fading of the window is used.

Fading is used to change the colour of a window to make other windows stand out. Fading can either make a faded window closer to white or closer to black.

Fading re-maps colours in the faded GC to fall between the specified black and white map values. If aBlackMap=0 and aWhiteMap=255 then the colours are mapped unchanged. As the values converge the colours are mapped to a smaller range - so the differences between colours in the faded GC decrease. If the values are reversed then the colours are inverted (i.e. where the GC would be black, it is now white).

Parameters

TUint8 aBlackMapBlack map fading parameter. Unfaded this is 0.
TUint8 aWhiteMapWhite map fading parameter. Unfaded this is 255.

SetOrientation(TGraphicsOrientation)

IMPORT_C TBoolSetOrientation(TGraphicsOrientationaOrientation)

Parameters

TGraphicsOrientation aOrientation

SetOrigin(const TPoint &)

IMPORT_C voidSetOrigin(const TPoint &aPos =  TPoint(0, 0))[virtual]

Sets the position of the co-ordinate origin.

All subsequent drawing operations are done relative to this origin.

Parameters

const TPoint & aPos =  TPoint(0, 0)The origin. The default origin is TPoint(0,0) the top left corner of the screen.

SetPenColor(const TRgb &)

IMPORT_C voidSetPenColor(const TRgb &aColor)[virtual]

Sets the pen colour.

The effective pen colour depends on the drawing mode. The default pen colour is black.

Note:

The pen is used to draw lines, the outlines of filled shapes, and text. The class provides member functions to set the colour of the pen, the style of line and the line size drawn.

CGraphicsContext::SetDrawMode()

Parameters

const TRgb & aColorAn RGB colour for the pen.

SetPenSize(const TSize &)

IMPORT_C voidSetPenSize(const TSize &aSize)[virtual]

Sets the line drawing size for the pen.

Lines of size greater than one pixel:

are drawn with rounded ends that extend beyond the end points, (as if the line is drawn using a circular pen tip of the specified size).

are always drawn in TDrawMode::EDrawModePEN mode, overriding whatever mode has been set using SetDrawMode().

Notes:

The pen is used to draw lines, the outlines of filled shapes, and text. The class provides member functions to set the colour of the pen, the style of line and the line size drawn.

Wide straight lines and arcs have rounded ends so that concatenated wide lines have smoothly rounded corners at the vertexes.

When lines are made wide, the extra strips of pixels are added equally to both sides of the line. This works precisely for lines of odd pixel size (3, 5, 7, etc.). Wide lines of even pixel size, (2, 4, 6, etc.), have the extra strip of pixels added to the right and/or below the line.

Wide outlines of ellipses and wide line arcs are drawn with the pixels distributed either side of a thin (single pixel wide) true ellipse constructed in the normal manner. Wide ellipses and arcs of even pixel size have the extra strip of pixels added to the right and/or below the curved line. This gives a slight asymmetry to ellipses.

If the pen style is dotted or dashed, the size specification is ignored: a single-pixel wide primitive is drawn, (this is device dependant).

A line size of zero is handled as if the pen style had been set to TPenStyle::ENullPen.

Parameters

const TSize & aSizeA line size. The default is 1 pixel.

SetPenStyle(TPenStyle)

IMPORT_C voidSetPenStyle(TPenStyleaPenStyle)[virtual]

Sets the line drawing style for the pen.

There are 6 pen styles. If no pen style is set, then the default is TPenStyle::ESolidPen. To use a pen style, its full context must be given, e.g. for a null pen:

CGraphicsContext::TPenStyle::ENullPen Notes:

The pen is used to draw lines, the outlines of filled shapes, and text. CGraphicsContext member functions are provided to set the colour of the pen, the style of line and the line size drawn.

The TPenStyle::ENullPen style should be used if a border is not required around a filled shape.

Dotted and dashed pen styles have a device dependant implementation, always give single-pixel size lines on the screen whatever the pen size set by SetPenSize() and can only be used for straight lines, polylines, non-rounded rectangles and polygons.

The dotted/dashed pattern is continued, without re-starting, for all consecutively drawn straight lines, i.e.

the outlines of rectangles the pattern starts in the top left corner. It is reset at the end of the function call.

the outlines of polygons the pattern starts at the first point. It is reset at the end of the function call.

polylines and straight lines the pattern starts at the first point initially. Consecutive calls to DrawLine() and/or DrawPolyLine(), whether the lines are concatenated or not, continue the pattern. It can be reset by a further call to SetPenStyle() using the same dotted/dashed style parameter.

CGraphicsContext::TPenStyle

Parameters

TPenStyle aPenStyleA pen style.

SetShadowMode(TBool)

IMPORT_C voidSetShadowMode(TBoolaShadowMode = EFalse)

Parameters

TBool aShadowMode = EFalse

SetStrikethroughStyle(TFontStrikethrough)

IMPORT_C voidSetStrikethroughStyle(TFontStrikethroughaStrikethroughStyle)[virtual]

Sets the strikethrough style.

This is applied to all subsequently drawn text.

Parameters

TFontStrikethrough aStrikethroughStyleThe strikethrough style on or off.

SetUnderlineStyle(TFontUnderline)

IMPORT_C voidSetUnderlineStyle(TFontUnderlineaUnderlineStyle)[virtual]

Sets the underline style.

This is applied to all subsequently drawn text.

Parameters

TFontUnderline aUnderlineStyleThe underline style on or off.

SetUserDisplayMode(TDisplayMode)

IMPORT_C voidSetUserDisplayMode(TDisplayModeaDisplayMode)

Parameters

TDisplayMode aDisplayMode

SetWordJustification(TInt, TInt)

IMPORT_C voidSetWordJustification(TIntaExcessWidth,
TIntaNumGaps
)[virtual]

Adjusts the spaces between words to stretch or squeeze to a certain width.

The function is required by the Text Views API, and is not intended for regular use by developers.

The text line that is to be justified has a certain number of gaps (spaces) between the words. It also has a distance (in pixels) between the end of the last word and the actual end of the line (right hand margin, usually). These excess width pixels are distributed amongst the gaps between the words to achieve full justification of the text line. Spaces become fat spaces to keep underlining/strikethrough consistent. Pixels are distributed to the inter-word gaps starting from the left end of the string. The spacing between characters in each word remains unchanged.

After a call to SetWordJustification(), subsequent calls to either of the two DrawText() functions are affected until the number of spaces specified by aNumSpaces is used up.

The easiest way to find out the excess width and number of spaces is to call CFont::MeasureText(). This function can also perform counting, which is finding how much of some text will fit into a given width.

Use CFont::TextCount() to return the excess width.

For example, in the string "To be, or not to be", there are five inter-word gaps. If there are six excess pixels they will be distributed in the proportion 2, 1, 1, 1, 1 between the words. If there are nine excess pixels they will be distributed in the proportion 2, 2, 2, 2, 1 between the words.

Notes:

If the excess width is zero, then calling SetWordJustification() has no effect.

At first sight it may appear that SetWordJustification() is not required because you can simply call DrawText() for each word. However, underlined justified text does not work using this strategy you get a non-underlined gap between the space and the beginning of the next word.

Parameters

TInt aExcessWidthThe width (in pixels) to be distributed between the specified number of spaces.
TInt aNumGapsThe number of word spaces (characters with the code U+0020) over which the change in width is distributed.

SetupDevice()

voidSetupDevice()const [private]

ShadowArea(const TRegion *)

IMPORT_C voidShadowArea(const TRegion *aRegion)

Parameters

const TRegion * aRegion

ShadowFadeArea(const TRegion *, TInt8)

voidShadowFadeArea(const TRegion *aRegion,
TInt8aShadowMode
)[private]

Parameters

const TRegion * aRegion
TInt8 aShadowMode

UpdateJustification(const TDesC &)

IMPORT_C voidUpdateJustification(const TDesC &aText)

Parameters

const TDesC & aText

UpdateJustification(const TDesC &, const TTextParameters *)

IMPORT_C voidUpdateJustification(const TDesC &aText,
const TTextParameters *aParam
)

Parameters

const TDesC & aText
const TTextParameters * aParam

UpdateJustificationVertical(const TDesC &, TBool)

IMPORT_C voidUpdateJustificationVertical(const TDesC &aText,
TBoolaUp
)

Parameters

const TDesC & aText
TBool aUp

UpdateJustificationVertical(const TDesC &, const TTextParameters *, TBool)

IMPORT_C voidUpdateJustificationVertical(const TDesC &aText,
const TTextParameters *aParam,
TBoolaUp
)

Parameters

const TDesC & aText
const TTextParameters * aParam
TBool aUp

UseBrushPattern(const CFbsBitmap *)

IMPORT_C voidUseBrushPattern(const CFbsBitmap *aBitmap)[virtual]

Sets the brush pattern to the specified bitmap.

For the brush to actually use the bitmap, TBrushStyle::EPatternedBrush must be used to set the brush style.

When the brush pattern is no longer required, use DiscardBrushPattern() to free up the memory used, if the bitmap is not being shared. If UseBrushPattern() is used again without using DiscardBrushPattern() then the previous pattern is discarded automatically.

Notes:

The brush is used for filling shapes and the background of text boxes. The brush has colour, style, pattern and pattern origin parameters.

When loading a bitmap, the bitmap is checked to see if it is already in memory. If the bitmap is already there, then that copy is shared.

The brush does not need to have a pattern set at all. There are several built-in hatching patterns which can be selected using SetBrushStyle().

SetBrushStyle()

Parameters

const CFbsBitmap * aBitmapA bitmap pattern for the brush.

UseBrushPattern(TInt)

IMPORT_C TIntUseBrushPattern(TIntaFbsBitmapHandle)

Parameters

TInt aFbsBitmapHandle

UseFont(const CFont *)

IMPORT_C voidUseFont(const CFont *aFont)[virtual]

Sets the device font to be used for text drawing.

If the font is already in memory, then that copy is shared.

Notes:

The CFont* argument must have been previously initialised by calling MGraphicsDeviceMap::GetNearestFontInTwips() with the required font-specification. If the CFont* has not been initialised correctly, and therefore does not point to an available font-bitmap, then a panic is raised.

When the font is no longer required, use DiscardFont() to free up the memory used. If UseFont() is used again without using DiscardFont() then the previous font is discarded automatically.

If no font has been selected, and an attempt is made to draw text with DrawText(), then a panic is raised.

MGraphicsDeviceMap::GetNearestFontInTwips()

Parameters

const CFont * aFontA device font

UseFont(TInt)

IMPORT_C TIntUseFont(TIntaFontHandle)

Parameters

TInt aFontHandle

UseFontNoDuplicate(const CFbsBitGcFont *)

IMPORT_C voidUseFontNoDuplicate(const CFbsBitGcFont *aFont)

Parameters

const CFbsBitGcFont * aFont

UserClipRect(TRect &)

TBool UserClipRect(TRect &aRect)[private]

Parameters

TRect & aRect

Member Enumerations Documentation

Enum TGraphicsOrientation

Defines possible rotation values.

Enumerators

EGraphicsOrientationNormal

Normal orientation is supported.

EGraphicsOrientationRotated90

A 90 degree rotation is supported.

EGraphicsOrientationRotated180

A 180 degree rotation is supported.

EGraphicsOrientationRotated270

A 270 degree rotation is supported.

Member Data Documentation

TInt8 iAutoUpdateJustification

TInt8 iAutoUpdateJustification[private]

CFbsBitGcBitmap iBrushBitmap

CFbsBitGcBitmap iBrushBitmap[private]

TRgb iBrushColor

TRgb iBrushColor[private]

TPoint iBrushOrigin

TPoint iBrushOrigin[private]

TBrushStyle iBrushStyle

TBrushStyle iBrushStyle[private]

TBool iBrushUsed

TBool iBrushUsed[private]

TInt iCharJustExcess

TInt iCharJustExcess[private]

TInt iCharJustNum

TInt iCharJustNum[private]

TRect iClipRect

TRect iClipRect[private]

RRegion iClippingRegion

RRegion iClippingRegion[private]

TRegionFix< 1 > iDefaultRegion

TRegionFix< 1 >iDefaultRegion[private]

const TRegion * iDefaultRegionPtr

const TRegion *iDefaultRegionPtr[private]

CFbsDevice * iDevice

CFbsDevice *iDevice[private]

TPoint iDitherOrigin

TPoint iDitherOrigin[private]

TInt iDotDirection

TInt iDotDirection[private]

TInt iDotLength

TInt iDotLength[private]

TInt iDotMask

TInt iDotMask[private]

TInt iDotParam

TInt iDotParam[private]

TDrawMode iDrawMode

TDrawMode iDrawMode[private]

TRect iDrawnTo

TRect iDrawnTo[private]

TUint8 iFadeBlackMap

TUint8 iFadeBlackMap[private]

TUint8 iFadeWhiteMap

TUint8 iFadeWhiteMap[private]

CFbsBitGcExtraData * iFbsBitGcExtraData

CFbsBitGcExtraData *iFbsBitGcExtraData[private]

CFbsBitGcFont iFont

CFbsBitGcFont iFont[private]

TPoint iLastPrintPosition

TPoint iLastPrintPosition[private]

TPoint iLinePosition

TPoint iLinePosition[private]

TPoint iOrigin

TPoint iOrigin[private]

TRgb iPenColor

TRgb iPenColor[private]

TSize iPenSize

TSize iPenSize[private]

TPenStyle iPenStyle

TPenStyle iPenStyle[private]

TInt8 iShadowMode

TInt8 iShadowMode[private]

TFontStrikethrough iStrikethrough

TFontStrikethrough iStrikethrough[private]

TFontUnderline iUnderline

TFontUnderline iUnderline[private]

TRect iUserClipRect

TRect iUserClipRect[private]

TDisplayMode iUserDisplayMode

TDisplayMode iUserDisplayMode[private]

TInt iWordJustExcess

TInt iWordJustExcess[private]

TInt iWordJustNum

TInt iWordJustNum[private]