diff --git a/rtengine/improccoordinator.cc b/rtengine/improccoordinator.cc index 52a1d10bc..4bd1f2f48 100644 --- a/rtengine/improccoordinator.cc +++ b/rtengine/improccoordinator.cc @@ -1410,7 +1410,39 @@ void ImProcCoordinator::process() paramsUpdateMutex.lock(); while (changeSinceLast) { - const bool panningRelatedChange = params.isPanningRelatedChange(nextParams); + const bool panningRelatedChange = + params.toneCurve != nextParams.toneCurve + || params.labCurve != nextParams.labCurve + || params.localContrast != nextParams.localContrast + || params.rgbCurves != nextParams.rgbCurves + || params.colorToning != nextParams.colorToning + || params.vibrance != nextParams.vibrance + || params.wb != nextParams.wb + || params.colorappearance != nextParams.colorappearance + || params.epd != nextParams.epd + || params.fattal != nextParams.fattal + || params.sh != nextParams.sh + || params.crop != nextParams.crop + || params.coarse != nextParams.coarse + || params.commonTrans != nextParams.commonTrans + || params.rotate != nextParams.rotate + || params.distortion != nextParams.distortion + || params.lensProf != nextParams.lensProf + || params.perspective != nextParams.perspective + || params.gradient != nextParams.gradient + || params.pcvignette != nextParams.pcvignette + || params.cacorrection != nextParams.cacorrection + || params.vignetting != nextParams.vignetting + || params.chmixer != nextParams.chmixer + || params.blackwhite != nextParams.blackwhite + || params.icm != nextParams.icm + || params.hsvequalizer != nextParams.hsvequalizer + || params.filmSimulation != nextParams.filmSimulation + || params.softlight != nextParams.softlight + || params.raw != nextParams.raw + || params.retinex != nextParams.retinex + || params.dirpyrequalizer != nextParams.dirpyrequalizer; + params = nextParams; int change = changeSinceLast; changeSinceLast = 0; diff --git a/rtengine/procparams.cc b/rtengine/procparams.cc index bee556b27..d8d6aee33 100644 --- a/rtengine/procparams.cc +++ b/rtengine/procparams.cc @@ -5048,73 +5048,6 @@ int ProcParams::write(const Glib::ustring& fname, const Glib::ustring& content) return error; } -bool ProcParams::isThumbRelatedChange(const ProcParams &newParams) const -{ - return toneCurve != newParams.toneCurve - || labCurve != newParams.labCurve - || localContrast != newParams.localContrast - || rgbCurves != newParams.rgbCurves - || colorToning != newParams.colorToning - || vibrance != newParams.vibrance - || wb != newParams.wb - || colorappearance != newParams.colorappearance - || epd != newParams.epd - || fattal != newParams.fattal - || sh != newParams.sh - || crop != newParams.crop - || coarse != newParams.coarse - || commonTrans != newParams.commonTrans - || rotate != newParams.rotate - || distortion != newParams.distortion - || lensProf != newParams.lensProf - || perspective != newParams.perspective - || gradient != newParams.gradient - || pcvignette != newParams.pcvignette - || cacorrection != newParams.cacorrection - || vignetting != newParams.vignetting - || chmixer != newParams.chmixer - || blackwhite != newParams.blackwhite - || icm != newParams.icm - || hsvequalizer != newParams.hsvequalizer - || filmSimulation != newParams.filmSimulation - || softlight != newParams.softlight; -} - -bool ProcParams::isPanningRelatedChange(const ProcParams &newParams) const -{ - return toneCurve != newParams.toneCurve - || labCurve != newParams.labCurve - || localContrast != newParams.localContrast - || rgbCurves != newParams.rgbCurves - || colorToning != newParams.colorToning - || vibrance != newParams.vibrance - || wb != newParams.wb - || colorappearance != newParams.colorappearance - || epd != newParams.epd - || fattal != newParams.fattal - || sh != newParams.sh - || crop != newParams.crop - || coarse != newParams.coarse - || commonTrans != newParams.commonTrans - || rotate != newParams.rotate - || distortion != newParams.distortion - || lensProf != newParams.lensProf - || perspective != newParams.perspective - || gradient != newParams.gradient - || pcvignette != newParams.pcvignette - || cacorrection != newParams.cacorrection - || vignetting != newParams.vignetting - || chmixer != newParams.chmixer - || blackwhite != newParams.blackwhite - || icm != newParams.icm - || hsvequalizer != newParams.hsvequalizer - || filmSimulation != newParams.filmSimulation - || softlight != newParams.softlight - || raw != newParams.raw - || retinex != newParams.retinex - || dirpyrequalizer != newParams.dirpyrequalizer; -} - PartialProfile::PartialProfile(bool createInstance, bool paramsEditedValue) { if (createInstance) { diff --git a/rtengine/procparams.h b/rtengine/procparams.h index db89754a7..0b8b5ba56 100644 --- a/rtengine/procparams.h +++ b/rtengine/procparams.h @@ -1488,9 +1488,6 @@ public: bool operator ==(const ProcParams& other) const; bool operator !=(const ProcParams& other) const; - bool isThumbRelatedChange(const ProcParams &newParams) const; - bool isPanningRelatedChange(const ProcParams &newParams) const; - private: /** Write the ProcParams's text in the file of the given name. * @param fname the name of the file diff --git a/rtgui/thumbnail.cc b/rtgui/thumbnail.cc index 88cabe19d..0f0433878 100644 --- a/rtgui/thumbnail.cc +++ b/rtgui/thumbnail.cc @@ -419,7 +419,36 @@ bool Thumbnail::hasProcParams () const void Thumbnail::setProcParams (const ProcParams& pp, ParamsEdited* pe, int whoChangedIt, bool updateCacheNow) { - const bool needsReprocessing = pparams.isThumbRelatedChange(pp); + const bool needsReprocessing = + pparams.toneCurve != pp.toneCurve + || pparams.labCurve != pp.labCurve + || pparams.localContrast != pp.localContrast + || pparams.rgbCurves != pp.rgbCurves + || pparams.colorToning != pp.colorToning + || pparams.vibrance != pp.vibrance + || pparams.wb != pp.wb + || pparams.colorappearance != pp.colorappearance + || pparams.epd != pp.epd + || pparams.fattal != pp.fattal + || pparams.sh != pp.sh + || pparams.crop != pp.crop + || pparams.coarse != pp.coarse + || pparams.commonTrans != pp.commonTrans + || pparams.rotate != pp.rotate + || pparams.distortion != pp.distortion + || pparams.lensProf != pp.lensProf + || pparams.perspective != pp.perspective + || pparams.gradient != pp.gradient + || pparams.pcvignette != pp.pcvignette + || pparams.cacorrection != pp.cacorrection + || pparams.vignetting != pp.vignetting + || pparams.chmixer != pp.chmixer + || pparams.blackwhite != pp.blackwhite + || pparams.icm != pp.icm + || pparams.hsvequalizer != pp.hsvequalizer + || pparams.filmSimulation != pp.filmSimulation + || pparams.softlight != pp.softlight; + { MyMutex::MyLock lock(mutex);