Display Locallab Hue, Chroma and Luma reference values on mask curves
Bugfixe: Locallab reference values were only shown for the last control spot instead of selected one
This commit is contained in:
@@ -922,6 +922,8 @@ void ImProcCoordinator::updatePreviewImage(int todo, bool panningRelatedChange)
|
|||||||
CurveFactory::complexCurvelocal(ecomp, black / 65535., hlcompr, hlcomprthresh, shcompr, br, cont, lumar,
|
CurveFactory::complexCurvelocal(ecomp, black / 65535., hlcompr, hlcomprthresh, shcompr, br, cont, lumar,
|
||||||
hltonecurveloc, shtonecurveloc, tonecurveloc, lightCurveloc, avg,
|
hltonecurveloc, shtonecurveloc, tonecurveloc, lightCurveloc, avg,
|
||||||
sca);
|
sca);
|
||||||
|
|
||||||
|
// Locallab mask curve references are only shown for selected spot
|
||||||
if (sp == params->locallab.selspot) {
|
if (sp == params->locallab.selspot) {
|
||||||
if (locallListener) {
|
if (locallListener) {
|
||||||
locallListener->refChanged(huer, lumar, chromar);
|
locallListener->refChanged(huer, lumar, chromar);
|
||||||
|
|||||||
@@ -247,7 +247,7 @@ CurveEditor::CurveEditor (Glib::ustring text, CurveEditorGroup* ceGroup, CurveEd
|
|||||||
{
|
{
|
||||||
|
|
||||||
bgHistValid = false;
|
bgHistValid = false;
|
||||||
locallabRef = 0.0;
|
locallabRef = 0.0;
|
||||||
remoteDrag = false;
|
remoteDrag = false;
|
||||||
selected = DCT_Linear;
|
selected = DCT_Linear;
|
||||||
bottomBarCP = nullptr;
|
bottomBarCP = nullptr;
|
||||||
@@ -330,11 +330,10 @@ void CurveEditor::updateLocallabBackground(double ref)
|
|||||||
// Copy Locallab reference value in the curve editor cache
|
// Copy Locallab reference value in the curve editor cache
|
||||||
locallabRef = ref;
|
locallabRef = ref;
|
||||||
|
|
||||||
// Then call the curve editor group to eventually update the histogram
|
// Then call the curve editor group to eventually update the histogram
|
||||||
subGroup->updateLocallabBackground(this);
|
subGroup->updateLocallabBackground(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Open up the curve if it has modifications and it's not already opened
|
// Open up the curve if it has modifications and it's not already opened
|
||||||
// Returns: true if curve was non linear and opened
|
// Returns: true if curve was non linear and opened
|
||||||
bool CurveEditor::openIfNonlinear()
|
bool CurveEditor::openIfNonlinear()
|
||||||
|
|||||||
@@ -232,7 +232,6 @@ Locallab::Locallab():
|
|||||||
defparams(nullptr),
|
defparams(nullptr),
|
||||||
defpedited(nullptr),
|
defpedited(nullptr),
|
||||||
pe(nullptr)
|
pe(nullptr)
|
||||||
|
|
||||||
{
|
{
|
||||||
ToolVBox* const panel = Gtk::manage(new ToolVBox());
|
ToolVBox* const panel = Gtk::manage(new ToolVBox());
|
||||||
|
|
||||||
|
|||||||
@@ -261,8 +261,6 @@ private:
|
|||||||
Gtk::Button* const lumaneutralButton;
|
Gtk::Button* const lumaneutralButton;
|
||||||
Gtk::Button* const lumacontrastPlusButton;
|
Gtk::Button* const lumacontrastPlusButton;
|
||||||
sigc::connection lumacontrastMinusPressedConn, lumaneutralPressedConn, lumacontrastPlusPressedConn;
|
sigc::connection lumacontrastMinusPressedConn, lumaneutralPressedConn, lumacontrastPlusPressedConn;
|
||||||
// Gtk::Label* transLabels;
|
|
||||||
// Gtk::Label* transLabels2;
|
|
||||||
Gtk::Frame* maskcolFrame;
|
Gtk::Frame* maskcolFrame;
|
||||||
Gtk::Frame* maskexpFrame;
|
Gtk::Frame* maskexpFrame;
|
||||||
Gtk::Frame* maskSHFrame;
|
Gtk::Frame* maskSHFrame;
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ void MyFlatCurve::draw ()
|
|||||||
|
|
||||||
Gdk::RGBA c;
|
Gdk::RGBA c;
|
||||||
|
|
||||||
// Draw Locallab reference value in the background
|
// Draw Locallab reference value in the background
|
||||||
if (locallabRef > 0.0) {
|
if (locallabRef > 0.0) {
|
||||||
cr->set_line_width(1.0);
|
cr->set_line_width(1.0);
|
||||||
cr->move_to(double(graphX + 1), double(graphY - 1));
|
cr->move_to(double(graphX + 1), double(graphY - 1));
|
||||||
@@ -178,6 +178,7 @@ void MyFlatCurve::draw ()
|
|||||||
cr->fill();
|
cr->fill();
|
||||||
cr->stroke();
|
cr->stroke();
|
||||||
}
|
}
|
||||||
|
|
||||||
cr->set_line_width (1.0);
|
cr->set_line_width (1.0);
|
||||||
|
|
||||||
// draw f(x)=0.5 line
|
// draw f(x)=0.5 line
|
||||||
|
|||||||
@@ -140,6 +140,7 @@ public:
|
|||||||
|
|
||||||
void setPos(double pos, int chanIdx) override;
|
void setPos(double pos, int chanIdx) override;
|
||||||
void stopNumericalAdjustment() override;
|
void stopNumericalAdjustment() override;
|
||||||
|
|
||||||
void updateLocallabBackground(double ref);
|
void updateLocallabBackground(double ref);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user