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

#include <KisTextureOptionWidget.h>

+ Inheritance diagram for KisTextureOptionWidget:

Classes

struct  Private
 

Public Types

using data_type = KisTextureOptionData
 
- Public Types inherited from KisPaintOpOption
using OptionalLodLimitationsReader = std::optional<lager::reader<KisPaintopLodLimitations>>
 
enum  PaintopCategory {
  GENERAL , COLOR , TEXTURE , FILTER ,
  MASKING_BRUSH
}
 

Public Member Functions

 KisTextureOptionWidget (lager::cursor< KisTextureOptionData > optionData, KisResourcesInterfaceSP resourcesInterface, KisBrushTextureFlags flags=None)
 
void readOptionSetting (const KisPropertiesConfigurationSP setting) override
 
void writeOptionSetting (KisPropertiesConfigurationSP setting) const override
 
 ~KisTextureOptionWidget ()
 
- Public Member Functions inherited from KisPaintOpOption
KisPaintOpOption::PaintopCategory category () const
 
QWidget * configurationPage () const
 
OptionalLodLimitationsReader effectiveLodLimitations () const
 
virtual bool isCheckable () const
 
virtual bool isChecked () const
 
bool isEnabled () const
 
bool isLocked () const
 
 KisPaintOpOption (const QString &label, KisPaintOpOption::PaintopCategory category, bool checked)
 
 KisPaintOpOption (const QString &label, KisPaintOpOption::PaintopCategory category, lager::cursor< bool > checkedCursor)
 
 KisPaintOpOption (const QString &label, KisPaintOpOption::PaintopCategory category, lager::cursor< bool > checkedCursor, lager::reader< bool > externallyEnabledLink)
 
QString label () const
 
virtual void lodLimitations (KisPaintopLodLimitations *l) const
 
virtual void setCanvasResourcesInterface (KoCanvasResourcesInterfaceSP canvasResourcesInterface)
 
virtual void setChecked (bool checked)
 
virtual void setImage (KisImageWSP image)
 
void setLocked (bool value)
 
virtual void setNode (KisNodeWSP node)
 
virtual void setResourcesInterface (KisResourcesInterfaceSP resourcesInterface)
 
void startReadOptionSetting (const KisPropertiesConfigurationSP setting)
 
void startWriteOptionSetting (KisPropertiesConfigurationSP setting) const
 
 ~KisPaintOpOption () override
 

Protected Member Functions

OptionalLodLimitationsReader lodLimitationsReader () const override
 
- Protected Member Functions inherited from KisPaintOpOption
KoCanvasResourcesInterfaceSP canvasResourcesInterface () const
 
KisResourcesInterfaceSP resourcesInterface () const
 
void setConfigurationPage (QWidget *page)
 

Private Attributes

const QScopedPointer< Privatem_d
 

Additional Inherited Members

- Signals inherited from KisPaintOpOption
void sigCheckedChanged (bool value)
 
void sigEnabledChanged (bool value)
 
void sigSettingChanged ()
 
- Protected Slots inherited from KisPaintOpOption
void emitCheckedChanged (bool checked)
 
void emitEnabledChanged (bool enabled)
 
void emitSettingChanged ()
 
- Protected Attributes inherited from KisPaintOpOption
bool m_checkable {false}
 
bool m_locked {false}
 

Detailed Description

Definition at line 14 of file KisTextureOptionWidget.h.

Member Typedef Documentation

◆ data_type

Constructor & Destructor Documentation

◆ KisTextureOptionWidget()

KisTextureOptionWidget::KisTextureOptionWidget ( lager::cursor< KisTextureOptionData > optionData,
KisResourcesInterfaceSP resourcesInterface,
KisBrushTextureFlags flags = None )

Definition at line 26 of file KisTextureOptionWidget.cpp.

