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

#include <dlg_layersplit.h>

+ Inheritance diagram for DlgLayerSplit:

Public Member Functions

bool createBaseGroup () const
 
bool createSeparateGroups () const
 
bool disregardOpacity () const
 
 DlgLayerSplit ()
 
int fuzziness () const
 
bool hideOriginal () const
 
bool lockAlpha () const
 
KoColorSetSP palette () const
 
bool sortLayers () const
 
 ~DlgLayerSplit () override
 
- 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 slotApplyClicked ()
 
void slotChangeMode (int)
 
void slotSetPalette (KoColorSetSP pal)
 

Private Attributes

KisPaletteChooserm_colorSetChooser {0}
 
bool m_modeToMask
 
WdgLayerSplitm_page {0}
 
KoColorSetSP m_palette {0}
 

Friends

class LayerSplit
 

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

This dialog allows the user to create a selection mask based on a (range of) colors.

Definition at line 20 of file dlg_layersplit.h.

Constructor & Destructor Documentation

◆ DlgLayerSplit()

DlgLayerSplit::DlgLayerSplit ( )

Definition at line 25 of file dlg_layersplit.cpp.

26 : KoDialog()
27{
28 m_page = new WdgLayerSplit(this);
29
30 setCaption(i18n("Split Layer"));
33
34 m_page->intFuzziness->setRange(0, 200);
35 m_page->intFuzziness->setSingleStep(1);
36
38 m_page->paletteChooser->setPopupWidget(m_colorSetChooser);
39 connect(m_colorSetChooser, SIGNAL(sigPaletteSelected(KoColorSetSP)), this, SLOT(slotSetPalette(KoColorSetSP)));
40
41 QMap<QString, QVariant> defaults;
42 defaults[ m_page->intFuzziness->objectName() ] = QVariant::fromValue<int>(20);
43 defaults[ m_page->chkCreateGroupLayer->objectName() ] = QVariant::fromValue<bool>(true);
44 defaults[ m_page->chkSeparateGroupLayers->objectName() ] = QVariant::fromValue<bool>(false);
45 defaults[ m_page->chkAlphaLock->objectName() ] = QVariant::fromValue<bool>(true);
46 defaults[ m_page->chkHideOriginal->objectName() ] = QVariant::fromValue<bool>(false);
47 defaults[ m_page->chkSortLayers->objectName() ] = QVariant::fromValue<bool>(true);
48 defaults[ m_page->chkDisregardOpacity->objectName() ] = QVariant::fromValue<bool>(true);
49
50 KisDialogStateSaver::restoreState(m_page, "krita/layer_split", defaults);
51
52 connect(m_page->cmbMode, SIGNAL(currentIndexChanged(int)), this, SLOT(slotChangeMode(int)));
53
54 KisConfig cfg(true);
55 QString paletteName = cfg.readEntry<QString>("layersplit/paletteName", "Default"); // resource names are not translatable by design
57 KoColorSetSP pal = pserver->resource("", "", paletteName);
58 m_modeToMask = m_page->cmbMode->currentIndex();
60
61 if (pal) {
62 m_palette = pal;
63 m_page->paletteChooser->setText(pal->name());
64 QIcon icon(QPixmap::fromImage(pal->image()));
65 m_page->paletteChooser->setIcon(icon);
66 }
67
68
69 connect(this, SIGNAL(applyClicked()), this, SLOT(slotApplyClicked()));
70
72}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
KoColorSetSP m_palette
WdgLayerSplit * m_page
void slotChangeMode(int)
KisPaletteChooser * m_colorSetChooser
void slotSetPalette(KoColorSetSP pal)
void applyClicked()
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
@ Apply
Show Apply button.
Definition KoDialog.h:128
@ 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
KRITAWIDGETUTILS_EXPORT void restoreState(QWidget *parent, const QString &dialogName, const QMap< QString, QVariant > &defaults=QMap< QString, QVariant >())
restoreState restores the state of the dialog
static KoResourceServerProvider * instance()
KoResourceServer< KoColorSet > * paletteServer

References KoDialog::Apply, KoDialog::applyClicked(), KoDialog::Cancel, connect(), KoResourceServerProvider::instance(), m_colorSetChooser, m_modeToMask, m_page, m_palette, KoResourceServerProvider::paletteServer, KisConfig::readEntry(), KisDialogStateSaver::restoreState(), KoDialog::setButtons(), KoDialog::setCaption(), KoDialog::setDefaultButton(), KoDialog::setMainWidget(), slotApplyClicked(), slotChangeMode(), and slotSetPalette().

◆ ~DlgLayerSplit()

DlgLayerSplit::~DlgLayerSplit ( )
override

