From 8a04d3d74cdb756baa399cc7693393285b064c59 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 11 Nov 2023 22:55:27 +0100 Subject: Store last path for adding KDMs (#2348). --- src/lib/config.cc | 1 + src/wx/content_menu.cc | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/lib/config.cc b/src/lib/config.cc index d032e6c64..aea54aa23 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -187,6 +187,7 @@ Config::set_defaults () _custom_languages.clear (); _initial_paths.clear(); _initial_paths["AddFilesPath"] = boost::none; + _initial_paths["AddKDMPath"] = boost::none; _initial_paths["AddDKDMPath"] = boost::none; _initial_paths["SelectCertificatePath"] = boost::none; _initial_paths["AddCombinerInputPath"] = boost::none; diff --git a/src/wx/content_menu.cc b/src/wx/content_menu.cc index 5d9865970..b9214e6a7 100644 --- a/src/wx/content_menu.cc +++ b/src/wx/content_menu.cc @@ -24,6 +24,7 @@ #include "content_menu.h" #include "content_properties_dialog.h" #include "dir_dialog.h" +#include "file_dialog.h" #include "film_viewer.h" #include "repeat_dialog.h" #include "timeline_video_content_view.h" @@ -402,15 +403,15 @@ ContentMenu::kdm () auto dcp = dynamic_pointer_cast (_content.front()); DCPOMATIC_ASSERT (dcp); - wxFileDialog dialog(_parent, _("Select KDM")); + FileDialog dialog(_parent, _("Select KDM"), wxT("XML files|*.xml|All files|*.*"), wxFD_MULTIPLE, "AddKDMPath"); - if (dialog.ShowModal() != wxID_OK) { + if (!dialog.show()) { return; } optional kdm; try { - kdm = dcp::EncryptedKDM(dcp::file_to_string(wx_to_std(dialog.GetPath()), MAX_KDM_SIZE)); + kdm = dcp::EncryptedKDM(dcp::file_to_string(dialog.path(), MAX_KDM_SIZE)); } catch (exception& e) { error_dialog (_parent, _("Could not load KDM"), std_to_wx(e.what())); return; -- cgit v1.2.3