BatchToolPanelCoordinator::initSession fixed (issue #4014)

This commit is contained in:
Hombre57 2017-09-02 18:21:12 +02:00
parent e6f1b53142
commit bfe24ab195
3 changed files with 50 additions and 53 deletions

View File

@ -248,13 +248,13 @@ void BatchToolPanelCoordinator::initSession ()
pparams.prsharpening.radius = pparams.prsharpening.deconvradius = pparams.prsharpening.edges_radius = 0;
}
if (options.baBehav[ADDSET_SHARP_AMOUNT]) {
pparams.sharpening.amount = pparams.sharpening.deconvamount = 0;
pparams.sharpening.amount = pparams.sharpening.deconvamount =
pparams.prsharpening.amount = pparams.prsharpening.deconvamount = 0;
}
if (options.baBehav[ADDSET_SHARP_DAMPING]) { pparams.sharpening.deconvdamping = 0; pparams.prsharpening.deconvdamping = 0; }
if (options.baBehav[ADDSET_SHARP_ITER]) { pparams.sharpening.deconviter = 0; pparams.prsharpening.deconviter = 0; }
if (options.baBehav[ADDSET_SHARP_EDGETOL]) { pparams.sharpening.edges_tolerance = 0; pparams.prsharpening.edges_tolerance = 0; }
if (options.baBehav[ADDSET_SHARP_HALOCTRL]) { pparams.sharpening.halocontrol_amount = 0; pparams.prsharpening.halocontrol_amount = 0; }
if (options.baBehav[ADDSET_SHARP_DAMPING]) { pparams.sharpening.deconvdamping = pparams.prsharpening.deconvdamping = 0; }
if (options.baBehav[ADDSET_SHARP_ITER]) { pparams.sharpening.deconviter = pparams.prsharpening.deconviter = 0; }
if (options.baBehav[ADDSET_SHARP_EDGETOL]) { pparams.sharpening.edges_tolerance = pparams.prsharpening.edges_tolerance = 0; }
if (options.baBehav[ADDSET_SHARP_HALOCTRL]) { pparams.sharpening.halocontrol_amount = pparams.prsharpening.halocontrol_amount = 0; }
if (options.baBehav[ADDSET_SHARPENEDGE_AMOUNT]) { pparams.sharpenEdge.amount = 0; }
if (options.baBehav[ADDSET_SHARPENMICRO_AMOUNT]) { pparams.sharpenMicro.amount = 0; }
if (options.baBehav[ADDSET_SHARPENEDGE_PASS]) { pparams.sharpenEdge.passes = 0; }
@ -309,18 +309,15 @@ void BatchToolPanelCoordinator::initSession ()
if (options.baBehav[ADDSET_GRADIENT_DEGREE]) { pparams.gradient.degree = 0; }
if (options.baBehav[ADDSET_GRADIENT_FEATHER]) { pparams.gradient.feather = 0; }
if (options.baBehav[ADDSET_GRADIENT_STRENGTH]) { pparams.gradient.strength = 0; }
if (options.baBehav[ADDSET_GRADIENT_CENTER]) { pparams.gradient.centerX = 0; }
if (options.baBehav[ADDSET_GRADIENT_CENTER]) { pparams.gradient.centerY = 0; }
if (options.baBehav[ADDSET_GRADIENT_CENTER]) { pparams.gradient.centerX = pparams.gradient.centerY = 0; }
if (options.baBehav[ADDSET_PCVIGNETTE_STRENGTH]) { pparams.pcvignette.strength = 0; }
if (options.baBehav[ADDSET_PCVIGNETTE_FEATHER]) { pparams.pcvignette.feather = 0; }
if (options.baBehav[ADDSET_PCVIGNETTE_ROUNDNESS]) { pparams.pcvignette.roundness = 0; }
if (options.baBehav[ADDSET_CA]) { pparams.cacorrection.red = 0; }
if (options.baBehav[ADDSET_CA]) { pparams.cacorrection.blue = 0; }
if (options.baBehav[ADDSET_CA]) { pparams.cacorrection.red = pparams.cacorrection.blue = 0; }
if (options.baBehav[ADDSET_VIGN_AMOUNT]) { pparams.vignetting.amount = 0; }
if (options.baBehav[ADDSET_VIGN_RADIUS]) { pparams.vignetting.radius = 0; }
if (options.baBehav[ADDSET_VIGN_STRENGTH]) { pparams.vignetting.strength = 0; }
if (options.baBehav[ADDSET_VIGN_CENTER]) { pparams.vignetting.centerX = 0; }
if (options.baBehav[ADDSET_VIGN_CENTER]) { pparams.vignetting.centerY = 0; }
if (options.baBehav[ADDSET_VIGN_CENTER]) { pparams.vignetting.centerX = pparams.vignetting.centerY = 0; }
if (options.baBehav[ADDSET_DIRPYREQ]) for (int i = 0; i < 6; i++) { pparams.dirpyrequalizer.mult[i] = 0; }
if (options.baBehav[ADDSET_DIRPYREQ_THRESHOLD]) { pparams.dirpyrequalizer.threshold = 0; }
if (options.baBehav[ADDSET_DIRPYREQ_SKINPROTECT]) { pparams.dirpyrequalizer.skinprotect = 0; }
@ -361,7 +358,7 @@ void BatchToolPanelCoordinator::initSession ()
if (options.baBehav[ADDSET_RAWEXPOS_LINEAR]) { pparams.raw.expos = 0; }
if (options.baBehav[ADDSET_RAWEXPOS_PRESER]) { pparams.raw.preser = 0; }
if (options.baBehav[ADDSET_RAWEXPOS_BLACKS]) {
pparams.raw.bayersensor.black0 = pparams.raw.bayersensor.black1 = pparams.raw.bayersensor.black2 = pparams.raw.bayersensor.black3 = 0;
pparams.raw.bayersensor.black0 = pparams.raw.bayersensor.black1 = pparams.raw.bayersensor.black2 = pparams.raw.bayersensor.black3 =
pparams.raw.xtranssensor.blackred = pparams.raw.xtranssensor.blackgreen = pparams.raw.xtranssensor.blackblue = 0;
}
if (options.baBehav[ADDSET_RAWFFCLIPCONTROL]) { pparams.raw.ff_clipControl = 0; }

