Krita Source Code Documentation
Loading...
Searching...
No Matches
KisGradientMapFilterConfiguration.h
Go to the documentation of this file.
1/*
2 * This file is part of the KDE project
3 *
4 * SPDX-FileCopyrightText: 2016 Spencer Brown <sbrown655@gmail.com>
5 * SPDX-FileCopyrightText: 2020 Deif Lou <ginoba@gmail.com>
6 *
7 * SPDX-License-Identifier: GPL-2.0-or-later
8 */
9
10#ifndef KIS_GRADIENT_MAP_FILTER_CONFIGURATION_H
11#define KIS_GRADIENT_MAP_FILTER_CONFIGURATION_H
12
17#include <KoAbstractGradient.h>
18#include <KoStopGradient.h>
19
20
23
25{
26public:
33
37
38 virtual KisFilterConfigurationSP clone() const override;
39
40 QList<KoResourceLoadResult> linkedResources(KisResourcesInterfaceSP globalResourcesInterface) const override;
41 QList<KoResourceLoadResult> embeddedResources(KisResourcesInterfaceSP globalResourcesInterface) const override;
42
43 static inline QString defaultName()
44 {
45 return "gradientmap";
46 }
47
48 static constexpr qint32 defaultVersion()
49 {
50 return 2;
51 }
52
54 {
56 KoAbstractGradientSP resourceGradient = resourcesInterface->source<KoAbstractGradient>(ResourceType::Gradients).fallbackResource();
57 if (resourceGradient) {
58 gradient = resourceGradient->clone().dynamicCast<KoAbstractGradient>();
59 } else {
60 KoStopGradientSP stopGradient(new KoStopGradient);
61 stopGradient->setStops(
65 );
66 gradient = stopGradient.staticCast<KoAbstractGradient>();
67 }
68 if (gradient) {
69 gradient->setName(i18nc("Default gradient name for the gradient generator", "Unnamed"));
70 gradient->setValid(true);
71 }
72 return gradient;
73 }
74
75 static constexpr int defaultColorMode()
76 {
77 return ColorMode_Blend;
78 }
79
80 KoAbstractGradientSP gradient(KoAbstractGradientSP fallbackGradient = nullptr) const;
81 int colorMode() const;
82
83 void setGradient(KoAbstractGradientSP newGradient);
84 void setColorMode(int newColorMode);
85 void setDefaults();
86};
87
88#endif
KisPinnedSharedPtr< KisGradientMapFilterConfiguration > KisGradientMapFilterConfigurationSP
@ FOREGROUNDSTOP
@ BACKGROUNDSTOP
virtual KisFilterConfigurationSP clone() const override
QList< KoResourceLoadResult > linkedResources(KisResourcesInterfaceSP globalResourcesInterface) const override
KoAbstractGradientSP gradient(KoAbstractGradientSP fallbackGradient=nullptr) const
QList< KoResourceLoadResult > embeddedResources(KisResourcesInterfaceSP globalResourcesInterface) const override
KisGradientMapFilterConfiguration(KisResourcesInterfaceSP resourcesInterface)
void setGradient(KoAbstractGradientSP newGradient)
static KoAbstractGradientSP defaultGradient(KisResourcesInterfaceSP resourcesInterface)
const QString Gradients
KisResourcesInterfaceSP resourcesInterface
static KoColorSpaceRegistry * instance()