Krita Source Code Documentation
Loading...
Searching...
No Matches
KisColorSmudgeOpSettings Class Reference

#include <kis_colorsmudgeop_settings.h>

+ Inheritance diagram for KisColorSmudgeOpSettings:

Classes

struct  Private
 

Public Member Functions

 KisColorSmudgeOpSettings (KisResourcesInterfaceSP resourcesInterface)
 
QList< KisUniformPaintOpPropertySPuniformProperties (KisPaintOpSettingsSP settings, QPointer< KisPaintOpPresetUpdateProxy > updateProxy) override
 
 ~KisColorSmudgeOpSettings () override
 
- Public Member Functions inherited from KisBrushBasedPaintOpSettings
bool autoSpacingActive ()
 
qreal autoSpacingCoeff ()
 
KisBrushSP brush () const
 
virtual KisOptimizedBrushOutline brushOutline (const KisPaintInformation &info, const OutlineMode &mode, qreal alignForZoom)
 
KisOptimizedBrushOutline brushOutline (const KisPaintInformation &info, const OutlineMode &mode, qreal alignForZoom) override
 
KisPaintOpSettingsSP clone () const override
 
virtual bool hasPatternSettings () const override
 
 KisBrushBasedPaintOpSettings (KisResourcesInterfaceSP resourcesInterface)
 
bool paintIncremental () override
 Reimplemented.
 
qreal paintOpAngle () const override
 
qreal paintOpSize () const override
 
void regenerateResourceCache (KoResourceCacheInterfaceSP cacheInterface) override
 
QList< int > requiredCanvasResources () const override
 
void setAutoSpacing (bool active, qreal coeff)
 
void setPaintOpAngle (qreal value) override
 
void setPaintOpSize (qreal value) override
 
void setResourceCacheInterface (KoResourceCacheInterfaceSP cacheInterface) override
 
void setSpacing (qreal spacing)
 
qreal spacing ()
 
 ~KisBrushBasedPaintOpSettings () override
 
- Public Member Functions inherited from KisOutlineGenerationPolicy< KisPaintOpSettings >
 KisOutlineGenerationPolicy (KisCurrentOutlineFetcher::Options options, KisResourcesInterfaceSP resourcesInterface)
 
void onPropertyChanged () override
 
const KisCurrentOutlineFetcheroutlineFetcher () const
 
 ~KisOutlineGenerationPolicy () override
 
- Public Member Functions inherited from KisPaintOpSettings
virtual void activate ()
 
virtual qreal airbrushInterval () const
 
KoCanvasResourcesInterfaceSP canvasResourcesInterface () const
 
KisPaintOpSettingsSP createMaskingSettings () const
 
QString effectivePaintOpCompositeOp ()
 
bool eraserMode ()
 
bool hasMaskingSettings () const
 
virtual QString indirectPaintingCompositeOp () const
 
virtual bool isAirbrushing () const
 
virtual bool isValid () const
 
 KisPaintOpSettings (const KisPaintOpSettings &rhs)
 
 KisPaintOpSettings (KisResourcesInterfaceSP resourcesInterface)
 
qreal lodSizeThreshold () const
 
virtual bool lodSizeThresholdSupported () const
 
QString maskingBrushCompositeOp () const
 
virtual QString modelName () const
 
virtual bool mousePressEvent (const KisPaintInformation &paintInformation, Qt::KeyboardModifiers modifiers, KisNodeWSP currentNode)
 
virtual bool mouseReleaseEvent ()
 
virtual bool needsAsynchronousUpdates () const
 
KisNodeSP node () const
 
QString paintOpCompositeOp ()
 
qreal paintOpFade ()
 
qreal paintOpFlow ()
 
virtual qreal paintOpOpacity ()
 
virtual qreal paintOpPatternSize ()
 
qreal paintOpScatter ()
 
 Private ()
 
 Private (const Private &rhs)
 
virtual void resetSettings (const QStringList &preserveProperties=QStringList())
 
KoResourceCacheInterfaceSP resourceCacheInterface () const
 
KisResourcesInterfaceSP resourcesInterface () const
 
quint64 sanityVersionCookie () const
 
qreal savedBrushOpacity () const
 
