diff options
author | Carl Hetherington <carl@carlh.net> | 2010-11-14 13:48:24 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2010-11-14 13:48:24 +0000 |
commit | 91d3ab7cec9f4699b5f0080dd5cb39c2df598ee9 (patch) | |
tree | 62f4a5bdbd3e522ca84bd4be2eb99274503ba644 /gtk2_ardour/ardour_ui_ed.cc | |
parent | aff8e4e941f065c9ed221ea393084b13ba5ac4e2 (diff) |
Add a clock to the menu bar in full-screen mode. Fixes #1273.
git-svn-id: svn://localhost/ardour2/branches/3.0@8024 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_ed.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_ed.cc | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index c962c63f4e..042252a3a9 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -522,10 +522,15 @@ ARDOUR_UI::build_menu_bar () cpu_load_box.set_name ("CPULoad"); cpu_load_label.set_name ("CPULoad"); + /* Set up some size requests here to stop the menu-bar clock jumping around in full-screen mode */ + + /* TRANSLATORS: just translate `Buffers' in this string */ + set_size_request_to_display_given_text (buffer_load_label, _("Buffers p:100% c:100%"), 2, 0); buffer_load_box.add (buffer_load_label); buffer_load_box.set_name ("BufferLoad"); buffer_load_label.set_name ("BufferLoad"); + set_size_request_to_display_given_text (sample_rate_label, X_("384 kHz / 1000 ms"), 2, 0); sample_rate_box.add (sample_rate_label); sample_rate_box.set_name ("SampleRate"); sample_rate_label.set_name ("SampleRate"); @@ -536,6 +541,9 @@ ARDOUR_UI::build_menu_bar () use_menubar_as_top_menubar (); #endif + _menu_bar_clock.ValueChanged.connect (sigc::mem_fun(*this, &ARDOUR_UI::menu_bar_clock_value_changed)); + menu_hbox.pack_start (_menu_bar_clock, false, false); + if (!Profile->get_small_screen()) { #ifndef GTKOSX // OSX provides its own wallclock, thank you very much @@ -773,3 +781,25 @@ ARDOUR_UI::toggle_global_port_matrix (ARDOUR::DataType t) } } +void +ARDOUR_UI::show_menu_bar_clock () +{ + _menu_bar_clock.show (); + _menu_bar_clock.set (_session->audible_frame (), true); + _menu_bar_clock_connection = ARDOUR_UI::Clock.connect (sigc::bind (sigc::mem_fun (_menu_bar_clock, &AudioClock::set), 'p')); +} + +void +ARDOUR_UI::hide_menu_bar_clock () +{ + _menu_bar_clock.hide (); + _menu_bar_clock_connection.disconnect (); +} + +void +ARDOUR_UI::menu_bar_clock_value_changed () +{ + if (_session) { + _session->request_locate (_menu_bar_clock.current_time ()); + } +} |