Krita

Resource.cpp
1/*
2 * SPDX-FileCopyrightText: 2016 Boudewijn Rempt <boud@valdyas.org>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6#include "Resource.h"
7#include <KoResource.h>
8#include <QBuffer>
9
10#include <KoPattern.h>
11#include <KoAbstractGradient.h>
12#include <kis_brush.h>
13#include <kis_paintop_preset.h>
14#include <KoColorSet.h>
15#include <kis_workspace_resource.h>
16#include <KisResourceLocator.h>
17
18struct Resource::Private {
19 Private() {}
20
21 int id {-1};
22 QString type;
23 QString name;
24 QString filename;
25 QImage image;
26};
27
28Resource::Resource(int resourceId, const QString &type, const QString &name, const QString &filename, const QImage &image, QObject *parent)
29 : QObject(parent)
30 , d(new Private())
31{
32 d->id = resourceId;
33 d->type = type;
34 d->name = name;
35 d->filename = filename;
36 d->image = image;
37}
38
39Resource::Resource(KoResourceSP resource, const QString &type, QObject *parent)
40 : QObject(parent)
41 , d(new Private())
42{
43 d->id = resource->resourceId();
44 d->type = type;
45 d->name = resource->name();
46 d->filename = resource->filename();
47 d->image = resource->image();
48}
49
50Resource::~Resource()
51{
52}
53
54Resource::Resource(const Resource &rhs)
55 : QObject()
56 , d(new Private())
57{
58 d->id = rhs.d->id;
59 d->type = rhs.d->type;
60 d->name = rhs.d->name;
61 d->filename = rhs.d->filename;
62 d->image = rhs.d->image;
63}
64
65bool Resource::operator==(const Resource &other) const
66{
67 return (d->id == other.d->id);
68}
69
70bool Resource::operator!=(const Resource &other) const
71{
72 return !(operator==(other));
73}
74
75Resource Resource::operator=(const Resource &rhs)
76{
77 Resource res(rhs.d->id,
78 rhs.d->type,
79 rhs.d->name,
80 rhs.d->filename,
81 rhs.d->image);
82 return res;
83}
84
86{
87 return d->type;
88}
89
91{
92 return d->name;
93}
94
96{
97 d->name = value;
98}
99
101{
102 return d->filename;
103}
104
105
107{
108 return d->image;
109}
110
112{
113 d->image = image;
114}
115
116KoResourceSP Resource::resource() const
117{
118 KoResourceSP res = KisResourceLocator::instance()->resourceForId(d->id);
119 Q_ASSERT(res);
120 return res;
121}
122
123
124
125
126
127
A Resource represents a gradient, pattern, brush tip, brush preset, palette or workspace definition.
Definition Resource.h:31
QString name() const
The user-visible name of the resource.
Definition Resource.cpp:90
void setName(QString value)
setName changes the user-visible name of the current resource.
Definition Resource.cpp:95
QString type() const
Return the type of this resource.
Definition Resource.cpp:85
QImage image() const
An image that can be used to represent the resource in the user interface.
Definition Resource.cpp:106
QString filename() const
The filename of the resource, if present.
Definition Resource.cpp:100
void setImage(QImage image)
Change the image for this resource.
Definition Resource.cpp:111
Type type(const QSqlDatabase &db)
QString name(StandardAction id)
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 12:05:08 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.