checked_set (_name, _film->name());
setup_dcp_name ();
break;
- case Film::WITH_SUBTITLES:
- setup_dcp_name ();
- break;
case Film::DCP_CONTENT_TYPE:
checked_set (_dcp_content_type, DCPContentType::as_index (_film->dcp_content_type ()));
setup_dcp_name ();
(*i)->film_content_changed (property);
}
- if (property == FFmpegContentProperty::AUDIO_STREAM) {
+ if (property == FFmpegContentProperty::AUDIO_STREAM || property == SubtitleContentProperty::SUBTITLE_USE) {
setup_dcp_name ();
} else if (property == ContentProperty::PATH) {
setup_content ();
+ } else if (property == ContentProperty::POSITION) {
+ setup_content ();
}
}
film_changed (Film::CONTAINER);
film_changed (Film::RESOLUTION);
film_changed (Film::SCALER);
- film_changed (Film::WITH_SUBTITLES);
film_changed (Film::SIGNED);
film_changed (Film::ENCRYPTED);
film_changed (Film::J2K_BANDWIDTH);
_content->DeleteAllItems ();
ContentList content = _film->content ();
+ sort (content.begin(), content.end(), ContentSorter ());
+
for (ContentList::iterator i = content.begin(); i != content.end(); ++i) {
int const t = _content->GetItemCount ();
bool const valid = (*i)->paths_valid ();
if (!valid) {
s = _("MISSING: ") + s;
}
-
+
_content->InsertItem (t, std_to_wx (s));
if ((*i)->summary() == selected_summary) {
_video_panel->Enable (video_selection.size() > 0 && _generally_sensitive);
_audio_panel->Enable (audio_selection.size() > 0 && _generally_sensitive);
- _subtitle_panel->Enable (selection.size() == 1 && dynamic_pointer_cast<FFmpegContent> (selection.front()) && _generally_sensitive);
+ _subtitle_panel->Enable (selection.size() == 1 && dynamic_pointer_cast<SubtitleContent> (selection.front()) && _generally_sensitive);
_timing_panel->Enable (selection.size() == 1 && _generally_sensitive);
}
{
ContentList sel;
long int s = -1;
- while (1) {
+ while (true) {
s = _content->GetNextItem (s, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
if (s == -1) {
break;