void
ClosedCaptionsDialog::update ()
{
- DCPTime const time = _viewer->time ();
+ auto const time = _viewer->time ();
if (_current_in_lines && _current && _current->period.to > time) {
/* Current one is fine */
if (!_current && !_tracks.empty()) {
/* We have no current one: get another */
- shared_ptr<Butler> butler = _butler.lock ();
+ auto butler = _butler.lock ();
DCPOMATIC_ASSERT (_track->GetSelection() >= 0);
DCPOMATIC_ASSERT (_track->GetSelection() < int(_tracks.size()));
- DCPTextTrack track = _tracks[_track->GetSelection()];
+ auto track = _tracks[_track->GetSelection()];
if (butler) {
while (true) {
optional<TextRingBuffers::Data> d = butler->get_closed_caption ();
if (_current && _current->period.contains(time)) {
/* We need to set this new one up */
- list<StringText> to_show = _current->text.string;
+ auto to_show = _current->text.string;
for (int j = 0; j < MAX_CLOSED_CAPTION_LINES; ++j) {
_lines[j] = "";
to_show.sort (ClosedCaptionSorter());
- list<StringText>::const_iterator j = to_show.begin();
+ auto j = to_show.begin();
int k = 0;
while (j != to_show.end() && k < MAX_CLOSED_CAPTION_LINES) {
- _lines[k] = j->text();
+ _lines[k] = std_to_wx (j->text());
++j;
++k;
}
_track->Clear ();
for (auto const& i: _tracks) {
- _track->Append (std_to_wx(String::compose("%1 (%2)", i.name, i.language)));
+ _track->Append (std_to_wx(String::compose("%1 (%2)", i.name, i.language ? i.language->to_string() : wx_to_std(_("Unknown")))));
}
if (_track->GetCount() > 0) {