KiCad PCB EDA Suite
AboutDialog_main.cpp File Reference
#include <boost/version.hpp>
#include <wx/aboutdlg.h>
#include <wx/arrimpl.cpp>
#include <wx/textctrl.h>
#include <wx/utils.h>
#include <bitmaps.h>
#include <build_version.h>
#include <common.h>
#include <kiplatform/app.h>
#include <pgm_base.h>
#include <eda_base_frame.h>
#include "aboutinfo.h"
#include "dialog_about.h"

Go to the source code of this file.

Macros

#define LEAD_DEV   _( "Lead Development Team" )
 
#define FORMER_DEV   _( "Lead Development Alumni" )
 
#define CONTRIB_DEV   _( "Additional Contributions By")
 
#define LIBRARIANS   _( "KiCad Librarian Team" )
 
#define MODELS_3D_CONTRIBUTION   _( "3D models by" )
 
#define SYMBOL_LIB_CONTRIBUTION   _( "Symbols by" )
 
#define FOOTPRINT_LIB_CONTRIBUTION   _( "Footprints by" )
 
#define ICON_CONTRIBUTION   _( "Icons by" )
 

Functions

static wxString HtmlHyperlink (const wxString &aUrl, const wxString &aDescription)
 Helper functions. More...
 
static wxString HtmlNewline (const unsigned int aCount)
 Create an HTML newline character sequence of aCount. More...
 
static void buildKicadAboutBanner (EDA_BASE_FRAME *aParent, ABOUT_APP_INFO &aInfo)
 Initializes the ABOUT_APP_INFO object with application specific information. More...
 
void ShowAboutDialog (EDA_BASE_FRAME *aParent)
 

Macro Definition Documentation

◆ CONTRIB_DEV

#define CONTRIB_DEV   _( "Additional Contributions By")

◆ FOOTPRINT_LIB_CONTRIBUTION

#define FOOTPRINT_LIB_CONTRIBUTION   _( "Footprints by" )

◆ FORMER_DEV

#define FORMER_DEV   _( "Lead Development Alumni" )

◆ ICON_CONTRIBUTION

#define ICON_CONTRIBUTION   _( "Icons by" )

◆ LEAD_DEV

#define LEAD_DEV   _( "Lead Development Team" )

◆ LIBRARIANS

#define LIBRARIANS   _( "KiCad Librarian Team" )

◆ MODELS_3D_CONTRIBUTION

#define MODELS_3D_CONTRIBUTION   _( "3D models by" )

◆ SYMBOL_LIB_CONTRIBUTION

#define SYMBOL_LIB_CONTRIBUTION   _( "Symbols by" )

Function Documentation

◆ buildKicadAboutBanner()

static void buildKicadAboutBanner ( EDA_BASE_FRAME aParent,
ABOUT_APP_INFO aInfo 
)
static

Initializes the ABOUT_APP_INFO object with application specific information.

This is the object which holds all information about the application

Definition at line 58 of file AboutDialog_main.cpp.

