Updated zh_CN translation from Danbo Song.
[dcpomatic.git] / src / wx / about_dialog.cc
index f107c872ae89155a4c958f5e6c2c0cba6ca51a7c..a40cd87c0ebe2f9a6ccf1a1c5f98806c2fe04bb1 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013-2017 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2021 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
 
 */
 
+
 /** @file  src/wx/about_dialog.cc
  *  @brief The "about DCP-o-matic" dialogue box.
  */
 
 #include "about_dialog.h"
+#include "static_text.h"
 #include "wx_util.h"
-#include "lib/version.h"
 #include "lib/compose.hpp"
+#include "lib/version.h"
+#include <dcp/warnings.h>
+LIBDCP_DISABLE_WARNINGS
 #include <wx/notebook.h>
 #include <wx/hyperlink.h>
+LIBDCP_ENABLE_WARNINGS
 
 using std::vector;
 
+
 AboutDialog::AboutDialog (wxWindow* parent)
        : wxDialog (parent, wxID_ANY, _("About DCP-o-matic"))
 {
-       wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
-       wxBoxSizer* sizer = new wxBoxSizer (wxVERTICAL);
+       auto overall_sizer = new wxBoxSizer (wxVERTICAL);
+       auto sizer = new wxBoxSizer (wxVERTICAL);
 
        wxFont title_font (*wxNORMAL_FONT);
        title_font.SetPointSize (title_font.GetPointSize() + 12);
@@ -47,22 +53,22 @@ AboutDialog::AboutDialog (wxWindow* parent)
        wxFont version_font (*wxNORMAL_FONT);
        version_font.SetWeight (wxFONTWEIGHT_BOLD);
 
-       wxStaticText* t = new wxStaticText (this, wxID_ANY, _("DCP-o-matic"));
+       auto t = new StaticText (this, _("DCP-o-matic"));
        t->SetFont (title_font);
        sizer->Add (t, wxSizerFlags().Centre().Border(wxALL, 16));
 
        wxString s;
        if (strcmp (dcpomatic_git_commit, "release") == 0) {
-               t = new wxStaticText (this, wxID_ANY, std_to_wx (String::compose ("Version %1", dcpomatic_version)));
+               t = new StaticText (this, std_to_wx(String::compose("Version %1", dcpomatic_version)));
        } else {
-               t = new wxStaticText (this, wxID_ANY, std_to_wx (String::compose ("Version %1 git %2", dcpomatic_version, dcpomatic_git_commit)));
+               t = new StaticText (this, std_to_wx(String::compose("Version %1 git %2", dcpomatic_version, dcpomatic_git_commit)));
        }
        t->SetFont (version_font);
        sizer->Add (t, wxSizerFlags().Centre().Border(wxALL, 2));
        sizer->AddSpacer (12);
 
-       t = new wxStaticText (
-               this, wxID_ANY,
+       t = new StaticText (
+               this,
                _("Free, open-source DCP creation from almost anything."),
                wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER
                );
@@ -70,17 +76,17 @@ AboutDialog::AboutDialog (wxWindow* parent)
 
        sizer->Add (t, wxSizerFlags().Centre().Border(wxALL, 8));
 
-       wxHyperlinkCtrl* h = new wxHyperlinkCtrl (
+       auto h = new wxHyperlinkCtrl (
                this, wxID_ANY,
                wxT ("dcpomatic.com"),
-               wxT ("http://dcpomatic.com")
+               wxT ("https://dcpomatic.com")
                );
 
        sizer->Add (h, wxSizerFlags().Centre().Border(wxALL, 8));
 
-       t = new wxStaticText (
-               this, wxID_ANY,
-               _("(C) 2012-2018 Carl Hetherington, Terrence Meiczinger\n Ole Laursen, Brecht Sanders"),
+       t = new StaticText (
+               this,
+               _("(C) 2012-2023 Carl Hetherington, Terrence Meiczinger\n Ole Laursen"),
                wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER
                );
 
@@ -93,20 +99,33 @@ AboutDialog::AboutDialog (wxWindow* parent)
        written_by.Add (wxT ("Terrence Meiczinger"));
        written_by.Add (wxT ("Mart Jansink"));
        written_by.Add (wxT ("Ole Laursen"));
-       written_by.Add (wxT ("Brecht Sanders"));
-       written_by.Add (wxT ("Jianguo Huang"));
        add_section (_("Written by"), written_by);
 
+       wxArrayString with_help_from;
+       with_help_from.Add (wxT ("David Vignoni"));
+       with_help_from.Add (wxT ("Dennis Couzin"));
+       with_help_from.Add (wxT ("Carsten Kurz"));
+       with_help_from.Add (wxT ("Gérald Maruccia"));
+       with_help_from.Add (wxT ("Julian van Mil"));
+       with_help_from.Add (wxT ("Lilian Lefranc"));
+       add_section (_("With help from"), with_help_from);
+
        wxArrayString translated_by;
        translated_by.Add (wxT ("Manuel AC"));
        translated_by.Add (wxT ("Max Aeschlimann"));
+       translated_by.Add (wxT ("Gökhan Aksoy"));
        translated_by.Add (wxT ("Thiago Andre"));
+       translated_by.Add (wxT ("Felice D'Andrea"));
+       translated_by.Add (wxT ("Németh Áron"));
        translated_by.Add (wxT ("Grégoire Ausina"));
        translated_by.Add (wxT ("Tomáš Begeni"));
        translated_by.Add (wxT ("Fabio \"Zak\" Belli"));
        translated_by.Add (wxT ("Cherif Ben Brahim"));
        translated_by.Add (wxT ("Massimiliano Broggi"));
+       translated_by.Add (wxT ("Dan Cohen"));
        translated_by.Add (wxT ("Davide Dall'AraCiao"));
+       translated_by.Add (wxT ("Uwe Dittes"));
+       translated_by.Add (wxT ("Михаил Эпштейн"));
        translated_by.Add (wxT ("William Fanelli"));
        translated_by.Add (wxT ("Max M. Fuhlendorf"));
        translated_by.Add (wxT ("Tomáš Hlaváč"));
@@ -116,40 +135,53 @@ AboutDialog::AboutDialog (wxWindow* parent)
        translated_by.Add (wxT ("Carsten Kurz"));
        translated_by.Add (wxT ("Lilian Lefranc"));
        translated_by.Add (wxT ("Gérald Maruccia"));
+       translated_by.Add (wxT ("Mattias Mattsson"));
        translated_by.Add (wxT ("Mike Mazur"));
        translated_by.Add (wxT ("Rob van Nieuwkerk"));
        translated_by.Add (wxT ("Anders Uhl Pedersen"));
+       translated_by.Add (wxT ("David Perrenoud"));
        translated_by.Add (wxT ("Olivier Perriere"));
        translated_by.Add (wxT ("Markus Raab"));
        translated_by.Add (wxT ("Tiago Casal Ribeiro"));
        translated_by.Add (wxT ("Davide Sanvito"));
        translated_by.Add (wxT ("Marek Skrzelowski"));
+       translated_by.Add (wxT ("Danbo Song"));
+       translated_by.Add (wxT ("Martin Srebotnjak"));
+       translated_by.Add (wxT ("Michał Tomaszewski"));
        translated_by.Add (wxT ("Igor Voytovich"));
        translated_by.Add (wxT ("Rov (若文)"));
        translated_by.Add (wxT ("刘汉源"));
-       add_section (_("Translated by"), translated_by);
+       add_section (_("Translated by"), translated_by);
 
-       wxArrayString with_help_from;
-       with_help_from.Add (wxT ("David Vignoni"));
-       with_help_from.Add (wxT ("Dennis Couzin"));
-       with_help_from.Add (wxT ("Gérald Maruccia"));
-       with_help_from.Add (wxT ("Julian van Mil"));
-       add_section (_("With help from"), with_help_from);
+       wxArrayString patrons;
+       patrons.Add ("Luproduction");
+       patrons.Add ("Lightbender Post");
+       patrons.Add ("Drop-out Cinema");
+       patrons.Add ("Pilotkino LLC");
+       add_section (_("Patrons"), patrons);
+
+       wxArrayString subscribers;
+       #include "subscribers.cc"
+       add_section (_("Subscribers"), subscribers);
 
        wxArrayString supported_by;
        #include "supporters.cc"
-       add_section (_("Supported by"), supported_by);
+       add_section (_("Also supported by"), supported_by);
 
        wxArrayString tested_by;
        tested_by.Add (wxT ("Manuel AC"));
        tested_by.Add (wxT ("Trever Anderson"));
+       tested_by.Add (wxT ("Mohamad W. Ali"));
        tested_by.Add (wxT ("JP Beauviala"));
        tested_by.Add (wxT ("Mike Blakesley"));
        tested_by.Add (wxT ("David Booty"));
+       tested_by.Add (wxT ("Antonio Casado"));
        tested_by.Add (wxT ("Roop Chand"));
        tested_by.Add (wxT ("Daniel Chauvet"));
        tested_by.Add (wxT ("Adam Colt"));
        tested_by.Add (wxT ("John Convertino"));
+       tested_by.Add (wxT ("Daniel Courville"));
+       tested_by.Add (wxT ("Marek Dudzik"));
        tested_by.Add (wxT ("Andreas Eli"));
        tested_by.Add (wxT ("Leo Enticknap"));
        tested_by.Add (wxT ("Jose Angel Velasco Fernandez"));
@@ -159,6 +191,7 @@ AboutDialog::AboutDialog (wxWindow* parent)
        tested_by.Add (wxT ("Steve Guttag"));
        tested_by.Add (wxT ("Patrick Haderer"));
        tested_by.Add (wxT ("Bill Hamell"));
+       tested_by.Add (wxT ("Groet Han"));
        tested_by.Add (wxT ("Jonathan Jensen"));
        tested_by.Add (wxT ("Thierry Journet"));
        tested_by.Add (wxT ("Markus Kalb"));
@@ -170,7 +203,9 @@ AboutDialog::AboutDialog (wxWindow* parent)
        tested_by.Add (wxT ("Denzil Kriekenbeek"));
        tested_by.Add (wxT ("Carsten Kurz"));
        tested_by.Add (wxT ("Bill Lam"));
+       tested_by.Add (wxT ("David Lankes"));
        tested_by.Add (wxT ("Lilian Lefranc"));
+       tested_by.Add (wxT ("Sebastian Leitner"));
        tested_by.Add (wxT ("Olivier Lemaire"));
        tested_by.Add (wxT ("Gavin Lewarne"));
        tested_by.Add (wxT ("Gérald Maruccia"));
@@ -198,7 +233,7 @@ AboutDialog::AboutDialog (wxWindow* parent)
        tested_by.Add (wxT ("Wolfgang Woehl"));
        add_section (_("Tested by"), tested_by);
 
-       sizer->Add (_notebook, wxSizerFlags().Centre().Border(wxALL, 16).Expand());
+       sizer->Add (_notebook, wxSizerFlags().Centre().Border(wxALL, 16));
 
        overall_sizer->Add (sizer);
 
@@ -217,14 +252,14 @@ AboutDialog::AboutDialog (wxWindow* parent)
 void
 AboutDialog::add_section (wxString name, wxArrayString credits)
 {
-       static bool first = true;
+       static auto first = true;
        int const N = 4;
 
-       wxScrolledWindow* panel = new wxScrolledWindow (_notebook);
+       auto panel = new wxScrolledWindow (_notebook);
        panel->SetMaxSize (wxSize (-1, 380));
        panel->EnableScrolling (false, true);
        panel->SetScrollRate (0, 32);
-       wxSizer* overall_sizer = new wxBoxSizer (wxHORIZONTAL);
+       auto overall_sizer = new wxBoxSizer (wxHORIZONTAL);
 
        vector<wxSizer*> sizers;