more improvements for range drag/track selection logic etc.
git-svn-id: svn://localhost/ardour2/branches/3.0@7714 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
a8e86b8f09
commit
6e8a5fa135
|
@ -487,10 +487,20 @@ EditorRouteGroups::set_session (Session* s)
|
|||
SessionHandlePtr::set_session (s);
|
||||
|
||||
if (_session) {
|
||||
|
||||
RouteGroup& arg (_session->all_route_group());
|
||||
|
||||
arg.PropertyChanged.connect (property_changed_connection, MISSING_INVALIDATOR, ui_bind (&EditorRouteGroups::all_group_changed, this, _1), gui_context());
|
||||
|
||||
_session->route_group_added.connect (_session_connections, MISSING_INVALIDATOR, ui_bind (&EditorRouteGroups::add, this, _1), gui_context());
|
||||
_session->route_group_removed.connect (_session_connections, MISSING_INVALIDATOR, boost::bind (&EditorRouteGroups::groups_changed, this), gui_context());
|
||||
}
|
||||
|
||||
PBD::PropertyChange pc;
|
||||
pc.add (Properties::select);
|
||||
pc.add (Properties::active);
|
||||
all_group_changed (pc);
|
||||
|
||||
groups_changed ();
|
||||
}
|
||||
|
||||
|
@ -510,3 +520,15 @@ EditorRouteGroups::all_group_toggled ()
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
EditorRouteGroups::all_group_changed (const PropertyChange&)
|
||||
{
|
||||
if (_session) {
|
||||
RouteGroup& arg (_session->all_route_group());
|
||||
_all_group_active_button.set_active (arg.is_active() && arg.is_select());
|
||||
} else {
|
||||
_all_group_active_button.set_active (false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -72,6 +72,7 @@ private:
|
|||
void remove_selected ();
|
||||
void run_new_group_dialog ();
|
||||
void all_group_toggled();
|
||||
void all_group_changed (const PBD::PropertyChange&);
|
||||
|
||||
Glib::RefPtr<Gtk::ListStore> _model;
|
||||
Glib::RefPtr<Gtk::TreeSelection> _selection;
|
||||
|
|
Loading…
Reference in New Issue