More about ERC and markers in eeschema ( work in progress )

This commit is contained in:
charras 2009-07-09 17:02:15 +00:00
parent e4656c440d
commit baa278a3bc
12 changed files with 462 additions and 313 deletions

View File

@ -18,8 +18,10 @@
// Default marquer shape:
#define M_SHAPE_SCALE 6 // default scaling factor for MarkerShapeCorners coordinates
#define CORNERS_COUNT 8
// corners of the default shape
static wxPoint MarkerShapeCorners[CORNERS_COUNT] =
/* corners of the default shape
* real coordinates are these values * .m_ScalingFactor
*/
static const wxPoint MarkerShapeCorners[CORNERS_COUNT] =
{
wxPoint( 0, 0 ),
wxPoint( 8, 1 ),
@ -39,13 +41,20 @@ void MARKER_BASE::init()
{
m_MarkerType = 0;
m_Color = RED;
wxPoint start = MarkerShapeCorners[0];
wxPoint end = MarkerShapeCorners[0];
for( unsigned ii = 0; ii < CORNERS_COUNT; ii++ )
{
wxPoint corner = MarkerShapeCorners[ii];
m_Corners.push_back( corner );
m_Size.x = MAX( m_Size.x, corner.x);
m_Size.y = MAX( m_Size.y, corner.y);
start.x = MIN( start.x, corner.x);
start.y = MIN( start.y, corner.y);
end.x = MAX( end.x, corner.x);
end.y = MAX( end.y, corner.y);
}
m_ShapeBoundingBox.SetOrigin(start);
m_ShapeBoundingBox.SetEnd(end);
}
@ -103,24 +112,15 @@ void MARKER_BASE::SetData( int aErrorCode, const wxPoint& aMarkerPos,
}
/**********************************************/
/******************************************************/
bool MARKER_BASE::HitTestMarker( const wxPoint& refPos )
/**********************************************/
/******************************************************/
{
int dx = refPos.x - m_Pos.x;
int dy = refPos.y - m_Pos.y;
wxPoint rel_pos = refPos - m_Pos;
rel_pos.x /= m_ScalingFactor;
rel_pos.y /= m_ScalingFactor;
wxSize Realsize = m_Size;
Realsize.x *= m_ScalingFactor;
Realsize.y *= m_ScalingFactor;
/* is refPos in the box: Marker size to right an bottom,
* or size/2 to left or top */
if( dx <= Realsize.x && dy <= Realsize.y
&& dx >= -Realsize.x / 2 && dy >= -Realsize.y / 2 )
return true;
else
return false;
return m_ShapeBoundingBox.Inside(rel_pos);
}
/**
@ -132,10 +132,14 @@ bool MARKER_BASE::HitTestMarker( const wxPoint& refPos )
*/
EDA_Rect MARKER_BASE::GetBoundingBoxMarker()
{
wxSize Realsize = m_Size;
Realsize.x *= m_ScalingFactor;
Realsize.y *= m_ScalingFactor;
return EDA_Rect( m_Pos,Realsize );
wxSize realsize = m_ShapeBoundingBox.GetSize();
wxPoint realposition = m_ShapeBoundingBox.GetPosition();
realsize.x *= m_ScalingFactor;
realsize.y *= m_ScalingFactor;
realposition.x *= m_ScalingFactor;
realposition.y *= m_ScalingFactor;
realposition += m_Pos;
return EDA_Rect( m_Pos,realsize );
}
/**********************************************************************/

View File

@ -11,20 +11,29 @@
DIALOG_DISPLAY_HTML_TEXT_BASE::DIALOG_DISPLAY_HTML_TEXT_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
this->SetSizeHints( wxDefaultSize, wxDefaultSize );
this->SetSizeHints( wxSize( 400,170 ), wxDefaultSize );
wxBoxSizer* bMainSizer;
bMainSizer = new wxBoxSizer( wxVERTICAL );
m_htmlWindow = new wxHtmlWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHW_SCROLLBAR_AUTO );
m_htmlWindow->SetMinSize( wxSize( 400,150 ) );
bMainSizer->Add( m_htmlWindow, 1, wxALL|wxEXPAND, 5 );
m_buttonClose = new wxButton( this, wxID_CANCEL, _("Close"), wxDefaultPosition, wxDefaultSize, 0 );
m_buttonClose->SetDefault();
bMainSizer->Add( m_buttonClose, 0, wxALL|wxALIGN_RIGHT, 5 );
this->SetSizer( bMainSizer );
this->Layout();
// Connect Events
m_htmlWindow->Connect( wxEVT_COMMAND_HTML_LINK_CLICKED, wxHtmlLinkEventHandler( DIALOG_DISPLAY_HTML_TEXT_BASE::OnHTMLLinkClicked ), NULL, this );
m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DISPLAY_HTML_TEXT_BASE::OnCloseButtonClick ), NULL, this );
}
DIALOG_DISPLAY_HTML_TEXT_BASE::~DIALOG_DISPLAY_HTML_TEXT_BASE()
{
// Disconnect Events
m_htmlWindow->Disconnect( wxEVT_COMMAND_HTML_LINK_CLICKED, wxHtmlLinkEventHandler( DIALOG_DISPLAY_HTML_TEXT_BASE::OnHTMLLinkClicked ), NULL, this );
m_buttonClose->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_DISPLAY_HTML_TEXT_BASE::OnCloseButtonClick ), NULL, this );
}

View File

@ -29,10 +29,10 @@
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="minimum_size">400,170</property>
<property name="name">DIALOG_DISPLAY_HTML_TEXT_BASE</property>
<property name="pos"></property>
<property name="size">291,165</property>
<property name="size">431,170</property>
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
<property name="subclass"></property>
<property name="title"></property>
@ -71,7 +71,7 @@
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
<object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property>
<property name="minimum_size">-1,-1</property>
<property name="name">bMainSizer</property>
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
@ -88,7 +88,7 @@
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size">400,150</property>
<property name="minimum_size">-1,-1</property>
<property name="name">m_htmlWindow</property>
<property name="permission">public</property>
<property name="pos"></property>
@ -104,7 +104,59 @@
<event name="OnEraseBackground"></event>
<event name="OnHtmlCellClicked"></event>
<event name="OnHtmlCellHover"></event>
<event name="OnHtmlLinkClicked"></event>
<event name="OnHtmlLinkClicked">OnHTMLLinkClicked</event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL|wxALIGN_RIGHT</property>
<property name="proportion">0</property>
<object class="wxButton" expanded="1">
<property name="bg"></property>
<property name="context_help"></property>
<property name="default">1</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="font"></property>
<property name="hidden">0</property>
<property name="id">wxID_CANCEL</property>
<property name="label">Close</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="name">m_buttonClose</property>
<property name="permission">protected</property>
<property name="pos"></property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnButtonClick">OnCloseButtonClick</event>
<event name="OnChar"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>

