Allow to edit group from the RouteGroupMenu
This commit is contained in:
parent
0dcf7d54e5
commit
ef30c3dc8d
@ -84,6 +84,9 @@ RouteGroupMenu::build (WeakRouteList const & s)
|
|||||||
MenuList& items = _menu->items ();
|
MenuList& items = _menu->items ();
|
||||||
|
|
||||||
items.push_back (MenuElem (_("New Group..."), sigc::mem_fun (*this, &RouteGroupMenu::new_group)));
|
items.push_back (MenuElem (_("New Group..."), sigc::mem_fun (*this, &RouteGroupMenu::new_group)));
|
||||||
|
if (groups.size() == 1 && *groups.begin() != 0) {
|
||||||
|
items.push_back (MenuElem (_("Edit Group..."), sigc::bind (sigc::mem_fun (*this, &RouteGroupMenu::edit_group), *groups.begin ())));
|
||||||
|
}
|
||||||
items.push_back (SeparatorElem ());
|
items.push_back (SeparatorElem ());
|
||||||
|
|
||||||
RadioMenuItem::Group group;
|
RadioMenuItem::Group group;
|
||||||
@ -185,6 +188,14 @@ RouteGroupMenu::new_group_dialog_finished (int r, RouteGroupDialog* d)
|
|||||||
delete_when_idle (d);
|
delete_when_idle (d);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
RouteGroupMenu::edit_group (ARDOUR::RouteGroup* g)
|
||||||
|
{
|
||||||
|
RouteGroupDialog* d = new RouteGroupDialog (g, false);
|
||||||
|
d->signal_response().connect (sigc::hide (sigc::bind (sigc::ptr_fun (&delete_when_idle<RouteGroupDialog>), d)));
|
||||||
|
d->present ();
|
||||||
|
}
|
||||||
|
|
||||||
Gtk::Menu *
|
Gtk::Menu *
|
||||||
RouteGroupMenu::menu ()
|
RouteGroupMenu::menu ()
|
||||||
{
|
{
|
||||||
|
@ -38,6 +38,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
void add_item (ARDOUR::RouteGroup *, std::set<ARDOUR::RouteGroup*> const &, Gtk::RadioMenuItem::Group*);
|
void add_item (ARDOUR::RouteGroup *, std::set<ARDOUR::RouteGroup*> const &, Gtk::RadioMenuItem::Group*);
|
||||||
void new_group ();
|
void new_group ();
|
||||||
|
void edit_group (ARDOUR::RouteGroup *);
|
||||||
void set_group (Gtk::RadioMenuItem*, ARDOUR::RouteGroup *);
|
void set_group (Gtk::RadioMenuItem*, ARDOUR::RouteGroup *);
|
||||||
void new_group_dialog_finished (int, RouteGroupDialog*);
|
void new_group_dialog_finished (int, RouteGroupDialog*);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user