59{
60 // Set application specific icon
61 aInfo.SetAppIcon( aParent->GetIcon() );
62
63 /* Set title */
64 aInfo.SetAppName( Pgm().App().GetAppName() );
65
66 /* Copyright information */
67 aInfo.SetCopyright( "(C) 1992-2022 KiCad Developers Team" );
68
69 /* KiCad build version */
70 wxString version;
71 version << ( KIPLATFORM::APP::IsOperatingSystemUnsupported() ? "(UNSUPPORTED)"
72 : GetBuildVersion() )
73#ifdef DEBUG
74 << ", debug"
75#else
76 << ", release"
77#endif
78 << " build";
79
80 aInfo.SetBuildVersion( version );
81 aInfo.SetBuildDate( GetBuildDate() );
82
83 /* wxWidgets version */
84 wxString libVersion;
85 libVersion << wxGetLibraryVersionInfo().GetVersionString();
86
87 /* Unicode or ANSI version */
88#if wxUSE_UNICODE
89 libVersion << wxT( " Unicode " );
90#else
91 libVersion << wxT( " ANSI " );
92#endif
93
94 // Just in case someone builds KiCad with the platform native of Boost instead of
95 // the version included with the KiCad source.
96 libVersion << "and Boost " << ( BOOST_VERSION / 100000 ) << "."
97 << ( BOOST_VERSION / 100 % 1000 ) << "." << ( BOOST_VERSION % 100 )
98 << "\n";
99
100 // Operating System Information
101
102 wxPlatformInfo platformInfo;
103
104 libVersion << "Platform: " << wxGetOsDescription() << ", "
106
107 aInfo.SetLibVersion( libVersion );
108
109 // info/description part HTML formatted:
110 wxString description;
111
112 /* short description */
113 description << "<p>";
114 description << "<b><u>"
115 << _( "Description" )
116 << "</u></b>"; // bold & underlined font for caption
117
118 description << "<p>"
119 << _( "The KiCad EDA Suite is a set of open source applications for the "
120 "creation of electronic schematics and printed circuit boards." )
121 << "</p>";
122
123 description << "</p>";
124
125 /* websites */
126 description << "<p><b><u>"
127 << _( "KiCad on the web" )
128 << "</u></b>"; // bold & underlined font for caption
129
130 // bullet-ed list with some http links
131 description << "<ul>";
132 description << "<li>"
133 << _( "The official KiCad website - " )
134 << HtmlHyperlink( "http://www.kicad.org" )
135 << "</li>";
136 description << "<li>"
137 << _( "Developer website - " )
138 << HtmlHyperlink( "https://go.kicad.org/dev" )
139 << "</li>";
140
141 description << "<li>"
142 << _("Official KiCad library repositories - " )
143 << HtmlHyperlink( "https://go.kicad.org/libraries" )
144 << "</li>";
145
146 description << "</ul></p>";
147
148 description << "<p><b><u>"
149 << _( "Bug tracker" )
150 << "</u></b>"; // bold & underlined font caption
151
152 // bullet-ed list with some http links
153 description << "<ul>";
154 description << "<li>"
155 << _( "Report or examine bugs - " )
156 << HtmlHyperlink( "https://go.kicad.org/bugs" )
157 << "</li>";
158 description << "</ul></p>";
159
160 description << "<p><b><u>"
161 << _( "KiCad users group and community" )
162 << "</u></b>"; // bold & underlined font caption
163
164 description << "<ul>";
165 description << "<li>"
166 << _( "KiCad forum - " )
167 << HtmlHyperlink( "https://go.kicad.org/forum" )
168 << "</li>";
169
170 description << "</ul></p>";
171
172 aInfo.SetDescription( description );
173
174
175 // License information also HTML formatted:
176 wxString license;
177 license
178 << "<div align='center'>"
179 << HtmlNewline( 4 )
180 << _( "The complete KiCad EDA Suite is released under the" ) << HtmlNewline( 2 )
181 << HtmlHyperlink( "http://www.gnu.org/licenses",
182 _( "GNU General Public License (GPL) version 3 or any later version" ) )
183 << "</div>";
184
185 aInfo.SetLicense( license );
186
187
188 /* A contributor consists of the following information:
189 * Mandatory:
190 * - Name
191 * Optional:
192 * - EMail address
193 * - Category
194 * - Category specific icon
195 *
196 * All contributors of the same category will be enumerated under this category
197 * which should be represented by the same icon.
198 */
199
200 // The core developers
201#define LEAD_DEV _( "Lead Development Team" )
202#define FORMER_DEV _( "Lead Development Alumni" )
203#define CONTRIB_DEV _( "Additional Contributions By")
204 aInfo.AddDeveloper( new CONTRIBUTOR( "Jean-Pierre Charras", LEAD_DEV, nullptr ) );
205 aInfo.AddDeveloper( new CONTRIBUTOR( "Wayne Stambaugh", LEAD_DEV, nullptr ) );
206
207 // Alphabetical after the first two
208 aInfo.AddDeveloper( new CONTRIBUTOR( "Jon Evans", LEAD_DEV, nullptr ) );
209 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Roberto Fernandez Bautista" ), LEAD_DEV, nullptr ) );
210 aInfo.AddDeveloper( new CONTRIBUTOR( "Seth Hillbrand", LEAD_DEV, nullptr ) );
211 aInfo.AddDeveloper( new CONTRIBUTOR( "Ian McInerney", LEAD_DEV, nullptr ) );
212 aInfo.AddDeveloper( new CONTRIBUTOR( "Mark Roszko", LEAD_DEV, nullptr ) );
213 aInfo.AddDeveloper( new CONTRIBUTOR( "Thomas Pointhuber", LEAD_DEV, nullptr ) );
214 aInfo.AddDeveloper( new CONTRIBUTOR( "Mikolaj Wielgus", LEAD_DEV, nullptr ) );
215 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mike Williams" ), LEAD_DEV, nullptr ) );
216 aInfo.AddDeveloper( new CONTRIBUTOR( "Tomasz Wlostowski", LEAD_DEV, nullptr ) );
217 aInfo.AddDeveloper( new CONTRIBUTOR( "Jeff Young", LEAD_DEV, nullptr ) );
218
219 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "John Beard" ), FORMER_DEV, nullptr ) );
220 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dick Hollenbeck" ), FORMER_DEV, nullptr ) );
221 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexis Lockwood" ), FORMER_DEV, nullptr ) );
222 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Brian Sidebotham" ), FORMER_DEV, nullptr ) );
223 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Orson (Maciej Sumiński)" ), FORMER_DEV, nullptr ) );
224
225 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin Aberg" ), CONTRIB_DEV, nullptr ) );
226 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Rohan Agrawal" ), CONTRIB_DEV, nullptr ) );
227 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Johannes Agricola" ), CONTRIB_DEV, nullptr ) );
228 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Nabeel Ahmad" ), CONTRIB_DEV, nullptr ) );
229 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Werner Almesberger" ), CONTRIB_DEV, nullptr ) );
230 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Shawn Anastasio" ), CONTRIB_DEV, nullptr ) );
231 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Collin Anderson" ), CONTRIB_DEV, nullptr ) );
232 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Tom Andrews" ), CONTRIB_DEV, nullptr ) );
233 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mikael Arguedas" ), CONTRIB_DEV, nullptr ) );
234 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lachlan Audas" ), CONTRIB_DEV, nullptr ) );
235 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jean-Noel Avila" ), CONTRIB_DEV, nullptr ) );
236
237 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Pascal Baerten" ), CONTRIB_DEV, nullptr ) );
238 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Konstantin Baranovskiy" ), CONTRIB_DEV, nullptr ) );
239 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Roman Bashkov" ), CONTRIB_DEV, nullptr ) );
240 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michael Beardsworth" ), CONTRIB_DEV, nullptr ) );
241 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Matthew Beckler" ), CONTRIB_DEV, nullptr ) );
242 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Konrad Beckmann" ), CONTRIB_DEV, nullptr ) );
243 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "David Beinder" ), CONTRIB_DEV, nullptr ) );
244 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Frank Bennett" ), CONTRIB_DEV, nullptr ) );
245 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Roman Beranek" ), CONTRIB_DEV, nullptr ) );
246 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Gustav Bergquist" ), CONTRIB_DEV, nullptr ) );
247 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Cirilo Bernardo" ), CONTRIB_DEV, nullptr ) );
248 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Joël Bertrand" ), CONTRIB_DEV, nullptr ) );
249 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andreas Beutling" ), CONTRIB_DEV, nullptr ) );
250 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Brian F. G. Bidulock" ), CONTRIB_DEV, nullptr ) );
251 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Anton Blanchard" ), CONTRIB_DEV, nullptr ) );
252 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Blair Bonnett" ), CONTRIB_DEV, nullptr ) );
253 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Carlo Bramini" ), CONTRIB_DEV, nullptr ) );
254 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Stefan Brüns" ), CONTRIB_DEV, nullptr ) );
255 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andreas Buhr" ), CONTRIB_DEV, nullptr ) );
256 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ryan Bunch" ), CONTRIB_DEV, nullptr ) );
257 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Emery Burhan" ), CONTRIB_DEV, nullptr ) );
258
259 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Phinitnan Chanasabaeng" ), CONTRIB_DEV, nullptr ) );
260 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Shivpratap Chauhan" ), CONTRIB_DEV, nullptr ) );
261 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kevin Cozens" ), CONTRIB_DEV, nullptr ) );
262 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Joseph Y. Chen" ), CONTRIB_DEV, nullptr ) );
263 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexey Chernov" ), CONTRIB_DEV, nullptr ) );
264 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Ciampa" ), CONTRIB_DEV, nullptr ) );
265 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marcus Comstedt" ), CONTRIB_DEV, nullptr ) );
266 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Diogo Condeco" ), CONTRIB_DEV, nullptr ) );
267 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Colin Cooper" ), CONTRIB_DEV, nullptr ) );
268 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Fabien Corona" ), CONTRIB_DEV, nullptr ) );
269 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Garth Corral" ), CONTRIB_DEV, nullptr ) );
270 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kevin Cozens" ), CONTRIB_DEV, nullptr ) );
271 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dan Cross" ), CONTRIB_DEV, nullptr ) );
272
273 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonas Diemer" ), CONTRIB_DEV, nullptr ) );
274 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew D'Addesio" ), CONTRIB_DEV, nullptr ) );
275 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin d'Allens" ), CONTRIB_DEV, nullptr ) );
276 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Camille Delbegue" ), CONTRIB_DEV, nullptr ) );
277 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Albin Dennevi" ), CONTRIB_DEV, nullptr ) );
278 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ruben De Smet" ), CONTRIB_DEV, nullptr ) );
279 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ben Dooks" ), CONTRIB_DEV, nullptr ) );
280 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew Downing" ), CONTRIB_DEV, nullptr ) );
281 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jan Dubiec" ), CONTRIB_DEV, nullptr ) );
282
283 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Gerd Egidy" ), CONTRIB_DEV, nullptr ) );
284 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jean Philippe Eimer" ), CONTRIB_DEV, nullptr ) );
285 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ben Ellis" ), CONTRIB_DEV, nullptr ) );
286 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Oleg Endo" ), CONTRIB_DEV, nullptr ) );
287 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Damien Espitallier" ), CONTRIB_DEV, nullptr ) );
288 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Paul Ewing" ), CONTRIB_DEV, nullptr ) );
289
290 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrey Fedorushkov" ), CONTRIB_DEV, nullptr ) );
291 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Julian Fellinger" ), CONTRIB_DEV, nullptr ) );
292 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Joe Ferner" ), CONTRIB_DEV, nullptr ) );
293 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Thomas Figueroa" ), CONTRIB_DEV, nullptr ) );
294 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Drew Fustini" ), CONTRIB_DEV, nullptr ) );
295
296 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ronnie Gaensli" ), CONTRIB_DEV, nullptr ) );
297 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Christian Gagneraud" ), CONTRIB_DEV, nullptr ) );
298 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ben Gamari" ), CONTRIB_DEV, nullptr ) );
299 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ashutosh Gangwar" ), CONTRIB_DEV, nullptr ) );
300 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alessandro Gatti" ), CONTRIB_DEV, nullptr ) );
301 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hal Gentz" ), CONTRIB_DEV, nullptr ) );
302 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michael Geselbracht" ), CONTRIB_DEV, nullptr ) );
303 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Giulio Girardi" ), CONTRIB_DEV, nullptr ) );
304 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jeff Glass" ), CONTRIB_DEV, nullptr ) );
305 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Golubev" ), CONTRIB_DEV, nullptr ) );
306 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Angus Gratton" ), CONTRIB_DEV, nullptr ) );
307 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Element Green" ), CONTRIB_DEV, nullptr ) );
308 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mathias Grimmberger" ), CONTRIB_DEV, nullptr ) );
309 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Johan Grip" ), CONTRIB_DEV, nullptr ) );
310 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hildo Guillardi Júnior" ), CONTRIB_DEV, nullptr ) );
311 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Niki Guldbrand" ), CONTRIB_DEV, nullptr ) );
312 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Guy" ), CONTRIB_DEV, nullptr ) );
313 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Zoltan Gyarmati" ), CONTRIB_DEV, nullptr ) );
314
315 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonathan Haas" ), CONTRIB_DEV, nullptr ) );
316 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mark Hämmerling" ), CONTRIB_DEV, nullptr ) );
317 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Stefan Hamminga" ), CONTRIB_DEV, nullptr ) );
318 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ben Harris" ), CONTRIB_DEV, nullptr ) );
319 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lukas F. Hartmann" ), CONTRIB_DEV, nullptr ) );
320 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jakob Haufe" ), CONTRIB_DEV, nullptr ) );
321 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Aylons Hazzud" ), CONTRIB_DEV, nullptr ) );
322 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Stefan Helmert" ), CONTRIB_DEV, nullptr ) );
323 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hartmut Henkel" ), CONTRIB_DEV, nullptr ) );
324 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Brian Henning" ), CONTRIB_DEV, nullptr ) );
325 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Paulo Henrique Silva" ), CONTRIB_DEV, nullptr ) );
326 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hans Henry von Tresckow" ), CONTRIB_DEV, nullptr ) );
327 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Diego Herranz" ), CONTRIB_DEV, nullptr ) );
328 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Hess" ), CONTRIB_DEV, nullptr ) );
329 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mario Hros" ), CONTRIB_DEV, nullptr ) );
330 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Matt Huszagh" ), CONTRIB_DEV, nullptr ) );
331 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Torsten Hüter" ), CONTRIB_DEV, nullptr ) );
332
333 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "José Ignacio Romero" ), CONTRIB_DEV, nullptr ) );
334 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Inacio" ), CONTRIB_DEV, nullptr ) );
335 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kinichiro Inoguchi" ), CONTRIB_DEV, nullptr ) );
336 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Fabián Inostroza" ), CONTRIB_DEV, nullptr ) );
337 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Vlad Ivanov" ), CONTRIB_DEV, nullptr ) );
338
339 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "James Jackson" ), CONTRIB_DEV, nullptr ) );
340 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jerry Jacobs" ), CONTRIB_DEV, nullptr ) );
341 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Christian Jacobsen" ), CONTRIB_DEV, nullptr ) );
342 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michal Jahelka" ), CONTRIB_DEV, nullptr ) );
343 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin Janitschke" ), CONTRIB_DEV, nullptr ) );
344 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonathan Jara-Almonte" ), CONTRIB_DEV, nullptr ) );
345 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Gilbert J.M. Forkel" ), CONTRIB_DEV, nullptr ) );
346 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "José Jorge Enríquez" ), CONTRIB_DEV, nullptr ) );
347 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Franck Jullien" ), CONTRIB_DEV, nullptr ) );
348
349 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Eeli Kaikkonen" ), CONTRIB_DEV, nullptr ) );
350 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lajos Kamocsay" ), CONTRIB_DEV, nullptr ) );
351 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Povilas Kanapickas" ), CONTRIB_DEV, nullptr ) );
352 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mikhail Karpenko" ), CONTRIB_DEV, nullptr ) );
353 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kerusey Karyu" ), CONTRIB_DEV, nullptr ) );
354 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michael Kavanagh" ), CONTRIB_DEV, nullptr ) );
355 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Graham Keeth" ), CONTRIB_DEV, nullptr ) );
356 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Yury Khalyavin" ), CONTRIB_DEV, nullptr ) );
357 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Eldar Khayrullin" ), CONTRIB_DEV, nullptr ) );
358 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ingo Kletti" ), CONTRIB_DEV, nullptr ) );
359 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Sylwester Kocjan" ), CONTRIB_DEV, nullptr ) );
360 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Clemens Koller" ), CONTRIB_DEV, nullptr ) );
361 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Asuki Kono" ), CONTRIB_DEV, nullptr ) );
362 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jakub Kozdon" ), CONTRIB_DEV, nullptr ) );
363 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hajo Nils Krabbenhöft" ), CONTRIB_DEV, nullptr ) );
364 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Kueppers" ), CONTRIB_DEV, nullptr ) );
365 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martijn Kuipers" ), CONTRIB_DEV, nullptr ) );
366
367 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Robbert Lagerweij" ), CONTRIB_DEV, nullptr ) );
368 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dimitris Lampridis" ), CONTRIB_DEV, nullptr ) );
369 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kevin Lannen" ), CONTRIB_DEV, nullptr ) );
370 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mika Laitio" ), CONTRIB_DEV, nullptr ) );
371 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Floris Lambrechts" ), CONTRIB_DEV, nullptr ) );
372 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "lê văn lập" ), CONTRIB_DEV, nullptr ) );
373 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Anton Lazarev" ), CONTRIB_DEV, nullptr ) );
374 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ludovic Léau-mercier" ), CONTRIB_DEV, nullptr ) );
375 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Paul LeoNerd Evens" ), CONTRIB_DEV, nullptr ) );
376 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonatan Liljedahl" ), CONTRIB_DEV, nullptr ) );
377 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Lunev" ), CONTRIB_DEV, nullptr ) );
378 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew Lutsenko" ), CONTRIB_DEV, nullptr ) );
379 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mario Luzeiro" ), CONTRIB_DEV, nullptr ) );
380
381 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Johannes Maibaum" ), CONTRIB_DEV, nullptr ) );
382 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mateusz Majchrzycki" ), CONTRIB_DEV, nullptr ) );
383 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Daniel Majewski" ), CONTRIB_DEV, nullptr ) );
384 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Rachel Mant" ), CONTRIB_DEV, nullptr ) );
385 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lorenzo Marcantonio" ), CONTRIB_DEV, nullptr ) );
386 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Mattila" ), CONTRIB_DEV, nullptr ) );
387 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Maui" ), CONTRIB_DEV, nullptr ) );
388 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kirill Mavreshko" ), CONTRIB_DEV, nullptr ) );
389 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Miles McCoo" ), CONTRIB_DEV, nullptr ) );
390 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Charles McDowell" ), CONTRIB_DEV, nullptr ) );
391 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Moses McKnight" ), CONTRIB_DEV, nullptr ) );
392 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin McNamara" ), CONTRIB_DEV, nullptr ) );
393 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Cameron McQuinn" ), CONTRIB_DEV, nullptr ) );
394 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ievgenii Meshcheriakov" ), CONTRIB_DEV, nullptr ) );
395 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ashley Mills" ), CONTRIB_DEV, nullptr ) );
396 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Christoph Moench-Tegeder" ), CONTRIB_DEV, nullptr ) );
397 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Peter Montgomery" ), CONTRIB_DEV, nullptr ) );
398 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alejandro García Montoro" ), CONTRIB_DEV, nullptr ) );
399 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Felix Morgner" ), CONTRIB_DEV, nullptr ) );
400 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jan Mrázek" ), CONTRIB_DEV, nullptr ) );
401
402 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michael Narigon" ), CONTRIB_DEV, nullptr ) );
403 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jon Neal" ), CONTRIB_DEV, nullptr ) );
404 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Bastian Neumann" ), CONTRIB_DEV, nullptr ) );
405 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kristian Nielsen" ), CONTRIB_DEV, nullptr ) );
406 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Érico Nogueira" ), CONTRIB_DEV, nullptr ) );
407 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Allan Nordhøy" ), CONTRIB_DEV, nullptr ) );
408 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Henrik Nyberg" ), CONTRIB_DEV, nullptr ) );
409
410 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kristoffer Ödmark" ), CONTRIB_DEV, nullptr ) );
411 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Russell Oliver" ), CONTRIB_DEV, nullptr ) );
412 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jason Oster" ), CONTRIB_DEV, nullptr ) );
413
414 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "luz paz" ), CONTRIB_DEV, nullptr ) );
415 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Miguel Angel Ajo Pelayo" ), CONTRIB_DEV, nullptr ) );
416 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Patrick Pereira" ), CONTRIB_DEV, nullptr ) );
417 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jacobo Aragunde Perez" ), CONTRIB_DEV, nullptr ) );
418 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Matthew Petroff" ), CONTRIB_DEV, nullptr ) );
419 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Johannes Pfister" ), CONTRIB_DEV, nullptr ) );
420 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Christian Pfluger" ), CONTRIB_DEV, nullptr ) );
421 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Brian Piccioni" ), CONTRIB_DEV, nullptr ) );
422 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Nicolas Planel" ), CONTRIB_DEV, nullptr ) );
423 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Carl Poirier" ), CONTRIB_DEV, nullptr ) );
424 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Reece Pollack" ), CONTRIB_DEV, nullptr ) );
425 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alain Portal" ), CONTRIB_DEV, nullptr ) );
426 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrei Pozolotin" ), CONTRIB_DEV, nullptr ) );
427 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Antia Puentes" ), CONTRIB_DEV, nullptr ) );
428 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Heikki Pulkkinen" ), CONTRIB_DEV, nullptr ) );
429
430 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Morgan Quigley" ), CONTRIB_DEV, nullptr ) );
431
432 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Barabas Raffai" ), CONTRIB_DEV, nullptr ) );
433 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Urja Rannikko" ), CONTRIB_DEV, nullptr ) );
434 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Joshua Redstone" ), CONTRIB_DEV, nullptr ) );
435 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michele Renda" ), CONTRIB_DEV, nullptr ) );
436 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jean-Samuel Reynaud" ), CONTRIB_DEV, nullptr ) );
437 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dmitry Rezvanov" ), CONTRIB_DEV, nullptr ) );
438 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Richter" ), CONTRIB_DEV, nullptr ) );
439 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Christoph Riehl" ), CONTRIB_DEV, nullptr ) );
440 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Thiadmer Riemersma" ), CONTRIB_DEV, nullptr ) );
441 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Gregor Riepl" ), CONTRIB_DEV, nullptr ) );
442 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "RigoLigoRLC" ), CONTRIB_DEV, nullptr ) );
443 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ola Rinta-Koski" ), CONTRIB_DEV, nullptr ) );
444 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lubomir Rintel" ), CONTRIB_DEV, nullptr ) );
445 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Érico Rolim" ), CONTRIB_DEV, nullptr ) );
446 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marcus A. Romer" ), CONTRIB_DEV, nullptr ) );
447 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Heiko Rosemann" ), CONTRIB_DEV, nullptr ) );
448 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Fabio Rossi" ), CONTRIB_DEV, nullptr ) );
449 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ian Roth" ), CONTRIB_DEV, nullptr ) );
450
451 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "J. Morio Sakaguchi" ), CONTRIB_DEV, nullptr ) );
452 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Schaak" ), CONTRIB_DEV, nullptr ) );
453 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ross Schlaikjer" ), CONTRIB_DEV, nullptr ) );
454 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Julius Schmidt" ), CONTRIB_DEV, nullptr ) );
455 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marvin Schmidt" ), CONTRIB_DEV, nullptr ) );
456 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Carsten Schoenert" ), CONTRIB_DEV, nullptr ) );
457 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Schubert" ), CONTRIB_DEV, nullptr ) );
458 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michal Schulz" ), CONTRIB_DEV, nullptr ) );
459 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Adrian Scripca" ), CONTRIB_DEV, nullptr ) );
460 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Pradeepa Senanayake" ), CONTRIB_DEV, nullptr ) );
461 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Serantoni" ), CONTRIB_DEV, nullptr ) );
462 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Frank Severinsen" ), CONTRIB_DEV, nullptr ) );
463 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Cheng Sheng" ), CONTRIB_DEV, nullptr ) );
464 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Shuklin" ), CONTRIB_DEV, nullptr ) );
465 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Slawomir Siudym" ), CONTRIB_DEV, nullptr ) );
466 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Serantoni" ), CONTRIB_DEV, nullptr ) );
467 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Guillaume Simard" ), CONTRIB_DEV, nullptr ) );
468 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin Sivak" ), CONTRIB_DEV, nullptr ) );
469 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mateusz Skowroński" ), CONTRIB_DEV, nullptr ) );
470 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dominik Sliwa" ), CONTRIB_DEV, nullptr ) );
471 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Blake Smith" ), CONTRIB_DEV, nullptr ) );
472 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Rafael Sokolowski" ), CONTRIB_DEV, nullptr ) );
473 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Vesa Solonen" ), CONTRIB_DEV, nullptr ) );
474 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Ronald Sousa" ), CONTRIB_DEV, nullptr ) );
475 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Craig Southeren" ), CONTRIB_DEV, nullptr ) );
476 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Thomas Spindler" ), CONTRIB_DEV, nullptr ) );
477 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Seppe Stas" ), CONTRIB_DEV, nullptr ) );
478 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Bernhard Stegmaier" ), CONTRIB_DEV, nullptr ) );
479 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Michael Steinberg" ), CONTRIB_DEV, nullptr ) );
480 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Sterbik" ), CONTRIB_DEV, nullptr ) );
481 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Stock" ), CONTRIB_DEV, nullptr ) );
482 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Martin Stoilov" ), CONTRIB_DEV, nullptr ) );
483 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hiroki Suenaga" ), CONTRIB_DEV, nullptr ) );
484
485 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Karl Thorén" ), CONTRIB_DEV, nullptr ) );
486 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Hiroshi Tokita" ), CONTRIB_DEV, nullptr ) );
487
488 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Vladimir Ur" ), CONTRIB_DEV, nullptr ) );
489 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Matthias Urlichs" ), CONTRIB_DEV, nullptr ) );
490 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Vladimir Uryvaev" ), CONTRIB_DEV, nullptr ) );
491
492 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Henri Valta" ), CONTRIB_DEV, nullptr ) );
493 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dave Vandenbout" ), CONTRIB_DEV, nullptr ) );
494 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Edwin van den Oetelaar" ), CONTRIB_DEV, nullptr ) );
495 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mark van Doesburg" ), CONTRIB_DEV, nullptr ) );
496 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Fabio Varesano" ), CONTRIB_DEV, nullptr ) );
497 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Benjamin Vernoux" ), CONTRIB_DEV, nullptr ) );
498 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Frank Villaro-Dixon" ), CONTRIB_DEV, nullptr ) );
499 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Forrest Voight" ), CONTRIB_DEV, nullptr ) );
500 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Tormod Volden" ), CONTRIB_DEV, nullptr ) );
501
502 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Johannes Wågen" ), CONTRIB_DEV, nullptr ) );
503 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Oliver Walters" ), CONTRIB_DEV, nullptr ) );
504 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonathan Warner" ), CONTRIB_DEV, nullptr ) );
505 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dan Weatherill" ), CONTRIB_DEV, nullptr ) );
506 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Stefan Weber" ), CONTRIB_DEV, nullptr ) );
507 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Wells" ), CONTRIB_DEV, nullptr ) );
508 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dominik Wernberger" ), CONTRIB_DEV, nullptr ) );
509 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Nick Winters" ), CONTRIB_DEV, nullptr ) );
510 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Adam Wolf" ), CONTRIB_DEV, nullptr ) );
511 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrzej Wolski" ), CONTRIB_DEV, nullptr ) );
512 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Damian Wrobel" ), CONTRIB_DEV, nullptr ) );
513 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew Wygle" ), CONTRIB_DEV, nullptr ) );
514
515 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jiaxun Yang" ), CONTRIB_DEV, nullptr ) );
516 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Robert Yates" ), CONTRIB_DEV, nullptr ) );
517 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Yegor Yefremov" ), CONTRIB_DEV, nullptr ) );
518 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kenta Yonekura" ), CONTRIB_DEV, nullptr ) );
519
520 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Zakamaldin" ), CONTRIB_DEV, nullptr ) );
521 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Henner Zeller" ), CONTRIB_DEV, nullptr ) );
522 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew Zonenberg" ), CONTRIB_DEV, nullptr ) );
523 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Karl Zeilhofer" ), CONTRIB_DEV, nullptr ) );
524 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Kevin Zheng" ), CONTRIB_DEV, nullptr ) );
525
526 aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Nick Østergaard" ), CONTRIB_DEV, nullptr ) );
527
528 // The document writers
529 aInfo.AddDocWriter( new CONTRIBUTOR( "Jean-Pierre Charras" ) );
530 aInfo.AddDocWriter( new CONTRIBUTOR( "Marco Ciampa" ) );
531 aInfo.AddDocWriter( new CONTRIBUTOR( "Jon Evans" ) );
532 aInfo.AddDocWriter( new CONTRIBUTOR( "Dick Hollenbeck" ) );
533 aInfo.AddDocWriter( new CONTRIBUTOR( "Igor Plyatov" ) );
534 aInfo.AddDocWriter( new CONTRIBUTOR( "Wayne Stambaugh" ) );
535 aInfo.AddDocWriter( new CONTRIBUTOR( "Fabrizio Tappero" ) );
536
537 /* The translators
538 * As category the language to which the translation was done is used
539 */
540 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Martin Kratoška" ),
541 wxEmptyString,
542 wxEmptyString,
543 "Czech (CS)" ) );
544 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Radek Kuznik" ),
545 wxEmptyString,
546 wxEmptyString,
547 "Czech (CS)" ) );
548 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Roman Ondráček" ),
549 wxEmptyString,
550 wxEmptyString,
551 "Czech (CS)" ) );
552 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Jan Straka" ),
553 wxEmptyString,
554 wxEmptyString,
555 "Czech (CS)" ) );
556 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Jan Vykydal" ),
557 wxEmptyString,
558 wxEmptyString,
559 "Czech (CS)" ) );
560 aInfo.AddTranslator( new CONTRIBUTOR( "Jonathan Haas",
561 wxEmptyString,
562 wxEmptyString,
563 "German (DE)" ) );
564 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Mark Hämmerling" ),
565 wxEmptyString,
566 wxEmptyString,
567 "German (DE)" ) );
568 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Mathias Neumann" ),
569 wxEmptyString,
570 wxEmptyString,
571 "German (DE)" ) );
572 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Dominik Wernberger" ),
573 wxEmptyString,
574 wxEmptyString,
575 "German (DE)" ) );
576 aInfo.AddTranslator( new CONTRIBUTOR( "Manolis Stefanis",
577 wxEmptyString,
578 wxEmptyString,
579 "Greek (el_GR)" ) );
580 aInfo.AddTranslator( new CONTRIBUTOR( "Athanasios Vlastos",
581 wxEmptyString,
582 wxEmptyString,
583 "Greek (el_GR)" ) );
584 aInfo.AddTranslator( new CONTRIBUTOR( "Milonas Kostas",
585 wxEmptyString,
586 wxEmptyString,
587 "Greek (el_GR)" ) );
588 aInfo.AddTranslator( new CONTRIBUTOR( "Michail Misirlis",
589 wxEmptyString,
590 wxEmptyString,
591 "Greek (el_GR)" ) );
592 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Adolfo Jayme Barrientos" ),
593 wxEmptyString,
594 wxEmptyString,
595 "Spanish (ES)" ) );
596 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Roberto Fernandez Bautista" ),
597 wxEmptyString,
598 wxEmptyString,
599 "Spanish (ES)" ) );
600 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Augusto Fraga Giachero" ),
601 wxEmptyString,
602 wxEmptyString,
603 "Spanish (ES)" ) );
604 aInfo.AddTranslator( new CONTRIBUTOR( "Pedro Martin del Valle",
605 wxEmptyString,
606 wxEmptyString,
607 "Spanish (ES)" ) );
608 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Iñigo Figuero" ),
609 wxEmptyString,
610 wxEmptyString,
611 "Spanish (ES)" ) );
612 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Iñigo Zuluaga" ),
613 wxEmptyString,
614 wxEmptyString,
615 "Spanish (ES)" ) );
616 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Ulices Avila Hernandez" ),
617 wxEmptyString,
618 wxEmptyString,
619 "Spanish - Latin American (ES)" ) );
620 aInfo.AddTranslator( new CONTRIBUTOR( "Vesa Solonen",
621 wxEmptyString,
622 wxEmptyString,
623 "Finnish (FI)" ) );
624 aInfo.AddTranslator( new CONTRIBUTOR( "Alex Gellen",
625 wxEmptyString,
626 wxEmptyString,
627 "Finnish (FI)" ) );
628 aInfo.AddTranslator( new CONTRIBUTOR( "J. Lavoie",
629 wxEmptyString,
630 wxEmptyString,
631 "Finnish (FI)" ) );
632 aInfo.AddTranslator( new CONTRIBUTOR( "Purkka Koodari",
633 wxEmptyString,
634 wxEmptyString,
635 "Finnish (FI)" ) );
636 aInfo.AddTranslator( new CONTRIBUTOR( "Ola Rinta-Koski",
637 wxEmptyString,
638 wxEmptyString,
639 "Finnish (FI)" ) );
640 aInfo.AddTranslator( new CONTRIBUTOR( "Riku Viitanen",
641 wxEmptyString,
642 wxEmptyString,
643 "Finnish (FI)" ) );
644 aInfo.AddTranslator( new CONTRIBUTOR( "Simo Mattila",
645 wxEmptyString,
646 wxEmptyString,
647 "Finnish (FI)" ) );
648 aInfo.AddTranslator( new CONTRIBUTOR( "Jean-Pierre Charras",
649 wxEmptyString,
650 wxEmptyString,
651 "French (FR)" ) );
652 aInfo.AddTranslator( new CONTRIBUTOR( "Marco Ciampa",
653 wxEmptyString,
654 wxEmptyString,
655 "Italian (IT)" ) );
656 aInfo.AddTranslator( new CONTRIBUTOR( "Hiroshi Tokita",
657 wxEmptyString,
658 wxEmptyString,
659 "Japanese (JA)" ) );
660 aInfo.AddTranslator( new CONTRIBUTOR( "Kenta Yonekura",
661 wxEmptyString,
662 wxEmptyString,
663 "Japanese (JA)" ) );
664 aInfo.AddTranslator( new CONTRIBUTOR( "Ji Yoon Choi",
665 wxEmptyString,
666 wxEmptyString,
667 "Japanese (JA)" ) );
668 aInfo.AddTranslator( new CONTRIBUTOR( "Hidemichi Gotou",
669 wxEmptyString,
670 wxEmptyString,
671 "Japanese (JA)" ) );
672 aInfo.AddTranslator( new CONTRIBUTOR( "Kaoru Zenyouji",
673 wxEmptyString,
674 wxEmptyString,
675 "Japanese (JA)" ) );
676 aInfo.AddTranslator( new CONTRIBUTOR( "Kinichiro Inoguchi",
677 wxEmptyString,
678 wxEmptyString,
679 "Japanese (JA)" ) );
680 aInfo.AddTranslator( new CONTRIBUTOR( "Norio Suzuki",
681 wxEmptyString,
682 wxEmptyString,
683 "Japanese (JA)" ) );
684 aInfo.AddTranslator( new CONTRIBUTOR( "starfort-jp",
685 wxEmptyString,
686 wxEmptyString,
687 "Japanese (JA)" ) );
688 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "킴슨김랑기" ),
689 wxEmptyString,
690 wxEmptyString,
691 "Korean (KO)" ) );
692 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Ji Yoon Choi" ),
693 wxEmptyString,
694 wxEmptyString,
695 "Korean (KO)" ) );
696 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "jeongsuAn" ),
697 wxEmptyString,
698 wxEmptyString,
699 "Korean (KO)" ) );
700 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "이상수" ),
701 wxEmptyString,
702 wxEmptyString,
703 "Korean (KO)" ) );
704 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "jehunseo" ),
705 wxEmptyString,
706 wxEmptyString,
707 "Korean (KO)" ) );
708 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Uibeom Jung" ),
709 wxEmptyString,
710 wxEmptyString,
711 "Korean (KO)" ) );
712 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "박준언" ),
713 wxEmptyString,
714 wxEmptyString,
715 "Korean (KO)" ) );
716 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "방준영" ),
717 wxEmptyString,
718 wxEmptyString,
719 "Korean (KO)" ) );
720 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "박기정" ),
721 wxEmptyString,
722 wxEmptyString,
723 "Korean (KO)" ) );
724 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "hokim" ),
725 wxEmptyString,
726 wxEmptyString,
727 "Korean (KO)" ) );
728 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "강명구" ),
729 wxEmptyString,
730 wxEmptyString,
731 "Korean (KO)" ) );
732 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "서범기" ),
733 wxEmptyString,
734 wxEmptyString,
735 "Korean (KO)" ) );
736 aInfo.AddTranslator( new CONTRIBUTOR( "Arend-Jan van Hilten",
737 wxEmptyString,
738 wxEmptyString,
739 "Dutch (NL)" ) );
740 aInfo.AddTranslator( new CONTRIBUTOR( "CJ van der Hoeven",
741 wxEmptyString,
742 wxEmptyString,
743 "Dutch (NL)" ) );
744 aInfo.AddTranslator( new CONTRIBUTOR( "Pim Jansen",
745 wxEmptyString,
746 wxEmptyString,
747 "Dutch (NL)" ) );
748 aInfo.AddTranslator( new CONTRIBUTOR( "Allan Nordhøy",
749 wxEmptyString,
750 wxEmptyString,
751 "Norwegian (NO)" ) );
752 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Mateusz Skowroński" ),
753 wxEmptyString,
754 wxEmptyString,
755 "Polish (PL)" ) );
756 aInfo.AddTranslator( new CONTRIBUTOR( "Kerusey Karyu",
757 wxEmptyString,
758 wxEmptyString,
759 "Polish (PL)" ) );
760 aInfo.AddTranslator( new CONTRIBUTOR( "Mark Roszko",
761 wxEmptyString,
762 wxEmptyString,
763 "Polish (PL)" ) );
764 aInfo.AddTranslator( new CONTRIBUTOR( "ZbeeGin",
765 wxEmptyString,
766 wxEmptyString,
767 "Polish (PL)" ) );
768 aInfo.AddTranslator( new CONTRIBUTOR( "Augusto Fraga Giachero",
769 wxEmptyString,
770 wxEmptyString,
771 "Brazilian Portuguese (PT_BR)" ) );
772 aInfo.AddTranslator( new CONTRIBUTOR( "Wellington Terumi Uemura",
773 wxEmptyString,
774 wxEmptyString,
775 "Brazilian Portuguese (PT_BR)" ) );
776 aInfo.AddTranslator( new CONTRIBUTOR( "Augusto Fraga Giachero",
777 wxEmptyString,
778 wxEmptyString,
779 "Portuguese (PT)" ) );
780 aInfo.AddTranslator( new CONTRIBUTOR( "Renie Marquet",
781 wxEmptyString,
782 wxEmptyString,
783 "Portuguese (PT)" ) );
784 aInfo.AddTranslator( new CONTRIBUTOR( "Rafael Silva",
785 wxEmptyString,
786 wxEmptyString,
787 "Portuguese (PT)" ) );
788 aInfo.AddTranslator( new CONTRIBUTOR( "Igor Plyatov",
789 wxEmptyString,
790 wxEmptyString,
791 "Russian (RU)" ) );
792 aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Дмитрий Дёмин" ),
793 wxEmptyString,
794 wxEmptyString,
795 "Russian (RU)" ) );
796 aInfo.AddTranslator( new CONTRIBUTOR( "Andrey Fedorushkov",
797 wxEmptyString,
798 wxEmptyString,
799 "Russian (RU)" ) );
800 aInfo.AddTranslator( new CONTRIBUTOR( "Eldar Khayrullin",
801 wxEmptyString,
802 wxEmptyString,
803 "Russian (RU)" ) );
804 aInfo.AddTranslator( new CONTRIBUTOR( "Konstantin Baranovskiy",
805 wxEmptyString,
806 wxEmptyString,
807 "Russian (RU)" ) );
808 aInfo.AddTranslator( new CONTRIBUTOR( "Axel Henriksson",
809 wxEmptyString,
810 wxEmptyString,
811 "Swedish (SV)" ) );
812 aInfo.AddTranslator( new CONTRIBUTOR( "Richard Jonsson",
813 wxEmptyString,
814 wxEmptyString,
815 "Swedish (SV)" ) );
816 aInfo.AddTranslator( new CONTRIBUTOR( "Allan Nordhøy",
817 wxEmptyString,
818 wxEmptyString,
819 "Swedish (SV)" ) );
820 aInfo.AddTranslator( new CONTRIBUTOR( "Boonchai Kingrungped",
821 wxEmptyString,
822 wxEmptyString,
823 "Thai (TH)" ) );
824 aInfo.AddTranslator( new CONTRIBUTOR( "Liu Guang",
825 wxEmptyString,
826 wxEmptyString,
827 "Simplified Chinese (zh_CN)" ) );
828 aInfo.AddTranslator( new CONTRIBUTOR( "Taotieren",
829 wxEmptyString,
830 wxEmptyString,
831 "Simplified Chinese (zh_CN)" ) );
832 aInfo.AddTranslator( new CONTRIBUTOR( "Dingzhong Chen",
833 wxEmptyString,
834 wxEmptyString,
835 "Simplified Chinese (zh_CN)" ) );
836 aInfo.AddTranslator( new CONTRIBUTOR( "David Chen",
837 wxEmptyString,
838 wxEmptyString,
839 "Simplified Chinese (zh_CN)" ) );
840 aInfo.AddTranslator( new CONTRIBUTOR( "Rigo Ligo",
841 wxEmptyString,
842 wxEmptyString,
843 "Simplified Chinese (zh_CN)" ) );
844 aInfo.AddTranslator( new CONTRIBUTOR( "Tian Yunhao",
845 wxEmptyString,
846 wxEmptyString,
847 "Simplified Chinese (zh_CN)" ) );
848 aInfo.AddTranslator( new CONTRIBUTOR( "David Chen",
849 wxEmptyString,
850 wxEmptyString,
851 "Traditional Chinese (zh_TW)" ) );
852 aInfo.AddTranslator( new CONTRIBUTOR( "kai chiao chuang",
853 wxEmptyString,
854 wxEmptyString,
855 "Traditional Chinese (zh_TW)" ) );
856 aInfo.AddTranslator( new CONTRIBUTOR( "Taotieren",
857 wxEmptyString,
858 wxEmptyString,
859 "Traditional Chinese (zh_TW)" ) );
860
861 aInfo.AddTranslator( new CONTRIBUTOR( "Remy Halvick",
862 wxEmptyString,
863 wxEmptyString,
864 "Other" ) );
865
866 aInfo.AddTranslator( new CONTRIBUTOR( "David J S Briscoe",
867 wxEmptyString,
868 wxEmptyString,
869 "Other" ) );
870
871 aInfo.AddTranslator( new CONTRIBUTOR( "Dominique Laigle",
872 wxEmptyString,
873 wxEmptyString,
874 "Other" ) );
875
876 aInfo.AddTranslator( new CONTRIBUTOR( "Paul Burke",
877 wxEmptyString,
878 wxEmptyString,
879 "Other" ) );
880
881
882 // Program credits for 3d models
883 #define LIBRARIANS _( "KiCad Librarian Team" )
884 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Christian Schlüter"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
885 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Rene Poeschl"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
886 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Antonio Vázquez Blanco "), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
887 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "cpresser"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
888 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Daniel Giesbrecht"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
889 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Otavio Augusto Gomes"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
890 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "herostrat"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
891 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Diego Herranz"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
892 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Joel Guittet"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
893 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Aristeidis Kimirtzis"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
894 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Chris Morgan"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
895 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Thomas Pointhuber"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
896 aInfo.AddLibrarian( new CONTRIBUTOR( wxT( "Evan Shultz"), LIBRARIANS, aInfo.CreateKiBitmap( BITMAPS::library ) ) );
897
898 #define MODELS_3D_CONTRIBUTION _( "3D models by" )
899 aInfo.AddLibrarian( new CONTRIBUTOR( "Scripts by Maui",
900 "https://github.com/easyw",
901 "https://gitlab.com/kicad/libraries/kicad-packages3D-generator",
903 aInfo.CreateKiBitmap( BITMAPS::three_d ) ) );
904 aInfo.AddLibrarian( new CONTRIBUTOR( "GitLab contributors",
905 wxEmptyString,
906 "https://gitlab.com/kicad/libraries/kicad-packages3D/-/graphs/master",
908 aInfo.CreateKiBitmap( BITMAPS::three_d ) ) );
909
910 #define SYMBOL_LIB_CONTRIBUTION _( "Symbols by" )
911 aInfo.AddLibrarian( new CONTRIBUTOR( "GitLab contributors",
912 wxEmptyString,
913 "https://gitlab.com/kicad/libraries/kicad-symbols/-/graphs/master",
916
917 #define FOOTPRINT_LIB_CONTRIBUTION _( "Footprints by" )
918 aInfo.AddLibrarian( new CONTRIBUTOR( "Scripts by Thomas Pointhuber",
919 wxEmptyString,
920 "https://gitlab.com/kicad/libraries/kicad-footprint-generator",
922 aInfo.CreateKiBitmap( BITMAPS::module ) ) );
923 aInfo.AddLibrarian( new CONTRIBUTOR( "GitLab contributors",
924 wxEmptyString,
925 "https://gitlab.com/kicad/libraries/kicad-footprints/-/graphs/master",
927 aInfo.CreateKiBitmap( BITMAPS::module ) ) );
928
929 // Program credits for icons
930 #define ICON_CONTRIBUTION _( "Icons by" )
931 aInfo.AddArtist( new CONTRIBUTOR( wxT( "Aleksandr Zyrianov" ),
932 wxEmptyString,
933 wxEmptyString,
935 aInfo.AddArtist( new CONTRIBUTOR( wxT( "Iñigo Zuluaga" ),
936 wxEmptyString,
937 wxEmptyString,
939 aInfo.AddArtist( new CONTRIBUTOR( "Fabrizio Tappero",
940 wxEmptyString,
941 wxEmptyString,
943
944 // Program credits for package developers.
945 aInfo.AddPackager( new CONTRIBUTOR( "Steven Falco" ) );
946 aInfo.AddPackager( new CONTRIBUTOR( "Jean-Samuel Reynaud" ) );
947 aInfo.AddPackager( new CONTRIBUTOR( "Bernhard Stegmaier" ) );
948 aInfo.AddPackager( new CONTRIBUTOR( "Adam Wolf" ) );
949 aInfo.AddPackager( new CONTRIBUTOR( wxT( "Nick Østergaard" ) ) );
950}
#define MODELS_3D_CONTRIBUTION
static wxString HtmlNewline(const unsigned int amount=1)
Create an HTML newline character sequence of aCount.
#define ICON_CONTRIBUTION
static wxString HtmlHyperlink(const wxString &url, const wxString &description=wxEmptyString)
Helper functions.
#define LEAD_DEV
#define FORMER_DEV
#define LIBRARIANS
#define FOOTPRINT_LIB_CONTRIBUTION
#define SYMBOL_LIB_CONTRIBUTION
#define CONTRIB_DEV
@ add_component
wxString GetBuildVersion()
Get the full KiCad version string.
wxString GetPlatformGetBitnessName()
wxString GetBuildDate()
Get the build date as a string.
void AddDocWriter(const CONTRIBUTOR *docwriter)
Definition: aboutinfo.h:56
void SetBuildDate(const wxString &date)
Definition: aboutinfo.h:108
void AddTranslator(const CONTRIBUTOR *translator)
Definition: aboutinfo.h:74
void AddDeveloper(const CONTRIBUTOR *developer)
Definition: aboutinfo.h:50
void SetAppName(const wxString &name)
Definition: aboutinfo.h:102
void SetDescription(const wxString &text)
Definition: aboutinfo.h:93
void SetLibVersion(const wxString &version)
Definition: aboutinfo.h:111
wxBitmap * CreateKiBitmap(BITMAPS aBitmap)
Definition: aboutinfo.h:118
void AddArtist(const CONTRIBUTOR *artist)
Definition: aboutinfo.h:68
void SetBuildVersion(const wxString &version)
Definition: aboutinfo.h:105
void SetAppIcon(const wxIcon &aIcon)
Definition: aboutinfo.h:114
void SetLicense(const wxString &text)
Definition: aboutinfo.h:96
void SetCopyright(const wxString &text)
Definition: aboutinfo.h:99
void AddLibrarian(const CONTRIBUTOR *aLibrarian)
Definition: aboutinfo.h:62
void AddPackager(const CONTRIBUTOR *packager)
Definition: aboutinfo.h:80
A contributor, a person which was involved in the development of the application or which has contrib...
Definition: aboutinfo.h:161
#define _(s)
bool IsOperatingSystemUnsupported()
Checks if the Operating System is explicitly unsupported and we want to prevent users from sending bu...
Definition: gtk/app.cpp:51
KIWAY Kiway & Pgm(), KFCTL_STANDALONE
The global Program "get" accessor.
Definition: single_top.cpp:111

References _, add_component, ABOUT_APP_INFO::AddArtist(), ABOUT_APP_INFO::AddDeveloper(), ABOUT_APP_INFO::AddDocWriter(), ABOUT_APP_INFO::AddLibrarian(), ABOUT_APP_INFO::AddPackager(), ABOUT_APP_INFO::AddTranslator(), CONTRIB_DEV, ABOUT_APP_INFO::CreateKiBitmap(), FOOTPRINT_LIB_CONTRIBUTION, FORMER_DEV, GetBuildDate(), GetBuildVersion(), GetPlatformGetBitnessName(), HtmlHyperlink(), HtmlNewline(), ICON_CONTRIBUTION, KIPLATFORM::APP::IsOperatingSystemUnsupported(), LEAD_DEV, LIBRARIANS, library, MODELS_3D_CONTRIBUTION, module, Pgm(), ABOUT_APP_INFO::SetAppIcon(), ABOUT_APP_INFO::SetAppName(), ABOUT_APP_INFO::SetBuildDate(), ABOUT_APP_INFO::SetBuildVersion(), ABOUT_APP_INFO::SetCopyright(), ABOUT_APP_INFO::SetDescription(), ABOUT_APP_INFO::SetLibVersion(), ABOUT_APP_INFO::SetLicense(), SYMBOL_LIB_CONTRIBUTION, and three_d.

Referenced by ShowAboutDialog().

◆ HtmlHyperlink()

static wxString HtmlHyperlink ( const wxString &  aUrl,
const wxString &  aDescription 
)
static

Helper functions.

Wrap aUrl with a HTML anchor tag containing a hyperlink text reference to form a HTML hyperlink.

Parameters
aUrlthe url that will be embedded in an anchor tag containing a hyperlink reference
aDescriptionthe optional describing text that will be represented as a hyperlink. If not specified the url will be used as hyperlink.
Returns
a HTML conform hyperlink like description

Definition at line 976 of file AboutDialog_main.cpp.

977{
978 wxString hyperlink = wxEmptyString;
979
980 if( aDescription.IsEmpty() )
981 hyperlink << "<a href='" << aUrl << "'>" << aUrl << "</a>";
982 else
983 hyperlink << "<a href='" << aUrl << "'>" << aDescription << "</a>";
984
985 return hyperlink;
986}

Referenced by buildKicadAboutBanner().

◆ HtmlNewline()

static wxString HtmlNewline ( const unsigned int  aCount)
static

Create an HTML newline character sequence of aCount.

Parameters
aCountthe number of HTML newline tags to concatenate, default is to return just one
tag.
Returns
the concatenated amount of HTML newline tag(s)

Definition at line 996 of file AboutDialog_main.cpp.

997{
998 wxString newlineTags = wxEmptyString;
999
1000 for( size_t i = 0; i<aCount; ++i )
1001 newlineTags << "<br>";
1002
1003 return newlineTags;
1004}

Referenced by buildKicadAboutBanner().

◆ ShowAboutDialog()

void ShowAboutDialog ( EDA_BASE_FRAME aParent)

Definition at line 953 of file AboutDialog_main.cpp.

954{
956 buildKicadAboutBanner( aParent, info );
957
958 DIALOG_ABOUT dlg( aParent, info );
959 dlg.ShowModal();
960}
static void buildKicadAboutBanner(EDA_BASE_FRAME *aParent, ABOUT_APP_INFO &aInfo)
Initializes the ABOUT_APP_INFO object with application specific information.
An object of this class is meant to be used to store application specific information like who has co...
Definition: aboutinfo.h:45
About dialog to show application specific information.
Definition: dialog_about.h:54

References buildKicadAboutBanner(), and info.

Referenced by EDA_BASE_FRAME::OnKicadAbout().