Krita Source Code Documentation
Loading...
Searching...
No Matches
KoColorDisplayRendererInterface.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2014 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6
8
9#include <QGlobalStatic>
10
12#include <KoChannelInfo.h>
14#include <KoColorSpace.h>
15
17
21
25
26QImage KoDumbColorDisplayRenderer::toQImage(const KoColorSpace *srcColorSpace, const quint8 *data, QSize size, bool proofPaintColors) const
27{
28 Q_UNUSED(proofPaintColors); // dumb converter doesn't know a painting color space
29 return srcColorSpace->convertToQImage(data, size.width(), size.height(), 0,
32}
33
34QColor KoDumbColorDisplayRenderer::toQColor(const KoColor &c, bool proofToPaintColors) const
35{
36 Q_UNUSED(proofToPaintColors);
37 return c.toQColor();
38}
39
41{
42 KoColor color;
43 color.fromQColor(c);
44 return color;
45}
46
47KoColor KoDumbColorDisplayRenderer::fromHsv(int h, int s, int v, int a) const
48{
49 h = qBound(0, h, 359);
50 s = qBound(0, s, 255);
51 v = qBound(0, v, 255);
52 a = qBound(0, a, 255);
53 QColor qcolor(QColor::fromHsv(h, s, v, a));
54 return KoColor(qcolor, KoColorSpaceRegistry::instance()->rgb8());
55}
56
57void KoDumbColorDisplayRenderer::getHsv(const KoColor &srcColor, int *h, int *s, int *v, int *a) const
58{
59 QColor qcolor = toQColor(srcColor);
60 qcolor.getHsv(h, s, v, a);
61}
62
67
69{
70 Q_ASSERT(chaninfo);
71 return chaninfo->getUIMin();
72}
73
75{
76 Q_ASSERT(chaninfo);
77 return chaninfo->getUIMax();
78}
79
qreal v
Q_GLOBAL_STATIC(KisStoragePluginRegistry, s_instance)
double getUIMin(void) const
double getUIMax(void) const
virtual QImage convertToQImage(const quint8 *data, qint32 width, qint32 height, const KoColorProfile *dstProfile, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const
void fromQColor(const QColor &c)
Convenient function for converting from a QColor.
Definition KoColor.cpp:213
void toQColor(QColor *c) const
a convenience method for the above.
Definition KoColor.cpp:198
KoColor approximateFromRenderedQColor(const QColor &c) const override
QImage toQImage(const KoColorSpace *srcColorSpace, const quint8 *data, QSize size, bool proofPaintColors=false) const override
Convert a consecutive block of pixel data to an ARGB32 QImage.
qreal maxVisibleFloatValue(const KoChannelInfo *chaninfo) const override
void getHsv(const KoColor &srcColor, int *h, int *s, int *v, int *a=0) const override
QColor toQColor(const KoColor &c, bool proofToPaintColors=false) const override
qreal minVisibleFloatValue(const KoChannelInfo *chaninfo) const override
KoColor fromHsv(int h, int s, int v, int a=255) const override
static KoColorDisplayRendererInterface * instance()
const KoColorSpace * getPaintingColorSpace() const override
getColorSpace
static KoColorSpaceRegistry * instance()
const KoColorSpace * rgb8(const QString &profileName=QString())