X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Flanguage_tag_widget.cc;h=88923da15c87b7a29340dd02c0483766ec5ef4e4;hb=693013b77341e4177c792de091ab9a524e33c477;hp=567b1fefab15b31eb935e6bdd50ae571addec84c;hpb=3c29aa6531a4046a8db72dcac81189eb8893233c;p=dcpomatic.git diff --git a/src/wx/language_tag_widget.cc b/src/wx/language_tag_widget.cc index 567b1fefa..88923da15 100644 --- a/src/wx/language_tag_widget.cc +++ b/src/wx/language_tag_widget.cc @@ -22,7 +22,9 @@ #include "dcpomatic_button.h" #include "language_tag_dialog.h" #include "language_tag_widget.h" +#include "wx_ptr.h" #include "wx_util.h" +#include "lib/scope_guard.h" #include LIBDCP_DISABLE_WARNINGS #include @@ -55,21 +57,21 @@ LanguageTagWidget::LanguageTagWidget (wxWindow* parent, wxString tooltip, option } -LanguageTagWidget::~LanguageTagWidget () +LanguageTagWidget::~LanguageTagWidget() { - _language->Destroy (); - _edit->Destroy (); + _language->Destroy(); + _edit->Destroy(); } void LanguageTagWidget::edit () { - auto d = new LanguageTagDialog(_parent, _tag.get_value_or(dcp::LanguageTag("en"))); - d->ShowModal (); - set (d->get()); - Changed (d->get()); - d->Destroy (); + auto d = make_wx(_parent, _tag.get_value_or(dcp::LanguageTag("en"))); + if (d->ShowModal() == wxID_OK) { + set(d->get()); + Changed(d->get()); + } }