Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_kra_loader.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 * SPDX-FileCopyrightText: 2007 Boudewijn Rempt <boud@valdyas.org>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6#ifndef KIS_KRA_LOADER_H
7#define KIS_KRA_LOADER_H
8
9
10#include <QStringList>
11#include <QString>
12#include "QDomDocument"
13
14class KoStore;
15
16class KisDocument;
17class KoColorSpace;
20class QVersionNumber;
21
22#include <kis_types.h>
23#include "kritalibkra_export.h"
24#include "KoColor.h"
25
31class KRITALIBKRA_EXPORT KisKraLoader
32{
33
34public:
35
36 KisKraLoader(KisDocument * document, int syntaxVersion, const QVersionNumber &kritaVersion);
37
39
44 KisImageSP loadXML(const QDomElement& imageElement);
45
46 void loadBinaryData(KoStore* store, KisImageSP image, const QString & uri, bool external);
47
48 void loadResources(KoStore *store, KisDocument *doc);
49 void loadStoryboards(KoStore *store, KisDocument *doc);
50 void loadAnimationMetadata(KoStore *store, KisImageSP image);
51 void loadAudio(KoStore *store, KisDocument *kisDoc);
52 Q_DECL_DEPRECATED void backCompat_loadAudio(const QDomElement &elem, KisImageSP image, KisDocument *document);
53
54 vKisNodeSP selectedNodes() const;
55
56 // it's neater to follow the same design as with selectedNodes, so let's have a getter here
57 QList<KisPaintingAssistantSP> assistants() const;
58
59 StoryboardItemList storyboardItemList() const;
60
61 StoryboardCommentList storyboardCommentList() const;
62
64 QStringList errorMessages() const;
65
67 QStringList warningMessages() const;
68
73 QString imageName() const;
74
75private:
76
77 // this needs to be private, for neatness sake
78 void loadAssistants(KoStore* store, const QString & uri, bool external);
79
80 void loadAnimationMetadataFromXML(const QDomElement& element, KisImageSP image);
81
82 KisNodeSP loadNodes(const QDomElement& element, KisImageSP image, KisNodeSP parent);
83
84 KisNodeSP loadNode(const QDomElement& elem, KisImageSP image);
85
86 KisNodeSP loadPaintLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
87
88 KisNodeSP loadGroupLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
89
90 KisNodeSP loadAdjustmentLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
91
92 KisNodeSP loadShapeLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
93
94 KisNodeSP loadGeneratorLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
95
96 KisNodeSP loadCloneLayer(const QDomElement& elem, KisImageSP image, const QString& name, const KoColorSpace* cs, quint32 opacity);
97
98 KisNodeSP loadFilterMask(KisImageSP image, const QDomElement& elem);
99
100 KisNodeSP loadTransformMask(KisImageSP image, const QDomElement& elem);
101
102 KisNodeSP loadTransparencyMask(KisImageSP image, const QDomElement& elem);
103
104 KisNodeSP loadSelectionMask(KisImageSP image, const QDomElement& elem);
105
106 KisNodeSP loadColorizeMask(KisImageSP image, const QDomElement& elem, const KoColorSpace *colorSpace);
107
108 KisNodeSP loadFileLayer(const QDomElement& elem, KisImageSP image, const QString& name, quint32 opacity, const KoColorSpace *fallbackColorSpace);
109
110 KisNodeSP loadReferenceImagesLayer(const QDomElement& elem, KisImageSP image);
111
112 void loadNodeKeyframes(KoStore *store, const QString &location, KisNodeSP node);
113
114 void loadCompositions(const QDomElement& elem, KisImageSP image);
115
116 void loadAssistantsList(const QDomElement& elem);
117 void loadGrid(const QDomElement& elem);
118 void loadGuides(const QDomElement& elem);
119 void loadMirrorAxis(const QDomElement& elem);
120 void loadStoryboardItemList(const QDomElement& elem);
121 void loadStoryboardCommentList(const QDomElement& elem);
122 void loadAudioXML(QDomDocument& xmlDoc, QDomElement &xmlElement, KisDocument* kisDoc);
123 QList<KoColor> loadKoColors(const QDomElement& elem) const;
124private:
125
126 struct Private;
127 Private * const m_d;
128
129};
130
131#endif
void loadNodeKeyframes(KoStore *store, const QString &location, KisNodeSP node)
Private *const m_d