Krita Source Code Documentation
Loading...
Searching...
No Matches
KisSaveGroupVisitor.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 Boudewijn Rempt <boud@valdyas.org>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef KISSAVEGROUPVISITOR_H
7#define KISSAVEGROUPVISITOR_H
8
9#include "kritaui_export.h"
10
11#include <QUrl>
12#include <QString>
13
14#include <kis_types.h>
15#include <kis_node_visitor.h>
16#include <kis_layer.h>
17#include <kis_group_layer.h>
18#include <kis_node.h>
19#include <kis_image.h>
20
21
26class KRITAUI_EXPORT KisSaveGroupVisitor : public KisNodeVisitor
27{
28public:
29
44 bool saveInvisible,
45 bool saveTopLevelOnly,
46 const QString &path,
47 const QString &baseName,
48 const QString &extension,
49 const QString &mimeFilter);
50
51 ~KisSaveGroupVisitor() override;
52
53public:
54
55 bool visit(KisNode* ) override;
56
57 bool visit(KisPaintLayer *) override;
58
59 bool visit(KisAdjustmentLayer *) override;
60
61 bool visit(KisExternalLayer *) override;
62
63 bool visit(KisCloneLayer *) override;
64
65 bool visit(KisFilterMask *) override;
66
67 bool visit(KisTransformMask *) override;
68
69 bool visit(KisTransparencyMask *) override;
70
71 bool visit(KisGeneratorLayer * ) override;
72
73 bool visit(KisSelectionMask* ) override;
74
75 bool visit(KisColorizeMask* ) override;
76
77 bool visit(KisGroupLayer *layer) override;
78
79private:
80
84 QString m_path;
85 QString m_baseName;
86 QString m_extension;
87 QString m_mimeFilter;
88};
89
90
91#endif // KISSAVEGROUPVISITOR_H
virtual bool visit(KisNode *node)=0
The KisSaveGroupVisitor class saves the groups in a Krita image to separate images.