View File

@ -1318,7 +1318,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (labCurve.contrast) {
toEdit.labCurve.contrast = dontforceSet && options.baBehav[ADDSET_LC_CONTRAST] ? toEdit.labCurve.contrast + mods.labCurve.contrast : mods.labCurve.contrast;
toEdit.labCurve.contrast = dontforceSet && options.baBehav[ADDSET_LC_CONTRAST] ? toEdit.labCurve.contrast + mods.labCurve.contrast : mods.labCurve.contrast;
}
if (labCurve.chromaticity) {
@ -1326,15 +1326,15 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (labCurve.avoidcolorshift) {
toEdit.labCurve.avoidcolorshift = mods.labCurve.avoidcolorshift;
toEdit.labCurve.avoidcolorshift = mods.labCurve.avoidcolorshift;
}
if (labCurve.rstprotection) {
toEdit.labCurve.rstprotection = mods.labCurve.rstprotection;
toEdit.labCurve.rstprotection = mods.labCurve.rstprotection;
}
if (labCurve.lcredsk) {
toEdit.labCurve.lcredsk = mods.labCurve.lcredsk;
toEdit.labCurve.lcredsk = mods.labCurve.lcredsk;
}
if (rgbCurves.lumamode) {
@ -1354,11 +1354,11 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (colorToning.enabled) {
toEdit.colorToning.enabled = mods.colorToning.enabled;
toEdit.colorToning.enabled = mods.colorToning.enabled;
}
if (colorToning.twocolor) {
toEdit.colorToning.twocolor = mods.colorToning.twocolor;
toEdit.colorToning.twocolor = mods.colorToning.twocolor;
}
if (colorToning.opacityCurve) {
@ -1382,19 +1382,19 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (colorToning.autosat) {
toEdit.colorToning.autosat = mods.colorToning.autosat;
toEdit.colorToning.autosat = mods.colorToning.autosat;
}
if (colorToning.saturatedopacity) {
toEdit.colorToning.saturatedOpacity = dontforceSet && options.baBehav[ADDSET_COLORTONING_SATOPACITY] ? toEdit.colorToning.saturatedOpacity + mods.colorToning.saturatedOpacity : mods.colorToning.saturatedOpacity;
toEdit.colorToning.saturatedOpacity = dontforceSet && options.baBehav[ADDSET_COLORTONING_SATOPACITY] ? toEdit.colorToning.saturatedOpacity + mods.colorToning.saturatedOpacity : mods.colorToning.saturatedOpacity;
}
if (colorToning.strength) {
toEdit.colorToning.strength = dontforceSet && options.baBehav[ADDSET_COLORTONING_STRENGTH] ? toEdit.colorToning.strength + mods.colorToning.strength : mods.colorToning.strength;
toEdit.colorToning.strength = dontforceSet && options.baBehav[ADDSET_COLORTONING_STRENGTH] ? toEdit.colorToning.strength + mods.colorToning.strength : mods.colorToning.strength;
}
if (colorToning.shadowsColSat) {
toEdit.colorToning.shadowsColSat = mods.colorToning.shadowsColSat;
toEdit.colorToning.shadowsColSat = mods.colorToning.shadowsColSat;
}
if (colorToning.hlColSat) {
@ -1502,7 +1502,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (sharpening.radius) {
toEdit.sharpening.radius = mods.sharpening.radius;
toEdit.sharpening.radius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.sharpening.radius + mods.sharpening.radius : mods.sharpening.radius;
}
if (sharpening.amount) {
@ -1518,19 +1518,19 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (sharpening.edges_radius) {
toEdit.sharpening.edges_radius = mods.sharpening.edges_radius;
toEdit.sharpening.edges_radius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.sharpening.edges_radius + mods.sharpening.edges_radius: mods.sharpening.edges_radius;
}
if (sharpening.edges_tolerance) {
toEdit.sharpening.edges_tolerance = mods.sharpening.edges_tolerance;
toEdit.sharpening.edges_tolerance = dontforceSet && options.baBehav[ADDSET_SHARP_EDGETOL] ? toEdit.sharpening.edges_tolerance + mods.sharpening.edges_tolerance : mods.sharpening.edges_tolerance;
}
if (sharpening.halocontrol) {
toEdit.sharpening.halocontrol = mods.sharpening.halocontrol;
toEdit.sharpening.halocontrol = mods.sharpening.halocontrol;
}
if (sharpening.halocontrol_amount) {
toEdit.sharpening.halocontrol_amount = mods.sharpening.halocontrol_amount;
toEdit.sharpening.halocontrol_amount = dontforceSet && options.baBehav[ADDSET_SHARP_HALOCTRL] ? toEdit.sharpening.halocontrol_amount + mods.sharpening.halocontrol_amount : mods.sharpening.halocontrol_amount;
}
if (sharpening.method) {
@ -1538,19 +1538,19 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (sharpening.deconvamount) {
toEdit.sharpening.deconvamount = dontforceSet && options.baBehav[ADDSET_SHARP_AMOUNT] ? toEdit.sharpening.deconvamount + mods.sharpening.deconvamount : mods.sharpening.deconvamount;
toEdit.sharpening.deconvamount = dontforceSet && options.baBehav[ADDSET_SHARP_AMOUNT] ? toEdit.sharpening.deconvamount + mods.sharpening.deconvamount : mods.sharpening.deconvamount;
}
if (sharpening.deconvradius) {
toEdit.sharpening.deconvradius = mods.sharpening.deconvradius;
toEdit.sharpening.deconvradius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.sharpening.deconvradius + mods.sharpening.deconvradius : mods.sharpening.deconvradius;
}
if (sharpening.deconviter) {
toEdit.sharpening.deconviter = mods.sharpening.deconviter;
toEdit.sharpening.deconviter = dontforceSet && options.baBehav[ADDSET_SHARP_ITER] ? toEdit.sharpening.deconviter + mods.sharpening.deconviter : mods.sharpening.deconviter;
}
if (sharpening.deconvdamping) {
toEdit.sharpening.deconvdamping = mods.sharpening.deconvdamping;
toEdit.sharpening.deconvdamping = dontforceSet && options.baBehav[ADDSET_SHARP_DAMPING] ? toEdit.sharpening.deconvdamping + mods.sharpening.deconvdamping : mods.sharpening.deconvdamping;
}
if (prsharpening.enabled) {
@ -1558,7 +1558,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (prsharpening.radius) {
toEdit.prsharpening.radius = mods.prsharpening.radius;
toEdit.prsharpening.radius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.prsharpening.radius + mods.prsharpening.radius : mods.prsharpening.radius;
}
if (prsharpening.amount) {
@ -1574,11 +1574,11 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (prsharpening.edges_radius) {
toEdit.prsharpening.edges_radius = mods.prsharpening.edges_radius;
toEdit.prsharpening.edges_radius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.prsharpening.edges_radius + mods.prsharpening.edges_radius : mods.prsharpening.edges_radius;
}
if (prsharpening.edges_tolerance) {
toEdit.prsharpening.edges_tolerance = mods.prsharpening.edges_tolerance;
toEdit.prsharpening.edges_tolerance = dontforceSet && options.baBehav[ADDSET_SHARP_EDGETOL] ? toEdit.prsharpening.edges_tolerance + mods.prsharpening.edges_tolerance : mods.prsharpening.edges_tolerance;
}
if (prsharpening.halocontrol) {
@ -1586,7 +1586,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (prsharpening.halocontrol_amount) {
toEdit.prsharpening.halocontrol_amount = mods.prsharpening.halocontrol_amount;
toEdit.prsharpening.halocontrol_amount = dontforceSet && options.baBehav[ADDSET_SHARP_HALOCTRL] ? toEdit.prsharpening.halocontrol_amount + mods.prsharpening.halocontrol_amount : mods.prsharpening.halocontrol_amount;
}
if (prsharpening.method) {
@ -1598,15 +1598,15 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (prsharpening.deconvradius) {
toEdit.prsharpening.deconvradius = mods.prsharpening.deconvradius;
toEdit.prsharpening.deconvradius = dontforceSet && options.baBehav[ADDSET_SHARP_RADIUS] ? toEdit.prsharpening.deconvradius + mods.prsharpening.deconvradius : mods.prsharpening.deconvradius;
}
if (prsharpening.deconviter) {
toEdit.prsharpening.deconviter = mods.prsharpening.deconviter;
toEdit.prsharpening.deconviter = dontforceSet && options.baBehav[ADDSET_SHARP_ITER] ? toEdit.prsharpening.deconviter + mods.prsharpening.deconviter : mods.prsharpening.deconviter;
}
if (prsharpening.deconvdamping) {
toEdit.prsharpening.deconvdamping = mods.prsharpening.deconvdamping;
toEdit.prsharpening.deconvdamping = dontforceSet && options.baBehav[ADDSET_SHARP_DAMPING] ? toEdit.prsharpening.deconvdamping + mods.prsharpening.deconvdamping : mods.prsharpening.deconvdamping;
}
if (vibrance.enabled) {
@ -1746,7 +1746,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (colorappearance.adapscen) {
toEdit.colorappearance.adapscen = mods.colorappearance.adapscen;
toEdit.colorappearance.adapscen = dontforceSet && options.baBehav[ADDSET_CAT_ADAPTSCENE] ? toEdit.colorappearance.adapscen + mods.colorappearance.adapscen : mods.colorappearance.adapscen;
}
if (colorappearance.autoybscen) {
@ -2081,23 +2081,23 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (gradient.degree) {
toEdit.gradient.degree = dontforceSet && options.baBehav[ADDSET_GRADIENT_DEGREE] ? toEdit.gradient.degree + mods.gradient.degree : mods.gradient.degree;
toEdit.gradient.degree = dontforceSet && options.baBehav[ADDSET_GRADIENT_DEGREE] ? toEdit.gradient.degree + mods.gradient.degree : mods.gradient.degree;
}
if (gradient.feather) {
toEdit.gradient.feather = mods.gradient.feather;
toEdit.gradient.feather = dontforceSet && options.baBehav[ADDSET_GRADIENT_FEATHER] ? toEdit.gradient.feather + mods.gradient.feather : mods.gradient.feather;
}
if (gradient.strength) {
toEdit.gradient.strength = mods.gradient.strength;
toEdit.gradient.strength = dontforceSet && options.baBehav[ADDSET_GRADIENT_STRENGTH] ? toEdit.gradient.strength + mods.gradient.strength : mods.gradient.strength;
}
if (gradient.centerX) {
toEdit.gradient.centerX = mods.gradient.centerX;
toEdit.gradient.centerX = dontforceSet && options.baBehav[ADDSET_GRADIENT_CENTER] ? toEdit.gradient.centerX + mods.gradient.centerX : mods.gradient.centerX;
}
if (gradient.centerY) {
toEdit.gradient.centerY = mods.gradient.centerY;
toEdit.gradient.centerY = dontforceSet && options.baBehav[ADDSET_GRADIENT_CENTER] ? toEdit.gradient.centerY + mods.gradient.centerY : mods.gradient.centerY;
}
if (pcvignette.enabled) {
@ -2105,15 +2105,15 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (pcvignette.strength) {
toEdit.pcvignette.strength = mods.pcvignette.strength;
toEdit.pcvignette.strength = dontforceSet && options.baBehav[ADDSET_PCVIGNETTE_STRENGTH] ? toEdit.pcvignette.strength + mods.pcvignette.strength : mods.pcvignette.strength;
}
if (pcvignette.feather) {
toEdit.pcvignette.feather = mods.pcvignette.feather;
toEdit.pcvignette.feather = dontforceSet && options.baBehav[ADDSET_PCVIGNETTE_FEATHER] ? toEdit.pcvignette.feather + mods.pcvignette.feather : mods.pcvignette.feather;
}
if (pcvignette.roundness) {
toEdit.pcvignette.roundness = mods.pcvignette.roundness;
toEdit.pcvignette.roundness = dontforceSet && options.baBehav[ADDSET_PCVIGNETTE_ROUNDNESS] ? toEdit.pcvignette.roundness + mods.pcvignette.roundness : mods.pcvignette.roundness;
}
if (cacorrection.red) {
@ -2129,19 +2129,19 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (vignetting.radius) {
toEdit.vignetting.radius = mods.vignetting.radius;
toEdit.vignetting.radius = dontforceSet && options.baBehav[ADDSET_VIGN_RADIUS] ? toEdit.vignetting.radius + mods.vignetting.radius : mods.vignetting.radius;
}
if (vignetting.strength) {
toEdit.vignetting.strength = mods.vignetting.strength;
toEdit.vignetting.strength = dontforceSet && options.baBehav[ADDSET_VIGN_STRENGTH] ? toEdit.vignetting.strength + mods.vignetting.strength : mods.vignetting.strength;
}
if (vignetting.centerX) {
toEdit.vignetting.centerX = mods.vignetting.centerX;
toEdit.vignetting.centerX = dontforceSet && options.baBehav[ADDSET_VIGN_CENTER] ? toEdit.vignetting.centerX + mods.vignetting.centerX : mods.vignetting.centerX;
}
if (vignetting.centerY) {
toEdit.vignetting.centerY = mods.vignetting.centerY;
toEdit.vignetting.centerY = dontforceSet && options.baBehav[ADDSET_VIGN_CENTER] ? toEdit.vignetting.centerY + mods.vignetting.centerY : mods.vignetting.centerY;
}
for (int i = 0; i < 3; i++) {
@ -2251,7 +2251,7 @@ void ParamsEdited::combine (rtengine::procparams::ProcParams& toEdit, const rten
}
if (resize.scale) {
toEdit.resize.scale = mods.resize.scale;
toEdit.resize.scale = dontforceSet && options.baBehav[ADDSET_RESIZE_SCALE] ? toEdit.resize.scale + mods.resize.scale : mods.resize.scale;
}
if (resize.appliesTo) {

View File

@ -60,7 +60,7 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), hasChanged (false
colorappearance = Gtk::manage (new ColorAppearance ());
whitebalance = Gtk::manage (new WhiteBalance ());
vignetting = Gtk::manage (new Vignetting ());
retinex = Gtk::manage (new Retinex ());
retinex = Gtk::manage (new Retinex ());
gradient = Gtk::manage (new Gradient ());
pcvignette = Gtk::manage (new PCVignette ());
perspective = Gtk::manage (new PerspCorrection ());