28 , m_d(new Private(optionData, resourcesInterface))
29{
30 using namespace KisWidgetConnectionUtils;
31 setObjectName("KisTextureOption");
32
33 KisTextureChooser *chooserWidget = new KisTextureChooser(flags);
34
35 setConfigurationPage(chooserWidget);
36
37 connect(&m_d->model, &KisTextureOptionModel::textureResourceChanged,
38 chooserWidget->textureSelectorWidget, &KisPatternChooser::setCurrentPattern);
39 connect(chooserWidget->textureSelectorWidget, &KisPatternChooser::resourceSelected,
40 &m_d->model, &KisTextureOptionModel::settextureResource);
41 chooserWidget->textureSelectorWidget->setCurrentPattern(m_d->model.textureResource());
42
43 connect(&m_d->model, &KisTextureOptionModel::cutOffLeftNormalizedChanged,
44 chooserWidget->cutoffSlider, &KisInputLevelsSlider::setBlackPoint);
45 connect(chooserWidget->cutoffSlider, &KisInputLevelsSlider::blackPointChanged,
46 &m_d->model, &KisTextureOptionModel::setcutOffLeftNormalized);
47 chooserWidget->cutoffSlider->setBlackPoint(m_d->model.cutOffLeftNormalized());
48
49 connect(&m_d->model, &KisTextureOptionModel::cutOffRightNormalizedChanged,
50 chooserWidget->cutoffSlider, &KisInputLevelsSlider::setWhitePoint);
51 connect(chooserWidget->cutoffSlider, &KisInputLevelsSlider::whitePointChanged,
52 &m_d->model, &KisTextureOptionModel::setcutOffRightNormalized);
53 chooserWidget->cutoffSlider->setWhitePoint(m_d->model.cutOffRightNormalized());
54
55 connectControl(chooserWidget->scaleSlider, &m_d->model, "scale");
56 connectControl(chooserWidget->brightnessSlider, &m_d->model, "brightness");
57 connectControl(chooserWidget->contrastSlider, &m_d->model, "contrast");
58 connectControl(chooserWidget->neutralPointSlider, &m_d->model, "neutralPoint");
59 connectControl(chooserWidget->offsetSliderX, &m_d->model, "offsetX");
60 connectControl(chooserWidget->randomOffsetX, &m_d->model, "isRandomOffsetX");
61 connectControl(chooserWidget->randomOffsetY, &m_d->model, "isRandomOffsetY");
62 connectControl(chooserWidget->offsetSliderY, &m_d->model, "offsetY");
63 connectControl(chooserWidget->cmbTexturingMode, &m_d->model, "texturingMode");
64 connectControl(chooserWidget->checkBoxSoftTexturing, &m_d->model, "useSoftTexturing");
65 connectControl(chooserWidget->cmbCutoffPolicy, &m_d->model, "cutOffPolicy");
66 connectControl(chooserWidget->chkInvert, &m_d->model, "invert");
67 connectControl(chooserWidget->chkAutoInvertOnErase, &m_d->model, "autoInvertOnErase");
68
69 m_d->model.LAGER_QT(maximumOffsetX).bind(std::bind(&KisSliderSpinBox::setMaximum, chooserWidget->offsetSliderX, std::placeholders::_1, true));
70 m_d->model.LAGER_QT(maximumOffsetY).bind(std::bind(&KisSliderSpinBox::setMaximum, chooserWidget->offsetSliderY, std::placeholders::_1, true));
71
72 m_d->model.optionData.bind(std::bind(&KisTextureOptionWidget::emitSettingChanged, this));
73}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void blackPointChanged(qreal newBlackPoint)
Signal emitted when the black point changes.
void whitePointChanged(qreal newWhitePoint)
Signal emitted when the white point changes.
virtual void setBlackPoint(qreal newBlackPoint)
Sets the black point.
virtual void setWhitePoint(qreal newWhitePoint)
Sets the white point.
KisResourcesInterfaceSP resourcesInterface() const
void setConfigurationPage(QWidget *page)
KisPaintOpOption(const QString &label, KisPaintOpOption::PaintopCategory category, bool checked)
void setCurrentPattern(KoResourceSP resource)
void resourceSelected(KoResourceSP resource)
Emitted when a resource was selected.
void setMaximum(int newMaximum, bool computeNewFastSliderStep=true)
Set the maximum value of the range.
const QScopedPointer< Private > m_d
void connectControl(KisCompositeOpListWidget *widget, QObject *source, const char *property)

References KisInputLevelsSlider::blackPointChanged(), connect(), KisPaintOpOption::emitSettingChanged(), m_d, KisPatternChooser::resourceSelected(), KisInputLevelsSlider::setBlackPoint(), KisPaintOpOption::setConfigurationPage(), KisPatternChooser::setCurrentPattern(), KisSliderSpinBox::setMaximum(), KisInputLevelsSlider::setWhitePoint(), and KisInputLevelsSlider::whitePointChanged().

◆ ~KisTextureOptionWidget()

KisTextureOptionWidget::~KisTextureOptionWidget ( )

Definition at line 75 of file KisTextureOptionWidget.cpp.

76{
77}

Member Function Documentation

◆ lodLimitationsReader()

KisPaintOpOption::OptionalLodLimitationsReader KisTextureOptionWidget::lodLimitationsReader ( ) const
overrideprotectedvirtual

Reimplemented from KisPaintOpOption.

Definition at line 91 of file KisTextureOptionWidget.cpp.

92{
93 return m_d->model.optionData.map(std::mem_fn(&KisTextureOptionData::lodLimitations));
94}
KisPaintopLodLimitations lodLimitations() const

References KisTextureOptionData::lodLimitations(), and m_d.

◆ readOptionSetting()

void KisTextureOptionWidget::readOptionSetting ( const KisPropertiesConfigurationSP setting)
overridevirtual

Re-implement this to set the widgets with the values in setting.

Reimplemented from KisPaintOpOption.

Definition at line 84 of file KisTextureOptionWidget.cpp.

85{
86 KisTextureOptionData data = *m_d->model.optionData;
87 data.read(setting.data());
88 m_d->model.optionData.set(data);
89}
bool read(const KisPropertiesConfiguration *setting)

References KisSharedPtr< T >::data(), m_d, and KisTextureOptionData::read().

◆ writeOptionSetting()

void KisTextureOptionWidget::writeOptionSetting ( KisPropertiesConfigurationSP setting) const
overridevirtual

Re-implement this to save the configuration to the paint configuration.

Reimplemented from KisPaintOpOption.

Definition at line 79 of file KisTextureOptionWidget.cpp.

80{
81 m_d->model.bakedOptionData().write(setting.data());
82}

References KisSharedPtr< T >::data(), and m_d.

Member Data Documentation

◆ m_d

const QScopedPointer<Private> KisTextureOptionWidget::m_d
private

Definition at line 30 of file KisTextureOptionWidget.h.


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