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 <pgm_base.h>
#include <wxstruct.h>
#include "aboutinfo.h"
#include "dialog_about.h"

Go to the source code of this file.

Macros

#define OTHERS_IN_TRANSLATION   _( "Others" )
 
#define ICON_CONTRIBUTION   _( "Icons by" )
 
#define MODELS_3D_CONTRIBUTION   _( "3D models by" )
 

Functions

static wxString HtmlHyperlink (const wxString &aUrl, const wxString &aDescription)
 Helper functions. More...
 
static wxString HtmlNewline (const unsigned int aCount)
 Function HtmlNewline. 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

#define ICON_CONTRIBUTION   _( "Icons by" )

Referenced by buildKicadAboutBanner().

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

Referenced by buildKicadAboutBanner().

#define OTHERS_IN_TRANSLATION   _( "Others" )

Referenced by buildKicadAboutBanner().

Function Documentation

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.

References GetBuildVersion(), HtmlHyperlink(), HtmlNewline(), ICON_CONTRIBUTION, KiBitmapNew(), MODELS_3D_CONTRIBUTION, OTHERS_IN_TRANSLATION, and Pgm().

Referenced by ShowAboutDialog().

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( wxT( "(C) 1992-2017 KiCad Developers Team" ) );
68 
69  /* KiCad build version */
70  wxString version;
71  version << GetBuildVersion()
72 #ifdef DEBUG
73  << wxT( ", debug" )
74 #else
75  << wxT( ", release" )
76 #endif
77  << wxT( " build" );
78 
79  aInfo.SetBuildVersion( version );
80 
81  /* wxWidgets version */
82  wxString libVersion;
83  libVersion << wxGetLibraryVersionInfo().GetVersionString();
84 
85  /* Unicode or ANSI version */
86 #if wxUSE_UNICODE
87  libVersion << wxT( " Unicode " );
88 #else
89  libVersion << wxT( " ANSI " );
90 #endif
91 
92  // Just in case someone builds KiCad with the platform native of Boost instead of
93  // the version included with the KiCad source.
94  libVersion << wxT( "and Boost " ) << ( BOOST_VERSION / 100000 ) << wxT( "." )
95  << ( BOOST_VERSION / 100 % 1000 ) << wxT( "." ) << ( BOOST_VERSION % 100 )
96  << wxT( "\n" );
97 
98  // Operating System Information
99 
100  wxPlatformInfo platformInfo;
101 
102  libVersion << wxT( "Platform: " ) << wxGetOsDescription() << wxT( ", " )
103  << platformInfo.GetArchName();
104 
105  aInfo.SetLibVersion( libVersion );
106 
107 
108  /* info/description part HTML formatted */
109 
110  wxString description;
111 
112  /* short description */
113  description << wxT( "<p>" );
114  description << wxT( "<b><u>" )
115  << _( "Description" )
116  << wxT( "</u></b>" ); // bold & underlined font for caption
117 
118  description << wxT( "<p>" )
119  << _( "The KiCad EDA Suite is a set of open source applications for the "
120  "creation of electronic schematics and to design printed circuit boards." )
121  << wxT( "</p>" );
122 
123  description << wxT( "</p>" );
124 
125  /* websites */
126  description << wxT( "<p><b><u>" )
127  << _( "KiCad on the web" )
128  << wxT( "</u></b>" ); // bold & underlined font for caption
129 
130  // bullet-ed list with some http links
131  description << wxT( "<ul>" );
132  description << wxT( "<li>" )
133  << HtmlHyperlink( wxT( "http://www.kicad-pcb.org" ),
134  _( "The official KiCad website" ) )
135  << wxT( "</li>" );
136  description << wxT( "<li>" )
137  << HtmlHyperlink( wxT( "https://launchpad.net/kicad" ),
138  _( "Developer's website on Launchpad" ) )
139  << wxT("</li>" );
140 
141  description << wxT( "<li>" )
142  << HtmlHyperlink( wxT( "https://github.com/KiCad/" ),
143  _( "Official repository for component and footprint libraries" ) )
144  << wxT( "</li>" );
145 
146  description << wxT( "<li>" )
147  << HtmlHyperlink( wxT( "https://github.com/KiCad/Footprint_Wizards" ),
148  _( "Footprint wizards info on our official repository" ) )
149  << wxT( "</li>" );
150  description << wxT( "</ul></p>" );
151 
152  description << wxT( "<p><b><u>" )
153  << _( "Non official repositories" )
154  << wxT( "</b></u>" );
155 
156  description << wxT( "<ul>" );
157 
158  description << wxT( "<li>" )
159  << HtmlHyperlink( wxT( "http://smisioto.no-ip.org/elettronica/kicad/kicad-en.htm" ),
160  _( "Additional component libraries repository (smisioto)" ) )
161  << wxT( "</li>" );
162 
163  description << wxT( "</ul></p>" );
164 
165  description << wxT( "<p><b><u>" )
166  << _( "Bug tracker" )
167  << wxT( "</u></b>" ); // bold & underlined font caption
168 
169  // bullet-ed list with some http links
170  description << wxT( "<ul>" );
171  description << wxT( "<li>" )
172  << HtmlHyperlink( wxT( "https://bugs.launchpad.net/kicad/+bugs?orderby=-id&start=0" ),
173  _( "Report or examine bugs" ) )
174  << wxT( "</li>" );
175  description << wxT( "</ul></p>" );
176 
177  description << wxT( "<p><b><u>" )
178  << _( "KiCad user's groups and community" )
179  << wxT( "</u></b>" ); // bold & underlined font caption
180 
181  description << wxT( "<ul>" );
182  description << wxT( "<li>" )
183  << HtmlHyperlink( wxT( "https://groups.yahoo.com/neo/groups/kicad-users/info" ),
184  _( "KiCad user's group" ) )
185  << wxT( "</li>" );
186 
187  description << wxT( "<li>" )
188  << HtmlHyperlink( wxT( "https://forum.kicad.info" ),
189  _( "KiCad forum" ) )
190  << wxT( "</li>" );
191 
192  description << wxT( "</ul></p>" );
193 
194  aInfo.SetDescription( description );
195 
196 
197  // License information also HTML formatted:
198  wxString license;
199  license
200  << wxT( "<div align='center'>" )
201  << HtmlNewline( 4 )
202  << _( "The complete KiCad EDA Suite is released under the" ) << HtmlNewline( 2 )
203  << HtmlHyperlink( wxT( "http://www.gnu.org/licenses" ),
204  _( "GNU General Public License (GPL) version 3 or any later version" ) )
205  << wxT( "</div>" );
206 
207  aInfo.SetLicense( license );
208 
209 
210  /* A contributor consists of the following information:
211  * Mandatory:
212  * - Name
213  * - EMail address
214  * Optional:
215  * - Category
216  * - Category specific icon
217  *
218  * All contributors of the same category will be enumerated under this category
219  * which should be represented by the same icon.
220  */
221 
222  // The core developers
223  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jean-Pierre Charras" ),
224  wxT( "jp.charras@wanadoo.fr" ) ) );
225  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Dick Hollenbeck" ),
226  wxT( "dick@softplc.com" ) ) );
227  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Wayne Stambaugh" ),
228  wxT( "stambaughw@gmail.com" ) ) );
229 
230  // alphabetically by last name after main 3 above:
231  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Frank Bennett" ),
232  wxT( "bennett78@lpbroadband.net" ) ) );
233  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Cirilo Bernardo" ),
234  wxT( "cirilo_bernardo@yahoo.com" ) ) );
235  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jonas Diemer" ),
236  wxT( "diemer@gmx.de" ) ) );
237  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Torsten Hüter" ),
238  wxT( "torstenhtr@gmx.de" ) ) );
239  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jerry Jacobs" ),
240  wxT( "xor.gate.engineering@gmail.com" ) ) );
241  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mario Luzeiro" ),
242  wxT( "mrluzeiro@ua.pt" ) ) );
243  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Daniel Majewski" ),
244  wxT( "lordblick@gmail.com" ) ) );
245  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Lorenzo Marcantonio" ),
246  wxT( "lomarcan@tin.it" ) ) );
247  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Mattila" ),
248  wxT( "marcom99@gmail.com" ) ) );
249  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Chris Pavlina" ),
250  wxT( "pavlina.chris@gmail.com" ) ) );
251  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Miguel Angel Ajo Pelayo" ),
252  wxT( "miguelangel@nbee.es" ) ) );
253  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Jacobo Aragunde Perez" ),
254  wxT( "jaragunde@igalia.com" ) ) );
255  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Simon Richter" ),
256  wxT( "Simon.Richter@hogyros.de" ) ) );
257  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mark Roszko" ),
258  wxT( "mark.roszko@gmail.com" ) ) );
259  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Marco Serantoni" ),
260  wxT( "marco.serantoni@gmail.com" ) ) );
261  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Brian Sidebotham" ),
262  wxT( "brian.sidebotham@gmail.com" ) ) );
263  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Mateusz Skowroński" ),
264  wxT( "skowri@gmail.com" ) ) );
265  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Rafael Sokolowski" ),
266  wxT( "rafael.sokolowski@web.de" ) ) );
267  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Vesa Solonen" ),
268  wxT( "vesa.solonen@hut.fi" ) ) );
269  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Bernhard Stegmaier" ),
270  wxT( "stegmaier@sw-systems.de" ) ) );
271  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Orson (Maciej Sumiński)" ),
272  wxT( "maciej.suminski@cern.ch" ) ) );
273  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Tomasz Wlostowski" ),
274  wxT( "tomasz.wlostowski@cern.ch" ) ) );
275  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Adam Wolf" ),
276  wxT( "adamwolf@feelslikeburning.com" ) ) );
277  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Alexander Zakamaldin" ),
278  wxT( "zaka62@mail.ru" ) ) );
279  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Henner Zeller" ),
280  wxT( "h.zeller@acm.org" ) ) );
281  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Andrew Zonenberg" ),
282  wxT( "azonenberg@drawersteak.com" ) ) );
283  aInfo.AddDeveloper( new CONTRIBUTOR( wxT( "Nick Østergaard" ),
284  wxT( "oe.nick@gmail.com" ) ) );
285 
286  // The document writers
287  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Jean-Pierre Charras" ),
288  wxT( "jp.charras@wanadoo.fr" ) ) );
289  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Marco Ciampa" ),
290  wxT( "ciampix@libero.it" ) ) );
291  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Dick Hollenbeck" ),
292  wxT( "dick@softplc.com" ) ) );
293  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Igor Plyatov" ),
294  wxT( "plyatov@gmail.com" ) ) );
295  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Wayne Stambaugh" ),
296  wxT( "stambaughw@gmail.com" ) ) );
297  aInfo.AddDocWriter( new CONTRIBUTOR( wxT( "Fabrizio Tappero" ),
298  wxT( "fabrizio.tappero@gmail.com" ) ) );
299 
300  /* The translators
301  * As category the language to which the translation was done is used
302  * and as icon the national flag of the corresponding country.
303  */
304  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Robert Buj" ),
305  wxT( "rbuj@fedoraproject.org" ),
306  wxT( "Catalan (CA)" ),
307  KiBitmapNew( lang_catalan_xpm ) ) );
308  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Martin Kratoška" ),
309  wxT( "martin@ok1rr.com" ),
310  wxT( "Czech (CZ)" ),
311  KiBitmapNew( lang_cs_xpm ) ) );
312  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Jerry Jacobs" ),
313  wxT( "xor.gate.engineering@gmail.com" ),
314  wxT( "Dutch (NL)" ),
315  KiBitmapNew( lang_nl_xpm ) ) );
316  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Vesa Solonen" ),
317  wxT( "vesa.solonen@hut.fi" ),
318  wxT( "Finnish (FI)" ),
319  KiBitmapNew( lang_fi_xpm ) ) );
320  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Jean-Pierre Charras" ),
321  wxT( "jp.charras@wanadoo.fr" ),
322  wxT( "French (FR)" ),
323  KiBitmapNew( lang_fr_xpm ) ) );
324  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Mateusz Skowroński" ),
325  wxT( "skowri@gmail.com" ),
326  wxT( "Polish (PL)" ),
327  KiBitmapNew( lang_pl_xpm ) ) );
328  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Kerusey Karyu" ),
329  wxT( "keruseykaryu@o2.pl" ),
330  wxT( "Polish (PL)" ),
331  KiBitmapNew( lang_pl_xpm ) ) );
332  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Renie Marquet" ),
333  wxT( "reniemarquet@uol.com.br" ),
334  wxT( "Portuguese (PT)" ),
335  KiBitmapNew( lang_pt_xpm ) ) );
336  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Igor Plyatov" ),
337  wxT( "plyatov@gmail.com" ),
338  wxT( "Russian (RU)" ),
339  KiBitmapNew( lang_ru_xpm ) ) );
340  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Andrey Fedorushkov" ),
341  wxT( "andrf@mail.ru" ),
342  wxT( "Russian (RU)" ),
343  KiBitmapNew( lang_ru_xpm ) ) );
344  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Eldar Khayrullin" ),
345  wxT( "eldar.khayrullin@mail.ru" ),
346  wxT( "Russian (RU)" ),
347  KiBitmapNew( lang_ru_xpm ) ) );
348  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Pedro Martin del Valle" ),
349  wxT( "pkicad@yahoo.es" ),
350  wxT( "Spanish (ES)" ),
351  KiBitmapNew( lang_es_xpm ) ) );
352  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Iñigo Zuluaga" ),
353  wxT( "inigo_zuluaga@yahoo.es" ),
354  wxT( "Spanish (ES)" ),
355  KiBitmapNew( lang_es_xpm ) ) );
356  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Iñigo Figuero" ),
357  wxT( "ifs@elektroquark.com" ),
358  wxT( "Spanish (ES)" ),
359  KiBitmapNew( lang_es_xpm ) ) );
360  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Rafael Sokolowski" ),
361  wxT( "rafael.sokolowski@web.de" ),
362  wxT( "German (DE)" ),
363  KiBitmapNew( lang_de_xpm ) ) );
364  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Kenta Yonekura" ),
365  wxT( "yoneken@kicad.jp" ),
366  wxT( "Japanese (JA)" ),
367  KiBitmapNew( lang_jp_xpm ) ) );
368  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Manolis Stefanis" ),
369  wxT( "" ),
370  wxT( "Greek (el_GR)" ),
371  KiBitmapNew( lang_gr_xpm ) ) );
372  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Athanasios Vlastos" ),
373  wxT( "" ),
374  wxT( "Greek (el_GR)" ),
375  KiBitmapNew( lang_gr_xpm ) ) );
376  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Milonas Kostas" ),
377  wxT( "milonas.ko@gmail.com" ),
378  wxT( "Greek (el_GR)" ),
379  KiBitmapNew( lang_gr_xpm ) ) );
380  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Michail Misirlis" ),
381  wxT( "mmisirlis@gmail.com" ),
382  wxT( "Greek (el_GR)" ),
383  KiBitmapNew( lang_gr_xpm ) ) );
384  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Massimo Cioce" ),
385  wxT( "ciocemax@alice.it" ),
386  wxT( "Italian (IT)" ),
387  KiBitmapNew( lang_it_xpm ) ) );
388  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Marco Ciampa" ),
389  wxT( "ciampix@libero.it" ),
390  wxT( "Italian (IT)" ),
391  KiBitmapNew( lang_it_xpm ) ) );
392  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Evgeniy Ivanov" ),
393  wxT( "evgeniy_p_ivanov@yahoo.ca" ),
394  wxT( "Bulgarian (BG)" ),
395  KiBitmapNew( lang_bg_xpm ) ) );
396 
397  // Maintainer who helper in translations, but not in a specific translation
398  #define OTHERS_IN_TRANSLATION _( "Others" )
399  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Remy Halvick" ),
400  wxEmptyString,
402  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "David Briscoe" ),
403  wxEmptyString,
405  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Dominique Laigle" ),
406  wxEmptyString,
408  aInfo.AddTranslator( new CONTRIBUTOR( wxT( "Paul Burke" ),
409  wxEmptyString,
411 
412  // Programm credits for icons
413  #define ICON_CONTRIBUTION _( "Icons by" )
414  aInfo.AddArtist( new CONTRIBUTOR( wxT( "Iñigo Zuluaga" ),
415  wxT( "inigo_zuluaga@yahoo.es" ),
417  KiBitmapNew( edit_module_xpm ) ) );
418  aInfo.AddArtist( new CONTRIBUTOR( wxT( "Konstantin Baranovskiy" ),
419  wxT( "baranovskiykonstantin@gmail.com" ),
421  KiBitmapNew( edit_module_xpm ) ) );
422  aInfo.AddArtist( new CONTRIBUTOR( wxT( "Fabrizio Tappero" ),
423  wxT( "fabrizio.tappero@gmail.com" ),
425  KiBitmapNew( edit_module_xpm ) ) );
426 
427  // Programm credits for 3d models
428  #define MODELS_3D_CONTRIBUTION _( "3D models by" )
429  aInfo.AddArtist( new CONTRIBUTOR( wxT( "Christophe Boschat" ),
430  wxT( "nox454@hotmail.fr" ),
432  KiBitmapNew( three_d_xpm ) ) );
433  aInfo.AddArtist( new CONTRIBUTOR( wxT( "Renie Marquet" ),
434  wxT( "reniemarquet@uol.com.br" ),
436  KiBitmapNew( three_d_xpm ) ) );
437 
438  // Programm credits for package developers.
439  aInfo.AddPackager( new CONTRIBUTOR( wxT( "Jean-Samuel Reynaud" ),
440  wxT( "js.reynaud@gmail.com" ) ) );
441  aInfo.AddPackager( new CONTRIBUTOR( wxT( "Bernhard Stegmaier" ),
442  wxT( "stegmaier@sw-systems.de" ) ) );
443  aInfo.AddPackager( new CONTRIBUTOR( wxT( "Adam Wolf" ),
444  wxT( "adamwolf@feelslikeburning.com" ) ) );
445  aInfo.AddPackager( new CONTRIBUTOR( wxT( "Nick Østergaard" ),
446  wxT( "oe.nick@gmail.com" ) ) );
447 }
void SetCopyright(const wxString &text)
Definition: aboutinfo.h:90
#define ICON_CONTRIBUTION
void AddTranslator(const CONTRIBUTOR *translator)
Definition: aboutinfo.h:66
#define OTHERS_IN_TRANSLATION
void AddDocWriter(const CONTRIBUTOR *docwriter)
Definition: aboutinfo.h:54
static wxString HtmlNewline(const unsigned int amount=1)
Function HtmlNewline.
PGM_BASE & Pgm()
The global Program "get" accessor.
Definition: kicad.cpp:65
void SetAppIcon(const wxIcon &aIcon)
Definition: aboutinfo.h:102
wxBitmap * KiBitmapNew(BITMAP_DEF aBitmap)
Function KiBitmapNew allocates a wxBitmap on heap from a memory record, held in a BITMAP_DEF...
Definition: bitmap.cpp:46
void SetBuildVersion(const wxString &version)
Definition: aboutinfo.h:96
void SetDescription(const wxString &text)
Definition: aboutinfo.h:84
wxString GetBuildVersion()
Function GetBuildVersion Return the build version string.
void SetLibVersion(const wxString &version)
Definition: aboutinfo.h:99
#define MODELS_3D_CONTRIBUTION
void AddArtist(const CONTRIBUTOR *artist)
Definition: aboutinfo.h:60
void SetLicense(const wxString &text)
Definition: aboutinfo.h:87
static wxString HtmlHyperlink(const wxString &url, const wxString &description=wxEmptyString)
Helper functions.
A contributor, a person which was involved in the development of the application or which has contrib...
Definition: aboutinfo.h:136
void AddPackager(const CONTRIBUTOR *packager)
Definition: aboutinfo.h:72
void AddDeveloper(const CONTRIBUTOR *developer)
Definition: aboutinfo.h:48
void SetAppName(const wxString &name)
Definition: aboutinfo.h:93
static wxString HtmlHyperlink ( const wxString &  aUrl,
const wxString &  aDescription 
)
static

Helper functions.

Function HtmlHyperlink

wraps 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 475 of file AboutDialog_main.cpp.

Referenced by buildKicadAboutBanner().

476 {
477  wxString hyperlink = wxEmptyString;
478 
479  if( aDescription.IsEmpty() )
480  hyperlink << wxT( "<a href='" ) << aUrl << wxT( "'>" ) << aUrl << wxT( "</a>" );
481  else
482  hyperlink << wxT( "<a href='" ) << aUrl << wxT( "'>" ) << aDescription << wxT( "</a>" );
483 
484  return hyperlink;
485 }
static wxString HtmlNewline ( const unsigned int  aCount)
static

Function HtmlNewline.

creates 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 497 of file AboutDialog_main.cpp.

Referenced by buildKicadAboutBanner().

498 {
499  wxString newlineTags = wxEmptyString;
500 
501  for( size_t i = 0; i<aCount; ++i )
502  newlineTags << wxT( "<br>" );
503 
504  return newlineTags;
505 }
void ShowAboutDialog ( EDA_BASE_FRAME aParent)

Definition at line 450 of file AboutDialog_main.cpp.

References buildKicadAboutBanner().

Referenced by EDA_BASE_FRAME::GetKicadAbout().

451 {
452  ABOUT_APP_INFO info;
453  buildKicadAboutBanner( aParent, info );
454 
455  DIALOG_ABOUT dlg( aParent, info );
456  dlg.ShowModal();
457 }
An object of this class is meant to be used to store application specific information like who has co...
Definition: aboutinfo.h:42
static void buildKicadAboutBanner(EDA_BASE_FRAME *aParent, ABOUT_APP_INFO &aInfo)
Initializes the ABOUT_APP_INFO object with application specific information.
About dialog to show application specific information.
Definition: dialog_about.h:40