- route_display_model = ListStore::create(route_display_columns);
- route_list_display.set_model (route_display_model);
- route_list_display.append_column (_("Show"), route_display_columns.visible);
- route_list_display.append_column (_("Name"), route_display_columns.text);
- route_list_display.get_column (0)->set_data (X_("colnum"), GUINT_TO_POINTER(0));
- route_list_display.get_column (1)->set_data (X_("colnum"), GUINT_TO_POINTER(1));
- route_list_display.set_headers_visible (true);
- route_list_display.set_name ("TrackListDisplay");
- route_list_display.get_selection()->set_mode (SELECTION_SINGLE);
- route_list_display.set_reorderable (true);
- route_list_display.set_size_request (100,-1);
- route_list_display.add_object_drag (route_display_columns.route.index(), "routes");
-
- CellRendererToggle* route_list_visible_cell = dynamic_cast<CellRendererToggle*>(route_list_display.get_column_cell_renderer (0));
- route_list_visible_cell->property_activatable() = true;
- route_list_visible_cell->property_radio() = false;
-
- route_display_model->signal_row_deleted().connect (mem_fun (*this, &Editor::route_list_delete));
- route_display_model->signal_row_changed().connect (mem_fun (*this, &Editor::route_list_change));
- route_display_model->signal_rows_reordered().connect (mem_fun (*this, &Editor::route_list_reordered));
-
- route_list_display.signal_button_press_event().connect (mem_fun (*this, &Editor::route_list_display_button_press), false);
-
- route_list_scroller.add (route_list_display);
- route_list_scroller.set_policy (POLICY_NEVER, POLICY_AUTOMATIC);
-
- group_model = ListStore::create(group_columns);
- edit_group_display.set_model (group_model);
- edit_group_display.append_column (_("Name"), group_columns.text);
- edit_group_display.append_column (_("Active"), group_columns.is_active);
- edit_group_display.append_column (_("Show"), group_columns.is_visible);
- edit_group_display.get_column (0)->set_data (X_("colnum"), GUINT_TO_POINTER(0));
- edit_group_display.get_column (1)->set_data (X_("colnum"), GUINT_TO_POINTER(1));
- edit_group_display.get_column (2)->set_data (X_("colnum"), GUINT_TO_POINTER(2));
- edit_group_display.get_column (0)->set_expand (true);
- edit_group_display.get_column (1)->set_expand (false);
- edit_group_display.get_column (2)->set_expand (false);
- edit_group_display.set_headers_visible (true);
-
- /* name is directly editable */
-
- CellRendererText* name_cell = dynamic_cast<CellRendererText*>(edit_group_display.get_column_cell_renderer (0));
- name_cell->property_editable() = true;
- name_cell->signal_edited().connect (mem_fun (*this, &Editor::edit_group_name_edit));
-
- /* use checkbox for the active + visible columns */
-
- CellRendererToggle* active_cell = dynamic_cast<CellRendererToggle*>(edit_group_display.get_column_cell_renderer (1));
- active_cell->property_activatable() = true;
- active_cell->property_radio() = false;
-
- active_cell = dynamic_cast<CellRendererToggle*>(edit_group_display.get_column_cell_renderer (1));
- active_cell->property_activatable() = true;
- active_cell->property_radio() = false;
-
- group_model->signal_row_changed().connect (mem_fun (*this, &Editor::edit_group_row_change));
-
- edit_group_display.set_name ("EditGroupList");
- edit_group_display.get_selection()->set_mode (SELECTION_SINGLE);
- edit_group_display.set_headers_visible (true);
- edit_group_display.set_reorderable (false);
- edit_group_display.set_rules_hint (true);
- edit_group_display.set_size_request (75, -1);
-
- edit_group_display_scroller.add (edit_group_display);
- edit_group_display_scroller.set_policy (POLICY_AUTOMATIC, POLICY_AUTOMATIC);
-
- edit_group_display.signal_button_press_event().connect (mem_fun(*this, &Editor::edit_group_list_button_press_event), false);
-
- VBox* edit_group_display_packer = manage (new VBox());
- HBox* edit_group_display_button_box = manage (new HBox());
- edit_group_display_button_box->set_homogeneous (true);
-
- Button* edit_group_add_button = manage (new Button ());
- Button* edit_group_remove_button = manage (new Button ());
-
- Widget* w;
-
- w = manage (new Image (Stock::ADD, ICON_SIZE_BUTTON));
- w->show();
- edit_group_add_button->add (*w);
-
- w = manage (new Image (Stock::REMOVE, ICON_SIZE_BUTTON));
- w->show();
- edit_group_remove_button->add (*w);
-
- edit_group_add_button->signal_clicked().connect (mem_fun (*this, &Editor::new_edit_group));
- edit_group_remove_button->signal_clicked().connect (mem_fun (*this, &Editor::remove_selected_edit_group));
-
- edit_group_display_button_box->pack_start (*edit_group_add_button);
- edit_group_display_button_box->pack_start (*edit_group_remove_button);
-
- edit_group_display_packer->pack_start (edit_group_display_scroller, true, true);
- edit_group_display_packer->pack_start (*edit_group_display_button_box, false, false);
-
- region_list_display.set_size_request (100, -1);
- region_list_display.set_name ("RegionListDisplay");
- /* Try to prevent single mouse presses from initiating edits.
- This relies on a hack in gtktreeview.c:gtk_treeview_button_press()
- */
- region_list_display.set_data ("mouse-edits-require-mod1", (gpointer) 0x1);
-
- region_list_model = TreeStore::create (region_list_columns);
- region_list_model->set_sort_func (0, mem_fun (*this, &Editor::region_list_sorter));
- region_list_model->set_sort_column (0, SORT_ASCENDING);
-
- region_list_display.set_model (region_list_model);
- region_list_display.append_column (_("Regions"), region_list_columns.name);
- region_list_display.append_column (_("Start"), region_list_columns.start);
- region_list_display.append_column (_("End"), region_list_columns.end);
- region_list_display.append_column (_("Length"), region_list_columns.length);
- region_list_display.append_column (_("Sync"), region_list_columns.sync);
- region_list_display.append_column (_("Fade In"), region_list_columns.fadein);
- region_list_display.append_column (_("Fade Out"), region_list_columns.fadeout);
- region_list_display.append_column (_("L"), region_list_columns.locked);
- region_list_display.append_column (_("G"), region_list_columns.glued);
- region_list_display.append_column (_("M"), region_list_columns.muted);
- region_list_display.append_column (_("O"), region_list_columns.opaque);
- region_list_display.append_column (_("Used"), region_list_columns.used);
- region_list_display.append_column (_("Path"), region_list_columns.path);
- region_list_display.set_headers_visible (true);
- //region_list_display.set_grid_lines (TREE_VIEW_GRID_LINES_BOTH);
-
- CellRendererText* region_name_cell = dynamic_cast<CellRendererText*>(region_list_display.get_column_cell_renderer (0));
- region_name_cell->property_editable() = true;
- region_name_cell->signal_edited().connect (mem_fun (*this, &Editor::region_name_edit));