-
- if (boost::filesystem::exists (_dkdm_recipients_file)) {
- cxml::Document f ("DKDMRecipients");
- f.read_file (_dkdm_recipients_file);
- read_dkdm_recipients (f);
+ _use_isdcf_name_by_default = f.optional_bool_child("UseISDCFNameByDefault").get_value_or(true);
+ _write_kdms_to_disk = f.optional_bool_child("WriteKDMsToDisk").get_value_or(true);
+ _email_kdms = f.optional_bool_child("EmailKDMs").get_value_or(false);
+ _default_kdm_type = dcp::string_to_formulation(f.optional_string_child("DefaultKDMType").get_value_or("modified-transitional-1"));
+ if (auto duration = f.optional_node_child("DefaultKDMDuration")) {
+ _default_kdm_duration = RoughDuration(duration);
+ } else {
+ _default_kdm_duration = RoughDuration(1, RoughDuration::Unit::WEEKS);
+ }
+ _auto_crop_threshold = f.optional_number_child<double>("AutoCropThreshold").get_value_or(0.1);
+ _last_release_notes_version = f.optional_string_child("LastReleaseNotesVersion");
+ _main_divider_sash_position = f.optional_number_child<int>("MainDividerSashPosition");
+ _main_content_divider_sash_position = f.optional_number_child<int>("MainContentDividerSashPosition");
+
+ if (auto loc = f.optional_string_child("DefaultAddFileLocation")) {
+ if (*loc == "last") {
+ _default_add_file_location = DefaultAddFileLocation::SAME_AS_LAST_TIME;
+ } else if (*loc == "project") {
+ _default_add_file_location = DefaultAddFileLocation::SAME_AS_PROJECT;
+ }