diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-07-09 12:54:09 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-02-22 15:31:21 -0500 |
commit | 77b6b25f2d4069378939725e9a4892ca84c9c73e (patch) | |
tree | 1679b0bb49f702e2d4ba5c19f5b694cd5cc230b9 /gtk2_ardour/ardour_ui2.cc | |
parent | 552e995297d7706790ed2dfaab75749e914ad317 (diff) |
hide tabs in main window when there's only 1 tab left.
This helps with space and also prevents tearing off the last tab
Diffstat (limited to 'gtk2_ardour/ardour_ui2.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui2.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc index edce58fb7c..0a9be6de70 100644 --- a/gtk2_ardour/ardour_ui2.cc +++ b/gtk2_ardour/ardour_ui2.cc @@ -149,6 +149,8 @@ ARDOUR_UI::setup_windows () rc_option_editor->contents().show_all (); _tabs.signal_switch_page().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_switch)); + _tabs.signal_page_removed().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_page_removed)); + _tabs.signal_page_added().connect (sigc::mem_fun (*this, &ARDOUR_UI::tabs_page_added)); /* It would be nice if Gtkmm had wrapped this rather than just * deprecating the old set_window_creation_hook() method, but oh well... @@ -159,6 +161,26 @@ ARDOUR_UI::setup_windows () } void +ARDOUR_UI::tabs_page_removed (Gtk::Widget*, guint) +{ + if (_tabs.get_n_pages() == 1) { + _tabs.set_show_tabs (false); + } else { + _tabs.set_show_tabs (true); + } +} + +void +ARDOUR_UI::tabs_page_added (Gtk::Widget*, guint) +{ + if (_tabs.get_n_pages() == 1) { + _tabs.set_show_tabs (false); + } else { + _tabs.set_show_tabs (true); + } +} + +void ARDOUR_UI::tabs_switch (GtkNotebookPage*, guint page_number) { if (page_number == 2) { |