X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fabout_dialog.cc;h=e80a92d247023c602e8bc9ff1fc4916e9e9caac2;hb=aa8bb6ae4fe4f3bb113a5d304429937f25e30191;hp=dfe907d40236d0b9373969f7c104fd36834e1834;hpb=a76f484d1e5c6c44c8d2e4938340e8559b2ef65a;p=dcpomatic.git diff --git a/src/wx/about_dialog.cc b/src/wx/about_dialog.cc index dfe907d40..e80a92d24 100644 --- a/src/wx/about_dialog.cc +++ b/src/wx/about_dialog.cc @@ -1,41 +1,48 @@ /* - Copyright (C) 2013-2015 Carl Hetherington + Copyright (C) 2013-2021 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ + /** @file src/wx/about_dialog.cc * @brief The "about DCP-o-matic" dialogue box. */ -#include -#include -#include "lib/version.h" -#include "lib/compose.hpp" #include "about_dialog.h" +#include "static_text.h" #include "wx_util.h" +#include "lib/compose.hpp" +#include "lib/version.h" +#include +LIBDCP_DISABLE_WARNINGS +#include +#include +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); title_font.SetWeight (wxFONTWEIGHT_BOLD); @@ -45,44 +52,44 @@ 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, - _("Free, open-source DCP generation from almost anything."), + t = new StaticText ( + this, + _("Free, open-source DCP creation from almost anything."), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER ); t->SetFont (subtitle_font); - + 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-2015 Carl Hetherington, Terrence Meiczinger\n Ole Laursen, Brecht Sanders"), + t = new StaticText ( + this, + _("(C) 2012-2022 Carl Hetherington, Terrence Meiczinger\n Ole Laursen"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER ); - + sizer->Add (t, wxSizerFlags().Centre().Border(wxLEFT | wxRIGHT, 16)); _notebook = new wxNotebook (this, wxID_ANY); @@ -90,112 +97,97 @@ AboutDialog::AboutDialog (wxWindow* parent) wxArrayString written_by; written_by.Add (wxT ("Carl Hetherington")); written_by.Add (wxT ("Terrence Meiczinger")); + written_by.Add (wxT ("Mart Jansink")); written_by.Add (wxT ("Ole Laursen")); - written_by.Add (wxT ("Brecht Sanders")); 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 ("Thiago Andre")); + translated_by.Add (wxT ("Felice D'Andrea")); + 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áč")); translated_by.Add (wxT ("Thierry Journet")); translated_by.Add (wxT ("Adam Klotblixt")); + translated_by.Add (wxT ("Theo Kooijmans")); + 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 ("Olivier Perriere")); translated_by.Add (wxT ("Markus Raab")); - translated_by.Add (wxT ("Theo Kooijmans")); - translated_by.Add (wxT ("Max Aeschlimann")); - translated_by.Add (wxT ("Carsten Kurz")); - translated_by.Add (wxT ("Grégoire Ausina")); - translated_by.Add (wxT ("Cherif Ben Brahim")); - add_section (_("Translated by"), translated_by); + translated_by.Add (wxT ("Tiago Casal Ribeiro")); + translated_by.Add (wxT ("Davide Sanvito")); + translated_by.Add (wxT ("Marek Skrzelowski")); + translated_by.Add (wxT ("Michał Tomaszewski")); + translated_by.Add (wxT ("Igor Voytovich")); + translated_by.Add (wxT ("Rov (若文)")); + translated_by.Add (wxT ("刘汉源")); + translated_by.Add (wxT ("Gökhan Aksoy")); + add_section (_("Translated by"), translated_by); - wxArrayString artwork_by; - artwork_by.Add (wxT ("David Vignoni")); - add_section (_("Artwork by"), artwork_by); + 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; - supported_by.Add (wxT ("Manual AC")); - supported_by.Add (wxT ("Kambiz Afshar")); - supported_by.Add (wxT ("Alex Asp")); - supported_by.Add (wxT ("Eric Audurier")); - supported_by.Add (wxT ("Louis Belloisy")); - supported_by.Add (wxT ("Mike Blakesley")); - supported_by.Add (wxT ("Jeff Boot")); - supported_by.Add (wxT ("Kieran Carroll")); - supported_by.Add (wxT ("Matt Carter")); - supported_by.Add (wxT ("Frank Cianciolo")); - supported_by.Add (wxT ("Cinema Clarici")); - supported_by.Add (wxT ("Adam Colt")); - supported_by.Add (wxT ("Matthias Damm")); - supported_by.Add (wxT ("Alexey Derevyanko")); - supported_by.Add (wxT ("Unwana Essien")); - supported_by.Add (wxT ("Maxime Estoppey")); - supported_by.Add (wxT ("Andres Fink")); - supported_by.Add (wxT ("Evan Freeze")); - supported_by.Add (wxT ("Silvio Giuliano")); - supported_by.Add (wxT ("Alan Gouger")); - supported_by.Add (wxT ("Christopher Gray")); - supported_by.Add (wxT ("Flor Guillaume")); - supported_by.Add (wxT ("Patrick Haderer")); - supported_by.Add (wxT ("Antonio Ruiz Hernandez")); - supported_by.Add (wxT ("Jonathan Jensen")); - supported_by.Add (wxT ("Chris Kay")); - supported_by.Add (wxT ("Adam Klotblixt")); - supported_by.Add (wxT ("Filip Kovcin")); - supported_by.Add (wxT ("Cihan Kulaber")); - supported_by.Add (wxT ("Carsten Kurz")); - supported_by.Add (wxT ("Lilian Lefranc")); - supported_by.Add (wxT ("Sean Leigh")); - supported_by.Add (wxT ("Olivier Lemaire")); - supported_by.Add (wxT ("Gavin Lewarne")); - supported_by.Add (wxT ("Theo Lipfert")); - supported_by.Add (wxT ("Mattias Mattsson")); - supported_by.Add (wxT ("Kjarten Michaelsen")); - supported_by.Add (wxT ("Aldo Midali")); - supported_by.Add (wxT ("Sylvain Mielle")); - supported_by.Add (wxT ("Lindsay Morris")); - supported_by.Add (wxT ("Гуляев Михаил")); - supported_by.Add (wxT ("David Nedrow")); - supported_by.Add (wxT ("Tim O'Brien")); - supported_by.Add (wxT ("Jerome Cohen Olivar")); - supported_by.Add (wxT ("Rui Pereira")); - supported_by.Add (wxT ("Ivan Pullman")); - supported_by.Add (wxT ("Mark Rolfe")); - supported_by.Add (wxT ("David Rozenthal")); - supported_by.Add (wxT ("Andrä Steiner")); - supported_by.Add (wxT ("Jussi Siponen")); - supported_by.Add (wxT ("Lasse Salling")); - supported_by.Add (wxT ("Mike Stiebing")); - supported_by.Add (wxT ("Randy Stankey")); - supported_by.Add (wxT ("Bruce Taylor")); - supported_by.Add (wxT ("Richard Turner")); - supported_by.Add (wxT ("Roland Wirtz")); - supported_by.Add (wxT ("Wolfgang Woehl")); - supported_by.Add (wxT ("Wolfram Weber")); - supported_by.Add (wxT ("Johannes Wilbrand")); - supported_by.Add (wxT ("Frank de Wulf")); - supported_by.Add (wxT ("Pavel Zhdanko")); - supported_by.Add (wxT ("Daniel Židek")); - add_section (_("Supported by"), supported_by); + #include "supporters.cc" + 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 ("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 ("Andreas Eli")); + tested_by.Add (wxT ("Leo Enticknap")); + tested_by.Add (wxT ("Jose Angel Velasco Fernandez")); tested_by.Add (wxT ("Maurizio Giampà")); tested_by.Add (wxT ("Luke Granger-Brown")); tested_by.Add (wxT ("Sumit Guha")); 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")); tested_by.Add (wxT ("Ada de Kamper")); tested_by.Add (wxT ("Stefan Karner")); tested_by.Add (wxT ("Adam Keay")); @@ -204,28 +196,37 @@ 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 ("Mattias Mattsson")); tested_by.Add (wxT ("Gérald Maruccia")); + tested_by.Add (wxT ("George Mazarakis")); + tested_by.Add (wxT ("Mattias Mattsson")); tested_by.Add (wxT ("Will Meadows")); tested_by.Add (wxT ("Brad Miller")); + tested_by.Add (wxT ("Ash Mitchell")); + tested_by.Add (wxT ("Rob van Nieuwkerk")); tested_by.Add (wxT ("Anders Nordentoft-Madsen")); tested_by.Add (wxT ("Mauro Ottonello")); tested_by.Add (wxT ("Peter Puchner")); tested_by.Add (wxT ("Markus Raab")); + tested_by.Add (wxT ("Michael Reckert")); tested_by.Add (wxT ("Greg Rooke")); tested_by.Add (wxT ("Elad Saad")); tested_by.Add (wxT ("Karim Senoucci")); + tested_by.Add (wxT ("Hordur Valgardsson")); + tested_by.Add (wxT ("Xenophon the Vampire")); tested_by.Add (wxT ("Simon Vannarath")); + tested_by.Add (wxT ("Igor Voytovich")); tested_by.Add (wxT ("Andrew Walls")); tested_by.Add (wxT ("Andreas Weiss")); tested_by.Add (wxT ("Paul Willmott")); 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); @@ -233,7 +234,7 @@ AboutDialog::AboutDialog (wxWindow* parent) if (buttons) { overall_sizer->Add (buttons, 1, wxEXPAND | wxALL, 4); } - + SetSizerAndFit (overall_sizer); } @@ -244,14 +245,17 @@ AboutDialog::AboutDialog (wxWindow* parent) void AboutDialog::add_section (wxString name, wxArrayString credits) { - static bool first = true; - int const N = 3; + static auto first = true; + int const N = 4; - wxPanel* panel = new wxPanel (_notebook, wxID_ANY); - wxSizer* overall_sizer = new wxBoxSizer (wxHORIZONTAL); + auto panel = new wxScrolledWindow (_notebook); + panel->SetMaxSize (wxSize (-1, 380)); + panel->EnableScrolling (false, true); + panel->SetScrollRate (0, 32); + auto overall_sizer = new wxBoxSizer (wxHORIZONTAL); vector sizers; - + for (int i = 0; i < N; ++i) { sizers.push_back (new wxBoxSizer (wxVERTICAL)); overall_sizer->Add (sizers.back (), 1, wxEXPAND | wxALL, 6);