void KisCustomBrushWidget::slotUpdateSpacing(qreal spacing) { if (m_brush) { m_brush->setSpacing(spacing); } emit sigBrushChanged(); }
void KisCustomBrushWidget::slotUpdateUseColorAsMask(bool useColorAsMask) { if (m_brush){ static_cast<KisGbrBrush*>( m_brush.data() )->setUseColorAsMask( useColorAsMask ); preview->setPixmap(QPixmap::fromImage( m_brush->image() )); } emit sigBrushChanged(); }
KisBrushOptionWidget::KisBrushOptionWidget() : KisPaintOpOption(i18n("Brush Tip"), KisPaintOpOption::brushCategory(), true) { m_checkable = false; m_brushSelectionWidget = new KisBrushSelectionWidget(); connect(m_brushSelectionWidget, SIGNAL(sigPrecisionChanged()), SIGNAL(sigSettingChanged())); connect(m_brushSelectionWidget, SIGNAL(sigBrushChanged()), SLOT(brushChanged())); m_brushSelectionWidget->hide(); setConfigurationPage(m_brushSelectionWidget); m_brushOption.setBrush(brush()); }
void KisAutoBrushWidget::paramChanged() { KisMaskGenerator* kas; if (comboBoxMaskType->currentIndex() == 2) { // gaussian brush if (comboBoxShape->currentIndex() == 0) { kas = new KisGaussCircleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value()); } else { kas = new KisGaussRectangleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value()); } } else if (comboBoxMaskType->currentIndex() == 1) { // soft brush if (comboBoxShape->currentIndex() == 0) { kas = new KisCurveCircleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value(), softnessCurve->curve()); } else { kas = new KisCurveRectangleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value(), softnessCurve->curve()); } } else {// default == 0 or any other if (comboBoxShape->currentIndex() == 0) { // use index compare instead of comparing a translatable string kas = new KisCircleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value()); } else { kas = new KisRectangleMaskGenerator(inputRadius->value(), inputRatio->value(), inputHFade->value(), inputVFade->value(), inputSpikes->value()); } } Q_CHECK_PTR(kas); m_autoBrush = new KisAutoBrush(kas, inputAngle->value() / 180.0 * M_PI, inputRandomness->value() / 100.0, density->value() / 100.0); m_autoBrush->setSpacing(inputSpacing->value()); m_brush = m_autoBrush->image(); QImage pi(m_brush); double coeff = 1.0; int bPw = brushPreview->width() - 3; if (pi.width() > bPw) { coeff = bPw / (double)pi.width(); } int bPh = brushPreview->height() - 3; if (pi.height() > coeff * bPh) { coeff = bPh / (double)pi.height(); } if (coeff < 1.0) { pi = pi.scaled((int)(coeff * pi.width()) , (int)(coeff * pi.height()), Qt::IgnoreAspectRatio, Qt::SmoothTransformation); } QPixmap p = QPixmap::fromImage(pi); brushPreview->setIcon(QIcon(p)); emit sigBrushChanged(); }
void KisCustomBrushWidget::slotUpdateCurrentBrush(int) { if (brushStyle->currentIndex() == 0) { comboBox2->setEnabled(false); } else { comboBox2->setEnabled(true); } if (m_image) { createBrush(); if (m_brush){ preview->setPixmap(QPixmap::fromImage( m_brush->image() )); } } emit sigBrushChanged(); }
KisBrushSelectionWidget::KisBrushSelectionWidget(QWidget * parent) : QWidget(parent) { QHBoxLayout * l = new QHBoxLayout(this); l->setObjectName("brushpopuplayout"); l->setMargin(2); l->setSpacing(2); m_brushesTab = new QTabWidget(this); m_brushesTab->setObjectName("brushestab"); m_brushesTab->setFocusPolicy(Qt::StrongFocus); m_brushesTab->setContentsMargins(1, 1, 1, 1); l->addWidget(m_brushesTab); m_autoBrushWidget = new KisAutoBrushWidget(0, "autobrush", i18n("Autobrush")); connect(m_autoBrushWidget, SIGNAL(sigBrushChanged()), SIGNAL(sigBrushChanged())); m_brushesTab->addTab(m_autoBrushWidget, i18n("Autobrush")); m_brushChooser = new KisBrushChooser(0); connect(m_brushChooser, SIGNAL(sigBrushChanged()), SIGNAL(sigBrushChanged())); m_brushesTab->addTab(m_brushChooser, i18n("Predefined Brushes")); // XXX: pass image! m_customBrushWidget = new KisCustomBrushWidget(0, i18n("Custom Brush"), 0); connect(m_customBrushWidget, SIGNAL(sigBrushChanged()), SIGNAL(sigBrushChanged())); m_brushesTab->addTab(m_customBrushWidget, i18n("Custom Brush")); m_textBrushWidget = new KisTextBrushChooser(0, "textbrush", i18n("Text Brush")); connect(m_textBrushWidget, SIGNAL(sigBrushChanged()), SIGNAL(sigBrushChanged())); m_brushesTab->addTab(m_textBrushWidget, i18n("Text Brush")); setLayout(l); m_brushChooser->itemChooser()->setCurrent(0); m_autoBrushWidget->activate(); }