more about Netclasses work
This commit is contained in:
parent
9b4d215b52
commit
24ce940901
|
@ -51,11 +51,11 @@ class GENERAL_COLLECTORS_GUIDE;
|
|||
class WinEDA_PcbFrame: public WinEDA_BasePcbFrame
|
||||
{
|
||||
public:
|
||||
WinEDAChoiceBox* m_SelLayerBox;
|
||||
WinEDAChoiceBox* m_SelTrackWidthBox;
|
||||
wxTextCtrl* m_ClearanceBox;
|
||||
wxTextCtrl* m_NetClassSelectedBox;
|
||||
WinEDAChoiceBox* m_SelViaSizeBox;
|
||||
WinEDAChoiceBox* m_SelLayerBox; // a combo box to display and select active layer
|
||||
WinEDAChoiceBox* m_SelTrackWidthBox; // a combo box to display and select current track width
|
||||
WinEDAChoiceBox* m_SelViaSizeBox; // a combo box to display and select current via diameter
|
||||
wxTextCtrl* m_ClearanceBox; // a text ctrl to display the current tracks and vias clearance
|
||||
wxTextCtrl* m_NetClassSelectedBox; // a text ctrl to display the current NetClass
|
||||
|
||||
private:
|
||||
bool m_TrackAndViasSizesList_Changed;
|
||||
|
@ -90,6 +90,7 @@ public:
|
|||
|
||||
void OnCloseWindow( wxCloseEvent& Event );
|
||||
void Process_Special_Functions( wxCommandEvent& event );
|
||||
void Tracks_and_Vias_Size_Event( wxCommandEvent& event );
|
||||
|
||||
void ProcessMuWaveFunctions( wxCommandEvent& event );
|
||||
void MuWaveCommand( wxDC* DC, const wxPoint& MousePos );
|
||||
|
@ -388,7 +389,6 @@ public:
|
|||
|
||||
// Track and via edition:
|
||||
void Via_Edit_Control( wxCommandEvent& event );
|
||||
void DisplayTrackSettings();
|
||||
|
||||
/**
|
||||
* Function Other_Layer_Route
|
||||
|
|
Binary file not shown.
1427
internat/fr/kicad.po
1427
internat/fr/kicad.po
File diff suppressed because it is too large
Load Diff
|
@ -79,6 +79,7 @@ set(PCBNEW_SRCS
|
|||
edit_pcb_text.cpp
|
||||
edit_track_width.cpp
|
||||
edtxtmod.cpp
|
||||
event_handlers_tracks_vias_sizes.cpp
|
||||
export_gencad.cpp
|
||||
files.cpp
|
||||
find.cpp
|
||||
|
|
|
@ -81,10 +81,13 @@ BOARD::~BOARD()
|
|||
* Must be called after a netclass selection (or after a netclass parameter change
|
||||
* Initialise vias and tracks values displayed in comb boxs of the auxiliary toolbar
|
||||
* and some others parametres (netclass name ....)
|
||||
* @param aNetClassName = the new netclass name
|
||||
* @return true if lists of tracks and vias sizes are modified
|
||||
*/
|
||||
void BOARD::SetCurrentNetClass( const wxString & aNetClassName)
|
||||
bool BOARD::SetCurrentNetClass( const wxString & aNetClassName)
|
||||
{
|
||||
NETCLASS * netClass = m_NetClasses.Find(aNetClassName);
|
||||
bool lists_sizes_modified = false;
|
||||
|
||||
// if not found (should not happen) use the default
|
||||
if ( netClass == NULL )
|
||||
|
@ -94,12 +97,34 @@ BOARD::~BOARD()
|
|||
|
||||
// Initialize others values:
|
||||
if( m_ViaSizeHistory.size() == 0 )
|
||||
{
|
||||
lists_sizes_modified = true;
|
||||
m_ViaSizeHistory.push_back(0);
|
||||
}
|
||||
if( m_TrackWidthHistory.size() == 0 )
|
||||
{
|
||||
lists_sizes_modified = true;
|
||||
m_TrackWidthHistory.push_back(0);
|
||||
}
|
||||
|
||||
if( m_ViaSizeHistory[0] != netClass->GetViaDiameter() )
|
||||
lists_sizes_modified = true;
|
||||
m_ViaSizeHistory[0] = netClass->GetViaDiameter();
|
||||
|
||||
if( m_TrackWidthHistory[0] != netClass->GetTrackWidth() )
|
||||
lists_sizes_modified = true;
|
||||
m_TrackWidthHistory[0] = netClass->GetTrackWidth();
|
||||
|
||||
if( m_ViaSizeSelector >= m_ViaSizeHistory.size() )
|
||||
m_ViaSizeSelector = m_ViaSizeHistory.size();
|
||||
if( m_TrackWidthSelector >= m_TrackWidthHistory.size() )
|
||||
m_TrackWidthSelector = m_TrackWidthHistory.size();
|
||||
|
||||
//Initialize track and via current size:
|
||||
g_DesignSettings.m_CurrentViaSize = m_ViaSizeHistory[m_ViaSizeSelector];
|
||||
g_DesignSettings.m_CurrentTrackWidth = m_TrackWidthHistory[m_TrackWidthSelector];
|
||||
|
||||
return lists_sizes_modified;
|
||||
}
|
||||
|
||||
wxString BOARD::GetLayerName( int aLayerIndex ) const
|
||||
|
|
|
@ -110,9 +110,9 @@ public:
|
|||
// The others values are extra values
|
||||
std::vector <int> m_ViaSizeHistory; // Last used via sizes (max count = HISTORY_MAX_COUNT)
|
||||
std::vector <int> m_TrackWidthHistory; // Last used track widths (max count = HISTORY_MAX_COUNT)
|
||||
int m_ViaSizeSelector; // index for m_ViaSizeHistory to select the value
|
||||
unsigned m_ViaSizeSelector; // index for m_ViaSizeHistory to select the value
|
||||
// O is the selection of the default value Netclass
|
||||
int m_TrackWidthSelector; // index for m_TrackWidthHistory to select the value
|
||||
unsigned m_TrackWidthSelector; // index for m_TrackWidthHistory to select the value
|
||||
|
||||
/**********************************/
|
||||
public:
|
||||
|
@ -369,8 +369,10 @@ public:
|
|||
* Must be called after a netclass selection (or after a netclass parameter change
|
||||
* Initialise vias and tracks values displayed in comb boxs of the auxiliary toolbar
|
||||
* and some others parametres (netclass name ....)
|
||||
* @param aNetClassName = the new netclass name
|
||||
* @return true if lists of tracks and vias sizes are modified
|
||||
*/
|
||||
void SetCurrentNetClass( const wxString & aNetClassName);
|
||||
bool SetCurrentNetClass( const wxString & aNetClassName);
|
||||
|
||||
/**
|
||||
* Function Save
|
||||
|
|
|
@ -114,8 +114,6 @@ void DIALOG_TRACKS_OPTIONS::OnButtonOkClick( wxCommandEvent& event )
|
|||
g_DesignSettings.m_MaskMargin =
|
||||
ReturnValueFromTextCtrl( *m_OptMaskMargin, m_Parent->m_InternalUnits );
|
||||
|
||||
m_Parent->DisplayTrackSettings();
|
||||
|
||||
m_Parent->AddHistory( g_DesignSettings.m_CurrentViaSize, TYPE_VIA );
|
||||
m_Parent->AddHistory( g_DesignSettings.m_CurrentTrackWidth, TYPE_TRACK );
|
||||
EndModal( 1 );
|
||||
|
|
138
pcbnew/edit.cpp
138
pcbnew/edit.cpp
|
@ -36,8 +36,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
wxClientDC dc( DrawPanel );
|
||||
BOARD_ITEM* DrawStruct = GetCurItem();
|
||||
|
||||
int toggle = 0;
|
||||
|
||||
DrawPanel->CursorOff( &dc );
|
||||
DrawPanel->PrepareGraphicContext( &dc );
|
||||
|
||||
|
@ -49,8 +47,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
{
|
||||
case wxID_CUT:
|
||||
case wxID_COPY:
|
||||
case ID_AUX_TOOLBAR_PCB_TRACK_WIDTH:
|
||||
case ID_AUX_TOOLBAR_PCB_VIA_SIZE:
|
||||
case ID_ON_GRID_SELECT:
|
||||
case ID_ON_ZOOM_SELECT:
|
||||
case ID_PCB_USER_GRID_SETUP:
|
||||
|
@ -93,17 +89,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
case ID_POPUP_PCB_SELECT_CU_LAYER:
|
||||
case ID_POPUP_PCB_SELECT_LAYER_PAIR:
|
||||
case ID_POPUP_PCB_SELECT_NO_CU_LAYER:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH:
|
||||
case ID_POPUP_PCB_SELECT_AUTO_WIDTH:
|
||||
case ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH1:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH2:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH3:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH4:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH5:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH6:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH7:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH8:
|
||||
case ID_POPUP_PCB_MOVE_TRACK_NODE:
|
||||
case ID_POPUP_PCB_DRAG_TRACK_SEGMENT_KEEP_SLOPE:
|
||||
case ID_POPUP_PCB_DRAG_TRACK_SEGMENT:
|
||||
|
@ -149,9 +134,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
SetCursor( DrawPanel->m_PanelCursor = DrawPanel->m_PanelDefaultCursor );
|
||||
break;
|
||||
|
||||
case ID_TOGGLE_PRESENT_COMMAND:
|
||||
break;
|
||||
|
||||
default: // Finish (abort ) the command
|
||||
if( DrawPanel->ManageCurseur && DrawPanel->ForceCloseManageCurseur )
|
||||
DrawPanel->ForceCloseManageCurseur( DrawPanel, &dc );
|
||||
|
@ -174,77 +156,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
Close( true );
|
||||
break;
|
||||
|
||||
case ID_TOGGLE_PRESENT_COMMAND:
|
||||
switch( m_ID_current_state )
|
||||
{
|
||||
case 0:
|
||||
toggle = 1;
|
||||
break;
|
||||
|
||||
case ID_TRACK_BUTT:
|
||||
if( DrawStruct && (DrawStruct->m_Flags & IS_NEW) )
|
||||
{
|
||||
End_Route( (TRACK*) DrawStruct, &dc );
|
||||
DrawPanel->m_AutoPAN_Request = false;
|
||||
}
|
||||
else
|
||||
toggle = 1;
|
||||
break;
|
||||
|
||||
case ID_PCB_ZONES_BUTT:
|
||||
if( End_Zone( &dc ) )
|
||||
{
|
||||
DrawPanel->m_AutoPAN_Request = false;
|
||||
SetCurItem( NULL );
|
||||
}
|
||||
else
|
||||
toggle = 1;
|
||||
break;
|
||||
|
||||
case ID_PCB_ADD_LINE_BUTT:
|
||||
case ID_PCB_ARC_BUTT:
|
||||
case ID_PCB_CIRCLE_BUTT:
|
||||
if( DrawStruct == NULL )
|
||||
{
|
||||
}
|
||||
else if( DrawStruct->Type() != TYPE_DRAWSEGMENT )
|
||||
{
|
||||
DisplayError( this, wxT( "DrawStruct Type error" ) );
|
||||
DrawPanel->m_AutoPAN_Request = false;
|
||||
}
|
||||
else if( (DrawStruct->m_Flags & IS_NEW) )
|
||||
{
|
||||
End_Edge( (DRAWSEGMENT*) DrawStruct, &dc );
|
||||
DrawPanel->m_AutoPAN_Request = false;
|
||||
SetCurItem( NULL );
|
||||
}
|
||||
else
|
||||
toggle = 1;
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
toggle = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
if( toggle )
|
||||
{
|
||||
int swap = m_ID_last_state;
|
||||
m_ID_last_state = m_ID_current_state;
|
||||
SetToolID( 0, wxCURSOR_ARROW, wxEmptyString );
|
||||
m_ID_current_state = swap;
|
||||
}
|
||||
|
||||
|
||||
//SetCursor( DrawPanel->m_PanelCursor = DrawPanel->m_PanelDefaultCursor );
|
||||
|
||||
event.SetId( m_ID_current_state );
|
||||
Process_Special_Functions( event );
|
||||
|
||||
|
||||
break;
|
||||
|
||||
case ID_OPEN_MODULE_EDITOR:
|
||||
if( m_ModuleEditFrame == NULL )
|
||||
{
|
||||
|
@ -321,7 +232,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
|
||||
case ID_TRACK_BUTT:
|
||||
SetToolID( id, wxCURSOR_PENCIL, _( "Add Tracks" ) );
|
||||
DisplayTrackSettings();
|
||||
if( (GetBoard()->m_Status_Pcb & LISTE_RATSNEST_ITEM_OK) == 0 )
|
||||
{
|
||||
Compile_Ratsnest( &dc, true );
|
||||
|
@ -989,54 +899,6 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
|
|||
}
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_WIDTH:
|
||||
break;
|
||||
|
||||
case ID_AUX_TOOLBAR_PCB_TRACK_WIDTH:
|
||||
{
|
||||
int ii = m_SelTrackWidthBox->GetChoice();
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[ii];
|
||||
DisplayTrackSettings();
|
||||
m_TrackAndViasSizesList_Changed = false;
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = false;
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_WIDTH1:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH2:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH3:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH4:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH5:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH6:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH7:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH8:
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = false;
|
||||
{
|
||||
int ii = id - ID_POPUP_PCB_SELECT_WIDTH1;
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[ii];
|
||||
DisplayTrackSettings();
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH:
|
||||
g_DesignSettings.m_UseConnectedTrackWidth =
|
||||
not g_DesignSettings.m_UseConnectedTrackWidth;
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_AUTO_WIDTH:
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = true;
|
||||
break;
|
||||
|
||||
case ID_AUX_TOOLBAR_PCB_VIA_SIZE:
|
||||
{
|
||||
int ii = m_SelViaSizeBox->GetChoice();
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[ii];
|
||||
DisplayTrackSettings();
|
||||
m_TrackAndViasSizesList_Changed = false;
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_MOVE_TRACK_SEGMENT:
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
|
|
|
@ -14,29 +14,6 @@
|
|||
#include "protos.h"
|
||||
|
||||
|
||||
/* Routines Locales */
|
||||
|
||||
/* variables locales */
|
||||
|
||||
/***********************************************/
|
||||
void WinEDA_PcbFrame::DisplayTrackSettings()
|
||||
/***********************************************/
|
||||
|
||||
/* Display the current track width and via diameter
|
||||
*/
|
||||
{
|
||||
wxString msg;
|
||||
wxString buftrc, bufvia;
|
||||
|
||||
valeur_param( g_DesignSettings.m_CurrentTrackWidth, buftrc );
|
||||
valeur_param( g_DesignSettings.m_CurrentViaSize, bufvia );
|
||||
msg.Printf( _( "Track Width: %s Vias Size : %s" ),
|
||||
buftrc.GetData(), bufvia.GetData() );
|
||||
Affiche_Message( msg );
|
||||
m_TrackAndViasSizesList_Changed = TRUE;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************/
|
||||
void WinEDA_PcbFrame::Ratsnest_On_Off( wxDC* DC )
|
||||
/***********************************************/
|
||||
|
|
|
@ -92,9 +92,6 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* aTrack, wxDC* DC )
|
|||
BOARD_ITEM* LockPoint;
|
||||
wxPoint pos = GetScreen()->m_Curseur;
|
||||
|
||||
static int InitialTrackWidthValue; /* first track segment width.
|
||||
* used when we are in the auto tack width mode */
|
||||
|
||||
DrawPanel->ManageCurseur = ShowNewTrackWhenMovingCursor;
|
||||
DrawPanel->ForceCloseManageCurseur = Exit_Editrack;
|
||||
|
||||
|
@ -110,8 +107,6 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* aTrack, wxDC* DC )
|
|||
if( g_HightLigt_Status )
|
||||
Hight_Light( DC );
|
||||
|
||||
InitialTrackWidthValue = -1; // Set to "no value"
|
||||
|
||||
g_CurrentTrackList.PushBack( new TRACK( GetBoard() ) );
|
||||
g_CurrentTrackSegment->m_Flags = IS_NEW;
|
||||
|
||||
|
@ -153,26 +148,22 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* aTrack, wxDC* DC )
|
|||
|
||||
Hight_Light( DC );
|
||||
|
||||
// Display info about track Net class, and init track and vias sizes:
|
||||
g_CurrentTrackSegment->SetNet( g_HightLigth_NetCode );
|
||||
GetBoard()->SetCurrentNetClass( g_CurrentTrackSegment->GetNetClassName() );
|
||||
m_TrackAndViasSizesList_Changed = true;
|
||||
AuxiliaryToolBar_Update_UI();
|
||||
|
||||
g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer );
|
||||
g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth;
|
||||
|
||||
if( g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
{
|
||||
if( TrackOnStartPoint && TrackOnStartPoint->Type() == TYPE_TRACK )
|
||||
{
|
||||
InitialTrackWidthValue = TrackOnStartPoint->m_Width;
|
||||
g_CurrentTrackSegment->m_Width = InitialTrackWidthValue;
|
||||
}
|
||||
g_CurrentTrackSegment->m_Width = TrackOnStartPoint->m_Width;
|
||||
}
|
||||
|
||||
g_CurrentTrackSegment->m_Start = pos;
|
||||
g_CurrentTrackSegment->m_End = pos;
|
||||
g_CurrentTrackSegment->SetNet( g_HightLigth_NetCode );
|
||||
|
||||
// Display info about track Net class:
|
||||
GetBoard()->SetCurrentNetClass( g_CurrentTrackSegment->GetNetClassName() );
|
||||
m_TrackAndViasSizesList_Changed = true;
|
||||
AuxiliaryToolBar_DesignRules_Update_UI();
|
||||
|
||||
if( pt_pad )
|
||||
{
|
||||
|
@ -271,17 +262,16 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* aTrack, wxDC* DC )
|
|||
newTrack->m_Start = newTrack->m_End;
|
||||
|
||||
newTrack->SetLayer( ( (PCB_SCREEN*) GetScreen() )->m_Active_Layer );
|
||||
|
||||
if( !g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
{
|
||||
newTrack->m_Width = g_DesignSettings.m_CurrentTrackWidth;
|
||||
}
|
||||
|
||||
D( g_CurrentTrackList.VerifyListIntegrity(); );
|
||||
D( g_CurrentTrackList.VerifyListIntegrity(); );
|
||||
|
||||
/* Show the new position */
|
||||
ShowNewTrackWhenMovingCursor( DrawPanel, DC, false );
|
||||
}
|
||||
}
|
||||
g_CurrentTrackSegment->DisplayInfo( this );
|
||||
}
|
||||
|
||||
|
@ -674,10 +664,7 @@ static void PushTrack( WinEDA_DrawPanel* panel )
|
|||
void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase )
|
||||
/****************************************************************************/
|
||||
|
||||
/* redessin du contour de la piste lors des deplacements de la souris
|
||||
* Cette routine est utilisee comme .ManageCurseur()
|
||||
* si ShowIsolDuringCreateTrack_Item.State == RUN la marge d'isolation
|
||||
* est aussi affichee
|
||||
/* Redraw the current track beiing created when the mouse cursor is moved
|
||||
*/
|
||||
{
|
||||
D( g_CurrentTrackList.VerifyListIntegrity(); );
|
||||
|
@ -693,7 +680,7 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase
|
|||
if( showTrackClearanceMode != DO_NOT_SHOW_CLEARANCE )
|
||||
DisplayOpt.ShowTrackClearanceMode = SHOW_CLEARANCE_ALWAYS;
|
||||
|
||||
/* efface ancienne position si elle a ete deja dessinee */
|
||||
/* Erase old track */
|
||||
if( erase )
|
||||
{
|
||||
Trace_Une_Piste( panel, DC, g_FirstTrackSegment, g_CurrentTrackList.GetCount(), GR_XOR );
|
||||
|
@ -715,10 +702,9 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase
|
|||
if( g_CurrentTrackList.GetCount() == 0 )
|
||||
return;
|
||||
|
||||
/* dessin de la nouvelle piste : mise a jour du point d'arrivee */
|
||||
// Set track parameters, that can be modified while creating the track
|
||||
g_CurrentTrackSegment->SetLayer( screen->m_Active_Layer );
|
||||
if( !g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
g_CurrentTrackSegment->m_Width = netclass->GetTrackWidth();
|
||||
g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth;
|
||||
|
||||
if( g_TwoSegmentTrackBuild )
|
||||
{
|
||||
|
@ -728,7 +714,7 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase
|
|||
previous_track->SetLayer( screen->m_Active_Layer );
|
||||
|
||||
if( !g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
previous_track->m_Width = netclass->GetTrackWidth();
|
||||
previous_track->m_Width = g_DesignSettings.m_CurrentTrackWidth;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -760,6 +746,7 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase
|
|||
g_CurrentTrackSegment->m_End = screen->m_Curseur;
|
||||
}
|
||||
|
||||
/* Redraw the new track */
|
||||
D( g_CurrentTrackList.VerifyListIntegrity(); );
|
||||
Trace_Une_Piste( panel, DC, g_FirstTrackSegment, g_CurrentTrackList.GetCount(), GR_XOR );
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
#include "wx/msw/wx.rc"
|
|
@ -0,0 +1,103 @@
|
|||
/* event_handlers_tracks_vias_sizes.cpp
|
||||
*
|
||||
* Handlers for popup and toolbars events relative
|
||||
* to the tracks and vias sizes
|
||||
*/
|
||||
|
||||
|
||||
#include "fctsys.h"
|
||||
|
||||
//#include "appl_wxstruct.h"
|
||||
#include "class_drawpanel.h"
|
||||
#include "confirm.h"
|
||||
#include "pcbnew_id.h"
|
||||
|
||||
#include "pcbnew.h"
|
||||
#include "wxPcbStruct.h"
|
||||
|
||||
/** Function Tracks_and_Vias_Size_Event
|
||||
* Event handler for tracks and vias size selection (and some options)
|
||||
* relative to toolbars and popup events
|
||||
*/
|
||||
void WinEDA_PcbFrame::Tracks_and_Vias_Size_Event( wxCommandEvent& event )
|
||||
{
|
||||
int ii;
|
||||
int id = event.GetId();
|
||||
|
||||
/* Note: none of these events require aborting the current command (if any)
|
||||
* (like move, edit or block command)
|
||||
* so we do not test for a current command in progress and call
|
||||
* DrawPanel->ForceCloseManageCurseur( DrawPanel, &dc );
|
||||
*/
|
||||
switch( id )
|
||||
{
|
||||
case ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH:
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = not g_DesignSettings.m_UseConnectedTrackWidth;
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[m_SelTrackWidthBox->GetChoice()];
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[m_SelViaSizeBox->GetChoice()];
|
||||
AuxiliaryToolBar_Update_UI( );
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_USE_NETCLASS_VALUES:
|
||||
GetBoard()->m_TrackWidthSelector = 0;
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[0];
|
||||
GetBoard()->m_ViaSizeSelector = 0;
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[0];
|
||||
AuxiliaryToolBar_Update_UI( );
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_AUTO_WIDTH:
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = true;
|
||||
AuxiliaryToolBar_Update_UI( );
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_WIDTH1:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH2:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH3:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH4:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH5:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH6:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH7:
|
||||
case ID_POPUP_PCB_SELECT_WIDTH8:
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
g_DesignSettings.m_UseConnectedTrackWidth = false;
|
||||
ii = id - ID_POPUP_PCB_SELECT_WIDTH1;
|
||||
GetBoard()->m_TrackWidthSelector = ii;
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[ii];
|
||||
AuxiliaryToolBar_Update_UI( );
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE1:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE2:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE3:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE4:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE5:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE6:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE7:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE8: // selec the new current value for via size (via diameter)
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
ii = id - ID_POPUP_PCB_SELECT_VIASIZE1;
|
||||
GetBoard()->m_ViaSizeSelector = ii;
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[ii];
|
||||
AuxiliaryToolBar_Update_UI( );
|
||||
break;
|
||||
|
||||
|
||||
case ID_AUX_TOOLBAR_PCB_TRACK_WIDTH:
|
||||
ii = m_SelTrackWidthBox->GetChoice();
|
||||
g_DesignSettings.m_CurrentTrackWidth = GetBoard()->m_TrackWidthHistory[ii];
|
||||
GetBoard()->m_TrackWidthSelector = ii;
|
||||
break;
|
||||
|
||||
case ID_AUX_TOOLBAR_PCB_VIA_SIZE:
|
||||
ii = m_SelViaSizeBox->GetChoice();
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[ii];
|
||||
GetBoard()->m_ViaSizeSelector = ii;
|
||||
break;
|
||||
|
||||
default:
|
||||
wxMessageBox( wxT( "WinEDA_PcbFrame::Tracks_and_Vias_Size_Event() error") );
|
||||
break;
|
||||
}
|
||||
}
|
|
@ -95,7 +95,6 @@ static Ki_HotkeyInfo HkTrackDisplayMode(wxT("Track Display Mode"),
|
|||
HK_SWITCH_TRACK_DISPLAY_MODE, 'K');
|
||||
static Ki_HotkeyInfo HkAddModule(wxT("Add Module"), HK_ADD_MODULE, 'O');
|
||||
static Ki_HotkeyInfo HkAddTrack(wxT("Add Track or Via"), HK_ADD_TRACK, 'J');
|
||||
static Ki_HotkeyInfo HkToggle(wxT("Toggle Present Command"), HK_TOGGLE, 'E');
|
||||
|
||||
// List of common hotkey descriptors
|
||||
Ki_HotkeyInfo
|
||||
|
@ -112,7 +111,7 @@ Ki_HotkeyInfo* s_board_edit_Hotkey_List[] = { &HkTrackDisplayMode, &HkDelete,
|
|||
&HkSwitch2InnerLayer2, &HkSwitch2InnerLayer3, &HkSwitch2InnerLayer4,
|
||||
&HkSwitch2InnerLayer5, &HkSwitch2InnerLayer6, &HkSwitch2ComponentLayer,
|
||||
&HkSwitch2NextCopperLayer, &HkSwitch2PreviousCopperLayer, &HkAddModule,
|
||||
&HkAddTrack, &HkToggle, NULL };
|
||||
&HkAddTrack, NULL };
|
||||
|
||||
// List of hotkey descriptors for the module editor
|
||||
Ki_HotkeyInfo* s_module_edit_Hotkey_List[] = { NULL };
|
||||
|
@ -276,10 +275,6 @@ void WinEDA_PcbFrame::OnHotKey(wxDC* DC, int hotkey, EDA_BaseStruct* DrawStruct)
|
|||
cmd.SetId(ID_TRACK_BUTT);
|
||||
GetEventHandler()->ProcessEvent(cmd);
|
||||
break;
|
||||
case HK_TOGGLE:
|
||||
cmd.SetId(ID_TOGGLE_PRESENT_COMMAND);
|
||||
GetEventHandler()->ProcessEvent(cmd);
|
||||
break;
|
||||
|
||||
case HK_ZOOM_AUTO:
|
||||
cmd.SetId(ID_ZOOM_PAGE);
|
||||
|
|
|
@ -50,7 +50,6 @@ enum hotkey_id_commnand {
|
|||
HK_SWITCH_LAYER_TO_INNER14,
|
||||
HK_ADD_MODULE,
|
||||
HK_ADD_TRACK,
|
||||
HK_TOGGLE,
|
||||
HK_MOVE_TRACK,
|
||||
HK_SLIDE_TRACK
|
||||
};
|
||||
|
|
|
@ -207,7 +207,7 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu )
|
|||
|
||||
case TYPE_TRACK:
|
||||
case TYPE_VIA:
|
||||
locate_track = TRUE;
|
||||
locate_track = true;
|
||||
createPopupMenuForTracks( (TRACK*) item, aPopMenu );
|
||||
break;
|
||||
|
||||
|
@ -545,13 +545,13 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
|
|||
|
||||
ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu,
|
||||
ID_POPUP_PCB_SETFLAGS_TRACK_MNU, _( "Set Flags" ), flag_xpm );
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_ON_TRACKSEG, _( "Locked: Yes" ), wxEmptyString, TRUE );
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_OFF_TRACKSEG, _( "Locked: No" ), wxEmptyString, TRUE );
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_ON_TRACKSEG, _( "Locked: Yes" ), wxEmptyString, true );
|
||||
track_mnu->Append( ID_POPUP_PCB_LOCK_OFF_TRACKSEG, _( "Locked: No" ), wxEmptyString, true );
|
||||
|
||||
if( Track->GetState( SEGM_FIXE ) )
|
||||
track_mnu->Check( ID_POPUP_PCB_LOCK_ON_TRACKSEG, TRUE );
|
||||
track_mnu->Check( ID_POPUP_PCB_LOCK_ON_TRACKSEG, true );
|
||||
else
|
||||
track_mnu->Check( ID_POPUP_PCB_LOCK_OFF_TRACKSEG, TRUE );
|
||||
track_mnu->Check( ID_POPUP_PCB_LOCK_OFF_TRACKSEG, true );
|
||||
|
||||
if( !flags )
|
||||
{
|
||||
|
@ -830,8 +830,9 @@ void WinEDA_PcbFrame::createPopUpMenuForMarkers( MARKER_PCB* aMarker, wxMenu* aP
|
|||
static wxMenu* Append_Track_Width_List( BOARD * aBoard )
|
||||
/*******************************************************/
|
||||
|
||||
/* create a wxMenu * which shows the last used track widths and via diameters
|
||||
* @return a pointeur to the menu
|
||||
/** function Append_Track_Width_List
|
||||
* creates a wxMenu * which shows the last used track widths and via diameters
|
||||
* @return a pointeur to the menu
|
||||
*/
|
||||
{
|
||||
wxString msg;
|
||||
|
@ -847,10 +848,16 @@ static wxMenu* Append_Track_Width_List( BOARD * aBoard )
|
|||
_( "Auto Width" ),
|
||||
_(
|
||||
"Use the track width when starting on a track, otherwise the current track width" ),
|
||||
TRUE );
|
||||
true );
|
||||
|
||||
if( g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_AUTO_WIDTH, TRUE );
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_AUTO_WIDTH, true );
|
||||
|
||||
if( aBoard->m_ViaSizeSelector != 0 || aBoard->m_TrackWidthSelector != 0 )
|
||||
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_USE_NETCLASS_VALUES,
|
||||
_( "Use Netclass Values" ),
|
||||
_( "Use track and via sizes from their Netclass values" ),
|
||||
true );
|
||||
|
||||
for( unsigned ii = 0; ii < aBoard->m_TrackWidthHistory.size(); ii++ )
|
||||
{
|
||||
|
@ -862,11 +869,18 @@ static wxMenu* Append_Track_Width_List( BOARD * aBoard )
|
|||
else
|
||||
msg.Printf( _( "Track %.3f" ), value );
|
||||
|
||||
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_WIDTH1 + ii, msg, wxEmptyString, TRUE );
|
||||
if ( ii == 0 )
|
||||
msg << _(" (Use NetClass)" );
|
||||
|
||||
if( (aBoard->m_TrackWidthHistory[ii] == g_DesignSettings.m_CurrentTrackWidth)
|
||||
&& !g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_WIDTH1 + ii, TRUE );
|
||||
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_WIDTH1 + ii, msg, wxEmptyString, true );
|
||||
|
||||
}
|
||||
if( g_DesignSettings.m_UseConnectedTrackWidth )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_AUTO_WIDTH, true );
|
||||
else
|
||||
{
|
||||
if( aBoard->m_TrackWidthSelector < (int)aBoard->m_TrackWidthHistory.size() )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_WIDTH1 + aBoard->m_TrackWidthSelector, true );
|
||||
}
|
||||
|
||||
trackwidth_menu->AppendSeparator();
|
||||
|
@ -879,10 +893,12 @@ static wxMenu* Append_Track_Width_List( BOARD * aBoard )
|
|||
msg.Printf( _( "Via %.1f" ), value * 1000 );
|
||||
else
|
||||
msg.Printf( _( "Via %.3f" ), value );
|
||||
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_VIASIZE1 + ii, msg, wxEmptyString, TRUE );
|
||||
if( aBoard->m_ViaSizeHistory[ii] == g_DesignSettings.m_CurrentViaSize )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_VIASIZE1 + ii, TRUE );
|
||||
if ( ii == 0 )
|
||||
msg << _(" (Use NetClass)" );
|
||||
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_VIASIZE1 + ii, msg, wxEmptyString, true );
|
||||
}
|
||||
if( aBoard->m_ViaSizeSelector < (int)aBoard->m_ViaSizeHistory.size() )
|
||||
trackwidth_menu->Check( ID_POPUP_PCB_SELECT_VIASIZE1 + aBoard->m_ViaSizeSelector, true );
|
||||
|
||||
return trackwidth_menu;
|
||||
}
|
||||
|
|
|
@ -20,10 +20,10 @@
|
|||
#include "dialog_design_rules.h"
|
||||
|
||||
// Keys used in read/write config
|
||||
#define PCB_CURR_GRID wxT( "PcbCurrGrid" )
|
||||
#define PCB_MAGNETIC_PADS_OPT wxT( "PcbMagPadOpt" )
|
||||
#define PCB_CURR_GRID wxT( "PcbCurrGrid" )
|
||||
#define PCB_MAGNETIC_PADS_OPT wxT( "PcbMagPadOpt" )
|
||||
#define PCB_MAGNETIC_TRACKS_OPT wxT( "PcbMagTrackOpt" )
|
||||
#define SHOW_MICROWAVE_TOOLS wxT( "ShowMicrowaveTools" )
|
||||
#define SHOW_MICROWAVE_TOOLS wxT( "ShowMicrowaveTools" )
|
||||
|
||||
|
||||
/*******************************/
|
||||
|
@ -31,175 +31,178 @@
|
|||
/*******************************/
|
||||
|
||||
BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame )
|
||||
EVT_SOCKET( ID_EDA_SOCKET_EVENT_SERV, WinEDA_PcbFrame::OnSockRequestServer )
|
||||
EVT_SOCKET( ID_EDA_SOCKET_EVENT, WinEDA_PcbFrame::OnSockRequest )
|
||||
EVT_SOCKET( ID_EDA_SOCKET_EVENT_SERV, WinEDA_PcbFrame::OnSockRequestServer )
|
||||
EVT_SOCKET( ID_EDA_SOCKET_EVENT, WinEDA_PcbFrame::OnSockRequest )
|
||||
|
||||
EVT_KICAD_CHOICEBOX( ID_ON_ZOOM_SELECT, WinEDA_PcbFrame::OnSelectZoom )
|
||||
EVT_KICAD_CHOICEBOX( ID_ON_GRID_SELECT, WinEDA_PcbFrame::OnSelectGrid )
|
||||
EVT_KICAD_CHOICEBOX( ID_ON_ZOOM_SELECT, WinEDA_PcbFrame::OnSelectZoom )
|
||||
EVT_KICAD_CHOICEBOX( ID_ON_GRID_SELECT, WinEDA_PcbFrame::OnSelectGrid )
|
||||
|
||||
EVT_CLOSE( WinEDA_PcbFrame::OnCloseWindow )
|
||||
EVT_SIZE( WinEDA_PcbFrame::OnSize )
|
||||
EVT_CLOSE( WinEDA_PcbFrame::OnCloseWindow )
|
||||
EVT_SIZE( WinEDA_PcbFrame::OnSize )
|
||||
|
||||
EVT_TOOL_RANGE( ID_ZOOM_IN, ID_ZOOM_PAGE, WinEDA_PcbFrame::OnZoom )
|
||||
EVT_TOOL_RANGE( ID_ZOOM_IN, ID_ZOOM_PAGE, WinEDA_PcbFrame::OnZoom )
|
||||
|
||||
EVT_TOOL( ID_LOAD_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_MENU_READ_LAST_SAVED_VERSION_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_MENU_RECOVER_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_NEW_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_SAVE_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_OPEN_MODULE_EDITOR, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_LOAD_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_MENU_READ_LAST_SAVED_VERSION_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_MENU_RECOVER_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_NEW_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_SAVE_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_OPEN_MODULE_EDITOR, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
// Menu Files:
|
||||
EVT_MENU( ID_MAIN_MENUBAR, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MAIN_MENUBAR, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU( ID_LOAD_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_NEW_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_SAVE_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_APPEND_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_SAVE_BOARD_AS, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU_RANGE( wxID_FILE1, wxID_FILE9, WinEDA_PcbFrame::OnFileHistory )
|
||||
EVT_MENU( ID_LOAD_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_NEW_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_SAVE_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_APPEND_FILE, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU( ID_SAVE_BOARD_AS, WinEDA_PcbFrame::Files_io )
|
||||
EVT_MENU_RANGE( wxID_FILE1, wxID_FILE9, WinEDA_PcbFrame::OnFileHistory )
|
||||
|
||||
EVT_MENU( ID_GEN_PLOT, WinEDA_PcbFrame::ToPlotter )
|
||||
EVT_MENU( ID_GEN_PLOT, WinEDA_PcbFrame::ToPlotter )
|
||||
|
||||
EVT_MENU( ID_GEN_EXPORT_SPECCTRA, WinEDA_PcbFrame::ExportToSpecctra )
|
||||
EVT_MENU( ID_GEN_EXPORT_FILE_GENCADFORMAT, WinEDA_PcbFrame::ExportToGenCAD )
|
||||
EVT_MENU( ID_GEN_EXPORT_FILE_MODULE_REPORT,
|
||||
WinEDA_PcbFrame::GenModuleReport )
|
||||
EVT_MENU( ID_GEN_EXPORT_SPECCTRA, WinEDA_PcbFrame::ExportToSpecctra )
|
||||
EVT_MENU( ID_GEN_EXPORT_FILE_GENCADFORMAT, WinEDA_PcbFrame::ExportToGenCAD )
|
||||
EVT_MENU( ID_GEN_EXPORT_FILE_MODULE_REPORT,
|
||||
WinEDA_PcbFrame::GenModuleReport )
|
||||
|
||||
EVT_MENU( ID_GEN_IMPORT_SPECCTRA_SESSION,
|
||||
WinEDA_PcbFrame::ImportSpecctraSession )
|
||||
EVT_MENU( ID_GEN_IMPORT_SPECCTRA_DESIGN,
|
||||
WinEDA_PcbFrame::ImportSpecctraDesign )
|
||||
EVT_MENU( ID_GEN_IMPORT_SPECCTRA_SESSION,
|
||||
WinEDA_PcbFrame::ImportSpecctraSession )
|
||||
EVT_MENU( ID_GEN_IMPORT_SPECCTRA_DESIGN,
|
||||
WinEDA_PcbFrame::ImportSpecctraDesign )
|
||||
|
||||
EVT_MENU( ID_MENU_ARCHIVE_NEW_MODULES,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_ARCHIVE_ALL_MODULES,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_ARCHIVE_NEW_MODULES,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_ARCHIVE_ALL_MODULES,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU( ID_EXIT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_EXIT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
// menu Config
|
||||
EVT_MENU_RANGE( ID_CONFIG_AND_PREFERENCES_START,
|
||||
ID_CONFIG_AND_PREFERENCES_END,
|
||||
WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU_RANGE( ID_CONFIG_AND_PREFERENCES_START,
|
||||
ID_CONFIG_AND_PREFERENCES_END,
|
||||
WinEDA_PcbFrame::Process_Config )
|
||||
|
||||
EVT_MENU( ID_COLORS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_OPTIONS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_COPPER_LAYERS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_TRACK_SIZE_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_DRAWINGS_WIDTHS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_PAD_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_CONFIG_SAVE, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_CONFIG_READ, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_DISPLAY_OPTIONS_SETUP, WinEDA_PcbFrame::InstallDisplayOptionsDialog )
|
||||
EVT_MENU( ID_COLORS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_OPTIONS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_COPPER_LAYERS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_TRACK_SIZE_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_DRAWINGS_WIDTHS_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_PAD_SETUP, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_CONFIG_SAVE, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_CONFIG_READ, WinEDA_PcbFrame::Process_Config )
|
||||
EVT_MENU( ID_PCB_DISPLAY_OPTIONS_SETUP, WinEDA_PcbFrame::InstallDisplayOptionsDialog )
|
||||
|
||||
|
||||
EVT_MENU( ID_PCB_USER_GRID_SETUP,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_PCB_USER_GRID_SETUP,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU_RANGE( ID_LANGUAGE_CHOICE, ID_LANGUAGE_CHOICE_END,
|
||||
WinEDA_DrawFrame::SetLanguage )
|
||||
EVT_MENU_RANGE( ID_LANGUAGE_CHOICE, ID_LANGUAGE_CHOICE_END,
|
||||
WinEDA_DrawFrame::SetLanguage )
|
||||
|
||||
// menu Postprocess
|
||||
EVT_MENU( ID_PCB_GEN_POS_MODULES_FILE, WinEDA_PcbFrame::GenModulesPosition )
|
||||
EVT_MENU( ID_PCB_GEN_DRILL_FILE, WinEDA_PcbFrame::InstallDrillFrame )
|
||||
EVT_MENU( ID_PCB_GEN_CMP_FILE, WinEDA_PcbFrame::RecreateCmpFileFromBoard )
|
||||
EVT_MENU( ID_PCB_GEN_BOM_FILE_FROM_BOARD, WinEDA_PcbFrame::RecreateBOMFileFromBoard )
|
||||
EVT_MENU( ID_PCB_GEN_POS_MODULES_FILE, WinEDA_PcbFrame::GenModulesPosition )
|
||||
EVT_MENU( ID_PCB_GEN_DRILL_FILE, WinEDA_PcbFrame::InstallDrillFrame )
|
||||
EVT_MENU( ID_PCB_GEN_CMP_FILE, WinEDA_PcbFrame::RecreateCmpFileFromBoard )
|
||||
EVT_MENU( ID_PCB_GEN_BOM_FILE_FROM_BOARD, WinEDA_PcbFrame::RecreateBOMFileFromBoard )
|
||||
|
||||
// menu Miscellaneous
|
||||
EVT_MENU( ID_MENU_LIST_NETS, WinEDA_PcbFrame::ListNetsAndSelect )
|
||||
EVT_MENU( ID_PCB_GLOBAL_DELETE, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_PCB_CLEAN, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_PCB_SWAP_LAYERS,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_LIST_NETS, WinEDA_PcbFrame::ListNetsAndSelect )
|
||||
EVT_MENU( ID_PCB_GLOBAL_DELETE, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_PCB_CLEAN, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU( ID_MENU_PCB_SWAP_LAYERS,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
// Menu Help
|
||||
EVT_MENU( ID_GENERAL_HELP, WinEDA_DrawFrame::GetKicadHelp )
|
||||
EVT_MENU( ID_KICAD_ABOUT, WinEDA_BasicFrame::GetKicadAbout )
|
||||
EVT_MENU( ID_GENERAL_HELP, WinEDA_DrawFrame::GetKicadHelp )
|
||||
EVT_MENU( ID_KICAD_ABOUT, WinEDA_BasicFrame::GetKicadAbout )
|
||||
|
||||
// Menu 3D Frame
|
||||
EVT_MENU( ID_MENU_PCB_SHOW_3D_FRAME, WinEDA_PcbFrame::Show3D_Frame )
|
||||
EVT_MENU( ID_MENU_PCB_SHOW_3D_FRAME, WinEDA_PcbFrame::Show3D_Frame )
|
||||
|
||||
// Menu Get Design Rules Editor
|
||||
EVT_MENU( ID_MENU_PCB_SHOW_DESIGN_RULES_DIALOG, WinEDA_PcbFrame::ShowDesignRulesEditor )
|
||||
EVT_MENU( ID_MENU_PCB_SHOW_DESIGN_RULES_DIALOG, WinEDA_PcbFrame::ShowDesignRulesEditor )
|
||||
|
||||
// Horizontal toolbar
|
||||
EVT_TOOL( ID_TO_LIBRARY, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_SHEET_SET, WinEDA_DrawFrame::Process_PageSettings )
|
||||
EVT_TOOL( wxID_CUT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( wxID_COPY, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( wxID_PASTE, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_UNDO_BUTT, WinEDA_PcbFrame::GetBoardFromUndoList )
|
||||
EVT_TOOL( ID_REDO_BUTT, WinEDA_PcbFrame::GetBoardFromRedoList )
|
||||
EVT_TOOL( ID_GEN_PRINT, WinEDA_DrawFrame::ToPrinter )
|
||||
EVT_TOOL( ID_GEN_PLOT_SVG, WinEDA_DrawFrame::SVG_Print )
|
||||
EVT_TOOL( ID_GEN_PLOT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_FIND_ITEMS, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_GET_NETLIST, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_DRC_CONTROL, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_KICAD_CHOICEBOX( ID_TOOLBARH_PCB_SELECT_LAYER,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_TOOLBARH_PCB_AUTOPLACE, 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 )
|
||||
EVT_TOOL( ID_TO_LIBRARY, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_SHEET_SET, WinEDA_DrawFrame::Process_PageSettings )
|
||||
EVT_TOOL( wxID_CUT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( wxID_COPY, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( wxID_PASTE, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_UNDO_BUTT, WinEDA_PcbFrame::GetBoardFromUndoList )
|
||||
EVT_TOOL( ID_REDO_BUTT, WinEDA_PcbFrame::GetBoardFromRedoList )
|
||||
EVT_TOOL( ID_GEN_PRINT, WinEDA_DrawFrame::ToPrinter )
|
||||
EVT_TOOL( ID_GEN_PLOT_SVG, WinEDA_DrawFrame::SVG_Print )
|
||||
EVT_TOOL( ID_GEN_PLOT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_FIND_ITEMS, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_GET_NETLIST, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_DRC_CONTROL, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
WinEDA_PcbFrame::Tracks_and_Vias_Size_Event )
|
||||
EVT_KICAD_CHOICEBOX( ID_TOOLBARH_PCB_SELECT_LAYER,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
|
||||
WinEDA_PcbFrame::Tracks_and_Vias_Size_Event )
|
||||
EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
WinEDA_PcbFrame::Tracks_and_Vias_Size_Event )
|
||||
EVT_TOOL( ID_TOOLBARH_PCB_AUTOPLACE, 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
|
||||
EVT_TOOL_RANGE( ID_TB_OPTIONS_START, ID_TB_OPTIONS_END,
|
||||
WinEDA_PcbFrame::OnSelectOptionToolbar )
|
||||
EVT_TOOL_RANGE( ID_TB_OPTIONS_START, ID_TB_OPTIONS_END,
|
||||
WinEDA_PcbFrame::OnSelectOptionToolbar )
|
||||
|
||||
// Vertical toolbar:
|
||||
EVT_TOOL( ID_NO_SELECT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_HIGHLIGHT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_COMPONENT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_TRACK_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_TOGGLE_PRESENT_COMMAND, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ZONES_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_MIRE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ARC_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_CIRCLE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ADD_TEXT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ADD_LINE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_COTATION_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_DELETE_ITEM_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_SHOW_1_RATSNEST_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_PLACE_OFFSET_COORD_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_NO_SELECT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_HIGHLIGHT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_COMPONENT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_TRACK_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ZONES_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_MIRE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ARC_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_CIRCLE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ADD_TEXT_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_ADD_LINE_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_COTATION_BUTT, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_DELETE_ITEM_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_SHOW_1_RATSNEST_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_TOOL( ID_PCB_PLACE_OFFSET_COORD_BUTT,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_TOOL_RANGE( ID_PCB_MUWAVE_START_CMD, ID_PCB_MUWAVE_END_CMD,
|
||||
WinEDA_PcbFrame::ProcessMuWaveFunctions )
|
||||
EVT_TOOL_RANGE( ID_PCB_MUWAVE_START_CMD, ID_PCB_MUWAVE_END_CMD,
|
||||
WinEDA_PcbFrame::ProcessMuWaveFunctions )
|
||||
|
||||
EVT_TOOL_RCLICKED( ID_TRACK_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_CIRCLE_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ARC_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ADD_TEXT_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ADD_LINE_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_COTATION_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_TRACK_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_CIRCLE_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ARC_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ADD_TEXT_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_ADD_LINE_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
EVT_TOOL_RCLICKED( ID_PCB_COTATION_BUTT, WinEDA_PcbFrame::ToolOnRightClick )
|
||||
|
||||
EVT_MENU_RANGE( ID_POPUP_PCB_AUTOPLACE_START_RANGE,
|
||||
ID_POPUP_PCB_AUTOPLACE_END_RANGE,
|
||||
WinEDA_PcbFrame::AutoPlace )
|
||||
EVT_MENU_RANGE( ID_POPUP_PCB_AUTOPLACE_START_RANGE,
|
||||
ID_POPUP_PCB_AUTOPLACE_END_RANGE,
|
||||
WinEDA_PcbFrame::AutoPlace )
|
||||
|
||||
EVT_MENU_RANGE( ID_POPUP_PCB_START_RANGE, ID_POPUP_PCB_END_RANGE,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU_RANGE( ID_POPUP_PCB_START_RANGE, ID_POPUP_PCB_END_RANGE,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
// popup menus
|
||||
EVT_MENU( ID_POPUP_PCB_DELETE_TRACKSEG, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU_RANGE( ID_POPUP_GENERAL_START_RANGE, ID_POPUP_GENERAL_END_RANGE,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
// Tracks and vias sizes general options
|
||||
EVT_MENU_RANGE( ID_POPUP_PCB_SELECT_WIDTH_START_RANGE, ID_POPUP_PCB_SELECT_WIDTH_END_RANGE,
|
||||
WinEDA_PcbFrame::Tracks_and_Vias_Size_Event )
|
||||
|
||||
EVT_MENU_RANGE( ID_POPUP_VIA_EDIT_START_RANGE, ID_POPUP_VIA_EDIT_END_RANGE,
|
||||
WinEDA_PcbFrame::Via_Edit_Control )
|
||||
// popup menus
|
||||
EVT_MENU( ID_POPUP_PCB_DELETE_TRACKSEG, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
EVT_MENU_RANGE( ID_POPUP_GENERAL_START_RANGE, ID_POPUP_GENERAL_END_RANGE,
|
||||
WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU_RANGE( ID_POPUP_VIA_EDIT_START_RANGE, ID_POPUP_VIA_EDIT_END_RANGE,
|
||||
WinEDA_PcbFrame::Via_Edit_Control )
|
||||
|
||||
// PopUp Menus pour Zooms traites dans drawpanel.cpp
|
||||
END_EVENT_TABLE()
|
||||
|
@ -217,14 +220,14 @@ WinEDA_PcbFrame::WinEDA_PcbFrame( wxWindow* father,
|
|||
long style ) :
|
||||
WinEDA_BasePcbFrame( father, PCB_FRAME, title, pos, size, style )
|
||||
{
|
||||
wxConfig* config = wxGetApp().m_EDA_Config;
|
||||
wxConfig* config = wxGetApp().m_EDA_Config;
|
||||
|
||||
m_FrameName = wxT( "PcbFrame" );
|
||||
m_Draw_Sheet_Ref = true; // true pour avoir le cartouche dessine
|
||||
m_Draw_Auxiliary_Axis = true;
|
||||
m_SelTrackWidthBox = NULL;
|
||||
m_SelViaSizeBox = NULL;
|
||||
m_SelLayerBox = NULL;
|
||||
m_FrameName = wxT( "PcbFrame" );
|
||||
m_Draw_Sheet_Ref = true; // true pour avoir le cartouche dessine
|
||||
m_Draw_Auxiliary_Axis = true;
|
||||
m_SelTrackWidthBox = NULL;
|
||||
m_SelViaSizeBox = NULL;
|
||||
m_SelLayerBox = NULL;
|
||||
m_TrackAndViasSizesList_Changed = false;
|
||||
|
||||
SetBoard( new BOARD( NULL, this ) );
|
||||
|
@ -271,7 +274,7 @@ WinEDA_PcbFrame::WinEDA_PcbFrame( wxWindow* father,
|
|||
GetScreen()->SetGrid( ID_POPUP_GRID_LEVEL_1000 + gridselection );
|
||||
long display_microwave_tools = 0;
|
||||
config->Read( SHOW_MICROWAVE_TOOLS, &display_microwave_tools );
|
||||
if ( display_microwave_tools )
|
||||
if( display_microwave_tools )
|
||||
ReCreateAuxVToolbar();
|
||||
}
|
||||
ReCreateOptToolbar();
|
||||
|
@ -283,6 +286,7 @@ WinEDA_PcbFrame::~WinEDA_PcbFrame()
|
|||
/************************************/
|
||||
{
|
||||
extern PARAM_CFG_BASE* ParamCfgList[];
|
||||
|
||||
wxGetApp().SaveCurrentSetupValues( ParamCfgList );
|
||||
delete m_drc;
|
||||
}
|
||||
|
@ -292,7 +296,7 @@ WinEDA_PcbFrame::~WinEDA_PcbFrame()
|
|||
void WinEDA_PcbFrame::OnCloseWindow( wxCloseEvent& Event )
|
||||
/********************************************************/
|
||||
{
|
||||
wxConfig * config = wxGetApp().m_EDA_Config;
|
||||
wxConfig* config = wxGetApp().m_EDA_Config;
|
||||
|
||||
DrawPanel->m_AbortRequest = true;
|
||||
|
||||
|
@ -335,7 +339,7 @@ void WinEDA_PcbFrame::OnCloseWindow( wxCloseEvent& Event )
|
|||
}
|
||||
|
||||
// do not show the window because ScreenPcb will be deleted and we do not want any paint event
|
||||
Show(false);
|
||||
Show( false );
|
||||
ActiveScreen = ScreenPcb;
|
||||
Destroy();
|
||||
}
|
||||
|
@ -356,17 +360,18 @@ void WinEDA_PcbFrame::Show3D_Frame( wxCommandEvent& event )
|
|||
m_Draw3DFrame->Show( true );
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Display the Design Rules Editor.
|
||||
*/
|
||||
void WinEDA_PcbFrame::ShowDesignRulesEditor( wxCommandEvent& event )
|
||||
{
|
||||
DIALOG_DESIGN_RULES dR_editor( this );
|
||||
int returncode = dR_editor.ShowModal( );
|
||||
if ( returncode == wxID_OK ) // New rules, or others changes.
|
||||
int returncode = dR_editor.ShowModal();
|
||||
|
||||
if( returncode == wxID_OK ) // New rules, or others changes.
|
||||
{
|
||||
ReCreateLayerBox( NULL );
|
||||
GetScreen()->SetModify();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -105,16 +105,6 @@ enum pcbnew_ids
|
|||
ID_POPUP_PCB_IMPORT_PAD_SETTINGS,
|
||||
ID_POPUP_PCB_EXPORT_PAD_SETTINGS,
|
||||
|
||||
ID_POPUP_PCB_SELECT_WIDTH,
|
||||
ID_POPUP_PCB_SELECT_AUTO_WIDTH,
|
||||
ID_POPUP_PCB_SELECT_WIDTH1,
|
||||
ID_POPUP_PCB_SELECT_WIDTH2,
|
||||
ID_POPUP_PCB_SELECT_WIDTH3,
|
||||
ID_POPUP_PCB_SELECT_WIDTH4,
|
||||
ID_POPUP_PCB_SELECT_WIDTH5,
|
||||
ID_POPUP_PCB_SELECT_WIDTH6,
|
||||
ID_POPUP_PCB_SELECT_WIDTH7,
|
||||
ID_POPUP_PCB_SELECT_WIDTH8,
|
||||
ID_POPUP_PCB_EDIT_TRACKSEG,
|
||||
ID_POPUP_PCB_EDIT_TRACK_MNU,
|
||||
ID_POPUP_PCB_EDIT_NET,
|
||||
|
@ -157,8 +147,22 @@ enum pcbnew_ids
|
|||
ID_POPUP_PCB_GETINFO_MARKER,
|
||||
ID_POPUP_PCB_END_RANGE,
|
||||
|
||||
// Via edition
|
||||
ID_POPUP_VIA_EDIT_START_RANGE,
|
||||
// Tracks and vias sizes general options
|
||||
ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
|
||||
ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
ID_POPUP_PCB_SELECT_WIDTH_START_RANGE,
|
||||
ID_POPUP_PCB_SELECT_WIDTH,
|
||||
ID_POPUP_PCB_SELECT_AUTO_WIDTH,
|
||||
ID_POPUP_PCB_SELECT_USE_NETCLASS_VALUES,
|
||||
ID_POPUP_PCB_SELECT_WIDTH1,
|
||||
ID_POPUP_PCB_SELECT_WIDTH2,
|
||||
ID_POPUP_PCB_SELECT_WIDTH3,
|
||||
ID_POPUP_PCB_SELECT_WIDTH4,
|
||||
ID_POPUP_PCB_SELECT_WIDTH5,
|
||||
ID_POPUP_PCB_SELECT_WIDTH6,
|
||||
ID_POPUP_PCB_SELECT_WIDTH7,
|
||||
ID_POPUP_PCB_SELECT_WIDTH8,
|
||||
ID_POPUP_PCB_SELECT_VIASIZE,
|
||||
ID_POPUP_PCB_SELECT_VIASIZE1,
|
||||
ID_POPUP_PCB_SELECT_VIASIZE2,
|
||||
|
@ -168,6 +172,10 @@ enum pcbnew_ids
|
|||
ID_POPUP_PCB_SELECT_VIASIZE6,
|
||||
ID_POPUP_PCB_SELECT_VIASIZE7,
|
||||
ID_POPUP_PCB_SELECT_VIASIZE8,
|
||||
ID_POPUP_PCB_SELECT_WIDTH_END_RANGE,
|
||||
|
||||
// Via edition
|
||||
ID_POPUP_VIA_EDIT_START_RANGE,
|
||||
ID_POPUP_PCB_VIA_EDITING,
|
||||
ID_POPUP_PCB_VIA_HOLE_TO_DEFAULT,
|
||||
ID_POPUP_PCB_VIA_HOLE_TO_VALUE,
|
||||
|
@ -225,16 +233,7 @@ enum pcbnew_ids
|
|||
ID_TOOLBARH_PCB_AUTOROUTE,
|
||||
ID_TOOLBARH_PCB_FREEROUTE_ACCESS,
|
||||
|
||||
ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED2,
|
||||
ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR,
|
||||
ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED3,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED4,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED5,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED6,
|
||||
ID_AUX_TOOLBAR_PCB_UNUSED7,
|
||||
|
||||
ID_PCB_GEN_POS_MODULES_FILE,
|
||||
ID_PCB_GEN_DRILL_FILE,
|
||||
|
@ -281,9 +280,7 @@ enum pcbnew_ids
|
|||
ID_PCB_MUWAVE_TOOL_STUB_CMD,
|
||||
ID_PCB_MUWAVE_TOOL_STUB_ARC_CMD,
|
||||
ID_PCB_MUWAVE_TOOL_FUNCTION_SHAPE_CMD,
|
||||
ID_PCB_MUWAVE_END_CMD,
|
||||
|
||||
ID_TOGGLE_PRESENT_COMMAND,
|
||||
ID_PCB_MUWAVE_END_CMD
|
||||
};
|
||||
|
||||
#endif /* __PCBNEW_IDS_H__ */
|
||||
|
|
|
@ -538,11 +538,12 @@ void WinEDA_PcbFrame::ReCreateAuxVToolbar()
|
|||
void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
||||
/****************************************************/
|
||||
|
||||
/* Create auxiliary horizontal toolbar
|
||||
/* Creates auxiliary horizontal toolbar
|
||||
* displays:
|
||||
* existing track width choice
|
||||
* selection for auto track width
|
||||
* existing via size choice
|
||||
* Current strategy (to choose the track and via sizes)
|
||||
* grid size choice
|
||||
* zoom level choice
|
||||
*/
|
||||
|
@ -555,14 +556,25 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
|||
m_AuxiliaryToolBar = new WinEDA_Toolbar( TOOLBAR_AUX, this,
|
||||
ID_AUX_TOOLBAR, true );
|
||||
|
||||
// Set up toolbar
|
||||
m_AuxiliaryToolBar->AddSeparator();
|
||||
m_TrackAndViasSizesList_Changed = true;
|
||||
|
||||
/* Set up toolbar items */
|
||||
|
||||
// Creates box to display and choose tracks widths:
|
||||
m_SelTrackWidthBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
|
||||
ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
|
||||
wxPoint( -1, -1 ),
|
||||
wxSize( LISTBOX_WIDTH + 20, -1 ) );
|
||||
wxSize( LISTBOX_WIDTH + 10, -1 ) );
|
||||
m_AuxiliaryToolBar->AddControl( m_SelTrackWidthBox );
|
||||
m_TrackAndViasSizesList_Changed = true;
|
||||
|
||||
// Creates box to display and choose vias diameters:
|
||||
m_SelViaSizeBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
|
||||
ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
wxPoint( -1, -1 ),
|
||||
wxSize( LISTBOX_WIDTH + 10, -1 ) );
|
||||
m_AuxiliaryToolBar->AddControl( m_SelViaSizeBox );
|
||||
|
||||
// Creates box to display tracks and vias clearance:
|
||||
m_ClearanceBox = new wxTextCtrl( m_AuxiliaryToolBar,
|
||||
-1,
|
||||
wxEmptyString,
|
||||
|
@ -572,19 +584,7 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
|||
m_AuxiliaryToolBar->AddControl( m_ClearanceBox );
|
||||
m_ClearanceBox->SetToolTip(_("Current NetClass clearance value") );
|
||||
|
||||
m_AuxiliaryToolBar->AddTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
wxEmptyString,
|
||||
wxBitmap( auto_track_width_xpm ),
|
||||
_( "Auto track width: when starting on an existing track use its width\notherwise, use current width setting" ),
|
||||
wxITEM_CHECK );
|
||||
|
||||
m_AuxiliaryToolBar->AddSeparator();
|
||||
m_SelViaSizeBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
|
||||
ID_AUX_TOOLBAR_PCB_VIA_SIZE,
|
||||
wxPoint( -1, -1 ),
|
||||
wxSize( LISTBOX_WIDTH, -1 ) );
|
||||
m_AuxiliaryToolBar->AddControl( m_SelViaSizeBox );
|
||||
|
||||
// Creates box to display the current NetClass:
|
||||
m_NetClassSelectedBox = new wxTextCtrl( m_AuxiliaryToolBar,
|
||||
-1,
|
||||
wxEmptyString,
|
||||
|
@ -594,7 +594,14 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
|||
m_AuxiliaryToolBar->AddControl( m_NetClassSelectedBox );
|
||||
m_NetClassSelectedBox->SetToolTip(_("Name of the current NetClass") );
|
||||
|
||||
// Boite de selection du pas de grille
|
||||
// Creates box to display and choose strategy to handle tracks an vias sizes:
|
||||
m_AuxiliaryToolBar->AddTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
wxEmptyString,
|
||||
wxBitmap( auto_track_width_xpm ),
|
||||
_( "Auto track width: when starting on an existing track use its width\notherwise, use current width setting" ),
|
||||
wxITEM_CHECK );
|
||||
|
||||
// Add the box to display and select the current grid size:
|
||||
m_AuxiliaryToolBar->AddSeparator();
|
||||
m_SelGridBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
|
||||
ID_ON_GRID_SELECT,
|
||||
|
@ -602,7 +609,7 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
|||
wxSize( LISTBOX_WIDTH, -1 ) );
|
||||
m_AuxiliaryToolBar->AddControl( m_SelGridBox );
|
||||
|
||||
// Boite de selection du Zoom
|
||||
// Add the box to display and select the current Zoom
|
||||
m_AuxiliaryToolBar->AddSeparator();
|
||||
m_SelZoomBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
|
||||
ID_ON_ZOOM_SELECT,
|
||||
|
@ -630,7 +637,7 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
|
|||
m_AuxiliaryToolBar->Realize();
|
||||
}
|
||||
|
||||
// mise a jour des affichages
|
||||
// Update displayed values
|
||||
m_SelGridBox->Clear();
|
||||
wxString format = _( "Grid");
|
||||
if( g_UnitMetric == INCHES )
|
||||
|
|
|
@ -74,8 +74,6 @@ void WinEDA_PcbFrame::AuxiliaryToolBar_DesignRules_Update_UI( )
|
|||
void WinEDA_PcbFrame::AuxiliaryToolBar_Update_UI( )
|
||||
{
|
||||
wxString msg;
|
||||
m_AuxiliaryToolBar->ToggleTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
|
||||
g_DesignSettings.m_UseConnectedTrackWidth );
|
||||
|
||||
AuxiliaryToolBar_DesignRules_Update_UI( );
|
||||
|
||||
|
@ -85,12 +83,14 @@ void WinEDA_PcbFrame::AuxiliaryToolBar_Update_UI( )
|
|||
for( unsigned ii = 0; ii < GetBoard()->m_TrackWidthHistory.size(); ii++ )
|
||||
{
|
||||
msg = _( "Track" ) + ReturnStringValue(GetBoard()->m_TrackWidthHistory[ii]);
|
||||
if (ii == 0 )
|
||||
msg << _(" *");
|
||||
m_SelTrackWidthBox->Append( msg );
|
||||
}
|
||||
if( GetBoard()->m_TrackWidthSelector >= (int)GetBoard()->m_TrackWidthHistory.size() )
|
||||
GetBoard()->m_TrackWidthSelector = 0;
|
||||
m_SelTrackWidthBox->SetSelection( GetBoard()->m_TrackWidthSelector );
|
||||
}
|
||||
if( GetBoard()->m_TrackWidthSelector >= GetBoard()->m_TrackWidthHistory.size() )
|
||||
GetBoard()->m_TrackWidthSelector = 0;
|
||||
m_SelTrackWidthBox->SetSelection( GetBoard()->m_TrackWidthSelector );
|
||||
|
||||
if( m_SelViaSizeBox && m_TrackAndViasSizesList_Changed )
|
||||
{
|
||||
|
@ -98,12 +98,14 @@ void WinEDA_PcbFrame::AuxiliaryToolBar_Update_UI( )
|
|||
for( unsigned ii = 0; ii < GetBoard()->m_ViaSizeHistory.size(); ii++ )
|
||||
{
|
||||
msg = _( "Via" ) + ReturnStringValue(GetBoard()->m_ViaSizeHistory[ii]);
|
||||
if (ii == 0 )
|
||||
msg << _(" *");
|
||||
m_SelViaSizeBox->Append( msg );
|
||||
}
|
||||
if( GetBoard()->m_ViaSizeSelector >= (int)GetBoard()->m_ViaSizeHistory.size() )
|
||||
GetBoard()->m_ViaSizeSelector = 0;
|
||||
m_SelViaSizeBox->SetSelection( GetBoard()->m_ViaSizeSelector );
|
||||
}
|
||||
if( GetBoard()->m_ViaSizeSelector >= GetBoard()->m_ViaSizeHistory.size() )
|
||||
GetBoard()->m_ViaSizeSelector = 0;
|
||||
m_SelViaSizeBox->SetSelection( GetBoard()->m_ViaSizeSelector );
|
||||
|
||||
if( m_SelZoomBox )
|
||||
{
|
||||
|
|
|
@ -19,7 +19,6 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxCommandEvent& event )
|
|||
* Execute edit commands relative to vias
|
||||
*/
|
||||
{
|
||||
int ii;
|
||||
TRACK* via_struct;
|
||||
SEGVIA* via = (SEGVIA*) GetCurItem();
|
||||
wxClientDC dc( DrawPanel );
|
||||
|
@ -33,20 +32,6 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxCommandEvent& event )
|
|||
|
||||
switch( event.GetId() )
|
||||
{
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE1:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE2:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE3:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE4:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE5:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE6:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE7:
|
||||
case ID_POPUP_PCB_SELECT_VIASIZE8: // selec the new current value for via size (via diameter)
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
ii = event.GetId() - ID_POPUP_PCB_SELECT_VIASIZE1;
|
||||
g_DesignSettings.m_CurrentViaSize = GetBoard()->m_ViaSizeHistory[ii];
|
||||
DisplayTrackSettings();
|
||||
break;
|
||||
|
||||
case ID_POPUP_PCB_VIA_HOLE_ENTER_VALUE: // Enter a new alternate value for drill via
|
||||
InstallPcbOptionsFrame( wxDefaultPosition, &dc, ID_PCB_TRACK_SIZE_SETUP );
|
||||
DrawPanel->MouseToCursorSchema();
|
||||
|
@ -124,7 +109,7 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxCommandEvent& event )
|
|||
break;
|
||||
|
||||
default:
|
||||
wxMessageBox( wxT( "WinEDA_PcbFrame::Via_Edition() error: unknown command" ) );
|
||||
wxMessageBox( wxT( "WinEDA_PcbFrame::Via_Edit_Control() error: unknown command" ) );
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue