summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_regions.cc
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2016-03-28 07:05:39 +1100
committernick_m <mainsbridge@gmail.com>2016-05-27 23:38:12 +1000
commit59df9880a4639aea00d88f2ceb2b04d424b574a6 (patch)
tree60b285e1be295d0b00b7c653f3fc69b1e51d3e85 /gtk2_ardour/editor_regions.cc
parent16197654d1539624c1b3d9ed52b9b9dcf33335da (diff)
Performance - Use fixed height mode and fixed column width in region list.
Diffstat (limited to 'gtk2_ardour/editor_regions.cc')
-rw-r--r--gtk2_ardour/editor_regions.cc60
1 files changed, 47 insertions, 13 deletions
diff --git a/gtk2_ardour/editor_regions.cc b/gtk2_ardour/editor_regions.cc
index 9a6449b9ed..f95e5b797e 100644
--- a/gtk2_ardour/editor_regions.cc
+++ b/gtk2_ardour/editor_regions.cc
@@ -84,6 +84,7 @@ EditorRegions::EditorRegions (Editor* e)
_display.set_size_request (100, -1);
_display.set_rules_hint (true);
_display.set_name ("EditGroupList");
+ _display.set_fixed_height_mode (true);
/* Try to prevent single mouse presses from initiating edits.
This relies on a hack in gtktreeview.c:gtk_treeview_button_press()
@@ -94,19 +95,51 @@ EditorRegions::EditorRegions (Editor* e)
_model->set_sort_func (0, sigc::mem_fun (*this, &EditorRegions::sorter));
_model->set_sort_column (0, SORT_ASCENDING);
- _display.set_model (_model);
-
- _display.append_column ("", _columns.name);
- _display.append_column ("", _columns.position);
- _display.append_column ("", _columns.end);
- _display.append_column ("", _columns.length);
- _display.append_column ("", _columns.sync);
- _display.append_column ("", _columns.fadein);
- _display.append_column ("", _columns.fadeout);
- _display.append_column ("", _columns.locked);
- _display.append_column ("", _columns.glued);
- _display.append_column ("", _columns.muted);
- _display.append_column ("", _columns.opaque);
+ TreeViewColumn* col_name = manage (new TreeViewColumn ("", _columns.name));
+ col_name->set_fixed_width (120);
+ col_name->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_position = manage (new TreeViewColumn ("", _columns.position));
+ col_position->set_fixed_width (68);
+ col_position->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_end = manage (new TreeViewColumn ("", _columns.end));
+ col_end->set_fixed_width (68);
+ col_end->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_length = manage (new TreeViewColumn ("", _columns.length));
+ col_length->set_fixed_width (68);
+ col_length->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_sync = manage (new TreeViewColumn ("", _columns.sync));
+ col_sync->set_fixed_width (38);
+ col_sync->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_fadein = manage (new TreeViewColumn ("", _columns.fadein));
+ col_fadein->set_fixed_width (68);
+ col_fadein->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_fadeout = manage (new TreeViewColumn ("", _columns.fadeout));
+ col_fadeout->set_fixed_width (68);
+ col_fadeout->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_locked = manage (new TreeViewColumn ("", _columns.locked));
+ col_locked->set_fixed_width (20);
+ col_locked->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_glued = manage (new TreeViewColumn ("", _columns.glued));
+ col_glued->set_fixed_width (20);
+ col_glued->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_muted = manage (new TreeViewColumn ("", _columns.muted));
+ col_muted->set_fixed_width (20);
+ col_muted->set_sizing (TREE_VIEW_COLUMN_FIXED);
+ TreeViewColumn* col_opaque = manage (new TreeViewColumn ("", _columns.opaque));
+ col_opaque->set_fixed_width (20);
+ col_opaque->set_sizing (TREE_VIEW_COLUMN_FIXED);
+
+ _display.append_column (*col_name);
+ _display.append_column (*col_position);
+ _display.append_column (*col_end);
+ _display.append_column (*col_length);
+ _display.append_column (*col_sync);
+ _display.append_column (*col_fadein);
+ _display.append_column (*col_fadeout);
+ _display.append_column (*col_locked);
+ _display.append_column (*col_glued);
+ _display.append_column (*col_muted);
+ _display.append_column (*col_opaque);
TreeViewColumn* col;
Gtk::Label* l;
@@ -138,6 +171,7 @@ EditorRegions::EditorRegions (Editor* e)
col->set_alignment (ALIGN_CENTER);
}
}
+ _display.set_model (_model);
_display.set_headers_visible (true);
_display.set_rules_hint ();