mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-07 07:14:56 +01:00
Location timestamp changes - can now sort by location creation date: gtk part
This commit is contained in:
parent
7d4f72174c
commit
31ec8ce7d1
4 changed files with 33 additions and 3 deletions
|
|
@ -405,6 +405,7 @@ ExportTimespanSelectorSingle::ExportTimespanSelectorSingle (ARDOUR::Session * se
|
||||||
range_view.append_column (*label_col);
|
range_view.append_column (*label_col);
|
||||||
|
|
||||||
range_view.append_column (_("Length"), range_cols.length);
|
range_view.append_column (_("Length"), range_cols.length);
|
||||||
|
range_view.append_column (_("Creation Date"), range_cols.date);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -445,6 +446,11 @@ ExportTimespanSelectorSingle::fill_range_list ()
|
||||||
row[range_cols.label] = construct_label (*it);
|
row[range_cols.label] = construct_label (*it);
|
||||||
row[range_cols.length] = construct_length (*it);
|
row[range_cols.length] = construct_length (*it);
|
||||||
|
|
||||||
|
Glib::DateTime gdt(Glib::DateTime::create_now_local ((*it)->timestamp()));
|
||||||
|
row[range_cols.timestamp] = (*it)->timestamp();
|
||||||
|
row[range_cols.date] = gdt.format ("%F %H:%M");;
|
||||||
|
|
||||||
|
|
||||||
add_range_to_selection (*it, false);
|
add_range_to_selection (*it, false);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
@ -496,6 +502,12 @@ ExportTimespanSelectorMultiple::ExportTimespanSelectorMultiple (ARDOUR::Session
|
||||||
range_view.append_column (*label_col);
|
range_view.append_column (*label_col);
|
||||||
|
|
||||||
range_view.append_column (_("Length"), range_cols.length);
|
range_view.append_column (_("Length"), range_cols.length);
|
||||||
|
range_view.append_column (_("Creation Date"), range_cols.date);
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -526,6 +538,11 @@ ExportTimespanSelectorMultiple::fill_range_list ()
|
||||||
row[range_cols.name] = (*it)->name();
|
row[range_cols.name] = (*it)->name();
|
||||||
row[range_cols.label] = construct_label (*it);
|
row[range_cols.label] = construct_label (*it);
|
||||||
row[range_cols.length] = construct_length (*it);
|
row[range_cols.length] = construct_length (*it);
|
||||||
|
|
||||||
|
Glib::DateTime gdt(Glib::DateTime::create_now_local ((*it)->timestamp()));
|
||||||
|
row[range_cols.timestamp] = (*it)->timestamp();
|
||||||
|
row[range_cols.date] = gdt.format ("%F %H:%M");;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
set_selection_from_state ();
|
set_selection_from_state ();
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,8 @@
|
||||||
#include "audio_clock.h"
|
#include "audio_clock.h"
|
||||||
|
|
||||||
#include <list>
|
#include <list>
|
||||||
|
#include <ctime>
|
||||||
|
|
||||||
|
|
||||||
#ifdef interface
|
#ifdef interface
|
||||||
#undef interface
|
#undef interface
|
||||||
|
|
@ -136,8 +138,10 @@ protected:
|
||||||
Gtk::TreeModelColumn<bool> realtime;
|
Gtk::TreeModelColumn<bool> realtime;
|
||||||
Gtk::TreeModelColumn<std::string> name;
|
Gtk::TreeModelColumn<std::string> name;
|
||||||
Gtk::TreeModelColumn<std::string> length;
|
Gtk::TreeModelColumn<std::string> length;
|
||||||
|
Gtk::TreeModelColumn<std::string> date;
|
||||||
|
Gtk::TreeModelColumn<time_t> timestamp;
|
||||||
|
|
||||||
RangeCols () { add (location); add(label); add(selected); add(realtime); add(name); add(length); }
|
RangeCols () { add (location); add(label); add(selected); add(realtime); add(name); add(length); add(date); add(timestamp);}
|
||||||
};
|
};
|
||||||
RangeCols range_cols;
|
RangeCols range_cols;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -63,12 +63,14 @@ LocationEditRow::LocationEditRow(Session * sess, Location * loc, int32_t num)
|
||||||
, glue_check_button (_("Glue"))
|
, glue_check_button (_("Glue"))
|
||||||
, _clock_group (0)
|
, _clock_group (0)
|
||||||
{
|
{
|
||||||
|
|
||||||
i_am_the_modifier = 0;
|
i_am_the_modifier = 0;
|
||||||
|
|
||||||
remove_button.set_icon (ArdourIcon::CloseCross);
|
remove_button.set_icon (ArdourIcon::CloseCross);
|
||||||
remove_button.set_events (remove_button.get_events() & ~(Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK));
|
remove_button.set_events (remove_button.get_events() & ~(Gdk::ENTER_NOTIFY_MASK|Gdk::LEAVE_NOTIFY_MASK));
|
||||||
|
|
||||||
number_label.set_name ("LocationEditNumberLabel");
|
number_label.set_name ("LocationEditNumberLabel");
|
||||||
|
date_label.set_name ("LocationDateLabel");
|
||||||
name_label.set_name ("LocationEditNameLabel");
|
name_label.set_name ("LocationEditNameLabel");
|
||||||
name_entry.set_name ("LocationEditNameEntry");
|
name_entry.set_name ("LocationEditNameEntry");
|
||||||
cd_check_button.set_name ("LocationEditCdButton");
|
cd_check_button.set_name ("LocationEditCdButton");
|
||||||
|
|
@ -242,6 +244,12 @@ LocationEditRow::set_location (Location *loc)
|
||||||
item_table.attach (hide_check_button, 5, 6, 0, 1, FILL, Gtk::FILL, 4, 0);
|
item_table.attach (hide_check_button, 5, 6, 0, 1, FILL, Gtk::FILL, 4, 0);
|
||||||
item_table.attach (lock_check_button, 6, 7, 0, 1, FILL, Gtk::FILL, 4, 0);
|
item_table.attach (lock_check_button, 6, 7, 0, 1, FILL, Gtk::FILL, 4, 0);
|
||||||
item_table.attach (glue_check_button, 7, 8, 0, 1, FILL, Gtk::FILL, 4, 0);
|
item_table.attach (glue_check_button, 7, 8, 0, 1, FILL, Gtk::FILL, 4, 0);
|
||||||
|
|
||||||
|
Glib::DateTime gdt(Glib::DateTime::create_now_local (location->timestamp()));
|
||||||
|
string date = gdt.format ("%F %H:%M");
|
||||||
|
date_label.set_text(date);
|
||||||
|
item_table.attach (date_label, 9, 10, 0, 1, FILL, Gtk::FILL, 4, 0);
|
||||||
|
|
||||||
}
|
}
|
||||||
hide_check_button.set_active (location->is_hidden());
|
hide_check_button.set_active (location->is_hidden());
|
||||||
lock_check_button.set_active (location->locked());
|
lock_check_button.set_active (location->locked());
|
||||||
|
|
@ -803,7 +811,7 @@ LocationUI::LocationUI (std::string state_node_name)
|
||||||
location_rows.set_name("LocationLocRows");
|
location_rows.set_name("LocationLocRows");
|
||||||
location_rows_scroller.add (location_rows);
|
location_rows_scroller.add (location_rows);
|
||||||
location_rows_scroller.set_name ("LocationLocRowsScroller");
|
location_rows_scroller.set_name ("LocationLocRowsScroller");
|
||||||
location_rows_scroller.set_policy (Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC);
|
location_rows_scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
|
||||||
location_rows_scroller.set_size_request (-1, 130);
|
location_rows_scroller.set_size_request (-1, 130);
|
||||||
|
|
||||||
newest_location = 0;
|
newest_location = 0;
|
||||||
|
|
@ -838,7 +846,7 @@ LocationUI::LocationUI (std::string state_node_name)
|
||||||
range_rows.set_name("LocationRangeRows");
|
range_rows.set_name("LocationRangeRows");
|
||||||
range_rows_scroller.add (range_rows);
|
range_rows_scroller.add (range_rows);
|
||||||
range_rows_scroller.set_name ("LocationRangeRowsScroller");
|
range_rows_scroller.set_name ("LocationRangeRowsScroller");
|
||||||
range_rows_scroller.set_policy (Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC);
|
range_rows_scroller.set_policy (Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
|
||||||
range_rows_scroller.set_size_request (-1, 130);
|
range_rows_scroller.set_size_request (-1, 130);
|
||||||
|
|
||||||
range_frame_box.set_spacing (5);
|
range_frame_box.set_spacing (5);
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,7 @@ protected:
|
||||||
Gtk::Entry name_entry;
|
Gtk::Entry name_entry;
|
||||||
Gtk::Label name_label;
|
Gtk::Label name_label;
|
||||||
Gtk::Label number_label;
|
Gtk::Label number_label;
|
||||||
|
Gtk::Label date_label;
|
||||||
|
|
||||||
Gtk::HBox start_hbox;
|
Gtk::HBox start_hbox;
|
||||||
AudioClock start_clock;
|
AudioClock start_clock;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue