X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Fwx%2Fsubtitle_view.cc;h=adbc4a62585eb7d8e2f842b36dd39c978e6cf688;hp=f6fbd9a9abfbf1f49e1e99e327fa16462bd6ffe6;hb=ee77b3cf5f59f775e75e628aa28e8f2f9f941530;hpb=e6f28e7cda23c1ba3c49cc1bf2dc1491c2f87160 diff --git a/src/wx/subtitle_view.cc b/src/wx/subtitle_view.cc index f6fbd9a9a..adbc4a625 100644 --- a/src/wx/subtitle_view.cc +++ b/src/wx/subtitle_view.cc @@ -18,7 +18,7 @@ */ #include "lib/subrip_decoder.h" -#include "lib/decoded.h" +#include "lib/content_subtitle.h" #include "subtitle_view.h" using std::list; @@ -63,25 +63,16 @@ SubtitleView::SubtitleView (wxWindow* parent, shared_ptr content) } shared_ptr decoder (new SubRipDecoder (content)); + list > subs = decoder->get_text_subtitles (ContentTime(), ContentTime::max ()); int n = 0; - while (1) { - shared_ptr dec = decoder->peek (); - if (!dec) { - break; - } - - shared_ptr sub = dynamic_pointer_cast (dec); - assert (sub); - - for (list::const_iterator i = sub->subs.begin(); i != sub->subs.end(); ++i) { + for (list >::const_iterator i = subs.begin(); i != subs.end(); ++i) { + for (list::const_iterator j = (*i)->subs.begin(); j != (*i)->subs.end(); ++j) { wxListItem list_item; list_item.SetId (n); _list->InsertItem (list_item); - _list->SetItem (n, 2, i->text ()); + _list->SetItem (n, 2, j->text ()); ++n; } - - decoder->consume (); } SetSizerAndFit (sizer);