summaryrefslogtreecommitdiff
path: root/src/wx/content_panel.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/wx/content_panel.cc')
-rw-r--r--src/wx/content_panel.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/wx/content_panel.cc b/src/wx/content_panel.cc
index 13ae2d88a..5ef2d8356 100644
--- a/src/wx/content_panel.cc
+++ b/src/wx/content_panel.cc
@@ -399,7 +399,7 @@ ContentPanel::set_selection (weak_ptr<Content> wc)
void
ContentPanel::film_content_changed (int property)
{
- if (property == ContentProperty::PATH || property == ContentProperty::POSITION) {
+ if (property == ContentProperty::PATH || property == ContentProperty::POSITION || property == DCPContentProperty::CAN_BE_PLAYED) {
setup ();
}
@@ -425,19 +425,26 @@ ContentPanel::setup ()
for (ContentList::iterator i = content.begin(); i != content.end(); ++i) {
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->can_be_played ();
string s = (*i)->summary ();
+
if (!valid) {
s = _("MISSING: ") + s;
}
+ if (needs_kdm) {
+ s = _("NEEDS KDM: ") + s;
+ }
+
_content->InsertItem (t, std_to_wx (s));
if ((*i)->summary() == selected_summary) {
_content->SetItemState (t, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
}
- if (!valid) {
+ if (!valid || needs_kdm) {
_content->SetItemTextColour (t, *wxRED);
}
}