7 #include "cairoutils.h" 9 #include "../../coffscreencontext.h" 29 bool valid ()
const {
return cr !=
nullptr; }
30 CRect getSurfaceRect ()
const {
return surfaceRect; }
34 void drawLine (
const LinePair& line)
override;
35 void drawLines (
const LineList& lines)
override;
36 void drawPolygon (
const PointList& polygonPointList,
const CDrawStyle drawStyle)
override;
37 void drawRect (
const CRect& rect,
const CDrawStyle drawStyle)
override;
38 void drawArc (
const CRect& rect,
const float startAngle1,
const float endAngle2,
39 const CDrawStyle drawStyle)
override;
43 float alpha)
override;
47 void drawGraphicsPath (
CGraphicsPath* path, PathDrawMode mode,
50 const CPoint& startPoint,
const CPoint& endPoint,
bool evenOdd,
53 CCoord radius,
const CPoint& originOffset,
bool evenOdd,
56 void saveGlobalState ()
override;
57 void restoreGlobalState ()
override;
59 void beginDraw ()
override;
60 void endDraw ()
override;
63 void init ()
override;
64 void setSourceColor (
CColor color);
65 void setupCurrentStroke ();
66 void draw (CDrawStyle drawstyle);
78 operator bool () {
return !clipIsEmpty; }
82 bool clipIsEmpty {
false};
91 tm.inverse ().transform (obj);
void drawEllipse(const CRect &rect, const CDrawStyle drawStyle) override
draw an ellipse
Definition: cairocontext.cpp:356
font class
Definition: cfont.h:31
Rect structure.
Definition: crect.h:17
void drawPoint(const CPoint &point, const CColor &color) override
draw a point
Definition: cairocontext.cpp:369
CGraphicsPath * createGraphicsPath() override
create a graphics path object, you need to forget it after usage
Definition: cairocontext.cpp:435
void drawLines(const LineList &lines) override
draw multiple lines at once
Definition: cairocontext.cpp:276
Definition: cairocontext.h:73
void drawLine(const LinePair &line) override
draw a line
Definition: cairocontext.cpp:252
Definition: cairocontext.h:18
RGBA Color structure.
Definition: ccolor.h:15
A draw context using a bitmap as it's back buffer.
Definition: coffscreencontext.h:58
Definition: cairobitmap.h:19
Graphics Path Object.
Definition: cgraphicspath.h:19
Gradient Object [new in 4.0].
Definition: cgradient.h:19
Encapsulates various platform depended kinds of bitmaps.
Definition: cbitmap.h:21
Definition: customcontrols.cpp:8
void drawArc(const CRect &rect, const float startAngle1, const float endAngle2, const CDrawStyle drawStyle) override
draw an arc, angles are in degree
Definition: cairocontext.cpp:342
void drawBitmap(CBitmap *bitmap, const CRect &dest, const CPoint &offset, float alpha) override
don't call directly, please use CBitmap::draw instead
Definition: cairocontext.cpp:381
void drawPolygon(const PointList &polygonPointList, const CDrawStyle drawStyle) override
draw a polygon
Definition: cairocontext.cpp:306
Point structure.
Definition: cpoint.h:17
void drawRect(const CRect &rect, const CDrawStyle drawStyle) override
draw a rect
Definition: cairocontext.cpp:324
CGraphicsPath * createTextPath(const CFontRef font, UTF8StringPtr text) override
create a graphics path from a text
Definition: cairocontext.cpp:441
void clearRect(const CRect &rect) override
clears the rect (makes r = 0, g = 0, b = 0, a = 0)
Definition: cairocontext.cpp:423