Added a tool to the upper toolbar which gives and easy access to freeroute

This commit is contained in:
charras 2008-03-14 10:09:39 +00:00
parent 6d609d1837
commit 813b0ab583
13 changed files with 1639 additions and 25 deletions

166
bitmaps/Web_support.xpm Normal file
View File

@ -0,0 +1,166 @@
/* XPM */
#ifndef XPMMAIN
extern const char *web_support_xpm[];
#else
const char * web_support_xpm[] = {
"16 16 140 2",
" c None",
". c #22345B",
"+ c #273C68",
"@ c #263C68",
"# c #253A64",
"$ c #233760",
"% c #000000",
"& c #F1EDED",
"* c #FAF4F2",
"= c #E1DFE6",
"- c #B5C2D9",
"; c #D9D3DD",
"> c #89A9CA",
", c #22355D",
"' c #243962",
") c #E5E5EB",
"! c #BDD1E7",
"~ c #83ADD7",
"{ c #8BB6DB",
"] c #BBD1E4",
"^ c #8FA8CE",
"/ c #3E76BA",
"( c #325DA1",
"_ c #304975",
": c #1F3054",
"< c #273D6A",
"[ c #8EBAD8",
"} c #B1D5EA",
"| c #D3E6F1",
"1 c #C5D9EA",
"2 c #E8F0F5",
"3 c #D0DFEC",
"4 c #86ABD2",
"5 c #8CADD1",
"6 c #96B2D2",
"7 c #5378A5",
"8 c #1D2D4E",
"9 c #85ABBF",
"0 c #7EB6DD",
"a c #9DC8E5",
"b c #DAE8F2",
"c c #E9F1F6",
"d c #F0F4F7",
"e c #DDE8F0",
"f c #B9D2E4",
"g c #587CB0",
"h c #436BA6",
"i c #4A6F9E",
"j c #324E82",
"k c #15213A",
"l c #87B6D1",
"m c #C7DEED",
"n c #9AC1E0",
"o c #8999A7",
"p c #497299",
"q c #2D3A49",
"r c #0C0C0C",
"s c #5C9AC6",
"t c #9FC6E4",
"u c #82ADD5",
"v c #8A8993",
"w c #52667A",
"x c #767371",
"y c #D8D5D1",
"z c #F2F1ED",
"A c #F2F1EB",
"B c #E7E4DE",
"C c #BAB7B5",
"D c #646361",
"E c #83B1CF",
"F c #8ABCDF",
"G c #87888C",
"H c #E8A291",
"I c #F0D2C7",
"J c #E8E5E1",
"K c #E4E3DF",
"L c #ECEBE7",
"M c #EDEAE6",
"N c #E38C74",
"O c #C4D2D8",
"P c #BBD6EA",
"Q c #C9DBE9",
"R c #6D84A1",
"S c #E8B1A5",
"T c #F0AA97",
"U c #D67D69",
"V c #C9BBB4",
"W c #B4B3AD",
"X c #C0BEB7",
"Y c #E1E0DA",
"Z c #E8C9BF",
"` c #E4512F",
" . c #678493",
".. c #DDEAF2",
"+. c #BCD6E7",
"@. c #65696D",
"#. c #51504E",
"$. c #F1A998",
"%. c #D76348",
"&. c #943019",
"*. c #645551",
"=. c #1F1E1E",
"-. c #903F2D",
";. c #EA7B61",
">. c #374D79",
",. c #89AEC3",
"'. c #C0D1E0",
"). c #42484F",
"!. c #E6E2E1",
"~. c #DEA191",
"{. c #BA4429",
"]. c #3B3938",
"^. c #141E2E",
"/. c #263B61",
"(. c #1C2C4B",
"_. c #C4624B",
":. c #3D527C",
"<. c #92B2C6",
"[. c #D0CFCB",
"}. c #A68E85",
"|. c #45597D",
"1. c #355580",
"2. c #243961",
"3. c #21355B",
"4. c #394C75",
"5. c #6377A2",
"6. c #F3F0EA",
"7. c #D4D1CF",
"8. c #B1AEA8",
"9. c #3E597E",
"0. c #192948",
"a. c #1D2E50",
"b. c #E7E2DE",
"c. c #DDDBD8",
"d. c #CBCAC6",
"e. c #263554",
"f. c #EAE6E3",
"g. c #E3BAAE",
"h. c #9B5B4C",
"i. c #D39382",
" ",
" . + + + @ # ",
" $ % & * = - ; > , ' ",
" + ) ! ~ { ] ^ / ( _ : ",
" < [ } | 1 2 3 4 5 6 7 8 ",
"% 9 0 a b c d e f g h i j k ",
"% l m n o % % p q % % % % % r ",
"% s t u % v w % x y z A B C D ",
"% E F 1 % G % H I J K J L M N ",
"% O P Q R % S T U V W X Y Z ` ",
"% ...+.@.#.$.%.&.*.=.% #.-.;. ",
" >.,.'.).!.~.{.].^./., (.% _. ",
" :. <.% z [.}.].|.1.2.3. ]. ",
" 4.5.% 6.7.8.% 9.0.a. % ",
" % b.c.d.].e. ]. ",
" % C f.g.h.% % i. "
};
#endif

