Commit f7a804e2 authored by charras's avatar charras

Bugfix for plotting

parent 11d9edfe
......@@ -18,6 +18,7 @@ set(COMMON_SRCS
common_plotHPGL_functions.cpp
common_plotPS_functions.cpp
common_plotGERBER_functions.cpp
common_plotDXF_functions.cpp
confirm.cpp
copy_to_clipboard.cpp
dcsvg.cpp
......
/******************************************/
/* Kicad: Common plot DXF Routines */
/******************************************/
#include "fctsys.h"
#include "gr_basic.h"
#include "trigo.h"
#include "wxstruct.h"
#include "base_struct.h"
#include "plot_common.h"
#include "macros.h"
#include "kicad_string.h"
/***********************************************************************************/
void DXF_Plotter::set_viewport( wxPoint offset,
double aScale, int orient )
/***********************************************************************************/
/* Set the plot offset for the current plotting
*/
{
wxASSERT( !output_file );
plot_offset = offset;
plot_scale = aScale;
device_scale = 1;
set_default_line_width( 0 ); /* No line width on DXF */
plot_orient_options = 0; /* No mirroring on DXF */
current_color = BLACK;
}
/*****************************************************************/
void DXF_Plotter::start_plot( FILE* fout )
/*****************************************************************/
{
wxASSERT( !output_file );
output_file = fout;
/* DXF HEADER - Boilerplate */
fputs(
"0\nSECTION\n2\nHEADER\n9\n$ANGBASE\n50\n0.0\n9\n$ANGDIR\n70\n0\n0\nENDSEC\n0\nSECTION\n2\nTABLES\n0\nTABLE\n2\nLTYPE\n70\n1\n0\nLTYPE\n2\nCONTINUOUS\n70\n0\n3\nSolid line\n72\n65\n73\n0\n40\n0.0\n0\nENDTAB\n",
output_file );
/* Layer table - one layer per color */
fprintf( output_file, "0\nTABLE\n2\nLAYER\n70\n%d\n", NBCOLOR );
for( int i = 0; i<NBCOLOR; i++ )
{
fprintf( output_file, "0\nLAYER\n2\n%s\n70\n0\n62\n%d\n6\nCONTINUOUS\n",
CONV_TO_UTF8( ColorRefs[i].m_Name ), i + 1 );
}
/* End of layer table, begin entities */
fputs( "0\nENDTAB\n0\nENDSEC\n0\nSECTION\n2\nENTITIES\n", output_file );
}
/**********************************/
void DXF_Plotter::end_plot()
/**********************************/
{
wxASSERT( output_file );
/* DXF FOOTER */
fputs( "0\nENDSEC\n0\nEOF\n", output_file );
fclose( output_file );
output_file = 0;
}
/******************************/
void DXF_Plotter::set_color( int color )
/******************************/
/*
* color = color index in ColorRefs[]
*/
{
wxASSERT( output_file );
if( (color >= 0 && color_mode)
|| (color == BLACK)
|| (color == WHITE) )
{
current_color = color;
}
}
/************************************************************/
void DXF_Plotter::rect( wxPoint p1, wxPoint p2, FILL_T fill, int width )
/************************************************************/
{
wxASSERT( output_file );
move_to( p1 );
line_to( wxPoint( p1.x, p2.y ) );
line_to( wxPoint( p2.x, p2.y ) );
line_to( wxPoint( p2.x, p1.y ) );
finish_to( wxPoint( p1.x, p1.y ) );
}
/************************************************************/
void DXF_Plotter::circle( wxPoint centre, int diameter, FILL_T fill, int width )
/************************************************************/
{
wxASSERT( output_file );
double rayon = user_to_device_size( diameter / 2 );
user_to_device_coordinates( centre );
if( rayon > 0 )
{
fprintf( output_file, "0\nCIRCLE\n8\n%s\n10\n%d.0\n20\n%d.0\n40\n%g\n",
CONV_TO_UTF8( ColorRefs[current_color].m_Name ),
centre.x, centre.y, rayon );
}
}
/*****************************************************/
void DXF_Plotter::poly( int nb, int* coord, FILL_T fill, int width )
/*****************************************************/
/* Trace un polygone (ferme si rempli) en format DXF
* coord = tableau des coord des sommets
* nb = nombre de coord ( 1 coord = 2 elements: X et Y du tableau )
* fill : si != 0 polygone rempli
*/
{
wxASSERT( output_file );
if( nb <= 1 )
return;
move_to( wxPoint( coord[0], coord[1] ) );
for( int ii = 1; ii < nb; ii++ )
line_to( wxPoint( coord[ii * 2], coord[(ii * 2) + 1] ) );
/* Fermeture eventuelle du polygone */
if( fill )
{
int ii = (nb - 1) * 2;
if( (coord[ii] != coord[0] ) || (coord[ii + 1] != coord[1]) )
line_to( wxPoint( coord[0], coord[1] ) );
}
pen_finish();
}
/**********************************************/
void DXF_Plotter::pen_to( wxPoint pos, char plume )
/**********************************************/
/*
* deplace la plume levee (plume = 'U') ou baissee (plume = 'D')
* en position x,y
* Unites en Unites DESSIN
* Si plume = 'Z' lever de plume sans deplacement
*/
{
wxASSERT( output_file );
if( plume == 'Z' )
{
return;
}
user_to_device_coordinates( pos );
if( pen_lastpos != pos && plume == 'D' )
{
/* DXF LINE */
fprintf( output_file, "0\nLINE\n8\n%s\n10\n%d.0\n20\n%d.0\n11\n%d.0\n21\n%d.0\n",
CONV_TO_UTF8( ColorRefs[current_color].m_Name ),
pen_lastpos.x, pen_lastpos.y, pos.x, pos.y );
}
pen_lastpos = pos;
}
void DXF_Plotter::set_dash( bool dashed )
{
/* NOP for now */
wxASSERT( output_file );
}
void DXF_Plotter::thick_segment( wxPoint start, wxPoint end, int width,
GRTraceMode tracemode )
/** Function Plot a filled segment (track)
* @param start = starting point
* @param end = ending point
* @param aWidth = segment width (thickness)
* @param aPlotMode = FILLED, SKETCH ..
*/
{
wxASSERT( output_file );
if( tracemode == FILAIRE ) /* just a line is Ok */
{
move_to( start );
finish_to( end );
}
else
segment_as_oval( start, end, width, tracemode );
}
/********************************************************************/
void DXF_Plotter::arc( wxPoint centre, int StAngle, int EndAngle, int rayon,
FILL_T fill, int width )
/********************************************************************/
/* trace d'un arc de cercle:
* centre = coord du centre
* StAngle, EndAngle = angle de debut et fin
* rayon = rayon de l'arc
*/
{
wxASSERT( output_file );
if( rayon <= 0 )
return;
user_to_device_coordinates( centre );
rayon = user_to_device_size( rayon );
/* DXF ARC */
fprintf( output_file, "0\nARC\n8\n%s\n10\n%d.0\n20\n%d.0\n40\n%d.0\n50\n%d.0\n51\n%d.0\n",
CONV_TO_UTF8( ColorRefs[current_color].m_Name ),
centre.x, centre.y, rayon,
StAngle / 10, EndAngle / 10 );
}
/***********************************************************************************/
void DXF_Plotter::flash_pad_oval( wxPoint pos, wxSize size, int orient,
GRTraceMode trace_mode )
/************************************************************************************/
/* Trace 1 pastille PAD_OVAL en position pos_X,Y , de dim size.x, size.y */
{
wxASSERT( output_file );
/* la pastille est ramenee a une pastille ovale avec size.y > size.x
* ( ovale vertical en orientation 0 ) */
if( size.x > size.y )
{
EXCHG( size.x, size.y ); orient += 900;
if( orient >= 3600 )
orient -= 3600;
}
sketch_oval( pos, size, orient, -1 );
}
/*******************************************************************************/
void DXF_Plotter::flash_pad_circle( wxPoint pos, int diametre,
GRTraceMode trace_mode )
/*******************************************************************************/
/* Trace 1 pastille RONDE (via,pad rond) en position pos */
{
wxASSERT( output_file );
circle( pos, diametre, NO_FILL );
}
/**************************************************************************/
void DXF_Plotter::flash_pad_rect( wxPoint pos, wxSize padsize,
int orient, GRTraceMode trace_mode )
/**************************************************************************/
/*
* Trace 1 pad rectangulaire vertical ou horizontal ( Pad rectangulaire )
* donne par son centre et ses dimensions X et Y
* Units are user units
*/
{
wxASSERT( output_file );
wxSize size;
int ox, oy, fx, fy;
size.x = padsize.x / 2; size.y = padsize.y / 2;
if( size.x < 0 )
size.x = 0;
if( size.y < 0 )
size.y = 0;
/* Si une des dimensions est nulle, le trace se reduit a 1 trait */
if( size.x == 0 )
{
ox = pos.x; oy = pos.y - size.y;
RotatePoint( &ox, &oy, pos.x, pos.y, orient );
fx = pos.x; fy = pos.y + size.y;
RotatePoint( &fx, &fy, pos.x, pos.y, orient );
move_to( wxPoint( ox, oy ) );
finish_to( wxPoint( fx, fy ) );
return;
}
if( size.y == 0 )
{
ox = pos.x - size.x; oy = pos.y;
RotatePoint( &ox, &oy, pos.x, pos.y, orient );
fx = pos.x + size.x; fy = pos.y;
RotatePoint( &fx, &fy, pos.x, pos.y, orient );
move_to( wxPoint( ox, oy ) );
finish_to( wxPoint( fx, fy ) );
return;
}
ox = pos.x - size.x; oy = pos.y - size.y;
RotatePoint( &ox, &oy, pos.x, pos.y, orient );
move_to( wxPoint( ox, oy ) );
fx = pos.x - size.x; fy = pos.y + size.y;
RotatePoint( &fx, &fy, pos.x, pos.y, orient );
line_to( wxPoint( fx, fy ) );
fx = pos.x + size.x; fy = pos.y + size.y;
RotatePoint( &fx, &fy, pos.x, pos.y, orient );
line_to( wxPoint( fx, fy ) );
fx = pos.x + size.x; fy = pos.y - size.y;
RotatePoint( &fx, &fy, pos.x, pos.y, orient );
line_to( wxPoint( fx, fy ) );
finish_to( wxPoint( ox, oy ) );
}
/*******************************************************************/
void DXF_Plotter::flash_pad_trapez( wxPoint pos, wxSize size, wxSize delta,
int orient, GRTraceMode trace_mode )
/*******************************************************************/
/*
* Trace 1 pad trapezoidal donne par :
* son centre pos.x,pos.y
* ses dimensions dimX et dimY
* les variations deltaX et deltaY
* son orientation orient et 0.1 degres
* le mode de trace (FILLED, SKETCH, FILAIRE)
* Le trace n'est fait que pour un trapeze, c.a.d que deltaX ou deltaY
* = 0.
*
* les notation des sommets sont ( vis a vis de la table tracante )
* 0 ------------- 3
* . .
* . .
* . .
* 1 --- 2
*/
{
wxASSERT( output_file );
wxPoint polygone[4]; /* coord des sommets / centre du pad */
wxPoint coord[4]; /* coord reelles des sommets du trapeze a tracer */
int moveX, moveY; /* variation de position plume selon axe X et Y , lors
* du remplissage du trapeze */
moveX = moveY = 0;
size.x /= 2; size.y /= 2;
delta.x /= 2; delta.y /= 2;
polygone[0].x = -size.x - delta.y; polygone[0].y = +size.y + delta.x;
polygone[1].x = -size.x + delta.y; polygone[1].y = -size.y - delta.x;
polygone[2].x = +size.x - delta.y; polygone[2].y = -size.y + delta.x;
polygone[3].x = +size.x + delta.y; polygone[3].y = +size.y - delta.x;
for( int ii = 0; ii < 4; ii++ )
{
coord[ii].x = polygone[ii].x + pos.x;
coord[ii].y = polygone[ii].y + pos.y;
RotatePoint( &coord[ii], pos, orient );
}
// Plot edge:
move_to( coord[0] );
line_to( coord[1] );
line_to( coord[2] );
line_to( coord[3] );
finish_to( coord[0] );
}
......@@ -95,6 +95,7 @@ set(EESCHEMA_SRCS
plot.cpp
plothpgl.cpp
plotps.cpp
plotdxf.cpp
priorque.cpp
read_from_file_schematic_items_descriptions.cpp
savelib.cpp
......
......@@ -91,6 +91,12 @@ void WinEDA_SchematicFrame::ReCreateMenuBar()
item->SetBitmap( plot_xpm );
choice_plot_fmt->Append( item );
item = new wxMenuItem( choice_plot_fmt, ID_GEN_PLOT_DXF, _( "Plot DXF" ),
_( "Plot schematic sheet in DXF format" ) );
item->SetBitmap( plot_xpm );
choice_plot_fmt->Append( item );
#ifdef __WINDOWS__
/* Under windows, one can draw to the clipboard */
item = new wxMenuItem( choice_plot_fmt, ID_GEN_COPY_SHEET_TO_CLIPBOARD,
......
......@@ -65,6 +65,7 @@ static void PlotLibPart( Plotter* plotter, SCH_COMPONENT* DrawLibItem )
Multi = DrawLibItem->m_Multi;
convert = DrawLibItem->m_Convert;
plotter->set_current_line_width( g_DrawDefaultLineThickness );
for( LibEDA_BaseStruct* DEntry = Entry->m_Drawings;
DEntry != NULL; DEntry = DEntry->Next() )
{
......@@ -88,12 +89,12 @@ static void PlotLibPart( Plotter* plotter, SCH_COMPONENT* DrawLibItem )
if( draw_bgfill && Arc->m_Fill == FILLED_WITH_BG_BODYCOLOR )
{
plotter->set_color( ReturnLayerColor( LAYER_DEVICE_BACKGROUND ) );
plotter->arc( pos, t1, t2, Arc->m_Rayon, FILLED_SHAPE, 0 );
plotter->arc( pos, -t1, -t2, Arc->m_Rayon, FILLED_SHAPE, 0 );
}
plotter->set_color( ReturnLayerColor( LAYER_DEVICE ) );
plotter->arc( pos,
t1,
t2,
-t1,
-t2,
Arc->m_Rayon,
Arc->m_Fill,
Arc->m_Width );
......@@ -713,19 +714,25 @@ void PlotDrawlist( Plotter* plotter, SCH_ITEM* drawlist )
switch( drawlist->Type() )
{
case DRAW_BUSENTRY_STRUCT_TYPE: /* Struct Raccord et Segment sont identiques */
case DRAW_SEGMENT_STRUCT_TYPE:
if( drawlist->Type() == DRAW_BUSENTRY_STRUCT_TYPE )
{
#undef STRUCT
#define STRUCT ( (DrawBusEntryStruct*) drawlist )
StartPos = STRUCT->m_Pos;
EndPos = STRUCT->m_End();
layer = STRUCT->GetLayer();
case DRAW_SEGMENT_STRUCT_TYPE:
plotter->set_color( ReturnLayerColor( layer ) );
}
else
{
#undef STRUCT
#define STRUCT ( (EDA_DrawLineStruct*) drawlist )
StartPos = STRUCT->m_Start;
EndPos = STRUCT->m_End;
layer = STRUCT->GetLayer();
plotter->set_color( ReturnLayerColor( layer ) );
}
switch( layer )
{
......
......@@ -59,6 +59,7 @@ BEGIN_EVENT_TABLE( WinEDA_SchematicFrame, WinEDA_DrawFrame )
EVT_MENU( ID_GEN_PLOT_PS, WinEDA_SchematicFrame::ToPlot_PS )
EVT_MENU( ID_GEN_PLOT_HPGL, WinEDA_SchematicFrame::ToPlot_HPGL )
EVT_MENU( ID_GEN_PLOT_SVG, WinEDA_DrawFrame::SVG_Print )
EVT_MENU( ID_GEN_PLOT_DXF, WinEDA_SchematicFrame::ToPlot_DXF )
EVT_MENU( ID_GEN_COPY_SHEET_TO_CLIPBOARD, WinEDA_DrawFrame::CopyToClipboard )
EVT_MENU( ID_GEN_COPY_BLOCK_TO_CLIPBOARD, WinEDA_DrawFrame::CopyToClipboard )
EVT_MENU( ID_EXIT, WinEDA_SchematicFrame::OnExit )
......
......@@ -6,7 +6,7 @@
#define _COLORS_H
/* Definitions des Numeros des Couleurs ( palette de 32) */
#define NBCOLOR 32
#define NBCOLOR 24
#define MASKCOLOR 31 ///< mask for color index into ColorRefs[]
......
......@@ -72,6 +72,7 @@ enum main_id {
ID_GEN_PLOT_HPGL,
ID_GEN_PLOT_GERBER,
ID_GEN_PLOT_SVG,
ID_GEN_PLOT_DXF,
ID_GEN_COPY_SHEET_TO_CLIPBOARD,
ID_GEN_COPY_BLOCK_TO_CLIPBOARD,
ID_GEN_UNUSED0,
......
......@@ -19,7 +19,8 @@ using namespace std;
enum PlotFormat {
PLOT_FORMAT_HPGL,
PLOT_FORMAT_GERBER,
PLOT_FORMAT_POST
PLOT_FORMAT_POST,
PLOT_FORMAT_DXF
};
const int PLOT_MIROIR = 1;
......@@ -381,4 +382,48 @@ protected:
vector<Aperture>::iterator current_aperture;
};
class DXF_Plotter : public Plotter
{
public:
virtual void start_plot( FILE* fout );
virtual void end_plot();
/* For now we don't use 'thick' primitives, so no line width */
virtual void set_current_line_width( int width )
{
/* Handy override */
current_pen_width = 0;
};
virtual void set_default_line_width( int width )
{
/* DXF lines are infinitesimal */
default_pen_width = 0;
};
virtual void set_dash( bool dashed );
virtual void set_color( int color );
virtual void set_viewport( wxPoint offset,
double scale, int orient );
virtual void rect( wxPoint p1, wxPoint p2, FILL_T fill, int width = -1 );
virtual void circle( wxPoint pos, int diametre, FILL_T fill, int width = -1 );
virtual void poly( int nb_segm, int* coord, FILL_T fill, int width = -1 );
virtual void thick_segment( wxPoint start, wxPoint end, int width,
GRTraceMode tracemode );
virtual void arc( wxPoint centre, int StAngle, int EndAngle, int rayon,
FILL_T fill, int width = -1 );
virtual void pen_to( wxPoint pos, char plume );
virtual void flash_pad_circle( wxPoint pos, int diametre,
GRTraceMode trace_mode );
virtual void flash_pad_oval( wxPoint pos, wxSize size, int orient,
GRTraceMode trace_mode );
virtual void flash_pad_rect( wxPoint pos, wxSize size,
int orient, GRTraceMode trace_mode );
virtual void flash_pad_trapez( wxPoint pos, wxSize size, wxSize delta,
int orient, GRTraceMode trace_mode );
protected:
int current_color;
};
#endif /* __INCLUDE__PLOT_COMMON_H__ */
......@@ -202,6 +202,7 @@ public:
// Plot functions:
void ToPlot_PS( wxCommandEvent& event );
void ToPlot_HPGL( wxCommandEvent& event );
void ToPlot_DXF( wxCommandEvent& event );
void ToPostProcess( wxCommandEvent& event );
// read and save files
......
......@@ -302,6 +302,8 @@ public:
GRTraceMode trace_mode);
void Genere_PS( const wxString& FullFileName, int Layer,
bool useA4, GRTraceMode trace_mode );
void Genere_DXF( const wxString& FullFileName, int Layer,
GRTraceMode trace_mode);
void Plot_Layer(Plotter *plotter, int Layer, GRTraceMode trace_mode );
void Plot_Standard_Layer( Plotter *plotter, int masque_layer,
int garde, bool trace_via,
......
No preview for this file type
......@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: kicad\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-06-27 09:08+0100\n"
"PO-Revision-Date: 2009-06-27 09:08+0100\n"
"POT-Creation-Date: 2009-06-29 20:56+0100\n"
"PO-Revision-Date: 2009-06-29 20:58+0100\n"
"Last-Translator: \n"
"Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n"
"MIME-Version: 1.0\n"
......@@ -67,317 +67,454 @@ msgstr "Sauver Fichier Composant"
msgid "Unable to create file "
msgstr "Impossible de créer le fichier "
#: pcbnew/pcbplot.cpp:153
#: pcbnew/pcbplot.cpp:302
#: pcbnew/pcbnew.cpp:81
msgid "Pcbnew is already running, Continue?"
msgstr "Pcbnew est en cours d'exécution. Continuer ?"
#: pcbnew/via_edit.cpp:54
msgid "Incorrect value for Via drill. No via drill change"
msgstr "Valeur incorrecte pour perçage. Pas de changement pour la via"
#: pcbnew/dialog_gendrill.cpp:165
msgid "Millimeters"
msgstr "Millimètres"
#: pcbnew/dialog_gendrill.cpp:166
msgid "Inches"
msgstr "Pouces"
#: pcbnew/dialog_gendrill.cpp:167
msgid "Drill Units:"
msgstr "Unités perçage:"
#: pcbnew/dialog_gendrill.cpp:172
msgid "decimal format"
msgstr "Format décimal"
#: pcbnew/dialog_gendrill.cpp:173
msgid "suppress leading zeros"
msgstr "Suppression zeros de tête"
#: pcbnew/dialog_gendrill.cpp:174
msgid "suppress trailing zeros"
msgstr "Suppression zeros de fin"
#: pcbnew/dialog_gendrill.cpp:175
msgid "keep zeros"
msgstr "Garder les zéros"
#: pcbnew/dialog_gendrill.cpp:176
msgid "Zeros Format"
msgstr "Format des zéros"
#: pcbnew/dialog_gendrill.cpp:179
msgid "Choose EXCELLON numbers notation"
msgstr "Choisir la notation des nombres en format EXCELLON"
#: pcbnew/dialog_gendrill.cpp:183
msgid "2:3"
msgstr "2:3"
#: pcbnew/dialog_gendrill.cpp:184
msgid "2:4"
msgstr "2:4"
#: pcbnew/dialog_gendrill.cpp:185
msgid "Precision"
msgstr "Précision"
#: pcbnew/dialog_gendrill.cpp:188
msgid "Choose EXCELLON numbers precision"
msgstr "Choisir la précision des nombres en format EXCELLON"
#: pcbnew/dialog_gendrill.cpp:192
msgid "absolute"
msgstr "Absolu"
#: pcbnew/dialog_gendrill.cpp:193
msgid "auxiliary axis"
msgstr "Axe Auxiliaire"
#: pcbnew/dialog_gendrill.cpp:194
msgid "Drill Origin:"
msgstr "Origine des coord de perçage:"
#: pcbnew/dialog_gendrill.cpp:197
msgid "Choose the coordinate origin: absolute or relative to the auxiliray axis"
msgstr "Choisir l'origine des coordonnées: absolue ou relative à l'axe auxiliaire"
#: pcbnew/dialog_gendrill.cpp:204
#: pcbnew/dialog_gendrill.cpp:216
msgid "None"
msgstr "Aucun"
#: pcbnew/dialog_gendrill.cpp:205
msgid "drill sheet (HPGL)"
msgstr "Plan de perçage (HPGL)"
#: pcbnew/dialog_gendrill.cpp:206
msgid "drill sheet (PostScript)"
msgstr "Plan de perçage (Postscript)"
#: pcbnew/dialog_gendrill.cpp:207
msgid "Drill sheet (Gerber)"
msgstr "Plan de perçage (Gerber)"
#: pcbnew/dialog_gendrill.cpp:208
msgid "Drill sheet (DXF)"
msgstr "Plan de perçage (DXF)"
#: pcbnew/dialog_gendrill.cpp:209
msgid "Drill Sheet:"
msgstr "Plan de perçage:"
#: pcbnew/dialog_gendrill.cpp:212
msgid "Creates a drill map in PS or HPGL format"
msgstr "Créer un plan de perçage en format PS ou HPGL"
#: pcbnew/dialog_gendrill.cpp:217
msgid "Drill report"
msgstr "Rapport de perçage"
#: pcbnew/dialog_gendrill.cpp:218
msgid "Drill Report:"
msgstr "Rapport de perçage:"
#: pcbnew/dialog_gendrill.cpp:221
msgid "Creates a plain text report"
msgstr "Créer un fichier rapport ascii"
#: pcbnew/dialog_gendrill.cpp:224
msgid "HPGL plotter Options:"
msgstr "Options de Tracé HPGL:"
#: pcbnew/dialog_gendrill.cpp:228
msgid "Speed (cm/s)"
msgstr "Vitesse plume ( cm/s )"
#: pcbnew/dialog_gendrill.cpp:234
msgid "Pen Number"
msgstr "Numéro de plume"
#: pcbnew/dialog_gendrill.cpp:240
msgid "Options:"
msgstr "Options :"
#: pcbnew/dialog_gendrill.cpp:244
msgid "mirror y axis"
msgstr "Miroir sur axe Y"
#: pcbnew/dialog_gendrill.cpp:248
msgid "minimal header"
msgstr "Entête minimal"
#: pcbnew/dialog_gendrill.cpp:251
msgid "If checked, the EXCELLON header is minimal"
msgstr "Si activé, l'entête du fichier EXELLON est minimale"
#: pcbnew/dialog_gendrill.cpp:257
msgid "Info:"
msgstr "Infos:"
#: pcbnew/dialog_gendrill.cpp:261
msgid "Default Vias Drill:"
msgstr "Perçage vias par Défaut"
#: pcbnew/dialog_gendrill.cpp:265
msgid "Via Drill Value"
msgstr "Perçage des Vias"
#: pcbnew/dialog_gendrill.cpp:268
msgid "Micro Vias Drill:"
msgstr "Perçage Micro Via:"
#: pcbnew/dialog_gendrill.cpp:272
msgid "Micro Via Drill Value"
msgstr "Valeur Perçage Micro Via"
#: pcbnew/dialog_gendrill.cpp:275
msgid "Holes Count:"
msgstr "Nb Trous"
#: pcbnew/dialog_gendrill.cpp:279
msgid "Pads:"
msgstr "Pastilles:"
#: pcbnew/dialog_gendrill.cpp:282
msgid "Through Vias:"
msgstr "Via Traversantes:"
#: pcbnew/dialog_gendrill.cpp:285
msgid "Micro Vias:"
msgstr "Micro Vias:"
#: pcbnew/dialog_gendrill.cpp:288
msgid "Buried Vias:"
msgstr "Via Enterrées:"
#: pcbnew/dialog_gendrill.cpp:293
#: pcbnew/cotation.cpp:103
msgid "OK"
msgstr "OK"
#: pcbnew/dialog_gendrill.cpp:297
#: pcbnew/cotation.cpp:106
msgid "Cancel"
msgstr "Annuler"
#: pcbnew/pcbplot.cpp:164
#: pcbnew/pcbplot.cpp:314
msgid "Plot"
msgstr "Tracer"
#: pcbnew/pcbplot.cpp:200
#: pcbnew/pcbplot.cpp:212
msgid "Plot Format"
msgstr "Format de tracé"
#: pcbnew/pcbplot.cpp:215
#: pcbnew/pcbplot.cpp:227
msgid "HPGL Options:"
msgstr "Options HPGL:"
#: pcbnew/pcbplot.cpp:220
#: pcbnew/pcbplot.cpp:232
msgid "Pen Size"
msgstr "Diam Plume"
#: pcbnew/pcbplot.cpp:227
#: pcbnew/pcbplot.cpp:239
msgid "Pen Speed (cm/s)"
msgstr "Vitesse Plume ( cm/s )"
#: pcbnew/pcbplot.cpp:231
#: pcbnew/pcbplot.cpp:243
msgid "Set pen speed in cm/s"
msgstr "Ajuster Vitesse plume en centimètres par seconde"
#: pcbnew/pcbplot.cpp:233
#: pcbnew/pcbplot.cpp:245
msgid "Pen ovr"
msgstr "Recouvrement"
#: pcbnew/pcbplot.cpp:239
#: pcbnew/pcbplot.cpp:251
msgid "Set plot overlay for filling"
msgstr "Ajuste recouvrement des tracés pour les remplissages"
#: pcbnew/pcbplot.cpp:241
#: pcbnew/pcbplot.cpp:253
msgid "Lines Width"
msgstr "Epaiss. Lignes"
#: pcbnew/pcbplot.cpp:247
#: pcbnew/pcbplot.cpp:259
msgid "Set lines width used to plot in sketch mode and plot pads outlines on silk screen layers"
msgstr "Ajuste l'épaisseur des lignes utilisées pour tracer en mode contour et pour les contours des pads sur les couches de sérigraphie"
#: pcbnew/pcbplot.cpp:252
#: pcbnew/pcbplot.cpp:264
msgid "Absolute"
msgstr "Absolu"
#: pcbnew/pcbplot.cpp:252
#: pcbnew/pcbplot.cpp:264
msgid "Auxiliary axis"
msgstr "Axe Auxiliaire"
#: pcbnew/pcbplot.cpp:255
#: pcbnew/pcbplot.cpp:267
msgid "Plot Origin"
msgstr "Origine des Coord de Tracé"
#: pcbnew/pcbplot.cpp:283
#: pcbnew/pcbplot.cpp:295
msgid "X scale adjust"
msgstr "Ajustage Echelle X"
#: pcbnew/pcbplot.cpp:286
#: pcbnew/pcbplot.cpp:298
msgid "Set X scale adjust for exact scale plotting"
msgstr "Ajuster échelle X pour traçage à l'échelle exacte"
#: pcbnew/pcbplot.cpp:290
#: pcbnew/pcbplot.cpp:302
msgid "Y scale adjust"
msgstr "Ajustage Echelle Y"
#: pcbnew/pcbplot.cpp:293
#: pcbnew/pcbplot.cpp:305
msgid "Set Y scale adjust for exact scale plotting"
msgstr "Ajuster échelle Y pour traçage à l'échelle exacte"
#: pcbnew/pcbplot.cpp:296
#: pcbnew/pcbplot.cpp:308
msgid "Plot negative"
msgstr "Tracé en Négatif"
#: pcbnew/pcbplot.cpp:305
#: pcbnew/pcbplot.cpp:317
msgid "Save Options"
msgstr "Sauver Options"
#: pcbnew/pcbplot.cpp:309
#: pcbnew/pcbplot.cpp:321
msgid "Generate drill file"
msgstr "Créer Fichier de perçage"
#: pcbnew/pcbplot.cpp:312
#: pcbnew/pcbplot.cpp:324
msgid "Close"
msgstr "Fermer"
#: pcbnew/pcbplot.cpp:358
#: pcbnew/pcbplot.cpp:370
msgid "Exclude Edges_Pcb layer"
msgstr "Exclure Couche Contours PCB"
#: pcbnew/pcbplot.cpp:362
#: pcbnew/pcbplot.cpp:374
msgid "Exclude contents of Edges_Pcb layer from all other layers"
msgstr "Exclure les tracés contour PCB des autres couches"
#: pcbnew/pcbplot.cpp:369
#: pcbnew/pcbplot.cpp:381
msgid "Print sheet ref"
msgstr "Imprimer cartouche"
#: pcbnew/pcbplot.cpp:380
#: pcbnew/pcbplot.cpp:392
msgid "Print pads on silkscreen"
msgstr "Pads sur Sérigraphie"
#: pcbnew/pcbplot.cpp:387
#: pcbnew/pcbplot.cpp:399
msgid "Enable/disable print/plot pads on silkscreen layers"
msgstr "Active/désactive tracé des pastilles sur les couches de sérigraphie"
#: pcbnew/pcbplot.cpp:391
#: pcbnew/pcbplot.cpp:403
msgid "Always print pads"
msgstr "Toujours tracer pads"
#: pcbnew/pcbplot.cpp:396
#: pcbnew/pcbplot.cpp:408
msgid "Force print/plot pads on ALL layers"
msgstr "Force le tracé des pastilles sur TOUTES les couches"
#: pcbnew/pcbplot.cpp:401
#: pcbnew/pcbplot.cpp:413
msgid "Print module value"
msgstr "Imprimer Valeur Module"
#: pcbnew/pcbplot.cpp:405
#: pcbnew/pcbplot.cpp:417
msgid "Enable/disable print/plot module value on silkscreen layers"
msgstr "Active/désactive le tracé des textes valeurs des modules sur couches de sérigraphie"
#: pcbnew/pcbplot.cpp:409
#: pcbnew/pcbplot.cpp:421
msgid "Print module reference"
msgstr "Imprimer Référence Module"
#: pcbnew/pcbplot.cpp:413
#: pcbnew/pcbplot.cpp:425
msgid "Enable/disable print/plot module reference on silkscreen layers"
msgstr "Active/désactive le tracé des textes référence des modules sur couches de sérigraphie"
#: pcbnew/pcbplot.cpp:417
#: pcbnew/pcbplot.cpp:429
msgid "Print other module texts"
msgstr "Imprimer autres textes module"
#: pcbnew/pcbplot.cpp:421
#: pcbnew/pcbplot.cpp:433
msgid "Enable/disable print/plot module field texts on silkscreen layers"
msgstr "Active/désactive le tracé des textes des champs des modules sur couches de sérigraphie"
#: pcbnew/pcbplot.cpp:426
#: pcbnew/pcbplot.cpp:438
msgid "Force print invisible texts"
msgstr "Force tracé textes invisibles"
#: pcbnew/pcbplot.cpp:430
#: pcbnew/pcbplot.cpp:442
msgid "Force print/plot module invisible texts on silkscreen layers"
msgstr "Force le tracé des textes invisibles sur couches de sérigraphie"
#: pcbnew/pcbplot.cpp:435
#: pcbnew/pcbplot.cpp:447
msgid "No drill mark"
msgstr "Pas de marque"
#: pcbnew/pcbplot.cpp:436
#: pcbnew/pcbplot.cpp:448
msgid "Small mark"
msgstr "Petite marque"
#: pcbnew/pcbplot.cpp:437
#: pcbnew/pcbplot.cpp:449
msgid "Real drill"
msgstr "Perçage réel"
#: pcbnew/pcbplot.cpp:441
#: pcbnew/pcbplot.cpp:453
msgid "Pads Drill Opt"
msgstr "Options Perçage Pads"
#: pcbnew/pcbplot.cpp:450
#: pcbnew/pcbplot.cpp:462
msgid "Auto scale"
msgstr "Ech. auto"
#: pcbnew/pcbplot.cpp:451
#: pcbnew/pcbplot.cpp:463
msgid "Scale 1"
msgstr "Echelle 1"
#: pcbnew/pcbplot.cpp:452
#: pcbnew/pcbplot.cpp:464
msgid "Scale 1.5"
msgstr "Echelle 1,5"
#: pcbnew/pcbplot.cpp:453
#: pcbnew/pcbplot.cpp:465
msgid "Scale 2"
msgstr "Echelle 2"
#: pcbnew/pcbplot.cpp:454
#: pcbnew/pcbplot.cpp:466
msgid "Scale 3"
msgstr "Echelle 3"
#: pcbnew/pcbplot.cpp:458
#: pcbnew/pcbplot.cpp:470
msgid "Scale Opt"
msgstr "Echelle"
#: pcbnew/pcbplot.cpp:465
#: pcbnew/pcbplot.cpp:477
msgid "Line"
msgstr "Ligne"
#: pcbnew/pcbplot.cpp:465
#: pcbnew/pcbplot.cpp:477
msgid "Filled"
msgstr "Plein"
#: pcbnew/pcbplot.cpp:466
#: pcbnew/pcbplot.cpp:478
msgid "Sketch"
msgstr "Contour"
#: pcbnew/pcbplot.cpp:468
#: pcbnew/pcbplot.cpp:480
msgid "Plot Mode"
msgstr "Mode de Tracé"
#: pcbnew/pcbplot.cpp:476
#: pcbnew/pcbplot.cpp:488
msgid "Plot mirror"
msgstr "Tracé Miroir"
#: pcbnew/pcbplot.cpp:482
#: pcbnew/pcbplot.cpp:494
msgid "Vias on mask"
msgstr "Vias sur masque"
#: pcbnew/pcbplot.cpp:486
#: pcbnew/pcbplot.cpp:498
msgid "Print/plot vias on mask layers. They are in this case not protected"
msgstr "Trace vias sur vernis épargne. Elles seront non protégées"
#: pcbnew/pcbplot.cpp:490
msgid "Org = Centre"
msgstr "Org = Centre"
#: pcbnew/pcbplot.cpp:493
msgid "Draw origin ( 0,0 ) in sheet center"
msgstr "Origine des tracés au centre de la feuille"
#: pcbnew/pcbplot.cpp:707
#: pcbnew/pcbplot.cpp:745
msgid "Adobe post script files (.ps)|*.ps"
msgstr "Fichiers Adobe post script (.ps)|*.ps"
#: pcbnew/pcbplot.cpp:714
#: pcbnew/pcbplot.cpp:751
msgid "GERBER photo plot files (.pho)|*.pho"
msgstr "Fichiers phottraçage GERBER (.pho)|*.pho"
#: pcbnew/pcbplot.cpp:719
#: pcbnew/pcbplot.cpp:756
msgid "HPGL plot files (.plt)|*.plt"
msgstr "Fichiers Tracé HPGL (.plt)|*.plt"
#: pcbnew/pcbplot.cpp:726
#: pcbnew/pcbplot.cpp:762
msgid "DXF files (.dxf)|*.dxf"
msgstr "Fichiers DXF (.dxf)|*.dxf"
#: pcbnew/pcbplot.cpp:769
msgid "Warning: Scale option set to a very small value"
msgstr "Attention: option d'échelle ajustée à une valeur très petite"
#: pcbnew/pcbplot.cpp:729
#: pcbnew/pcbplot.cpp:772
msgid "Warning: Scale option set to a very large value"
msgstr "Attention: option d'échelle ajustée à une valeur très grande"
#: pcbnew/pcbplot.cpp:771
#: pcbnew/pcbplot.cpp:821
msgid "No layer selected"
msgstr "Pas de couche sélectionnée"
#: pcbnew/via_edit.cpp:54
msgid "Incorrect value for Via drill. No via drill change"
msgstr "Valeur incorrecte pour perçage. Pas de changement pour la via"
#: pcbnew/class_pcb_text.cpp:234
msgid "COTATION"
msgstr "COTATION"
#: pcbnew/class_pcb_text.cpp:236
msgid "PCB Text"
msgstr "Texte PCB"
#: pcbnew/class_pcb_text.cpp:238
msgid "Layer"
msgstr "Couche"
#: pcbnew/class_pcb_text.cpp:242
#: pcbnew/cotation.cpp:109
msgid "Mirror"
msgstr "Miroir"
#: pcbnew/class_pcb_text.cpp:244
msgid "No"
msgstr "Non"
#: pcbnew/class_pcb_text.cpp:246
msgid "Yes"
msgstr "Oui"
#: pcbnew/class_pcb_text.cpp:249
msgid "Orient"
msgstr "Orient"
#: pcbnew/class_pcb_text.cpp:252
#: pcbnew/cotation.cpp:125
msgid "Width"
msgstr "Epaisseur"
#: pcbnew/class_pcb_text.cpp:255
msgid "H Size"
msgstr "Taille H"
#: pcbnew/class_pcb_text.cpp:258
msgid "V Size"
msgstr "Taille V"
#: pcbnew/pcbnew.cpp:107
msgid "Pcbnew is already running, Continue?"
msgstr "Pcbnew est en cours d'exécution. Continuer ?"
#: pcbnew/cotation.cpp:84
msgid "Dimension properties"
msgstr "Propriétés des Cotes"
#: pcbnew/cotation.cpp:103
msgid "OK"
msgstr "OK"
#: pcbnew/cotation.cpp:106
msgid "Cancel"
msgstr "Annuler"
#: pcbnew/cotation.cpp:109
msgid "Normal"
msgstr "Normal"
#: pcbnew/cotation.cpp:109
msgid "Mirror"
msgstr "Miroir"
#: pcbnew/cotation.cpp:110
msgid "Display"
msgstr "Affichage"
......@@ -386,6 +523,10 @@ msgstr "Affichage"
msgid "Size"
msgstr "Taille "
#: pcbnew/cotation.cpp:125
msgid "Width"
msgstr "Epaisseur"
#: pcbnew/cotation.cpp:129
msgid "Layer:"
msgstr "Couche:"
......@@ -508,78 +649,13 @@ msgstr "Créer Gap MicroOnde "
msgid "Gap (inch):"
msgstr "Gap (inch):"
#: pcbnew/plot_rtn.cpp:207
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"reference\" text."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"référence\"."
#: pcbnew/plot_rtn.cpp:227
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"value\" text."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"valeur\"."
#: pcbnew/plot_rtn.cpp:268
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"module text\" text of %s."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"texte module\" de %s."
#: pcbnew/gendrill.cpp:27
msgid "Drill files (*.drl)|*.drl"
msgstr "Fichiers de Perçage (*.drl)|*.drl"
#: pcbnew/gendrill.cpp:319
msgid "Save Drill File"
msgstr "Sauver Fichier de Perçage"
#: pcbnew/gendrill.cpp:389
#: pcbnew/dialog_gendrill.cpp:183
msgid "2:3"
msgstr "2:3"
#: pcbnew/gendrill.cpp:390
#: pcbnew/dialog_gendrill.cpp:184
msgid "2:4"
msgstr "2:4"
#: pcbnew/gendrill.cpp:395
msgid "3:2"
msgstr "3:2"
#: pcbnew/gendrill.cpp:396
msgid "3:3"
msgstr "3:3"
#: pcbnew/gendrill.cpp:750
msgid "PostScript files (.ps)|*.ps"
msgstr "Fichiers PostScript (.ps)|*.ps"
#: pcbnew/gendrill.cpp:763
msgid "Save Drill Plot File"
msgstr "Sauver Plan de Perçage"
#: pcbnew/gendrill.cpp:774
msgid "Unable to create file"
msgstr "Impossible de créer le fichier"
#: pcbnew/gendrill.cpp:801
msgid "Drill report files (.rpt)|*.rpt"
msgstr "Fichiers rapport de perçage (.rpt)*.rpt"
#: pcbnew/plotgerb.cpp:55
msgid "unable to create file "
msgstr "Impossible de créer fichier "
#: pcbnew/gendrill.cpp:807
msgid "Save Drill Report File"
msgstr "Sauver Fichier Rapport de Perçage"
#: pcbnew/plotgerb.cpp:68
msgid "File"
msgstr "Fichier"
#: pcbnew/hotkeys.cpp:477
#, c-format
......@@ -769,190 +845,37 @@ msgstr "Last Change"
msgid "Netlist path"
msgstr "Chemin Netliste "
#: pcbnew/class_module.cpp:954
msgid "Pads"
msgstr "Pads"
#: pcbnew/class_module.cpp:962
msgid "Stat"
msgstr "Stat"
#: pcbnew/class_module.cpp:969
msgid "Module"
msgstr "Module"
#: pcbnew/class_module.cpp:972
msgid "3D-Shape"
msgstr "Forme 3D"
#: pcbnew/class_module.cpp:976
msgid "Doc: "
msgstr "Doc: "
#: pcbnew/class_module.cpp:977
msgid "KeyW: "
msgstr "KeyW: "
#: pcbnew/dialog_gendrill.cpp:165
msgid "Millimeters"
msgstr "Millimètres"
#: pcbnew/dialog_gendrill.cpp:166
msgid "Inches"
msgstr "Pouces"
#: pcbnew/dialog_gendrill.cpp:167
msgid "Drill Units:"
msgstr "Unités perçage:"
#: pcbnew/dialog_gendrill.cpp:172
msgid "decimal format"
msgstr "Format décimal"
#: pcbnew/dialog_gendrill.cpp:173
msgid "suppress leading zeros"
msgstr "Suppression zeros de tête"
#: pcbnew/dialog_gendrill.cpp:174
msgid "suppress trailing zeros"
msgstr "Suppression zeros de fin"
#: pcbnew/dialog_gendrill.cpp:175
msgid "keep zeros"
msgstr "Garder les zéros"
#: pcbnew/dialog_gendrill.cpp:176
msgid "Zeros Format"
msgstr "Format des zéros"
#: pcbnew/dialog_gendrill.cpp:179
msgid "Choose EXCELLON numbers notation"
msgstr "Choisir la notation des nombres en format EXCELLON"
#: pcbnew/dialog_gendrill.cpp:185
msgid "Precision"
msgstr "Précision"
#: pcbnew/dialog_gendrill.cpp:188
msgid "Choose EXCELLON numbers precision"
msgstr "Choisir la précision des nombres en format EXCELLON"
#: pcbnew/dialog_gendrill.cpp:192
msgid "absolute"
msgstr "Absolu"
#: pcbnew/dialog_gendrill.cpp:193
msgid "auxiliary axis"
msgstr "Axe Auxiliaire"
#: pcbnew/dialog_gendrill.cpp:194
msgid "Drill Origin:"
msgstr "Origine des coord de perçage:"
#: pcbnew/dialog_gendrill.cpp:197
msgid "Choose the coordinate origin: absolute or relative to the auxiliray axis"
msgstr "Choisir l'origine des coordonnées: absolue ou relative à l'axe auxiliaire"
#: pcbnew/dialog_gendrill.cpp:204
#: pcbnew/dialog_gendrill.cpp:214
msgid "None"
msgstr "Aucun"
#: pcbnew/dialog_gendrill.cpp:205
msgid "drill sheet (HPGL)"
msgstr "Plan de perçage (HPGL)"
#: pcbnew/dialog_gendrill.cpp:206
msgid "drill sheet (PostScript)"
msgstr "Plan de perçage (Postscript)"
#: pcbnew/dialog_gendrill.cpp:207
msgid "Drill Sheet:"
msgstr "Plan de perçage:"
#: pcbnew/dialog_gendrill.cpp:210
msgid "Creates a drill map in PS or HPGL format"
msgstr "Créer un plan de perçage en format PS ou HPGL"
#: pcbnew/dialog_gendrill.cpp:215
msgid "Drill report"
msgstr "Rapport de perçage"
#: pcbnew/dialog_gendrill.cpp:216
msgid "Drill Report:"
msgstr "Rapport de perçage:"
#: pcbnew/dialog_gendrill.cpp:219
msgid "Creates a plain text report"
msgstr "Créer un fichier rapport ascii"
#: pcbnew/dialog_gendrill.cpp:222
msgid "HPGL plotter Options:"
msgstr "Options de Tracé HPGL:"
#: pcbnew/dialog_gendrill.cpp:226
msgid "Speed (cm/s)"
msgstr "Vitesse plume ( cm/s )"
#: pcbnew/dialog_gendrill.cpp:232
msgid "Pen Number"
msgstr "Numéro de plume"
#: pcbnew/dialog_gendrill.cpp:238
msgid "Options:"
msgstr "Options :"
#: pcbnew/dialog_gendrill.cpp:242
msgid "mirror y axis"
msgstr "Miroir sur axe Y"
#: pcbnew/dialog_gendrill.cpp:246
msgid "minimal header"
msgstr "Entête minimal"
#: pcbnew/dialog_gendrill.cpp:249
msgid "If checked, the EXCELLON header is minimal"
msgstr "Si activé, l'entête du fichier EXELLON est minimale"
#: pcbnew/dialog_gendrill.cpp:255
msgid "Info:"
msgstr "Infos:"
#: pcbnew/dialog_gendrill.cpp:259
msgid "Default Vias Drill:"
msgstr "Perçage vias par Défaut"
#: pcbnew/dialog_gendrill.cpp:263
msgid "Via Drill Value"
msgstr "Perçage des Vias"
#: pcbnew/class_module.cpp:941
msgid "Layer"
msgstr "Couche"
#: pcbnew/dialog_gendrill.cpp:266
msgid "Micro Vias Drill:"
msgstr "Perçage Micro Via:"
#: pcbnew/class_module.cpp:954
msgid "Pads"
msgstr "Pads"
#: pcbnew/dialog_gendrill.cpp:270
msgid "Micro Via Drill Value"
msgstr "Valeur Perçage Micro Via"
#: pcbnew/class_module.cpp:962
msgid "Stat"
msgstr "Stat"
#: pcbnew/dialog_gendrill.cpp:273
msgid "Holes Count:"
msgstr "Nb Trous"
#: pcbnew/class_module.cpp:966
msgid "Orient"
msgstr "Orient"
#: pcbnew/dialog_gendrill.cpp:277
msgid "Pads:"
msgstr "Pastilles:"
#: pcbnew/class_module.cpp:969
msgid "Module"
msgstr "Module"
#: pcbnew/dialog_gendrill.cpp:280
msgid "Through Vias:"
msgstr "Via Traversantes:"
#: pcbnew/class_module.cpp:972
msgid "3D-Shape"
msgstr "Forme 3D"
#: pcbnew/dialog_gendrill.cpp:283
msgid "Micro Vias:"
msgstr "Micro Vias:"
#: pcbnew/class_module.cpp:976
msgid "Doc: "
msgstr "Doc: "
#: pcbnew/dialog_gendrill.cpp:286
msgid "Buried Vias:"
msgstr "Via Enterrées:"
#: pcbnew/class_module.cpp:977
msgid "KeyW: "
msgstr "KeyW: "
#: pcbnew/tool_pcb.cpp:30
msgid ""
......@@ -1476,14 +1399,6 @@ msgstr "Liste pads non connectés"
msgid "Finished\n"
msgstr "Fini\n"
#: pcbnew/plothpgl.cpp:68
msgid "Unable to create "
msgstr "Impossible de créer "
#: pcbnew/plothpgl.cpp:75
msgid "File"
msgstr "Fichier"
#: pcbnew/cleaningoptions_dialog.cpp:146
msgid "Static"
msgstr "Statique"
......@@ -1573,10 +1488,12 @@ msgid "User Grid Size Y"
msgstr "Grille perso dim Y"
#: pcbnew/set_grid.cpp:142
#: pcbnew/dialog_initpcb.cpp:159
msgid "&OK"
msgstr "&OK"
#: pcbnew/set_grid.cpp:146
#: pcbnew/dialog_initpcb.cpp:162
msgid "&Cancel"
msgstr "&Annuler"
......@@ -1781,6 +1698,14 @@ msgstr "Sauver Fichier C.I."
msgid "Warning: unable to create backup file "
msgstr "Attention: impossible de créer un fichier backup "
#: pcbnew/files.cpp:364
#: pcbnew/librairi.cpp:296
#: pcbnew/librairi.cpp:445
#: pcbnew/librairi.cpp:600
#: pcbnew/librairi.cpp:803
msgid "Unable to create "
msgstr "Impossible de créer "
#: pcbnew/files.cpp:383
msgid "Backup file: "
msgstr "Fichier backup: "
......@@ -1963,6 +1888,33 @@ msgstr "N'affiche pas les couches cuivre"
msgid "Apply"
msgstr "Appliquer"
#: pcbnew/plot_rtn.cpp:145
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"reference\" text."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"référence\"."
#: pcbnew/plot_rtn.cpp:165
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"value\" text."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"valeur\"."
#: pcbnew/plot_rtn.cpp:203
#, c-format
msgid ""
"Your BOARD has a bad layer number of %u for module\n"
" %s's \"module text\" text of %s."
msgstr ""
"Votre PCB a un mauvais numero de couche %u pour le module\n"
" %s's \"texte module\" de %s."
#: pcbnew/dialog_edit_module.cpp:50
msgid "Module properties"
msgstr "Propriétés du Module"
......@@ -2556,15 +2508,6 @@ msgstr "&3D Visu"
msgid "&Help"
msgstr "&Aide"
#: pcbnew/plotgerb.cpp:102
msgid "unable to create file "
msgstr "Impossible de créer fichier "
#: pcbnew/plotgerb.cpp:800
#, c-format
msgid "unable to reopen file <%s>"
msgstr "Ne peut pas réouvrir fichier <%s>"
#: pcbnew/netlist.cpp:116
#, c-format
msgid "Netlist file %s not found"
......@@ -2753,7 +2696,6 @@ msgid "Track"
msgstr "Piste"
#: pcbnew/pcbframe.cpp:531
#: pcbnew/dialog_drc_base.cpp:35
msgid "Clearance"
msgstr "Isolation"
......@@ -2857,13 +2799,45 @@ msgstr "Itération"
msgid "Ok to abort ?"
msgstr "Ok pour arrêter ?"
#: pcbnew/gen_drill_report_files.cpp:392
msgid ""
" Drill map: Too many diameter values to draw to draw one symbol per drill value (max 13)\n"
"Plot uses circle shape for some drill values"
msgstr ""
"Plan de perçage: trop de diamètres différents pour tracer 1 symbole par diamètre (max 13)\n"
"Le tracé utilise des cercles pour quelques valeurs "
#: pcbnew/gendrill.cpp:27
msgid "Drill files (*.drl)|*.drl"
msgstr "Fichiers de Perçage (*.drl)|*.drl"
#: pcbnew/gendrill.cpp:319
msgid "Save Drill File"
msgstr "Sauver Fichier de Perçage"
#: pcbnew/gendrill.cpp:404
msgid "3:2"
msgstr "3:2"
#: pcbnew/gendrill.cpp:405
msgid "3:3"
msgstr "3:3"
#: pcbnew/gendrill.cpp:756
msgid "PostScript files (.ps)|*.ps"
msgstr "Fichiers PostScript (.ps)|*.ps"
#: pcbnew/gendrill.cpp:761
msgid "Gerber files (.pho)|*.pho"
msgstr "Fichiers Gerber (*.pho)|*.pho"
#: pcbnew/gendrill.cpp:779
msgid "Save Drill Plot File"
msgstr "Sauver Plan de Perçage"
#: pcbnew/gendrill.cpp:790
msgid "Unable to create file"
msgstr "Impossible de créer le fichier"
#: pcbnew/gendrill.cpp:817
msgid "Drill report files (.rpt)|*.rpt"
msgstr "Fichiers rapport de perçage (.rpt)*.rpt"
#: pcbnew/gendrill.cpp:823
msgid "Save Drill Report File"
msgstr "Sauver Fichier Rapport de Perçage"
#: pcbnew/ioascii.cpp:174
msgid "Error: Unexpected end of file !"
......@@ -3277,34 +3251,13 @@ msgstr "Fichier rapport DRC (.rpt)|*.rpt"
msgid "Save DRC Report File"
msgstr "Sauver Fichier Rapport DRC:"
#: pcbnew/dialog_print_using_printer.cpp:129
msgid "Error Init Printer info"
msgstr "Erreur Init info imprimante"
#: pcbnew/dialog_print_using_printer.cpp:163
msgid "Layers:"
msgstr "Couches:"
#: pcbnew/dialog_print_using_printer.cpp:374
msgid "Printer Problem!"
msgstr "Problème d'imprimante"
#: pcbnew/dialog_print_using_printer.cpp:396
msgid "Print Preview"
msgstr "Prévisualisation"
#: pcbnew/dialog_print_using_printer.cpp:465
msgid "Print"
msgstr "Imprimer"
#: pcbnew/dialog_print_using_printer.cpp:476
msgid "There was a problem printing"
msgstr "Il y a un problème d'impression"
#: pcbnew/dialog_print_using_printer.cpp:492
#, c-format
msgid "Print page %d"
msgstr "Imprimer page %d"
#: pcbnew/gen_drill_report_files.cpp:264
msgid ""
" Drill map: Too many diameter values to draw to draw one symbol per drill value (max 13)\n"
"Plot uses circle shape for some drill values"
msgstr ""
"Plan de perçage: trop de diamètres différents pour tracer 1 symbole par diamètre (max 13)\n"
"Le tracé utilise des cercles pour quelques valeurs "
#: pcbnew/dsn.cpp:502
msgid "Line length exceeded"
......@@ -3609,6 +3562,14 @@ msgstr "Ref."
msgid "Text"
msgstr "Texte"
#: pcbnew/class_text_mod.cpp:482
msgid "No"
msgstr "Non"
#: pcbnew/class_text_mod.cpp:484
msgid "Yes"
msgstr "Oui"
#: pcbnew/class_text_mod.cpp:494
msgid " No"
msgstr "Non"
......@@ -3617,6 +3578,14 @@ msgstr "Non"
msgid " Yes"
msgstr "Oui"
#: pcbnew/class_text_mod.cpp:507
msgid "H Size"
msgstr "Taille H"
#: pcbnew/class_text_mod.cpp:510
msgid "V Size"
msgstr "Taille V"
#: pcbnew/onleftclick.cpp:183
msgid "Graphic not authorized on Copper layers"
msgstr "Graphique non autorisé sur Couches Cuivre"
......@@ -4427,6 +4396,11 @@ msgstr "Conn"
msgid "Pad Type:"
msgstr "Type Pad:"
#: pcbnew/dialog_pad_properties_base.cpp:102
#: pcbnew/dialog_SVG_print_base.cpp:23
msgid "Layers:"
msgstr "Couches:"
#: pcbnew/dialog_pad_properties_base.cpp:104
msgid "Copper layer"
msgstr "Couches Cuivre"
......@@ -4965,6 +4939,14 @@ msgstr "Hauteur Texte Module"
msgid "Text Module Size H"
msgstr "Largeur Texte Module"
#: pcbnew/class_pcb_text.cpp:234
msgid "COTATION"
msgstr "COTATION"
#: pcbnew/class_pcb_text.cpp:236
msgid "PCB Text"
msgstr "Texte PCB"
#: pcbnew/dialog_netlist.cpp:67
msgid "Netlist Selection:"
msgstr "Sélection de la netliste"
......@@ -5057,6 +5039,10 @@ msgstr "Options Pages"
msgid "Preview"
msgstr "Prévisualisation"
#: pcbnew/dialog_print_using_printer_base.cpp:125
msgid "Print"
msgstr "Imprimer"
#: pcbnew/dialog_netlist_fbp.cpp:25
#: pcbnew/class_board_item.cpp:96
msgid "Reference"
......@@ -5417,7 +5403,6 @@ msgid "Delete part in current library"
msgstr "Supprimer composant en librairie de travail"
#: pcbnew/tool_modedit.cpp:60
#: pcbnew/dialog_exchange_modules_base.cpp:39
msgid "New Module"
msgstr "Nouveau Module"
......@@ -5582,6 +5567,27 @@ msgstr ""
"Chemins (chemins système et chemins utilisateurs) utilisés pour chercher et charger les fichiers libriries et documentation des composants.\n"
"Triés par ordre de priorité décroissante."
#: pcbnew/dialog_print_using_printer.cpp:129
msgid "Error Init Printer info"
msgstr "Erreur Init info imprimante"
#: pcbnew/dialog_print_using_printer.cpp:374
msgid "Printer Problem!"
msgstr "Problème d'imprimante"
#: pcbnew/dialog_print_using_printer.cpp:396
msgid "Print Preview"
msgstr "Prévisualisation"
#: pcbnew/dialog_print_using_printer.cpp:476
msgid "There was a problem printing"
msgstr "Il y a un problème d'impression"
#: pcbnew/dialog_print_using_printer.cpp:492
#, c-format
msgid "Print page %d"
msgstr "Imprimer page %d"
#: pcbnew/class_board_item.cpp:27
msgid "Bezier Curve"
msgstr "Courbe de Bezier"
......@@ -6157,6 +6163,95 @@ msgstr ""
msgid "Nothing found"
msgstr " Rien trouvé"
#: eeschema/plothpgl.cpp:199
msgid "Sheet Size"
msgstr "Dim. feuille"
#: eeschema/plothpgl.cpp:200
msgid "Page Size A4"
msgstr "Feuille A4"
#: eeschema/plothpgl.cpp:201
msgid "Page Size A3"
msgstr "Feuille A3"
#: eeschema/plothpgl.cpp:202
msgid "Page Size A2"
msgstr "Feuille A2"
#: eeschema/plothpgl.cpp:203
msgid "Page Size A1"
msgstr "Feuille A1"
#: eeschema/plothpgl.cpp:204
msgid "Page Size A0"
msgstr "Feuille A0"
#: eeschema/plothpgl.cpp:205
msgid "Page Size A"
msgstr "Feuille A"
#: eeschema/plothpgl.cpp:206
msgid "Page Size B"
msgstr "Feuille B"
#: eeschema/plothpgl.cpp:207
msgid "Page Size C"
msgstr "Feuille C"
#: eeschema/plothpgl.cpp:208
msgid "Page Size D"
msgstr "Feuille D"
#: eeschema/plothpgl.cpp:209
msgid "Page Size E"
msgstr "Feuille E"
#: eeschema/plothpgl.cpp:210
msgid "Plot page size:"
msgstr "Format de la feuille:"
#: eeschema/plothpgl.cpp:217
msgid "Pen control:"
msgstr "Contrôle plume"
#: eeschema/plothpgl.cpp:221
msgid "Pen Width ( mils )"
msgstr "Epaiss plume (mils)"
#: eeschema/plothpgl.cpp:227
msgid "Pen Speed ( cm/s )"
msgstr "Vitesse plume ( cm/s )"
#: eeschema/plothpgl.cpp:239
msgid "Page offset:"
msgstr "Offset page:"
#: eeschema/plothpgl.cpp:243
msgid "Plot Offset X"
msgstr "Offset de tracé X"
#: eeschema/plothpgl.cpp:249
msgid "Plot Offset Y"
msgstr "Offset de tracé Y"
#: eeschema/plothpgl.cpp:260
msgid "&Plot Page"
msgstr "&Tracer Page"
#: eeschema/plothpgl.cpp:264
msgid "Plot A&LL"
msgstr "&Tout Tracer"
#: eeschema/plothpgl.cpp:272
msgid "&Accept Offset"
msgstr "&Accepter Offset"
#: eeschema/plothpgl.cpp:592
#, c-format
msgid "Plot: %s\n"
msgstr "Trace: %s\n"
#: eeschema/eeredraw.cpp:100
msgid "Sheet"
msgstr "Feuille"
......@@ -6202,10 +6297,6 @@ msgstr "Erreur en création de "
msgid "Failed to create file "
msgstr "Impossible de créer le fichier "
#: eeschema/eeschema.cpp:152
msgid "Eeschema is already running, Continue?"
msgstr "Eeschema est en cours d'exécution. Continuer ?"
#: eeschema/hierarch.cpp:122
msgid "Navigator"
msgstr "Navigateur"
......@@ -7035,6 +7126,30 @@ msgstr "> %-28.28s PinSheet %-7.7s (Feuille %s) pos: %3.3f, %3.3f\n"
msgid "#End labels\n"
msgstr "#End labels\n"
#: eeschema/plotps.cpp:174
msgid "Plot Options:"
msgstr "Options de Tracé:"
#: eeschema/plotps.cpp:179
msgid "B/W"
msgstr "N/B"
#: eeschema/plotps.cpp:181
msgid "Plot Color:"
msgstr "Tracé et Couleurs:"
#: eeschema/plotps.cpp:185
msgid "Print Sheet Ref"
msgstr "Imprimer cartouche"
#: eeschema/plotps.cpp:207
msgid "Messages :"
msgstr "Messages :"
#: eeschema/plotps.cpp:221
msgid "Default Line Width"
msgstr "Epaiss. ligne par défaut"
#: eeschema/menubar.cpp:42
msgid "&New"
msgstr "&Nouveau"
......@@ -7099,199 +7214,207 @@ msgstr "Tracé SVG"
msgid "Plot schematic sheet in SVG format"
msgstr "Tracer les feuilles schématiques en format SVG"
#: eeschema/menubar.cpp:97
#: eeschema/menubar.cpp:94
msgid "Plot DXF"
msgstr "Tracé DXF"
#: eeschema/menubar.cpp:95
msgid "Plot schematic sheet in DXF format"
msgstr "Tracer les feuilles schématiques en format DXF"
#: eeschema/menubar.cpp:103
msgid "Plot to Clipboard"
msgstr "Tracé dans Presse papier"
#: eeschema/menubar.cpp:98
#: eeschema/menubar.cpp:104
msgid "Export drawings to clipboard"
msgstr " Exporter le dessin dans le presse-papier"
#: eeschema/menubar.cpp:105
#: eeschema/menubar.cpp:111
msgid "Plot schematic sheet in HPGL, PostScript or SVG format"
msgstr "Tracer les feuilles schématiques en format HPGL, POSTSCRIPT ou SVG"
#: eeschema/menubar.cpp:109
#: eeschema/menubar.cpp:115
msgid "Quit Eeschema"
msgstr "Quitter Eeschema"
#: eeschema/menubar.cpp:118
#: eeschema/menubar.cpp:124
msgid "&Undo\t"
msgstr "&Undo\t"
#: eeschema/menubar.cpp:124
#: eeschema/menubar.cpp:130
msgid "&Redo\t"
msgstr "&Redo\t"
#: eeschema/menubar.cpp:139
#: eeschema/menubar.cpp:145
msgid "Find"
msgstr "Chercher"
#: eeschema/menubar.cpp:146
#: eeschema/menubar.cpp:152
msgid "Backannotate"
msgstr "Rétro Annotation"
#: eeschema/menubar.cpp:147
#: eeschema/menubar.cpp:153
msgid "Back annotated footprint fields"
msgstr "Rétroannotation des champs modules"
#: eeschema/menubar.cpp:185
#: eeschema/menubar.cpp:191
msgid "&Component"
msgstr "&Composant"
#: eeschema/menubar.cpp:186
#: eeschema/menubar.cpp:192
msgid "Place the component"
msgstr "Placer le Composant"
#: eeschema/menubar.cpp:190
#: eeschema/menubar.cpp:196
msgid "&Power port"
msgstr "Power Symbole"
#: eeschema/menubar.cpp:191
#: eeschema/menubar.cpp:197
msgid "Place the power port"
msgstr "Placer le Symbole Power"
#: eeschema/menubar.cpp:195
#: eeschema/menubar.cpp:201
msgid "&Wire"
msgstr "&Fil"
#: eeschema/menubar.cpp:196
#: eeschema/menubar.cpp:202
msgid "Place the wire"
msgstr "Place fil"
#: eeschema/menubar.cpp:200
#: eeschema/menubar.cpp:206
msgid "&Bus"
msgstr "&Bus"
#: eeschema/menubar.cpp:201
#: eeschema/menubar.cpp:207
msgid "Place bus"
msgstr "Place bus"
#: eeschema/menubar.cpp:206
#: eeschema/menubar.cpp:212
msgid "W&ire to bus entry"
msgstr "Entrées de bus (type fil vers bus)"
#: eeschema/menubar.cpp:212
#: eeschema/menubar.cpp:218
msgid "B&us to bus entry"
msgstr "Entrées de bus (type bus vers bus)"
#: eeschema/menubar.cpp:217
#: eeschema/menubar.cpp:223
msgid "No connect flag"
msgstr "Symbole de Non Connexion"
#: eeschema/menubar.cpp:218
#: eeschema/menubar.cpp:224
msgid "Place a no connect flag"
msgstr "Placer un Symbole de Non Connexion"
#: eeschema/menubar.cpp:222
#: eeschema/menubar.cpp:228
msgid "Net name"
msgstr "Net Name"
#: eeschema/menubar.cpp:227
#: eeschema/menubar.cpp:233
msgid "Global label"
msgstr "Label Global"
#: eeschema/menubar.cpp:228
#: eeschema/menubar.cpp:234
msgid "Place a global label. Warning: all global labels with the same name are connected in whole hierarchy"
msgstr "Placer un label global. Attention: tous les labels globaux avec le même nom sont connectés dans toute la hiérarchie"
#: eeschema/menubar.cpp:233
#: eeschema/menubar.cpp:239
msgid "Junction"
msgstr "Jonction"
#: eeschema/menubar.cpp:234
#: eeschema/menubar.cpp:240
msgid "Place junction"
msgstr "Place jonction"
#: eeschema/menubar.cpp:241
#: eeschema/menubar.cpp:247
msgid "Hierarchical label"
msgstr "Label Hiérarchique"
#: eeschema/menubar.cpp:248
#: eeschema/menubar.cpp:254
msgid "Hierarchical sheet"
msgstr "Feuille Hiérrachique"
#: eeschema/menubar.cpp:249
#: eeschema/menubar.cpp:255
msgid "Create a hierarchical sheet"
msgstr "Créer une Feuille Hiérachique"
#: eeschema/menubar.cpp:254
#: eeschema/menubar.cpp:260
msgid "Import Hierarchical Label"
msgstr "Importer Label Hiérarchique"
#: eeschema/menubar.cpp:255
#: eeschema/menubar.cpp:261
msgid "Place a pin sheet created by importing a hierarchical label from sheet"
msgstr "Placer une pin hiérarchique créée par importation d'un label hiérarchique de la feuille"
#: eeschema/menubar.cpp:261
#: eeschema/menubar.cpp:267
msgid "Add Hierarchical Pin to Sheet"
msgstr "Ajouter Pins de Hiérarchie dans feuille"
#: eeschema/menubar.cpp:262
#: eeschema/menubar.cpp:268
msgid "Place a hierarchical pin to sheet"
msgstr "Addition de pins de hiérarchie dans les feuilles symboles de hiérarchie"
#: eeschema/menubar.cpp:270
#: eeschema/menubar.cpp:276
msgid "Graphic line or polygon"
msgstr "Ligne ou polygone graphique"
#: eeschema/menubar.cpp:271
#: eeschema/menubar.cpp:277
msgid "Place graphic lines or polygons"
msgstr "Placer lignes ou polygones graphiques"
#: eeschema/menubar.cpp:277
#: eeschema/menubar.cpp:283
msgid "Graphic text (comment)"
msgstr "Textes graphiques (commentaires)"
#: eeschema/menubar.cpp:286
#: eeschema/menubar.cpp:292
msgid "Library preferences"
msgstr "Préférences pour Librairie"
#: eeschema/menubar.cpp:290
#: eeschema/menubar.cpp:296
msgid "&Colors"
msgstr "&Couleurs"
#: eeschema/menubar.cpp:291
#: eeschema/menubar.cpp:297
msgid "Color preferences"
msgstr "Préférences de couleurs"
#: eeschema/menubar.cpp:296
#: eeschema/menubar.cpp:302
msgid "&Options"
msgstr "&Options"
#: eeschema/menubar.cpp:297
#: eeschema/menubar.cpp:303
msgid "Eeschema general options and preferences"
msgstr "Options et préférences générales de Eeschema"
#: eeschema/menubar.cpp:304
#: eeschema/menubar.cpp:310
msgid "&Save preferences"
msgstr "&Sauver Préférences"
#: eeschema/menubar.cpp:309
#: eeschema/menubar.cpp:315
msgid "&Read preferences"
msgstr "&Lire Préférences"
#: eeschema/menubar.cpp:320
#: eeschema/menubar.cpp:326
msgid "Open the eeschema manual"
msgstr "Ouvrir la documentation de eeschema"
#: eeschema/menubar.cpp:324
#: eeschema/menubar.cpp:330
msgid "&About"
msgstr "&Au Sujet de"
#: eeschema/menubar.cpp:325
#: eeschema/menubar.cpp:331
msgid "About eeschema schematic designer"
msgstr "Au sujet de Eeschema (outil de conception schématique)"
#: eeschema/menubar.cpp:331
#: eeschema/menubar.cpp:337
msgid "&Edit"
msgstr "&Editer"
#: eeschema/menubar.cpp:332
#: eeschema/menubar.cpp:338
msgid "&View"
msgstr "&Voir"
#: eeschema/menubar.cpp:333
#: eeschema/menubar.cpp:339
msgid "&Place"
msgstr "&Placer"
......@@ -7321,99 +7444,13 @@ msgstr "Exporter le symbole"
msgid "Save Symbol in [%s]"
msgstr "Symbole sauvé en [%s]"
#: eeschema/class_pin.cpp:45
msgid "Pin"
msgstr "Pin"
#: eeschema/class_pin.cpp:1047
msgid "PinName"
msgstr "Nom Pin"
#: eeschema/class_pin.cpp:1056
msgid "PinNum"
msgstr "Num Pin"
#: eeschema/class_pin.cpp:1060
msgid "PinType"
msgstr "Type Pin"
#: eeschema/class_pin.cpp:1066
msgid "no"
msgstr "non"
#: eeschema/class_pin.cpp:1068
msgid "yes"
msgstr "oui"
#: eeschema/class_pin.cpp:1080
msgid "Up"
msgstr "Haut"
#: eeschema/class_pin.cpp:1084
msgid "Down"
msgstr "Bas"
#: eeschema/class_pin.cpp:1088
msgid "Left"
msgstr "Gauche"
#: eeschema/class_pin.cpp:1092
msgid "Right"
msgstr "Droite"
#: eeschema/plotps.cpp:177
#: eeschema/plothpgl.cpp:210
msgid "Page Size A4"
msgstr "Feuille A4"
#: eeschema/plotps.cpp:178
#: eeschema/plothpgl.cpp:215
msgid "Page Size A"
msgstr "Feuille A"
#: eeschema/plotps.cpp:179
#: eeschema/plothpgl.cpp:220
msgid "Plot page size:"
msgstr "Format de la feuille:"
#: eeschema/plotps.cpp:185
msgid "Plot Options:"
msgstr "Options de Tracé:"
#: eeschema/plotps.cpp:190
msgid "B/W"
msgstr "N/B"
#: eeschema/plotps.cpp:192
msgid "Plot Color:"
msgstr "Tracé et Couleurs:"
#: eeschema/plotps.cpp:196
msgid "Print Sheet Ref"
msgstr "Imprimer cartouche"
#: eeschema/plotps.cpp:205
#: eeschema/plothpgl.cpp:270
msgid "&Plot Page"
msgstr "&Tracer Page"
#: eeschema/plotps.cpp:209
#: eeschema/plothpgl.cpp:274
msgid "Plot A&LL"
msgstr "&Tout Tracer"
#: eeschema/plotps.cpp:218
msgid "Messages :"
msgstr "Messages :"
#: eeschema/plotps.cpp:232
msgid "Default Line Width"
msgstr "Epaiss. ligne par défaut"
#: eeschema/eeschema.cpp:145
msgid "Eeschema is already running, Continue?"
msgstr "Eeschema est en cours d'exécution. Continuer ?"
#: eeschema/plotps.cpp:435
#, c-format
msgid "Plot: %s\n"
msgstr "Trace: %s\n"
#: eeschema/eeconfig.cpp:289
msgid "Save Project Settings"
msgstr "Sauver Optionsr Projet"
#: eeschema/sheet.cpp:170
msgid "Sheetname:"
......@@ -7789,35 +7826,35 @@ msgstr "Nom"
msgid "FileName"
msgstr "Nom Fichier"
#: eeschema/schframe.cpp:316
#: eeschema/schframe.cpp:317
msgid "Schematic modified, Save before exit ?"
msgstr "Schématique modifiée, Sauver avant de quitter ?"
#: eeschema/schframe.cpp:444
#: eeschema/schframe.cpp:445
msgid "Draw wires and busses in any direction"
msgstr "Tracer les fils et bus de n'importe quelle direction"
#: eeschema/schframe.cpp:445
#: eeschema/schframe.cpp:446
msgid "Draw horizontal and vertical wires and busses only"
msgstr "Autoriser fils et bus verticaux et horizontaux seulement"
#: eeschema/schframe.cpp:453
#: eeschema/schframe.cpp:454
msgid "Do not show hidden pins"
msgstr "Ne pas affichager les pins invisibles"
#: eeschema/schframe.cpp:454
#: eeschema/schframe.cpp:455
msgid "Show hidden pins"
msgstr "Force affichage des pins invisibles"
#: eeschema/schframe.cpp:474
#: eeschema/schframe.cpp:475
msgid "Hide grid"
msgstr "Ne pas afficher la grille"
#: eeschema/schframe.cpp:474
#: eeschema/schframe.cpp:475
msgid "Show grid"
msgstr "Afficher grille"
#: eeschema/schframe.cpp:551
#: eeschema/schframe.cpp:552
msgid "Schematic"
msgstr "Schématique"
......@@ -7970,6 +8007,22 @@ msgstr "Vous devez fournir un nom pour ce composant"
msgid "Enter the text to be used within the schematic"
msgstr "Enter le texte qui doit être utilisé dans la schématique"
#: eeschema/dialog_edit_label_base.cpp:37
msgid "Right"
msgstr "Droite"
#: eeschema/dialog_edit_label_base.cpp:37
msgid "Up"
msgstr "Haut"
#: eeschema/dialog_edit_label_base.cpp:37
msgid "Left"
msgstr "Gauche"
#: eeschema/dialog_edit_label_base.cpp:37
msgid "Down"
msgstr "Bas"
#: eeschema/dialog_edit_label_base.cpp:39
msgid "Direction"
msgstr "Direction"
......@@ -8028,74 +8081,6 @@ msgstr " Convert"
msgid " Normal"
msgstr " Normal"
#: eeschema/plothpgl.cpp:209
msgid "Sheet Size"
msgstr "Dim. feuille"
#: eeschema/plothpgl.cpp:211
msgid "Page Size A3"
msgstr "Feuille A3"
#: eeschema/plothpgl.cpp:212
msgid "Page Size A2"
msgstr "Feuille A2"
#: eeschema/plothpgl.cpp:213
msgid "Page Size A1"
msgstr "Feuille A1"
#: eeschema/plothpgl.cpp:214
msgid "Page Size A0"
msgstr "Feuille A0"
#: eeschema/plothpgl.cpp:216
msgid "Page Size B"
msgstr "Feuille B"
#: eeschema/plothpgl.cpp:217
msgid "Page Size C"
msgstr "Feuille C"
#: eeschema/plothpgl.cpp:218
msgid "Page Size D"
msgstr "Feuille D"
#: eeschema/plothpgl.cpp:219
msgid "Page Size E"
msgstr "Feuille E"
#: eeschema/plothpgl.cpp:227
msgid "Pen control:"
msgstr "Contrôle plume"
#: eeschema/plothpgl.cpp:231
msgid "Pen Width ( mils )"
msgstr "Epaiss plume (mils)"
#: eeschema/plothpgl.cpp:237
msgid "Pen Speed ( cm/s )"
msgstr "Vitesse plume ( cm/s )"
#: eeschema/plothpgl.cpp:249
msgid "Page offset:"
msgstr "Offset page:"
#: eeschema/plothpgl.cpp:253
msgid "Plot Offset X"
msgstr "Offset de tracé X"
#: eeschema/plothpgl.cpp:259
msgid "Plot Offset Y"
msgstr "Offset de tracé Y"
#: eeschema/plothpgl.cpp:282
msgid "&Accept Offset"
msgstr "&Accepter Offset"
#: eeschema/plothpgl.cpp:609
msgid "Plot "
msgstr "Trace "
#: eeschema/class_BodyItem_Text.cpp:83
#, c-format
msgid "text only had %d parameters of the required 8"
......@@ -8105,10 +8090,6 @@ msgstr "le texte a seulement %d paramètres sur les 8 requis"
msgid "Line width"
msgstr "Epaisseur ligne"
#: eeschema/eeconfig.cpp:289
msgid "Save Project Settings"
msgstr "Sauver Optionsr Projet"
#: eeschema/dialog_options.cpp:140
#: eeschema/dialog_options.cpp:287
msgid "Delta Step X"
......@@ -8320,13 +8301,11 @@ msgstr "Options :"
#: eeschema/dialog_cmp_graphic_properties.cpp:154
#: eeschema/pinedit-dialog.cpp:180
#: eeschema/dialog_bodygraphictext_properties_base.cpp:66
msgid "Common to Units"
msgstr "Commun aux Unités"
#: eeschema/dialog_cmp_graphic_properties.cpp:158
#: eeschema/pinedit-dialog.cpp:184
#: eeschema/dialog_bodygraphictext_properties_base.cpp:70
msgid "Common to convert"
msgstr "Commun à converti"
......@@ -8508,6 +8487,30 @@ msgstr "Emetteur ouv."
msgid "Electrical Type:"
msgstr "Type électrique:"
#: eeschema/class_pin.cpp:45
msgid "Pin"
msgstr "Pin"
#: eeschema/class_pin.cpp:1039
msgid "PinName"
msgstr "Nom Pin"
#: eeschema/class_pin.cpp:1048
msgid "PinNum"
msgstr "Num Pin"
#: eeschema/class_pin.cpp:1052
msgid "PinType"
msgstr "Type Pin"
#: eeschema/class_pin.cpp:1058
msgid "no"
msgstr "non"
#: eeschema/class_pin.cpp:1060
msgid "yes"
msgstr "oui"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:57
msgid " Text Options : "
msgstr "Options du Texte: "
......@@ -8521,31 +8524,39 @@ msgid "Text Shape:"
msgstr "Aspect Texte:"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:82
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:54
msgid "Align left"
msgstr "Alignement à gauche"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:82
#: eeschema/dialog_bodygraphictext_properties_base.cpp:88
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:54
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:67
msgid "Align center"
msgstr "Alignement au centre"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:82
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:54
msgid "Align right"
msgstr "Alignement à droite"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:84
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:56
msgid "Horiz. Justify"
msgstr "Justification Horiz."
#: eeschema/dialog_bodygraphictext_properties_base.cpp:88
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:67
msgid "Align bottom"
msgstr "Alignement en bas"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:88
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:67
msgid "Align top"
msgstr "Alignement au sommet"
#: eeschema/dialog_bodygraphictext_properties_base.cpp:90
#: eeschema/dialog_edit_libentry_fields_in_lib_base.cpp:69
msgid "Vert. Justify"
msgstr "Vert. Justifié"
......@@ -9237,6 +9248,7 @@ msgid "Active Low Output"
msgstr "Sortie Active Bas"
#: cvpcb/tool_cvpcb.cpp:31
#: cvpcb/menucfg.cpp:39
msgid "Open a NetList file"
msgstr "Lire un Fichier Netliste"
......@@ -9301,6 +9313,8 @@ msgid "Delete selections"
msgstr "Effacement des associations existantes"
#: cvpcb/cvframe.cpp:422
#: cvpcb/init.cpp:68
#: cvpcb/init.cpp:120
#, c-format
msgid "Components: %d (free: %d)"
msgstr "Composants: %d (libres: %d)"
......@@ -9550,6 +9564,7 @@ msgid "1:1 zoom"
msgstr "1:1 zoom"
#: cvpcb/readschematicnetlist.cpp:114
#: kicad/prjconfig.cpp:94
msgid "> not found"
msgstr "> non trouvé"
......@@ -10039,11 +10054,14 @@ msgid "%d errors while reading Gerber file [%s]"
msgstr "%d erreurs pendant lecture fichier gerber [%s]"
#: gerbview/readgerb.cpp:274
#: gerbview/files.cpp:208
#: gerbview/files.cpp:243
#, c-format
msgid "Gerber DCODE files (%s)|*.%s"
msgstr "Fichiers Gerber DCODE (%s)|*.%s"
#: gerbview/readgerb.cpp:278
#: gerbview/files.cpp:213
msgid "Load GERBER DCODE File"
msgstr "Charger Fichier de DCodes"
......@@ -10194,7 +10212,6 @@ msgid "D code File Ext:"
msgstr "Ext. Fichiers DCodes:"
#: gerbview/select_layers_to_pcb.cpp:220
#: gerbview/tool_gerber.cpp:244
msgid "Layer "
msgstr "Couche "
......@@ -11152,6 +11169,10 @@ msgstr "Commentaire3:"
msgid "Comment4:"
msgstr "Commentaire4:"
#: pcbnew/dialog_gendrill.h:50
msgid "Drill Files Generation"
msgstr "Génération Fichiers de Perçage"
#: pcbnew/cleaningoptions_dialog.h:48
msgid "Cleaning options"
msgstr "Options de Nettoyage"
......@@ -11214,10 +11235,6 @@ msgstr "Options Générales"
msgid "Pad Properties"
msgstr "Propriétés du Pad"
#: pcbnew/dialog_gendrill.h:50
msgid "Drill Files Generation"
msgstr "Génération Fichiers de Perçage"
#: pcbnew/set_color.h:40
msgid "Pcbnew Layer Colors:"
msgstr "Pcbnew: Couleur des Couches"
......@@ -11386,10 +11403,6 @@ msgstr "Marqueur ERC"
msgid "Other"
msgstr "Autre"
#: eeschema/plothpgl.h:55
msgid "EESchema Plot HPGL"
msgstr "EESchema Tracé HPGL"
#: eeschema/sheet.h:47
msgid "Sheet properties"
msgstr "Propriétés de la feuille"
......@@ -11398,18 +11411,26 @@ msgstr "Propriétés de la feuille"
msgid "EESchema Locate"
msgstr "Recherche"
#: eeschema/plothpgl.h:55
msgid "EESchema Plot HPGL"
msgstr "EESchema Tracé HPGL"
#: eeschema/plotps.h:50
msgid "EESchema Plot PS"
msgstr "EESchema Tracé PS"
#: eeschema/dialog_edit_component_in_schematic_fbp.h:82
msgid "Component Properties"
msgstr "Propriétés du Composant"
#: eeschema/plotdxf.h:47
msgid "EESchema Plot DXF"
msgstr "EESchema Tracé DXF"
#: eeschema/pinedit-dialog.h:67
msgid "Pin properties"
msgstr "Propriétés des Pins"
#: eeschema/plotps.h:50
msgid "EESchema Plot PS"
msgstr "EESchema Tracé PS"
#: eeschema/dialog_bodygraphictext_properties_base.h:58
msgid "Graphic text properties:"
msgstr "Propriétés du texte graphique:"
......@@ -11574,6 +11595,12 @@ msgstr "DCodes id."
msgid "Page Settings"
msgstr "Ajustage opt Page"
#~ msgid "Org = Centre"
#~ msgstr "Org = Centre"
#~ msgid "Draw origin ( 0,0 ) in sheet center"
#~ msgstr "Origine des tracés au centre de la feuille"
#~ msgid "unable to reopen file <%s>"
#~ msgstr "Ne peut pas réouvrir fichier <%s>"
#~ msgid "Include Tests For:"
#~ msgstr "Inclure Tests Pour:"
#~ msgid "Pad to pad"
......
......@@ -118,6 +118,7 @@ set(PCBNEW_SRCS
plotgerb.cpp
plothpgl.cpp
plotps.cpp
plotdxf.cpp
plot_rtn.cpp
queue.cpp
ratsnest.cpp
......
......@@ -151,7 +151,7 @@ void WinEDA_DrillFrame::Init()
void WinEDA_DrillFrame::CreateControls()
{
////@begin WinEDA_DrillFrame content construction
// Generated by DialogBlocks, 29/04/2009 15:14:32 (unregistered)
// Generated by DialogBlocks, 29/06/2009 20:34:44 (unregistered)
WinEDA_DrillFrame* itemDialog1 = this;
......@@ -191,12 +191,10 @@ void WinEDA_DrillFrame::CreateControls()
wxArrayString m_Choice_Drill_OffsetStrings;
m_Choice_Drill_OffsetStrings.Add(_("absolute"));
m_Choice_Drill_OffsetStrings.Add(_("auxiliary axis"));
m_Choice_Drill_Offset = new wxRadioBox( itemDialog1, ID_SEL_DRILL_SHEET,
_("Drill Origin:"), wxDefaultPosition, wxDefaultSize,
m_Choice_Drill_OffsetStrings, 1, wxRA_SPECIFY_COLS );
m_Choice_Drill_Offset = new wxRadioBox( itemDialog1, ID_SEL_DRILL_SHEET, _("Drill Origin:"), wxDefaultPosition, wxDefaultSize, m_Choice_Drill_OffsetStrings, 1, wxRA_SPECIFY_COLS );
m_Choice_Drill_Offset->SetSelection(0);
if (WinEDA_DrillFrame::ShowToolTips())
m_Choice_Drill_Offset->SetToolTip(_("Choose the coordinate origin: absolute or relative to the auxiliary axis"));
m_Choice_Drill_Offset->SetToolTip(_("Choose the coordinate origin: absolute or relative to the auxiliray axis"));
m_LeftBoxSizer->Add(m_Choice_Drill_Offset, 0, wxGROW|wxALL, 5);
wxBoxSizer* itemBoxSizer8 = new wxBoxSizer(wxVERTICAL);
......@@ -204,12 +202,11 @@ void WinEDA_DrillFrame::CreateControls()
wxArrayString m_Choice_Drill_MapStrings;
m_Choice_Drill_MapStrings.Add(_("None"));
m_Choice_Drill_MapStrings.Add(_("Drill sheet (HPGL)"));
m_Choice_Drill_MapStrings.Add(_("Drill sheet (PostScript)"));
m_Choice_Drill_MapStrings.Add(_("drill sheet (HPGL)"));
m_Choice_Drill_MapStrings.Add(_("drill sheet (PostScript)"));
m_Choice_Drill_MapStrings.Add(_("Drill sheet (Gerber)"));
m_Choice_Drill_Map = new wxRadioBox( itemDialog1, ID_SEL_DRILL_SHEET,
_("Drill Sheet:"), wxDefaultPosition, wxDefaultSize,
m_Choice_Drill_MapStrings, 1, wxRA_SPECIFY_COLS );
m_Choice_Drill_MapStrings.Add(_("Drill sheet (DXF)"));
m_Choice_Drill_Map = new wxRadioBox( itemDialog1, ID_SEL_DRILL_SHEET, _("Drill Sheet:"), wxDefaultPosition, wxDefaultSize, m_Choice_Drill_MapStrings, 1, wxRA_SPECIFY_COLS );
m_Choice_Drill_Map->SetSelection(0);
if (WinEDA_DrillFrame::ShowToolTips())
m_Choice_Drill_Map->SetToolTip(_("Creates a drill map in PS or HPGL format"));
......@@ -231,13 +228,13 @@ void WinEDA_DrillFrame::CreateControls()
wxStaticText* itemStaticText12 = new wxStaticText( itemDialog1, wxID_STATIC, _("Speed (cm/s)"), wxDefaultPosition, wxDefaultSize, 0 );
itemStaticBoxSizer11->Add(itemStaticText12, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP, 5);
m_PenSpeed = new wxTextCtrl( itemDialog1, ID_TEXTCTRL2, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
m_PenSpeed = new wxTextCtrl( itemDialog1, ID_TEXTCTRL2, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
itemStaticBoxSizer11->Add(m_PenSpeed, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
wxStaticText* itemStaticText14 = new wxStaticText( itemDialog1, wxID_STATIC, _("Pen Number"), wxDefaultPosition, wxDefaultSize, 0 );
itemStaticBoxSizer11->Add(itemStaticText14, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP, 5);
m_PenNum = new wxTextCtrl( itemDialog1, ID_TEXTCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 );
m_PenNum = new wxTextCtrl( itemDialog1, ID_TEXTCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
itemStaticBoxSizer11->Add(m_PenNum, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5);
wxStaticBox* itemStaticBoxSizer16Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Options:"));
......
......@@ -21,6 +21,7 @@
<bool name="use_two_step_construction">0</bool>
<bool name="use_enums">0</bool>
<bool name="generate_for_xrced">0</bool>
<bool name="generate_virtual_eventhandlers">0</bool>
<string name="current_platform">"&lt;All platforms&gt;"</string>
<string name="target_wx_version">"2.8.7"</string>
<string name="cpp_header_comment">"/////////////////////////////////////////////////////////////////////////////
......@@ -142,6 +143,8 @@
<string name="Use exceptions">"Yes"</string>
<string name="Use ODBC">"No"</string>
<string name="Use OpenGL">"No"</string>
<string name="Use wxMediaCtrl">"No"</string>
<string name="Use wxRichTextCtrl">"Yes"</string>
<string name="wxWidgets version">"%WXVERSION%"</string>
<string name="Executable name">"%EXECUTABLE%"</string>
<string name="Program arguments">""</string>
......@@ -628,7 +631,7 @@
<string name="proxy-Member variable name">"m_Choice_Drill_Map"</string>
<string name="proxy-Label">"Drill Sheet:"</string>
<long name="proxy-Major dimension count">1</long>
<string name="proxy-Items">"None|drill sheet (HPGL)|drill sheet (PostScript)"</string>
<string name="proxy-Items">"None|drill sheet (HPGL)|drill sheet (PostScript)|Drill sheet (Gerber)|Drill sheet (DXF)"</string>
<long name="proxy-Initial value">0</long>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">"Creates a drill map in PS or HPGL format"</string>
......
......@@ -41,7 +41,6 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
int dX, dY;
wxPoint BoardCentre;
wxPoint offset;
wxSize SheetSize;
wxString msg;
Plotter *plotter = NULL;
......@@ -67,9 +66,6 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
case PLOT_FORMAT_HPGL: /* Calcul des echelles de conversion format HPGL */
{
SheetSize = aSheet->m_Size;
SheetSize.x *= U_PCB;
SheetSize.y *= U_PCB;
offset.x = 0;
offset.y = 0;
scale = 1;
......@@ -86,6 +82,7 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
case PLOT_FORMAT_POST:
{
Ki_PageDescr* SheetPS = &g_Sheet_A4;
wxSize SheetSize;
SheetSize.x = SheetPS->m_Size.x * U_PCB;
SheetSize.y = SheetPS->m_Size.y * U_PCB;
/* Keep size for drill legend */
......@@ -103,6 +100,18 @@ void GenDrillMapFile( BOARD* aPcb, FILE* aFile, const wxString& aFullFileName,
plotter->set_viewport(offset, scale, 0);
break;
}
case PLOT_FORMAT_DXF:
{
offset.x = 0;
offset.y = 0;
scale = 1;
DXF_Plotter *dxf_plotter = new DXF_Plotter;
plotter = dxf_plotter;
plotter->set_paper_size(aSheet);
plotter->set_viewport(offset, scale, 0);
break;
}
default:
wxASSERT(false);
}
......
......@@ -316,12 +316,12 @@ void WinEDA_DrillFrame::GenDrillFiles( wxCommandEvent& event )
fn.SetName( fn.GetName() + layer_extend );
fn.SetExt( DrillFileExtension );
wxFileDialog dlg( this, _( "Save Drill File" ), wxEmptyString,
wxFileDialog dlg( this, _( "Save Drill File" ), fn.GetPath(),
fn.GetFullName(), DrillFileWildcard,
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
if( dlg.ShowModal() == wxID_CANCEL )
continue;
break;
FILE *excellon_dest = wxFopen( dlg.GetPath(), wxT( "w" ) );
......@@ -354,6 +354,11 @@ void WinEDA_DrillFrame::GenDrillFiles( wxCommandEvent& event )
GenDrillMap( dlg.GetPath(), s_HoleListBuffer, s_ToolListBuffer,
PLOT_FORMAT_GERBER );
break;
case 4:
GenDrillMap( dlg.GetPath(), s_HoleListBuffer, s_ToolListBuffer,
PLOT_FORMAT_DXF );
break;
}
if( !ExistsBuriedVias )
......@@ -380,7 +385,6 @@ void WinEDA_DrillFrame::GenDrillFiles( wxCommandEvent& event )
GenDrillReport( m_Parent->GetScreen()->m_FileName );
}
EndModal( 0 );
}
......@@ -757,6 +761,10 @@ void WinEDA_DrillFrame::GenDrillMap( const wxString aFileName,
wildcard = _( "Gerber files (.pho)|*.pho" );
break;
case PLOT_FORMAT_DXF:
ext = wxT( "dxf" );
wildcard = _( "DXF files (.dxf)|*.dxf" );
break;
default:
DisplayError( this, wxT( "WinEDA_DrillFrame::GenDrillMap() error" ) );
......@@ -768,9 +776,9 @@ void WinEDA_DrillFrame::GenDrillMap( const wxString aFileName,
fn.SetName( fn.GetName() + wxT( "-drl" ) );
fn.SetExt( ext );
wxFileDialog dlg( this, _( "Save Drill Plot File" ), wxEmptyString,
wxFileDialog dlg( this, _( "Save Drill Plot File" ), fn.GetPath(),
fn.GetFullName(), wildcard,
wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxFD_CHANGE_DIR );
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
if( dlg.ShowModal() == wxID_CANCEL )
return;
......@@ -812,9 +820,9 @@ void WinEDA_DrillFrame::GenDrillReport( const wxString aFileName )
fn.SetName( fn.GetName() + wxT( "-drl" ) );
fn.SetExt( wxT( "rpt" ) );
wxFileDialog dlg( this, _( "Save Drill Report File" ), wxEmptyString,
wxFileDialog dlg( this, _( "Save Drill Report File" ), fn.GetPath(),
fn.GetFullName(), wildcard,
wxFD_SAVE | wxFD_OVERWRITE_PROMPT | wxFD_CHANGE_DIR );
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
if( dlg.ShowModal() == wxID_CANCEL )
return;
......
......@@ -116,8 +116,15 @@ public:
// change the A4 to the simple postscript, according to the
// PlotFormat enum
if( radioNdx == 3 )
switch (radioNdx)
{
case 3:
radioNdx = PLOT_FORMAT_POST;
break;
case 4:
radioNdx = PLOT_FORMAT_DXF;
break;
}
return PlotFormat( radioNdx );
}
......@@ -192,18 +199,19 @@ void WinEDA_PlotFrame::OnInitDialog( wxInitDialogEvent& event )
LeftBoxSizer->Add( LayersBoxSizer, 0, wxGROW | wxALL, 5 );
static const wxString fmtmsg[4] =
static const wxString fmtmsg[5] =
{
wxT( "HPGL" ),
wxT( "Gerber" ),
wxT( "Postscript" ),
wxT( "Postscript A4" )
wxT( "Postscript A4" ),
wxT( "DXF Export" )
};
m_PlotFormatOpt = new wxRadioBox( this, ID_SEL_PLOT_FORMAT,
_( "Plot Format" ), wxDefaultPosition,
wxSize( -1, -1 ),
4, fmtmsg, 1, wxRA_SPECIFY_COLS );
5, fmtmsg, 1, wxRA_SPECIFY_COLS );
MidRightBoxSizer->Add( m_PlotFormatOpt, 0, wxGROW | wxALL, 5 );
if( config )
......@@ -595,6 +603,28 @@ void WinEDA_PlotFrame::SetCommands( wxCommandEvent& event )
m_Plot_PS_Negative->SetValue( false );
m_Plot_PS_Negative->Enable( false );
break;
case PLOT_FORMAT_DXF:
m_PlotMirorOpt->Enable( false );
m_PlotMirorOpt->SetValue( false );
m_Drill_Shape_Opt->SetSelection( 0 );
m_Drill_Shape_Opt->Enable( false );
m_PlotModeOpt->Enable( true );
m_Choice_Plot_Offset->Enable( false );
m_LinesWidth->Enable( false );
m_HPGL_OptionsBox->Enable( false );
m_HPGLPenSizeOpt->Enable( false );
m_HPGLPenSpeedOpt->Enable( false );
m_HPGLPenOverlayOpt->Enable( false );
m_Exclude_Edges_Pcb->SetValue( false );
m_Exclude_Edges_Pcb->Enable( false );
m_Scale_Opt->Enable( false );
m_Scale_Opt->SetSelection( 1 );
m_FineAdjustXscaleOpt->Enable( false );
m_FineAdjustYscaleOpt->Enable( false );
m_Plot_PS_Negative->SetValue( false );
m_Plot_PS_Negative->Enable( false );
break;
}
g_pcb_plot_options.PlotFormat = format;
......@@ -715,7 +745,6 @@ void WinEDA_PlotFrame::Plot( wxCommandEvent& event )
wildcard = _( "Adobe post script files (.ps)|*.ps" );
break;
default:
case PLOT_FORMAT_GERBER:
g_pcb_plot_options.Scale = 1.0; // No scale option allowed in gerber format
ext = wxT( "pho" );
......@@ -726,6 +755,12 @@ void WinEDA_PlotFrame::Plot( wxCommandEvent& event )
ext = wxT( "plt" );
wildcard = _( "HPGL plot files (.plt)|*.plt" );
break;
case PLOT_FORMAT_DXF:
g_pcb_plot_options.Scale = 1.0;
ext = wxT( "dxf" );
wildcard = _( "DXF files (.dxf)|*.dxf" );
break;
}
// Test for a reasonnable scale value
......@@ -761,7 +796,6 @@ void WinEDA_PlotFrame::Plot( wxCommandEvent& event )
g_pcb_plot_options.Trace_Mode );
break;
default:
case PLOT_FORMAT_GERBER:
m_Parent->Genere_GERBER( fn.GetFullPath(), layer_to_plot,
s_PlotOriginIsAuxAxis,
......@@ -772,6 +806,11 @@ void WinEDA_PlotFrame::Plot( wxCommandEvent& event )
m_Parent->Genere_HPGL( fn.GetFullPath(), layer_to_plot,
g_pcb_plot_options.Trace_Mode );
break;
case PLOT_FORMAT_DXF:
m_Parent->Genere_DXF( fn.GetFullPath(), layer_to_plot,
g_pcb_plot_options.Trace_Mode );
break;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment