X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fwx%2Fscreen_dialog.cc;h=503745683980f3b2a860ec09050c2b80bba01a84;hb=88065ad7e9070c7c6a0f9b15202c392084e9e8ba;hp=6b58145eb367737c6bf6317f8b4b7d368bf43b8f;hpb=d2137ac5db409e686b4d9b3fa567935a5e416d41;p=dcpomatic.git diff --git a/src/wx/screen_dialog.cc b/src/wx/screen_dialog.cc index 6b58145eb..503745683 100644 --- a/src/wx/screen_dialog.cc +++ b/src/wx/screen_dialog.cc @@ -29,9 +29,9 @@ using std::string; using std::cout; -using boost::shared_ptr; +using boost::optional; -ScreenDialog::ScreenDialog (wxWindow* parent, string title, string name, shared_ptr certificate) +ScreenDialog::ScreenDialog (wxWindow* parent, string title, string name, optional certificate) : TableDialog (parent, std_to_wx (title), 2, true) , _certificate (certificate) { @@ -79,7 +79,7 @@ ScreenDialog::name () const return wx_to_std (_name->GetValue()); } -shared_ptr +optional ScreenDialog::certificate () const { return _certificate; @@ -89,7 +89,7 @@ void ScreenDialog::load_certificate (boost::filesystem::path file) { try { - _certificate.reset (new dcp::Certificate (file)); + _certificate = dcp::Certificate (dcp::file_to_string (file)); _certificate_text->SetValue (_certificate->certificate ()); } catch (dcp::MiscError& e) { error_dialog (this, wxString::Format (_("Could not read certificate file (%s)"), e.what())); @@ -128,7 +128,7 @@ void ScreenDialog::setup_sensitivity () { wxButton* ok = dynamic_cast (FindWindowById (wxID_OK, this)); - ok->Enable (_certificate.get ()); + ok->Enable (_certificate); _download_certificate->Enable ( _manufacturer->GetStringSelection() == _("Doremi") ||