CDrawContext Class Reference

A drawing context encapsulates the drawing context of the underlying OS. More...

#include <vstgui.h>

List of all members.

Public Member Functions

 ~CDrawContext ()
void * getWindow ()
void setWindow (void *ptr)
void getLoc (CPoint &where) const
CFramegetFrame () const
void * getSystemContext () const
void forget ()
 decrease refcount and delete object if refcount == 0
 VSTGUI_DEPRECATED (CColor getPoint(const CPoint &point);) VSTGUI_DEPRECATED(void floodFill(const CPoint &start)
 VSTGUI_DEPRECATED (void drawArc(const CRect &rect, const CPoint &point1, const CPoint &point2);) VSTGUI_DEPRECATED(void fillArc(const CRect &rect
 <
 VSTGUI_DEPRECATED (void polyLine(const CPoint *pPoint, long numberOfPoints);) VSTGUI_DEPRECATED(void fillPolygon(const CPoint *pPoint
 <
 VSTGUI_DEPRECATED (void fillRect(const CRect &rect);) VSTGUI_DEPRECATED(void fillEllipse(const CRect &rect)
 <
 VSTGUI_DEPRECATED (long getMouseButtons();) VSTGUI_DEPRECATED(void getMouseLocation(CPoint &point)
 <
 VSTGUI_DEPRECATED (bool waitDoubleClick();) VSTGUI_DEPRECATED(bool waitDrag()
 <

Public Attributes

CPoint offsetScreen
CPoint offset
const CPointpoint1
const CPoint const CPointpoint2
long numberOfPoints

Protected Attributes

void * pSystemContext
void * pWindow
CFramepFrame
CFontRef font
CColor fontColor
CPoint penLoc
CCoord frameWidth
CColor frameColor
CColor fillColor
CLineStyle lineStyle
CDrawMode drawMode
CRect clipRect

Constructor



 CDrawContext (CFrame *pFrame, void *pSystemContext, void *pWindow=0)

Draw primitives



void moveTo (const CPoint &point)
 move line position to point
void lineTo (const CPoint &point)
 draw a line from current position to point
void drawLines (const CPoint *points, const long &numberOfLines)
 draw multiple lines at once
void drawPolygon (const CPoint *pPoints, long numberOfPoints, const CDrawStyle drawStyle=kDrawStroked, bool closePolygon=true)
 draw a polygon
void drawRect (const CRect &rect, const CDrawStyle drawStyle=kDrawStroked)
 draw a rect
void drawArc (const CRect &rect, const float startAngle1, const float endAngle2, const CDrawStyle drawStyle=kDrawStroked)
 draw an arc, angles are in degree
void drawEllipse (const CRect &rect, const CDrawStyle drawStyle=kDrawStroked)
 draw an ellipse
void drawPoint (const CPoint &point, CColor color)
 draw a point

Line Mode



void setLineStyle (CLineStyle style)
 set the current line style
CLineStyle getLineStyle () const
 get the current line style
void setLineWidth (CCoord width)
 set the current line width
CCoord getLineWidth () const
 get the current line width

Draw Mode



void setDrawMode (CDrawMode mode)
 set the current draw mode, see CDrawMode
CDrawMode getDrawMode () const
 get the current draw mode, see CDrawMode

Clipping



void setClipRect (const CRect &clip)
 set the current clip
CRectgetClipRect (CRect &clip) const
 get the current clip
void resetClipRect ()
 reset the clip to the default state

Color



void setFillColor (const CColor color)
 set current fill color
CColor getFillColor () const
 get current fill color
void setFrameColor (const CColor color)
 set current stroke color
CColor getFrameColor () const
 get current stroke color

Font



void setFontColor (const CColor color)
 set current font color
CColor getFontColor () const
 get current font color
void setFont (const CFontRef font, const long &size=0, const long &style=-1)
 set current font
const CFontRefgetFont () const
 get current font
long getFontSize () const
 get current font size

Text



CCoord getStringWidth (const char *pStr)
 get the width of an ASCII encoded string
void drawString (const char *pString, const CRect &rect, const short opaque=false, const CHoriTxtAlign hAlign=kCenterText)
 draw an ASCII encoded string
CCoord getStringWidthUTF8 (const char *pStr)
 get the width of an UTF-8 encoded string
void drawStringUTF8 (const char *pString, const CRect &rect, const CHoriTxtAlign hAlign=kCenterText, bool antialias=true)
 draw an UTF-8 encoded string
void drawStringUTF8 (const char *string, const CPoint &_point, bool antialias=true)
 draw an UTF-8 encoded string

Reference Counting Methods



virtual void remember ()
 increase refcount
long getNbReference () const
 get refcount

Message Methods



virtual CMessageResult notify (CBaseObject *sender, const char *message)

Detailed Description

A drawing context encapsulates the drawing context of the underlying OS.


Constructor & Destructor Documentation

CDrawContext ( CFrame inFrame,
void *  inSystemContext,
void *  inWindow = 0 
)

CDrawContext constructor.

Parameters:
inFrame the parent CFrame
inSystemContext the platform system context, can be NULL
inWindow the platform window object
~CDrawContext (  ) 

Member Function Documentation

void moveTo ( const CPoint point  ) 

move line position to point

void lineTo ( const CPoint point  ) 

draw a line from current position to point

void drawLines ( const CPoint points,
const long &  numberOfLines 
)

draw multiple lines at once

void drawPolygon ( const CPoint pPoints,
long  numberOfPoints,
const CDrawStyle  drawStyle = kDrawStroked,
bool  closePolygon = true 
)

draw a polygon

void drawRect ( const CRect rect,
const CDrawStyle  drawStyle = kDrawStroked 
)

draw a rect

void drawArc ( const CRect rect,
const float  startAngle1,
const float  endAngle2,
const CDrawStyle  drawStyle = kDrawStroked 
)

draw an arc, angles are in degree

void drawEllipse ( const CRect rect,
const CDrawStyle  drawStyle = kDrawStroked 
)

draw an ellipse

void drawPoint ( const CPoint point,
CColor  color 
)

draw a point

void setLineStyle ( CLineStyle  style  ) 

set the current line style

CLineStyle getLineStyle (  )  const [inline]

get the current line style

void setLineWidth ( CCoord  width  ) 

set the current line width

CCoord getLineWidth (  )  const [inline]

get the current line width

void setDrawMode ( CDrawMode  mode  ) 

set the current draw mode, see CDrawMode

CDrawMode getDrawMode (  )  const [inline]

get the current draw mode, see CDrawMode

void setClipRect ( const CRect clip  ) 

set the current clip

CRect& getClipRect ( CRect clip  )  const [inline]

get the current clip

void resetClipRect (  ) 

reset the clip to the default state

void setFillColor ( const CColor  color  ) 

set current fill color

CColor getFillColor (  )  const [inline]

get current fill color

void setFrameColor ( const CColor  color  ) 

set current stroke color

CColor getFrameColor (  )  const [inline]

get current stroke color

void setFontColor ( const CColor  color  ) 

set current font color

CColor getFontColor (  )  const [inline]

get current font color

void setFont ( const CFontRef  font,
const long &  size = 0,
const long &  style = -1 
)

set current font

const CFontRef& getFont (  )  const [inline]

get current font

long getFontSize (  )  const [inline]

get current font size

CCoord getStringWidth ( const char *  pStr  ) 

get the width of an ASCII encoded string

void drawString ( const char *  pString,
const CRect rect,
const short  opaque = false,
const CHoriTxtAlign  hAlign = kCenterText 
)

draw an ASCII encoded string

CCoord getStringWidthUTF8 ( const char *  pStr  ) 

get the width of an UTF-8 encoded string

void drawStringUTF8 ( const char *  pString,
const CRect rect,
const CHoriTxtAlign  hAlign = kCenterText,
bool  antialias = true 
)

draw an UTF-8 encoded string

void drawStringUTF8 ( const char *  string,
const CPoint _point,
bool  antialias = true 
)

draw an UTF-8 encoded string

void* getWindow (  )  [inline]
void setWindow ( void *  ptr  )  [inline]
void getLoc ( CPoint where  )  const [inline]
CFrame* getFrame (  )  const [inline]
void* getSystemContext (  )  const [inline]
void forget (  )  [virtual]

decrease refcount and delete object if refcount == 0

Reimplemented from CBaseObject.

VSTGUI_DEPRECATED ( CColor getPoint(const CPoint &point);   )  const
VSTGUI_DEPRECATED ( void drawArc(const CRect &rect, const CPoint &point1, const CPoint &point2);   )  const
VSTGUI_DEPRECATED ( void polyLine(const CPoint *pPoint, long numberOfPoints);   )  const
VSTGUI_DEPRECATED ( void fillRect(const CRect &rect);   )  const

<

Deprecated:
use VSTGUI::CDrawContext::drawPolygon with kDrawFilled as draw style
VSTGUI_DEPRECATED ( long getMouseButtons();   ) 

<

Deprecated:
use VSTGUI::CDrawContext::drawEllipse with kDrawFilled as draw style
VSTGUI_DEPRECATED ( bool waitDoubleClick();   ) 

<

Deprecated:
if you really need this call VSTGUI::CFrame::getCurrentMouseLocation
virtual void remember (  )  [inline, virtual, inherited]

increase refcount

long getNbReference (  )  const [inline, inherited]

get refcount

virtual CMessageResult notify ( CBaseObject sender,
const char *  message 
) [inline, virtual, inherited]

Member Data Documentation

const CPoint& point1
const CPoint const CPoint& point2
void* pSystemContext [protected]
void* pWindow [protected]
CFrame* pFrame [protected]
CFontRef font [protected]
CColor fontColor [protected]
CPoint penLoc [protected]
CCoord frameWidth [protected]
CColor frameColor [protected]
CColor fillColor [protected]
CLineStyle lineStyle [protected]
CDrawMode drawMode [protected]
CRect clipRect [protected]

The documentation for this class was generated from the following files:
Generated on Fri Apr 9 10:19:32 2010 for VSTGUI by  doxygen 1.6.3