diff --git a/rtdata/languages/default b/rtdata/languages/default index 0e943bb05..e151eec33 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -835,6 +835,8 @@ MAIN_TAB_EXPOSURE_TOOLTIP;Shortcut: Alt-e MAIN_TAB_FILTER; Filter MAIN_TAB_INSPECT; Inspect MAIN_TAB_IPTC;IPTC +MAIN_TAB_LOCALLAB;Locallab +MAIN_TAB_LOCALLAB_TOOLTIP;Shortcut: Alt-o MAIN_TAB_METADATA;Metadata MAIN_TAB_METADATA_TOOLTIP;Shortcut: Alt-m MAIN_TAB_RAW;Raw diff --git a/rtgui/toolpanelcoord.cc b/rtgui/toolpanelcoord.cc index 8b636c922..c8c1dd3cb 100644 --- a/rtgui/toolpanelcoord.cc +++ b/rtgui/toolpanelcoord.cc @@ -37,6 +37,7 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider transformPanel = Gtk::manage (new ToolVBox ()); rawPanel = Gtk::manage (new ToolVBox ()); waveletPanel = Gtk::manage (new ToolVBox ()); + locallabPanel = Gtk::manage (new ToolVBox ()); coarse = Gtk::manage (new CoarsePanel ()); toneCurve = Gtk::manage (new ToneCurve ()); @@ -136,8 +137,8 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider toolPanels.push_back (gradient); addPanel (exposurePanel, lcurve); toolPanels.push_back (lcurve); // << TODO: Add "Enabled" ??? - addPanel (exposurePanel, locallab); - toolPanels.push_back (locallab); +// addPanel (exposurePanel, locallab); +// toolPanels.push_back (locallab); addPanel (exposurePanel, colorappearance); toolPanels.push_back (colorappearance); @@ -151,6 +152,8 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider toolPanels.push_back (dirpyrequalizer); addPanel (waveletPanel, wavelet); toolPanels.push_back (wavelet); + addPanel (locallabPanel, locallab); + toolPanels.push_back (locallab); addPanel (transformPanel, crop); toolPanels.push_back (crop); addPanel (transformPanel, resize); @@ -216,10 +219,11 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider transformPanelSW = Gtk::manage (new MyScrolledWindow ()); rawPanelSW = Gtk::manage (new MyScrolledWindow ()); waveletPanelSW = Gtk::manage (new MyScrolledWindow ()); + locallabPanelSW = Gtk::manage (new MyScrolledWindow ()); updateVScrollbars (options.hideTPVScrollbar); // load panel endings - for (int i = 0; i < 6; i++) { + for (int i = 0; i < 7; i++) { vbPanelEnd[i] = Gtk::manage (new Gtk::VBox ()); imgPanelEnd[i] = Gtk::manage (new RTImage ("PanelEnding.png")); imgPanelEnd[i]->show (); @@ -243,6 +247,10 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider waveletPanel->pack_start (*Gtk::manage (new Gtk::HSeparator), Gtk::PACK_SHRINK, 0); waveletPanel->pack_start (*vbPanelEnd[5], Gtk::PACK_SHRINK, 0); + locallabPanelSW->add (*locallabPanel); + locallabPanel->pack_start (*Gtk::manage (new Gtk::HSeparator), Gtk::PACK_SHRINK, 0); + locallabPanel->pack_start (*vbPanelEnd[6], Gtk::PACK_SHRINK, 0); + transformPanelSW->add (*transformPanel); transformPanel->pack_start (*Gtk::manage (new Gtk::HSeparator), Gtk::PACK_SHRINK, 0); transformPanel->pack_start (*vbPanelEnd[3], Gtk::PACK_SHRINK, 4); @@ -259,6 +267,7 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider toiD = Gtk::manage (new TextOrIcon ("detail.png" , M ("MAIN_TAB_DETAIL") , M ("MAIN_TAB_DETAIL_TOOLTIP") , type)); toiC = Gtk::manage (new TextOrIcon ("colour.png" , M ("MAIN_TAB_COLOR") , M ("MAIN_TAB_COLOR_TOOLTIP") , type)); toiW = Gtk::manage (new TextOrIcon ("wavelet.png" , M ("MAIN_TAB_WAVELET") , M ("MAIN_TAB_WAVELET_TOOLTIP") , type)); + toiL = Gtk::manage (new TextOrIcon ("openhand.png" , M ("MAIN_TAB_LOCALLAB") , M ("MAIN_TAB_LOCALLAB_TOOLTIP") , type)); toiT = Gtk::manage (new TextOrIcon ("transform.png", M ("MAIN_TAB_TRANSFORM"), M ("MAIN_TAB_TRANSFORM_TOOLTIP"), type)); toiR = Gtk::manage (new TextOrIcon ("raw.png" , M ("MAIN_TAB_RAW") , M ("MAIN_TAB_RAW_TOOLTIP") , type)); toiM = Gtk::manage (new TextOrIcon ("meta.png" , M ("MAIN_TAB_METADATA") , M ("MAIN_TAB_METADATA_TOOLTIP") , type)); @@ -267,6 +276,7 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc (nullptr), editDataProvider toolPanelNotebook->append_page (*detailsPanelSW, *toiD); toolPanelNotebook->append_page (*colorPanelSW, *toiC); toolPanelNotebook->append_page (*waveletPanelSW, *toiW); + toolPanelNotebook->append_page (*locallabPanelSW, *toiL); toolPanelNotebook->append_page (*transformPanelSW, *toiT); toolPanelNotebook->append_page (*rawPanelSW, *toiR); toolPanelNotebook->append_page (*metadataPanel, *toiM); @@ -821,6 +831,10 @@ bool ToolPanelCoordinator::handleShortcutKey (GdkEventKey* event) toolPanelNotebook->set_current_page (toolPanelNotebook->page_num (*waveletPanelSW)); return true; + case GDK_KEY_o: + toolPanelNotebook->set_current_page (toolPanelNotebook->page_num (*locallabPanelSW)); + return true; + case GDK_KEY_m: if (metadataPanel) { toolPanelNotebook->set_current_page (toolPanelNotebook->page_num (*metadataPanel)); @@ -842,6 +856,7 @@ void ToolPanelCoordinator::updateVScrollbars (bool hide) transformPanelSW->set_policy (Gtk::POLICY_AUTOMATIC, policy); rawPanelSW->set_policy (Gtk::POLICY_AUTOMATIC, policy); waveletPanelSW->set_policy (Gtk::POLICY_AUTOMATIC, policy); + locallabPanelSW->set_policy (Gtk::POLICY_AUTOMATIC, policy); for (auto currExp : expList) { currExp->updateVScrollbars (hide); diff --git a/rtgui/toolpanelcoord.h b/rtgui/toolpanelcoord.h index 32f971c11..3450b6cb3 100644 --- a/rtgui/toolpanelcoord.h +++ b/rtgui/toolpanelcoord.h @@ -158,6 +158,7 @@ protected: ToolVBox* transformPanel; ToolVBox* rawPanel; ToolVBox* waveletPanel; + ToolVBox* locallabPanel; Gtk::Notebook* metadataPanel; ExifPanel* exifpanel; IPTCPanel* iptcpanel; @@ -170,6 +171,7 @@ protected: TextOrIcon* toiR; TextOrIcon* toiM; TextOrIcon* toiW; + TextOrIcon* toiL; Gtk::Label* labelE; Gtk::Label* labelD; @@ -184,8 +186,8 @@ protected: Gtk::Image* imgIconT; Gtk::Image* imgIconR; Gtk::Image* imgIconM; - Gtk::Image* imgPanelEnd[6]; - Gtk::VBox* vbPanelEnd[6]; + Gtk::Image* imgPanelEnd[7]; + Gtk::VBox* vbPanelEnd[7]; Gtk::ScrolledWindow* exposurePanelSW; Gtk::ScrolledWindow* detailsPanelSW; @@ -193,6 +195,7 @@ protected: Gtk::ScrolledWindow* transformPanelSW; Gtk::ScrolledWindow* rawPanelSW; Gtk::ScrolledWindow* waveletPanelSW; + Gtk::ScrolledWindow* locallabPanelSW; std::vector expList;