3
3
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
4
4
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
<!-- /fasttmp/mkdist-qt-4.5.2-1245473805/qt-x11-opensource-src-4.5.2/src/gui/painting/qpaintengine.cpp -->
5
<!-- qpaintengine.cpp -->
7
<title>Qt 4.5: QPaintEngine Class Reference</title>
7
<title>Qt 4.6: QPaintEngine Class Reference</title>
8
8
<link href="classic.css" rel="stylesheet" type="text/css" />
11
<a name="//apple_ref/cpp/cl//QPaintEngine" />
11
12
<table border="0" cellpadding="0" cellspacing="0" width="100%">
13
<td align="left" valign="top" width="32"><a href="http://qtsoftware.com/products/qt"><img src="images/qt-logo.png" align="left" border="0" /></a></td>
14
<td width="1"> </td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a> · <a href="namespaces.html"><font color="#004faf">All Namespaces</font></a> · <a href="classes.html"><font color="#004faf">All Classes</font></a> · <a href="mainclasses.html"><font color="#004faf">Main Classes</font></a> · <a href="groups.html"><font color="#004faf">Grouped Classes</font></a> · <a href="modules.html"><font color="#004faf">Modules</font></a> · <a href="functions.html"><font color="#004faf">Functions</font></a></td>
15
<td align="right" valign="top" width="230"></td></tr></table><h1 class="title">QPaintEngine Class Reference<br /><span class="small-subtitle">[<a href="qtgui.html">QtGui</a> module]</span>
14
<td align="left" valign="top" width="32"><a href="http://qt.nokia.com/"><img src="images/qt-logo.png" align="left" border="0" /></a></td>
15
<td width="1"> </td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a> · <a href="classes.html"><font color="#004faf">All Classes</font></a> · <a href="functions.html"><font color="#004faf">All Functions</font></a> · <a href="overviews.html"><font color="#004faf">Overviews</font></a></td><td class="searchBar" align="right" valign="center"><form action="http://www.google.com/cse" id="cse-search-box"><div><input type="hidden" name="cx" value="000136343326384750312:dhbxnqlakyu" /><input type="hidden" name="ie" value="UTF-8" /><input type="text" name="q" size="31" /><input type="submit" name="sa" value="Search" /></div></form></td>
16
</tr></table><h1 class="title">QPaintEngine Class Reference<br /><span class="small-subtitle">[<a href="qtgui.html">QtGui</a> module]</span>
17
18
<p>The QPaintEngine class provides an abstract definition of how <a href="qpainter.html">QPainter</a> draws to a given device on a given platform. <a href="#details">More...</a></p>
18
19
<pre> #include <QPaintEngine></pre><p>Inherited by <a href="qrasterpaintengine.html">QRasterPaintEngine</a>.</p>
20
21
<li><a href="qpaintengine-members.html">List of all members, including inherited members</a></li>
22
24
<a name="public-types"></a>
25
<li><div class="fn"></div>enum <b><a href="qpaintengine.html#DirtyFlag-enum">DirtyFlag</a></b> { DirtyPen, DirtyBrush, DirtyBrushOrigin, DirtyFont, ..., AllDirty }</li>
26
<li><div class="fn"></div>flags <b><a href="qpaintengine.html#DirtyFlag-enum">DirtyFlags</a></b></li>
27
<li><div class="fn"></div>enum <b><a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeature</a></b> { AlphaBlend, Antialiasing, BlendModes, BrushStroke, ..., AllFeatures }</li>
28
<li><div class="fn"></div>flags <b><a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeatures</a></b></li>
29
<li><div class="fn"></div>enum <b><a href="qpaintengine.html#PolygonDrawMode-enum">PolygonDrawMode</a></b> { OddEvenMode, WindingMode, ConvexMode, PolylineMode }</li>
30
<li><div class="fn"></div>enum <b><a href="qpaintengine.html#Type-enum">Type</a></b> { X11, Windows, MacPrinter, CoreGraphics, ..., MaxUser }</li>
26
<table class="alignedsummary" border="0" cellpadding="0" cellspacing="0" width="100%">
27
<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#DirtyFlag-enum">DirtyFlag</a></b> { DirtyPen, DirtyBrush, DirtyBrushOrigin, DirtyFont, ..., AllDirty }</td></tr>
28
<tr><td class="memItemLeft" align="right" valign="top">flags </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#DirtyFlag-enum">DirtyFlags</a></b></td></tr>
29
<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeature</a></b> { AlphaBlend, Antialiasing, BlendModes, BrushStroke, ..., AllFeatures }</td></tr>
30
<tr><td class="memItemLeft" align="right" valign="top">flags </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeatures</a></b></td></tr>
31
<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#PolygonDrawMode-enum">PolygonDrawMode</a></b> { OddEvenMode, WindingMode, ConvexMode, PolylineMode }</td></tr>
32
<tr><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#Type-enum">Type</a></b> { X11, Windows, MacPrinter, CoreGraphics, ..., PaintBuffer }</td></tr>
32
35
<a name="public-functions"></a>
33
<h3>Public Functions</h3>
35
<li><div class="fn"></div><b><a href="qpaintengine.html#QPaintEngine">QPaintEngine</a></b> ( PaintEngineFeatures <i>caps</i> = 0 )</li>
36
<li><div class="fn"></div>virtual <b><a href="qpaintengine.html#dtor.QPaintEngine">~QPaintEngine</a></b> ()</li>
37
<li><div class="fn"></div>virtual bool <b><a href="qpaintengine.html#begin">begin</a></b> ( QPaintDevice * <i>pdev</i> ) = 0</li>
38
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawEllipse">drawEllipse</a></b> ( const QRectF & <i>rect</i> )</li>
39
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawEllipse-2">drawEllipse</a></b> ( const QRect & <i>rect</i> )</li>
40
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawImage">drawImage</a></b> ( const QRectF & <i>rectangle</i>, const QImage & <i>image</i>, const QRectF & <i>sr</i>, Qt::ImageConversionFlags <i>flags</i> = Qt::AutoColor )</li>
41
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawLines">drawLines</a></b> ( const QLineF * <i>lines</i>, int <i>lineCount</i> )</li>
42
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawLines-2">drawLines</a></b> ( const QLine * <i>lines</i>, int <i>lineCount</i> )</li>
43
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPath">drawPath</a></b> ( const QPainterPath & <i>path</i> )</li>
44
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPixmap">drawPixmap</a></b> ( const QRectF & <i>r</i>, const QPixmap & <i>pm</i>, const QRectF & <i>sr</i> ) = 0</li>
45
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPoints">drawPoints</a></b> ( const QPointF * <i>points</i>, int <i>pointCount</i> )</li>
46
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPoints-2">drawPoints</a></b> ( const QPoint * <i>points</i>, int <i>pointCount</i> )</li>
47
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPolygon">drawPolygon</a></b> ( const QPointF * <i>points</i>, int <i>pointCount</i>, PolygonDrawMode <i>mode</i> )</li>
48
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawPolygon-2">drawPolygon</a></b> ( const QPoint * <i>points</i>, int <i>pointCount</i>, PolygonDrawMode <i>mode</i> )</li>
49
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawRects">drawRects</a></b> ( const QRectF * <i>rects</i>, int <i>rectCount</i> )</li>
50
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawRects-2">drawRects</a></b> ( const QRect * <i>rects</i>, int <i>rectCount</i> )</li>
51
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawTextItem">drawTextItem</a></b> ( const QPointF & <i>p</i>, const QTextItem & <i>textItem</i> )</li>
52
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#drawTiledPixmap">drawTiledPixmap</a></b> ( const QRectF & <i>rect</i>, const QPixmap & <i>pixmap</i>, const QPointF & <i>p</i> )</li>
53
<li><div class="fn"></div>virtual bool <b><a href="qpaintengine.html#end">end</a></b> () = 0</li>
54
<li><div class="fn"></div>bool <b><a href="qpaintengine.html#hasFeature">hasFeature</a></b> ( PaintEngineFeatures <i>feature</i> ) const</li>
55
<li><div class="fn"></div>bool <b><a href="qpaintengine.html#isActive">isActive</a></b> () const</li>
56
<li><div class="fn"></div>QPaintDevice * <b><a href="qpaintengine.html#paintDevice">paintDevice</a></b> () const</li>
57
<li><div class="fn"></div>QPainter * <b><a href="qpaintengine.html#painter">painter</a></b> () const</li>
58
<li><div class="fn"></div>void <b><a href="qpaintengine.html#setActive">setActive</a></b> ( bool <i>state</i> )</li>
59
<li><div class="fn"></div>virtual Type <b><a href="qpaintengine.html#type">type</a></b> () const = 0</li>
60
<li><div class="fn"></div>virtual void <b><a href="qpaintengine.html#updateState">updateState</a></b> ( const QPaintEngineState & <i>state</i> ) = 0</li>
36
<h2>Public Functions</h2>
37
<table class="alignedsummary" border="0" cellpadding="0" cellspacing="0" width="100%">
38
<tr><td class="memItemLeft" align="right" valign="top"></td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#QPaintEngine">QPaintEngine</a></b> ( PaintEngineFeatures <i>caps</i> = 0 )</td></tr>
39
<tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#dtor.QPaintEngine">~QPaintEngine</a></b> ()</td></tr>
40
<tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#begin">begin</a></b> ( QPaintDevice * <i>pdev</i> ) = 0</td></tr>
41
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawEllipse">drawEllipse</a></b> ( const QRectF & <i>rect</i> )</td></tr>
42
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawEllipse-2">drawEllipse</a></b> ( const QRect & <i>rect</i> )</td></tr>
43
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawImage">drawImage</a></b> ( const QRectF & <i>rectangle</i>, const QImage & <i>image</i>, const QRectF & <i>sr</i>, Qt::ImageConversionFlags <i>flags</i> = Qt::AutoColor )</td></tr>
44
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawLines">drawLines</a></b> ( const QLineF * <i>lines</i>, int <i>lineCount</i> )</td></tr>
45
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawLines-2">drawLines</a></b> ( const QLine * <i>lines</i>, int <i>lineCount</i> )</td></tr>
46
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPath">drawPath</a></b> ( const QPainterPath & <i>path</i> )</td></tr>
47
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPixmap">drawPixmap</a></b> ( const QRectF & <i>r</i>, const QPixmap & <i>pm</i>, const QRectF & <i>sr</i> ) = 0</td></tr>
48
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPoints">drawPoints</a></b> ( const QPointF * <i>points</i>, int <i>pointCount</i> )</td></tr>
49
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPoints-2">drawPoints</a></b> ( const QPoint * <i>points</i>, int <i>pointCount</i> )</td></tr>
50
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPolygon">drawPolygon</a></b> ( const QPointF * <i>points</i>, int <i>pointCount</i>, PolygonDrawMode <i>mode</i> )</td></tr>
51
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawPolygon-2">drawPolygon</a></b> ( const QPoint * <i>points</i>, int <i>pointCount</i>, PolygonDrawMode <i>mode</i> )</td></tr>
52
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawRects">drawRects</a></b> ( const QRectF * <i>rects</i>, int <i>rectCount</i> )</td></tr>
53
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawRects-2">drawRects</a></b> ( const QRect * <i>rects</i>, int <i>rectCount</i> )</td></tr>
54
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawTextItem">drawTextItem</a></b> ( const QPointF & <i>p</i>, const QTextItem & <i>textItem</i> )</td></tr>
55
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#drawTiledPixmap">drawTiledPixmap</a></b> ( const QRectF & <i>rect</i>, const QPixmap & <i>pixmap</i>, const QPointF & <i>p</i> )</td></tr>
56
<tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#end">end</a></b> () = 0</td></tr>
57
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#hasFeature">hasFeature</a></b> ( PaintEngineFeatures <i>feature</i> ) const</td></tr>
58
<tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#isActive">isActive</a></b> () const</td></tr>
59
<tr><td class="memItemLeft" align="right" valign="top">QPaintDevice * </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#paintDevice">paintDevice</a></b> () const</td></tr>
60
<tr><td class="memItemLeft" align="right" valign="top">QPainter * </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#painter">painter</a></b> () const</td></tr>
61
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#setActive">setActive</a></b> ( bool <i>state</i> )</td></tr>
62
<tr><td class="memItemLeft" align="right" valign="top">virtual Type </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#type">type</a></b> () const = 0</td></tr>
63
<tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><b><a href="qpaintengine.html#updateState">updateState</a></b> ( const QPaintEngineState & <i>state</i> ) = 0</td></tr>
62
65
<a name="details"></a>
64
67
<h2>Detailed Description</h2>
91
110
<p>These types are used by <a href="qpainter.html">QPainter</a> to trigger lazy updates of the various states in the <a href="qpaintengine.html">QPaintEngine</a> using <a href="qpaintengine.html#updateState">QPaintEngine::updateState</a>().</p>
92
111
<p>A paint engine must update every dirty state.</p>
93
112
<p>The DirtyFlags type is a typedef for <a href="qflags.html">QFlags</a><DirtyFlag>. It stores an OR combination of DirtyFlag values.</p>
113
<a name="//apple_ref/cpp/tag/QPaintEngine/PaintEngineFeature" />
114
<a name="//apple_ref/cpp/econst/QPaintEngine/AlphaBlend" />
115
<a name="//apple_ref/cpp/econst/QPaintEngine/Antialiasing" />
116
<a name="//apple_ref/cpp/econst/QPaintEngine/BlendModes" />
117
<a name="//apple_ref/cpp/econst/QPaintEngine/BrushStroke" />
118
<a name="//apple_ref/cpp/econst/QPaintEngine/ConicalGradientFill" />
119
<a name="//apple_ref/cpp/econst/QPaintEngine/ConstantOpacity" />
120
<a name="//apple_ref/cpp/econst/QPaintEngine/LinearGradientFill" />
121
<a name="//apple_ref/cpp/econst/QPaintEngine/MaskedBrush" />
122
<a name="//apple_ref/cpp/econst/QPaintEngine/ObjectBoundingModeGradients" />
123
<a name="//apple_ref/cpp/econst/QPaintEngine/PainterPaths" />
124
<a name="//apple_ref/cpp/econst/QPaintEngine/PaintOutsidePaintEvent" />
125
<a name="//apple_ref/cpp/econst/QPaintEngine/PatternBrush" />
126
<a name="//apple_ref/cpp/econst/QPaintEngine/PatternTransform" />
127
<a name="//apple_ref/cpp/econst/QPaintEngine/PerspectiveTransform" />
128
<a name="//apple_ref/cpp/econst/QPaintEngine/PixmapTransform" />
129
<a name="//apple_ref/cpp/econst/QPaintEngine/PorterDuff" />
130
<a name="//apple_ref/cpp/econst/QPaintEngine/PrimitiveTransform" />
131
<a name="//apple_ref/cpp/econst/QPaintEngine/RadialGradientFill" />
132
<a name="//apple_ref/cpp/econst/QPaintEngine/RasterOpModes" />
133
<a name="//apple_ref/cpp/econst/QPaintEngine/AllFeatures" />
134
<a name="//apple_ref/cpp/tdef/QPaintEngine/PaintEngineFeatures" />
94
135
<h3 class="flags"><a name="PaintEngineFeature-enum"></a>enum QPaintEngine::PaintEngineFeature<br />flags QPaintEngine::PaintEngineFeatures</h3>
95
136
<p>This enum is used to describe the features or capabilities that the paint engine has. If a feature is not supported by the engine, <a href="qpainter.html">QPainter</a> will do a best effort to emulate that feature through other means and pass on an alpha blended <a href="qimage.html">QImage</a> to the engine with the emulated results. Some features cannot be emulated: AlphaBlend and PorterDuff.</p>
96
<p><table border="1" cellpadding="2" cellspacing="1" width="100%">
137
<p><table class="valuelist" border="1" cellpadding="2" cellspacing="1" width="100%">
97
138
<tr><th width="25%">Constant</th><th width="15%">Value</th><th width="60%">Description</th></tr>
98
139
<tr><td valign="top"><tt>QPaintEngine::AlphaBlend</tt></td><td align="center" valign="top"><tt>0x00000080</tt></td><td valign="top">The engine can alpha blend primitives.</td></tr>
99
140
<tr><td valign="top"><tt>QPaintEngine::Antialiasing</tt></td><td align="center" valign="top"><tt>0x00000400</tt></td><td valign="top">The engine can use antialising to improve the appearance of rendered primitives.</td></tr>
117
158
<tr><td valign="top"><tt>QPaintEngine::AllFeatures</tt></td><td align="center" valign="top"><tt>0xffffffff</tt></td><td valign="top">All of the above features. This enum value is usually used as a bit mask.</td></tr>
119
160
<p>The PaintEngineFeatures type is a typedef for <a href="qflags.html">QFlags</a><PaintEngineFeature>. It stores an OR combination of PaintEngineFeature values.</p>
161
<a name="//apple_ref/cpp/tag/QPaintEngine/PolygonDrawMode" />
162
<a name="//apple_ref/cpp/econst/QPaintEngine/OddEvenMode" />
163
<a name="//apple_ref/cpp/econst/QPaintEngine/WindingMode" />
164
<a name="//apple_ref/cpp/econst/QPaintEngine/ConvexMode" />
165
<a name="//apple_ref/cpp/econst/QPaintEngine/PolylineMode" />
120
166
<h3 class="fn"><a name="PolygonDrawMode-enum"></a>enum QPaintEngine::PolygonDrawMode</h3>
121
<p><table border="1" cellpadding="2" cellspacing="1" width="100%">
167
<p><table class="valuelist" border="1" cellpadding="2" cellspacing="1" width="100%">
122
168
<tr><th width="25%">Constant</th><th width="15%">Value</th><th width="60%">Description</th></tr>
123
169
<tr><td valign="top"><tt>QPaintEngine::OddEvenMode</tt></td><td align="center" valign="top"><tt>0</tt></td><td valign="top">The polygon should be drawn using OddEven fill rule.</td></tr>
124
170
<tr><td valign="top"><tt>QPaintEngine::WindingMode</tt></td><td align="center" valign="top"><tt>1</tt></td><td valign="top">The polygon should be drawn using Winding fill rule.</td></tr>
125
171
<tr><td valign="top"><tt>QPaintEngine::ConvexMode</tt></td><td align="center" valign="top"><tt>2</tt></td><td valign="top">The polygon is a convex polygon and can be drawn using specialized algorithms where available.</td></tr>
126
172
<tr><td valign="top"><tt>QPaintEngine::PolylineMode</tt></td><td align="center" valign="top"><tt>3</tt></td><td valign="top">Only the outline of the polygon should be drawn.</td></tr>
174
<a name="//apple_ref/cpp/tag/QPaintEngine/Type" />
175
<a name="//apple_ref/cpp/econst/QPaintEngine/X11" />
176
<a name="//apple_ref/cpp/econst/QPaintEngine/Windows" />
177
<a name="//apple_ref/cpp/econst/QPaintEngine/MacPrinter" />
178
<a name="//apple_ref/cpp/econst/QPaintEngine/CoreGraphics" />
179
<a name="//apple_ref/cpp/econst/QPaintEngine/QuickDraw" />
180
<a name="//apple_ref/cpp/econst/QPaintEngine/QWindowSystem" />
181
<a name="//apple_ref/cpp/econst/QPaintEngine/PostScript" />
182
<a name="//apple_ref/cpp/econst/QPaintEngine/OpenGL" />
183
<a name="//apple_ref/cpp/econst/QPaintEngine/Picture" />
184
<a name="//apple_ref/cpp/econst/QPaintEngine/SVG" />
185
<a name="//apple_ref/cpp/econst/QPaintEngine/Raster" />
186
<a name="//apple_ref/cpp/econst/QPaintEngine/Direct3D" />
187
<a name="//apple_ref/cpp/econst/QPaintEngine/Pdf" />
188
<a name="//apple_ref/cpp/econst/QPaintEngine/OpenVG" />
189
<a name="//apple_ref/cpp/econst/QPaintEngine/User" />
190
<a name="//apple_ref/cpp/econst/QPaintEngine/MaxUser" />
191
<a name="//apple_ref/cpp/econst/QPaintEngine/OpenGL2" />
192
<a name="//apple_ref/cpp/econst/QPaintEngine/PaintBuffer" />
128
193
<h3 class="fn"><a name="Type-enum"></a>enum QPaintEngine::Type</h3>
129
<p><table border="1" cellpadding="2" cellspacing="1" width="100%">
194
<p><table class="valuelist" border="1" cellpadding="2" cellspacing="1" width="100%">
130
195
<tr><th width="25%">Constant</th><th width="15%">Value</th><th width="60%">Description</th></tr>
131
196
<tr><td valign="top"><tt>QPaintEngine::X11</tt></td><td align="center" valign="top"><tt>0</tt></td><td valign="top"> </td></tr>
132
197
<tr><td valign="top"><tt>QPaintEngine::Windows</tt></td><td align="center" valign="top"><tt>1</tt></td><td valign="top"> </td></tr>
144
209
<tr><td valign="top"><tt>QPaintEngine::OpenVG</tt></td><td align="center" valign="top"><tt>13</tt></td><td valign="top"> </td></tr>
145
210
<tr><td valign="top"><tt>QPaintEngine::User</tt></td><td align="center" valign="top"><tt>50</tt></td><td valign="top">First user type ID</td></tr>
146
211
<tr><td valign="top"><tt>QPaintEngine::MaxUser</tt></td><td align="center" valign="top"><tt>100</tt></td><td valign="top">Last user type ID</td></tr>
212
<tr><td valign="top"><tt>QPaintEngine::OpenGL2</tt></td><td align="center" valign="top"><tt>14</tt></td><td valign="top"> </td></tr>
213
<tr><td valign="top"><tt>QPaintEngine::PaintBuffer</tt></td><td align="center" valign="top"><tt>15</tt></td><td valign="top"> </td></tr>
149
216
<h2>Member Function Documentation</h2>
217
<a name="//apple_ref/cpp/instm/QPaintEngine/QPaintEngine" />
150
218
<h3 class="fn"><a name="QPaintEngine"></a>QPaintEngine::QPaintEngine ( <a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeatures</a> <i>caps</i> = 0 )</h3>
151
219
<p>Creates a paint engine with the featureset specified by <i>caps</i>.</p>
220
<a name="//apple_ref/cpp/instm/QPaintEngine/~QPaintEngine" />
152
221
<h3 class="fn"><a name="dtor.QPaintEngine"></a>QPaintEngine::~QPaintEngine () <tt> [virtual]</tt></h3>
153
222
<p>Destroys the paint engine.</p>
223
<a name="//apple_ref/cpp/instm/QPaintEngine/begin" />
154
224
<h3 class="fn"><a name="begin"></a>bool QPaintEngine::begin ( <a href="qpaintdevice.html">QPaintDevice</a> * <i>pdev</i> ) <tt> [pure virtual]</tt></h3>
155
225
<p>Reimplement this function to initialise your paint engine when painting is to start on the paint device <i>pdev</i>. Return true if the initialization was successful; otherwise return false.</p>
156
226
<p>See also <a href="qpaintengine.html#end">end</a>() and <a href="qpaintengine.html#isActive">isActive</a>().</p>
227
<a name="//apple_ref/cpp/instm/QPaintEngine/drawEllipse" />
157
228
<h3 class="fn"><a name="drawEllipse"></a>void QPaintEngine::drawEllipse ( const <a href="qrectf.html">QRectF</a> & <i>rect</i> ) <tt> [virtual]</tt></h3>
158
229
<p>Reimplement this function to draw the largest ellipse that can be contained within rectangle <i>rect</i>.</p>
159
230
<p>The default implementation calls <a href="qpaintengine.html#drawPolygon">drawPolygon</a>().</p>
160
231
<h3 class="fn"><a name="drawEllipse-2"></a>void QPaintEngine::drawEllipse ( const <a href="qrect.html">QRect</a> & <i>rect</i> ) <tt> [virtual]</tt></h3>
161
232
<p>The default implementation of this function calls the floating point version of this function</p>
233
<a name="//apple_ref/cpp/instm/QPaintEngine/drawImage" />
162
234
<h3 class="fn"><a name="drawImage"></a>void QPaintEngine::drawImage ( const <a href="qrectf.html">QRectF</a> & <i>rectangle</i>, const <a href="qimage.html">QImage</a> & <i>image</i>, const <a href="qrectf.html">QRectF</a> & <i>sr</i>, <a href="qt.html#ImageConversionFlag-enum">Qt::ImageConversionFlags</a> <i>flags</i> = Qt::AutoColor ) <tt> [virtual]</tt></h3>
163
235
<p>Reimplement this function to draw the part of the <i>image</i> specified by the <i>sr</i> rectangle in the given <i>rectangle</i> using the given conversion flags <i>flags</i>, to convert it to a pixmap.</p>
236
<a name="//apple_ref/cpp/instm/QPaintEngine/drawLines" />
164
237
<h3 class="fn"><a name="drawLines"></a>void QPaintEngine::drawLines ( const <a href="qlinef.html">QLineF</a> * <i>lines</i>, int <i>lineCount</i> ) <tt> [virtual]</tt></h3>
165
238
<p>The default implementation splits the list of lines in <i>lines</i> into <i>lineCount</i> separate calls to <a href="qpaintengine.html#drawPath">drawPath</a>() or <a href="qpaintengine.html#drawPolygon">drawPolygon</a>() depending on the feature set of the paint engine.</p>
166
239
<h3 class="fn"><a name="drawLines-2"></a>void QPaintEngine::drawLines ( const <a href="qline.html">QLine</a> * <i>lines</i>, int <i>lineCount</i> ) <tt> [virtual]</tt></h3>
167
240
<p>This is an overloaded function.</p>
168
241
<p>The default implementation converts the first <i>lineCount</i> lines in <i>lines</i> to a <a href="qlinef.html">QLineF</a> and calls the floating point version of this function.</p>
242
<a name="//apple_ref/cpp/instm/QPaintEngine/drawPath" />
169
243
<h3 class="fn"><a name="drawPath"></a>void QPaintEngine::drawPath ( const <a href="qpainterpath.html">QPainterPath</a> & <i>path</i> ) <tt> [virtual]</tt></h3>
170
244
<p>The default implementation ignores the <i>path</i> and does nothing.</p>
245
<a name="//apple_ref/cpp/instm/QPaintEngine/drawPixmap" />
171
246
<h3 class="fn"><a name="drawPixmap"></a>void QPaintEngine::drawPixmap ( const <a href="qrectf.html">QRectF</a> & <i>r</i>, const <a href="qpixmap.html">QPixmap</a> & <i>pm</i>, const <a href="qrectf.html">QRectF</a> & <i>sr</i> ) <tt> [pure virtual]</tt></h3>
172
247
<p>Reimplement this function to draw the part of the <i>pm</i> specified by the <i>sr</i> rectangle in the given <i>r</i>.</p>
248
<a name="//apple_ref/cpp/instm/QPaintEngine/drawPoints" />
173
249
<h3 class="fn"><a name="drawPoints"></a>void QPaintEngine::drawPoints ( const <a href="qpointf.html">QPointF</a> * <i>points</i>, int <i>pointCount</i> ) <tt> [virtual]</tt></h3>
174
250
<p>Draws the first <i>pointCount</i> points in the buffer <i>points</i></p>
175
251
<h3 class="fn"><a name="drawPoints-2"></a>void QPaintEngine::drawPoints ( const <a href="qpoint.html">QPoint</a> * <i>points</i>, int <i>pointCount</i> ) <tt> [virtual]</tt></h3>
176
252
<p>Draws the first <i>pointCount</i> points in the buffer <i>points</i></p>
177
253
<p>The default implementation converts the first <i>pointCount</i> QPoints in <i>points</i> to QPointFs and calls the floating point version of drawPoints.</p>
254
<a name="//apple_ref/cpp/instm/QPaintEngine/drawPolygon" />
178
255
<h3 class="fn"><a name="drawPolygon"></a>void QPaintEngine::drawPolygon ( const <a href="qpointf.html">QPointF</a> * <i>points</i>, int <i>pointCount</i>, <a href="qpaintengine.html#PolygonDrawMode-enum">PolygonDrawMode</a> <i>mode</i> ) <tt> [virtual]</tt></h3>
179
256
<p>Reimplement this virtual function to draw the polygon defined by the <i>pointCount</i> first points in <i>points</i>, using mode <i>mode</i>.</p>
180
257
<p><b>Note:</b> At least one of the drawPolygon() functions must be reimplemented.</p>
182
259
<p>This is an overloaded function.</p>
183
260
<p>Reimplement this virtual function to draw the polygon defined by the <i>pointCount</i> first points in <i>points</i>, using mode <i>mode</i>.</p>
184
261
<p><b>Note:</b> At least one of the <a href="qpaintengine.html#drawPolygon">drawPolygon</a>() functions must be reimplemented.</p>
262
<a name="//apple_ref/cpp/instm/QPaintEngine/drawRects" />
185
263
<h3 class="fn"><a name="drawRects"></a>void QPaintEngine::drawRects ( const <a href="qrectf.html">QRectF</a> * <i>rects</i>, int <i>rectCount</i> ) <tt> [virtual]</tt></h3>
186
264
<p>Draws the first <i>rectCount</i> rectangles in the buffer <i>rects</i>. The default implementation of this function calls <a href="qpaintengine.html#drawPath">drawPath</a>() or <a href="qpaintengine.html#drawPolygon">drawPolygon</a>() depending on the feature set of the paint engine.</p>
187
265
<h3 class="fn"><a name="drawRects-2"></a>void QPaintEngine::drawRects ( const <a href="qrect.html">QRect</a> * <i>rects</i>, int <i>rectCount</i> ) <tt> [virtual]</tt></h3>
188
266
<p>This is an overloaded function.</p>
189
267
<p>The default implementation converts the first <i>rectCount</i> rectangles in the buffer <i>rects</i> to a <a href="qrectf.html">QRectF</a> and calls the floating point version of this function.</p>
268
<a name="//apple_ref/cpp/instm/QPaintEngine/drawTextItem" />
190
269
<h3 class="fn"><a name="drawTextItem"></a>void QPaintEngine::drawTextItem ( const <a href="qpointf.html">QPointF</a> & <i>p</i>, const <a href="qtextitem.html">QTextItem</a> & <i>textItem</i> ) <tt> [virtual]</tt></h3>
191
270
<p>This function draws the text item <i>textItem</i> at position <i>p</i>. The default implementation of this function converts the text to a <a href="qpainterpath.html">QPainterPath</a> and paints the resulting path.</p>
271
<a name="//apple_ref/cpp/instm/QPaintEngine/drawTiledPixmap" />
192
272
<h3 class="fn"><a name="drawTiledPixmap"></a>void QPaintEngine::drawTiledPixmap ( const <a href="qrectf.html">QRectF</a> & <i>rect</i>, const <a href="qpixmap.html">QPixmap</a> & <i>pixmap</i>, const <a href="qpointf.html">QPointF</a> & <i>p</i> ) <tt> [virtual]</tt></h3>
193
273
<p>Reimplement this function to draw the <i>pixmap</i> in the given <i>rect</i>, starting at the given <i>p</i>. The pixmap will be drawn repeatedly until the <i>rect</i> is filled.</p>
274
<a name="//apple_ref/cpp/instm/QPaintEngine/end" />
194
275
<h3 class="fn"><a name="end"></a>bool QPaintEngine::end () <tt> [pure virtual]</tt></h3>
195
276
<p>Reimplement this function to finish painting on the current paint device. Return true if painting was finished successfully; otherwise return false.</p>
196
277
<p>See also <a href="qpaintengine.html#begin">begin</a>() and <a href="qpaintengine.html#isActive">isActive</a>().</p>
278
<a name="//apple_ref/cpp/instm/QPaintEngine/hasFeature" />
197
279
<h3 class="fn"><a name="hasFeature"></a>bool QPaintEngine::hasFeature ( <a href="qpaintengine.html#PaintEngineFeature-enum">PaintEngineFeatures</a> <i>feature</i> ) const</h3>
198
280
<p>Returns true if the paint engine supports the specified <i>feature</i>; otherwise returns false.</p>
281
<a name="//apple_ref/cpp/instm/QPaintEngine/isActive" />
199
282
<h3 class="fn"><a name="isActive"></a>bool QPaintEngine::isActive () const</h3>
200
283
<p>Returns true if the paint engine is actively drawing; otherwise returns false.</p>
201
284
<p>See also <a href="qpaintengine.html#setActive">setActive</a>().</p>
285
<a name="//apple_ref/cpp/instm/QPaintEngine/paintDevice" />
202
286
<h3 class="fn"><a name="paintDevice"></a><a href="qpaintdevice.html">QPaintDevice</a> * QPaintEngine::paintDevice () const</h3>
203
287
<p>Returns the device that this engine is painting on, if painting is active; otherwise returns 0.</p>
288
<a name="//apple_ref/cpp/instm/QPaintEngine/painter" />
204
289
<h3 class="fn"><a name="painter"></a><a href="qpainter.html">QPainter</a> * QPaintEngine::painter () const</h3>
205
290
<p>Returns the paint engine's painter.</p>
291
<a name="//apple_ref/cpp/instm/QPaintEngine/setActive" />
206
292
<h3 class="fn"><a name="setActive"></a>void QPaintEngine::setActive ( bool <i>state</i> )</h3>
207
293
<p>Sets the active state of the paint engine to <i>state</i>.</p>
208
294
<p>See also <a href="qpaintengine.html#isActive">isActive</a>().</p>
295
<a name="//apple_ref/cpp/instm/QPaintEngine/type" />
209
296
<h3 class="fn"><a name="type"></a><a href="qpaintengine.html#Type-enum">Type</a> QPaintEngine::type () const <tt> [pure virtual]</tt></h3>
210
297
<p>Reimplement this function to return the paint engine <a href="qpaintengine.html#Type-enum">Type</a>.</p>
298
<a name="//apple_ref/cpp/instm/QPaintEngine/updateState" />
211
299
<h3 class="fn"><a name="updateState"></a>void QPaintEngine::updateState ( const <a href="qpaintenginestate.html">QPaintEngineState</a> & <i>state</i> ) <tt> [pure virtual]</tt></h3>
212
300
<p>Reimplement this function to update the state of a paint engine.</p>
213
301
<p>When implemented, this function is responsible for checking the paint engine's current <i>state</i> and update the properties that are changed. Use the <a href="qpaintenginestate.html#state">QPaintEngineState::state</a>() function to find out which properties that must be updated, then use the corresponding <a href="qpaintenginestate.html#getfunction">get function</a> to retrieve the current values for the given properties.</p>
214
302
<p>See also <a href="qpaintenginestate.html">QPaintEngineState</a>.</p>
215
303
<p /><address><hr /><div align="center">
216
304
<table width="100%" cellspacing="0" border="0"><tr class="address">
217
<td width="30%" align="left">Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies)</td>
218
<td width="40%" align="center"><a href="trademarks.html">Trademarks</a></td>
219
<td width="30%" align="right"><div align="right">Qt 4.5.2</div></td>
220
</tr></table></div></address></body>
305
<td width="40%" align="left">Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies)</td>
306
<td width="20%" align="center"><a href="trademarks.html">Trademarks</a></td>
307
<td width="40%" align="right"><div align="right">Qt 4.6.0</div></td>
308
<script type="text/javascript" src="http://www.google.com/jsapi"></script><script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script><script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse-search-box&t13n_langs=en"></script><script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&lang=en"></script></tr></table></div></address></body>