View File

@ -86,19 +86,30 @@ void MARKER_SCH::Show( int nestLevel, std::ostream& os )
* writes the data structures for this object out to a FILE in "*.brd" format.
* @param aFile The FILE to write to.
* @return bool - true if success writing else false.
* Currently: do nothing (markers are no more saved in files)
*/
bool MARKER_SCH::Save( FILE* aFile ) const
{
bool success = true;
wxString msg = GetReporter().GetMainText();
#if 0
wxString msg = m_drc.GetMainText();
if( fprintf( aFile, "Kmarq %c %-4d %-4d \"%s\" F=%X T=%X\n",
if( fprintf( aFile, "Kmarq %c %-4d %-4d \"%s\"",
GetMarkerType() + 'A', GetPos().x, GetPos().y,
CONV_TO_UTF8( msg ), GetErrorLevel(), GetReporter().GetErrorCode() ) == EOF )
CONV_TO_UTF8( msg ) ) == EOF )
success = false;
if ( m_drc.HasSecondItem() )
{
msg = GetReporter().GetAuxiliaryText();
if( fprintf( aFile, " \"%s\" %-4d %-4d",
GetMarkerType() + 'A', m_drc.GetPointB().x, m_drc.GetPointB().y,
CONV_TO_UTF8( msg ) ) == EOF )
success = false;
}
if( fprintf( aFile, " F=%X T=%X\n",
GetErrorLevel(), GetReporter().GetErrorCode() ) == EOF )
#endif
return success;
}
@ -149,7 +160,7 @@ void MARKER_SCH::DisplayMarkerInfo( WinEDA_SchematicFrame* aFrame )
wxString msg = GetReporter().ShowHtml();
DIALOG_DISPLAY_HTML_TEXT_BASE infodisplay( aFrame, -1, wxEmptyString,
wxGetMousePosition(), wxSize( 550, 130 ) );
wxGetMousePosition(), wxSize( 550, 170 ) );
infodisplay.m_htmlWindow->SetPage( msg );
infodisplay.ShowModal();

View File

