Bind (wxEVT_MOTION, boost::bind (&Timeline::mouse_moved, this, _1));
Bind (wxEVT_SIZE, boost::bind (&Timeline::resized, this));
- playlist_changed ();
+ film_changed (Film::CONTENT);
SetMinSize (wxSize (640, tracks() * track_height() + 96));
- _playlist_changed_connection = film->playlist()->Changed.connect (bind (&Timeline::playlist_changed, this));
- _playlist_content_changed_connection = film->playlist()->ContentChanged.connect (bind (&Timeline::playlist_content_changed, this, _2));
+ _film_changed_connection = film->Changed.connect (bind (&Timeline::film_changed, this, _1));
+ _film_content_changed_connection = film->ContentChanged.connect (bind (&Timeline::film_content_changed, this, _2));
}
void
}
void
-Timeline::playlist_changed ()
+Timeline::film_changed (Film::Property p)
{
- ensure_ui_thread ();
- recreate_views ();
+ if (p == Film::CONTENT) {
+ ensure_ui_thread ();
+ recreate_views ();
+ }
}
void
Timeline::recreate_views ()
{
- shared_ptr<const Film> fl = _film.lock ();
- if (!fl) {
+ shared_ptr<const Film> film = _film.lock ();
+ if (!film) {
return;
}
_views.clear ();
_views.push_back (_time_axis_view);
- ContentList content = fl->playlist()->content ();
+ ContentList content = film->content ();
for (ContentList::iterator i = content.begin(); i != content.end(); ++i) {
if (dynamic_pointer_cast<VideoContent> (*i)) {
}
shared_ptr<AudioContent> ac = dynamic_pointer_cast<AudioContent> (*i);
- if (ac && !ac->audio_mapping().mapped_dcp_channels().empty ()) {
+ if (ac && !ac->audio_mapping().mapped_output_channels().empty ()) {
_views.push_back (shared_ptr<TimelineView> (new TimelineAudioContentView (*this, *i)));
}
}
void
-Timeline::playlist_content_changed (int property)
+Timeline::film_content_changed (int property)
{
ensure_ui_thread ();
setup_pixels_per_second ();
}
Refresh ();
- } else if (property == AudioContentProperty::AUDIO_MAPPING) {
+ } else if (property == AudioContentProperty::AUDIO_STREAMS) {
recreate_views ();
}
}