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

#include <kis_dlg_adj_layer_props.h>

+ Inheritance diagram for KisDlgAdjLayerProps:

Public Member Functions

KisFilterConfigurationSP filterConfiguration () const
 
 KisDlgAdjLayerProps (KisNodeSP node, KisNodeFilterInterface *nfi, KisPaintDeviceSP paintDevice, KisViewManager *view, KisFilterConfigurationSP configuration, const QString &layerName, const QString &caption, QWidget *parent=0, const char *name=0)
 
QString layerName () const
 
- Public Member Functions inherited from KoDialog
QPushButton * button (ButtonCode id) const
 
QIcon buttonIcon (ButtonCode id) const
 
QString buttonText (ButtonCode id) const
 
QString buttonToolTip (ButtonCode id) const
 
QString buttonWhatsThis (ButtonCode id) const
 
ButtonCode defaultButton () const
 
QString helpLinkText () const
 
void incrementInitialSize (const QSize &size)
 
bool isButtonEnabled (ButtonCode id) const
 
 KoDialog (QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags())
 
QWidget * mainWidget ()
 
QSize minimumSizeHint () const override
 
void setButtonFocus (ButtonCode id)
 
void setButtonGuiItem (ButtonCode id, const KGuiItem &item)
 
void setButtonIcon (ButtonCode id, const QIcon &icon)
 
void setButtons (ButtonCodes buttonMask)
 
void setButtonsOrientation (Qt::Orientation orientation)
 
void setButtonText (ButtonCode id, const QString &text)
 
void setButtonToolTip (ButtonCode id, const QString &text)
 
void setButtonWhatsThis (ButtonCode id, const QString &text)
 
void setDefaultButton (ButtonCode id)
 
void setEscapeButton (ButtonCode id)
 
void setInitialSize (const QSize &size)
 
void setMainWidget (QWidget *widget)
 
void showButton (ButtonCode id, bool state)
 
void showButtonSeparator (bool state)
 
QSize sizeHint () const override
 
 ~KoDialog () override
 

Private Slots

void slotConfigChanged ()
 
void slotNameChanged (const QString &)
 

Private Attributes

KisFilterConfigurationSP m_currentConfiguration
 
KisConfigWidgetm_currentConfigWidget
 
KisFilterm_currentFilter
 
QLineEdit * m_layerName
 
KisNodeSP m_node
 
KisNodeFilterInterfacem_nodeFilterInterface
 
KisPaintDeviceSP m_paintDevice
 

Additional Inherited Members

- Public Types inherited from KoDialog
enum  ButtonCode {
  None = 0x00000000 , Help = 0x00000001 , Default = 0x00000002 , Ok = 0x00000004 ,
  Apply = 0x00000008 , Try = 0x00000010 , Cancel = 0x00000020 , Close = 0x00000040 ,
  No = 0x00000080 , Yes = 0x00000100 , Reset = 0x00000200 , Details = 0x00000400 ,
  User1 = 0x00001000 , User2 = 0x00002000 , User3 = 0x00004000 , NoDefault = 0x00008000
}
 
enum  ButtonPopupMode { InstantPopup = 0 , DelayedPopup = 1 }
 
enum  CaptionFlag { NoCaptionFlags = 0 , AppNameCaption = 1 , ModifiedCaption = 2 , HIGCompliantCaption = AppNameCaption }
 
- Public Slots inherited from KoDialog
void delayedDestruct ()
 
void enableButton (ButtonCode id, bool state)
 
void enableButtonApply (bool state)
 
void enableButtonCancel (bool state)
 
void enableButtonOk (bool state)
 
void enableLinkedHelp (bool state)
 
bool isDetailsWidgetVisible () const
 
virtual void setCaption (const QString &caption)
 
virtual void setCaption (const QString &caption, bool modified)
 
void setDetailsWidget (QWidget *detailsWidget)
 
void setDetailsWidgetVisible (bool visible)
 
void setHelp (const QString &anchor, const QString &appname=QString())
 
void setHelpLinkText (const QString &text)
 
virtual void setPlainCaption (const QString &caption)
 
- Signals inherited from KoDialog
void aboutToShowDetails ()
 
void applyClicked ()
 
void buttonClicked (KoDialog::ButtonCode button)
 
void cancelClicked ()
 
void closeClicked ()
 
void defaultClicked ()
 
void finished ()
 
void helpClicked ()
 
void hidden ()
 
void layoutHintChanged ()
 
void noClicked ()
 
void okClicked ()
 
