From 23002098b204e22fa48bd8016329ceae512a2ab2 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 6 Dec 2011 16:03:10 +0000 Subject: tooltips for route group list git-svn-id: svn://localhost/ardour2/branches/3.0@10910 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/editor_route_groups.cc | 71 ++++++++++++++++++++++++++------------ 1 file changed, 49 insertions(+), 22 deletions(-) (limited to 'gtk2_ardour/editor_route_groups.cc') diff --git a/gtk2_ardour/editor_route_groups.cc b/gtk2_ardour/editor_route_groups.cc index 613f140a8e..2c76abc430 100644 --- a/gtk2_ardour/editor_route_groups.cc +++ b/gtk2_ardour/editor_route_groups.cc @@ -51,6 +51,12 @@ using namespace PBD; using namespace Gtk; using Gtkmm2ext::Keyboard; +struct ColumnInfo { + int index; + const char* label; + const char* tooltip; +}; + EditorRouteGroups::EditorRouteGroups (Editor* e) : EditorComponent (e) , _all_group_active_button (_("No Selection = All Tracks")) @@ -60,27 +66,48 @@ EditorRouteGroups::EditorRouteGroups (Editor* e) _model = ListStore::create (_columns); _display.set_model (_model); - 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); + _display.append_column ("", _columns.text); + _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.select); + _display.append_column ("", _columns.edits); + _display.append_column ("", _columns.active_state); + _display.append_column ("", _columns.is_visible); + + TreeViewColumn* col; + Gtk::Label* l; + + ColumnInfo ci[] = { + { 0, _("Name"), _("Name of Group") }, + { 1, _("G"), _("Sharing Gain?") }, + { 2, _("Rel"), _("Relevative Gain Changes?") }, + { 3, _("M"), _("Sharing Mute?") }, + { 4, _("S"), _("Sharing Solo?") }, + { 5, _("Rec"), _("Sharing Record-enable Status?") }, + { 6, _("Sel"), _("Sharing Selected Status?") }, + { 7, _("E"), _("Sharing Editing?") }, + { 8, _("A"), _("Sharing Active Status?") }, + { 9, _("Show"), _("Group is visible?") }, + { -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)); + ARDOUR_UI::instance()->set_tip (*l, ci[i].tooltip); + col->set_widget (*l); + l->show (); + + col->set_data (X_("colnum"), GUINT_TO_POINTER(i)); + if (i == 0) { + col->set_expand (true); + } else { + col->set_expand (false); + col->set_alignment (ALIGN_CENTER); + } } _display.set_headers_visible (true); @@ -93,7 +120,7 @@ EditorRouteGroups::EditorRouteGroups (Editor* e) /* use checkbox for the active + visible columns */ - for (int i = 1; i < columns; ++i) { + for (int i = 1; ci[i].index >= 0; ++i) { CellRendererToggle* active_cell = dynamic_cast (_display.get_column_cell_renderer (i)); active_cell->property_activatable() = true; active_cell->property_radio() = false; -- cgit v1.2.3