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

#include <kis_wdg_multigrid_pattern.h>

+ Inheritance diagram for KisWdgMultigridPattern:

Public Member Functions

KisPropertiesConfigurationSP configuration () const override
 
 KisWdgMultigridPattern (QWidget *parent=0, const KoColorSpace *cs=KoColorSpaceRegistry::instance() ->rgb8())
 
void setConfiguration (const KisPropertiesConfigurationSP) override
 
const Ui_WdgMultigridPatternOptions * widget () const
 
 ~KisWdgMultigridPattern () override
 
- Public Member Functions inherited from KisConfigWidget
virtual KoCanvasResourcesInterfaceSP canvasResourcesInterface () const
 
virtual void setCanvasResourcesInterface (KoCanvasResourcesInterfaceSP canvasResourcesInterface)
 
virtual void setView (KisViewManager *view)
 
 ~KisConfigWidget () override
 

Private Attributes

const KoColorSpacem_cs
 
KoStopGradientSP m_gradient
 
Ui_WdgMultigridPatternOptions * m_widget
 

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 19 of file kis_wdg_multigrid_pattern.h.

Constructor & Destructor Documentation

◆ KisWdgMultigridPattern()

KisWdgMultigridPattern::KisWdgMultigridPattern ( QWidget * parent = 0,
const KoColorSpace * cs = KoColorSpaceRegistry::instance()->rgb8() )

Definition at line 21 of file kis_wdg_multigrid_pattern.cpp.

22 : KisConfigWidget(parent)
23{
24 m_widget = new Ui_WdgMultigridPatternOptions();
25 m_widget->setupUi(this);
26 m_cs = cs;
27
28 QLinearGradient grad;
29 grad.setColorAt(0, Qt::green);
30 grad.setColorAt(1.0, Qt::blue);
32 widget()->wdgGradient->setGradient(m_gradient);
33 widget()->wdgGradient->setCompactMode(true);
34
35 widget()->sldDivisions->setRange(0, 100);
36 widget()->sldDivisions->setPrefix(i18n("Divisions:"));
37
38 widget()->sldDimensions->setRange(3, 36);
39 widget()->sldDimensions->setPrefix(i18nc("The Dimensions of Multigrid pattern generator", "Dimensions:"));
40
41 widget()->sldOffset->setRange(0.01, 0.49, 2);
42 widget()->sldOffset->setPrefix(i18n("Offset:"));
43
44 widget()->sldColorRatio->setRange(-2.0, 2.0, 2);
45 widget()->sldColorRatio->setPrefix(i18nc("Ratio as in fill layer options", "Ratio:"));
46
47 widget()->sldColorIndex->setRange(-2.0, 2.0, 2);
48 widget()->sldColorIndex->setPrefix(i18nc("Index number of how far away from center", "Index:"));
49
50 widget()->sldColorIntersect->setRange(-2.0, 2.0, 2);
51 widget()->sldColorIntersect->setPrefix(i18n("Intersect:"));
52
53 widget()->cmbConnectorType->addItem(i18n("No Connectors"));
54 widget()->cmbConnectorType->addItem(i18n("Acute Angles"));
55 widget()->cmbConnectorType->addItem(i18n("Obtuse Angles"));
56 widget()->cmbConnectorType->addItem(i18n("Cross Shape"));
57 widget()->cmbConnectorType->addItem(i18n("Center Dot"));
58 widget()->cmbConnectorType->addItem(i18n("Corner Dot"));
59
60 connect(m_widget->sldDivisions, SIGNAL(valueChanged(int)), this, SIGNAL(sigConfigurationUpdated()));
61 connect(m_widget->sldDimensions, SIGNAL(valueChanged(int)), this, SIGNAL(sigConfigurationUpdated()));
62 connect(m_widget->sldOffset, SIGNAL(valueChanged(qreal)), this, SIGNAL(sigConfigurationUpdated()));
63
64 connect(m_widget->sldColorIndex, SIGNAL(valueChanged(qreal)), this, SIGNAL(sigConfigurationUpdated()));
65 connect(m_widget->sldColorRatio, SIGNAL(valueChanged(qreal)), this, SIGNAL(sigConfigurationUpdated()));
66 connect(m_widget->sldColorIntersect, SIGNAL(valueChanged(qreal)), this, SIGNAL(sigConfigurationUpdated()));
67
68 connect(m_widget->wdgGradient, SIGNAL(sigGradientChanged()), this, SIGNAL(sigConfigurationUpdated()));
69
70 connect(m_widget->spnLineWidth, SIGNAL(valueChanged(int)), this, SIGNAL(sigConfigurationUpdated()));
71 connect(m_widget->bnLineColor, SIGNAL(changed(const KoColor&)), this, SIGNAL(sigConfigurationUpdated()));
72
73 connect(m_widget->spnConnectorWidth, SIGNAL(valueChanged(int)), this, SIGNAL(sigConfigurationUpdated()));
74 connect(m_widget->bnConnectorColor, SIGNAL(changed(const KoColor&)), this, SIGNAL(sigConfigurationUpdated()));
75 connect(m_widget->cmbConnectorType, SIGNAL(currentIndexChanged(int)), this, SIGNAL(sigConfigurationUpdated()));
76}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
KisConfigWidget(QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags(), int delay=200)
void sigConfigurationUpdated()
const Ui_WdgMultigridPatternOptions * widget() const
Ui_WdgMultigridPatternOptions * m_widget
static QSharedPointer< KoStopGradient > fromQGradient(const QGradient *gradient)
Creates KoStopGradient from a QGradient.

