82
82
QWidget* mainWidget = new QWidget(this);
83
83
setWidget(mainWidget);
84
m_delayTimer.setSingleShot(true);
85
86
m_wdgLayerBox->setupUi(mainWidget);
87
88
setMinimumSize(mainWidget->minimumSizeHint());
89
m_wdgLayerBox->listLayers->viewport()->installEventFilter(this);
90
90
m_wdgLayerBox->listLayers->setDragDropMode(QAbstractItemView::InternalMove);
91
91
m_wdgLayerBox->listLayers->setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
157
157
connect(m_wdgLayerBox->bnProperties, SIGNAL(clicked()), SLOT(slotPropertiesClicked()));
158
158
connect(m_wdgLayerBox->bnDuplicate, SIGNAL(clicked()), SLOT(slotDuplicateClicked()));
159
connect(m_wdgLayerBox->doubleOpacity, SIGNAL(valueChanged(qreal, bool)), SLOT(slotOpacityChanged(qreal, bool)));
159
connect(m_wdgLayerBox->doubleOpacity, SIGNAL(valueChanged(qreal)), SLOT(slotOpacitySliderMoved(qreal)));
160
connect(&m_delayTimer, SIGNAL(timeout()), SLOT(slotOpacityChanged()));
160
161
connect(m_wdgLayerBox->cmbComposite, SIGNAL(activated(const QString&)), SLOT(slotCompositeOpChanged(const QString&)));
215
216
Q_ASSERT(! m_image.isNull());
217
m_wdgLayerBox->bnDelete->setEnabled(m_nodeManager->activeNode());
218
m_wdgLayerBox->bnRaise->setEnabled(m_nodeManager->activeNode()
219
&& (m_nodeManager->activeNode()->nextSibling()
220
|| (m_nodeManager->activeNode()->parent()
221
&& m_nodeManager->activeNode()->parent() != m_image->root())));
223
m_wdgLayerBox->bnLower->setEnabled(m_nodeManager->activeNode() && m_nodeManager->activeNode()->prevSibling());
225
m_wdgLayerBox->doubleOpacity->setEnabled(m_nodeManager->activeNode());
226
m_wdgLayerBox->doubleOpacity->setDecimals(0);
228
m_wdgLayerBox->cmbComposite->setEnabled(m_nodeManager->activeNode());
230
if (KisNodeSP active = m_nodeManager->activeNode()) {
218
KisNodeSP active = m_nodeManager->activeNode();
220
m_wdgLayerBox->bnDelete->setEnabled(active);
221
m_wdgLayerBox->bnRaise->setEnabled(active && (active->nextSibling()
222
|| (active->parent() && active->parent() != m_image->root())));
224
m_wdgLayerBox->bnLower->setEnabled(active && active->prevSibling());
225
m_wdgLayerBox->bnDuplicate->setEnabled(active);
226
m_wdgLayerBox->bnProperties->setEnabled(active);
228
m_wdgLayerBox->doubleOpacity->setEnabled(active);
229
m_wdgLayerBox->doubleOpacity->setRange(0, 100, 0);
231
m_wdgLayerBox->cmbComposite->setEnabled(active);
231
234
if (m_nodeManager->activePaintDevice())
232
235
slotFillCompositeOps(m_nodeManager->activeColorSpace());
383
386
for (int i = 0, n = l.count(); i < n; ++i) {
384
387
KisNodeSP node = m_nodeModel->nodeFromIndex(l.at(i));
385
m_nodeManager->removeNode(node);
388
if (!node->systemLocked()) {
389
m_nodeManager->removeNode(node);
387
392
m_nodeManager->updateGUI();
420
425
m_nodeManager->nodeCompositeOpChanged(m_nodeManager->activeColorSpace()->compositeOp(_compositeOp));
423
void KisLayerBox::slotOpacityChanged(qreal opacity, bool final)
425
m_nodeManager->nodeOpacityChanged(opacity, final);
428
void KisLayerBox::slotOpacityChanged()
430
m_nodeManager->nodeOpacityChanged(m_newOpacity, true);
433
void KisLayerBox::slotOpacitySliderMoved(qreal opacity)
435
m_newOpacity = opacity;
436
m_delayTimer.start(200);
428
441
#include "kis_layer_box.moc"