summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui2.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/ardour_ui2.cc')
-rw-r--r--gtk2_ardour/ardour_ui2.cc30
1 files changed, 28 insertions, 2 deletions
diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc
index 543ff7aeeb..8aa28e2685 100644
--- a/gtk2_ardour/ardour_ui2.cc
+++ b/gtk2_ardour/ardour_ui2.cc
@@ -76,12 +76,21 @@ ARDOUR_UI::setup_windows ()
#ifdef TOP_MENUBAR
HBox* status_bar_packer = manage (new HBox);
+ EventBox* status_bar_event_box = manage (new EventBox);
+ status_bar_event_box->add (status_bar_label);
+ status_bar_event_box->add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
status_bar_label.set_size_request (300, -1);
- status_bar_packer->pack_start (status_bar_label, true, true, 6);
+ status_bar_packer->pack_start (*status_bar_event_box, true, true, 6);
status_bar_packer->pack_start (error_log_button, false, false);
- error_log_button.signal_clicked().connect (sigc::mem_fun (*this, &UI::toggle_errors));
+ status_bar_label.show ();
+ status_bar_event_box->show ();
+ status_bar_packer->show ();
+ error_log_button.show ();
+
+ error_log_button.signal_clicked().connect (mem_fun (*this, &UI::toggle_errors));
+ status_bar_event_box->signal_button_press_event().connect (mem_fun (*this, &ARDOUR_UI::status_bar_button_press));
editor->get_status_bar_packer().pack_start (*status_bar_packer, true, true);
editor->get_status_bar_packer().pack_start (menu_bar_base, false, false, 6);
@@ -133,6 +142,23 @@ ARDOUR_UI::setup_tooltips ()
editor->setup_tooltips ();
}
+bool
+ARDOUR_UI::status_bar_button_press (GdkEventButton* ev)
+{
+ bool handled = false;
+
+ switch (ev->button) {
+ case 1:
+ status_bar_label.set_text ("");
+ handled = true;
+ break;
+ default:
+ break;
+ }
+
+ return handled;
+}
+
void
ARDOUR_UI::display_message (const char *prefix, gint prefix_len, RefPtr<TextBuffer::Tag> ptag, RefPtr<TextBuffer::Tag> mtag, const char *msg)
{