Bugfix in SpotRemoval tool GUI (Batch Editor) + Partial Paste handling
This commit is contained in:
parent
9bb19eb1a3
commit
8b60ea4794
@ -1022,6 +1022,7 @@ PARTIALPASTE_SHARPENEDGE;Bords
|
||||
PARTIALPASTE_SHARPENING;Netteté
|
||||
PARTIALPASTE_SHARPENMICRO;Microcontraste
|
||||
PARTIALPASTE_SOFTLIGHT;Lumière douce
|
||||
PARTIALPASTE_SPOT;Retrait de taches
|
||||
PARTIALPASTE_TM_FATTAL;Compression de plage dynamique
|
||||
PARTIALPASTE_VIBRANCE;Vibrance
|
||||
PARTIALPASTE_VIGNETTING;Correction du vignettage
|
||||
|
@ -1044,6 +1044,7 @@ PARTIALPASTE_SHARPENEDGE;Edges
|
||||
PARTIALPASTE_SHARPENING;Sharpening (USM/RL)
|
||||
PARTIALPASTE_SHARPENMICRO;Microcontrast
|
||||
PARTIALPASTE_SOFTLIGHT;Soft light
|
||||
PARTIALPASTE_SPOT;Spot removal
|
||||
PARTIALPASTE_TM_FATTAL;Dynamic range compression
|
||||
PARTIALPASTE_VIBRANCE;Vibrance
|
||||
PARTIALPASTE_VIGNETTING;Vignetting correction
|
||||
|
@ -57,6 +57,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
labcurve = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_LABCURVE")));
|
||||
|
||||
// Detail Settings:
|
||||
spot = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SPOT")));
|
||||
sharpen = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHARPENING")));
|
||||
localcontrast = Gtk::manage(new Gtk::CheckButton(M("PARTIALPASTE_LOCALCONTRAST")));
|
||||
sharpenedge = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHARPENEDGE")));
|
||||
@ -164,6 +165,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
//DETAIL
|
||||
vboxes[1]->pack_start (*detail, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[1]->pack_start (*hseps[1], Gtk::PACK_SHRINK, 2);
|
||||
vboxes[1]->pack_start (*spot, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[1]->pack_start (*sharpen, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[1]->pack_start (*localcontrast, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[1]->pack_start (*sharpenedge, Gtk::PACK_SHRINK, 2);
|
||||
@ -326,6 +328,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
labcurveConn = labcurve->signal_toggled().connect (sigc::bind (sigc::mem_fun(*basic, &Gtk::CheckButton::set_inconsistent), true));
|
||||
|
||||
// Detail Settings:
|
||||
spotConn = spot->signal_toggled().connect (sigc::bind (sigc::mem_fun(*detail, &Gtk::CheckButton::set_inconsistent), true));
|
||||
sharpenConn = sharpen->signal_toggled().connect (sigc::bind (sigc::mem_fun(*detail, &Gtk::CheckButton::set_inconsistent), true));
|
||||
localcontrastConn = localcontrast->signal_toggled().connect (sigc::bind (sigc::mem_fun(*detail, &Gtk::CheckButton::set_inconsistent), true));
|
||||
gradsharpenConn = sharpenedge->signal_toggled().connect (sigc::bind (sigc::mem_fun(*detail, &Gtk::CheckButton::set_inconsistent), true));
|
||||
@ -539,6 +542,7 @@ void PartialPasteDlg::basicToggled ()
|
||||
void PartialPasteDlg::detailToggled ()
|
||||
{
|
||||
|
||||
ConnectionBlocker spotBlocker(spotConn);
|
||||
ConnectionBlocker sharpenBlocker(sharpenConn);
|
||||
ConnectionBlocker localcontrastBlocker(localcontrastConn);
|
||||
ConnectionBlocker gradsharpenBlocker(gradsharpenConn);
|
||||
@ -551,6 +555,7 @@ void PartialPasteDlg::detailToggled ()
|
||||
|
||||
detail->set_inconsistent (false);
|
||||
|
||||
spot->set_active (detail->get_active ());
|
||||
sharpen->set_active (detail->get_active ());
|
||||
localcontrast->set_active(detail->get_active());
|
||||
sharpenedge->set_active (detail->get_active ());
|
||||
@ -717,6 +722,10 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dstPP, Param
|
||||
filterPE.colorappearance = falsePE.colorappearance;
|
||||
}
|
||||
|
||||
if (!spot->get_active ()) {
|
||||
filterPE.spot = falsePE.spot;
|
||||
}
|
||||
|
||||
if (!sharpen->get_active ()) {
|
||||
filterPE.sharpening = falsePE.sharpening;
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ public:
|
||||
Gtk::CheckButton* colorappearance;
|
||||
|
||||
// options in detail:
|
||||
Gtk::CheckButton* spot;
|
||||
Gtk::CheckButton* sharpen;
|
||||
Gtk::CheckButton* sharpenedge;
|
||||
Gtk::CheckButton* sharpenmicro;
|
||||
@ -146,7 +147,7 @@ public:
|
||||
sigc::connection everythingConn, basicConn, detailConn, colorConn, lensConn, compositionConn, metaConn, rawConn, advancedConn;
|
||||
|
||||
sigc::connection wbConn, exposureConn, localcontrastConn, shConn, pcvignetteConn, gradientConn, labcurveConn, colorappearanceConn;
|
||||
sigc::connection sharpenConn, gradsharpenConn, microcontrastConn, impdenConn, dirpyrdenConn, defringeConn, epdConn, fattalConn, dirpyreqConn, waveletConn, retinexConn, dehazeConn;
|
||||
sigc::connection spotConn, sharpenConn, gradsharpenConn, microcontrastConn, impdenConn, dirpyrdenConn, defringeConn, epdConn, fattalConn, dirpyreqConn, waveletConn, retinexConn, dehazeConn;
|
||||
sigc::connection vibranceConn, chmixerConn, hsveqConn, rgbcurvesConn, chmixerbwConn, colortoningConn, filmSimulationConn, softlightConn;
|
||||
sigc::connection distortionConn, cacorrConn, vignettingConn, lcpConn;
|
||||
sigc::connection coarserotConn, finerotConn, cropConn, resizeConn, prsharpeningConn, perspectiveConn, commonTransConn;
|
||||
|
@ -131,11 +131,16 @@ void Spot::read (const ProcParams* pp, const ParamsEdited* pedited)
|
||||
activeSpot = -1;
|
||||
lastObject = -1;
|
||||
|
||||
if (batchMode) {
|
||||
editedCheckBox->set_label(Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), spots.size()));
|
||||
}
|
||||
else {
|
||||
if (spots.size() != oldSize) {
|
||||
createGeometry();
|
||||
}
|
||||
|
||||
updateGeometry();
|
||||
}
|
||||
|
||||
enableListener ();
|
||||
}
|
||||
@ -147,7 +152,7 @@ void Spot::write (ProcParams* pp, ParamsEdited* pedited)
|
||||
|
||||
if (pedited) {
|
||||
pedited->spot.enabled = !get_inconsistent();
|
||||
pedited->spot.entries = !editedCheckBox->get_active();
|
||||
pedited->spot.entries = editedCheckBox->get_active();
|
||||
}
|
||||
}
|
||||
|
||||
@ -160,8 +165,10 @@ void Spot::resetPressed()
|
||||
editedCheckBox->set_active (true);
|
||||
editedConn.block (false);
|
||||
|
||||
editedCheckBox->set_label(Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), spots.size()));
|
||||
|
||||
if (listener) {
|
||||
listener->panelChanged (EvSpotEntry, Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), spots.size()));
|
||||
listener->panelChanged (EvSpotEntry, Glib::ustring::compose (M ("TP_SPOT_COUNTLABEL"), 0));
|
||||
}
|
||||
} else {
|
||||
if (!spots.empty()) {
|
||||
@ -783,7 +790,7 @@ void Spot::tweakParams(procparams::ProcParams& pparams)
|
||||
//params->raw.xtranssensor.method = RAWParams::XTransSensor::getMethodString(RAWParams::XTransSensor::Method::FAST);
|
||||
|
||||
// -> disabling all transform
|
||||
//params->coarse = CoarseTransformParams();
|
||||
//pparams.coarse = CoarseTransformParams();
|
||||
pparams.lensProf = LensProfParams();
|
||||
pparams.cacorrection = CACorrParams();
|
||||
pparams.distortion = DistortionParams();
|
||||
|
Loading…
x
Reference in New Issue
Block a user