Definition at line 74 of file dlg_layersplit.cpp.

75{
76}

Member Function Documentation

◆ createBaseGroup()

bool DlgLayerSplit::createBaseGroup ( ) const

Definition at line 91 of file dlg_layersplit.cpp.

92{
93 return m_page->chkCreateGroupLayer->isChecked();
94}

References m_page.

◆ createSeparateGroups()

bool DlgLayerSplit::createSeparateGroups ( ) const

Definition at line 96 of file dlg_layersplit.cpp.

97{
98 return m_page->chkSeparateGroupLayers->isChecked();
99}

References m_page.

◆ disregardOpacity()

bool DlgLayerSplit::disregardOpacity ( ) const

Definition at line 116 of file dlg_layersplit.cpp.

117{
118 return m_page->chkDisregardOpacity->isChecked();
119}

References m_page.

◆ fuzziness()

int DlgLayerSplit::fuzziness ( ) const

Definition at line 121 of file dlg_layersplit.cpp.

122{
123 return m_page->intFuzziness->value();
124
125}

References m_page.

◆ hideOriginal()

bool DlgLayerSplit::hideOriginal ( ) const

Definition at line 106 of file dlg_layersplit.cpp.

107{
108 return m_page->chkHideOriginal->isChecked();
109}

References m_page.

◆ lockAlpha()

bool DlgLayerSplit::lockAlpha ( ) const

Definition at line 101 of file dlg_layersplit.cpp.

102{
103 return m_page->chkAlphaLock->isChecked();
104}

References m_page.

◆ palette()

KoColorSetSP DlgLayerSplit::palette ( ) const

Definition at line 127 of file dlg_layersplit.cpp.

128{
129 return m_palette;
130}

References m_palette.

◆ slotApplyClicked

void DlgLayerSplit::slotApplyClicked ( )
privateslot

Definition at line 78 of file dlg_layersplit.cpp.

79{
80
81 KisDialogStateSaver::saveState(m_page, "krita/layer_split");
82
83 KisConfig cfg(false);
84 if (m_palette) {
85 cfg.writeEntry("layersplit/paletteName", m_palette->name());
86 }
87
88 accept();
89}
KRITAWIDGETUTILS_EXPORT void saveState(QWidget *parent, const QString &dialogName)
saveState saves the state for the specified widgets

References m_page, m_palette, KisDialogStateSaver::saveState(), and KisConfig::writeEntry().

◆ slotChangeMode

void DlgLayerSplit::slotChangeMode ( int idx)
privateslot

Definition at line 142 of file dlg_layersplit.cpp.

142 {
143 m_modeToMask = idx;
144 if( m_modeToMask){
145 m_page->chkCreateGroupLayer->hide();
146 m_page->chkSeparateGroupLayers->hide();
147 m_page->chkAlphaLock->hide();
148 m_page->chkHideOriginal->hide();
149 }
150 else{
151 m_page->chkCreateGroupLayer->show();
152 m_page->chkSeparateGroupLayers->show();
153 m_page->chkAlphaLock->show();
154 m_page->chkHideOriginal->show();
155 }
156}

References m_modeToMask, and m_page.

◆ slotSetPalette

void DlgLayerSplit::slotSetPalette ( KoColorSetSP pal)
privateslot

Definition at line 132 of file dlg_layersplit.cpp.

133{
134 if (pal) {
135 m_palette = pal;
136 m_page->paletteChooser->setText(pal->name());
137 QIcon icon(QPixmap::fromImage(pal->image()));
138 m_page->paletteChooser->setIcon(icon);
139 }
140}

References m_page, and m_palette.

◆ sortLayers()

bool DlgLayerSplit::sortLayers ( ) const

Definition at line 111 of file dlg_layersplit.cpp.

112{
113 return m_page->chkSortLayers->isChecked();
114}

References m_page.

Friends And Related Symbol Documentation

◆ LayerSplit

friend class LayerSplit
friend

Definition at line 47 of file dlg_layersplit.h.

Member Data Documentation

◆ m_colorSetChooser

KisPaletteChooser* DlgLayerSplit::m_colorSetChooser {0}
private

Definition at line 51 of file dlg_layersplit.h.

51{0};

◆ m_modeToMask

bool DlgLayerSplit::m_modeToMask
private

Definition at line 48 of file dlg_layersplit.h.

◆ m_page

WdgLayerSplit* DlgLayerSplit::m_page {0}
private

Definition at line 50 of file dlg_layersplit.h.

50{0};

◆ m_palette

KoColorSetSP DlgLayerSplit::m_palette {0}
private

Definition at line 52 of file dlg_layersplit.h.

52{0};

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