_remove->SetToolTip (_("Remove the selected piece of content from the film."));
b->Add (_remove, 0, wxEXPAND | wxALL, DCPOMATIC_BUTTON_STACK_GAP);
- _earlier = new wxButton (_panel, wxID_ANY, _("Up"));
+ _earlier = new wxButton (_panel, wxID_ANY, _("Earlier"));
_earlier->SetToolTip (_("Move the selected piece of content earlier in the film."));
b->Add (_earlier, 0, wxEXPAND | wxALL, DCPOMATIC_BUTTON_STACK_GAP);
- _later = new wxButton (_panel, wxID_ANY, _("Down"));
+ _later = new wxButton (_panel, wxID_ANY, _("Later"));
_later->SetToolTip (_("Move the selected piece of content later in the film."));
b->Add (_later, 0, wxEXPAND | wxALL, DCPOMATIC_BUTTON_STACK_GAP);
void
ContentPanel::set_film (shared_ptr<Film> film)
{
+ _audio_panel->set_film (film);
+
_film = film;
film_changed (Film::CONTENT);
film_changed (Film::AUDIO_CHANNELS);
selection_changed ();
+ setup_sensitivity ();
}
void
void
ContentPanel::film_content_changed (int property)
{
- if (property == ContentProperty::PATH || property == DCPContentProperty::CAN_BE_PLAYED) {
+ if (property == ContentProperty::PATH || property == DCPContentProperty::NEEDS_ASSETS || property == DCPContentProperty::NEEDS_KDM) {
setup ();
}
int const t = _content->GetItemCount ();
bool const valid = i->paths_valid ();
shared_ptr<DCPContent> dcp = dynamic_pointer_cast<DCPContent> (i);
- bool const needs_kdm = dcp && !dcp->can_be_played ();
+ bool const needs_kdm = dcp && dcp->needs_kdm ();
+ bool const needs_assets = dcp && dcp->needs_assets ();
- string s = i->summary ();
+ wxString s = std_to_wx (i->summary ());
if (!valid) {
s = _("MISSING: ") + s;
s = _("NEEDS KDM: ") + s;
}
+ if (needs_assets) {
+ s = _("NEEDS OV: ") + s;
+ }
+
wxListItem item;
item.SetId (t);
- item.SetText (std_to_wx (s));
+ item.SetText (s);
item.SetData (i.get ());
_content->InsertItem (item);
_content->SetItemState (t, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
}
- if (!valid || needs_kdm) {
+ if (!valid || needs_kdm || needs_assets) {
_content->SetItemTextColour (t, *wxRED);
}
}