CAAvoidColourshift saved unconditionally on pp3's, fixes #4827

This commit is contained in:
heckflosse 2018-09-22 12:00:37 +02:00
parent c017c662ac
commit 10d671a93a
3 changed files with 12 additions and 1 deletions

View File

@ -990,6 +990,7 @@ PARTIALPASTE_PREPROCESS_PDAFLINESFILTER;PDAF lines filter
PARTIALPASTE_PRSHARPENING;Post-resize sharpening
PARTIALPASTE_RAWCACORR_AUTO;CA auto-correction
PARTIALPASTE_RAWCACORR_CAREDBLUE;CA red & blue
PARTIALPASTE_RAWCACORR_AVOIDCOLOURSHIFT;CA avoid color shift
PARTIALPASTE_RAWEXPOS_BLACK;Black levels
PARTIALPASTE_RAWEXPOS_LINEAR;White point correction
PARTIALPASTE_RAWEXPOS_PRESER;Highlight preservation

View File

@ -133,6 +133,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
//---
raw_ca_autocorrect = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_AUTO")));
raw_caredblue = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_CAREDBLUE")));
raw_ca_avoid_colourshift = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_AVOIDCOLOURSHIFT")));
Gtk::VBox* vboxes[8];
Gtk::HSeparator* hseps[8];
@ -247,6 +248,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
vboxes[7]->pack_start (*Gtk::manage (new Gtk::HSeparator ()), Gtk::PACK_SHRINK, 0);
vboxes[7]->pack_start (*raw_ca_autocorrect, Gtk::PACK_SHRINK, 2);
vboxes[7]->pack_start (*raw_caredblue, Gtk::PACK_SHRINK, 2);
vboxes[7]->pack_start (*raw_ca_avoid_colourshift, Gtk::PACK_SHRINK, 2);
Gtk::VBox* vbCol1 = Gtk::manage (new Gtk::VBox ());
Gtk::VBox* vbCol2 = Gtk::manage (new Gtk::VBox ());
@ -393,6 +395,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
//---
raw_ca_autocorrectConn = raw_ca_autocorrect->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
raw_caredblueConn = raw_caredblue->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
raw_ca_avoid_colourshiftconn = raw_ca_avoid_colourshift->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
add_button (M("GENERAL_OK"), Gtk::RESPONSE_OK);
add_button (M("GENERAL_CANCEL"), Gtk::RESPONSE_CANCEL);
@ -464,6 +467,7 @@ void PartialPasteDlg::rawToggled ()
ConnectionBlocker ff_ClipControlBlocker(ff_ClipControlConn);
ConnectionBlocker raw_ca_autocorrectBlocker(raw_ca_autocorrectConn);
ConnectionBlocker raw_caredblueBlocker(raw_caredblueConn);
ConnectionBlocker raw_ca_avoid_colourshiftBlocker(raw_ca_avoid_colourshiftconn);
raw->set_inconsistent (false);
@ -492,6 +496,7 @@ void PartialPasteDlg::rawToggled ()
ff_ClipControl->set_active (raw->get_active ());
raw_ca_autocorrect->set_active (raw->get_active ());
raw_caredblue->set_active (raw->get_active ());
raw_ca_avoid_colourshift->set_active (raw->get_active ());
}
void PartialPasteDlg::basicToggled ()
@ -909,6 +914,10 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dstPP, Param
filterPE.raw.cablue = falsePE.raw.cablue;
}
if (!raw_ca_avoid_colourshift->get_active ()) {
filterPE.raw.ca_avoidcolourshift = falsePE.raw.ca_avoidcolourshift;
}
if (!raw_hotpix_filt->get_active ()) {
filterPE.raw.hotPixelFilter = falsePE.raw.hotPixelFilter;
}

View File

@ -105,6 +105,7 @@ public:
Gtk::CheckButton* raw_black;
Gtk::CheckButton* raw_ca_autocorrect;
Gtk::CheckButton* raw_caredblue;
Gtk::CheckButton* raw_ca_avoid_colourshift;
Gtk::CheckButton* raw_hotpix_filt;
Gtk::CheckButton* raw_deadpix_filt;
Gtk::CheckButton* raw_pdaf_lines_filter;
@ -136,7 +137,7 @@ public:
sigc::connection coarserotConn, finerotConn, cropConn, resizeConn, prsharpeningConn, perspectiveConn, commonTransConn;
sigc::connection metadataConn, exifchConn, iptcConn, icmConn;
sigc::connection df_fileConn, df_AutoSelectConn, ff_fileConn, ff_AutoSelectConn, ff_BlurRadiusConn, ff_BlurTypeConn, ff_ClipControlConn;
sigc::connection raw_caredblueConn, raw_ca_autocorrectConn, raw_hotpix_filtConn, raw_deadpix_filtConn, raw_pdaf_lines_filterConn, raw_linenoiseConn, raw_greenthreshConn, raw_ccStepsConn, raw_methodConn, raw_borderConn, raw_imagenumConn, raw_dcb_iterationsConn, raw_lmmse_iterationsConn, raw_pixelshiftConn, raw_dcb_enhanceConn, raw_exposConn, raw_preserConn, raw_blackConn;
sigc::connection raw_caredblueConn, raw_ca_autocorrectConn, raw_ca_avoid_colourshiftconn, raw_hotpix_filtConn, raw_deadpix_filtConn, raw_pdaf_lines_filterConn, raw_linenoiseConn, raw_greenthreshConn, raw_ccStepsConn, raw_methodConn, raw_borderConn, raw_imagenumConn, raw_dcb_iterationsConn, raw_lmmse_iterationsConn, raw_pixelshiftConn, raw_dcb_enhanceConn, raw_exposConn, raw_preserConn, raw_blackConn;
public:
PartialPasteDlg (const Glib::ustring &title, Gtk::Window* parent);