qreal savedBrushSize () const
 
qreal savedEraserOpacity () const
 
qreal savedEraserSize () const
 
void setCanvasResourcesInterface (KoCanvasResourcesInterfaceSP canvasResourcesInterface)
 
void setEraserMode (bool value)
 
void setLodSizeThreshold (qreal value)
 
void setModelName (const QString &modelName)
 
void setPaintOpCompositeOp (const QString &value)
 
void setPaintOpFade (qreal value)
 
void setPaintOpFlow (qreal value)
 
virtual void setPaintOpOpacity (qreal value)
 
void setPaintOpScatter (qreal value)
 
void setProperty (const QString &name, const QVariant &value) override
 
virtual void setRandomOffset (const KisPaintInformation &paintInformation)
 
void setResourcesInterface (KisResourcesInterfaceSP resourcesInterface)
 
void setSavedBrushOpacity (qreal value)
 
void setSavedBrushSize (qreal value)
 
void setSavedEraserOpacity (qreal value)
 
void setSavedEraserSize (qreal value)
 
void setUpdateListener (UpdateListenerWSP listener)
 
UpdateListenerWSP updateListener () const
 
virtual bool useSpacingUpdates () const
 
 ~KisPaintOpSettings () override
 
- Public Member Functions inherited from Private
 Private (KisCanvas2 *c)
 
- Public Member Functions inherited from KisPropertiesConfiguration
void clearProperties ()
 Clear the map of properties.
 
virtual bool compareTo (const KisPropertiesConfiguration *rhs) const
 
virtual void dump () const
 
void fromXML (const QDomElement &) override
 
bool fromXML (const QString &xml, bool clear=true) override
 
bool getBool (const QString &name, bool def=false) const
 
KoColor getColor (const QString &name, const KoColor &color=KoColor()) const
 getColor fetch the given property as a KoColor.
 
KisCubicCurve getCubicCurve (const QString &name, const KisCubicCurve &curve=KisCubicCurve()) const
 
double getDouble (const QString &name, double def=0.0) const
 
float getFloat (const QString &name, float def=0.0) const
 
int getInt (const QString &name, int def=0) const
 
void getPrefixedProperties (const QString &prefix, KisPropertiesConfiguration *config) const
 
void getPrefixedProperties (const QString &prefix, KisPropertiesConfigurationSP config) const
 
virtual QMap< QString, QVariant > getProperties () const
 
virtual QList< QString > getPropertiesKeys () const
 
virtual QVariant getProperty (const QString &name) const
 
virtual bool getProperty (const QString &name, QVariant &value) const
 
QString getPropertyLazy (const QString &name, const char *defaultValue) const
 
QStringList getPropertyLazy (const QString &name, const QStringList &defaultValue) const
 
template<typename T >
getPropertyLazy (const QString &name, const T &defaultValue) const
 
QString getString (const QString &name, const QString &def=QString()) const
 
QStringList getStringList (const QString &name, const QStringList &defaultValue=QStringList()) const
 
virtual bool hasProperty (const QString &name) const
 
 KisPropertiesConfiguration ()
 
 KisPropertiesConfiguration (const KisPropertiesConfiguration &rhs)
 
KisPropertiesConfigurationoperator= (const KisPropertiesConfiguration &rhs)
 
void removeProperty (const QString &name)
 
void setPrefixedProperties (const QString &prefix, const KisPropertiesConfiguration *config)
 
void setPrefixedProperties (const QString &prefix, const KisPropertiesConfigurationSP config)
 
void setProperty (const QString &name, const QStringList &value)
 
void setPropertyNotSaved (const QString &name)
 Marks a property that should not be saved by toXML.
 
QString toXML () const override
 
void toXML (QDomDocument &, QDomElement &) const override
 
 ~KisPropertiesConfiguration () override
 
- Public Member Functions inherited from KisSerializableConfiguration
 KisSerializableConfiguration ()
 
 KisSerializableConfiguration (const KisSerializableConfiguration &rhs)
 
virtual ~KisSerializableConfiguration ()
 
- Public Member Functions inherited from KisShared
bool deref ()
 
bool ref ()
 
int refCount ()
 
