: ContentSubPanel (p, S_("Timing|Timing"))
, _viewer (viewer)
, _film_content_changed_suspender (boost::bind(&TimingPanel::film_content_changed, this, _1))
+{
+
+}
+
+
+void
+TimingPanel::create ()
{
wxSize size = TimecodeBase::size (this);
setup_sensitivity ();
add_to_grid ();
+
+ _sizer->Layout ();
}
void
Suspender::Block bl = _film_content_changed_suspender.block ();
for (auto i: _parent->selected()) {
FrameRateChange const frc = _parent->film()->active_frame_rate_change (i->position ());
- i->set_trim_end (
- ContentTime (max(DCPTime(), i->full_length(_parent->film()) - play_length), frc) - i->trim_start()
- );
+ auto dcp = max(DCPTime(), i->full_length(_parent->film()) - play_length);
+ i->set_trim_end (max(ContentTime(), ContentTime(dcp, frc) - i->trim_start()));
}
}
void
TimingPanel::film_changed (Film::Property p)
{
- if (p == Film::VIDEO_FRAME_RATE) {
+ if (p == Film::Property::VIDEO_FRAME_RATE) {
update_full_length ();
update_play_length ();
}