#include <cstdlib>
#include <cmath>
-#include <gtkmm2ext/stop_signal.h>
#include <gtkmm2ext/gtk_ui.h>
#include "ardour/route_group.h"
} else {
for (TrackViewList::const_iterator j = _editor->get_track_views().begin(); j != _editor->get_track_views().end(); ++j) {
if ((*j)->route_group() == group) {
- _editor->hide_track_in_display (**j);
+ _editor->hide_track_in_display (*j);
}
}
}
plist.add (Properties::edit, val);
plist.add (Properties::name, string ((*iter)[_columns.text]));
+ group->set_hidden (!(*iter)[_columns.is_visible], this);
+
group->set_properties (plist);
}
focus = true;
}
- group->FlagsChanged.connect (flags_connection, ui_bind (&EditorRouteGroups::flags_changed, this, _1, group), gui_context());
+ group->PropertyChanged.connect (property_changed_connection, MISSING_INVALIDATOR, ui_bind (&EditorRouteGroups::property_changed, this, group, _1), gui_context());
if (focus) {
TreeViewColumn* col = _display.get_column (0);
}
void
-EditorRouteGroups::flags_changed (void*, RouteGroup* group)
+EditorRouteGroups::property_changed (RouteGroup* group, const PropertyChange& change)
{
- ENSURE_GUI_THREAD (*this, &EditorRouteGroups::flags_changed, src, group)
-
_in_row_change = true;
Gtk::TreeModel::Children children = _model->children();
_in_row_change = false;
- _editor->_group_tabs->set_dirty ();
+ if (change.contains (Properties::name) || change.contains (Properties::active)) {
+ _editor->_group_tabs->set_dirty ();
+ }
}
void
EditorComponent::set_session (s);
if (_session) {
- _session->route_group_added.connect (_session_connections, ui_bind (&EditorRouteGroups::add, this, _1), gui_context());
- _session->route_group_removed.connect (_session_connections, boost::bind (&EditorRouteGroups::groups_changed, this), 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());
}
groups_changed ();