A patch for the patch. As far as I can tell, the NR tools now update properly.

This commit is contained in:
Emil Martinec 2010-09-13 14:41:14 -05:00
parent f52e8a69b4
commit c96bbfb378
8 changed files with 44 additions and 17 deletions

View File

@ -21,7 +21,7 @@
#include <rtengine.h> #include <rtengine.h>
#define NUMOFEVENTS 86 #define NUMOFEVENTS 90
namespace rtengine { namespace rtengine {
@ -111,7 +111,11 @@ enum ProcEvent {
EvSHHighQuality=82, EvSHHighQuality=82,
EvPerspCorr=83, EvPerspCorr=83,
EvEqualizer=84, EvEqualizer=84,
EvEqlEnabled=85 EvEqlEnabled=85,
EvIDNEnabled=86,
EvDPDNEnabled=87,
EvDPDNLuma=88,
EvDPDNChroma=89
}; };
} }
#endif #endif

View File

@ -104,6 +104,10 @@ ALL, // EvProfileChangeNotification
RETINEX, // EvShrHighQuality RETINEX, // EvShrHighQuality
TRANSFORM, // EvPerspCorr TRANSFORM, // EvPerspCorr
EQUALIZER, // EvEqualizer EQUALIZER, // EvEqualizer
EQUALIZER // EvEqlEnabled EQUALIZER, // EvEqlEnabled
IMPULSEDENOISE, // EvIDNEnabled,
DIRPYRDENOISE, // EvDPDNEnabled,
DIRPYRDENOISE, // EvDPDNLuma,
DIRPYRDENOISE // EvDPDNChroma,
}; };

View File

@ -29,10 +29,12 @@
#define RGBCURVE 15 #define RGBCURVE 15
#define LUMINANCECURVE 6 #define LUMINANCECURVE 6
#define SHARPENING 2 #define SHARPENING 2
#define IMPULSEDENOISE 2
#define LUMADENOISE 2 #define LUMADENOISE 2
#define WHITEBALANCE 255 #define WHITEBALANCE 255
#define COLORBOOST 1 #define COLORBOOST 1
#define COLORDENOISE 1 #define COLORDENOISE 1
#define DIRPYRDENOISE 3
#define CROP 16384 #define CROP 16384
#define EXIF 32768 #define EXIF 32768
#define IPTC 32768 #define IPTC 32768

View File

