diff options
author | Nikolaus Gullotta <nik@harrisonconsoles.com> | 2019-08-28 11:27:40 -0500 |
---|---|---|
committer | Nikolaus Gullotta <nik@harrisonconsoles.com> | 2019-08-28 11:27:40 -0500 |
commit | 96f55e8184af064bb74a6361644b223e6471236e (patch) | |
tree | 3c4b503e4c0c083fdf5b59bae2bff029c11b667d | |
parent | 4b5391b7be7665c6916c3bcabe429e6b5e54b58b (diff) |
add sortable length, span, and name columns to ExportTimespanSelectorMultiple and ExportTimespanSelectorSingle
-rw-r--r-- | gtk2_ardour/export_timespan_selector.cc | 25 | ||||
-rw-r--r-- | gtk2_ardour/export_timespan_selector.h | 3 |
2 files changed, 27 insertions, 1 deletions
diff --git a/gtk2_ardour/export_timespan_selector.cc b/gtk2_ardour/export_timespan_selector.cc index cfed17cf56..185e250917 100644 --- a/gtk2_ardour/export_timespan_selector.cc +++ b/gtk2_ardour/export_timespan_selector.cc @@ -410,6 +410,19 @@ ExportTimespanSelectorSingle::ExportTimespanSelectorSingle (ARDOUR::Session * se range_view.append_column (_("Length"), range_cols.length); range_view.append_column (_("Creation Date"), range_cols.date); + + Gtk::TreeViewColumn* range_col = range_view.get_column(2); // range name column + range_col->set_sort_column(4); // set sort name + + Gtk::TreeViewColumn* time_span_col = range_view.get_column(3); // time span column + time_span_col->set_sort_column(8); //set sort length_actual + + range_list->set_sort_column(5, Gtk::SORT_DESCENDING); + Gtk::TreeViewColumn* date_col = range_view.get_column(5); // date column + date_col->set_sort_column(7); // set sort as the timestamp + + Gtk::TreeViewColumn* length_col = range_view.get_column(4); // length column + length_col->set_sort_column(8); //set sort length_actual } void @@ -449,6 +462,8 @@ ExportTimespanSelectorSingle::fill_range_list () row[range_cols.name] = (*it)->name(); row[range_cols.label] = construct_label (*it); row[range_cols.length] = construct_length (*it); + //the actual samplecnt_t for sorting + row[range_cols.length_actual] = (*it)->length(); Glib::DateTime gdt(Glib::DateTime::create_now_local ((*it)->timestamp())); row[range_cols.timestamp] = (*it)->timestamp(); @@ -508,10 +523,18 @@ ExportTimespanSelectorMultiple::ExportTimespanSelectorMultiple (ARDOUR::Session range_view.append_column (_("Length"), range_cols.length); range_view.append_column (_("Creation Date"), range_cols.date); + Gtk::TreeViewColumn* range_col = range_view.get_column(2); // range name column + range_col->set_sort_column(4); // set sort name + + Gtk::TreeViewColumn* time_span_col = range_view.get_column(3); // time span column + time_span_col->set_sort_column(8); //set sort length_actual + range_list->set_sort_column(5, Gtk::SORT_DESCENDING); Gtk::TreeViewColumn* date_col = range_view.get_column(5); // date column date_col->set_sort_column(7); // set sort as the timestamp + Gtk::TreeViewColumn* length_col = range_view.get_column(4); // length column + length_col->set_sort_column(8); //set sort length_actual } void @@ -542,6 +565,8 @@ ExportTimespanSelectorMultiple::fill_range_list () row[range_cols.name] = (*it)->name(); row[range_cols.label] = construct_label (*it); row[range_cols.length] = construct_length (*it); + //the actual samplecnt_t for sorting + row[range_cols.length_actual] = (*it)->length(); Glib::DateTime gdt(Glib::DateTime::create_now_local ((*it)->timestamp())); row[range_cols.timestamp] = (*it)->timestamp(); diff --git a/gtk2_ardour/export_timespan_selector.h b/gtk2_ardour/export_timespan_selector.h index 5e1035ed2f..eb797994e2 100644 --- a/gtk2_ardour/export_timespan_selector.h +++ b/gtk2_ardour/export_timespan_selector.h @@ -143,8 +143,9 @@ protected: Gtk::TreeModelColumn<std::string> length; Gtk::TreeModelColumn<std::string> date; Gtk::TreeModelColumn<time_t> timestamp; + Gtk::TreeModelColumn<ARDOUR::samplecnt_t> length_actual; - RangeCols () { add (location); add(label); add(selected); add(realtime); add(name); add(length); add(date); add(timestamp);} + RangeCols () { add (location); add(label); add(selected); add(realtime); add(name); add(length); add(date); add(timestamp); add(length_actual);} }; RangeCols range_cols; |