Add bind().
[dcpomatic.git] / src / lib / config.cc
index d44abdfbf7685dc0d2641cc0ad105ef5c8854ab7..4bc4f60f2f5640d6fa264fc9055d55a1e0e9b1b0 100644 (file)
@@ -357,6 +357,7 @@ try
        _default_j2k_bandwidth = f.optional_number_child<int>("DefaultJ2KBandwidth").get_value_or (200000000);
        _default_audio_delay = f.optional_number_child<int>("DefaultAudioDelay").get_value_or (0);
        _default_interop = f.optional_bool_child("DefaultInterop").get_value_or (false);
+
        try {
                auto al = f.optional_string_child("DefaultAudioLanguage");
                if (al) {
@@ -364,6 +365,13 @@ try
                }
        } catch (std::runtime_error&) {}
 
+       try {
+               auto te = f.optional_string_child("DefaultTerritory");
+               if (te) {
+                       _default_territory = dcp::LanguageTag::RegionSubtag(*te);
+               }
+       } catch (std::runtime_error&) {}
+
        for (auto const& i: f.node_children("DefaultMetadata")) {
                _default_metadata[i->string_attribute("key")] = i->content();
        }
@@ -765,6 +773,10 @@ Config::write_config () const
                /* [XML] DefaultAudioLanguage Default audio language to use for new films */
                root->add_child("DefaultAudioLanguage")->add_child_text(_default_audio_language->to_string());
        }
+       if (_default_territory) {
+               /* [XML] DefaultTerritory Default territory to use for new films */
+               root->add_child("DefaultTerritory")->add_child_text(_default_territory->subtag());
+       }
        for (auto const& i: _default_metadata) {
                auto c = root->add_child("DefaultMetadata");
                c->set_attribute("key", i.first);