X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fdownload_certificate_panel.cc;h=ae62f1a0a62709f5d6fc96f81c3314a24131ddc9;hb=a65a6d26cf5bf673f1bf1fb105f4ca0f8bf38b9c;hp=461c68966cba83b94d3afc27838f073e55fb78ba;hpb=8c7ad603cf0a534abe1a920b70b0daa095257d3a;p=dcpomatic.git diff --git a/src/wx/download_certificate_panel.cc b/src/wx/download_certificate_panel.cc index 461c68966..ae62f1a0a 100644 --- a/src/wx/download_certificate_panel.cc +++ b/src/wx/download_certificate_panel.cc @@ -24,8 +24,9 @@ #include "lib/signal_manager.h" #include "lib/compose.hpp" #include +#include #include -#include +#include using std::string; using boost::function; @@ -43,7 +44,7 @@ DownloadCertificatePanel::DownloadCertificatePanel (DownloadCertificateDialog* d _overall_sizer->Add (_table, 1, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER); - add_label_to_sizer (_table, this, _("Serial number"), true); + add_label_to_sizer (_table, this, _("Serial number"), true, 0, wxALIGN_CENTER_VERTICAL); _serial = new wxTextCtrl (this, wxID_ANY, wxT (""), wxDefaultPosition, wxSize (300, -1)); _table->Add (_serial, 1, wxEXPAND); @@ -53,8 +54,9 @@ DownloadCertificatePanel::DownloadCertificatePanel (DownloadCertificateDialog* d _overall_sizer->SetSizeHints (this); } + optional -DownloadCertificatePanel::load (boost::filesystem::path file) +DownloadCertificatePanel::load_certificate (boost::filesystem::path file) { try { _certificate = dcp::Certificate (dcp::file_to_string (file)); @@ -64,6 +66,19 @@ DownloadCertificatePanel::load (boost::filesystem::path file) return optional(); } + +optional +DownloadCertificatePanel::load_certificate_from_chain (boost::filesystem::path file) +{ + try { + _certificate = dcp::CertificateChain (dcp::file_to_string(file)).leaf(); + } catch (dcp::MiscError& e) { + return String::compose(wx_to_std(_("Could not read certificate file (%1)")), e.what()); + } + return optional(); +} + + optional DownloadCertificatePanel::certificate () const {