X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fvisibility_group.cc;h=0090e39019918c11d471184217e18083a9b72966;hb=d42c0f2d60bece1ad7e1fad9990c5a83c9b369ac;hp=e5f747ee965f6f7f38f190cd9b4d6082f49e3924;hpb=b3722f7063699fafd0421d504e05a7300c70e0ec;p=ardour.git diff --git a/gtk2_ardour/visibility_group.cc b/gtk2_ardour/visibility_group.cc index e5f747ee96..0090e39019 100644 --- a/gtk2_ardour/visibility_group.cc +++ b/gtk2_ardour/visibility_group.cc @@ -25,6 +25,7 @@ #include "pbd/strsplit.h" #include "pbd/xml++.h" +#include "ardour_ui.h" #include "visibility_group.h" #include "pbd/i18n.h" @@ -69,16 +70,9 @@ VisibilityGroup::button_press_event (GdkEventButton* ev) return false; } - menu()->popup (ev->button, ev->time); - return true; -} - -Gtk::Menu* -VisibilityGroup::menu () -{ using namespace Gtk::Menu_Helpers; - Gtk::Menu* m = Gtk::manage (new Gtk::Menu); + Gtk::Menu* m = ARDOUR_UI::instance()->shared_popup_menu (); MenuList& items = m->items (); for (vector::iterator i = _members.begin(); i != _members.end(); ++i) { @@ -88,9 +82,11 @@ VisibilityGroup::menu () j->signal_activate().connect (sigc::bind (sigc::mem_fun (*this, &VisibilityGroup::toggle), i)); } - return m; + m->popup (1, ev->time); + return true; } + /** @return true if the member should be visible, even taking into account any override functor */ bool VisibilityGroup::should_actually_be_visible (Member const & m) const