@ -72,8 +72,8 @@ void DirPyrDenoise::read (const ProcParams* pp, const ParamsEdited* pedited) {
void DirPyrDenoise::write (ProcParams* pp, ParamsEdited* pedited) { void DirPyrDenoise::write (ProcParams* pp, ParamsEdited* pedited) {
pp->dirpyrDenoise.luma = luma->getValue (); pp->dirpyrDenoise.luma = luma->getValue ();
pp->dirpyrDenoise.chroma = (int)chroma->getValue (); pp->dirpyrDenoise.chroma = chroma->getValue ();
pp->dirpyrDenoise.enabled = enabled->get_active(); pp->dirpyrDenoise.enabled = enabled->get_active();
if (pedited) { if (pedited) {
pedited->dirpyrDenoise.luma = luma->getEditedState (); pedited->dirpyrDenoise.luma = luma->getEditedState ();
@ -88,7 +88,7 @@ void DirPyrDenoise::setDefaults (const ProcParams* defParams, const ParamsEdited
chroma->setDefault (defParams->dirpyrDenoise.chroma); chroma->setDefault (defParams->dirpyrDenoise.chroma);
if (pedited) { if (pedited) {
luma->setDefaultEditedState (pedited->dirpyrDenoise.luma ? Edited : UnEdited); luma->setDefaultEditedState (pedited->dirpyrDenoise.luma ? Edited : UnEdited);
chroma->setDefaultEditedState (pedited->dirpyrDenoise.chroma ? Edited : UnEdited); chroma->setDefaultEditedState (pedited->dirpyrDenoise.chroma ? Edited : UnEdited);
} }
else { else {
@ -102,9 +102,9 @@ void DirPyrDenoise::adjusterChanged (Adjuster* a, double newval) {
if (listener && enabled->get_active()) { if (listener && enabled->get_active()) {
if (a==luma) if (a==luma)
listener->panelChanged (EvLDNRadius, Glib::ustring::format (std::setw(2), std::fixed, std::setprecision(1), a->getValue())); listener->panelChanged (EvDPDNLuma, Glib::ustring::format (std::setw(2), std::fixed, std::setprecision(1), a->getValue()));
else if (a==chroma) else if (a==chroma)
listener->panelChanged (EvLDNEdgeTolerance, Glib::ustring::format ((int)a->getValue())); listener->panelChanged (EvDPDNChroma, Glib::ustring::format ((int)a->getValue()));
} }
} }
@ -125,9 +125,9 @@ void DirPyrDenoise::enabledChanged () {
if (listener) { if (listener) {
if (enabled->get_active ()) if (enabled->get_active ())
listener->panelChanged (EvLDNEnabled, M("GENERAL_ENABLED")); listener->panelChanged (EvDPDNEnabled, M("GENERAL_ENABLED"));
else else
listener->panelChanged (EvLDNEnabled, M("GENERAL_DISABLED")); listener->panelChanged (EvDPDNEnabled, M("GENERAL_DISABLED"));
} }
} }

View File

@ -107,9 +107,9 @@ void ImpulseDenoise::enabledChanged () {
if (listener) { if (listener) {
if (enabled->get_active ()) if (enabled->get_active ())
listener->panelChanged (EvCDNEnabled, M("GENERAL_ENABLED")); listener->panelChanged (EvIDNEnabled, M("GENERAL_ENABLED"));
else else
listener->panelChanged (EvCDNEnabled, M("GENERAL_DISABLED")); listener->panelChanged (EvIDNEnabled, M("GENERAL_DISABLED"));
} }
} }

View File

@ -38,6 +38,7 @@ PartialPasteDlg::PartialPasteDlg () {
// options in luminance: // options in luminance:
sharpen = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHARPENING"))); sharpen = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHARPENING")));
impden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_IMPULSEDENOISE")));
lumaden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_LUMADENOISE"))); lumaden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_LUMADENOISE")));
lumacurve = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_LUMACURVE"))); lumacurve = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_LUMACURVE")));
sh = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHADOWSHIGHLIGHTS"))); sh = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_SHADOWSHIGHLIGHTS")));
@ -47,6 +48,7 @@ PartialPasteDlg::PartialPasteDlg () {
colorshift = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORSHIFT"))); colorshift = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORSHIFT")));
colorboost = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORBOOST"))); colorboost = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORBOOST")));
colorden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORDENOISE"))); colorden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_COLORDENOISE")));
dirpyrden = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_DIRPYRDENOISE")));
// options in lens: // options in lens:
distortion = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_DISTORTION"))); distortion = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_DISTORTION")));
@ -81,6 +83,7 @@ PartialPasteDlg::PartialPasteDlg () {
vboxes[1]->pack_start (*luminance, Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*luminance, Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*hseps[1], Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*hseps[1], Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*sharpen, Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*sharpen, Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*impden, Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*lumaden, Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*lumaden, Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*lumacurve, Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*lumacurve, Gtk::PACK_SHRINK, 2);
vboxes[1]->pack_start (*sh, Gtk::PACK_SHRINK, 2); vboxes[1]->pack_start (*sh, Gtk::PACK_SHRINK, 2);
@ -91,6 +94,7 @@ PartialPasteDlg::PartialPasteDlg () {
vboxes[2]->pack_start (*colorshift, Gtk::PACK_SHRINK, 2); vboxes[2]->pack_start (*colorshift, Gtk::PACK_SHRINK, 2);
vboxes[2]->pack_start (*colorboost, Gtk::PACK_SHRINK, 2); vboxes[2]->pack_start (*colorboost, Gtk::PACK_SHRINK, 2);
vboxes[2]->pack_start (*colorden, Gtk::PACK_SHRINK, 2); vboxes[2]->pack_start (*colorden, Gtk::PACK_SHRINK, 2);
vboxes[2]->pack_start (*dirpyrden, Gtk::PACK_SHRINK, 2);
vboxes[3]->pack_start (*lens, Gtk::PACK_SHRINK, 2); vboxes[3]->pack_start (*lens, Gtk::PACK_SHRINK, 2);
@ -142,6 +146,7 @@ PartialPasteDlg::PartialPasteDlg () {
hlrecConn = hlrec->signal_toggled().connect (sigc::bind (sigc::mem_fun(*basic, &Gtk::CheckButton::set_inconsistent), true)); hlrecConn = hlrec->signal_toggled().connect (sigc::bind (sigc::mem_fun(*basic, &Gtk::CheckButton::set_inconsistent), true));
sharpenConn = sharpen->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true)); sharpenConn = sharpen->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true));
impdenConn = impden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true));
lumadenConn = lumaden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true)); lumadenConn = lumaden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true));
lumacurveConn = lumacurve->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true)); lumacurveConn = lumacurve->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true));
shConn = sh->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true)); shConn = sh->signal_toggled().connect (sigc::bind (sigc::mem_fun(*luminance, &Gtk::CheckButton::set_inconsistent), true));
@ -150,6 +155,7 @@ PartialPasteDlg::PartialPasteDlg () {
colorshiftConn = colorshift->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true)); colorshiftConn = colorshift->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true));
colorboostConn = colorboost->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true)); colorboostConn = colorboost->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true));
colordenConn = colorden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true)); colordenConn = colorden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true));
dirpyrdenConn = dirpyrden->signal_toggled().connect (sigc::bind (sigc::mem_fun(*color, &Gtk::CheckButton::set_inconsistent), true));
distortionConn = distortion->signal_toggled().connect (sigc::bind (sigc::mem_fun(*lens, &Gtk::CheckButton::set_inconsistent), true)); distortionConn = distortion->signal_toggled().connect (sigc::bind (sigc::mem_fun(*lens, &Gtk::CheckButton::set_inconsistent), true));
cacorrConn = cacorr->signal_toggled().connect (sigc::bind (sigc::mem_fun(*lens, &Gtk::CheckButton::set_inconsistent), true)); cacorrConn = cacorr->signal_toggled().connect (sigc::bind (sigc::mem_fun(*lens, &Gtk::CheckButton::set_inconsistent), true));
@ -191,6 +197,7 @@ void PartialPasteDlg::basicToggled () {
void PartialPasteDlg::luminanceToggled () { void PartialPasteDlg::luminanceToggled () {
sharpenConn.block (true); sharpenConn.block (true);
impdenConn.block (true);
lumadenConn.block (true); lumadenConn.block (true);
lumacurveConn.block (true); lumacurveConn.block (true);
shConn.block (true); shConn.block (true);
@ -198,11 +205,13 @@ void PartialPasteDlg::luminanceToggled () {
luminance->set_inconsistent (false); luminance->set_inconsistent (false);
sharpen->set_active (luminance->get_active ()); sharpen->set_active (luminance->get_active ());
impden->set_active (luminance->get_active ());
lumaden->set_active (luminance->get_active ()); lumaden->set_active (luminance->get_active ());
lumacurve->set_active (luminance->get_active ()); lumacurve->set_active (luminance->get_active ());
sh->set_active (luminance->get_active ()); sh->set_active (luminance->get_active ());
sharpenConn.block (false); sharpenConn.block (false);
impdenConn.block (false);
lumadenConn.block (false); lumadenConn.block (false);
lumacurveConn.block (false); lumacurveConn.block (false);
shConn.block (false); shConn.block (false);
@ -214,6 +223,7 @@ void PartialPasteDlg::colorToggled () {
colorshiftConn.block (true); colorshiftConn.block (true);
colorboostConn.block (true); colorboostConn.block (true);
colordenConn.block (true); colordenConn.block (true);
dirpyrdenConn.block (true);
color->set_inconsistent (false); color->set_inconsistent (false);
@ -221,11 +231,13 @@ void PartialPasteDlg::colorToggled () {
colorshift->set_active (color->get_active ()); colorshift->set_active (color->get_active ());
colorboost->set_active (color->get_active ()); colorboost->set_active (color->get_active ());
colorden->set_active (color->get_active ()); colorden->set_active (color->get_active ());
dirpyrden->set_active (color->get_active ());
colormixerConn.block (false); colormixerConn.block (false);
colorshiftConn.block (false); colorshiftConn.block (false);
colorboostConn.block (false); colorboostConn.block (false);
colordenConn.block (false); colordenConn.block (false);
dirpyrdenConn.block (false);
} }
void PartialPasteDlg::lensToggled () { void PartialPasteDlg::lensToggled () {
@ -290,6 +302,7 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dst, const r
if (hlrec->get_active ()) dst->hlrecovery = src->hlrecovery; if (hlrec->get_active ()) dst->hlrecovery = src->hlrecovery;
if (sharpen->get_active ()) dst->sharpening = src->sharpening; if (sharpen->get_active ()) dst->sharpening = src->sharpening;
if (impden->get_active ()) dst->impulseDenoise = src->impulseDenoise;
if (lumaden->get_active ()) dst->lumaDenoise = src->lumaDenoise; if (lumaden->get_active ()) dst->lumaDenoise = src->lumaDenoise;
if (lumacurve->get_active ()) dst->lumaCurve = src->lumaCurve; if (lumacurve->get_active ()) dst->lumaCurve = src->lumaCurve;
if (sh->get_active ()) dst->sh = src->sh; if (sh->get_active ()) dst->sh = src->sh;
@ -298,6 +311,7 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dst, const r
if (colorshift->get_active ()) dst->colorShift = src->colorShift; if (colorshift->get_active ()) dst->colorShift = src->colorShift;
if (colorboost->get_active ()) dst->colorBoost = src->colorBoost; if (colorboost->get_active ()) dst->colorBoost = src->colorBoost;
if (colorden->get_active ()) dst->colorDenoise = src->colorDenoise; if (colorden->get_active ()) dst->colorDenoise = src->colorDenoise;
if (dirpyrden->get_active ()) dst->dirpyrDenoise = src->dirpyrDenoise;
if (distortion->get_active ()) dst->distortion = src->distortion; if (distortion->get_active ()) dst->distortion = src->distortion;
if (cacorr->get_active ()) dst->cacorrection = src->cacorrection; if (cacorr->get_active ()) dst->cacorrection = src->cacorrection;

View File

@ -40,6 +40,7 @@ class PartialPasteDlg : public Gtk::Dialog {
// options in luminance: // options in luminance:
Gtk::CheckButton* sharpen; Gtk::CheckButton* sharpen;
Gtk::CheckButton* impden;
Gtk::CheckButton* lumaden; Gtk::CheckButton* lumaden;
Gtk::CheckButton* lumacurve; Gtk::CheckButton* lumacurve;
Gtk::CheckButton* sh; Gtk::CheckButton* sh;
@ -49,6 +50,8 @@ class PartialPasteDlg : public Gtk::Dialog {
Gtk::CheckButton* colorshift; Gtk::CheckButton* colorshift;
Gtk::CheckButton* colorboost; Gtk::CheckButton* colorboost;
Gtk::CheckButton* colorden; Gtk::CheckButton* colorden;
Gtk::CheckButton* dirpyrden;
// options in lens: // options in lens:
Gtk::CheckButton* distortion; Gtk::CheckButton* distortion;
@ -68,8 +71,8 @@ class PartialPasteDlg : public Gtk::Dialog {
sigc::connection basicConn, luminanceConn, colorConn, lensConn, compositionConn, metaicmConn; sigc::connection basicConn, luminanceConn, colorConn, lensConn, compositionConn, metaicmConn;
sigc::connection wbConn, exposureConn, hlrecConn; sigc::connection wbConn, exposureConn, hlrecConn;
sigc::connection sharpenConn, lumadenConn, lumacurveConn, shConn; sigc::connection sharpenConn, impdenConn, lumadenConn, lumacurveConn, shConn;
sigc::connection colormixerConn, colorshiftConn, colorboostConn, colordenConn; sigc::connection colormixerConn, colorshiftConn, colorboostConn, colordenConn, dirpyrdenConn;
sigc::connection distortionConn, cacorrConn, vignettingConn; sigc::connection distortionConn, cacorrConn, vignettingConn;
sigc::connection coarserotConn, finerotConn, cropConn, resizeConn; sigc::connection coarserotConn, finerotConn, cropConn, resizeConn;
sigc::connection exifchConn, iptcConn, icmConn; sigc::connection exifchConn, iptcConn, icmConn;

View File

@ -66,15 +66,15 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc(NULL) {
addPanel (colorPanel, colorboost, M("TP_COLORBOOST_LABEL")); toolPanels.push_back (colorboost); addPanel (colorPanel, colorboost, M("TP_COLORBOOST_LABEL")); toolPanels.push_back (colorboost);
addPanel (colorPanel, colorshift, M("TP_COLORSHIFT_LABEL")); toolPanels.push_back (colorshift); addPanel (colorPanel, colorshift, M("TP_COLORSHIFT_LABEL")); toolPanels.push_back (colorshift);
addPanel (exposurePanel, lcurve, M("TP_LUMACURVE_LABEL")); toolPanels.push_back (lcurve); addPanel (exposurePanel, lcurve, M("TP_LUMACURVE_LABEL")); toolPanels.push_back (lcurve);
addPanel (detailsPanel, impulsedenoise, M("TP_IMPULSEDENOISE_LABEL")); toolPanels.push_back (impulsedenoise); addPanel (detailsPanel, impulsedenoise, M("TP_IMPULSEDENOISE_LABEL")); toolPanels.push_back (impulsedenoise);
addPanel (detailsPanel, lumadenoise, M("TP_LUMADENOISE_LABEL")); toolPanels.push_back (lumadenoise); addPanel (detailsPanel, lumadenoise, M("TP_LUMADENOISE_LABEL")); toolPanels.push_back (lumadenoise);
addPanel (detailsPanel, colordenoise, M("TP_COLORDENOISE_LABEL")); toolPanels.push_back (colordenoise); addPanel (detailsPanel, colordenoise, M("TP_COLORDENOISE_LABEL")); toolPanels.push_back (colordenoise);
addPanel (detailsPanel, dirpyrdenoise, M("TP_DIRPYRDENOISE_LABEL")); toolPanels.push_back (dirpyrdenoise); addPanel (detailsPanel, dirpyrdenoise, M("TP_DIRPYRDENOISE_LABEL")); toolPanels.push_back (dirpyrdenoise);
addPanel (detailsPanel, equalizer, M("TP_EQUALIZER_LABEL")); toolPanels.push_back (equalizer); addPanel (detailsPanel, equalizer, M("TP_EQUALIZER_LABEL")); toolPanels.push_back (equalizer);
addPanel (transformPanel, crop, M("TP_CROP_LABEL")); toolPanels.push_back (crop); addPanel (transformPanel, crop, M("TP_CROP_LABEL")); toolPanels.push_back (crop);
addPanel (transformPanel, resize, M("TP_RESIZE_LABEL")); toolPanels.push_back (resize); addPanel (transformPanel, resize, M("TP_RESIZE_LABEL")); toolPanels.push_back (resize);
addPanel (transformPanel, lensgeom, M("TP_LENSGEOM_LABEL")); toolPanels.push_back (lensgeom); addPanel (transformPanel, lensgeom, M("TP_LENSGEOM_LABEL")); toolPanels.push_back (lensgeom);
addPanel (lensgeom->getPackBox(), rotate, M("TP_ROTATE_LABEL")); toolPanels.push_back (rotate); addPanel (lensgeom->getPackBox(), rotate, M("TP_ROTATE_LABEL")); toolPanels.push_back (rotate);
addPanel (lensgeom->getPackBox(), perspective, M("TP_PERSPECTIVE_LABEL")); toolPanels.push_back (perspective); addPanel (lensgeom->getPackBox(), perspective, M("TP_PERSPECTIVE_LABEL")); toolPanels.push_back (perspective);
addPanel (lensgeom->getPackBox(), distortion, M("TP_DISTORTION_LABEL")); toolPanels.push_back (distortion); addPanel (lensgeom->getPackBox(), distortion, M("TP_DISTORTION_LABEL")); toolPanels.push_back (distortion);
addPanel (lensgeom->getPackBox(), cacorrection, M("TP_CACORRECTION_LABEL")); toolPanels.push_back (cacorrection); addPanel (lensgeom->getPackBox(), cacorrection, M("TP_CACORRECTION_LABEL")); toolPanels.push_back (cacorrection);