View File

@ -5,27 +5,27 @@ extern const char *tools_xpm[];
#else #else
const char *tools_xpm[] = { const char *tools_xpm[] = {
/* columns rows colors const chars-per-pixel */ /* columns rows colors const chars-per-pixel */
"16 15 3 1", "16 16 5 1",
"- c Blue",
"X c Gray100",
" c None", " c None",
". c #000000",
/* pixels */ "+ c #FFFFFF",
"XXXXXXX XXXXXXX", "@ c #BFE5FF",
"XXXXXXX XXXXXXX", "# c #696969",
"X-----X XXXXXXX", "............... ",
"X-----X X-----X", ".+++++++++++++. ",
"XXXXXXX X-----X", ".@#@..@....@#@. ",
"XXXXXXX XXXXXXX", ".+++++++++++++. ",
"X-----X XXXXXXX", ".@#@..@..@@@#@. ",
"X-----X XXXXXXX", ".+++++++++++++. ",
"XXXXXXX XXXXXXX", ".@#@..@....@#@. ",
"XXXXXXX X-----X", ".+++++++++++++. ",
"XXXXXXX X-----X", ".@#@..@...@@#@. ",
"X-----X XXXXXXX", ".+++++++++++++. ",
"X-----X XXXXXXX", ".@#@..@....@#@. ",
"XXXXXXX X-----X", ".+++++++++++++. ",
"XXXXXXX XXXXXXX" ".@#@..@..@..#@. ",
}; ".+++++++++++++. ",
"............... ",
" "};
#endif #endif

View File

@ -5,6 +5,12 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with
email address. email address.
2008-Mar-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+pcbnew
Added a tool to the upper toolbar which gives and easy access to freeroute
2008-Mar-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> 2008-Mar-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================ ================================================================================
+pcbnew +pcbnew

View File

@ -11,6 +11,7 @@
#include "../bitmaps/new_txt.xpm" #include "../bitmaps/new_txt.xpm"
#include "../bitmaps/directory.xpm" #include "../bitmaps/directory.xpm"
#include "../bitmaps/icon_python_small.xpm" #include "../bitmaps/icon_python_small.xpm"
#include "../bitmaps/Web_support.xpm"
#include "../bitmaps/Fonts.xpm" #include "../bitmaps/Fonts.xpm"

View File