void resetClicked ()
 
void tryClicked ()
 
void user1Clicked ()
 
void user2Clicked ()
 
void user3Clicked ()
 
void yesClicked ()
 
- Static Public Member Functions inherited from KoDialog
static int groupSpacingHint ()
 
static QString makeStandardCaption (const QString &userCaption, QWidget *window=0, CaptionFlags flags=HIGCompliantCaption)
 
static int marginHint ()
 
static void resizeLayout (QLayout *lay, int margin, int spacing)
 
static void resizeLayout (QWidget *widget, int margin, int spacing)
 
static int spacingHint ()
 
- Protected Slots inherited from KoDialog
virtual void slotButtonClicked (int button)
 
- Protected Member Functions inherited from KoDialog
void closeEvent (QCloseEvent *e) override
 
void hideEvent (QHideEvent *) override
 
void keyPressEvent (QKeyEvent *) override
 
void showEvent (QShowEvent *e) override
 

Detailed Description

Create a new adjustment layer.

Definition at line 24 of file kis_dlg_adj_layer_props.h.

Constructor & Destructor Documentation

◆ KisDlgAdjLayerProps()

KisDlgAdjLayerProps::KisDlgAdjLayerProps ( KisNodeSP node,
KisNodeFilterInterface * nfi,
KisPaintDeviceSP paintDevice,
KisViewManager * view,
KisFilterConfigurationSP configuration,
const QString & layerName,
const QString & caption,
QWidget * parent = 0,
const char * name = 0 )

Create a new adjustment layer dialog

Parameters
nodethe node
nfithe node filter interface
paintDevicethe painting device
viewthe view manager
configurationfilter configuration
layerNamethe name of the adjustment layer
captionthe caption for the dialog – create or properties
parentthe widget parent of this dialog
namethe QObject name, if any

Definition at line 29 of file kis_dlg_adj_layer_props.cc.

38 : KoDialog(parent)
39 , m_node(node)
40 , m_paintDevice(paintDevice)
45{
48
49 setObjectName(name);
50
51 m_currentConfiguration = configuration->clone();
54 }
55
56 setCaption(caption);
57 QWidget * page = new QWidget(this);
58 page->setObjectName("page widget");
59 QHBoxLayout * layout = new QHBoxLayout(page);
60 layout->setContentsMargins(0, 0, 0, 0);
61 setMainWidget(page);
62
63 QVBoxLayout *v1 = new QVBoxLayout();
64 layout->addLayout(v1);
65 QHBoxLayout *hl = new QHBoxLayout();
66 v1->addLayout(hl);
67
68 QLabel * lblName = new QLabel(i18n("Layer name:"), page);
69 lblName->setObjectName("lblName");
70 hl->addWidget(lblName, 0);
71
72 m_layerName = new QLineEdit(page);
73 m_layerName->setObjectName("m_layerName");
74 m_layerName->setText(layerName);
75 m_layerName->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
76 hl->addWidget(m_layerName, 10);
77 connect(m_layerName, SIGNAL(textChanged(QString)), this, SLOT(slotNameChanged(QString)));
78
79 if (m_currentFilter) {
81
85 }
86 }
87
88 if (m_currentFilter == 0 || m_currentConfigWidget == 0) {
89 QLabel * labelNoConfigWidget = new QLabel(i18n("No configuration options are available for this filter"), page);
90 v1->addWidget(labelNoConfigWidget);
91 }
92 else {
93 v1->addWidget(m_currentConfigWidget);
94 connect(m_currentConfigWidget, SIGNAL(sigConfigurationUpdated()), SLOT(slotConfigChanged()));
95 }
96
97 enableButtonOk(!m_layerName->text().isEmpty());
98
99}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
virtual void setView(KisViewManager *view)
virtual void setConfiguration(const KisPropertiesConfigurationSP config)=0
void slotNameChanged(const QString &)
KisNodeFilterInterface * m_nodeFilterInterface
KisConfigWidget * m_currentConfigWidget
KisFilterConfigurationSP m_currentConfiguration
static KisFilterRegistry * instance()
void enableButtonOk(bool state)
Definition KoDialog.cpp:615
void setMainWidget(QWidget *widget)
Definition KoDialog.cpp:354
virtual void setCaption(const QString &caption)
Definition KoDialog.cpp:498
void setButtons(ButtonCodes buttonMask)
Definition KoDialog.cpp:195
void setDefaultButton(ButtonCode id)
Definition KoDialog.cpp:302
@ Ok
Show Ok button. (this button accept()s the dialog; result set to QDialog::Accepted)
Definition KoDialog.h:127
@ Cancel
Show Cancel-button. (this button reject()s the dialog; result set to QDialog::Rejected)
Definition KoDialog.h:130
KoDialog(QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags())
Definition KoDialog.cpp:176
T get(const QString &id) const
virtual KisConfigWidget * createConfigurationWidget(QWidget *parent, const KisPaintDeviceSP dev, bool useForMasks) const