QAtomicInt * sharedWeakReference ()
 

Private Attributes

const QScopedPointer< Privatem_d
 

Additional Inherited Members

- Public Types inherited from KisPaintOpSettings
using UpdateListenerSP = QSharedPointer<UpdateListener>
 
using UpdateListenerWSP = QWeakPointer<UpdateListener>
 
- Static Public Member Functions inherited from KisPaintOpSettings
static KisOptimizedBrushOutline ellipseOutline (qreal width, qreal height, qreal scale, qreal rotation)
 
static bool isLodUserAllowed (const KisPropertiesConfigurationSP config)
 
static QPainterPath makeTiltIndicator (KisPaintInformation const &info, QPointF const &start, qreal lengthScale, qreal angle)
 
static void setLodUserAllowed (KisPropertiesConfigurationSP config, bool value)
 
- Static Public Member Functions inherited from KisPropertiesConfiguration
static QString escapeString (const QString &string)
 
static QString extractedPrefixKey ()
 
static QString unescapeString (const QString &string)
 
- Public Attributes inherited from KisPaintOpSettings
KoCanvasResourcesInterfaceSP canvasResourcesInterface
 
bool disableDirtyNotifications
 
QString modelName
 
KoResourceCacheInterfaceSP resourceCacheInterface
 
KisResourcesInterfaceSP resourcesInterface
 
QPointer< KisPaintOpConfigWidgetsettingsWidget
 
QList< KisUniformPaintOpPropertyWSPuniformProperties
 
UpdateListenerWSP updateListener
 
quint64 versionCookie
 
KisRandomSource versionRandomSource
 
- Public Attributes inherited from Private
KisCanvas2canvas
 
int displayedFrame
 
int intendedFrame
 
- Public Attributes inherited from KisPropertiesConfiguration
QSet< QString > notSavedProperties
 
QMap< QString, QVariant > properties
 
- Protected Member Functions inherited from KisBrushBasedPaintOpSettings
KisOptimizedBrushOutline brushOutlineImpl (const KisPaintInformation &info, const OutlineMode &mode, qreal alignForZoom, qreal additionalScale)
 
void onPropertyChanged () override
 
- Protected Member Functions inherited from KisShared
 KisShared ()
 
 ~KisShared ()
 
- Protected Attributes inherited from KisBrushBasedPaintOpSettings
KisBrushSP m_savedBrush
 
QList< KisUniformPaintOpPropertyWSPm_uniformProperties
 

Detailed Description

Definition at line 14 of file kis_colorsmudgeop_settings.h.

Constructor & Destructor Documentation

◆ KisColorSmudgeOpSettings()

KisColorSmudgeOpSettings::KisColorSmudgeOpSettings ( KisResourcesInterfaceSP resourcesInterface)

Definition at line 14 of file kis_colorsmudgeop_settings.cpp.

16 m_d(new Private)
17{
18}
KisBrushBasedPaintOpSettings(KisResourcesInterfaceSP resourcesInterface)
const QScopedPointer< Private > m_d
KisResourcesInterfaceSP resourcesInterface

◆ ~KisColorSmudgeOpSettings()

KisColorSmudgeOpSettings::~KisColorSmudgeOpSettings ( )
override

Definition at line 20 of file kis_colorsmudgeop_settings.cpp.

21{
22}

Member Function Documentation

◆ uniformProperties()

QList< KisUniformPaintOpPropertySP > KisColorSmudgeOpSettings::uniformProperties ( KisPaintOpSettingsSP settings,
QPointer< KisPaintOpPresetUpdateProxy > updateProxy )
overridevirtual

Reimplemented from KisBrushBasedPaintOpSettings.

Definition at line 34 of file kis_colorsmudgeop_settings.cpp.

