Krita Source Code Documentation
Loading...
Searching...
No Matches
KisTextureOptionData.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
7
10
12{
13 textureData.read(setting);
14
15 isEnabled = setting->getBool("Texture/Pattern/Enabled", false);
16 scale = setting->getDouble("Texture/Pattern/Scale", 1.0);
17 brightness = setting->getDouble("Texture/Pattern/Brightness");
18 contrast = setting->getDouble("Texture/Pattern/Contrast", 1.0);
19 neutralPoint = setting->getDouble("Texture/Pattern/NeutralPoint", 0.5);
20 offsetX = setting->getInt("Texture/Pattern/OffsetX");
21 offsetY = setting->getInt("Texture/Pattern/OffsetY");
22 isRandomOffsetX = setting->getBool("Texture/Pattern/isRandomOffsetX");
23 isRandomOffsetY = setting->getBool("Texture/Pattern/isRandomOffsetY");
24 maximumOffsetX = setting->getInt("Texture/Pattern/MaximumOffsetX");
25 maximumOffsetY = setting->getInt("Texture/Pattern/MaximumOffsetY");
26 texturingMode = static_cast<TexturingMode>(setting->getInt("Texture/Pattern/TexturingMode", MULTIPLY));
27 useSoftTexturing = setting->getBool("Texture/Pattern/UseSoftTexturing");
28 cutOffPolicy = setting->getInt("Texture/Pattern/CutoffPolicy");
29 cutOffLeft = setting->getInt("Texture/Pattern/CutoffLeft", 0);
30 cutOffRight = setting->getInt("Texture/Pattern/CutoffRight", 255);
31 invert = setting->getBool("Texture/Pattern/Invert");
32 autoInvertOnErase = setting->getBool("Texture/Pattern/AutoInvertOnErase");
33
34 return true;
35}
36
38{
39 if (!isEnabled) return;
40
41 textureData.write(setting);
42 setting->setProperty("Texture/Pattern/Enabled", isEnabled);
43 setting->setProperty("Texture/Pattern/Scale", scale);
44 setting->setProperty("Texture/Pattern/Brightness", brightness);
45 setting->setProperty("Texture/Pattern/Contrast", contrast);
46 setting->setProperty("Texture/Pattern/NeutralPoint", neutralPoint);
47 setting->setProperty("Texture/Pattern/OffsetX", offsetX);
48 setting->setProperty("Texture/Pattern/OffsetY", offsetY);
49 setting->setProperty("Texture/Pattern/TexturingMode", texturingMode);
50 setting->setProperty("Texture/Pattern/UseSoftTexturing", useSoftTexturing);
51 setting->setProperty("Texture/Pattern/CutoffLeft", cutOffLeft);
52 setting->setProperty("Texture/Pattern/CutoffRight", cutOffRight);
53 setting->setProperty("Texture/Pattern/CutoffPolicy", cutOffPolicy);
54 setting->setProperty("Texture/Pattern/Invert", invert);
55 setting->setProperty("Texture/Pattern/AutoInvertOnErase", autoInvertOnErase);
56 setting->setProperty("Texture/Pattern/MaximumOffsetX", maximumOffsetX);
57 setting->setProperty("Texture/Pattern/MaximumOffsetY", maximumOffsetY);
58 setting->setProperty("Texture/Pattern/isRandomOffsetX", isRandomOffsetX);
59 setting->setProperty("Texture/Pattern/isRandomOffsetY", isRandomOffsetY);
60}
61
63{
65 if (isEnabled) {
66 l.limitations << KoID("texture-pattern", i18nc("PaintOp instant preview limitation", "Texture->Pattern (low quality preview)"));
67 }
68 return l;
69}
void write(KisPropertiesConfiguration *setting) const
bool read(const KisPropertiesConfiguration *setting)
Definition KoID.h:30
virtual void setProperty(const QString &name, const QVariant &value)
bool getBool(const QString &name, bool def=false) const
int getInt(const QString &name, int def=0) const
double getDouble(const QString &name, double def=0.0) const
bool read(const KisPropertiesConfiguration *setting)
KisPaintopLodLimitations lodLimitations() const
KisEmbeddedTextureData textureData
void write(KisPropertiesConfiguration *setting) const