Rerun preprocess when changing to or from mono demosaicer

This commit is contained in:
torger
2014-06-25 00:22:58 +02:00
parent 67e472b4b8
commit f9e7072194
4 changed files with 12 additions and 4 deletions

View File

@@ -188,7 +188,7 @@ enum ProcEvent {
EvRGBgCurve=163,
EvRGBbCurve=164,
EvNeutralExp=165,
// EvLBWtoning=166, -- can be reused --
EvDemosaicMethodPreProc=166,
EvLCCCurve=167,
EvLCHCurve=168,
EvVibranceSkinTonesCurve=169,

View File

@@ -186,7 +186,7 @@ RGBCURVE, // EvRGBrCurve
RGBCURVE, // EvRGBgCurve
RGBCURVE, // EvRGBbCurve
RGBCURVE, // EvNeutralExp
NONE, // --unused--,
DEMOSAIC|M_PREPROC, // EvDemosaicMethodPreProc
LUMINANCECURVE, // EvLCCurve
LUMINANCECURVE, // EvLCHCurve
RGBCURVE, // EvVibranceSkinTonesCurve

View File

@@ -91,6 +91,7 @@ void RawProcess::read(const rtengine::procparams::ProcParams* pp, const ParamsEd
for( size_t i=0; i< procparams::RAWParams::numMethods;i++)
if( pp->raw.dmethod == procparams::RAWParams::methodstring[i]){
dmethod->set_active(i);
oldSelection = i;
break;
}
@@ -221,11 +222,17 @@ void RawProcess::methodChanged ()
}
Glib::ustring methodName="";
if( curSelection>=0 && curSelection < procparams::RAWParams::numMethods)
bool ppreq = false;
if( curSelection>=0 && curSelection < procparams::RAWParams::numMethods) {
methodName = procparams::RAWParams::methodstring[curSelection];
if (curSelection == procparams::RAWParams::mono || oldSelection == procparams::RAWParams::mono) {
ppreq = true;
}
}
oldSelection = curSelection;
if (listener)
listener->panelChanged (EvDemosaicMethod, methodName);
listener->panelChanged (ppreq ? EvDemosaicMethodPreProc : EvDemosaicMethod, methodName);
}
void RawProcess::dcbEnhanceChanged ()

View File

@@ -41,6 +41,7 @@ class RawProcess : public ToolParamBlock, public AdjusterListener, public Foldab
Adjuster* lmmseIterations;
bool lastDCBen;
int oldSelection;
//bool lastALLen;
sigc::connection methodconn,dcbEnhconn; //,allEnhconn;
public: