9 changed files with 1654 additions and 1938 deletions
-
9change_log.txt
-
BINinternat/fr/kicad.mo
-
2386internat/fr/kicad.po
-
14pcbnew/class_board_item.cpp
-
2pcbnew/class_pad.cpp
-
41pcbnew/onrightclick.cpp
-
305pcbnew/pcbpiste.cpp.notused
-
777pcbnew/ratsnest.cpp
-
58pcbnew/struct.cpp.notused
2386
internat/fr/kicad.po
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -1,305 +0,0 @@ |
|||
/******************************************************/ |
|||
/* Fonctions diverses (swap..) relatives au pistes */ |
|||
/* et fonctions de test */ |
|||
/******************************************************/ |
|||
|
|||
/* Fichier PCBPISTE.CPP */ |
|||
|
|||
#include "fctsys.h" |
|||
#include "gr_basic.h" |
|||
#include "common.h" |
|||
#include "pcbnew.h" |
|||
#include "autorout.h" |
|||
|
|||
#include "protos.h" |
|||
|
|||
/* Variables locales */ |
|||
static int New_Layer[32]; |
|||
|
|||
enum swap_layer_id { |
|||
ID_SWAP_LAYER_EXECUTE = 1800, |
|||
ID_SWAP_LAYER_CANCEL, |
|||
ID_SWAP_LAYER_BUTTON_SELECT, |
|||
ID_SWAP_LAYER_DESELECT, |
|||
ID_SWAP_LAYER_SELECT |
|||
}; |
|||
|
|||
|
|||
/***********************************************/ |
|||
/* classe pour la frame de selection de layers */ |
|||
/***********************************************/ |
|||
|
|||
class WinEDA_SwapLayerFrame : public wxDialog |
|||
{ |
|||
private: |
|||
WinEDA_BasePcbFrame* m_Parent; |
|||
wxRadioBox* m_LayerList; |
|||
|
|||
public: |
|||
|
|||
// Constructor and destructor |
|||
WinEDA_SwapLayerFrame( WinEDA_BasePcbFrame * parent ); |
|||
~WinEDA_SwapLayerFrame() { }; |
|||
|
|||
private: |
|||
void Sel_Layer( wxCommandEvent& event ); |
|||
void Cancel( wxCommandEvent& event ); |
|||
void Execute( wxCommandEvent& event ); |
|||
|
|||
DECLARE_EVENT_TABLE() |
|||
}; |
|||
/* Table des evenements pour WinEDA_SwapLayerFrame */ |
|||
BEGIN_EVENT_TABLE( WinEDA_SwapLayerFrame, wxDialog ) |
|||
EVT_BUTTON( ID_SWAP_LAYER_EXECUTE, WinEDA_SwapLayerFrame::Execute ) |
|||
EVT_BUTTON( ID_SWAP_LAYER_CANCEL, WinEDA_SwapLayerFrame::Cancel ) |
|||
EVT_BUTTON( ID_SWAP_LAYER_DESELECT, WinEDA_SwapLayerFrame::Sel_Layer ) |
|||
EVT_BUTTON( ID_SWAP_LAYER_BUTTON_SELECT, WinEDA_SwapLayerFrame::Sel_Layer ) |
|||
EVT_RADIOBOX( ID_SWAP_LAYER_SELECT, WinEDA_SwapLayerFrame::Sel_Layer ) |
|||
END_EVENT_TABLE() |
|||
|
|||
|
|||
WinEDA_SwapLayerFrame::WinEDA_SwapLayerFrame( WinEDA_BasePcbFrame* parent ) : |
|||
wxDialog( parent, -1, _( "Swap Layers:" ), wxPoint( -1, -1 ), |
|||
wxSize( 470, 450 ), DIALOG_STYLE ) |
|||
{ |
|||
#define START_Y 15 |
|||
wxButton* Button; |
|||
int ii; |
|||
wxPoint pos; |
|||
wxString g_Layer_Name_Pair[32]; |
|||
wxSize winsize; |
|||
|
|||
m_Parent = parent; |
|||
SetFont( *g_DialogFont ); |
|||
|
|||
for( ii = 0; ii < NB_LAYERS; ii++ ) |
|||
{ |
|||
g_Layer_Name_Pair[ii] = ReturnPcbLayerName( ii ) + wxT( " -> " ) + _( "No Change" ); |
|||
} |
|||
|
|||
pos.x = 5; pos.y = START_Y; |
|||
m_LayerList = new wxRadioBox( this, ID_SWAP_LAYER_SELECT, _( "Layers" ), |
|||
pos, wxSize( -1, |
|||
-1 ), 29, g_Layer_Name_Pair, 16, wxRA_SPECIFY_ROWS ); |
|||
|
|||
winsize.y = m_LayerList->GetRect().GetBottom(); |
|||
|
|||
pos.x = m_LayerList->GetRect().GetRight() + 12; |
|||
Button = new wxButton( this, ID_SWAP_LAYER_CANCEL, |
|||
_( "Cancel" ), pos ); |
|||
|
|||
Button->SetForegroundColour( *wxRED ); |
|||
winsize.x = MAX( winsize.x, Button->GetRect().GetRight() ); |
|||
|
|||
pos.y += Button->GetSize().y + 5; |
|||
Button = new wxButton( this, ID_SWAP_LAYER_EXECUTE, |
|||
_( "OK" ), pos ); |
|||
|
|||
Button->SetForegroundColour( *wxBLUE ); |
|||
winsize.x = MAX( winsize.x, Button->GetRect().GetRight() ); |
|||
|
|||
pos.y += Button->GetSize().y + 15; |
|||
Button = new wxButton( this, ID_SWAP_LAYER_DESELECT, |
|||
_( "Deselect" ), pos ); |
|||
|
|||
Button->SetForegroundColour( wxColour( 0, 100, 0 ) ); |
|||
winsize.x = MAX( winsize.x, Button->GetRect().GetRight() ); |
|||
|
|||
pos.y += Button->GetSize().y + 5; |
|||
Button = new wxButton( this, ID_SWAP_LAYER_BUTTON_SELECT, |
|||
_( "Select" ), pos ); |
|||
|
|||
Button->SetForegroundColour( wxColour( 0, 100, 100 ) ); |
|||
winsize.x = MAX( winsize.x, Button->GetRect().GetRight() ); |
|||
|
|||
winsize.x += 10; winsize.y += 10; |
|||
SetClientSize( winsize ); |
|||
} |
|||
|
|||
|
|||
/***************************************************************/ |
|||
void WinEDA_SwapLayerFrame::Sel_Layer( wxCommandEvent& event ) |
|||
/***************************************************************/ |
|||
{ |
|||
int ii, jj; |
|||
|
|||
ii = m_LayerList->GetSelection(); |
|||
|
|||
switch( event.GetId() ) |
|||
{ |
|||
case ID_SWAP_LAYER_DESELECT: |
|||
if( New_Layer[ii] != -1 ) |
|||
{ |
|||
New_Layer[ii] = -1; |
|||
m_LayerList->SetString( ii, ReturnPcbLayerName( ii ) + |
|||
+ wxT( " -> " ) + _( "No Change" ) ); |
|||
} |
|||
break; |
|||
|
|||
case ID_SWAP_LAYER_BUTTON_SELECT: |
|||
case ID_SWAP_LAYER_SELECT: |
|||
jj = m_Parent->SelectLayer( ii, -1, -1 ); |
|||
if( (jj < 0) || (jj >= 29) ) |
|||
return; |
|||
|
|||
if( ii != jj ) |
|||
{ |
|||
New_Layer[ii] = jj; |
|||
m_LayerList->SetString( ii, |
|||
ReturnPcbLayerName( ii ) + wxT( " -> " ) + |
|||
ReturnPcbLayerName( jj ) ); |
|||
} |
|||
break; |
|||
} |
|||
} |
|||
|
|||
|
|||
/*********************************************************/ |
|||
void WinEDA_SwapLayerFrame::Cancel( wxCommandEvent& event ) |
|||
/*********************************************************/ |
|||
{ |
|||
EndModal( -1 ); |
|||
} |
|||
|
|||
|
|||
/*********************************************************/ |
|||
void WinEDA_SwapLayerFrame::Execute( wxCommandEvent& event ) |
|||
/*********************************************************/ |
|||
{ |
|||
EndModal( 1 ); |
|||
} |
|||
|
|||
|
|||
/********************************************************/ |
|||
void WinEDA_PcbFrame::Swap_Layers( wxCommandEvent& event ) |
|||
/********************************************************/ |
|||
/* Swap layers */ |
|||
{ |
|||
int ii, jj; |
|||
TRACK* pt_segm; |
|||
DRAWSEGMENT* pt_drawsegm; |
|||
EDA_BaseStruct* PtStruct; |
|||
|
|||
|
|||
/* Init default values */ |
|||
for( ii = 0; ii < 32; ii++ ) |
|||
New_Layer[ii] = -1; |
|||
|
|||
WinEDA_SwapLayerFrame* frame = new WinEDA_SwapLayerFrame( this ); |
|||
|
|||
ii = frame->ShowModal(); frame->Destroy(); |
|||
|
|||
if( ii != 1 ) |
|||
return; |
|||
|
|||
/* Modifications des pistes */ |
|||
pt_segm = (TRACK*) m_Pcb->m_Track; |
|||
for( ; pt_segm != NULL; pt_segm = (TRACK*) pt_segm->Pnext ) |
|||
{ |
|||
m_CurrentScreen->SetModify(); |
|||
if( pt_segm->Type() == TYPEVIA ) |
|||
{ |
|||
SEGVIA* Via = (SEGVIA*) pt_segm; |
|||
if( Via->Shape() == VIA_NORMALE ) |
|||
continue; |
|||
int top_layer, bottom_layer; |
|||
Via->ReturnLayerPair( &top_layer, &bottom_layer ); |
|||
if( New_Layer[bottom_layer] >= 0 ) |
|||
bottom_layer = New_Layer[bottom_layer]; |
|||
if( New_Layer[top_layer] >= 0 ) |
|||
top_layer = New_Layer[top_layer]; |
|||
Via->SetLayerPair( top_layer, bottom_layer ); |
|||
} |
|||
else |
|||
{ |
|||
jj = pt_segm->m_Layer; |
|||
if( New_Layer[jj] >= 0 ) |
|||
pt_segm->m_Layer = New_Layer[jj]; |
|||
} |
|||
} |
|||
|
|||
/* Modifications des zones */ |
|||
pt_segm = (TRACK*) m_Pcb->m_Zone; |
|||
for( ; pt_segm != NULL; pt_segm = (TRACK*) pt_segm->Pnext ) |
|||
{ |
|||
m_CurrentScreen->SetModify(); |
|||
jj = pt_segm->m_Layer; |
|||
if( New_Layer[jj] >= 0 ) |
|||
pt_segm->m_Layer = New_Layer[jj]; |
|||
} |
|||
|
|||
/* Modifications des autres segments */ |
|||
PtStruct = m_Pcb->m_Drawings; |
|||
for( ; PtStruct != NULL; PtStruct = PtStruct->Pnext ) |
|||
{ |
|||
if( PtStruct->Type() == TYPEDRAWSEGMENT ) |
|||
{ |
|||
m_CurrentScreen->SetModify(); |
|||
pt_drawsegm = (DRAWSEGMENT*) PtStruct; |
|||
jj = pt_drawsegm->m_Layer; |
|||
if( New_Layer[jj] >= 0 ) |
|||
pt_drawsegm->m_Layer = New_Layer[jj]; |
|||
} |
|||
} |
|||
|
|||
DrawPanel->Refresh( TRUE ); |
|||
} |
|||
|
|||
|
|||
/*********************************************************/ |
|||
void WinEDA_PcbFrame::Liste_Equipot( wxCommandEvent& event ) |
|||
/*********************************************************/ |
|||
{ |
|||
EQUIPOT* Equipot; |
|||
wxString msg; |
|||
WinEDA_TextFrame* List; |
|||
int ii, jj; |
|||
|
|||
msg = wxT( "*" ); |
|||
Get_Message( _( "Filter for net names:" ), msg, this ); |
|||
if( msg.IsEmpty() ) |
|||
return; |
|||
|
|||
List = new WinEDA_TextFrame( this, _( "List Nets" ) ); |
|||
|
|||
Equipot = (EQUIPOT*) m_Pcb->m_Equipots; |
|||
for( ; Equipot != NULL; Equipot = (EQUIPOT*) Equipot->Pnext ) |
|||
{ |
|||
wxString Line; |
|||
/* calcul adr relative du nom de la pastille reference de la piste */ |
|||
if( !WildCompareString( msg, Equipot->m_Netname, FALSE ) ) |
|||
continue; |
|||
|
|||
Line.Printf( wxT( "net_code = %3.3d [%.16s] " ), Equipot->m_NetCode, |
|||
Equipot->m_Netname.GetData() ); |
|||
List->Append( Line ); |
|||
} |
|||
|
|||
ii = List->ShowModal(); List->Destroy(); |
|||
if( ii < 0 ) |
|||
return; |
|||
|
|||
/* Recherche du numero de net rellement selectionné */ |
|||
Equipot = (EQUIPOT*) m_Pcb->m_Equipots; |
|||
for( jj = 0; Equipot != NULL; Equipot = (EQUIPOT*) Equipot->Pnext ) |
|||
{ |
|||
/* calcul adr relative du nom de la pastille reference de la piste */ |
|||
if( !WildCompareString( msg, Equipot->m_Netname, FALSE ) ) |
|||
continue; |
|||
if( ii == jj ) |
|||
{ |
|||
ii = Equipot->m_NetCode; |
|||
break; |
|||
} |
|||
jj++; |
|||
} |
|||
|
|||
wxClientDC dc( DrawPanel ); |
|||
|
|||
DrawPanel->PrepareGraphicContext( &dc ); |
|||
|
|||
if( g_HightLigt_Status ) |
|||
Hight_Light( &dc ); |
|||
g_HightLigth_NetCode = ii; |
|||
Hight_Light( &dc ); |
|||
} |
777
pcbnew/ratsnest.cpp
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -1,58 +0,0 @@ |
|||
/***********************************************/ |
|||
/* Routines d'effacement et copie de structures*/ |
|||
/***********************************************/ |
|||
|
|||
#include "fctsys.h" |
|||
#include "gr_basic.h" |
|||
|
|||
#include "common.h" |
|||
#include "pcbnew.h" |
|||
|
|||
#if 0 |
|||
|
|||
/* Routines Locales */ |
|||
/* Variables locales */ |
|||
|
|||
/***********************************************/ |
|||
void DeleteStructure( BOARD_ITEM* item ) |
|||
/***********************************************/ |
|||
/* Supprime de la liste chainee la stucture pointee par GenericStructure |
|||
et libere la memoire correspondante |
|||
*/ |
|||
{ |
|||
if( !item ) |
|||
return; |
|||
|
|||
switch( item->Type() ) |
|||
{ |
|||
case TYPE_NOT_INIT: |
|||
DisplayError(NULL, wxT("DeleteStruct: Type Structure Non Initialise")); |
|||
break; |
|||
|
|||
case PCB_EQUIPOT_STRUCT_TYPE: |
|||
case TYPEMODULE: |
|||
case TYPEPAD: |
|||
case TYPECOTATION: |
|||
case TYPEMIRE: |
|||
case TYPEDRAWSEGMENT: |
|||
case TYPETEXTE: |
|||
case TYPETEXTEMODULE: |
|||
case TYPEEDGEMODULE: |
|||
case TYPETRACK: |
|||
case TYPEVIA: |
|||
case TYPEZONE: |
|||
case TYPEMARQUEUR: |
|||
item->UnLink(); |
|||
delete item; |
|||
break; |
|||
|
|||
default: |
|||
{ |
|||
wxString msg; |
|||
msg.Printf( wxT(" DeleteStructure: Type %d Inattendu"), item->Type() ); |
|||
DisplayError(NULL, msg); |
|||
} |
|||
} |
|||
} |
|||
|
|||
#endif |
Write
Preview
Loading…
Cancel
Save
Reference in new issue