@ -124,17 +124,6 @@ SCH_ITEM* WinEDA_SchematicFrame:: SchematicGeneralLocateAndDisplay( const wxPoin
wxString msg;
int ii;
DrawStruct = (SCH_ITEM*) PickStruct( refpoint, GetScreen(), MARKERITEM );
if( DrawStruct )
{
MARKER_SCH* Marker = (MARKER_SCH*) DrawStruct;
Text = Marker->GetReporter().GetErrorText();
ii = Marker->GetMarkerType();
msg = NameMarqueurType[ii]; msg << wxT( " " ) << Text;
Affiche_Message( msg );
return DrawStruct;
}
DrawStruct = (SCH_ITEM*) PickStruct( refpoint, GetScreen(), NOCONNECTITEM );
if( DrawStruct )
{

View File

@ -165,6 +165,53 @@ static int MinimalReq[PIN_NMAX][PIN_NMAX] =
};
/**Function TestDuplicateSheetNames( )
* inside a given sheet, one cannot have sheets with duplicate names (file names can be duplicated).
*/
int TestDuplicateSheetNames( )
{
int err_count = 0;
EDA_ScreenList ScreenList; // Created the list of screen
for( SCH_SCREEN* Screen = ScreenList.GetFirst(); Screen != NULL; Screen = ScreenList.GetNext() )
{
for( SCH_ITEM* ref_item = Screen->EEDrawList; ref_item != NULL; ref_item = ref_item->Next() )
{
// search for a scheet;
if( ref_item->Type() != DRAW_SHEET_STRUCT_TYPE )
continue;
for( SCH_ITEM* item_to_test = ref_item->Next();
item_to_test != NULL;
item_to_test = item_to_test->Next() )
{
if( item_to_test->Type() != DRAW_SHEET_STRUCT_TYPE )
continue;
// We have found a second sheet: compare names
if( ( (DrawSheetStruct*) ref_item )->m_SheetName.CmpNoCase( ( (DrawSheetStruct*)
item_to_test )->
m_SheetName ) == 0 )
{
/* Create a new marker type ERC error*/
MARKER_SCH* Marker = new MARKER_SCH();
Marker->m_TimeStamp = GetTimeStamp();
Marker->SetData( ERCE_DUPLICATE_SHEET_NAME,
( (DrawSheetStruct*) item_to_test )->m_Pos,
_( "Duplicate Sheet name" ),
( (DrawSheetStruct*) item_to_test )->m_Pos );
Marker->SetMarkerType( MARK_ERC );
Marker->SetErrorLevel( ERR );
Marker->SetNext( Screen->EEDrawList );
Screen->EEDrawList = Marker;
err_count++;
}
}
}
}
return err_count;
}
/**************************************************/
void DIALOG_ERC::TestErc( wxArrayString* aMessagesList )
/**************************************************/
@ -219,43 +266,10 @@ void DIALOG_ERC::TestErc( wxArrayString* aMessagesList )
/* Test duplicate sheet names
* inside a given sheet, one cannot have sheets with duplicate names (file names can be duplicated).
* Test screens is enought
*/
for( SCH_SCREEN* Screen = ScreenList.GetFirst(); Screen != NULL; Screen = ScreenList.GetNext() )
{
for( SCH_ITEM* ref_item = Screen->EEDrawList; ref_item != NULL; ref_item = ref_item->Next() )
{
// serach for a scheet;
if( ref_item->Type() != DRAW_SHEET_STRUCT_TYPE )
continue;
for( SCH_ITEM* item_to_test = ref_item->Next();
item_to_test != NULL;
item_to_test = item_to_test->Next() )
{
if( item_to_test->Type() != DRAW_SHEET_STRUCT_TYPE )
continue;
// We have found a second sheet: compare names
if( ( (DrawSheetStruct*) ref_item )->m_SheetName.CmpNoCase( ( (DrawSheetStruct*)
item_to_test )->
m_SheetName ) == 0 )
{
/* Create a new marker type ERC error*/
MARKER_SCH* Marker = new MARKER_SCH();
Marker->SetData( ERCE_DUPLICATE_SHEET_NAME,
( (DrawSheetStruct*) item_to_test )->m_Pos,
_( "Duplicate Sheet name" ),
( (DrawSheetStruct*) item_to_test )->m_Pos );
Marker->SetMarkerType( MARK_ERC );
Marker->SetErrorLevel( ERR );
Marker->SetNext( Screen->EEDrawList );
Screen->EEDrawList = Marker;
g_EESchemaVar.NbErrorErc++;
g_EESchemaVar.NbWarningErc++;
}
}
}
}
int errcnt = TestDuplicateSheetNames( );
g_EESchemaVar.NbErrorErc += errcnt;
g_EESchemaVar.NbWarningErc += errcnt;
m_Parent->BuildNetListBase();
@ -388,6 +402,7 @@ static void Diagnose( WinEDA_DrawPanel* aPanel,
/* Creation du nouveau marqueur type Erreur ERC */
Marker = new MARKER_SCH();
Marker->m_TimeStamp = GetTimeStamp();
Marker->SetMarkerType( MARK_ERC );
Marker->SetErrorLevel( WAR );
@ -430,7 +445,8 @@ static void Diagnose( WinEDA_DrawPanel* aPanel,
if( aMinConn == NOC ) /* 1 seul element dans le net */
{
msg.Printf( _( "Cmp %s, Pin %s (%s) Unconnected" ),
cmp_ref.GetData(), string_pinnum.GetData(), MsgPinElectricType[ii] );
cmp_ref.GetData(), string_pinnum.GetData(),
MsgPinElectricType[ii] );
Marker->SetData( ERCE_PIN_NOT_CONNECTED,
aNetItemRef->m_Start,
msg,
@ -522,15 +538,15 @@ static void TestOthersItems( WinEDA_DrawPanel* panel,
NetItemTst = netstart;
local_minconn = NOC;
/* Examen de la liste des Pins connectees a NetItemRef */
/* Test pins Pins connected to NetItemRef */
for( ; ; NetItemTst++ )
{
if( NetItemRef == NetItemTst )
continue;
/* Est - on toujours dans le meme net ? */
if( (NetItemTst >= Lim) // fin de liste (donc fin de net)
|| ( NetItemRef->GetNet() != NetItemTst->GetNet() ) ) // fin de net
/* We examine only a given net. We stop the search if the net changes */
if( (NetItemTst >= Lim) // End of list
|| ( NetItemRef->GetNet() != NetItemTst->GetNet() ) ) // End of net
{
/* Fin de netcode trouve: Tst connexion minimum */
if( (*MinConnexion < NET_NC )

View File

@ -50,7 +50,6 @@ bool WinEDA_SchematicFrame::LoadOneEEFile( SCH_SCREEN* screen,
DrawPolylineStruct* PolylineStruct;
EDA_DrawLineStruct* SegmentStruct;
DrawBusEntryStruct* RaccordStruct;
MARKER_SCH* Marker;
DrawNoConnectStruct* NoConnectStruct;
int LineCount;
wxString MsgDiag; /* Error and log messages */
@ -325,6 +324,7 @@ at line %d, aborted" ),
break;
case 'K': /* It is a Marker item. */
#if 0 // Markers are no more read from file
if( sscanf( SLine, "%s %d %d", Name1, &pos.x, &pos.y ) != 3 )
{
MsgDiag.Printf( wxT( "EESchema file marker struct error line %d, aborted" ),
@ -338,7 +338,7 @@ at line %d, aborted" ),
char BufLine[1024];
BufLine[0] = 0;
int errtype = 0;
Marker = new MARKER_SCH( );
MARKER_SCH* Marker = new MARKER_SCH( );
ii = ReadDelimitedText( BufLine, Line, 1024 );
int type = (TypeMarker) ( (Name1[0] & 255) - 'A' );
if( type < 0 || type >= MARK_NMAX)
@ -360,6 +360,7 @@ at line %d, aborted" ),
Marker->SetNext( screen->EEDrawList );
screen->EEDrawList = Marker;
}
#endif
break;
case 'T': /* It is a text item. */

View File

@ -12,6 +12,8 @@
#include "program.h"
#include "libcmp.h"
#include "general.h"
#include "class_marker_sch.h"
#include "protos.h"
static wxArrayString s_CmpNameList;
@ -369,6 +371,10 @@ void WinEDA_SchematicFrame::OnLeftDClick( wxDC* DC, const wxPoint& MousePos )
DrawPanel->MouseToCursorSchema();
break;
case DRAW_MARKER_STRUCT_TYPE:
((MARKER_SCH*)DrawStruct)->DisplayMarkerInfo( this);
break;
default:
break;
}

View File

@ -15,7 +15,7 @@ protected:
std::vector <wxPoint> m_Corners; ///< Corner list for shape definition (a polygon)
int m_MarkerType; ///< Can be used as a flag
EDA_Colors m_Color; ///< color
wxSize m_Size; ///< Size of the graphic symbol, used for Hit Tests
EDA_Rect m_ShapeBoundingBox; ///< Bounding box of the graphic symbol, relative to the position of the shape, used for Hit Tests
int m_ScalingFactor; ///< Scaling factor for m_Size and m_Corners (can set the physical size
DRC_ITEM m_drc;
@ -37,6 +37,7 @@ public:
MARKER_BASE( int aErrorCode, const wxPoint& aMarkerPos,
const wxString& aText, const wxPoint& aPos,
const wxString& bText, const wxPoint& bPos );
/**
* Constructor
* @param aErrorCode The categorizing identifier for an error
@ -73,6 +74,7 @@ public:
m_Color = aColor;
}
/** Function to set/get error levels (warning, fatal ..)
* this value is stored in m_MarkerType
*/
@ -83,6 +85,7 @@ public:
m_MarkerType |= aErrorLevel << 8;
}
int GetErrorLevel() const
{
return (m_MarkerType >> 8) & 0xFF;
@ -99,11 +102,13 @@ public:
m_MarkerType |= aMarkerType;
}
int GetMarkerType() const
{
return m_MarkerType & 0xFF;
}
/**
* Function SetData
* fills in all the reportable data associated with a MARKER.
@ -140,6 +145,7 @@ public:
m_drc.SetAuxiliaryData( aAuxiliaryText, aAuxiliaryPos );
}
/**
* Function GetReporter
* returns the DRC_ITEM held within this MARKER so that its

View File

@ -16,6 +16,7 @@
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/string.h>
#include <wx/button.h>
#include <wx/sizer.h>
#include <wx/dialog.h>
@ -30,10 +31,16 @@ class DIALOG_DISPLAY_HTML_TEXT_BASE : public wxDialog
private:
protected:
wxButton* m_buttonClose;
// Virtual event handlers, overide them in your derived class
virtual void OnHTMLLinkClicked( wxHtmlLinkEvent& event ){ event.Skip(); }
virtual void OnCloseButtonClick( wxCommandEvent& event ){ event.Skip(); }
public:
wxHtmlWindow* m_htmlWindow;
DIALOG_DISPLAY_HTML_TEXT_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 291,165 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
DIALOG_DISPLAY_HTML_TEXT_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 431,180 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~DIALOG_DISPLAY_HTML_TEXT_BASE();
};

Binary file not shown.

View File

@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: kicad\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-07-08 07:54+0100\n"
"PO-Revision-Date: 2009-07-08 08:02+0100\n"
"POT-Creation-Date: 2009-07-09 08:02+0100\n"
"PO-Revision-Date: 2009-07-09 08:06+0100\n"
"Last-Translator: \n"
"Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n"
"MIME-Version: 1.0\n"
@ -5707,11 +5707,6 @@ msgstr "Change tous"
msgid "Browse Libs modules"
msgstr "Liste modules"
#: eeschema/dialog_erc.cpp:245
#, c-format
msgid "sheet %s (loc X=%f, Y=%f): %s\n"
msgstr "feuille %s (pos X=%f, Y=%f): %s\n"
#: eeschema/libedit.cpp:35
msgid " Part: "
msgstr "Composant "
@ -5817,63 +5812,63 @@ msgstr "Le composant \" %s\" existe, Le changer ?"
msgid "Component %s saved in %s"
msgstr "Composant %s sauvé en %s"
#: eeschema/schedit.cpp:187
#: eeschema/schedit.cpp:189
msgid "Push/Pop Hierarchy"
msgstr "Naviger dans Hiérarchie"
#: eeschema/schedit.cpp:191
#: eeschema/schedit.cpp:193
msgid "Add NoConnect Flag"
msgstr "Ajoutde symboles de non connexion"
#: eeschema/schedit.cpp:195
#: eeschema/schedit.cpp:197
msgid "Add Wire"
msgstr "Ajouter Fils"
#: eeschema/schedit.cpp:199
#: eeschema/schedit.cpp:201
msgid "Add Bus"
msgstr "Addition de Bus"
#: eeschema/schedit.cpp:207
#: eeschema/schedit.cpp:209
msgid "Add Junction"
msgstr "Ajout jonctions"
#: eeschema/schedit.cpp:211
#: eeschema/schedit.cpp:213
msgid "Add Label"
msgstr "Ajout Label"
#: eeschema/schedit.cpp:215
#: eeschema/schedit.cpp:217
msgid "Add Global label"
msgstr "Ajout de labels globaux"
#: eeschema/schedit.cpp:219
#: eeschema/schedit.cpp:221
msgid "Add Hierarchal label"
msgstr "Ajouter Label Hiérarchique"
#: eeschema/schedit.cpp:227
#: eeschema/schedit.cpp:229
msgid "Add Wire to Bus entry"
msgstr "Addition d'entrées de bus (type fil vers bus)"
#: eeschema/schedit.cpp:231
#: eeschema/schedit.cpp:233
msgid "Add Bus to Bus entry"
msgstr "Addition d'entrées de bus (type bus vers bus)"
#: eeschema/schedit.cpp:235
#: eeschema/schedit.cpp:237
msgid "Add Sheet"
msgstr "Ajout de Feuille"
#: eeschema/schedit.cpp:239
#: eeschema/schedit.cpp:241
msgid "Add PinSheet"
msgstr "Ajout Conn. hiérar."
#: eeschema/schedit.cpp:243
#: eeschema/schedit.cpp:245
msgid "Import PinSheet"
msgstr "Importer Connecteur de hiérarchie"
#: eeschema/schedit.cpp:247
#: eeschema/schedit.cpp:249
msgid "Add Component"
msgstr "Ajout Composant"
#: eeschema/schedit.cpp:251
#: eeschema/schedit.cpp:253
msgid "Add Power"
msgstr "Ajouter Alims"
@ -6506,39 +6501,39 @@ msgstr "item non numéroté: %s%s"
msgid "( unit %d)"
msgstr "( Unité %d)"
#: eeschema/annotate.cpp:721
#: eeschema/annotate.cpp:720
#, c-format
msgid "Error item %s%s"
msgstr "Erreur item %s%s"
#: eeschema/annotate.cpp:724
#: eeschema/annotate.cpp:723
#, c-format
msgid " unit %d and no more than %d parts"
msgstr " unité %d et plus que %d parts"
#: eeschema/annotate.cpp:762
#: eeschema/annotate.cpp:791
#: eeschema/annotate.cpp:760
#: eeschema/annotate.cpp:788
#, c-format
msgid "Multiple item %s%s"
msgstr "Multipleélément %s%s"
#: eeschema/annotate.cpp:767
#: eeschema/annotate.cpp:796
#: eeschema/annotate.cpp:765
#: eeschema/annotate.cpp:793
#, c-format
msgid " (unit %d)"
msgstr " ( Unité %d)"
#: eeschema/annotate.cpp:818
#: eeschema/annotate.cpp:814
#, c-format
msgid "Diff values for %s%d.%c (%s) and %s%d.%c (%s)"
msgstr "Valeurs différentes pour %s%d%c (%s) et %s%d%c (%s)"
#: eeschema/annotate.cpp:827
#: eeschema/annotate.cpp:823
#, c-format
msgid "Diff values for %s%d%c (%s) and %s%d%c (%s)"
msgstr "Valeurs différentes pour %s%d%c (%s) et %s%d%c (%s)"
#: eeschema/annotate.cpp:864
#: eeschema/annotate.cpp:859
#, c-format
msgid "duplicate time stamp (%s) for %s%d and %s%d"
msgstr "signature temporelle dupliquée (%s) pour %s%d et %s%d"
@ -6583,64 +6578,58 @@ msgstr "Pas de nouveau Label Hiérarchique trouvé"
msgid "Annotation Required!"
msgstr "Numérotation requise!"
#: eeschema/erc.cpp:246
#: eeschema/erc.cpp:247
msgid "Duplicate Sheet name"
msgstr "Nom de feuille en double"
#: eeschema/erc.cpp:344
msgid "ERC finished, no error\n"
msgstr "ERC finie, pas d'erreur\n"
#: eeschema/erc.cpp:355
#: eeschema/erc.cpp:353
msgid "ERC File"
msgstr "Fichier ERC"
#: eeschema/erc.cpp:356
#: eeschema/erc.cpp:354
msgid "Electronic rule check file (.erc)|*.erc"
msgstr "Fichier Contrôle des règles électroniques (.erc)|*.erc"
#: eeschema/erc.cpp:409
#: eeschema/erc.cpp:406
#, c-format
msgid "HLabel %s not connected to SheetLabel"
msgstr "HLabel %s non connecté à SheetLabel"
#: eeschema/erc.cpp:413
#: eeschema/erc.cpp:410
#, c-format
msgid "SheetLabel %s not connected to HLabel"
msgstr "SheetLabel %s non connecté à HLabel"
#: eeschema/erc.cpp:435
#: eeschema/erc.cpp:432
#, c-format
msgid "Cmp %s, Pin %s (%s) Unconnected"
msgstr "Cmp %s, Pin %s (%s) Non connectée"
#: eeschema/erc.cpp:450
#: eeschema/erc.cpp:447
#, c-format
msgid "Cmp %s, Pin %s (%s) not driven (Net %d)"
msgstr "Cmp %s, Pin %s (%s) non pilotée (Net %d)"
#: eeschema/erc.cpp:463
#: eeschema/erc.cpp:460
msgid "More than 1 Pin connected to UnConnect symbol"
msgstr "Plus de 1 Pin connectée à un symbole de non connexion"
#: eeschema/erc.cpp:475
msgid "Warning"
msgstr "Avertissement"
#: eeschema/erc.cpp:486
#, fuzzy, c-format
msgid "Cmp %s, Pin %s (%s) connected to "
msgstr "Cmp %s, Pin %s (%s) Non connectée"
#: eeschema/erc.cpp:479
msgid "Error"
msgstr "Erreur"
#: eeschema/erc.cpp:492
#, fuzzy, c-format
msgid "Cmp %s, Pin %s (%s) (net %d)"
msgstr "Cmp %s, Pin %s (%s) Non connectée"
#: eeschema/erc.cpp:491
#, c-format
msgid "%s: Cmp %s, Pin %s (%s) connected to Cmp %s, Pin %s (%s) (net %d)"
msgstr "%s: Cmp %s, Pin %s (%s) connectée à Cmp %s, Pin %s (%s) (net %d)"
#: eeschema/erc.cpp:609
#, fuzzy
msgid "ERC report"
msgstr "Créer Rapport d'erreur"
#: eeschema/erc.cpp:613
msgid "ERC control"
msgstr "Contrôle ERC"
#: eeschema/erc.cpp:623
#: eeschema/erc.cpp:619
msgid ""
"\n"
"***** Sheet / (Root) \n"
@ -6648,7 +6637,7 @@ msgstr ""
"\n"
"***** Feuille/ ( Racine)\n"
#: eeschema/erc.cpp:628
#: eeschema/erc.cpp:624
#, c-format
msgid ""
"\n"
@ -6657,12 +6646,7 @@ msgstr ""
"\n"
"***** Feuille %s\n"
#: eeschema/erc.cpp:645
#, c-format
msgid "ERC: %s (X= %2.3f inches, Y= %2.3f inches\n"
msgstr "ERC: %s (X= %2.3f pouces, Y= %2.3f pouces\n"
#: eeschema/erc.cpp:654
#: eeschema/erc.cpp:643
#, c-format
msgid ""
"\n"
@ -6679,297 +6663,301 @@ msgstr "Pas de composants trouvés"
msgid "Selection"
msgstr "Sélection"
#: eeschema/onrightclick.cpp:105
#: eeschema/onrightclick.cpp:108
msgid "Leave Sheet"
msgstr "Quitter sous-feuille"
#: eeschema/onrightclick.cpp:121
#: eeschema/onrightclick.cpp:124
msgid "Delete Noconn"
msgstr "Supprimer Non Connexion"
#: eeschema/onrightclick.cpp:131
#: eeschema/onrightclick.cpp:134
msgid "Move Bus Entry"
msgstr "Déplacer Entrée de Bus"
#: eeschema/onrightclick.cpp:133
#: eeschema/onrightclick.cpp:136
msgid "Set Bus Entry /"
msgstr "Entrée de Bus /"
#: eeschema/onrightclick.cpp:135
#: eeschema/onrightclick.cpp:138
msgid "Set Bus Entry \\"
msgstr "Entrée de Bus \\"
#: eeschema/onrightclick.cpp:137
#: eeschema/onrightclick.cpp:140
msgid "Delete Bus Entry"
msgstr "Supprimer Entrée de Bus"
#: eeschema/onrightclick.cpp:232
#: eeschema/onrightclick.cpp:235
msgid "Move Field"
msgstr "Déplace Champ"
#: eeschema/onrightclick.cpp:233
#: eeschema/onrightclick.cpp:236
msgid "Rotate Field"
msgstr "Rotation Champ"
#: eeschema/onrightclick.cpp:259
#: eeschema/onrightclick.cpp:262
msgid "Move Component"
msgstr "Déplace Composant"
#: eeschema/onrightclick.cpp:264
#: eeschema/onrightclick.cpp:267
msgid "Drag Component"
msgstr "Drag Composant"
#: eeschema/onrightclick.cpp:271
#: eeschema/onrightclick.cpp:274
msgid "Rotate +"
msgstr "Rotation +"
#: eeschema/onrightclick.cpp:275
#: eeschema/onrightclick.cpp:278
msgid "Mirror --"
msgstr "Miroir--"
#: eeschema/onrightclick.cpp:277
#: eeschema/onrightclick.cpp:280
msgid "Mirror ||"
msgstr "Miroir ||"
#: eeschema/onrightclick.cpp:283
#: eeschema/onrightclick.cpp:286
msgid "Orient Component"
msgstr "Oriente Composant"
#: eeschema/onrightclick.cpp:296
#: eeschema/onrightclick.cpp:299
msgid "Footprint "
msgstr "Empreinte: "
#: eeschema/onrightclick.cpp:301
#: eeschema/onrightclick.cpp:304
msgid "Convert"
msgstr "Convert"
#: eeschema/onrightclick.cpp:309
#: eeschema/onrightclick.cpp:312
#, c-format
msgid "Unit %d %c"
msgstr "Unité %d %c"
#: eeschema/onrightclick.cpp:314
#: eeschema/onrightclick.cpp:317
msgid "Unit"
msgstr "Unité"
#: eeschema/onrightclick.cpp:319
#: eeschema/onrightclick.cpp:322
msgid "Edit Component"
msgstr "Edite Composant"
#: eeschema/onrightclick.cpp:323
#: eeschema/onrightclick.cpp:326
msgid "Copy Component"
msgstr "Copie Composant"
#: eeschema/onrightclick.cpp:324
#: eeschema/onrightclick.cpp:327
msgid "Delete Component"
msgstr "Suppression Composant"
#: eeschema/onrightclick.cpp:343
#: eeschema/onrightclick.cpp:346
msgid "Move Global Label"
msgstr "Déplacer Label Global"
#: eeschema/onrightclick.cpp:344
#: eeschema/onrightclick.cpp:347
msgid "Rotate Global Label"
msgstr "Rot. Label Global"
#: eeschema/onrightclick.cpp:345
#: eeschema/onrightclick.cpp:348
msgid "Edit Global Label"
msgstr "Editer Label Global"
#: eeschema/onrightclick.cpp:346
#: eeschema/onrightclick.cpp:349
msgid "Delete Global Label"
msgstr "Supprimer Label Global"
#: eeschema/onrightclick.cpp:350
#: eeschema/onrightclick.cpp:404
#: eeschema/onrightclick.cpp:437
#: eeschema/onrightclick.cpp:353
#: eeschema/onrightclick.cpp:407
#: eeschema/onrightclick.cpp:440
msgid "Change to Hierarchical Label"
msgstr "Changer en Label Hiérarchique"
#: eeschema/onrightclick.cpp:352
#: eeschema/onrightclick.cpp:377
#: eeschema/onrightclick.cpp:435
#: eeschema/onrightclick.cpp:355
#: eeschema/onrightclick.cpp:380
#: eeschema/onrightclick.cpp:438
msgid "Change to Label"
msgstr "Change en Label"
#: eeschema/onrightclick.cpp:354
#: eeschema/onrightclick.cpp:379
#: eeschema/onrightclick.cpp:406
#: eeschema/onrightclick.cpp:357
#: eeschema/onrightclick.cpp:382
#: eeschema/onrightclick.cpp:409
msgid "Change to Text"
msgstr "Change en Texte"
#: eeschema/onrightclick.cpp:356
#: eeschema/onrightclick.cpp:383
#: eeschema/onrightclick.cpp:410
#: eeschema/onrightclick.cpp:441
#: eeschema/onrightclick.cpp:359
#: eeschema/onrightclick.cpp:386
#: eeschema/onrightclick.cpp:413
#: eeschema/onrightclick.cpp:444
msgid "Change Type"
msgstr "Change Type"
#: eeschema/onrightclick.cpp:370
#: eeschema/onrightclick.cpp:373
msgid "Move Hierarchical Label"
msgstr "Déplacer Label Hiérarchique"
#: eeschema/onrightclick.cpp:371
#: eeschema/onrightclick.cpp:374
msgid "Rotate Hierarchical Label"
msgstr "Rot. Label Hiérarchique"
#: eeschema/onrightclick.cpp:372
#: eeschema/onrightclick.cpp:375
msgid "Edit Hierarchical Label"
msgstr "Editer Label Hiérarchique"
#: eeschema/onrightclick.cpp:373
#: eeschema/onrightclick.cpp:376
msgid "Delete Hierarchical label"
msgstr "Supprimer Label Hiérarchique"
#: eeschema/onrightclick.cpp:381
#: eeschema/onrightclick.cpp:408
#: eeschema/onrightclick.cpp:384
#: eeschema/onrightclick.cpp:411
msgid "Change to Global Label"
msgstr "Change en Label Global"
#: eeschema/onrightclick.cpp:397
#: eeschema/onrightclick.cpp:400
msgid "Move Label"
msgstr "Déplace Label"
#: eeschema/onrightclick.cpp:398
#: eeschema/onrightclick.cpp:401
msgid "Rotate Label"
msgstr "Rot. Label"
#: eeschema/onrightclick.cpp:399
#: eeschema/onrightclick.cpp:402
msgid "Edit Label"
msgstr "Editer Label"
#: eeschema/onrightclick.cpp:400
#: eeschema/onrightclick.cpp:403
msgid "Delete Label"
msgstr "Supprimer Label"
#: eeschema/onrightclick.cpp:424
#: eeschema/onrightclick.cpp:427
msgid "Move Text"
msgstr "Déplacer Texte"
#: eeschema/onrightclick.cpp:425
#: eeschema/onrightclick.cpp:428
msgid "Rotate Text"
msgstr "Rot. Texte"
#: eeschema/onrightclick.cpp:426
#: eeschema/onrightclick.cpp:429
msgid "Edit Text"
msgstr "Editer Texte"
#: eeschema/onrightclick.cpp:427
#: eeschema/onrightclick.cpp:430
msgid "Delete Text"
msgstr "Effacer Texte"
#: eeschema/onrightclick.cpp:439
#: eeschema/onrightclick.cpp:442
msgid "Change to Glabel"
msgstr "Change en Label Global"
#: eeschema/onrightclick.cpp:460
#: eeschema/onrightclick.cpp:500
#: eeschema/onrightclick.cpp:463
#: eeschema/onrightclick.cpp:503
msgid "Break Wire"
msgstr "Briser Fil"
#: eeschema/onrightclick.cpp:463
#: eeschema/onrightclick.cpp:466
msgid "Delete Junction"
msgstr "Supprimer Jonction"
#: eeschema/onrightclick.cpp:468
#: eeschema/onrightclick.cpp:494
#: eeschema/onrightclick.cpp:471
#: eeschema/onrightclick.cpp:497
msgid "Delete Node"
msgstr "Supprimer Noeud"
#: eeschema/onrightclick.cpp:470
#: eeschema/onrightclick.cpp:496
#: eeschema/onrightclick.cpp:473
#: eeschema/onrightclick.cpp:499
msgid "Delete Connection"
msgstr "Supprimer Connexion"
#: eeschema/onrightclick.cpp:487
#: eeschema/onrightclick.cpp:490
msgid "Wire End"
msgstr "Terminer Fil"
#: eeschema/onrightclick.cpp:489
#: eeschema/onrightclick.cpp:492
msgid "Delete Wire"
msgstr "Supprimer Fil"
#: eeschema/onrightclick.cpp:510
#: eeschema/onrightclick.cpp:542
#: eeschema/onrightclick.cpp:513
#: eeschema/onrightclick.cpp:545
msgid "Add Global Label"
msgstr "Ajout Label Global"
#: eeschema/onrightclick.cpp:526
#: eeschema/onrightclick.cpp:529
msgid "Bus End"
msgstr "Terminer Bus"
#: eeschema/onrightclick.cpp:529
#: eeschema/onrightclick.cpp:532
msgid "Delete Bus"
msgstr "Supprimer Bus"
#: eeschema/onrightclick.cpp:533
#: eeschema/onrightclick.cpp:536
msgid "Break Bus"
msgstr "Briser Bus"
#: eeschema/onrightclick.cpp:555
#: eeschema/onrightclick.cpp:558
msgid "Enter Sheet"
msgstr "Entrer dans Feuille"
#: eeschema/onrightclick.cpp:557
#: eeschema/onrightclick.cpp:560
msgid "Move Sheet"
msgstr "Déplacer Feuille"
#: eeschema/onrightclick.cpp:562
#: eeschema/onrightclick.cpp:565
msgid "Place Sheet"
msgstr "Placer Feuille"
#: eeschema/onrightclick.cpp:566
#: eeschema/onrightclick.cpp:569
msgid "Edit Sheet"
msgstr "Editer Feuille"
#: eeschema/onrightclick.cpp:567
#: eeschema/onrightclick.cpp:570
msgid "Resize Sheet"
msgstr "Redimensionner Feuille"
#: eeschema/onrightclick.cpp:569
#: eeschema/onrightclick.cpp:572
msgid "Import PinSheets"
msgstr "Importer Connecteur de Hiérarchie"
#: eeschema/onrightclick.cpp:573
#: eeschema/onrightclick.cpp:576
msgid "Cleanup PinSheets"
msgstr "Nettoyage des Pins Hiérarchiques"
#: eeschema/onrightclick.cpp:575
#: eeschema/onrightclick.cpp:578
msgid "Delete Sheet"
msgstr "Supprimer Feuille"
#: eeschema/onrightclick.cpp:588
#: eeschema/onrightclick.cpp:591
msgid "Move PinSheet"
msgstr "Déplace Connecteur de hiérarchie"
#: eeschema/onrightclick.cpp:590
#: eeschema/onrightclick.cpp:593
msgid "Edit PinSheet"
msgstr "Edit Connecteur de hiérarchie"
#: eeschema/onrightclick.cpp:593
#: eeschema/onrightclick.cpp:596
msgid "Delete PinSheet"
msgstr "Supprimer Connecteur de hiérarchie"
#: eeschema/onrightclick.cpp:610
#: eeschema/onrightclick.cpp:613
msgid "Window Zoom"
msgstr "Zoom sur Fenètre"
#: eeschema/onrightclick.cpp:616
#: eeschema/onrightclick.cpp:619
msgid "Save Block"
msgstr "Sauver Bloc"
#: eeschema/onrightclick.cpp:620
#: eeschema/onrightclick.cpp:623
msgid "Drag Block"
msgstr "Drag Bloc"
#: eeschema/onrightclick.cpp:624
#: eeschema/onrightclick.cpp:627
msgid "Mirror Block ||"
msgstr "Miroir Bloc ||"
#: eeschema/onrightclick.cpp:628
#: eeschema/onrightclick.cpp:631
msgid "Copy to Clipboard"
msgstr "Copie dans Presse papier"
#: eeschema/onrightclick.cpp:643
msgid "About this Marker"
msgstr ""
#: eeschema/edit_label.cpp:48
msgid "Empty Text!"
msgstr "Texte vide"
@ -8973,6 +8961,41 @@ msgstr "Librairie <"
msgid "> header read error"
msgstr "> erreur lecture entête"
#: eeschema/class_drc_erc_item.cpp:39
#, fuzzy
msgid "ERC err unspecified"
msgstr "Non specifié"
#: eeschema/class_drc_erc_item.cpp:41
#, fuzzy
msgid "Duplicate sheet names within a given sheet"
msgstr "Nom de feuille en double"
#: eeschema/class_drc_erc_item.cpp:43
msgid "Pin not connected (and no connect symbol found on this pin)"
msgstr "Pin non connectée (pas de symbole de non connexion trouvé sur cette pin)"
#: eeschema/class_drc_erc_item.cpp:45
msgid "Pin connected to some others pins but no pin to drive it"
msgstr "Pin connectée à d'autres pins, mais aucunne pin pour la piloter"
#: eeschema/class_drc_erc_item.cpp:47
msgid "Confict problem between pins. Severity: warning"
msgstr "Problème de conflit entre pins. Sévérité: warning"
#: eeschema/class_drc_erc_item.cpp:49
msgid "Confict problem between pins. Severity: error"
msgstr "Problème de conflit entre pins. Sévérité: erreur"
#: eeschema/class_drc_erc_item.cpp:51
#, fuzzy
msgid "Mismatch between hierarchical labels and pins sheets"
msgstr "Addition de pins de hiérarchie dans les feuilles symboles de hiérarchie"
#: eeschema/class_drc_erc_item.cpp:53
msgid "A no connect symbol is connected to more than 1 pin"
msgstr "Un symbole de non connexion est connecté à plus de une pin"
#: eeschema/dialog_edit_component_in_schematic.cpp:94
#: eeschema/dialog_edit_component_in_schematic.cpp:99
#: eeschema/dialog_edit_libentry_fields_in_lib.cpp:159
@ -9010,7 +9033,7 @@ msgstr " a été créé par une version plus récente de Eeschema et peut ne pas
msgid " was created by an older version of EESchema. It will be stored in the new file format when you save this file again."
msgstr " a été créé par une version plus ancienne de Eeschema. Il sera enregistré au nouveau format après la prochaine sauvegarde."
#: eeschema/load_one_schematic_file.cpp:409
#: eeschema/load_one_schematic_file.cpp:415
msgid "Done Loading "
msgstr "Chargement terminé"
@ -9116,45 +9139,51 @@ msgstr "la position X du point %d de la courbe de Bezier n'est pas définie"
msgid "Bezier point %d Y position not defined"
msgstr "la position Y du point %d de la courbe de Bezier n'est pas définie"
#: eeschema/dialog_erc_base.cpp:35
#: eeschema/dialog_erc_base.cpp:38
msgid "Erc File Report:"
msgstr "Fichier rapport d'erreurs:"
#: eeschema/dialog_erc_base.cpp:40
#: eeschema/dialog_erc_base.cpp:43
msgid "Total Errors Count: "
msgstr "Nombre Total d'Erreurs: "
#: eeschema/dialog_erc_base.cpp:44
#: eeschema/dialog_erc_base.cpp:52
#: eeschema/dialog_erc_base.cpp:60
#: eeschema/dialog_erc_base.cpp:47
#: eeschema/dialog_erc_base.cpp:55
#: eeschema/dialog_erc_base.cpp:63
msgid "0000"
msgstr "0000"
#: eeschema/dialog_erc_base.cpp:48
#: eeschema/dialog_erc_base.cpp:51
msgid "Warnings Count:"
msgstr "Nombre de Warnings:"
#: eeschema/dialog_erc_base.cpp:56
#: eeschema/dialog_erc_base.cpp:59
msgid "Errors Count:"
msgstr "Nombre d'erreurs:"
#: eeschema/dialog_erc_base.cpp:74
#: eeschema/dialog_erc_base.cpp:88
msgid "&Test Erc"
msgstr "&Test Erc"
#: eeschema/dialog_erc_base.cpp:77
#: eeschema/dialog_erc_base.cpp:91
msgid "&Del Markers"
msgstr "&Supprimer Marqueurs"
#: eeschema/dialog_erc_base.cpp:87
msgid "Write ERC report"
#: eeschema/dialog_erc_base.cpp:101
#, fuzzy
msgid "Create ERC report"
msgstr "Créer Rapport d'erreur"
#: eeschema/dialog_erc_base.cpp:106
#: eeschema/dialog_erc_base.cpp:108
#, fuzzy
msgid "Markers:"
msgstr "Marqueur"
#: eeschema/dialog_erc_base.cpp:120
msgid "ERC"
msgstr "ERC"
#: eeschema/dialog_erc_base.cpp:110
#: eeschema/dialog_erc_base.cpp:124
msgid "Reset"
msgstr "Défaut"
@ -10239,6 +10268,7 @@ 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 "
@ -10555,131 +10585,131 @@ msgstr "Fichiers \"Portable document format\" (*.pdf)|*.pdf"
msgid "All files (*)|*"
msgstr "Tous les fichiers (*)|*"
#: common/common.cpp:244
#: common/common.cpp:245
msgid " (\"):"
msgstr " (\"):"
#: common/common.cpp:334
#: common/common.cpp:335
msgid " \""
msgstr " \""
#: common/common.cpp:338
#: common/common.cpp:339
msgid " mm"
msgstr " mm"
#: common/common.cpp:588
#: common/common.cpp:589
msgid "Copper "
msgstr "Cuivre "
#: common/common.cpp:588
#: common/common.cpp:589
msgid "Inner L1 "
msgstr "Interne 1"
#: common/common.cpp:588
#: common/common.cpp:589
msgid "Inner L2 "
msgstr "Interne 2"
#: common/common.cpp:588
#: common/common.cpp:589
msgid "Inner L3 "
msgstr "Interne 3"
#: common/common.cpp:589
#: common/common.cpp:590
msgid "Inner L4 "
msgstr "Interne 4"
#: common/common.cpp:589
#: common/common.cpp:590
msgid "Inner L5 "
msgstr "Interne 5"
#: common/common.cpp:589
#: common/common.cpp:590
msgid "Inner L6 "
msgstr "Interne 6"
#: common/common.cpp:589
#: common/common.cpp:590
msgid "Inner L7 "
msgstr "Interne 7"
#: common/common.cpp:590
#: common/common.cpp:591
msgid "Inner L8 "
msgstr "Interne 8"
#: common/common.cpp:590
#: common/common.cpp:591
msgid "Inner L9 "
msgstr "Interne 9"
#: common/common.cpp:590
#: common/common.cpp:591
msgid "Inner L10"
msgstr "Interne 10"
#: common/common.cpp:590
#: common/common.cpp:591
msgid "Inner L11"
msgstr "Interne 11"
#: common/common.cpp:591
#: common/common.cpp:592
msgid "Inner L12"
msgstr "Interne 12"
#: common/common.cpp:591
#: common/common.cpp:592
msgid "Inner L13"
msgstr "Interne 13"
#: common/common.cpp:591
#: common/common.cpp:592
msgid "Inner L14"
msgstr "Interne 14"
#: common/common.cpp:592
#: common/common.cpp:593
msgid "Adhes Cop"
msgstr "Adhes Cu "
#: common/common.cpp:592
#: common/common.cpp:593
msgid "Adhes Cmp"
msgstr "Adhes Cmp"
#: common/common.cpp:592
#: common/common.cpp:593
msgid "SoldP Cop"
msgstr "SoldP Cu "
#: common/common.cpp:592
#: common/common.cpp:593
msgid "SoldP Cmp"
msgstr "SoldP Cmp"
#: common/common.cpp:593
#: common/common.cpp:594
msgid "SilkS Cop"
msgstr "Sérigr Cu "
#: common/common.cpp:593
#: common/common.cpp:594
msgid "SilkS Cmp"
msgstr "Sérigr Cmp"
#: common/common.cpp:593
#: common/common.cpp:594
msgid "Mask Cop "
msgstr "Masque Cu "
#: common/common.cpp:593
#: common/common.cpp:594
msgid "Mask Cmp "
msgstr "Masque Cmp"
#: common/common.cpp:594
#: common/common.cpp:595
msgid "Drawings "
msgstr "Drawings "
#: common/common.cpp:594
#: common/common.cpp:595
msgid "Comments "
msgstr "Commentaires "
#: common/common.cpp:594
#: common/common.cpp:595
msgid "Eco1 "
msgstr "Eco1 "
#: common/common.cpp:594
#: common/common.cpp:595
msgid "Eco2 "
msgstr "Eco2 "
#: common/common.cpp:595
#: common/common.cpp:596
msgid "Edges Pcb"
msgstr "Contour Pcb"
#: common/common.cpp:595
#: common/common.cpp:596
msgid "BAD INDEX"
msgstr "BAD INDEX"
@ -10751,6 +10781,14 @@ msgstr "Langue"
msgid "Select application language (only for testing!)"
msgstr "Choisir la langue (seulement pour tests!)"
#: common/confirm.cpp:70
msgid "Warning"
msgstr "Avertissement"
#: common/confirm.cpp:74
msgid "Error"
msgstr "Erreur"
#: common/eda_doc.cpp:151
msgid "Doc File "
msgstr "Fichier de Doc "
@ -11452,7 +11490,7 @@ msgstr "Propriétés du texte graphique:"
msgid "Fields Properties"
msgstr "Propriétés des Champs"
#: eeschema/dialog_erc_base.h:87
#: eeschema/dialog_erc_base.h:94
msgid "EESchema Erc"
msgstr "EESchema Erc"
@ -11612,6 +11650,16 @@ msgstr "DCodes id."
msgid "Page Settings"
msgstr "Ajustage opt Page"
#~ msgid "sheet %s (loc X=%f, Y=%f): %s\n"
#~ msgstr "feuille %s (pos X=%f, Y=%f): %s\n"
#~ msgid "ERC finished, no error\n"
#~ msgstr "ERC finie, pas d'erreur\n"
#~ msgid "%s: Cmp %s, Pin %s (%s) connected to Cmp %s, Pin %s (%s) (net %d)"
#~ msgstr "%s: Cmp %s, Pin %s (%s) connectée à Cmp %s, Pin %s (%s) (net %d)"
#~ msgid "ERC control"
#~ msgstr "Contrôle ERC"
#~ msgid "ERC: %s (X= %2.3f inches, Y= %2.3f inches\n"
#~ msgstr "ERC: %s (X= %2.3f pouces, Y= %2.3f pouces\n"
#~ msgid "Last Warnings: "
#~ msgstr "-> Dern. Warnings: "
#~ msgid "Last Errors: "