summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-01-10 23:37:34 +0000
committerCarl Hetherington <carl@carlh.net>2011-01-10 23:37:34 +0000
commit648035dba9d6e0b9f98aefadf016cf7d1faa49ee (patch)
tree0e9a1175628a2a950561c18a8d0b77bbf0a359d2 /gtk2_ardour
parentc482638aa6e0dbc0d4acdc93fe9712e1802fde32 (diff)
Add route group property to share route active state (#3703)
git-svn-id: svn://localhost/ardour2/branches/3.0@8497 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_ops.cc2
-rw-r--r--gtk2_ardour/route_group_dialog.cc5
-rw-r--r--gtk2_ardour/route_group_dialog.h1
-rw-r--r--gtk2_ardour/route_ui.cc2
4 files changed, 8 insertions, 2 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index ed903b9d7b..4b7c409d3c 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -6144,7 +6144,7 @@ Editor::toggle_tracks_active ()
target = !rtv->_route->active();
first = false;
}
- rtv->_route->set_active (target);
+ rtv->_route->set_active (target, this);
}
}
}
diff --git a/gtk2_ardour/route_group_dialog.cc b/gtk2_ardour/route_group_dialog.cc
index b7c8895d8e..9f50d7a3f6 100644
--- a/gtk2_ardour/route_group_dialog.cc
+++ b/gtk2_ardour/route_group_dialog.cc
@@ -43,6 +43,7 @@ RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
, _rec_enable (_("Record enable"))
, _select (_("Selection"))
, _edit (_("Editing"))
+ , _route_active (_("Route active state"))
{
set_modal (true);
set_skip_taskbar_hint (true);
@@ -86,6 +87,7 @@ RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
_rec_enable.set_active (_group->is_recenable());
_select.set_active (_group->is_select());
_edit.set_active (_group->is_edit());
+ _route_active.set_active (_group->is_route_active());
_name.signal_changed().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
_active.signal_toggled().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
@@ -96,6 +98,7 @@ RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
_rec_enable.signal_toggled().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
_select.signal_toggled().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
_edit.signal_toggled().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
+ _route_active.signal_toggled().connect (sigc::mem_fun (*this, &RouteGroupDialog::update));
gain_toggled ();
@@ -119,6 +122,7 @@ RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
table->attach (_rec_enable, 1, 3, 5, 6, Gtk::FILL, Gtk::FILL, 0, 0);
table->attach (_select, 1, 3, 6, 7, Gtk::FILL, Gtk::FILL, 0, 0);
table->attach (_edit, 1, 3, 7, 8, Gtk::FILL, Gtk::FILL, 0, 0);
+ table->attach (_route_active, 1, 3, 8, 9, Gtk::FILL, Gtk::FILL, 0, 0);
options_box->pack_start (*table, false, true);
vbox->pack_start (*options_box, false, true);
@@ -182,6 +186,7 @@ RouteGroupDialog::update ()
plist.add (Properties::solo, _solo.get_active ());
plist.add (Properties::select, _select.get_active());
plist.add (Properties::edit, _edit.get_active());
+ plist.add (Properties::route_active, _route_active.get_active());
plist.add (Properties::relative, _relative.get_active());
plist.add (Properties::active, _active.get_active());
plist.add (Properties::name, string (_name.get_text()));
diff --git a/gtk2_ardour/route_group_dialog.h b/gtk2_ardour/route_group_dialog.h
index 20ae0384e9..90a25fad40 100644
--- a/gtk2_ardour/route_group_dialog.h
+++ b/gtk2_ardour/route_group_dialog.h
@@ -46,6 +46,7 @@ private:
Gtk::CheckButton _rec_enable;
Gtk::CheckButton _select;
Gtk::CheckButton _edit;
+ Gtk::CheckButton _route_active;
Gtk::Button* _ok;
void gain_toggled ();
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc
index 1417883b55..8ae36c894c 100644
--- a/gtk2_ardour/route_ui.cc
+++ b/gtk2_ardour/route_ui.cc
@@ -1471,7 +1471,7 @@ RouteUI::toggle_route_active ()
if (route_active_menu_item) {
if (route_active_menu_item->get_active() != (yn = _route->active())) {
- _route->set_active (!yn);
+ _route->set_active (!yn, this);
}
}
}