Adding PixelShift to PartialPaste window + small bugfixs (issue #3489)
This commit is contained in:
@@ -104,14 +104,15 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
raw_preser = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWEXPOS_PRESER")));
|
||||
raw_black = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWEXPOS_BLACK")));
|
||||
raw_ca_autocorrect = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_AUTO")));
|
||||
raw_cared = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_CARED")));
|
||||
raw_cablue = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_CABLUE")));
|
||||
raw_caredblue = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_CAREDBLUE")));
|
||||
raw_caautostrength = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAWCACORR_CAAUTOSTRENGTH")));
|
||||
raw_hotpix_filt = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_PREPROCESS_HOTPIXFILT")));
|
||||
raw_deadpix_filt = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_PREPROCESS_DEADPIXFILT")));
|
||||
raw_linenoise = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_PREPROCESS_LINEDENOISE")));
|
||||
raw_greenthresh = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_PREPROCESS_GREENEQUIL")));
|
||||
raw_method = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_DMETHOD")));
|
||||
raw_imagenum = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_IMAGENUM")));
|
||||
raw_pixelshift = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_PIXELSHIFT")));
|
||||
raw_ccSteps = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_FALSECOLOR")));
|
||||
raw_dcb_iterations = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_DCBITERATIONS")));
|
||||
raw_dcb_enhance = Gtk::manage (new Gtk::CheckButton (M("PARTIALPASTE_RAW_DCBENHANCE")));
|
||||
@@ -202,6 +203,7 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
vboxes[6]->pack_start (*hseps[6], Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_method, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_imagenum, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_pixelshift, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_ccSteps, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_dcb_iterations, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_dcb_enhance, Gtk::PACK_SHRINK, 2);
|
||||
@@ -227,8 +229,8 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
vboxes[6]->pack_start (*ff_ClipControl, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*Gtk::manage (new Gtk::HSeparator ()), Gtk::PACK_SHRINK, 0);
|
||||
vboxes[6]->pack_start (*raw_ca_autocorrect, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_cared, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_cablue, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_caredblue, Gtk::PACK_SHRINK, 2);
|
||||
vboxes[6]->pack_start (*raw_caautostrength, Gtk::PACK_SHRINK, 2);
|
||||
|
||||
//META
|
||||
vboxes[7]->pack_start (*meta, Gtk::PACK_SHRINK, 2);
|
||||
@@ -347,13 +349,14 @@ PartialPasteDlg::PartialPasteDlg (const Glib::ustring &title, Gtk::Window* paren
|
||||
raw_dcb_enhanceConn = raw_dcb_enhance->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
//raw_all_enhanceConn = raw_all_enhance->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_lmmse_iterationsConn = raw_lmmse_iterations->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_pixelshiftConn = raw_pixelshift->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
|
||||
raw_exposConn = raw_expos->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_preserConn = raw_preser->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_blackConn = raw_black->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_ca_autocorrectConn = raw_ca_autocorrect->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_caredConn = raw_cared->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_cablueConn = raw_cablue->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_caautostrengthConn = raw_caautostrength->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_hotpix_filtConn = raw_hotpix_filt->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_deadpix_filtConn = raw_deadpix_filt->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
raw_linenoiseConn = raw_linenoise->signal_toggled().connect (sigc::bind (sigc::mem_fun(*raw, &Gtk::CheckButton::set_inconsistent), true));
|
||||
@@ -427,12 +430,13 @@ void PartialPasteDlg::rawToggled ()
|
||||
raw_dcb_enhanceConn.block (true);
|
||||
//raw_all_enhanceConn.block (true);
|
||||
raw_lmmse_iterationsConn.block (true);
|
||||
raw_pixelshiftConn.block (true);
|
||||
raw_exposConn.block (true);
|
||||
raw_preserConn.block (true);
|
||||
raw_blackConn.block (true);
|
||||
raw_ca_autocorrectConn.block (true);
|
||||
raw_caredConn.block (true);
|
||||
raw_cablueConn.block (true);
|
||||
raw_caredblueConn.block (true);
|
||||
raw_caautostrengthConn.block (true);
|
||||
raw_hotpix_filtConn.block (true);
|
||||
raw_deadpix_filtConn.block (true);
|
||||
raw_linenoiseConn.block (true);
|
||||
@@ -453,13 +457,14 @@ void PartialPasteDlg::rawToggled ()
|
||||
raw_dcb_iterations->set_active (raw->get_active ());
|
||||
raw_dcb_enhance->set_active (raw->get_active ());
|
||||
raw_lmmse_iterations->set_active (raw->get_active ());
|
||||
raw_pixelshift->set_active (raw->get_active ());
|
||||
//raw_all_enhance->set_active (raw->get_active ());
|
||||
raw_expos->set_active (raw->get_active ());
|
||||
raw_preser->set_active (raw->get_active ());
|
||||
raw_black->set_active (raw->get_active ());
|
||||
raw_ca_autocorrect->set_active (raw->get_active ());
|
||||
raw_cared->set_active (raw->get_active ());
|
||||
raw_cablue->set_active (raw->get_active ());
|
||||
raw_caredblue->set_active (raw->get_active ());
|
||||
raw_caautostrength->set_active (raw->get_active ());
|
||||
raw_hotpix_filt->set_active (raw->get_active ());
|
||||
raw_deadpix_filt->set_active (raw->get_active ());
|
||||
raw_linenoise->set_active (raw->get_active ());
|
||||
@@ -478,13 +483,14 @@ void PartialPasteDlg::rawToggled ()
|
||||
raw_dcb_iterationsConn.block (false);
|
||||
raw_dcb_enhanceConn.block (false);
|
||||
//raw_all_enhanceConn.block (false);
|
||||
raw_pixelshiftConn.block (false);
|
||||
raw_lmmse_iterationsConn.block (false);
|
||||
raw_exposConn.block (false);
|
||||
raw_preserConn.block (false);
|
||||
raw_blackConn.block (false);
|
||||
raw_ca_autocorrectConn.block (false);
|
||||
raw_caredConn.block (false);
|
||||
raw_cablueConn.block (false);
|
||||
raw_caredblueConn.block (false);
|
||||
raw_caautostrengthConn.block (false);
|
||||
raw_hotpix_filtConn.block (false);
|
||||
raw_deadpix_filtConn.block (false);
|
||||
raw_linenoiseConn.block (false);
|
||||
@@ -886,6 +892,38 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dstPP, Param
|
||||
filterPE.raw.xtranssensor.exBlackBlue = falsePE.raw.xtranssensor.exBlackBlue;
|
||||
}
|
||||
|
||||
if (!raw_pixelshift->get_active ()) {
|
||||
filterPE.raw.bayersensor.pixelShiftAutomatic = falsePE.raw.bayersensor.pixelShiftAutomatic;
|
||||
filterPE.raw.bayersensor.pixelShiftBlur = falsePE.raw.bayersensor.pixelShiftBlur;
|
||||
filterPE.raw.bayersensor.pixelShiftEperIso = falsePE.raw.bayersensor.pixelShiftEperIso;
|
||||
filterPE.raw.bayersensor.pixelShiftEqualBright = falsePE.raw.bayersensor.pixelShiftEqualBright;
|
||||
filterPE.raw.bayersensor.pixelShiftExp0 = falsePE.raw.bayersensor.pixelShiftExp0;
|
||||
filterPE.raw.bayersensor.pixelShiftGreen = falsePE.raw.bayersensor.pixelShiftGreen;
|
||||
filterPE.raw.bayersensor.pixelShiftHoleFill = falsePE.raw.bayersensor.pixelShiftHoleFill;
|
||||
filterPE.raw.bayersensor.pixelShiftLmmse = falsePE.raw.bayersensor.pixelShiftLmmse;
|
||||
filterPE.raw.bayersensor.pixelShiftMedian = falsePE.raw.bayersensor.pixelShiftMedian;
|
||||
filterPE.raw.bayersensor.pixelShiftMedian3 = falsePE.raw.bayersensor.pixelShiftMedian3;
|
||||
filterPE.raw.bayersensor.pixelShiftMotion = falsePE.raw.bayersensor.pixelShiftMotion;
|
||||
filterPE.raw.bayersensor.pixelShiftMotionCorrection = falsePE.raw.bayersensor.pixelShiftMotionCorrection;
|
||||
filterPE.raw.bayersensor.pixelShiftMotionCorrectionMethod = falsePE.raw.bayersensor.pixelShiftMotionCorrectionMethod;
|
||||
filterPE.raw.bayersensor.pixelShiftNonGreenAmaze = falsePE.raw.bayersensor.pixelShiftNonGreenAmaze;
|
||||
filterPE.raw.bayersensor.pixelShiftNonGreenCross = falsePE.raw.bayersensor.pixelShiftNonGreenCross;
|
||||
filterPE.raw.bayersensor.pixelShiftNonGreenCross2 = falsePE.raw.bayersensor.pixelShiftNonGreenCross2;
|
||||
filterPE.raw.bayersensor.pixelShiftNonGreenHorizontal = falsePE.raw.bayersensor.pixelShiftNonGreenHorizontal;
|
||||
filterPE.raw.bayersensor.pixelShiftNonGreenVertical = falsePE.raw.bayersensor.pixelShiftNonGreenVertical;
|
||||
filterPE.raw.bayersensor.pixelShiftNreadIso = falsePE.raw.bayersensor.pixelShiftNreadIso;
|
||||
filterPE.raw.bayersensor.pixelShiftPrnu = falsePE.raw.bayersensor.pixelShiftPrnu;
|
||||
filterPE.raw.bayersensor.pixelShiftRedBlueWeight = falsePE.raw.bayersensor.pixelShiftRedBlueWeight;
|
||||
filterPE.raw.bayersensor.pixelShiftSigma = falsePE.raw.bayersensor.pixelShiftSigma;
|
||||
filterPE.raw.bayersensor.pixelShiftSmooth = falsePE.raw.bayersensor.pixelShiftSmooth;
|
||||
filterPE.raw.bayersensor.pixelShiftStddevFactorBlue = falsePE.raw.bayersensor.pixelShiftStddevFactorBlue;
|
||||
filterPE.raw.bayersensor.pixelShiftStddevFactorGreen = falsePE.raw.bayersensor.pixelShiftStddevFactorGreen;
|
||||
filterPE.raw.bayersensor.pixelShiftStddevFactorRed = falsePE.raw.bayersensor.pixelShiftStddevFactorRed;
|
||||
filterPE.raw.bayersensor.pixelShiftSum = falsePE.raw.bayersensor.pixelShiftSum;
|
||||
filterPE.raw.bayersensor.pixelShiftShowMotion = falsePE.raw.bayersensor.pixelShiftShowMotion;
|
||||
filterPE.raw.bayersensor.pixelShiftShowMotionMaskOnly = falsePE.raw.bayersensor.pixelShiftShowMotionMaskOnly;
|
||||
}
|
||||
|
||||
if (!raw_linenoise->get_active ()) {
|
||||
filterPE.raw.bayersensor.linenoise = falsePE.raw.bayersensor.linenoise;
|
||||
}
|
||||
@@ -906,12 +944,13 @@ void PartialPasteDlg::applyPaste (rtengine::procparams::ProcParams* dstPP, Param
|
||||
filterPE.raw.caCorrection = falsePE.raw.caCorrection;
|
||||
}
|
||||
|
||||
if (!raw_cared->get_active ()) {
|
||||
if (!raw_caredblue->get_active ()) {
|
||||
filterPE.raw.caRed = falsePE.raw.caRed;
|
||||
filterPE.raw.caBlue = falsePE.raw.caBlue;
|
||||
}
|
||||
|
||||
if (!raw_cablue->get_active ()) {
|
||||
filterPE.raw.caBlue = falsePE.raw.caBlue;
|
||||
if (!raw_caautostrength->get_active ()) {
|
||||
filterPE.raw.caAutoStrength = falsePE.raw.caAutoStrength;
|
||||
}
|
||||
|
||||
if (!raw_hotpix_filt->get_active ()) {
|
||||
|
Reference in New Issue
Block a user