Fix for saving denoise method in file browser (see issue 1778)
This commit is contained in:
@@ -368,8 +368,8 @@ void ProcParams::setDefaults () {
|
||||
raw.hotdeadpix_thresh = 40;
|
||||
raw.linenoise = 0;
|
||||
raw.greenthresh = 0;
|
||||
raw.ccSteps = 1;
|
||||
raw.dmethod = RAWParams::methodstring[RAWParams::hphd];;
|
||||
raw.ccSteps = 0;
|
||||
raw.dmethod = RAWParams::methodstring[RAWParams::amaze];;
|
||||
raw.dcb_iterations=2;
|
||||
raw.dcb_enhance=false;
|
||||
//raw.all_enhance=false;
|
||||
|
@@ -99,8 +99,18 @@ DirPyrDenoise::DirPyrDenoise () : Gtk::VBox(), FoldableToolPanel(this) {
|
||||
void DirPyrDenoise::read (const ProcParams* pp, const ParamsEdited* pedited) {
|
||||
|
||||
disableListener ();
|
||||
dmethodconn.block(true);
|
||||
enaConn.block (true);
|
||||
|
||||
dmethod->set_active (0);
|
||||
if (pp->dirpyrDenoise.dmethod=="RGB")
|
||||
dmethod->set_active (0);
|
||||
else if (pp->dirpyrDenoise.dmethod=="Lab")
|
||||
dmethod->set_active (1);
|
||||
|
||||
if (pedited) {
|
||||
if (!pedited->dirpyrDenoise.dmethod)
|
||||
dmethod->set_active (2);
|
||||
luma->setEditedState (pedited->dirpyrDenoise.luma ? Edited : UnEdited);
|
||||
Ldetail->setEditedState (pedited->dirpyrDenoise.Ldetail ? Edited : UnEdited);
|
||||
chroma->setEditedState (pedited->dirpyrDenoise.chroma ? Edited : UnEdited);
|
||||
@@ -110,14 +120,11 @@ void DirPyrDenoise::read (const ProcParams* pp, const ParamsEdited* pedited) {
|
||||
gamma->setEditedState (pedited->dirpyrDenoise.gamma ? Edited : UnEdited);
|
||||
enabled->set_inconsistent (!pedited->dirpyrDenoise.enabled);
|
||||
// perform->set_inconsistent (!pedited->dirpyrDenoise.perform);
|
||||
|
||||
}
|
||||
// perfconn.block (true);
|
||||
enaConn.block (true);
|
||||
enabled->set_active (pp->dirpyrDenoise.enabled);
|
||||
// perform->set_active (pp->dirpyrDenoise.perform);
|
||||
|
||||
enaConn.block (false);
|
||||
// perfconn.block (false);
|
||||
lastEnabled = pp->dirpyrDenoise.enabled;
|
||||
// lastperform = pp->dirpyrDenoise.perform;
|
||||
@@ -126,19 +133,11 @@ void DirPyrDenoise::read (const ProcParams* pp, const ParamsEdited* pedited) {
|
||||
chroma->setValue (pp->dirpyrDenoise.chroma);
|
||||
redchro->setValue (pp->dirpyrDenoise.redchro);
|
||||
bluechro->setValue (pp->dirpyrDenoise.bluechro);
|
||||
dmethodconn.block(true);
|
||||
if (pedited && !pedited->dirpyrDenoise.dmethod)
|
||||
dmethod->set_active (2);
|
||||
else if (pp->dirpyrDenoise.dmethod=="RGB")
|
||||
dmethod->set_active (0);
|
||||
else if (pp->dirpyrDenoise.dmethod=="Lab")
|
||||
dmethod->set_active (1);
|
||||
dmethodconn.block(false);
|
||||
// Have to be manually called to handle initial state update
|
||||
dmethodChanged();
|
||||
|
||||
gamma->setValue (pp->dirpyrDenoise.gamma);
|
||||
|
||||
enaConn.block (false);
|
||||
dmethodconn.block(false);
|
||||
enableListener ();
|
||||
}
|
||||
|
||||
@@ -154,6 +153,7 @@ void DirPyrDenoise::write (ProcParams* pp, ParamsEdited* pedited) {
|
||||
// pp->dirpyrDenoise.perform = perform->get_active();
|
||||
|
||||
if (pedited) {
|
||||
pedited->dirpyrDenoise.dmethod = dmethod->get_active_row_number() != 2;
|
||||
pedited->dirpyrDenoise.luma = luma->getEditedState ();
|
||||
pedited->dirpyrDenoise.Ldetail = Ldetail->getEditedState ();
|
||||
pedited->dirpyrDenoise.chroma = chroma->getEditedState ();
|
||||
@@ -167,9 +167,8 @@ void DirPyrDenoise::write (ProcParams* pp, ParamsEdited* pedited) {
|
||||
pp->dirpyrDenoise.dmethod = "RGB";
|
||||
else if (dmethod->get_active_row_number()==1)
|
||||
pp->dirpyrDenoise.dmethod = "Lab";
|
||||
|
||||
|
||||
}
|
||||
|
||||
void DirPyrDenoise::dmethodChanged () {
|
||||
|
||||
if (listener && (multiImage||enabled->get_active()) ) {
|
||||
@@ -284,7 +283,6 @@ void DirPyrDenoise::setBatchMode (bool batchMode) {
|
||||
bluechro->showEditedCB ();
|
||||
gamma->showEditedCB ();
|
||||
dmethod->append_text (M("GENERAL_UNCHANGED"));
|
||||
|
||||
}
|
||||
|
||||
void DirPyrDenoise::setAdjusterBehavior (bool lumaadd, bool lumdetadd, bool chromaadd, bool chromaredadd, bool chromablueadd, bool gammaadd) {
|
||||
|
Reference in New Issue
Block a user