20 #include <gtkmm/menu.h>
21 #include <gtkmm/stock.h>
37 , _default_properties (plist)
38 , _inhibit_group_selected (false)
55 using namespace Menu_Helpers;
60 std::set<RouteGroup*> groups;
61 for (WeakRouteList::const_iterator i =
_subject.begin (); i !=
_subject.end(); ++i) {
79 MenuList& items =
_menu->items ();
82 items.push_back (SeparatorElem ());
84 RadioMenuItem::Group group;
85 items.push_back (RadioMenuElem (group,
_(
"No Group")));
86 RadioMenuItem* i =
static_cast<RadioMenuItem *
> (&items.back ());
89 if (groups.size() == 1 && *groups.begin() == 0) {
91 }
else if (groups.size() > 1) {
92 i->set_inconsistent ();
109 using namespace Menu_Helpers;
111 MenuList& items =
_menu->items ();
113 items.push_back (RadioMenuElem (*group, rg->
name()));
114 RadioMenuItem* i =
static_cast<RadioMenuItem*
> (&items.back ());
117 if (groups.size() == 1 && *groups.begin() == rg) {
120 }
else if (groups.size() > 1) {
122 i->set_inconsistent ();
136 for (WeakRouteList::const_iterator i =
_subject.begin(); i !=
_subject.end(); ++i) {
void add_route_group(RouteGroup *)
virtual bool apply_changes(PropertyBase const &)
void foreach_route_group(boost::function< void(RouteGroup *)> f)
int remove(boost::shared_ptr< Route >)
RouteGroup * route_group() const
std::list< boost::weak_ptr< Route > > WeakRouteList
int add(boost::shared_ptr< Route >)
LIBGTKMM2EXT_API void detach_menu(Gtk::Menu &)
ARDOUR::Session * _session