diff options
| author | Carl Hetherington <cth@carlh.net> | 2024-01-05 01:28:19 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2024-01-05 17:06:21 +0100 |
| commit | 43cca4d3a11e077b3e75c713b95942cc3afc9eb1 (patch) | |
| tree | bbbf9102ec0e6fbd0cab778d9ce834cb52b5a9fc /src/lib/film.cc | |
| parent | cb330f076f72000d028b11e88702addb0a2ab480 (diff) | |
Add new "territory type" so that INT-T{D,L} can be chosen (#2704).
Diffstat (limited to 'src/lib/film.cc')
| -rw-r--r-- | src/lib/film.cc | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc index a5b393cc1..5b6b44892 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -426,6 +426,7 @@ Film::metadata (bool with_content_paths) const root->add_child("ContentVersion")->add_child_text(i); } root->add_child("NameLanguage")->add_child_text(_name_language.to_string()); + root->add_child("TerritoryType")->add_child_text(territory_type_to_string(_territory_type)); if (_release_territory) { root->add_child("ReleaseTerritory")->add_child_text(_release_territory->subtag()); } @@ -617,6 +618,10 @@ Film::read_metadata (optional<boost::filesystem::path> path) if (name_language) { _name_language = dcp::LanguageTag (*name_language); } + auto territory_type = f.optional_string_child("TerritoryType"); + if (territory_type) { + _territory_type = string_to_territory_type(*territory_type); + } auto release_territory = f.optional_string_child("ReleaseTerritory"); if (release_territory) { _release_territory = dcp::LanguageTag::RegionSubtag (*release_territory); @@ -977,7 +982,11 @@ Film::isdcf_name (bool if_created_now) const isdcf_name += "-XX"; } - if (_release_territory) { + if (_territory_type == TerritoryType::INTERNATIONAL_TEXTED) { + isdcf_name += "_INT-TD"; + } else if (_territory_type == TerritoryType::INTERNATIONAL_TEXTLESS) { + isdcf_name += "_INT-TL"; + } else if (_release_territory) { auto territory = _release_territory->subtag(); isdcf_name += "_" + to_upper (territory); if (!_ratings.empty()) { @@ -2207,3 +2216,11 @@ Film::last_written_by_earlier_than(int major, int minor, int micro) const return our_micro < micro; } + +void +Film::set_territory_type(TerritoryType type) +{ + FilmChangeSignaller ch(this, FilmProperty::TERRITORY_TYPE); + _territory_type = type; +} + |
