Krita Source Code Documentation
Loading...
Searching...
No Matches
KoPattern.h
Go to the documentation of this file.
1/*
2 SPDX-FileCopyrightText: 2000 Matthias Elter <elter@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6#ifndef KOPATTERN_H
7#define KOPATTERN_H
8
9#include <KoResource.h>
10#include <kritapigment_export.h>
11
12#include <QMetaType>
13#include <QSharedPointer>
14
15class KoPattern;
17
18
20class KRITAPIGMENT_EXPORT KoPattern : public KoResource
21{
22public:
23
30 explicit KoPattern(const QString &filename);
31
39 KoPattern(const QImage &image, const QString &name, const QString &filename);
40 ~KoPattern() override;
41
42 KoPattern(const KoPattern &rhs);
43 KoPattern& operator=(const KoPattern& rhs) = delete;
44 KoResourceSP clone() const override;
45
46
47public:
48
49 bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface) override;
50 bool saveToDevice(QIODevice* dev) const override;
51
52 bool loadPatFromDevice(QIODevice *dev);
53 bool savePatToDevice(QIODevice* dev) const;
54
55 qint32 width() const;
56 qint32 height() const;
57
58 QString defaultFileExtension() const override;
59
60 QPair<QString, QString> resourceType() const override {
61 return QPair<QString, QString>(ResourceType::Patterns, "");
62 }
63
68 QImage pattern() const;
69
70 bool hasAlpha() const;
71
80 KoPatternSP cloneWithoutAlpha() const;
81
82private:
83
84 void setPatternImage(const QImage& image);
85 void checkForAlpha(const QImage& image);
86
87private:
88 QImage m_pattern;
89 bool m_hasAlpha = false;
90};
91
93
95
96#endif // KOPATTERN_H
97
QSharedPointer< KoPattern > KoPatternSP
Definition KoPattern.h:16
Write API docs here.
Definition KoPattern.h:21
QPair< QString, QString > resourceType() const override
Definition KoPattern.h:60
KoPattern & operator=(const KoPattern &rhs)=delete
QImage m_pattern
Definition KoPattern.h:88
Q_DECLARE_METATYPE(KisPaintopLodLimitations)
const QString Patterns
virtual KoResourceSP clone() const =0
virtual QString defaultFileExtension() const
virtual bool saveToDevice(QIODevice *dev) const
virtual bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface)=0