Krita Source Code Documentation
Loading...
Searching...
No Matches
KisMaskingBrushOptionProperties.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2017 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
8
10
11#include <kis_image_config.h>
12
21
23{
25
29
32
33 std::optional<BrushData> embeddedBrush = BrushData::read(embeddedConfig.constData(), resourcesInterface);
34
35 if (embeddedBrush) {
36 data.brush = *embeddedBrush;
37 }
38
39 if (data.useMasterSize) {
41 qreal size = data.masterSizeCoeff * masterBrushSize;
42
43 const qreal maxMaskingBrushSize = KisImageConfig(true).maxMaskingBrushSize();
44
45 if (size > maxMaskingBrushSize) {
46 size = maxMaskingBrushSize;
47 }
48
50 data.brush.autoBrush,
52 data.brush.textBrush,
53 size);
54 }
55
56 return data;
57}
58
60{
65
66 // TODO: skip saving in some cases?
67 // if (!isEnabled) return;
68
69 {
71 brush.write(embeddedConfig.data());
73 }
74}
const QString COMPOSITE_MULT
int maxMaskingBrushSize() const
const T * constData() const
static bool qFuzzyCompare(half p1, half p2)
bool operator==(const PrecisionData &lhs, const PrecisionData &rhs)
void setEffectiveSizeForBrush(const BrushType type, AutoBrushData &autoBrush, PredefinedBrushData &predefinedBrush, TextBrushData &textBrush, qreal value)
const char MaskingBrushEnabledTag[]
const char MaskingBrushUseMasterSizeTag[]
const char MaskingBrushMasterSizeCoeffTag[]
const char MaskingBrushPresetPrefix[]
const char MaskingBrushCompositeOpTag[]
static std::optional< BrushData > read(const KisPropertiesConfiguration *settings, KisResourcesInterfaceSP resourcesInterface)
PredefinedBrushData predefinedBrush
static MaskingBrushData read(const KisPropertiesConfiguration *config, qreal masterBrushSize, KisResourcesInterfaceSP resourcesInterface)
void write(KisPropertiesConfiguration *config) const
void setPrefixedProperties(const QString &prefix, const KisPropertiesConfiguration *config)
QString getString(const QString &name, const QString &def=QString()) const
virtual void setProperty(const QString &name, const QVariant &value)
bool getBool(const QString &name, bool def=false) const
double getDouble(const QString &name, double def=0.0) const
void getPrefixedProperties(const QString &prefix, KisPropertiesConfiguration *config) const