Bugfixes for Locallab GUI

- Fixes segfault when modifying "Advice tooltips" option in Preferences
panel in "Multiple editor" mode
- Removes dedicated Locallab help button (will be managed directly in
RawPedia website)
- Fixes issue when switching to "Normal" mode with Retinex Locallab
tool.
This commit is contained in:
Pandagrapher
2020-05-08 18:08:44 +02:00
parent fb3d2e4b4b
commit ae9aa99e47
4 changed files with 47 additions and 20 deletions

View File

@@ -1471,10 +1471,50 @@ void LocallabRetinex::convertParamToNormal()
str->setValue(defSpot.str);
loglin->set_active(defSpot.loglin);
if (defSpot.retinexMethod == "low") {
retinexMethod->set_active(0);
} else if (defSpot.retinexMethod == "uni") {
retinexMethod->set_active(1);
} else {
retinexMethod->set_active(2);
}
fftwreti->set_active(defSpot.fftwreti);
equilret->set_active(defSpot.equilret);
neigh->setValue(defSpot.neigh);
vart->setValue(defSpot.vart);
scalereti->setValue(defSpot.scalereti);
limd->setValue(defSpot.limd);
offs->setValue(defSpot.offs);
chrrt->setValue(defSpot.chrrt);
darkness->setValue(defSpot.darkness);
lightnessreti->setValue(defSpot.lightnessreti);
cliptm->setValue(defSpot.cliptm);
softradiusret->setValue(defSpot.softradiusret);
cTtransshape->setCurve(defSpot.localTtranscurve);
cTgainshape->setCurve(defSpot.localTgaincurve);
enaretiMask->set_active(defSpot.enaretiMask);
enaretiMasktmap->set_active(defSpot.enaretiMasktmap);
CCmaskretishape->setCurve(defSpot.CCmaskreticurve);
LLmaskretishape->setCurve(defSpot.LLmaskreticurve);
HHmaskretishape->setCurve(defSpot.HHmaskreticurve);
blendmaskreti->setValue((double)defSpot.blendmaskreti);
radmaskreti->setValue(defSpot.radmaskreti);
lapmaskreti->setValue(defSpot.lapmaskreti);
chromaskreti->setValue(defSpot.chromaskreti);
gammaskreti->setValue(defSpot.gammaskreti);
slomaskreti->setValue(defSpot.slomaskreti);
Lmaskretishape->setCurve(defSpot.Lmaskreticurve);
inversret->set_active(defSpot.inversret);
// Enable all listeners
enableListener();
// Update GUI based on converted widget parameters:
// - Update Retinex GUI according to scalereti adjuster value
updateRetinexGUI1();
// - Update Retinex GUI according to inversret button state
updateRetinexGUI2();
// - Update Retinex GUI according to str adjuster value
updateRetinexGUI3();
}
@@ -1485,12 +1525,10 @@ void LocallabRetinex::updateGUIToMode(const modeType new_type)
// Advanced widgets are hidden in Normal mode
retiFrame->hide();
retitoolFrame->hide();
expretitools->hide();
} else {
// Advanced widgets are shown in Expert mode
retiFrame->show();
retitoolFrame->show();
expretitools->show();
}
}

View File

@@ -385,13 +385,6 @@ RTWindow::RTWindow ()
iccProfileCreator->set_tooltip_markup (M ("MAIN_BUTTON_ICCPROFCREATOR"));
iccProfileCreator->signal_clicked().connect ( sigc::mem_fun (*this, &RTWindow::showICCProfileCreator) );
Gtk::Button* helpBtnloc = Gtk::manage (new Gtk::Button ());
setExpandAlignProperties (helpBtnloc, false, false, Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER);
helpBtnloc->set_relief(Gtk::RELIEF_NONE);
helpBtnloc->set_image (*Gtk::manage (new RTImage ("questionmark.png")));
helpBtnloc->set_tooltip_markup (M ("LOCAL_HELP"));
helpBtnloc->signal_clicked().connect (sigc::mem_fun (*this, &RTWindow::showRawPedialoc));
Gtk::Button* helpBtn = Gtk::manage (new Gtk::Button ());
setExpandAlignProperties (helpBtn, false, false, Gtk::ALIGN_CENTER, Gtk::ALIGN_CENTER);
helpBtn->set_relief(Gtk::RELIEF_NONE);
@@ -427,7 +420,6 @@ RTWindow::RTWindow ()
actionGrid->set_orientation (Gtk::ORIENTATION_VERTICAL);
actionGrid->attach_next_to (prProgBar, Gtk::POS_BOTTOM, 1, 1);
actionGrid->attach_next_to (*iccProfileCreator, Gtk::POS_BOTTOM, 1, 1);
actionGrid->attach_next_to (*helpBtnloc, Gtk::POS_BOTTOM, 1, 1);
actionGrid->attach_next_to (*helpBtn, Gtk::POS_BOTTOM, 1, 1);
actionGrid->attach_next_to (*preferences, Gtk::POS_BOTTOM, 1, 1);
actionGrid->attach_next_to (*btn_fullscreen, Gtk::POS_BOTTOM, 1, 1);
@@ -437,7 +429,6 @@ RTWindow::RTWindow ()
actionGrid->set_orientation (Gtk::ORIENTATION_HORIZONTAL);
actionGrid->attach_next_to (prProgBar, Gtk::POS_RIGHT, 1, 1);
actionGrid->attach_next_to (*iccProfileCreator, Gtk::POS_RIGHT, 1, 1);
actionGrid->attach_next_to (*helpBtnloc, Gtk::POS_RIGHT, 1, 1);
actionGrid->attach_next_to (*helpBtn, Gtk::POS_RIGHT, 1, 1);
actionGrid->attach_next_to (*preferences, Gtk::POS_RIGHT, 1, 1);
actionGrid->attach_next_to (*btn_fullscreen, Gtk::POS_RIGHT, 1, 1);
@@ -936,12 +927,6 @@ void RTWindow::showRawPedia()
gtk_show_uri(nullptr, "https://rawpedia.rawtherapee.com/", GDK_CURRENT_TIME, &gerror);
}
void RTWindow::showRawPedialoc()
{
GError* gerror = nullptr;
gtk_show_uri(nullptr, "https://rawpedia.rawtherapee.com/Local_Adjustments/fr", GDK_CURRENT_TIME, &gerror);
}
void RTWindow::showICCProfileCreator ()
{
ICCProfileCreator *iccpc = new ICCProfileCreator (this);
@@ -1098,7 +1083,13 @@ void RTWindow::updateFBToolBarVisibility (bool showFilmStripToolBar)
void RTWindow::updateShowtooltipVisibility (bool showtooltip)
{
epanel->updateShowtooltipVisibility (showtooltip);
if (epanel) {
epanel->updateShowtooltipVisibility (showtooltip);
}
for (auto panel : epanels) {
panel.second->updateShowtooltipVisibility (showtooltip);
}
}
void RTWindow::updateHistogramPosition (int oldPosition, int newPosition)

View File

@@ -91,7 +91,6 @@ public:
void on_mainNB_switch_page (Gtk::Widget* widget, guint page_num);
void showRawPedia();
void showRawPedialoc();
void showICCProfileCreator ();
void showPreferences ();
void on_realize () override;