Add subject/issuer details to the screen dialog (#2422).
[dcpomatic.git] / src / wx / screen_dialog.h
index 6665ef39878d8bdba0de7301629495f12ce9ab3e..0069b9fa321d56e0685d534d73f1fd8d2ea28e32 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012-2018 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2022 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
 
 */
 
+
 #include "editable_list.h"
 #include "lib/screen.h"
 #include <dcp/certificate.h>
+#include <dcp/warnings.h>
+LIBDCP_DISABLE_WARNINGS
 #include <wx/wx.h>
+LIBDCP_ENABLE_WARNINGS
 #include <boost/optional.hpp>
 
+
 class Progress;
 class TrustedDeviceDialog;
 
+
 class ScreenDialog : public wxDialog
 {
 public:
@@ -35,13 +41,15 @@ public:
                wxString,
                std::string name = "",
                std::string notes = "",
-               boost::optional<dcp::Certificate> c = boost::optional<dcp::Certificate> (),
-               std::vector<TrustedDevice> d = std::vector<TrustedDevice>()
+               boost::optional<dcp::Certificate> c = {},
+               boost::optional<std::string> f = {},
+               std::vector<TrustedDevice> d = {}
                );
 
        std::string name () const;
        std::string notes () const;
        boost::optional<dcp::Certificate> recipient () const;
+       boost::optional<std::string> recipient_file () const;
        std::vector<TrustedDevice> trusted_devices () {
                return _trusted_devices;
        }
@@ -52,6 +60,7 @@ private:
        void download_recipient ();
        void setup_sensitivity ();
        void set_recipient (boost::optional<dcp::Certificate>);
+       void set_recipient_file(std::string file);
 
        void set_trusted_devices (std::vector<TrustedDevice> d) {
                _trusted_devices = d;
@@ -61,6 +70,11 @@ private:
        wxTextCtrl* _name;
        wxTextCtrl* _notes;
        wxStaticText* _recipient_thumbprint;
+       wxStaticText* _recipient_file;
+       wxStaticText* _subject_common_name;
+       wxStaticText* _subject_organization_name;
+       wxStaticText* _issuer_common_name;
+       wxStaticText* _issuer_organization_name;
        wxButton* _get_recipient_from_file;
        wxButton* _download_recipient;
        EditableList<TrustedDevice, TrustedDeviceDialog>* _trusted_device_list;