diff --git a/rtdata/languages/default b/rtdata/languages/default index e1897f99d..ce27e20ae 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -2325,6 +2325,7 @@ TP_LOCALLAB_CHROMACBDL;Chroma TP_LOCALLAB_CHROMACB_TOOLTIP;Acts as an amplifier-reducer action compare to sliders of luminance.\nUnder 100 reduce, above 100 amplifie TP_LOCALLAB_CHROMALEV;Chroma levels TP_LOCALLAB_CHROMABLU;Chroma levels +TP_LOCALLAB_CHROMABLU_TOOLTIP;Acts as an amplifier-reducer action compare to settings of luma.\nUnder 1 reduce, above 1 amplifie TP_LOCALLAB_CHROMASKCOL;Chroma mask TP_LOCALLAB_CHROMASK_TOOLTIP;You can use this slider to desaturated background (inverse mask - curve near 0).\nAlso to attenuate or enhance the action of a mask on the chroma TP_LOCALLAB_CHRRT;Chroma diff --git a/rtengine/iplocallab.cc b/rtengine/iplocallab.cc index df7d46581..93c92b5f2 100644 --- a/rtengine/iplocallab.cc +++ b/rtengine/iplocallab.cc @@ -8704,7 +8704,7 @@ void ImProcFunctions::wavcontrast4(struct local_params& lp, float ** tmp, float return; } - if (wavcurvelev && radlevblur > 0.f) { + if (wavcurvelev && radlevblur > 0.f && chromablu > 0.f) { wavcont(lp, tmp, *wdspota, templevela, level_bl, maxlvl, loclevwavCurve, loclevwavutili, loccompwavCurve, loccompwavutili, loccomprewavCurve, loccomprewavutili, radlevblur, 1, chromablu, 0.f, 0.f, 0.f); } @@ -8759,7 +8759,7 @@ void ImProcFunctions::wavcontrast4(struct local_params& lp, float ** tmp, float return; } - if (wavcurvelev && radlevblur > 0.f) { + if (wavcurvelev && radlevblur > 0.f && chromablu > 0.f) { wavcont(lp, tmp, *wdspotb, templevelb, level_bl, maxlvl, loclevwavCurve, loclevwavutili, loccompwavCurve, loccompwavutili, loccomprewavCurve, loccomprewavutili, radlevblur, 1, chromablu, 0.f, 0.f, 0.f); } diff --git a/rtengine/procparams.cc b/rtengine/procparams.cc index 3f5744e11..522f65aa9 100644 --- a/rtengine/procparams.cc +++ b/rtengine/procparams.cc @@ -3353,7 +3353,7 @@ LocallabParams::LocallabSpot::LocallabSpot() : sigmadr(1.0), threswav(1.4), chromalev(1.0), - chromablu(1.0), + chromablu(0.0), sigmadc(1.0), deltad(0.0), fatres(0.0), @@ -3372,7 +3372,7 @@ LocallabParams::LocallabSpot::LocallabSpot() : thigw(0.0), edgw(60.0), basew(10.0), - sensilc(30), + sensilc(50), fftwlc(false), blurlc(true), wavblur(false), diff --git a/rtgui/locallabtools2.cc b/rtgui/locallabtools2.cc index 291bd7c88..a3a16647a 100644 --- a/rtgui/locallabtools2.cc +++ b/rtgui/locallabtools2.cc @@ -2015,7 +2015,7 @@ LocallabContrast::LocallabContrast(): residshathr(Gtk::manage(new Adjuster(M("TP_LOCALLAB_RESIDSHATHR"), 0., 100., 1., 30.))), residhi(Gtk::manage(new Adjuster(M("TP_LOCALLAB_RESIDHI"), -100., 100., 1., 0.))), residhithr(Gtk::manage(new Adjuster(M("TP_LOCALLAB_RESIDHITHR"), 0., 100., 1., 70.))), - sensilc(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SENSIS"), 0, 100, 1, 30))), + sensilc(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SENSIS"), 0, 100, 1, 50))), clariFrame(Gtk::manage(new Gtk::Frame(M("TP_LOCALLAB_CLARIFRA")))), clarilres(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CLARILRES"), -20., 100., 0.5, 0.))), claricres(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CLARICRES"), -20., 100., 0.5, 0.))), @@ -2050,7 +2050,7 @@ LocallabContrast::LocallabContrast(): wavblur(Gtk::manage(new Gtk::CheckButton(M("TP_LOCALLAB_BLURLEVELFRA")))), levelblur(Gtk::manage(new Adjuster(M("TP_LOCALLAB_LEVELBLUR"), 0., 100., 0.5, 0.))), sigmabl(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SIGMAWAV"), 0.2, 2.5, 0.01, 1.))), - chromablu(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CHROMABLU"), 0.01, 5., 0.01, 1.))), + chromablu(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CHROMABLU"), 0.0, 5., 0.1, 0.))), LocalcurveEditorwavlev(new CurveEditorGroup(options.lastlocalCurvesDir, M("TP_LOCALLAB_WAVLEV"))), wavshapelev(static_cast(LocalcurveEditorwavlev->addCurve(CT_Flat, "", nullptr, false, false))), residblur(Gtk::manage(new Adjuster(M("TP_LOCALLAB_RESIDBLUR"), 0., 100., 0.5, 0.))), @@ -2060,7 +2060,7 @@ LocallabContrast::LocallabContrast(): wavcont(Gtk::manage(new Gtk::CheckButton(M("TP_LOCALLAB_CONTFRA")))), sigma(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SIGMAWAV"), 0.2, 2.5, 0.01, 1.))), offset(Gtk::manage(new Adjuster(M("TP_LOCALLAB_OFFSETWAV"), 0.33, 1.66, 0.01, 1., Gtk::manage(new RTImage("circle-black-small.png")), Gtk::manage(new RTImage("circle-white-small.png"))))), - chromalev(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CHROMALEV"), 0.01, 5., 0.01, 1.))), + chromalev(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CHROMALEV"), 0.1, 5., 0.1, 1.))), LocalcurveEditorwavcon(new CurveEditorGroup(options.lastlocalCurvesDir, M("TP_LOCALLAB_WAVCON"))), wavshapecon(static_cast(LocalcurveEditorwavcon->addCurve(CT_Flat, "", nullptr, false, false))), compreFrame(Gtk::manage(new Gtk::Frame(M("TP_LOCALLAB_COMPREFRA")))), @@ -2278,6 +2278,11 @@ LocallabContrast::LocallabContrast(): chromalev->setAdjusterListener(this); + if (showtooltip) { + chromalev->set_tooltip_text(M("TP_LOCALLAB_CHROMABLU_TOOLTIP")); + chromablu->set_tooltip_text(M("TP_LOCALLAB_CHROMABLU_TOOLTIP")); + } + LocalcurveEditorwavcon->setCurveListener(this); wavshapecon->setIdentityValue(0.);