References connect(), KoStopGradient::fromQGradient(), m_cs, m_gradient, m_widget, KisConfigWidget::sigConfigurationUpdated(), and widget().

◆ ~KisWdgMultigridPattern()

KisWdgMultigridPattern::~KisWdgMultigridPattern ( )
override

Definition at line 78 of file kis_wdg_multigrid_pattern.cpp.

79{
80 delete m_widget;
81}

References m_widget.

Member Function Documentation

◆ configuration()

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

Implements KisConfigWidget.

Definition at line 119 of file kis_wdg_multigrid_pattern.cpp.

120{
122
123 if (m_gradient) {
124 QDomDocument doc;
125 QDomElement elt = doc.createElement("gradient");
126 m_gradient->toXML(doc, elt);
127 doc.appendChild(elt);
128 config->setProperty("gradientXML", doc.toString());
129 }
130
131 QVariant v;
132 KoColor c;
133 c.fromKoColor(widget()->bnLineColor->color());
134 v.setValue(c);
135 config->setProperty("lineColor", v);
136 config->setProperty("lineWidth", widget()->spnLineWidth->value());
137
138 config->setProperty("divisions", widget()->sldDivisions->value());
139
140 config->setProperty("dimensions", widget()->sldDimensions->value());
141 config->setProperty("offset", widget()->sldOffset->value());
142
143 config->setProperty("colorRatio", widget()->sldColorRatio->value());
144 config->setProperty("colorIndex", widget()->sldColorIndex->value());
145 config->setProperty("colorIntersect", widget()->sldColorIntersect->value());
146
147 c.fromKoColor(widget()->bnConnectorColor->color());
148 v.setValue(c);
149 config->setProperty("connectorColor", v);
150 config->setProperty("connectorType", widget()->cmbConnectorType->currentIndex());
151 config->setProperty("connectorWidth", widget()->spnConnectorWidth->value());
152
153 return config;
154}
qreal v
static KisResourcesInterfaceSP instance()
void fromKoColor(const KoColor &src)
Definition KoColor.cpp:294

References KoColor::fromKoColor(), KisGlobalResourcesInterface::instance(), m_gradient, v, and widget().

◆ setConfiguration()

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

Implements KisConfigWidget.

Definition at line 84 of file kis_wdg_multigrid_pattern.cpp.

85{
86 if (config->hasProperty("gradientXML")) {
87 QDomDocument doc;
88 doc.setContent(config->getString("gradientXML", ""));
89 KoStopGradient gradient = KoStopGradient::fromXML(doc.firstChildElement());
90 if (gradient.stops().size() > 0) {
91 m_gradient->setStops(gradient.stops());
92 }
93 widget()->wdgGradient->setGradient(m_gradient);
94 }
95
96
97 KoColor c = config->getColor("lineColor");
98 c.convertTo(m_cs);
99 widget()->bnLineColor->setColor(c);
100
101 widget()->spnLineWidth->setValue(config->getInt("lineWidth", 1));
102
103 widget()->sldDivisions->setValue(config->getInt("divisions", 1));
104
105 widget()->sldDimensions->setValue(config->getInt("dimensions", 5));
106 widget()->sldOffset->setValue(config->getFloat("offset", 0.2));
107
108 widget()->sldColorIndex->setValue(config->getFloat("colorIndex", 1.0));
109 widget()->sldColorRatio->setValue(config->getFloat("colorRatio", 0.0));
110 widget()->sldColorIntersect->setValue(config->getFloat("colorIntersect", 0.0));
111
112 c = config->getColor("connectorColor");
113 c.convertTo(m_cs);
114 widget()->bnConnectorColor->setColor(c);
115 widget()->cmbConnectorType->setCurrentIndex(config->getInt("connectorType", 1));
116 widget()->spnConnectorWidth->setValue(config->getInt("connectorWidth", 1));
117}
void convertTo(const KoColorSpace *cs, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags)
Definition KoColor.cpp:136
static KoStopGradient fromXML(const QDomElement &elt)
fromXML convert a gradient from xml.
QList< KoGradientStop > stops() const

References KoColor::convertTo(), KoStopGradient::fromXML(), m_cs, m_gradient, KoStopGradient::stops(), and widget().

◆ widget()

const Ui_WdgMultigridPatternOptions * KisWdgMultigridPattern::widget ( ) const
inline

Definition at line 26 of file kis_wdg_multigrid_pattern.h.

26 {
27 return m_widget;
28 }

References m_widget.

Member Data Documentation

◆ m_cs

const KoColorSpace* KisWdgMultigridPattern::m_cs
private

Definition at line 33 of file kis_wdg_multigrid_pattern.h.

◆ m_gradient

KoStopGradientSP KisWdgMultigridPattern::m_gradient
private

Definition at line 34 of file kis_wdg_multigrid_pattern.h.

◆ m_widget

Ui_WdgMultigridPatternOptions* KisWdgMultigridPattern::m_widget
private

Definition at line 32 of file kis_wdg_multigrid_pattern.h.


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