Improve mask with deltaE image and scope
This commit is contained in:
@@ -68,6 +68,7 @@ ControlSpotPanel::ControlSpotPanel():
|
||||
balan_(Gtk::manage(new Adjuster(M("TP_LOCALLAB_BALAN"), 0.2, 2.5, 0.1, 1.0, Gtk::manage(new RTImage("rawtherapee-logo-16.png")), Gtk::manage(new RTImage("circle-white-small.png"))))),
|
||||
transitweak_(Gtk::manage(new Adjuster(M("TP_LOCALLAB_TRANSITWEAK"), 0.5, 10.0, 0.1, 1.0))),
|
||||
transitgrad_(Gtk::manage(new Adjuster(M("TP_LOCALLAB_TRANSITGRAD"), -1.0, 1.0, 0.01, 0.0))),
|
||||
scopemask_(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SCOPEMASK"), 0, 100, 1, 50))),
|
||||
|
||||
avoid_(Gtk::manage(new Gtk::CheckButton(M("TP_LOCALLAB_AVOID")))),
|
||||
laplac_(Gtk::manage(new Gtk::CheckButton(M("TP_LOCALLAB_LAPLACC")))),
|
||||
@@ -245,9 +246,11 @@ ControlSpotPanel::ControlSpotPanel():
|
||||
if(showtooltip) transit_->set_tooltip_text(M("TP_LOCALLAB_TRANSIT_TOOLTIP"));
|
||||
if(showtooltip) transitweak_->set_tooltip_text(M("TP_LOCALLAB_TRANSITWEAK_TOOLTIP"));
|
||||
if(showtooltip) transitgrad_->set_tooltip_text(M("TP_LOCALLAB_TRANSITGRAD_TOOLTIP"));
|
||||
if(showtooltip) scopemask_->set_tooltip_text(M("TP_LOCALLAB_SCOPEMASK_TOOLTIP"));
|
||||
transit_->setAdjusterListener(this);
|
||||
transitweak_->setAdjusterListener(this);
|
||||
transitgrad_->setAdjusterListener(this);
|
||||
scopemask_->setAdjusterListener(this);
|
||||
|
||||
transitBox->pack_start(*transit_);
|
||||
transitBox->pack_start(*transitweak_);
|
||||
@@ -273,12 +276,21 @@ ControlSpotPanel::ControlSpotPanel():
|
||||
avoidConn_ = avoid_->signal_toggled().connect(
|
||||
sigc::mem_fun(*this, &ControlSpotPanel::avoidChanged));
|
||||
pack_start(*avoid_);
|
||||
|
||||
Gtk::Frame* const maskFrame = Gtk::manage(new Gtk::Frame(M("TP_LOCALLAB_MASFRAME")));
|
||||
maskFrame->set_label_align(0.025, 0.5);
|
||||
if(showtooltip) maskFrame->set_tooltip_text(M("TP_LOCALLAB_MASFRAME_TOOLTIP"));
|
||||
ToolParamBlock* const maskBox = Gtk::manage(new ToolParamBlock());
|
||||
|
||||
laplacConn_ = laplac_->signal_toggled().connect(
|
||||
sigc::mem_fun(*this, &ControlSpotPanel::laplacChanged));
|
||||
pack_start(*laplac_);
|
||||
maskBox->pack_start(*laplac_);
|
||||
deltaeConn_ = deltae_->signal_toggled().connect(
|
||||
sigc::mem_fun(*this, &ControlSpotPanel::deltaeChanged));
|
||||
// pack_start(*deltae_);
|
||||
maskBox->pack_start(*deltae_);
|
||||
maskBox->pack_start(*scopemask_);
|
||||
maskFrame->add(*maskBox);
|
||||
pack_start(*maskFrame);
|
||||
|
||||
show_all();
|
||||
|
||||
@@ -582,6 +594,7 @@ void ControlSpotPanel::load_ControlSpot_param()
|
||||
balan_->setValue((double)row[spots_.balan]);
|
||||
transitweak_->setValue((double)row[spots_.transitweak]);
|
||||
transitgrad_->setValue((double)row[spots_.transitgrad]);
|
||||
scopemask_->setValue((double)row[spots_.scopemask]);
|
||||
avoid_->set_active(row[spots_.avoid]);
|
||||
laplac_->set_active(row[spots_.laplac]);
|
||||
deltae_->set_active(row[spots_.deltae]);
|
||||
@@ -1013,6 +1026,14 @@ void ControlSpotPanel::adjusterChanged(Adjuster* a, double newval)
|
||||
}
|
||||
}
|
||||
|
||||
if (a == scopemask_) {
|
||||
row[spots_.scopemask] = scopemask_->getIntValue();
|
||||
|
||||
if (listener) {
|
||||
listener->panelChanged(EvLocallabSpotscopemask, scopemask_->getTextValue());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void ControlSpotPanel::avoidChanged()
|
||||
@@ -1151,6 +1172,7 @@ void ControlSpotPanel::disableParamlistener(bool cond)
|
||||
balan_->block(cond);
|
||||
transitweak_->block(cond);
|
||||
transitgrad_->block(cond);
|
||||
scopemask_->block(cond);
|
||||
avoidConn_.block(cond);
|
||||
laplacConn_.block(cond);
|
||||
deltaeConn_.block(cond);
|
||||
@@ -1180,6 +1202,7 @@ void ControlSpotPanel::setParamEditable(bool cond)
|
||||
balan_->set_sensitive(cond);
|
||||
transitweak_->set_sensitive(cond);
|
||||
transitgrad_->set_sensitive(cond);
|
||||
scopemask_->set_sensitive(cond);
|
||||
avoid_->set_sensitive(cond);
|
||||
laplac_->set_sensitive(cond);
|
||||
deltae_->set_sensitive(cond);
|
||||
@@ -1815,6 +1838,7 @@ ControlSpotPanel::SpotRow* ControlSpotPanel::getSpot(const int id)
|
||||
r->balan = row[spots_.balan];
|
||||
r->transitweak = row[spots_.transitweak];
|
||||
r->transitgrad = row[spots_.transitgrad];
|
||||
r->scopemask = row[spots_.scopemask];
|
||||
r->avoid = row[spots_.avoid];
|
||||
r->laplac = row[spots_.laplac];
|
||||
r->deltae = row[spots_.deltae];
|
||||
@@ -1943,6 +1967,7 @@ void ControlSpotPanel::addControlSpot(SpotRow* newSpot)
|
||||
row[spots_.balan] = newSpot->balan;
|
||||
row[spots_.transitweak] = newSpot->transitweak;
|
||||
row[spots_.transitgrad] = newSpot->transitgrad;
|
||||
row[spots_.scopemask] = newSpot->scopemask;
|
||||
row[spots_.avoid] = newSpot->avoid;
|
||||
row[spots_.laplac] = newSpot->laplac;
|
||||
row[spots_.deltae] = newSpot->deltae;
|
||||
@@ -1990,6 +2015,7 @@ int ControlSpotPanel::updateControlSpot(SpotRow* spot)
|
||||
row[spots_.balan] = spot->balan;
|
||||
row[spots_.transitweak] = spot->transitweak;
|
||||
row[spots_.transitgrad] = spot->transitgrad;
|
||||
row[spots_.scopemask] = spot->scopemask;
|
||||
row[spots_.avoid] = spot->avoid;
|
||||
row[spots_.laplac] = spot->laplac;
|
||||
row[spots_.deltae] = spot->deltae;
|
||||
@@ -2083,6 +2109,7 @@ ControlSpotPanel::SpotEdited* ControlSpotPanel::getEditedStates()
|
||||
se->balan = balan_->getEditedState();
|
||||
se->transitweak = transitweak_->getEditedState();
|
||||
se->transitgrad = transitgrad_->getEditedState();
|
||||
se->scopemask = scopemask_->getEditedState();
|
||||
se->avoid = !avoid_->get_inconsistent();
|
||||
se->laplac = !laplac_->get_inconsistent();
|
||||
se->deltae = !deltae_->get_inconsistent();
|
||||
@@ -2154,6 +2181,7 @@ void ControlSpotPanel::setEditedStates(SpotEdited* se)
|
||||
balan_->setEditedState(se->balan ? Edited : UnEdited);
|
||||
transitweak_->setEditedState(se->transitweak ? Edited : UnEdited);
|
||||
transitgrad_->setEditedState(se->transitgrad ? Edited : UnEdited);
|
||||
scopemask_->setEditedState(se->scopemask ? Edited : UnEdited);
|
||||
avoid_->set_inconsistent(multiImage && !se->avoid);
|
||||
laplac_->set_inconsistent(multiImage && !se->laplac);
|
||||
deltae_->set_inconsistent(multiImage && !se->deltae);
|
||||
@@ -2201,6 +2229,7 @@ void ControlSpotPanel::setDefaults(const rtengine::procparams::ProcParams * defP
|
||||
balan_->setDefault(defSpot->balan);
|
||||
transitweak_->setDefault(defSpot->transitweak);
|
||||
transitgrad_->setDefault(defSpot->transitgrad);
|
||||
scopemask_->setDefault(defSpot->scopemask);
|
||||
|
||||
// Set default edited states for adjusters
|
||||
if (!pedited) {
|
||||
@@ -2220,6 +2249,7 @@ void ControlSpotPanel::setDefaults(const rtengine::procparams::ProcParams * defP
|
||||
balan_->setDefaultEditedState(Irrelevant);
|
||||
transitweak_->setDefaultEditedState(Irrelevant);
|
||||
transitgrad_->setDefaultEditedState(Irrelevant);
|
||||
scopemask_->setDefaultEditedState(Irrelevant);
|
||||
} else {
|
||||
const LocallabParamsEdited::LocallabSpotEdited* defSpotState = new LocallabParamsEdited::LocallabSpotEdited(true);
|
||||
|
||||
@@ -2243,6 +2273,7 @@ void ControlSpotPanel::setDefaults(const rtengine::procparams::ProcParams * defP
|
||||
balan_->setDefaultEditedState(defSpotState->balan ? Edited : UnEdited);
|
||||
transitweak_->setDefaultEditedState(defSpotState->transitweak ? Edited : UnEdited);
|
||||
transitgrad_->setDefaultEditedState(defSpotState->transitgrad ? Edited : UnEdited);
|
||||
scopemask_->setDefaultEditedState(defSpotState->scopemask ? Edited : UnEdited);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2267,6 +2298,7 @@ void ControlSpotPanel::setBatchMode(bool batchMode)
|
||||
balan_->showEditedCB();
|
||||
transitweak_->showEditedCB();
|
||||
transitgrad_->showEditedCB();
|
||||
scopemask_->showEditedCB();
|
||||
|
||||
// Set batch mode for comboBoxText
|
||||
shape_->append(M("GENERAL_UNCHANGED"));
|
||||
@@ -2306,6 +2338,7 @@ ControlSpotPanel::ControlSpots::ControlSpots()
|
||||
add(balan);
|
||||
add(transitweak);
|
||||
add(transitgrad);
|
||||
add(scopemask);
|
||||
add(avoid);
|
||||
add(laplac);
|
||||
add(deltae);
|
||||
|
Reference in New Issue
Block a user