- int const columns = 10;
-
- _display.append_column (_("Name"), _columns.text);
- _display.append_column (_("G"), _columns.gain);
- _display.append_column (_("Rel"), _columns.gain_relative);
- _display.append_column (_("M"), _columns.mute);
- _display.append_column (_("S"), _columns.solo);
- _display.append_column (_("Rec"), _columns.record);
- _display.append_column (_("Sel"), _columns.select);
- _display.append_column (_("E"), _columns.edits);
- _display.append_column (_("A"), _columns.active_state);
- _display.append_column (_("Show"), _columns.is_visible);
-
- for (int i = 0; i < columns; ++i) {
- _display.get_column (i)->set_data (X_("colnum"), GUINT_TO_POINTER(i));
- }
-
- _display.get_column (0)->set_expand (true);
-
- for (int i = 1; i < columns; ++i) {
- _display.get_column (i)->set_expand (false);
+ Gtkmm2ext::CellRendererColorSelector* color_renderer = manage (new Gtkmm2ext::CellRendererColorSelector);
+ TreeViewColumn* color_column = manage (new TreeViewColumn ("", *color_renderer));
+
+ color_column->add_attribute (color_renderer->property_color(), _columns.gdkcolor);
+
+ _display.append_column (*color_column);
+
+ _display.append_column ("", _columns.text);
+ _display.append_column ("", _columns.is_visible);
+ _display.append_column ("", _columns.active_state);
+ _display.append_column ("", _columns.gain);
+ _display.append_column ("", _columns.gain_relative);
+ _display.append_column ("", _columns.mute);
+ _display.append_column ("", _columns.solo);
+ _display.append_column ("", _columns.record);
+ _display.append_column ("", _columns.monitoring);
+ _display.append_column ("", _columns.select);
+ _display.append_column ("", _columns.active_shared);
+
+ TreeViewColumn* col;
+ Gtk::Label* l;
+
+ ColumnInfo ci[] = {
+ { 0, _("Col"), _("Group Tab Color") },
+ { 1, _("Name"), _("Name of Group") },
+ { 2, S_("Visible|V"), _("Group is visible?") },
+ { 3, _("On"), _("Group is enabled?") },
+ { 4, S_("Group|G"), _("Sharing Gain?") },
+ { 5, S_("Relative|Rel"), _("Relative Gain Changes?") },
+ { 6, S_("Mute|M"), _("Sharing Mute?") },
+ { 7, S_("Solo|S"), _("Sharing Solo?") },
+ { 8, _("Rec"), _("Sharing Record-enable Status?") },
+ { 9, S_("Monitoring|Mon"), _("Sharing Monitoring Choice?") },
+ { 10, S_("Selection|Sel"), _("Sharing Selected/Editing Status?") },
+ { 11, S_("Active|A"), _("Sharing Active Status?") },
+ { -1, 0, 0 }
+ };
+
+
+ for (int i = 0; ci[i].index >= 0; ++i) {
+ col = _display.get_column (ci[i].index);
+ l = manage (new Label (ci[i].label));
+ set_tooltip (*l, ci[i].tooltip);
+ col->set_widget (*l);
+ l->show ();
+
+ col->set_data (X_("colnum"), GUINT_TO_POINTER(i));
+ if (i == 1) {
+ col->set_expand (true);
+ } else {
+ col->set_expand (false);
+ col->set_alignment (ALIGN_CENTER);
+ }