From 77a2acd033e25c216684329e044d1c75f2ebad30 Mon Sep 17 00:00:00 2001 From: Hombre Date: Thu, 20 Oct 2011 20:51:47 +0200 Subject: [PATCH] Solving issue 997: Selection of crop selection tool should open crop settings Now clicking on the toolbar's white balance, straighten or crop button jump to the corresponding tool. --- rtgui/toolpanelcoord.cc | 21 +++++++++++++++++++++ rtgui/toolpanelcoord.h | 3 +++ 2 files changed, 24 insertions(+) diff --git a/rtgui/toolpanelcoord.cc b/rtgui/toolpanelcoord.cc index 17478bcfb..e4e3dcc30 100644 --- a/rtgui/toolpanelcoord.cc +++ b/rtgui/toolpanelcoord.cc @@ -184,6 +184,7 @@ ToolPanelCoordinator::ToolPanelCoordinator () : ipc(NULL) { icm->setICMPanelListener (this); toolBar = new ToolBar (); + toolBar->setToolBarListener(this); } void ToolPanelCoordinator::addPanel (Gtk::Box* where, FoldableToolPanel* panel, Glib::ustring label) { @@ -562,3 +563,23 @@ void ToolPanelCoordinator::updateTPVScrollbar (bool hide) { void ToolPanelCoordinator::updateTabsUsesIcons (bool useIcons) { updateTabsHeader (useIcons); } + +void ToolPanelCoordinator::toolSelected (ToolMode tool) { + switch (tool) { + case TMCropSelect: + crop->exp->set_expanded(true); + toolPanelNotebook->set_current_page(toolPanelNotebook->page_num(*transformPanelSW)); + break; + case TMSpotWB: + whitebalance->exp->set_expanded(true); + toolPanelNotebook->set_current_page(toolPanelNotebook->page_num(*colorPanelSW)); + break; + case TMStraighten: + lensgeom->exp->set_expanded(true); + rotate->exp->set_expanded(true); + toolPanelNotebook->set_current_page(toolPanelNotebook->page_num(*transformPanelSW)); + break; + default: + break; + } +} diff --git a/rtgui/toolpanelcoord.h b/rtgui/toolpanelcoord.h index b7392c6a5..e4a158557 100644 --- a/rtgui/toolpanelcoord.h +++ b/rtgui/toolpanelcoord.h @@ -63,6 +63,7 @@ class ImageEditorCoordinator; class ToolPanelCoordinator : public ToolPanelListener, + public ToolBarListener, public ProfileChangeListener, public WBProvider, public DFProvider, @@ -226,6 +227,8 @@ class ToolPanelCoordinator : public ToolPanelListener, void updateTPVScrollbar (bool hide); void updateTabsUsesIcons (bool useIcons); bool handleShortcutKey (GdkEventKey* event); + + void toolSelected (ToolMode tool); }; #endif