FilmGrainTool::FilmGrainTool(QObject* const parent) : EditorToolThreaded(parent), d(new Private) { setObjectName(QLatin1String("filmgrain")); setToolName(i18n("Film Grain")); setToolIcon(QIcon::fromTheme(QLatin1String("filmgrain"))); setInitPreview(true); d->previewWidget = new ImageRegionWidget; setToolView(d->previewWidget); setPreviewModeMask(PreviewToolBar::AllPreviewModes); // ------------------------------------------------------------- d->gboxSettings = new EditorToolSettings; d->gboxSettings->setButtons(EditorToolSettings::Default| EditorToolSettings::Ok| EditorToolSettings::Cancel| EditorToolSettings::Try); d->settingsView = new FilmGrainSettings(d->gboxSettings->plainPage()); setToolSettings(d->gboxSettings); // ------------------------------------------------------------- connect(d->settingsView, SIGNAL(signalSettingsChanged()), this, SLOT(slotTimer())); }
void EditorTool::setPlugin(DPluginEditor* const plugin) { d->plugin = plugin; setToolName(d->plugin->name()); setToolIcon(d->plugin->icon()); d->settings->setTool(this); }
ChannelMixer::ChannelMixer(QObject* parent) : BatchTool("ChannelMixer", ColorTool, parent) { setToolTitle(i18n("Channel Mixer")); setToolDescription(i18n("A tool to mix color channel.")); setToolIcon(KIcon(SmallIcon("channelmixer"))); KVBox* vbox = new KVBox; KHBox* hbox = new KHBox(vbox); QLabel* channelLabel = new QLabel(hbox); channelLabel->setText(i18n("Channel:")); m_channelCB = new KComboBox(hbox); m_channelCB->addItem(i18n("Red"), QVariant(RedChannel)); m_channelCB->addItem(i18n("Green"), QVariant(GreenChannel)); m_channelCB->addItem(i18n("Blue"), QVariant(BlueChannel)); m_settingsView = new MixerSettings(vbox); QLabel* space = new QLabel(vbox); vbox->setStretchFactor(space, 10); setSettingsWidget(vbox); connect(m_settingsView, SIGNAL(signalSettingsChanged()), this, SLOT(slotSettingsChanged())); connect(m_channelCB, SIGNAL(activated(int)), this, SLOT(slotChannelChanged())); connect(m_settingsView, SIGNAL(signalMonochromeActived(bool)), this, SLOT(slotMonochromeActived(bool))); }
Sharpen::Sharpen(QObject* parent) : BatchTool("Sharpen", EnhanceTool, parent) { setToolTitle(i18n("Sharpen Image")); setToolDescription(i18n("A tool to sharpen images")); setToolIcon(KIcon(SmallIcon("sharpenimage"))); }
BWConvert::BWConvert(QObject* parent) : BatchTool("BWConvert", ColorTool, parent), m_settingsView(0) { setToolTitle(i18n("B&W Convert")); setToolDescription(i18n("A tool to convert to black and white.")); setToolIcon(KIcon(SmallIcon("bwtonal"))); }
CharcoalTool::CharcoalTool(QObject* const parent) : EditorToolThreaded(parent), d(new Private) { setObjectName(QLatin1String("charcoal")); setToolName(i18n("Charcoal")); setToolIcon(QIcon::fromTheme(QLatin1String("charcoaltool"))); // ------------------------------------------------------------- d->gboxSettings = new EditorToolSettings; d->gboxSettings->setButtons(EditorToolSettings::Default| EditorToolSettings::Ok| EditorToolSettings::Cancel| EditorToolSettings::Try); d->previewWidget = new ImageRegionWidget; // ------------------------------------------------------------- QLabel* label1 = new QLabel(i18n("Pencil size:")); d->pencilInput = new DIntNumInput; d->pencilInput->setRange(1, 100, 1); d->pencilInput->setDefaultValue(5); d->pencilInput->setWhatsThis( i18n("Set here the charcoal pencil size used to simulate the drawing.")); // ------------------------------------------------------------- QLabel* label2 = new QLabel(i18nc("smoothing value of the pencil", "Smooth:")); d->smoothInput = new DIntNumInput; d->smoothInput->setRange(1, 100, 1); d->smoothInput->setDefaultValue(10); d->smoothInput->setWhatsThis( i18n("This value controls the smoothing effect of the pencil " "under the canvas.")); // ------------------------------------------------------------- const int spacing = d->gboxSettings->spacingHint(); QGridLayout* mainLayout = new QGridLayout; mainLayout->addWidget(label1, 0, 0, 1, 2); mainLayout->addWidget(d->pencilInput, 1, 0, 1, 2); mainLayout->addWidget(label2, 2, 0, 1, 2); mainLayout->addWidget(d->smoothInput, 3, 0, 1, 2); mainLayout->setRowStretch(4, 10); mainLayout->setContentsMargins(spacing, spacing, spacing, spacing); mainLayout->setSpacing(spacing); d->gboxSettings->plainPage()->setLayout(mainLayout); // ------------------------------------------------------------- setPreviewModeMask(PreviewToolBar::AllPreviewModes); setToolSettings(d->gboxSettings); setToolView(d->previewWidget); }
ColorBalance::ColorBalance(QObject* parent) : BatchTool("ColorBalance", ColorTool, parent) { setToolTitle(i18n("Color Balance")); setToolDescription(i18n("A tool to adjust color balance.")); setToolIcon(KIcon(SmallIcon("adjustrgb"))); QWidget* box = new QWidget; m_settingsView = new CBSettings(box); setSettingsWidget(box); connect(m_settingsView, SIGNAL(signalSettingsChanged()), this, SLOT(slotSettingsChanged())); }
WhiteBalanceTool::WhiteBalanceTool(QObject* const parent) : EditorToolThreaded(parent), d(new Private) { setObjectName("whitebalance"); setToolName(i18n("White Balance")); setToolIcon(SmallIcon("whitebalance")); setInitPreview(true); // ------------------------------------------------------------- d->previewWidget = new ImageRegionWidget; setToolView(d->previewWidget); setPreviewModeMask(PreviewToolBar::AllPreviewModes); // ------------------------------------------------------------- d->gboxSettings = new EditorToolSettings; d->gboxSettings->setTools(EditorToolSettings::Histogram); d->gboxSettings->setHistogramType(LRGBC); d->gboxSettings->setButtons(EditorToolSettings::Default| EditorToolSettings::Load| EditorToolSettings::SaveAs| EditorToolSettings::Ok| EditorToolSettings::Cancel); // ------------------------------------------------------------- d->settingsView = new WBSettings(d->gboxSettings->plainPage()); setToolSettings(d->gboxSettings); // ------------------------------------------------------------- connect(d->settingsView, SIGNAL(signalSettingsChanged()), this, SLOT(slotTimer())); connect(d->settingsView, SIGNAL(signalAutoAdjustExposure()), this, SLOT(slotAutoAdjustExposure())); connect(d->settingsView, SIGNAL(signalPickerColorButtonActived()), this, SLOT(slotPickerColorButtonActived())); connect(d->previewWidget, SIGNAL(signalCapturedPointFromOriginal(Digikam::DColor,QPoint)), this, SLOT(slotColorSelectedFromOriginal(Digikam::DColor))); /* connect(d->previewWidget, SIGNAL(spotPositionChangedFromTarget(Digikam::DColor,QPoint)), this, SLOT(slotColorSelectedFromTarget(Digikam::DColor))); */ }
BCGTool::BCGTool(QObject* const parent) : EditorToolThreaded(parent), d(new Private) { setObjectName("bcgadjust"); setToolName(i18n("Brightness / Contrast / Gamma")); setToolVersion(1); setToolIcon(SmallIcon("contrast")); setToolHelp("bcgadjusttool.anchor"); setToolCategory(FilterAction::ReproducibleFilter); setInitPreview(true); d->previewWidget = new ImageRegionWidget; setToolView(d->previewWidget); setPreviewModeMask(PreviewToolBar::AllPreviewModes); // ------------------------------------------------------------- d->gboxSettings = new EditorToolSettings; d->gboxSettings->setTools(EditorToolSettings::Histogram); d->gboxSettings->setHistogramType(LRGBC); d->gboxSettings->setButtons(EditorToolSettings::Default| EditorToolSettings::Ok| EditorToolSettings::Cancel); // EditorToolSettings::Try); // ------------------------------------------------------------- d->settingsView = new BCGSettings(d->gboxSettings->plainPage()); setToolSettings(d->gboxSettings); // ------------------------------------------------------------- connect(d->settingsView, SIGNAL(signalSettingsChanged()), this, SLOT(slotTimer())); }
AutoCorrection::AutoCorrection(QObject* parent) : BatchTool("AutoCorrection", ColorTool, parent) { setToolTitle(i18n("Color Auto-correction")); setToolDescription(i18n("A tool to automatically correct image colors.")); setToolIcon(KIcon(SmallIcon("autocorrection"))); KVBox* vbox = new KVBox; QLabel* label = new QLabel(vbox); m_comboBox = new KComboBox(vbox); m_comboBox->insertItem(AutoLevelsCorrection, i18n("Auto Levels")); m_comboBox->insertItem(NormalizeCorrection, i18n("Normalize")); m_comboBox->insertItem(EqualizeCorrection, i18n("Equalize")); m_comboBox->insertItem(StretchContrastCorrection, i18n("Stretch Contrast")); m_comboBox->insertItem(AutoExposureCorrection, i18n("Auto Exposure")); label->setText(i18n("Filter:")); QLabel* space = new QLabel(vbox); vbox->setStretchFactor(space, 10); setSettingsWidget(vbox); connect(m_comboBox, SIGNAL(activated(int)), this, SLOT(slotSettingsChanged())); }
RainDropTool::RainDropTool(QObject* parent) : EditorToolThreaded(parent), d(new RainDropToolPriv) { setObjectName("raindrops"); setToolName(i18n("Raindrops")); setToolIcon(SmallIcon("raindrop")); d->previewWidget = new ImageGuideWidget(0, false, ImageGuideWidget::HVGuideMode); d->previewWidget->setWhatsThis(i18n("This is the preview of the Raindrop effect." "<p>Note: if you have previously selected an area in the editor, " "this will be unaffected by the filter. You can use this method to " "disable the Raindrops effect on a human face, for example.</p>")); setToolView(d->previewWidget); setPreviewModeMask(PreviewToolBar::AllPreviewModes); // ------------------------------------------------------------- d->gboxSettings = new EditorToolSettings; d->gboxSettings->setButtons(EditorToolSettings::Default| EditorToolSettings::Ok| EditorToolSettings::Try| EditorToolSettings::Cancel); // ------------------------------------------------------------- QLabel* label1 = new QLabel(i18n("Drop size:")); d->dropInput = new RIntNumInput; d->dropInput->setRange(0, 200, 1); d->dropInput->setSliderEnabled(true); d->dropInput->setDefaultValue(80); d->dropInput->setWhatsThis( i18n("Set here the raindrops' size.")); // ------------------------------------------------------------- QLabel* label2 = new QLabel(i18n("Number:")); d->amountInput = new RIntNumInput; d->amountInput->setRange(1, 500, 1); d->amountInput->setSliderEnabled(true); d->amountInput->setDefaultValue(150); d->amountInput->setWhatsThis( i18n("This value controls the maximum number of raindrops.")); // ------------------------------------------------------------- QLabel* label3 = new QLabel(i18n("Fish eyes:")); d->coeffInput = new RIntNumInput; d->coeffInput->setRange(1, 100, 1); d->coeffInput->setSliderEnabled(true); d->coeffInput->setDefaultValue(30); d->coeffInput->setWhatsThis( i18n("This value is the fish-eye-effect optical " "distortion coefficient.")); // ------------------------------------------------------------- QGridLayout* mainLayout = new QGridLayout; mainLayout->addWidget(label1, 0, 0, 1, 3); mainLayout->addWidget(d->dropInput, 1, 0, 1, 3); mainLayout->addWidget(label2, 2, 0, 1, 3); mainLayout->addWidget(d->amountInput, 3, 0, 1, 3); mainLayout->addWidget(label3, 4, 0, 1, 3); mainLayout->addWidget(d->coeffInput, 5, 0, 1, 3); mainLayout->setRowStretch(6, 10); mainLayout->setMargin(d->gboxSettings->spacingHint()); mainLayout->setSpacing(d->gboxSettings->spacingHint()); d->gboxSettings->plainPage()->setLayout(mainLayout); // ------------------------------------------------------------- setToolSettings(d->gboxSettings); init(); }