@ -729,7 +729,7 @@ enum main_id {
ID_TOOLBARH_PCB_SELECT_LAYER, ID_TOOLBARH_PCB_SELECT_LAYER,
ID_TOOLBARH_PCB_AUTOPLACE, ID_TOOLBARH_PCB_AUTOPLACE,
ID_TOOLBARH_PCB_AUTOROUTE, ID_TOOLBARH_PCB_AUTOROUTE,
ID_TOOLBARH_PCB_UNUSED, ID_TOOLBARH_PCB_FREEROUTE_ACCESS,
ID_AUX_TOOLBAR_PCB_VIA_SIZE, ID_AUX_TOOLBAR_PCB_VIA_SIZE,
ID_AUX_TOOLBAR_PCB_TRACK_WIDTH, ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,

View File

@ -413,6 +413,12 @@ public:
*/ */
void ImportSpecctraDesign( wxCommandEvent& event ); void ImportSpecctraDesign( wxCommandEvent& event );
/**
* Function Access_to_External_Tool
* Run an external tool (like freeroute )
*/
void Access_to_External_Tool( wxCommandEvent& event );
/* Fonctions specifiques */ /* Fonctions specifiques */
MODULE* ListAndSelectModuleName(); MODULE* ListAndSelectModuleName();
void Liste_Equipot( wxCommandEvent& event ); void Liste_Equipot( wxCommandEvent& event );

View File

@ -47,6 +47,7 @@ set(PCBNEW_SRCS
# dialog_drc.cpp # dialog_drc.cpp
dialog_edit_mod_text.cpp dialog_edit_mod_text.cpp
# dialog_edit_module.cpp # dialog_edit_module.cpp
dialog_freeroute_exchange.cpp
# dialog_gendrill.cpp # dialog_gendrill.cpp
dialog_general_options.cpp dialog_general_options.cpp
# dialog_graphic_items_options.cpp # dialog_graphic_items_options.cpp

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,292 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_freeroute_exchange.cpp
// Purpose:
// Author: jean-pierre Charras
// Modified by:
// Created: 14/03/2008 09:19:27
// RCS-ID:
// Copyright: kicad team
// Licence:
/////////////////////////////////////////////////////////////////////////////
// Generated by DialogBlocks (unregistered), 14/03/2008 09:19:27
// For compilers that support precompilation, includes "wx/wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
////@begin includes
////@end includes
#include "fctsys.h"
#include "common.h"
#include "pcbnew.h"
#include "dialog_freeroute_exchange.h"
////@begin XPM images
////@end XPM images
/**********************************************************************/
void WinEDA_PcbFrame::Access_to_External_Tool( wxCommandEvent& event )
/**********************************************************************/
/* Run an external tool (currently, only freeroute)
*/
{
dialog_freeroute_exchange dialog( this ) ;
dialog.ShowModal();
}
/*!
* dialog_freeroute_exchange type definition
*/
IMPLEMENT_DYNAMIC_CLASS( dialog_freeroute_exchange, wxDialog )
/*!
* dialog_freeroute_exchange event table definition
*/
BEGIN_EVENT_TABLE( dialog_freeroute_exchange, wxDialog )
////@begin dialog_freeroute_exchange event table entries
EVT_BUTTON( ID_CREATE_EXPORT_DSN_FILE, dialog_freeroute_exchange::OnCreateExportDsnFileClick )
EVT_BUTTON( ID_RUN_FREEROUTE, dialog_freeroute_exchange::OnRunFreerouteClick )
EVT_BUTTON( ID_IMPORT_FREEROUTE_DSN_FILE, dialog_freeroute_exchange::OnImportFreerouteDsnFileClick )
EVT_BUTTON( wxID_CLOSE, dialog_freeroute_exchange::OnCloseClick )
EVT_BUTTON( ID_GOTO_FREEROUTE_WEB_SITE, dialog_freeroute_exchange::OnGotoFreerouteWebSiteClick )
////@end dialog_freeroute_exchange event table entries
END_EVENT_TABLE()
/*!
* dialog_freeroute_exchange constructors
*/
dialog_freeroute_exchange::dialog_freeroute_exchange()
{
Init();
}
dialog_freeroute_exchange::dialog_freeroute_exchange( WinEDA_PcbFrame* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style )
{
m_Parent = parent;
Init();
Create(parent, id, caption, pos, size, style);
}
/*!
* dialog_freeroute_exchange creator
*/
bool dialog_freeroute_exchange::Create( wxWindow* parent, wxWindowID id, const wxString& caption, const wxPoint& pos, const wxSize& size, long style )
{
////@begin dialog_freeroute_exchange creation
SetExtraStyle(wxWS_EX_BLOCK_EVENTS);
wxDialog::Create( parent, id, caption, pos, size, style );
CreateControls();
if (GetSizer())
{
GetSizer()->SetSizeHints(this);
}
Centre();
////@end dialog_freeroute_exchange creation
return true;
}
/*!
* dialog_freeroute_exchange destructor
*/
dialog_freeroute_exchange::~dialog_freeroute_exchange()
{
////@begin dialog_freeroute_exchange destruction
////@end dialog_freeroute_exchange destruction
}
/*!
* Member initialisation
*/
void dialog_freeroute_exchange::Init()
{
////@begin dialog_freeroute_exchange member initialisation
m_FreerouteURLName = NULL;
m_FreerouteURLCommandString = NULL;
////@end dialog_freeroute_exchange member initialisation
}
/*!
* Control creation for dialog_freeroute_exchange
*/
void dialog_freeroute_exchange::CreateControls()
{
////@begin dialog_freeroute_exchange content construction
// Generated by DialogBlocks, 14/03/2008 10:20:02 (unregistered)
dialog_freeroute_exchange* itemDialog1 = this;
wxBoxSizer* itemBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
itemDialog1->SetSizer(itemBoxSizer2);
wxBoxSizer* itemBoxSizer3 = new wxBoxSizer(wxVERTICAL);
itemBoxSizer2->Add(itemBoxSizer3, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5);
wxButton* itemButton4 = new wxButton( itemDialog1, ID_CREATE_EXPORT_DSN_FILE, _("Create Export Dsn File"), wxDefaultPosition, wxDefaultSize, 0 );
itemButton4->SetHelpText(_("Create an export DNS file to freeroute"));
if (dialog_freeroute_exchange::ShowToolTips())
itemButton4->SetToolTip(_("Create an export DNS file to freeroute"));
itemBoxSizer3->Add(itemButton4, 0, wxGROW|wxALL, 5);
wxButton* itemButton5 = new wxButton( itemDialog1, ID_RUN_FREEROUTE, _("Connect to FreeROUTE"), wxDefaultPosition, wxDefaultSize, 0 );
itemButton5->SetHelpText(_("Run the WEb Based Freeroute Router"));
if (dialog_freeroute_exchange::ShowToolTips())
itemButton5->SetToolTip(_("Run the WEb Based Freeroute Router"));
itemBoxSizer3->Add(itemButton5, 0, wxGROW|wxALL, 5);
wxButton* itemButton6 = new wxButton( itemDialog1, ID_IMPORT_FREEROUTE_DSN_FILE, _("Read Design File"), wxDefaultPosition, wxDefaultSize, 0 );
itemButton6->SetHelpText(_("Read the design file created by freeroute"));
if (dialog_freeroute_exchange::ShowToolTips())
itemButton6->SetToolTip(_("Read the design file created by freeroute"));
itemBoxSizer3->Add(itemButton6, 0, wxGROW|wxALL, 5);
wxButton* itemButton7 = new wxButton( itemDialog1, wxID_CLOSE, _("&Close"), wxDefaultPosition, wxDefaultSize, 0 );
itemBoxSizer3->Add(itemButton7, 0, wxGROW|wxALL, 5);
wxBoxSizer* itemBoxSizer8 = new wxBoxSizer(wxVERTICAL);
itemBoxSizer2->Add(itemBoxSizer8, 0, wxGROW|wxALL, 5);
wxButton* itemButton9 = new wxButton( itemDialog1, ID_GOTO_FREEROUTE_WEB_SITE, _("Access to FreeROUTE Web Site"), wxDefaultPosition, wxDefaultSize, 0 );
itemButton9->SetHelpText(_("Run the WEb Based Freeroute Router"));
if (dialog_freeroute_exchange::ShowToolTips())
itemButton9->SetToolTip(_("Run the WEb Based Freeroute Router"));
itemBoxSizer8->Add(itemButton9, 0, wxGROW|wxALL, 5);
wxStaticText* itemStaticText10 = new wxStaticText( itemDialog1, wxID_STATIC, _("FreeRoute URL"), wxDefaultPosition, wxDefaultSize, 0 );
itemBoxSizer8->Add(itemStaticText10, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP, 5);
m_FreerouteURLName = new wxTextCtrl( itemDialog1, ID_TEXTCTRL1, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
itemBoxSizer8->Add(m_FreerouteURLName, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
wxStaticText* itemStaticText12 = new wxStaticText( itemDialog1, wxID_STATIC, _("FreeRoute Command"), wxDefaultPosition, wxDefaultSize, 0 );
itemBoxSizer8->Add(itemStaticText12, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP, 5);
m_FreerouteURLCommandString = new wxTextCtrl( itemDialog1, ID_TEXTCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
itemBoxSizer8->Add(m_FreerouteURLCommandString, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
////@end dialog_freeroute_exchange content construction
m_FreerouteURLName->SetValue(wxT("http://www.freerouting.net/"));
m_FreerouteURLCommandString->SetValue(wxT("http://www.freerouting.net/java/freeroute.jnlp"));
}
/*!
* Should we show tooltips?
*/
bool dialog_freeroute_exchange::ShowToolTips()
{
return true;
}
/*!
* Get bitmap resources
*/
wxBitmap dialog_freeroute_exchange::GetBitmapResource( const wxString& name )
{
// Bitmap retrieval
////@begin dialog_freeroute_exchange bitmap retrieval
wxUnusedVar(name);
return wxNullBitmap;
////@end dialog_freeroute_exchange bitmap retrieval
}
/*!
* Get icon resources
*/
wxIcon dialog_freeroute_exchange::GetIconResource( const wxString& name )
{
// Icon retrieval
////@begin dialog_freeroute_exchange icon retrieval
wxUnusedVar(name);
return wxNullIcon;
////@end dialog_freeroute_exchange icon retrieval
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_CREATE_EXPORT_DSN_FILE
*/
void dialog_freeroute_exchange::OnCreateExportDsnFileClick( wxCommandEvent& event )
{
m_Parent->ExportToSpecctra( event );
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_IMPORT_FREEROUTE_DSN_FILE
*/
void dialog_freeroute_exchange::OnImportFreerouteDsnFileClick( wxCommandEvent& event )
{
m_Parent->ImportSpecctraSession( event );
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_RUN_FREEROUTE
*/
void dialog_freeroute_exchange::OnRunFreerouteClick( wxCommandEvent& event )
{
wxString command = m_FreerouteURLCommandString->GetValue();
wxLaunchDefaultBrowser(command);
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON
*/
void dialog_freeroute_exchange::OnGotoFreerouteWebSiteClick( wxCommandEvent& event )
{
wxString command = m_FreerouteURLName->GetValue();
wxLaunchDefaultBrowser(command);
}
/*!
* wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CLOSE
*/
void dialog_freeroute_exchange::OnCloseClick( wxCommandEvent& event )
{
Close();
}

View File

@ -0,0 +1,118 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dialog_freeroute_exchange.h
// Purpose:
// Author: jean-pierre Charras
// Modified by:
// Created: 14/03/2008 09:19:27
// RCS-ID:
// Copyright: kicad team
// Licence:
/////////////////////////////////////////////////////////////////////////////
// Generated by DialogBlocks (unregistered), 14/03/2008 09:19:27
#ifndef _DIALOG_FREEROUTE_EXCHANGE_H_
#define _DIALOG_FREEROUTE_EXCHANGE_H_
/*!
* Includes
*/
////@begin includes
////@end includes
/*!
* Forward declarations
*/
////@begin forward declarations
////@end forward declarations
/*!
* Control identifiers
*/
////@begin control identifiers
#define ID_DIALOG_FREEROUTE_EXCHANGE 10000
#define ID_CREATE_EXPORT_DSN_FILE 10001
#define ID_RUN_FREEROUTE 10002
#define ID_IMPORT_FREEROUTE_DSN_FILE 10003
#define ID_GOTO_FREEROUTE_WEB_SITE 10004
#define ID_TEXTCTRL1 10005
#define ID_TEXTCTRL 10006
#define SYMBOL_DIALOG_FREEROUTE_EXCHANGE_STYLE wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxTAB_TRAVERSAL
#define SYMBOL_DIALOG_FREEROUTE_EXCHANGE_TITLE _("dialog_freeroute_exchange")
#define SYMBOL_DIALOG_FREEROUTE_EXCHANGE_IDNAME ID_DIALOG_FREEROUTE_EXCHANGE
#define SYMBOL_DIALOG_FREEROUTE_EXCHANGE_SIZE wxSize(400, 300)
#define SYMBOL_DIALOG_FREEROUTE_EXCHANGE_POSITION wxDefaultPosition
////@end control identifiers
/*!
* dialog_freeroute_exchange class declaration
*/
class dialog_freeroute_exchange: public wxDialog
{
DECLARE_DYNAMIC_CLASS( dialog_freeroute_exchange )
DECLARE_EVENT_TABLE()
public:
/// Constructors
dialog_freeroute_exchange();
dialog_freeroute_exchange( WinEDA_PcbFrame* parent, wxWindowID id = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_IDNAME, const wxString& caption = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_TITLE, const wxPoint& pos = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_POSITION, const wxSize& size = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_SIZE, long style = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_STYLE );
/// Creation
bool Create( wxWindow* parent, wxWindowID id = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_IDNAME, const wxString& caption = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_TITLE, const wxPoint& pos = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_POSITION, const wxSize& size = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_SIZE, long style = SYMBOL_DIALOG_FREEROUTE_EXCHANGE_STYLE );
/// Destructor
~dialog_freeroute_exchange();
/// Initialises member variables
void Init();
/// Creates the controls and sizers
void CreateControls();
////@begin dialog_freeroute_exchange event handler declarations
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_CREATE_EXPORT_DSN_FILE
void OnCreateExportDsnFileClick( wxCommandEvent& event );
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_RUN_FREEROUTE
void OnRunFreerouteClick( wxCommandEvent& event );
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_IMPORT_FREEROUTE_DSN_FILE
void OnImportFreerouteDsnFileClick( wxCommandEvent& event );
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CLOSE
void OnCloseClick( wxCommandEvent& event );
/// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_GOTO_FREEROUTE_WEB_SITE
void OnGotoFreerouteWebSiteClick( wxCommandEvent& event );
////@end dialog_freeroute_exchange event handler declarations
////@begin dialog_freeroute_exchange member function declarations
/// Retrieves bitmap resources
wxBitmap GetBitmapResource( const wxString& name );
/// Retrieves icon resources
wxIcon GetIconResource( const wxString& name );
////@end dialog_freeroute_exchange member function declarations
/// Should we show tooltips?
static bool ShowToolTips();
////@begin dialog_freeroute_exchange member variables
wxTextCtrl* m_FreerouteURLName;
wxTextCtrl* m_FreerouteURLCommandString;
////@end dialog_freeroute_exchange member variables
WinEDA_PcbFrame* m_Parent;
};
#endif
// _DIALOG_FREEROUTE_EXCHANGE_H_

View File

@ -16,6 +16,7 @@ OBJECTS= $(TARGET).o classpcb.o\
$(ZONE_FILES)\ $(ZONE_FILES)\
$(SPECCTRA_TOOLS)\ $(SPECCTRA_TOOLS)\
lay2plot.o\ lay2plot.o\
dialog_freeroute_exchange.o\
modedit_undo_redo.o\ modedit_undo_redo.o\
block_module_editor.o\ block_module_editor.o\
onrightclick.o\ onrightclick.o\

View File

@ -126,6 +126,7 @@ BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame )
WinEDA_PcbFrame::Process_Special_Functions ) WinEDA_PcbFrame::Process_Special_Functions )
EVT_TOOL( ID_TOOLBARH_PCB_AUTOPLACE, WinEDA_PcbFrame::AutoPlace ) EVT_TOOL( ID_TOOLBARH_PCB_AUTOPLACE, WinEDA_PcbFrame::AutoPlace )
EVT_TOOL( ID_TOOLBARH_PCB_AUTOROUTE, WinEDA_PcbFrame::AutoPlace ) EVT_TOOL( ID_TOOLBARH_PCB_AUTOROUTE, WinEDA_PcbFrame::AutoPlace )
EVT_TOOL( ID_TOOLBARH_PCB_FREEROUTE_ACCESS, WinEDA_PcbFrame::Access_to_External_Tool )
// Option toolbar // Option toolbar
EVT_TOOL_RANGE( ID_TB_OPTIONS_START, ID_TB_OPTIONS_END, EVT_TOOL_RANGE( ID_TB_OPTIONS_START, ID_TB_OPTIONS_END,

View File

@ -307,6 +307,11 @@ void WinEDA_PcbFrame::ReCreateHToolbar()
m_HToolBar->AddTool( ID_TOOLBARH_PCB_AUTOROUTE, wxEmptyString, BITMAP( mode_track_xpm ), m_HToolBar->AddTool( ID_TOOLBARH_PCB_AUTOROUTE, wxEmptyString, BITMAP( mode_track_xpm ),
_( "Mode Track and Autorouting" ), wxITEM_CHECK ); _( "Mode Track and Autorouting" ), wxITEM_CHECK );
// Fast call to FreeROUTE Web Bases router
m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_TOOLBARH_PCB_FREEROUTE_ACCESS, wxEmptyString, BITMAP( web_support_xpm ),
_( "Fast access to theWeb Based FreeROUTE advanced routed" ));
// after adding the buttons to the toolbar, must call Realize() to reflect // after adding the buttons to the toolbar, must call Realize() to reflect
// the changes // the changes