From da46a695431d3b573924e53ac1a0163056a1a5b5 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 13 Dec 2023 00:42:22 +0100 Subject: Add new interface for setting reel breaks (#2678). --- src/lib/film.cc | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/lib') diff --git a/src/lib/film.cc b/src/lib/film.cc index 835f3efdf..d2c73c8b5 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -1616,6 +1616,23 @@ Film::check_settings_consistency () if (change_made) { Message (_("DCP-o-matic had to change your settings for referring to DCPs as OV. Please review those settings to make sure they are what you want.")); } + + if (reel_type() == ReelType::CUSTOM) { + auto boundaries = custom_reel_boundaries(); + auto too_late = std::find_if(boundaries.begin(), boundaries.end(), [this](dcpomatic::DCPTime const& time) { + return time >= length(); + }); + + if (too_late != boundaries.end()) { + if (std::distance(too_late, boundaries.end()) > 1) { + Message(_("DCP-o-matic had to remove some of your custom reel boundaries as they no longer lie within the film.")); + } else { + Message(_("DCP-o-matic had to remove one of your custom reel boundaries as it no longer lies within the film.")); + } + boundaries.erase(too_late, boundaries.end()); + set_custom_reel_boundaries(boundaries); + } + } } void -- cgit v1.2.3