35{
37 listWeakToStrong(m_d->uniformProperties);
38
39 if (props.isEmpty()) {
40 {
41 KisComboBasedPaintOpPropertyCallback *prop = new KisComboBasedPaintOpPropertyCallback(KoID("smudge_mode", i18n("Smudge Mode")), settings, 0);
42
43 QList<QString> modes;
44 modes << i18n("Smearing");
45 modes << i18n("Dulling");
46
47 prop->setItems(modes);
48
49 prop->setReadCallback(
52 data.read(prop->settings().data());
53 prop->setValue(int(data.mode));
54 });
55 prop->setWriteCallback(
58 data.read(prop->settings().data());
59 data.mode = KisSmudgeLengthOptionData::Mode(prop->value().toInt());
60 data.write(prop->settings().data());
61 });
62
63 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
64 prop->requestReadValue();
65 props << toQShared(prop);
66 }
67
68 {
72 "smudge_length",
73 settings, 0);
74
75 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
76 prop->requestReadValue();
77 props << toQShared(prop);
78 }
79 {
83 "smudge_radius",
84 settings, 0);
85
86 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
87 prop->requestReadValue();
88 props << toQShared(prop);
89 }
90
91 {
95 "smudge_color_rate",
96 settings, 0);
97
98 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
99 prop->requestReadValue();
100 props << toQShared(prop);
101 }
102
103 {
105 new KisUniformPaintOpPropertyCallback(KisUniformPaintOpPropertyCallback::Bool, KoID("smudge_smear_alpha", i18n("Smear Alpha")), settings, 0);
106
107 prop->setReadCallback(
108 [](KisUniformPaintOpProperty *prop) {
110 data.read(prop->settings().data());
111
112 prop->setValue(data.smearAlpha);
113 });
114 prop->setWriteCallback(
115 [](KisUniformPaintOpProperty *prop) {
117 data.read(prop->settings().data());
118 data.smearAlpha = prop->value().toBool();
119 data.write(prop->settings().data());
120 });
121
122 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
123 prop->requestReadValue();
124 props << toQShared(prop);
125 }
126
127 {
131 "smudge_paint_thickness_rate",
132 settings, 0);
133
134 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
135 prop->requestReadValue();
136 props << toQShared(prop);
137 }
138
139 {
141 new KisComboBasedPaintOpPropertyCallback(KoID("smudge_paint_thickness_mode", i18n("Paint Thickness Mode")), settings, 0);
142
143 QList<QString> modes;
144 modes << i18n("Overwrite");
145 modes << i18n("Paint over");
146
147 prop->setItems(modes);
148
149 prop->setReadCallback(
150 [](KisUniformPaintOpProperty *prop) {
152 data.read(prop->settings().data());
153
154 prop->setValue(int(data.mode) - 1);
155 });
156 prop->setWriteCallback(
157 [](KisUniformPaintOpProperty *prop) {
159 data.read(prop->settings().data());
160 data.mode = KisPaintThicknessOptionData::ThicknessMode(prop->value().toInt() + 1);
161 data.write(prop->settings().data());
162 });
163
164 QObject::connect(updateProxy, SIGNAL(sigSettingsChanged()), prop, SLOT(requestReadValue()));
165 prop->requestReadValue();
166 props << toQShared(prop);
167 }
168 }
169
170 return KisBrushBasedPaintOpSettings::uniformProperties(settings, updateProxy) + props;
171}
void setValue(const QVariant &value)
KisPaintOpSettingsSP settings() const
Definition KoID.h:30
KisCallbackBasedPaintopProperty< KisComboBasedPaintOpProperty > KisComboBasedPaintOpPropertyCallback
QSharedPointer< T > toQShared(T *ptr)
Container< QSharedPointer< T > > listWeakToStrong(const Container< QWeakPointer< T > > &container, bool allOrNothing=true)
KisCallbackBasedPaintopProperty< KisUniformPaintOpProperty > KisUniformPaintOpPropertyCallback
QList< KisUniformPaintOpPropertyWSP > uniformProperties

References listWeakToStrong(), m_d, KisUniformPaintOpProperty::requestReadValue(), KisCallbackBasedPaintopProperty< ParentClass >::setReadCallback(), KisCallbackBasedPaintopProperty< ParentClass >::setWriteCallback(), toQShared(), and KisPaintOpSettings::uniformProperties.

Member Data Documentation

◆ m_d

const QScopedPointer<Private> KisColorSmudgeOpSettings::m_d
private

Definition at line 24 of file kis_colorsmudgeop_settings.h.


The documentation for this class was generated from the following files: