Krita Source Code Documentation
Loading...
Searching...
No Matches
KoShapePainter.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 *
3 * SPDX-FileCopyrightText: 2007 Jan Hambrecht <jaham@gmx.net>
4 *
5 * SPDX-License-Identifier: LGPL-2.0-or-later
6 */
7
8#ifndef KOSHAPEPAINTER_H
9#define KOSHAPEPAINTER_H
10
11#include <QList>
12#include <QRectF>
13#include <QScopedPointer>
14#include "kritaflake_export.h"
15
16class KoShape;
17class QPainter;
18class QImage;
19class KoShapeManager;
20
27class KRITAFLAKE_EXPORT KoShapePainter
28{
29public:
30 explicit KoShapePainter();
32
37 void setShapes(const QList<KoShape*> &shapes);
38
44 void paint(QPainter &painter);
45
54 void paint(QPainter &painter, const QRect &painterRect, const QRectF &documentRect);
55
61 void paint(QImage &image);
62
64 QRectF contentRect() const;
65
71 KoShapeManager *internalShapeManager() const;
72
73 void setUpdateFunction(std::function<void(const QRectF&)> function);
74
75private:
76 class Private;
77 QScopedPointer<Private> d;
78};
79
80#endif // KOSHAPEPAINTER_H
QScopedPointer< Private > d