81 static void copyAreaOptimized(
const QPoint &dstPt,
84 const QRect &originalSrcRect);
86 static void copyAreaOptimizedOldData(
const QPoint &dstPt,
89 const QRect &originalSrcRect);
91 static void copyAreaOptimized(
const QPoint &dstPt,
94 const QRect &originalSrcRect,
125 void setProgress(
KoUpdater * progressUpdater);
131 void revertTransaction();
151 void deleteTransaction();
181 void bitBlt(qint32 dstX, qint32 dstY,
183 qint32 srcX, qint32 srcY,
184 qint32 srcWidth, qint32 srcHeight);
195 void bitBlt(
const QPoint & pos,
const KisPaintDeviceSP srcDev,
const QRect & srcRect);
208 void bitBltOldData(qint32 dstX, qint32 dstY,
210 qint32 srcX, qint32 srcY,
211 qint32 srcWidth, qint32 srcHeight);
222 void bitBltOldData(
const QPoint & pos,
const KisPaintDeviceSP srcDev,
const QRect & srcRect);
251 void bitBltWithFixedSelection(qint32 dstX, qint32 dstY,
254 qint32 selX, qint32 selY,
255 qint32 srcX, qint32 srcY,
256 qint32 srcWidth, qint32 srcHeight);
270 void bitBltWithFixedSelection(qint32 dstX, qint32 dstY,
273 qint32 srcWidth, qint32 srcHeight);
290 void bltFixed(qint32 dstX, qint32 dstY,
292 qint32 srcX, qint32 srcY,
293 qint32 srcWidth, qint32 srcHeight);
342 void bltFixedWithFixedSelection(qint32 dstX, qint32 dstY,
345 qint32 selX, qint32 selY,
346 qint32 srcX, qint32 srcY,
347 quint32 srcWidth, quint32 srcHeight);
361 void bltFixedWithFixedSelection(qint32 dstX, qint32 dstY,
364 quint32 srcWidth, quint32 srcHeight);
377 void fill(qint32 x, qint32 y, qint32 width, qint32 height,
const KoColor& color);
434 bool hasDirtyRegion()
const;
445 void paintPolyline(
const QVector <QPointF> &points,
446 int index = 0,
int numPoints = -1);
467 const QPointF &control1,
468 const QPointF &control2,
477 const QPointF &control1,
478 const QPointF &control2,
486 void paintRect(
const QRectF &
rect);
496 void paintRect(
const qreal x,
506 void paintEllipse(
const QRectF &
rect);
516 void paintEllipse(
const qreal x,
525 void paintPolygon(
const vQPointF& points);
534 void paintPainterPath(
const QPainterPath& path);
540 void fillPainterPath(
const QPainterPath& path);
548 void fillPainterPath(
const QPainterPath& path,
const QRect &requestedRect);
555 void drawPainterPath(
const QPainterPath& path,
const QPen& pen,
const QRect &requestedRect);
558 void drawPainterPath(
const QPainterPath& path,
const QPen& pen);
565 void drawLine(
const QPointF & start,
const QPointF & end);
571 void drawLine(
const QPointF &start,
const QPointF &end, qreal width,
bool antialias);
579 void drawDDALine(
const QPointF & start,
const QPointF & end);
586 void drawWobblyLine(
const QPointF & start,
const QPointF & end);
592 void drawWuLine(
const QPointF & start,
const QPointF & end);
601 void drawThickLine(
const QPointF & start,
const QPointF & end,
int startWidth,
int endWidth);
615 void setChannelFlags(QBitArray channelFlags);
618 QBitArray channelFlags();
637 void setMirrorInformation(
const QPointF &axesCenter,
bool mirrorHorizontally,
bool mirrorVertically);
639 void copyMirrorInformationFrom(
const KisPainter *other);
645 bool hasMirroring()
const;
650 bool hasHorizontalMirroring()
const;
655 bool hasVerticalMirroring()
const;
661 void mirrorRect(Qt::Orientation direction, QRect *rc)
const;
667 void mirrorDab(Qt::Orientation direction,
KisRenderedDab *dab,
bool skipMirrorPixels =
false)
const;
697 void setPaintColor(
const KoColor& color);
706 void setBackgroundColor(
const KoColor& color);
733 void setPatternTransform(QTransform transform);
739 void setAntiAliasPolygonFill(
bool antiAliasPolygonFill);
756 void setFlow(qreal flow);
765 void setOpacityUpdateAverage(qreal opacity);
770 void setAverageOpacity(qreal averageOpacity);
775 static qreal blendAverageOpacity(qreal opacity, qreal averageOpacity);
778 void setOpacityU8(quint8 opacity);
779 void setOpacityF(qreal opacity);
782 qreal opacityF()
const;
785 void setOpacityToUnit();
797 void setCompositeOpId(
const QString& op);
802 void addDirtyRect(
const QRect &r);
829 void setMaskImageSize(qint32 width, qint32 height);
846 void setColorConversionFlags(KoColorConversionTransformation::ConversionFlags conversionFlags);
888 template <
bool useOldSrcData>
889 void bitBltImpl(qint32 dstX, qint32 dstY,
891 qint32 srcX, qint32 srcY,
892 qint32 srcWidth, qint32 srcHeight);
894 inline void compositeOnePixel(quint8 *dst,
const KoColor &color);