+void ClipProperties::slotCheckMaxLength()
+{
+ if (m_clip->maxDuration() == GenTime()) return;
+ int duration = m_tc.getFrameCount(m_view.clip_duration->text(), m_fps);
+ if (duration > m_clip->maxDuration().frames(m_fps)) {
+ m_view.clip_duration->setText(m_tc.getTimecode(m_clip->maxDuration(), m_fps));
+ }
+}
+
+void ClipProperties::slotUpdateDurationFormat(int ix)
+{
+ bool framesFormat = ix == 1;
+ if (framesFormat) {
+ // switching to frames count, update widget
+ m_view.slide_duration_frames->setValue(m_tc.getFrameCount(m_view.slide_duration->text(), m_tc.fps()));
+ m_view.luma_duration_frames->setValue(m_tc.getFrameCount(m_view.luma_duration->text(), m_tc.fps()));
+ m_view.slide_duration->setHidden(true);
+ m_view.luma_duration->setHidden(true);
+ m_view.slide_duration_frames->setHidden(false);
+ m_view.luma_duration_frames->setHidden(false);
+ } else {
+ // switching to timecode format
+ m_view.slide_duration->setText(m_tc.getTimecodeFromFrames(m_view.slide_duration_frames->value()));
+ m_view.luma_duration->setText(m_tc.getTimecodeFromFrames(m_view.luma_duration_frames->value()));
+ m_view.slide_duration_frames->setHidden(true);
+ m_view.luma_duration_frames->setHidden(true);
+ m_view.slide_duration->setHidden(false);
+ m_view.luma_duration->setHidden(false);
+ }
+}
+