Krita Source Code Documentation
Loading...
Searching...
No Matches
KoFilterEffectStack.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 * SPDX-FileCopyrightText: 2009 Jan Hambrecht <jaham@gmx.net>
3 *
4 * SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6
7#ifndef KOFILTEREFFECTSTACK
8#define KOFILTEREFFECTSTACK
9
10#include "kritaflake_export.h"
11
12#include <QList>
13
14class KoFilterEffect;
15class KoXmlWriter;
16
17class QRectF;
18
20class KRITAFLAKE_EXPORT KoFilterEffectStack
21{
22public:
25
28
35
40 bool isEmpty() const;
41
50 void insertFilterEffect(int index, KoFilterEffect *filter);
51
59 void appendFilterEffect(KoFilterEffect *filter);
60
68 void removeFilterEffect(int index);
69
75 KoFilterEffect* takeFilterEffect(int index);
76
78 void setClipRect(const QRectF &clipRect);
79
81 QRectF clipRect() const;
82
84 QRectF clipRectForBoundingRect(const QRectF &boundingRect) const;
85
90 bool ref();
91
96 bool deref();
97
99 int useCount() const;
100
106 void save(KoXmlWriter &writer, const QString &filterId);
107
109 QSet<QString> requiredStandardsInputs() const;
110private:
111 class Private;
112 Private * const d;
113};
114
115#endif // KOFILTEREFFECTSTACK
This class manages a stack of filter effects.
QList< KoFilterEffect * > filterEffects() const
QRectF clipRect() const
Returns the clipping rectangle used for this filter in bounding box units.