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

#include <kis_multi_double_filter_widget.h>

+ Inheritance diagram for KisMultiDoubleFilterWidget:

Public Member Functions

KisPropertiesConfigurationSP configuration () const override
 
 KisMultiDoubleFilterWidget (const QString &filterid, QWidget *parent, const QString &caption, vKisDoubleWidgetParam dwparam)
 
qint32 nbValues () const
 
void setConfiguration (const KisPropertiesConfigurationSP cfg) override
 
double valueAt (qint32 i)
 
- Public Member Functions inherited from KisConfigWidget
virtual KoCanvasResourcesInterfaceSP canvasResourcesInterface () const
 
virtual void setCanvasResourcesInterface (KoCanvasResourcesInterfaceSP canvasResourcesInterface)
 
virtual void setView (KisViewManager *view)
 
 ~KisConfigWidget () override
 

Private Attributes

QVector< KisDelayedActionDoubleInput * > m_doubleWidgets
 
QString m_filterid
 
qint32 m_nbdoubleWidgets
 

Additional Inherited Members

- Signals inherited from KisConfigWidget
void sigConfigurationItemChanged ()
 
void sigConfigurationUpdated ()
 
void sigDropLockedConfig (KisPropertiesConfigurationSP p)
 
void sigSaveLockedConfig (KisPropertiesConfigurationSP p)
 
- Protected Member Functions inherited from KisConfigWidget
 KisConfigWidget (QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags(), int delay=200)
 

Detailed Description

Definition at line 52 of file kis_multi_double_filter_widget.h.

Constructor & Destructor Documentation

◆ KisMultiDoubleFilterWidget()

KisMultiDoubleFilterWidget::KisMultiDoubleFilterWidget ( const QString & filterid,
QWidget * parent,
const QString & caption,
vKisDoubleWidgetParam dwparam )

Definition at line 55 of file kis_multi_double_filter_widget.cc.

56 : KisConfigWidget(parent), m_filterid(filterid)
57{
58 m_nbdoubleWidgets = dwparam.size();
59
60 this->setWindowTitle(caption);
61
62 QGridLayout *widgetLayout = new QGridLayout(this);
63 widgetLayout->setColumnStretch(1, 1);
64 widgetLayout->setContentsMargins(0,0,0,0);
65 widgetLayout->setHorizontalSpacing(0);
66
68
69 for (qint32 i = 0; i < m_nbdoubleWidgets; ++i) {
70 m_doubleWidgets[i] = new KisDelayedActionDoubleInput(this, dwparam[i].name);
71 m_doubleWidgets[i]->setRange(dwparam[i].min, dwparam[i].max);
72 m_doubleWidgets[i]->setValue(dwparam[i].initvalue);
73 m_doubleWidgets[i]->cancelDelayedSignal();
74
75 connect(m_doubleWidgets[i], SIGNAL(valueChangedDelayed(double)), SIGNAL(sigConfigurationItemChanged()));
76
77 QLabel* lbl = new QLabel(dwparam[i].label + ':', this);
78 widgetLayout->addWidget(lbl, i , 0);
79
80 widgetLayout->addWidget(m_doubleWidgets[i], i , 1);
81 }
82 widgetLayout->setRowStretch(m_nbdoubleWidgets,1);
83
84 QSpacerItem * sp = new QSpacerItem(1, 1);
85 widgetLayout->addItem(sp, m_nbdoubleWidgets, 0);
86
87}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void sigConfigurationItemChanged()
KisConfigWidget(QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags(), int delay=200)
QVector< KisDelayedActionDoubleInput * > m_doubleWidgets

References connect(), m_doubleWidgets, m_nbdoubleWidgets, and KisConfigWidget::sigConfigurationItemChanged().

Member Function Documentation

◆ configuration()

KisPropertiesConfigurationSP KisMultiDoubleFilterWidget::configuration ( ) const
overridevirtual
Returns
the configuration

Implements KisConfigWidget.

Definition at line 103 of file kis_multi_double_filter_widget.cc.

104{
106 for (int i = 0; i < nbValues(); ++i) {
107 config->setProperty(m_doubleWidgets[i]->objectName(), m_doubleWidgets[i]->value());
108 }
109 return config;
110}
static KisResourcesInterfaceSP instance()

References KisGlobalResourcesInterface::instance(), m_doubleWidgets, m_filterid, and nbValues().

◆ nbValues()

qint32 KisMultiDoubleFilterWidget::nbValues ( ) const
inline

Definition at line 60 of file kis_multi_double_filter_widget.h.

60 {
61 return m_nbdoubleWidgets;
62 }

◆ setConfiguration()

void KisMultiDoubleFilterWidget::setConfiguration ( const KisPropertiesConfigurationSP config)
overridevirtual
Parameters
configthe configuration for this configuration widget.

Implements KisConfigWidget.

Definition at line 89 of file kis_multi_double_filter_widget.cc.

90{
91 if (!config) return;
92
93 for (int i = 0; i < m_nbdoubleWidgets ; ++i) {
95 if (w) {
96 double val = config->getDouble(m_doubleWidgets[i]->objectName());
97 m_doubleWidgets[i]->setValue(val);
98 m_doubleWidgets[i]->cancelDelayedSignal();
99 }
100 }
101}

References m_doubleWidgets, and m_nbdoubleWidgets.

◆ valueAt()

double KisMultiDoubleFilterWidget::valueAt ( qint32 i)
inline

Definition at line 63 of file kis_multi_double_filter_widget.h.

63 {
64 return m_doubleWidgets[i]->value();
65 }

Member Data Documentation

◆ m_doubleWidgets

QVector<KisDelayedActionDoubleInput*> KisMultiDoubleFilterWidget::m_doubleWidgets
private

Definition at line 67 of file kis_multi_double_filter_widget.h.

◆ m_filterid

QString KisMultiDoubleFilterWidget::m_filterid
private

Definition at line 69 of file kis_multi_double_filter_widget.h.

◆ m_nbdoubleWidgets

qint32 KisMultiDoubleFilterWidget::m_nbdoubleWidgets
private

Definition at line 68 of file kis_multi_double_filter_widget.h.


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