New patch for kicad about dialog
This commit is contained in:
parent
76adcc602f
commit
44269729ab
|
@ -1,316 +1,316 @@
|
|||
/***************************************************************
|
||||
* Name: AboutDialog_main.cpp
|
||||
* Purpose: Code for Application Class
|
||||
* Author: Rafael Sokolowski (rafael.sokolowski@web.de)
|
||||
* Created: 2010-08-06
|
||||
* Copyright: Rafael Sokolowski ()
|
||||
* License:
|
||||
**************************************************************/# include "dialog_about.h"
|
||||
#include "aboutinfo.h"
|
||||
#include <wx/aboutdlg.h>
|
||||
|
||||
|
||||
/* Used icons:
|
||||
* lang_xx_xpm[]; // Icons of various national flags
|
||||
* show_3d_xpm[]; // 3D icon
|
||||
* edit_module_xpm[];
|
||||
* kicad_icon_xpm[]; // Icon of the application
|
||||
*/
|
||||
#include "bitmaps.h"
|
||||
|
||||
|
||||
#include "build_version.h"
|
||||
|
||||
|
||||
#include <wx/arrimpl.cpp>
|
||||
WX_DEFINE_OBJARRAY( Contributors );
|
||||
|
||||
// Helper functions:
|
||||
static wxString HtmlHyperlink( const wxString& url, const wxString& description = wxEmptyString );
|
||||
static wxString HtmlNewline( const unsigned int amount = 1 );
|
||||
|
||||
|
||||
/**
|
||||
* Initializes the <code>AboutAppInfo</code> object with applicaion specific information.
|
||||
*
|
||||
* @info is the object which holds all information about the application
|
||||
*/
|
||||
static void InitKiCadAboutNew( AboutAppInfo& info )
|
||||
{
|
||||
/* set application specific icon */
|
||||
|
||||
// COULD BE: use another function call to get appropriate icon; its hardcoded because there is no top level window existing here
|
||||
// do something like:
|
||||
// wxTheApp->GetTopWindow()->GetIcon() ??? or...
|
||||
// const wxTopLevelWindow * const tlw = wxDynamicCast(::wxGetApp().GetTopWindow(), wxTopLevelWindow); ???
|
||||
// if( tlw ) info.SetIcon( tlw->GetIcon() ); ???
|
||||
info.SetIcon( kicad_icon_xpm );
|
||||
|
||||
/* Set title */
|
||||
|
||||
// COULD BE: info.SetAppName( wxT( ".: " ) + wxGetApp().GetTitle() + wxT( " :." ) );
|
||||
info.SetAppName( wxT( ".: KiCad :." ) );
|
||||
|
||||
/* copyright information */
|
||||
info.SetCopyright( wxT( "(C) 1992-2010 KiCad Developers Team" ) );
|
||||
|
||||
/* KiCad build version */
|
||||
wxString version;
|
||||
version << wxT( "Build: " ) << GetBuildVersion();
|
||||
info.SetBuildVersion( version );
|
||||
|
||||
/* wxWidgets version */
|
||||
wxString libVersion;
|
||||
libVersion
|
||||
<< wxT( "wxWidgets " )
|
||||
<< wxMAJOR_VERSION << wxT( "." )
|
||||
<< wxMINOR_VERSION << wxT( "." )
|
||||
<< wxRELEASE_NUMBER
|
||||
|
||||
/* Unicode or Ansi version */
|
||||
#if wxUSE_UNICODE
|
||||
<< wxT( " Unicode " );
|
||||
#else
|
||||
<< wxT( " Ansi " );
|
||||
#endif
|
||||
|
||||
|
||||
/* Operating System Information */
|
||||
|
||||
#if defined __WINDOWS__
|
||||
libVersion << wxT( "on Windows" );
|
||||
|
||||
/* Check for wxMAC */
|
||||
# elif defined __WXMAC__
|
||||
libVersion << wxT( "on Macintosh" );
|
||||
|
||||
/* Linux 64 bits */
|
||||
# elif defined _LP64 && __LINUX__
|
||||
libVersion << wxT( "on 64 Bits GNU/Linux" );
|
||||
|
||||
/* Linux 32 bits */
|
||||
# elif defined __LINUX__
|
||||
libVersion << wxT( "on 32 Bits GNU/Linux" );
|
||||
|
||||
/* OpenBSD */
|
||||
# elif defined __OpenBSD__
|
||||
libVersion << wxT( "on OpenBSD" );
|
||||
|
||||
/* FreeBSD */
|
||||
# elif defined __FreeBSD__
|
||||
libVersion << wxT( "on FreeBSD" );
|
||||
|
||||
#endif
|
||||
|
||||
info.SetLibVersion( libVersion );
|
||||
|
||||
|
||||
/* info/description part HTML formatted */
|
||||
|
||||
wxString description;
|
||||
|
||||
/* short description */
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "Description" ) << wxT( "</u></b>" ); // bold & underlined font for caption
|
||||
|
||||
description << wxT( "<p>" ) <<
|
||||
_(
|
||||
"The KiCad EDA Suite is a set of open source applications for the creation of electronic schematics and to design printed circuit boards." )
|
||||
<< wxT( "</p>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
/* websites */
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "KiCad on the web" ) << wxT( "</u></b>" ); // bold & underlined font for caption
|
||||
|
||||
// bulletet list with some http links
|
||||
description << wxT( "<ul>" );
|
||||
description << wxT( "<li>" ) << HtmlHyperlink( wxT(
|
||||
"http://iut-tice.ujf-grenoble.fr/kicad" ),
|
||||
_( "The original site of the initiator of Kicad" ) )
|
||||
<< wxT( "</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "https://launchpad.net/kicad" ), _( "Project on Launchpad" ) ) << wxT(
|
||||
"</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://kicad.sourceforge.net" ),
|
||||
_( "Wiki on Sourceforge with many information" ) ) << wxT( "</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://www.kicadlib.org" ),
|
||||
_( "Repository with additional component libraries" ) ) << wxT( "</li>" );
|
||||
description << wxT( "</ul>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "Contribute to KiCad" ) << wxT( "</u></b>" ); // bold & underlined font caption
|
||||
|
||||
// bulletet list with some http links
|
||||
description << wxT( "<ul>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "https://bugs.launchpad.net/kicad" ),
|
||||
_( "Report bugs if you found any" ) ) << wxT( "</li>" );
|
||||
description << wxT( "<li>" ) << HtmlHyperlink( wxT(
|
||||
"https://blueprints.launchpad.net/kicad" ),
|
||||
_( "File an idea for improvement" ) ) << wxT(
|
||||
"</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://www.kicadlib.org/Kicad_related_links.html" ),
|
||||
_( "KiCad links to user groups, tutorials and much more" ) ) << wxT( "</li>" );
|
||||
description << wxT( "</ul>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
info.SetDescription( description );
|
||||
|
||||
|
||||
/* License information also HTML formatted */
|
||||
wxString license;
|
||||
license
|
||||
<< wxT( "<div align='center'>" )
|
||||
<< HtmlNewline( 4 )
|
||||
<< _( "The complete KiCad EDA Suite is released under the" ) << HtmlNewline( 2 )
|
||||
<< HtmlHyperlink( wxT( "http://www.gnu.org/licenses" ),
|
||||
_( "GNU General Public License (GPL) version 2" ) )
|
||||
<< wxT( "</div>" );
|
||||
|
||||
info.SetLicense( license );
|
||||
|
||||
|
||||
/* A contributor consists of the following information:
|
||||
* Mandatory:
|
||||
* - Name
|
||||
* - EMail address
|
||||
* Optional:
|
||||
* - Category
|
||||
* - Category specific icon
|
||||
*
|
||||
* All contributors of the same category will be enumerated under this category
|
||||
* which should be represented by the same icon.
|
||||
*/
|
||||
|
||||
/* The developers */
|
||||
info.AddDeveloper( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Dick Hollenbeck" ), wxT( "dick@softplc.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Hauptmech" ), wxT( "hauptmech@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Jerry Jacobs" ),
|
||||
wxT( "xor.gate.engineering@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Jonas Diemer" ), wxT( "diemer@gmx.de" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "KBool Library" ),
|
||||
wxT( "http://boolean.klaasholwerda.nl/bool.html" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Lorenzo Marcantonio" ), wxT( "lomarcan@tin.it" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Marco Serantoni" ), wxT( "marco.serantoni@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Marco Mattila" ), wxT( "marcom99@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Rafael Sokolowski" ),
|
||||
wxT( "rafael.sokolowski@web.de" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Rok Markovic" ), wxT( "rok@kanardia.eu" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Tim Hanson" ), wxT( "sideskate@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Vesa Solonen" ), wxT( "vesa.solonen@hut.fi" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Wayne Stambaugh" ), wxT( "stambaughw@verizon.net" ) ) );
|
||||
|
||||
/* The document writers */
|
||||
info.AddDocWriter( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ) ) );
|
||||
info.AddDocWriter( new Contributor( wxT( "Igor Plyatov" ), wxT( "plyatov@gmail.com" ) ) );
|
||||
|
||||
/* The translators
|
||||
* As category the language to which the translation was done is used
|
||||
* and as icon the national flag of the corresponding country.
|
||||
*/
|
||||
info.AddTranslator( new Contributor( wxT( "Martin Kratoška" ), wxT( "martin@ok1rr.com" ),
|
||||
wxT( "Czech (CZ)" ), new wxBitmap( lang_cs_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Jerry Jacobs" ),
|
||||
wxT( "xor.gate.engineering@gmail.com" ), wxT( "Dutch (NL)" ),
|
||||
new wxBitmap( lang_nl_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Vesa Solonen" ), wxT( "vesa.solonen@hut.fi" ),
|
||||
wxT( "Finnish (FI)" ), new wxBitmap( lang_fi_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ),
|
||||
wxT( "French (FR)" ), new wxBitmap( lang_fr_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Mateusz Skowroński" ), wxT( "skowri@gmail.com" ),
|
||||
wxT( "Polish (PL)" ), new wxBitmap( lang_pl_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ),
|
||||
wxT( "Portuguese (PT)" ), new wxBitmap( lang_pt_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Igor Plyatov" ), wxT( "plyatov@gmail.com" ),
|
||||
wxT( "Russian (RU)" ), new wxBitmap( lang_ru_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Pedro Martin del Valle" ), wxT( "pkicad@yahoo.es" ),
|
||||
wxT( "Spanish (ES)" ), new wxBitmap( lang_es_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Iñigo Zuluaga" ), wxT( "inigo_zuluaga@yahoo.es" ),
|
||||
wxT( "Spanish (ES)" ), new wxBitmap( lang_es_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Rafael Sokolowski" ),
|
||||
wxT( "rafael.sokolowski@web.de" ), wxT( "German (DE)" ),
|
||||
new wxBitmap( lang_de_xpm ) ) );
|
||||
|
||||
/* TODO: are these all russian translators, placed them here now, or else align them below other language maintainer with mail adress */
|
||||
info.AddTranslator( new Contributor( wxT( "Remy Halvick" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "David Briscoe" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Dominique Laigle" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Paul Burke" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
|
||||
/* Programm credits for icons */
|
||||
info.AddArtist( new Contributor( wxT( "Iñigo Zuluagaz" ), wxT( "inigo_zuluaga@yahoo.es" ),
|
||||
wxT( "Icons by" ), new wxBitmap( edit_module_xpm ) ) );
|
||||
info.AddArtist( new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ),
|
||||
wxT( "3D modules by" ), new wxBitmap( show_3d_xpm ) ) );
|
||||
info.AddArtist( new Contributor( wxT( "Christophe Boschat" ), wxT( "nox454@hotmail.fr" ),
|
||||
wxT( "3D modules by" ), new wxBitmap( show_3d_xpm ) ) );
|
||||
}
|
||||
|
||||
|
||||
bool ShowAboutDialog( wxWindow* parent )
|
||||
{
|
||||
AboutAppInfo info;
|
||||
|
||||
InitKiCadAboutNew( info );
|
||||
|
||||
dialog_about* dlg = new dialog_about( parent, info );
|
||||
dlg->SetIcon( info.GetIcon() );
|
||||
dlg->Show();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Helper functions
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* Wraps the given url with a HTML anchor tag containing a hyperlink text reference
|
||||
* to form a HTML hyperlink.
|
||||
*
|
||||
* @url the url that will be embedded in an anchor tag containing a hyperlink reference
|
||||
* @description the optional describing text that will be represented as a hyperlink.
|
||||
* If not specified the url will be used as hyperlink.
|
||||
* @return a HTML conform hyperlink like <a href='url'>description</a>
|
||||
*/
|
||||
static wxString HtmlHyperlink( const wxString& url, const wxString& description )
|
||||
{
|
||||
wxString hyperlink = wxEmptyString;
|
||||
|
||||
if( description.IsEmpty() )
|
||||
hyperlink << wxT( "<a href='" ) << url << wxT( "'>" ) << url << wxT( "</a>" );
|
||||
else
|
||||
hyperlink << wxT( "<a href='" ) << url << wxT( "'>" ) << description << wxT( "</a>" );
|
||||
|
||||
return hyperlink;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Creates a HTML newline character sequence.
|
||||
*
|
||||
* @amount the amount of HTML newline tags to concatenate, default is to return just one <br> tag
|
||||
* @return the concatenated amount of HTML newline tag(s) <br>
|
||||
*/
|
||||
static wxString HtmlNewline( const unsigned int amount )
|
||||
{
|
||||
wxString newlineTags = wxEmptyString;
|
||||
|
||||
for( size_t i = 0; i<amount; ++i )
|
||||
newlineTags << wxT( "<br>" );
|
||||
|
||||
return newlineTags;
|
||||
}
|
||||
/***************************************************************
|
||||
* Name: AboutDialog_main.cpp
|
||||
* Purpose: Code for Application Class
|
||||
* Author: Rafael Sokolowski (rafael.sokolowski@web.de)
|
||||
* Created: 2010-08-06
|
||||
* Copyright: Rafael Sokolowski ()
|
||||
* License:
|
||||
**************************************************************/
|
||||
#include "dialog_about.h"
|
||||
#include "aboutinfo.h"
|
||||
#include <wx/aboutdlg.h>
|
||||
#include <wx/textctrl.h>
|
||||
|
||||
|
||||
/* Used icons:
|
||||
* lang_xx_xpm[]; // Icons of various national flags
|
||||
* show_3d_xpm[]; // 3D icon
|
||||
* edit_module_xpm[];
|
||||
* kicad_icon_xpm[]; // Icon of the application
|
||||
*/
|
||||
#include "bitmaps.h"
|
||||
#include "wxstruct.h"
|
||||
#include "common.h"
|
||||
#include "appl_wxstruct.h"
|
||||
#include "build_version.h"
|
||||
|
||||
|
||||
#include <wx/arrimpl.cpp>
|
||||
WX_DEFINE_OBJARRAY( Contributors );
|
||||
|
||||
// Helper functions:
|
||||
static wxString HtmlHyperlink( const wxString& url, const wxString& description = wxEmptyString );
|
||||
static wxString HtmlNewline( const unsigned int amount = 1 );
|
||||
|
||||
|
||||
/**
|
||||
* Initializes the <code>AboutAppInfo</code> object with applicaion specific information.
|
||||
*
|
||||
* @info is the object which holds all information about the application
|
||||
*/
|
||||
static void InitKiCadAboutNew( AboutAppInfo& info )
|
||||
{
|
||||
/* Set application specific icon */
|
||||
|
||||
const wxTopLevelWindow * const tlw = wxDynamicCast(::wxGetApp().GetTopWindow(), wxTopLevelWindow);
|
||||
if( tlw )
|
||||
info.SetIcon( tlw->GetIcon() );
|
||||
else
|
||||
info.SetIcon( kicad_icon_xpm );
|
||||
|
||||
/* Set title */
|
||||
info.SetAppName( wxT( ".: " ) + wxGetApp().GetTitle() + wxT( " :." ) );
|
||||
|
||||
/* Copyright information */
|
||||
info.SetCopyright( wxT( "(C) 1992-2010 KiCad Developers Team" ) );
|
||||
|
||||
/* KiCad build version */
|
||||
wxString version;
|
||||
version << wxT( "Build: " ) << GetBuildVersion();
|
||||
info.SetBuildVersion( version );
|
||||
|
||||
/* wxWidgets version */
|
||||
wxString libVersion;
|
||||
libVersion
|
||||
<< wxT( "wxWidgets " )
|
||||
<< wxMAJOR_VERSION << wxT( "." )
|
||||
<< wxMINOR_VERSION << wxT( "." )
|
||||
<< wxRELEASE_NUMBER
|
||||
|
||||
/* Unicode or Ansi version */
|
||||
#if wxUSE_UNICODE
|
||||
<< wxT( " Unicode " );
|
||||
#else
|
||||
<< wxT( " Ansi " );
|
||||
#endif
|
||||
|
||||
|
||||
/* Operating System Information */
|
||||
|
||||
#if defined __WINDOWS__
|
||||
libVersion << wxT( "on Windows" );
|
||||
|
||||
/* Check for wxMAC */
|
||||
# elif defined __WXMAC__
|
||||
libVersion << wxT( "on Macintosh" );
|
||||
|
||||
/* Linux 64 bits */
|
||||
# elif defined _LP64 && __LINUX__
|
||||
libVersion << wxT( "on 64 Bits GNU/Linux" );
|
||||
|
||||
/* Linux 32 bits */
|
||||
# elif defined __LINUX__
|
||||
libVersion << wxT( "on 32 Bits GNU/Linux" );
|
||||
|
||||
/* OpenBSD */
|
||||
# elif defined __OpenBSD__
|
||||
libVersion << wxT( "on OpenBSD" );
|
||||
|
||||
/* FreeBSD */
|
||||
# elif defined __FreeBSD__
|
||||
libVersion << wxT( "on FreeBSD" );
|
||||
|
||||
#endif
|
||||
|
||||
info.SetLibVersion( libVersion );
|
||||
|
||||
|
||||
/* info/description part HTML formatted */
|
||||
|
||||
wxString description;
|
||||
|
||||
/* short description */
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "Description" ) << wxT( "</u></b>" ); // bold & underlined font for caption
|
||||
|
||||
description << wxT( "<p>" ) <<
|
||||
_(
|
||||
"The KiCad EDA Suite is a set of open source applications for the creation of electronic schematics and to design printed circuit boards." )
|
||||
<< wxT( "</p>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
/* websites */
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "KiCad on the web" ) << wxT( "</u></b>" ); // bold & underlined font for caption
|
||||
|
||||
// bulletet list with some http links
|
||||
description << wxT( "<ul>" );
|
||||
description << wxT( "<li>" ) << HtmlHyperlink( wxT(
|
||||
"http://iut-tice.ujf-grenoble.fr/kicad" ),
|
||||
_( "The original site of the initiator of Kicad" ) )
|
||||
<< wxT( "</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "https://launchpad.net/kicad" ), _( "Project on Launchpad" ) ) << wxT(
|
||||
"</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://kicad.sourceforge.net" ),
|
||||
_( "Wiki on Sourceforge with many information" ) ) << wxT( "</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://www.kicadlib.org" ),
|
||||
_( "Repository with additional component libraries" ) ) << wxT( "</li>" );
|
||||
description << wxT( "</ul>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
description << wxT( "<p>" );
|
||||
description << wxT( "<b><u>" ) << _( "Contribute to KiCad" ) << wxT( "</u></b>" ); // bold & underlined font caption
|
||||
|
||||
// bulletet list with some http links
|
||||
description << wxT( "<ul>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "https://bugs.launchpad.net/kicad" ),
|
||||
_( "Report bugs if you found any" ) ) << wxT( "</li>" );
|
||||
description << wxT( "<li>" ) << HtmlHyperlink( wxT(
|
||||
"https://blueprints.launchpad.net/kicad" ),
|
||||
_( "File an idea for improvement" ) ) << wxT(
|
||||
"</li>" );
|
||||
description << wxT( "<li>" ) <<
|
||||
HtmlHyperlink( wxT( "http://www.kicadlib.org/Kicad_related_links.html" ),
|
||||
_( "KiCad links to user groups, tutorials and much more" ) ) << wxT( "</li>" );
|
||||
description << wxT( "</ul>" );
|
||||
|
||||
description << wxT( "</p>" );
|
||||
|
||||
info.SetDescription( description );
|
||||
|
||||
|
||||
/* License information also HTML formatted */
|
||||
wxString license;
|
||||
license
|
||||
<< wxT( "<div align='center'>" )
|
||||
<< HtmlNewline( 4 )
|
||||
<< _( "The complete KiCad EDA Suite is released under the" ) << HtmlNewline( 2 )
|
||||
<< HtmlHyperlink( wxT( "http://www.gnu.org/licenses" ),
|
||||
_( "GNU General Public License (GPL) version 2" ) )
|
||||
<< wxT( "</div>" );
|
||||
|
||||
info.SetLicense( license );
|
||||
|
||||
|
||||
/* A contributor consists of the following information:
|
||||
* Mandatory:
|
||||
* - Name
|
||||
* - EMail address
|
||||
* Optional:
|
||||
* - Category
|
||||
* - Category specific icon
|
||||
*
|
||||
* All contributors of the same category will be enumerated under this category
|
||||
* which should be represented by the same icon.
|
||||
*/
|
||||
|
||||
/* The developers */
|
||||
info.AddDeveloper( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Dick Hollenbeck" ), wxT( "dick@softplc.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Hauptmech" ), wxT( "hauptmech@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Jerry Jacobs" ),
|
||||
wxT( "xor.gate.engineering@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Jonas Diemer" ), wxT( "diemer@gmx.de" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "KBool Library" ),
|
||||
wxT( "http://boolean.klaasholwerda.nl/bool.html" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Lorenzo Marcantonio" ), wxT( "lomarcan@tin.it" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Marco Serantoni" ), wxT( "marco.serantoni@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Marco Mattila" ), wxT( "marcom99@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Rafael Sokolowski" ),
|
||||
wxT( "rafael.sokolowski@web.de" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Rok Markovic" ), wxT( "rok@kanardia.eu" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Tim Hanson" ), wxT( "sideskate@gmail.com" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Vesa Solonen" ), wxT( "vesa.solonen@hut.fi" ) ) );
|
||||
info.AddDeveloper( new Contributor( wxT( "Wayne Stambaugh" ), wxT( "stambaughw@verizon.net" ) ) );
|
||||
|
||||
/* The document writers */
|
||||
info.AddDocWriter( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ) ) );
|
||||
info.AddDocWriter( new Contributor( wxT( "Igor Plyatov" ), wxT( "plyatov@gmail.com" ) ) );
|
||||
|
||||
/* The translators
|
||||
* As category the language to which the translation was done is used
|
||||
* and as icon the national flag of the corresponding country.
|
||||
*/
|
||||
info.AddTranslator( new Contributor( wxT( "Martin Kratoška" ), wxT( "martin@ok1rr.com" ),
|
||||
wxT( "Czech (CZ)" ), new wxBitmap( lang_cs_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Jerry Jacobs" ),
|
||||
wxT( "xor.gate.engineering@gmail.com" ), wxT( "Dutch (NL)" ),
|
||||
new wxBitmap( lang_nl_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Vesa Solonen" ), wxT( "vesa.solonen@hut.fi" ),
|
||||
wxT( "Finnish (FI)" ), new wxBitmap( lang_fi_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Jean-Pierre Charras" ),
|
||||
wxT( "jean-pierre.charras@gipsa-lab.inpg.fr" ),
|
||||
wxT( "French (FR)" ), new wxBitmap( lang_fr_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Mateusz Skowroński" ), wxT( "skowri@gmail.com" ),
|
||||
wxT( "Polish (PL)" ), new wxBitmap( lang_pl_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ),
|
||||
wxT( "Portuguese (PT)" ), new wxBitmap( lang_pt_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Igor Plyatov" ), wxT( "plyatov@gmail.com" ),
|
||||
wxT( "Russian (RU)" ), new wxBitmap( lang_ru_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Pedro Martin del Valle" ), wxT( "pkicad@yahoo.es" ),
|
||||
wxT( "Spanish (ES)" ), new wxBitmap( lang_es_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Iñigo Zuluaga" ), wxT( "inigo_zuluaga@yahoo.es" ),
|
||||
wxT( "Spanish (ES)" ), new wxBitmap( lang_es_xpm ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Rafael Sokolowski" ),
|
||||
wxT( "rafael.sokolowski@web.de" ), wxT( "German (DE)" ),
|
||||
new wxBitmap( lang_de_xpm ) ) );
|
||||
|
||||
/* TODO: are these all russian translators, placed them here now, or else align them below other language maintainer with mail adress */
|
||||
info.AddTranslator( new Contributor( wxT( "Remy Halvick" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "David Briscoe" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Dominique Laigle" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
info.AddTranslator( new Contributor( wxT( "Paul Burke" ), wxEmptyString, wxT( "Others" ) ) );
|
||||
|
||||
/* Programm credits for icons */
|
||||
info.AddArtist( new Contributor( wxT( "Iñigo Zuluagaz" ), wxT( "inigo_zuluaga@yahoo.es" ),
|
||||
wxT( "Icons by" ), new wxBitmap( edit_module_xpm ) ) );
|
||||
info.AddArtist( new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ),
|
||||
wxT( "3D modules by" ), new wxBitmap( show_3d_xpm ) ) );
|
||||
info.AddArtist( new Contributor( wxT( "Christophe Boschat" ), wxT( "nox454@hotmail.fr" ),
|
||||
wxT( "3D modules by" ), new wxBitmap( show_3d_xpm ) ) );
|
||||
}
|
||||
|
||||
|
||||
bool ShowAboutDialog( wxWindow* parent )
|
||||
{
|
||||
AboutAppInfo info;
|
||||
|
||||
InitKiCadAboutNew( info );
|
||||
|
||||
dialog_about* dlg = new dialog_about( parent, info );
|
||||
dlg->SetIcon( info.GetIcon() );
|
||||
dlg->Show();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// Helper functions
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* Wraps the given url with a HTML anchor tag containing a hyperlink text reference
|
||||
* to form a HTML hyperlink.
|
||||
*
|
||||
* @url the url that will be embedded in an anchor tag containing a hyperlink reference
|
||||
* @description the optional describing text that will be represented as a hyperlink.
|
||||
* If not specified the url will be used as hyperlink.
|
||||
* @return a HTML conform hyperlink like <a href='url'>description</a>
|
||||
*/
|
||||
static wxString HtmlHyperlink( const wxString& url, const wxString& description )
|
||||
{
|
||||
wxString hyperlink = wxEmptyString;
|
||||
|
||||
if( description.IsEmpty() )
|
||||
hyperlink << wxT( "<a href='" ) << url << wxT( "'>" ) << url << wxT( "</a>" );
|
||||
else
|
||||
hyperlink << wxT( "<a href='" ) << url << wxT( "'>" ) << description << wxT( "</a>" );
|
||||
|
||||
return hyperlink;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Creates a HTML newline character sequence.
|
||||
*
|
||||
* @amount the amount of HTML newline tags to concatenate, default is to return just one <br> tag
|
||||
* @return the concatenated amount of HTML newline tag(s) <br>
|
||||
*/
|
||||
static wxString HtmlNewline( const unsigned int amount )
|
||||
{
|
||||
wxString newlineTags = wxEmptyString;
|
||||
|
||||
for( size_t i = 0; i<amount; ++i )
|
||||
newlineTags << wxT( "<br>" );
|
||||
|
||||
return newlineTags;
|
||||
}
|
||||
|
|
|
@ -19,31 +19,37 @@ dialog_about_base::dialog_about_base( wxWindow* parent, wxWindowID id, const wxS
|
|||
wxBoxSizer* bSizer3;
|
||||
bSizer3 = new wxBoxSizer( wxHORIZONTAL );
|
||||
|
||||
|
||||
bSizer3->Add( 0, 0, 1, wxEXPAND, 5 );
|
||||
|
||||
m_bitmapApp = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
|
||||
bSizer3->Add( m_bitmapApp, 0, wxALIGN_CENTER|wxALL, 5 );
|
||||
bSizer3->Add( m_bitmapApp, 1, wxALIGN_CENTER|wxALL, 5 );
|
||||
|
||||
wxBoxSizer* b_apptitleSizer;
|
||||
b_apptitleSizer = new wxBoxSizer( wxVERTICAL );
|
||||
|
||||
m_staticTextAppTitle = new wxStaticText( this, wxID_ANY, _("App Title"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE|wxST_NO_AUTORESIZE );
|
||||
m_staticTextAppTitle = new wxStaticText( this, wxID_ANY, _("App Title"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE );
|
||||
m_staticTextAppTitle->Wrap( -1 );
|
||||
m_staticTextAppTitle->SetFont( wxFont( 14, 70, 90, 92, false, wxEmptyString ) );
|
||||
|
||||
b_apptitleSizer->Add( m_staticTextAppTitle, 0, wxALIGN_CENTER|wxALL|wxEXPAND, 5 );
|
||||
b_apptitleSizer->Add( m_staticTextAppTitle, 0, wxALIGN_CENTER|wxALL, 5 );
|
||||
|
||||
m_staticTextCopyright = new wxStaticText( this, wxID_ANY, _("Copyright Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE|wxST_NO_AUTORESIZE );
|
||||
m_staticTextCopyright = new wxStaticText( this, wxID_ANY, _("Copyright Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE );
|
||||
m_staticTextCopyright->Wrap( -1 );
|
||||
b_apptitleSizer->Add( m_staticTextCopyright, 0, wxALIGN_CENTER|wxALL|wxEXPAND, 1 );
|
||||
b_apptitleSizer->Add( m_staticTextCopyright, 0, wxALIGN_CENTER|wxALL, 1 );
|
||||
|
||||
m_staticTextBuildVersion = new wxStaticText( this, wxID_ANY, _("Build Version Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE|wxST_NO_AUTORESIZE );
|
||||
m_staticTextBuildVersion = new wxStaticText( this, wxID_ANY, _("Build Version Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE );
|
||||
m_staticTextBuildVersion->Wrap( -1 );
|
||||
b_apptitleSizer->Add( m_staticTextBuildVersion, 0, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
b_apptitleSizer->Add( m_staticTextBuildVersion, 0, wxALIGN_CENTER|wxLEFT|wxRIGHT|wxTOP, 5 );
|
||||
|
||||
m_staticTextLibVersion = new wxStaticText( this, wxID_ANY, _("Lib Version Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE|wxST_NO_AUTORESIZE );
|
||||
m_staticTextLibVersion = new wxStaticText( this, wxID_ANY, _("Lib Version Info"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE );
|
||||
m_staticTextLibVersion->Wrap( -1 );
|
||||
b_apptitleSizer->Add( m_staticTextLibVersion, 0, wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
|
||||
b_apptitleSizer->Add( m_staticTextLibVersion, 0, wxALIGN_CENTER|wxBOTTOM|wxLEFT|wxRIGHT, 5 );
|
||||
|
||||
bSizer3->Add( b_apptitleSizer, 1, wxEXPAND, 5 );
|
||||
bSizer3->Add( b_apptitleSizer, 10, wxEXPAND, 5 );
|
||||
|
||||
|
||||
bSizer3->Add( 0, 0, 2, wxEXPAND, 5 );
|
||||
|
||||
bSizer1->Add( bSizer3, 0, wxEXPAND, 5 );
|
||||
|
||||
|
|
|
@ -84,10 +84,20 @@
|
|||
<property name="name">bSizer3</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxStaticBitmap" expanded="1">
|
||||
<property name="bg"></property>
|
||||
<property name="bitmap"></property>
|
||||
|
@ -136,7 +146,7 @@
|
|||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">1</property>
|
||||
<property name="proportion">10</property>
|
||||
<object class="wxBoxSizer" expanded="1">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">b_apptitleSizer</property>
|
||||
|
@ -144,7 +154,7 @@
|
|||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL|wxEXPAND</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="1">
|
||||
<property name="bg"></property>
|
||||
|
@ -161,7 +171,7 @@
|
|||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style">wxALIGN_CENTRE|wxST_NO_AUTORESIZE</property>
|
||||
<property name="style">wxALIGN_CENTRE</property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
|
@ -195,7 +205,7 @@
|
|||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">1</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL|wxEXPAND</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="1">
|
||||
<property name="bg"></property>
|
||||
|
@ -212,7 +222,7 @@
|
|||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style">wxALIGN_CENTRE|wxST_NO_AUTORESIZE</property>
|
||||
<property name="style">wxALIGN_CENTRE</property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
|
@ -246,7 +256,7 @@
|
|||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxLEFT|wxRIGHT|wxTOP</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="1">
|
||||
<property name="bg"></property>
|
||||
|
@ -263,7 +273,7 @@
|
|||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style">wxALIGN_CENTRE|wxST_NO_AUTORESIZE</property>
|
||||
<property name="style">wxALIGN_CENTRE</property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
|
@ -297,7 +307,7 @@
|
|||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxBOTTOM|wxLEFT|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="1">
|
||||
<property name="bg"></property>
|
||||
|
@ -314,7 +324,7 @@
|
|||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style">wxALIGN_CENTRE|wxST_NO_AUTORESIZE</property>
|
||||
<property name="style">wxALIGN_CENTRE</property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
|
@ -348,6 +358,16 @@
|
|||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">2</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
|
|
|
@ -37,11 +37,13 @@ class dialog_about_base : public wxDialog
|
|||
wxButton* m_buttonOK;
|
||||
|
||||
protected:
|
||||
|
||||
wxStaticBitmap* m_bitmapApp;
|
||||
wxStaticText* m_staticTextAppTitle;
|
||||
wxStaticText* m_staticTextCopyright;
|
||||
wxStaticText* m_staticTextBuildVersion;
|
||||
wxStaticText* m_staticTextLibVersion;
|
||||
|
||||
wxAuiNotebook* m_auiNotebook;
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
|
|
|
@ -421,15 +421,17 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
{
|
||||
if( Track->IsPointOnEnds( cursorPosition, -1 ) != 0 )
|
||||
{
|
||||
msg = AddHotkeyName( _( "Move Node" ), s_Board_Editor_Hokeys_Descr, HK_MOVE_ITEM );
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_MOVE_TRACK_NODE,
|
||||
_( "Move Node" ), move_xpm );
|
||||
msg, move_xpm );
|
||||
}
|
||||
else
|
||||
{
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_DRAG_TRACK_SEGMENT_KEEP_SLOPE,
|
||||
_( "Drag Segments, Keep Slope" ), drag_segment_withslope_xpm );
|
||||
msg = AddHotkeyName( _( "Drag Segment" ), s_Board_Editor_Hokeys_Descr, HK_DRAG_ITEM );
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_DRAG_TRACK_SEGMENT,
|
||||
_( "Drag Segment" ), drag_track_segment_xpm );
|
||||
msg, drag_track_segment_xpm );
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_BREAK_TRACK,
|
||||
_( "Break Track" ), break_line_xpm );
|
||||
}
|
||||
|
@ -483,10 +485,6 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
ADD_MENUITEM_WITH_SUBMENU( PopMenu, Append_Track_Width_List( GetBoard() ),
|
||||
ID_POPUP_PCB_SELECT_WIDTH,
|
||||
_( "Select Track Width" ), width_track_xpm );
|
||||
PopMenu->AppendSeparator();
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_EDIT_ALL_VIAS_AND_TRACK_SIZE,
|
||||
_( "Global Tracks and Vias Edition" ), width_track_via_xpm );
|
||||
PopMenu->AppendSeparator();
|
||||
}
|
||||
|
||||
else // Allows switching to an other track/via size when routing
|
||||
|
@ -494,10 +492,10 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
ADD_MENUITEM_WITH_SUBMENU( PopMenu, Append_Track_Width_List( GetBoard() ),
|
||||
ID_POPUP_PCB_SELECT_WIDTH,
|
||||
_( "Select Track Width" ), width_track_xpm );
|
||||
PopMenu->AppendSeparator();
|
||||
}
|
||||
|
||||
// Delete control:
|
||||
PopMenu->AppendSeparator();
|
||||
wxMenu* track_mnu = new wxMenu;
|
||||
ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu,
|
||||
ID_POPUP_PCB_DELETE_TRACK_MNU, _( "Delete" ), delete_xpm );
|
||||
|
@ -516,6 +514,16 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
ADD_MENUITEM( track_mnu, ID_POPUP_PCB_DELETE_TRACKNET,
|
||||
_( "Delete Net" ), delete_net_xpm );
|
||||
}
|
||||
|
||||
// Add global edition command
|
||||
if( !flags )
|
||||
{
|
||||
PopMenu->AppendSeparator();
|
||||
ADD_MENUITEM( PopMenu, ID_POPUP_PCB_EDIT_ALL_VIAS_AND_TRACK_SIZE,
|
||||
_( "Global Tracks and Vias Edition" ), width_track_via_xpm );
|
||||
}
|
||||
|
||||
// Add lock/unlock flags menu:
|
||||
track_mnu = new wxMenu;
|
||||
|
||||
ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu,
|
||||
|
@ -530,7 +538,6 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
|
||||
if( !flags )
|
||||
{
|
||||
track_mnu->AppendSeparator();
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_ON_TRACK, _( "Track Locked: Yes" ) );
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_OFF_TRACK, _( "Track Locked: No" ) );
|
||||
track_mnu->AppendSeparator();
|
||||
|
|
Loading…
Reference in New Issue