Use sqlite for cinema and DKDM recipient lists.
[dcpomatic.git] / src / wx / wx_util.cc
index 58bb4d5ea0d4cb601c5fd249d4e95b43214ccdab..1c04a4755a85be5384ca54c8af5f05a79386f11a 100644 (file)
 #include "static_text.h"
 #include "wx_ptr.h"
 #include "wx_util.h"
+#include "wx_variant.h"
 #include "lib/config.h"
 #include "lib/cross.h"
 #include "lib/job.h"
 #include "lib/job_manager.h"
 #include "lib/util.h"
+#include "lib/variant.h"
 #include "lib/version.h"
 #include <dcp/locale_convert.h>
 #include <dcp/warnings.h>
@@ -161,7 +163,7 @@ add_label_to_sizer (wxGridBagSizer* s, wxStaticText* t, bool, wxGBPosition pos,
 void
 error_dialog (wxWindow* parent, wxString m, optional<wxString> e)
 {
-       auto d = make_wx<wxMessageDialog>(parent, m, _("DCP-o-matic"), wxOK | wxICON_ERROR);
+       auto d = make_wx<wxMessageDialog>(parent, m, variant::wx::dcpomatic(), wxOK | wxICON_ERROR);
        if (e) {
                wxString em = *e;
                em[0] = wxToupper (em[0]);
@@ -178,7 +180,7 @@ error_dialog (wxWindow* parent, wxString m, optional<wxString> e)
 void
 message_dialog (wxWindow* parent, wxString m)
 {
-       auto d = make_wx<wxMessageDialog>(parent, m, _("DCP-o-matic"), wxOK | wxICON_INFORMATION);
+       auto d = make_wx<wxMessageDialog>(parent, m, variant::wx::dcpomatic(), wxOK | wxICON_INFORMATION);
        d->ShowModal ();
 }
 
@@ -187,7 +189,7 @@ message_dialog (wxWindow* parent, wxString m)
 bool
 confirm_dialog (wxWindow* parent, wxString m)
 {
-       auto d = make_wx<wxMessageDialog>(parent, m, _("DCP-o-matic"), wxYES_NO | wxICON_QUESTION);
+       auto d = make_wx<wxMessageDialog>(parent, m, variant::wx::dcpomatic(), wxYES_NO | wxICON_QUESTION);
        return d->ShowModal() == wxID_YES;
 }
 
@@ -684,35 +686,35 @@ display_progress (wxString title, wxString task)
 int
 get_offsets (vector<Offset>& offsets)
 {
-       offsets.push_back (Offset(_("UTC-11"),  -11,  0));
-       offsets.push_back (Offset(_("UTC-10"),  -10,  0));
-       offsets.push_back (Offset(_("UTC-9"),    -9,  0));
-       offsets.push_back (Offset(_("UTC-8"),    -8,  0));
-       offsets.push_back (Offset(_("UTC-7"),    -7,  0));
-       offsets.push_back (Offset(_("UTC-6"),    -6,  0));
-       offsets.push_back (Offset(_("UTC-5"),    -5,  0));
-       offsets.push_back (Offset(_("UTC-4:30"), -4, 30));
-       offsets.push_back (Offset(_("UTC-4"),    -4,  0));
-       offsets.push_back (Offset(_("UTC-3:30"), -3, 30));
-       offsets.push_back (Offset(_("UTC-3"),    -3,  0));
-       offsets.push_back (Offset(_("UTC-2"),    -2,  0));
-       offsets.push_back (Offset(_("UTC-1"),    -1,  0));
+       offsets.push_back({_("UTC-11"),  dcp::UTCOffset(-11,   0)});
+       offsets.push_back({_("UTC-10"),  dcp::UTCOffset(-10,   0)});
+       offsets.push_back({_("UTC-9"),   dcp::UTCOffset( -9,   0)});
+       offsets.push_back({_("UTC-8"),   dcp::UTCOffset( -8,   0)});
+       offsets.push_back({_("UTC-7"),   dcp::UTCOffset( -7,   0)});
+       offsets.push_back({_("UTC-6"),   dcp::UTCOffset( -6,   0)});
+       offsets.push_back({_("UTC-5"),   dcp::UTCOffset( -5,   0)});
+       offsets.push_back({_("UTC-4:30"),dcp::UTCOffset( -4, -30)});
+       offsets.push_back({_("UTC-4"),   dcp::UTCOffset( -4,   0)});
+       offsets.push_back({_("UTC-3:30"),dcp::UTCOffset( -3, -30)});
+       offsets.push_back({_("UTC-3"),   dcp::UTCOffset( -3,   0)});
+       offsets.push_back({_("UTC-2"),   dcp::UTCOffset( -2,   0)});
+       offsets.push_back({_("UTC-1"),   dcp::UTCOffset( -1,   0)});
        int utc = offsets.size();
-       offsets.push_back (Offset(_("UTC")  ,     0,  0));
-       offsets.push_back (Offset(_("UTC+1"),     1,  0));
-       offsets.push_back (Offset(_("UTC+2"),     2,  0));
-       offsets.push_back (Offset(_("UTC+3"),     3,  0));
-       offsets.push_back (Offset(_("UTC+4"),     4,  0));
-       offsets.push_back (Offset(_("UTC+5"),     5,  0));
-       offsets.push_back (Offset(_("UTC+5:30"),  5, 30));
-       offsets.push_back (Offset(_("UTC+6"),     6,  0));
-       offsets.push_back (Offset(_("UTC+7"),     7,  0));
-       offsets.push_back (Offset(_("UTC+8"),     8,  0));
-       offsets.push_back (Offset(_("UTC+9"),     9,  0));
-       offsets.push_back (Offset(_("UTC+9:30"),  9, 30));
-       offsets.push_back (Offset(_("UTC+10"),   10,  0));
-       offsets.push_back (Offset(_("UTC+11"),   11,  0));
-       offsets.push_back (Offset(_("UTC+12"),   12,  0));
+       offsets.push_back({_("UTC")  ,   dcp::UTCOffset(  0,   0)});
+       offsets.push_back({_("UTC+1"),   dcp::UTCOffset(  1,   0)});
+       offsets.push_back({_("UTC+2"),   dcp::UTCOffset(  2,   0)});
+       offsets.push_back({_("UTC+3"),   dcp::UTCOffset(  3,   0)});
+       offsets.push_back({_("UTC+4"),   dcp::UTCOffset(  4,   0)});
+       offsets.push_back({_("UTC+5"),   dcp::UTCOffset(  5,   0)});
+       offsets.push_back({_("UTC+5:30"),dcp::UTCOffset(  5,  30)});
+       offsets.push_back({_("UTC+6"),   dcp::UTCOffset(  6,   0)});
+       offsets.push_back({_("UTC+7"),   dcp::UTCOffset(  7,   0)});
+       offsets.push_back({_("UTC+8"),   dcp::UTCOffset(  8,   0)});
+       offsets.push_back({_("UTC+9"),   dcp::UTCOffset(  9,   0)});
+       offsets.push_back({_("UTC+9:30"),dcp::UTCOffset(  9,  30)});
+       offsets.push_back({_("UTC+10"),  dcp::UTCOffset( 10,   0)});
+       offsets.push_back({_("UTC+11"),  dcp::UTCOffset( 11,   0)});
+       offsets.push_back({_("UTC+12"),  dcp::UTCOffset( 12,   0)});
 
        return utc;
 }
@@ -808,20 +810,12 @@ report_config_load_failure(wxWindow* parent, Config::LoadFailure what)
        case Config::LoadFailure::CONFIG:
                message_dialog(parent, _("The existing configuration failed to load.  Default values will be used instead.  These may take a short time to create."));
                break;
-       case Config::LoadFailure::CINEMAS:
-               message_dialog(
-                       parent,
-                       _(wxString::Format("The cinemas list for creating KDMs (cinemas.xml) failed to load.  Please check the numbered backup files in %s",
-                                          std_to_wx(Config::instance()->cinemas_file().parent_path().string())))
-                       );
-               break;
-       case Config::LoadFailure::DKDM_RECIPIENTS:
-               message_dialog(
-                       parent,
-                       _(wxString::Format("The recipients list for creating DKDMs (dkdm_recipients.xml) failed to load.  Please check the numbered backup files in %s",
-                                          std_to_wx(Config::instance()->dkdm_recipients_file().parent_path().string())))
-                       );
-               break;
        }
 }
 
+
+wxString
+wx::report_problem()
+{
+       return std_to_wx(::report_problem());
+}