References KoDialog::Cancel, connect(), KisBaseProcessor::createConfigurationWidget(), KisSharedPtr< T >::data(), KoDialog::enableButtonOk(), KoGenericRegistry< T >::get(), KisFilterRegistry::instance(), layerName(), m_currentConfiguration, m_currentConfigWidget, m_currentFilter, m_layerName, KoDialog::Ok, KoDialog::setButtons(), KoDialog::setCaption(), KisConfigWidget::setConfiguration(), KoDialog::setDefaultButton(), KoDialog::setMainWidget(), KisConfigWidget::setView(), slotConfigChanged(), and slotNameChanged().

Member Function Documentation

◆ filterConfiguration()

KisFilterConfigurationSP KisDlgAdjLayerProps::filterConfiguration ( ) const

Definition at line 106 of file kis_dlg_adj_layer_props.cc.

107{
110 if (config) {
111 return config;
112 }
113 }
115}
virtual KisPropertiesConfigurationSP configuration() const =0
static KisResourcesInterfaceSP instance()
virtual KisFilterConfigurationSP defaultConfiguration(KisResourcesInterfaceSP resourcesInterface) const

References KisConfigWidget::configuration(), KisSharedPtr< T >::data(), KisBaseProcessor::defaultConfiguration(), KisGlobalResourcesInterface::instance(), m_currentConfigWidget, and m_currentFilter.

◆ layerName()

QString KisDlgAdjLayerProps::layerName ( ) const

Definition at line 117 of file kis_dlg_adj_layer_props.cc.

118{
119 return m_layerName->text();
120}

References m_layerName.

◆ slotConfigChanged

void KisDlgAdjLayerProps::slotConfigChanged ( )
privateslot

Definition at line 122 of file kis_dlg_adj_layer_props.cc.

123{
124 enableButtonOk(true);
126 if (config) {
127 m_nodeFilterInterface->setFilter(config->cloneWithResourcesSnapshot());
128 }
129 m_node->setDirty();
130}
KisFilterConfigurationSP filterConfiguration() const
virtual void setFilter(KisFilterConfigurationSP filterConfig, bool checkCompareConfig=true)
virtual void setDirty()
Definition kis_node.cpp:577

References KoDialog::enableButtonOk(), filterConfiguration(), m_node, m_nodeFilterInterface, KisNode::setDirty(), and KisNodeFilterInterface::setFilter().

◆ slotNameChanged

void KisDlgAdjLayerProps::slotNameChanged ( const QString & text)
privateslot

Definition at line 101 of file kis_dlg_adj_layer_props.cc.

102{
103 enableButtonOk(!text.isEmpty());
104}

References KoDialog::enableButtonOk().

Member Data Documentation

◆ m_currentConfiguration

KisFilterConfigurationSP KisDlgAdjLayerProps::m_currentConfiguration
private

Definition at line 66 of file kis_dlg_adj_layer_props.h.

◆ m_currentConfigWidget

KisConfigWidget* KisDlgAdjLayerProps::m_currentConfigWidget
private

Definition at line 64 of file kis_dlg_adj_layer_props.h.

◆ m_currentFilter

KisFilter* KisDlgAdjLayerProps::m_currentFilter
private

Definition at line 65 of file kis_dlg_adj_layer_props.h.

◆ m_layerName

QLineEdit* KisDlgAdjLayerProps::m_layerName
private

Definition at line 67 of file kis_dlg_adj_layer_props.h.

◆ m_node

KisNodeSP KisDlgAdjLayerProps::m_node
private

Definition at line 62 of file kis_dlg_adj_layer_props.h.

◆ m_nodeFilterInterface

KisNodeFilterInterface* KisDlgAdjLayerProps::m_nodeFilterInterface
private

Definition at line 68 of file kis_dlg_adj_layer_props.h.

◆ m_paintDevice

KisPaintDeviceSP KisDlgAdjLayerProps::m_paintDevice
private

Definition at line 63 of file kis_dlg_adj_layer_props.h.


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