diff --git a/common/about_kicad.cpp b/common/about_kicad.cpp index 48ddc49400..7ffd1c6004 100644 --- a/common/about_kicad.cpp +++ b/common/about_kicad.cpp @@ -8,7 +8,7 @@ #include "appl_wxstruct.h" -#define BUILD_VERSION "(20090910-unstable)" +#define BUILD_VERSION "(20090921-unstable)" #ifdef HAVE_SVN_VERSION diff --git a/eeschema/class_libentry.cpp b/eeschema/class_libentry.cpp index eaf9ed0ffa..5c5372bce8 100644 --- a/eeschema/class_libentry.cpp +++ b/eeschema/class_libentry.cpp @@ -549,7 +549,7 @@ bool LIB_COMPONENT::Load( FILE* file, char* line, int* lineNum, if( strcmp( p, "DEF" ) != 0 ) { - errorMsg.Printf( _( "DEF command expected in line %d, aborted." ), + errorMsg.Printf( wxT( "DEF command expected in line %d, aborted." ), *lineNum ); return false; } @@ -704,14 +704,14 @@ bool LIB_COMPONENT::LoadDrawEntries( FILE* f, char* line, break; default: - errorMsg.Printf( _( "undefined DRAW command %c" ), line[0] ); + errorMsg.Printf( wxT( "undefined DRAW command %c" ), line[0] ); m_Drawings = headEntry; return false; } if( !newEntry->Load( line, errorMsg ) ) { - errorMsg.Printf( _( "error <%s> in DRAW command %c" ), + errorMsg.Printf( wxT( "error <%s> in DRAW command %c" ), ( const wxChar* ) errorMsg, line[0] ); SAFE_DELETE( newEntry ); diff --git a/internat/fr/kicad.mo b/internat/fr/kicad.mo index 4577b6b497..a58504a998 100644 Binary files a/internat/fr/kicad.mo and b/internat/fr/kicad.mo differ diff --git a/internat/fr/kicad.po b/internat/fr/kicad.po index 35b2198936..5959fec8c3 100644 --- a/internat/fr/kicad.po +++ b/internat/fr/kicad.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: kicad\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-09-18 20:34+0100\n" -"PO-Revision-Date: 2009-09-18 20:38+0100\n" +"POT-Creation-Date: 2009-09-21 19:56+0100\n" +"PO-Revision-Date: 2009-09-21 19:59+0100\n" "Last-Translator: \n" "Language-Team: kicad team \n" "MIME-Version: 1.0\n" @@ -4820,7 +4820,7 @@ msgstr "Cette NetClass existe déjà, et ne peut être ajoutée; Abandon" #: pcbnew/dialog_design_rules.cpp:640 #, c-format msgid "%s: Via DrillVia Dia
" -msgstr "" +msgstr "%s: Perçage ViaDiam Via
" #: pcbnew/dialog_print_using_printer_base.cpp:35 msgid "Exclude Edges_Pcb Layer" @@ -5835,31 +5835,28 @@ msgid "Default" msgstr "Défaut" #: pcbnew/dialog_design_rules_base.cpp:59 -#, fuzzy msgid "Net Class parameters" -msgstr "Classes d'Equipots." +msgstr "Paramètres de NeClass" #: pcbnew/dialog_design_rules_base.cpp:68 msgid "Add another Net Class" -msgstr "" +msgstr "Ajouter une autre NetClass" #: pcbnew/dialog_design_rules_base.cpp:73 -#, fuzzy msgid "Remove the currently select Net Class" -msgstr "Le texte (ou la valeur) du champ actuellement sélectionné" +msgstr "Supprimer la NetClass actuellement sélectionnée" #: pcbnew/dialog_design_rules_base.cpp:77 msgid "Move Up" msgstr "Vers le haut ^" #: pcbnew/dialog_design_rules_base.cpp:78 -#, fuzzy msgid "Move the currently selected Net Class up one row" -msgstr "Déplacer le champ optionnel sélectionné de une position vers le haut" +msgstr "Déplacer la NetClassl sélectionné de une ligne vers le haut" #: pcbnew/dialog_design_rules_base.cpp:87 msgid "Membership:" -msgstr "" +msgstr "Membres:" #: pcbnew/dialog_design_rules_base.cpp:107 msgid "<<<" @@ -5999,9 +5996,8 @@ msgid "Export current drawing" msgstr "Exporter le dessin en cours" #: eeschema/tool_lib.cpp:104 -#, fuzzy msgid "Save current library to disk" -msgstr "Sauver le C.I. actuel" +msgstr "Sauver la librairie courante sur disque" #: eeschema/tool_lib.cpp:112 msgid "Delete component in current library" @@ -6016,9 +6012,8 @@ msgid "Select component to edit" msgstr "Sélectionner le composant à éditer" #: eeschema/tool_lib.cpp:125 -#, fuzzy msgid "Update current component in current library" -msgstr "Supprimer composant en librairie de travail" +msgstr "Mettre à jour le composant courant en librairie de travail" #: eeschema/tool_lib.cpp:128 msgid "Import component" @@ -6029,9 +6024,8 @@ msgid "Export component" msgstr "Exporter composant" #: eeschema/tool_lib.cpp:135 -#, fuzzy msgid "Save current component to new library" -msgstr "Sauver le composant courant en librairie courante (en mémoire)" +msgstr "Sauver le composant courant dans une nouvelle librairie" #: eeschema/tool_lib.cpp:138 msgid "Undo last command" @@ -6528,9 +6522,8 @@ msgid "none selected" msgstr "Pas de sélection" #: eeschema/viewlibs.cpp:317 -#, fuzzy msgid "Part" -msgstr "Composant %c" +msgstr "Part" #: eeschema/viewlibs.cpp:318 msgid "Alias" @@ -6557,9 +6550,9 @@ msgid "Background Color:" msgstr "Couleur du Fond:" #: eeschema/edit_component_in_lib.cpp:155 -#, fuzzy, c-format +#, c-format msgid "Alias <%s> not found for component <%s> in library <%s>." -msgstr "Element <%s> non trouvé en librairie <%s>." +msgstr "Alias <%s> non trouvé pour le component <%s> en librairie <%s>." #: eeschema/edit_component_in_lib.cpp:159 msgid "Component Library Error" @@ -6569,11 +6562,11 @@ msgstr "Erreur en Librairie de Composanr" #: eeschema/edit_component_in_lib.cpp:343 #, c-format msgid "Alias <%s> cannot be removed while it is being edited!" -msgstr "" +msgstr "L'alias <%s> ne peut être supprimé tant qu'il est en cours d'édition!" #: eeschema/edit_component_in_lib.cpp:285 msgid "Remove all aliases from list?" -msgstr "" +msgstr "Supprimer tous les alias de la liste?" #: eeschema/edit_component_in_lib.cpp:308 msgid "New alias:" @@ -6584,9 +6577,9 @@ msgid "Component Alias" msgstr "Alias de Composant" #: eeschema/edit_component_in_lib.cpp:318 -#, fuzzy, c-format +#, c-format msgid "Alias or component name <%s> already exists in library <%s>." -msgstr "Composant %s sauvé en librairie %s" +msgstr "Alias ou nom de composant <%s> déjà existant en librairie <%s>." #: eeschema/edit_component_in_lib.cpp:396 msgid "Delete units" @@ -6955,9 +6948,9 @@ msgid "Please select a component library." msgstr "SVP sélectionner une librairie de composants." #: eeschema/libedit.cpp:389 -#, fuzzy, c-format +#, c-format msgid "Component library <%s> is empty." -msgstr "Fichier document de composants <%s> vide" +msgstr "Fichier librairie de composants <%s> vide" #: eeschema/libedit.cpp:391 #, fuzzy @@ -8297,11 +8290,6 @@ msgstr "" msgid "User defined search path" msgstr "Chemin de recherche défini par l'utilisateur" -#: eeschema/class_libentry.cpp:552 -#, c-format -msgid "DEF command expected in line %d, aborted." -msgstr "" - #: eeschema/class_libentry.cpp:574 #, c-format msgid "Wrong DEF format in line %d, skipped." @@ -8311,16 +8299,6 @@ msgstr "" msgid "file ended prematurely loading component draw element" msgstr "" -#: eeschema/class_libentry.cpp:707 -#, c-format -msgid "undefined DRAW command %c" -msgstr "" - -#: eeschema/class_libentry.cpp:714 -#, c-format -msgid "error <%s> in DRAW command %c" -msgstr "" - #: eeschema/class_libentry.cpp:723 msgid "file ended prematurely while attempting to flush to end of drawing section." msgstr "" @@ -8639,9 +8617,9 @@ msgid "Import Component" msgstr "Importer Composant" #: eeschema/lib_export.cpp:65 -#, fuzzy, c-format +#, c-format msgid "Component library file <%s> is empty." -msgstr "Fichier document de composants <%s> vide" +msgstr "Le fichier de composants <%s> est vide." #: eeschema/lib_export.cpp:100 msgid "There is no component selected to save." @@ -9031,9 +9009,9 @@ msgid "Component library <%s> has duplicate entry name <%s>. This may cause som msgstr "" #: eeschema/class_library.cpp:184 -#, fuzzy, c-format +#, c-format msgid "Cannot add duplicate alias <%s> to library <%s>." -msgstr "Ne peut créer une copie de l'élément <%s> en librairie <%s>." +msgstr "Ne peut ajouter un double de l'alias <%s> en librairie <%s>." #: eeschema/class_library.cpp:223 #, c-format @@ -9041,14 +9019,12 @@ msgid "Conflict in library <%s>: alias <%s> already has root name <%s> and will msgstr "" #: eeschema/class_library.cpp:453 -#, fuzzy msgid "The component library file name is not set." -msgstr "Nom du fichier librairie non sélectionné" +msgstr "Le nom du fichier librairie est non sélectionné." #: eeschema/class_library.cpp:461 -#, fuzzy msgid "The file could not be opened." -msgstr "Fichier d'aide %s non trouvé." +msgstr "Le fichier n'a pas pu être ouvert." #: eeschema/class_library.cpp:467 msgid "The file is empty!" @@ -9077,9 +9053,8 @@ msgid "" msgstr "" #: eeschema/class_library.cpp:539 -#, fuzzy msgid "An error occured attempting to read the header." -msgstr "L'erreur <%s> s'est produite lors du chargement de la librairie de composants <%s>" +msgstr "Une 'erreur s'est produite lors de la lecture de l'entête." #: eeschema/class_library.cpp:569 #, c-format @@ -9969,7 +9944,7 @@ msgstr "Ne peut ouvrir le fichier librairie de modules PCB <%s>." msgid "<%s> is not a valid Kicad PCB foot print library." msgstr "<%s> in'est pas un fichier de module PCB Kicad valide." -#: cvpcb/loadcmp.cpp:137 +#: cvpcb/loadcmp.cpp:136 #, c-format msgid "Module %s not found" msgstr "Module %s non trouvé" @@ -10052,24 +10027,24 @@ msgstr "Cvpcb est en cours d'exécution. Continuer ?" msgid " [no file]" msgstr " [pas de fichier]" -#: cvpcb/displayframe.cpp:124 +#: cvpcb/displayframe.cpp:130 msgid "Display Options" msgstr "Options d'Affichage" -#: cvpcb/displayframe.cpp:130 +#: cvpcb/displayframe.cpp:136 msgid "zoom + (F1)" msgstr "zoom + (F1)" -#: cvpcb/displayframe.cpp:134 +#: cvpcb/displayframe.cpp:140 msgid "zoom - (F2)" msgstr "zoom - (F2)" -#: cvpcb/displayframe.cpp:138 +#: cvpcb/displayframe.cpp:144 msgid "redraw (F3)" msgstr "Redessin (F3)" -#: cvpcb/displayframe.cpp:142 -#: cvpcb/displayframe.cpp:147 +#: cvpcb/displayframe.cpp:148 +#: cvpcb/displayframe.cpp:153 msgid "1:1 zoom" msgstr "1:1 zoom" @@ -11814,9 +11789,8 @@ msgid "Module properties" msgstr "Propriétés du Module" #: pcbnew/dialog_copper_layers_setup_base.h:55 -#, fuzzy msgid "Copper layers setup" -msgstr "Couches Cuivre" +msgstr "Réglage des Couches Cuivre" #: eeschema/dialog_cmp_graphic_properties.h:43 msgid "Graphic shape properties" diff --git a/pcbnew/class_board.cpp b/pcbnew/class_board.cpp index ff4cdf1af5..033a76e0cd 100644 --- a/pcbnew/class_board.cpp +++ b/pcbnew/class_board.cpp @@ -30,8 +30,9 @@ BOARD::BOARD( EDA_BaseStruct* parent, WinEDA_BasePcbFrame* frame ) : m_CurrentZoneContour = NULL; // This ZONE_CONTAINER handle the zone contour cuurently in progress m_NetInfo = new NETINFO_LIST( this ); // handle nets info list (name, design constraints .. + m_NetInfo->BuildListOfNets(); // prepare pads and nets lists containers. - for( int layer = 0; layerGetClearance(); } else + { +#ifdef __WXDEBUG__ wxLogWarning(wxT("BOARD_CONNECTED_ITEM::GetClearance(): NULL netclass") ); +#endif + } return 0; } @@ -116,15 +124,25 @@ NETCLASS* BOARD_CONNECTED_ITEM::GetNetClass() const if( net ) { NETCLASS* netclass = net->GetNetClass(); +#ifdef __WXDEBUG__ if( netclass == NULL ) wxLogWarning(wxT("BOARD_CONNECTED_ITEM::GetNetClass(): NULL netclass") ); +#endif return netclass; } else + { +#ifdef __WXDEBUG__ wxLogWarning(wxT("BOARD_CONNECTED_ITEM::GetNetClass(): NULL net") ); +#endif + } } else + { +#ifdef __WXDEBUG__ wxLogWarning(wxT("BOARD_CONNECTED_ITEM::GetNetClass(): NULL board, type %d"), Type() ); +#endif + } return NULL; } diff --git a/pcbnew/class_pad.cpp b/pcbnew/class_pad.cpp index b346023529..cdaa9862b1 100644 --- a/pcbnew/class_pad.cpp +++ b/pcbnew/class_pad.cpp @@ -19,21 +19,23 @@ D_PAD::D_PAD( MODULE* parent ) : BOARD_CONNECTED_ITEM( parent, TYPE_PAD ) { m_NumPadName = 0; - m_Masque_Layer = CUIVRE_LAYER; - m_DrillShape = PAD_CIRCLE; // Drill shape = circle - m_Size.x = m_Size.y = 500; + m_Size.x = m_Size.y = 500; // give it a reasonnable size + m_Orient = 0; // Pad rotation in 1/10 degrees if( m_Parent && (m_Parent->Type() == TYPE_MODULE) ) { m_Pos = ( (MODULE*) m_Parent )->GetPosition(); } - m_PadShape = PAD_CIRCLE; // forme CERCLE, PAD_RECT PAD_OVAL PAD_TRAPEZOID ou libre - m_Attribut = PAD_STANDARD; // NORMAL, PAD_SMD, PAD_CONN, Bit 7 = STACK - m_Orient = 0; // en 1/10 degres + m_PadShape = PAD_CIRCLE; // Shape: PAD_CIRCLE, PAD_RECT PAD_OVAL PAD_TRAPEZOID + m_Attribut = PAD_STANDARD; // Type: NORMAL, PAD_SMD, PAD_CONN + m_DrillShape = PAD_CIRCLE; // Drill shape = circle + // these layers are ok for a standard pad: + m_Masque_Layer = ALL_CU_LAYERS | SILKSCREEN_LAYER_CMP |\ + SOLDERMASK_LAYER_CU | SOLDERMASK_LAYER_CMP; - SetSubRatsnest( 0 ); + SetSubRatsnest( 0 ); // used in ratsnest calculations ComputeRayon(); } diff --git a/pcbnew/dialog_design_rules.cpp b/pcbnew/dialog_design_rules.cpp index ff59c5b2e7..a62a997f62 100644 --- a/pcbnew/dialog_design_rules.cpp +++ b/pcbnew/dialog_design_rules.cpp @@ -93,6 +93,30 @@ DIALOG_DESIGN_RULES::DIALOG_DESIGN_RULES( WinEDA_PcbFrame* parent ) : } +/* Display on m_MessagesList the current global settings: + * minimal values for tracks, vias, clearance ... + */ +void DIALOG_DESIGN_RULES::PrintCurrentSettings( ) +{ + wxString msg, value; + int internal_units = m_Parent->m_InternalUnits; + + m_MessagesList->AppendToPage(_("Current general setting:
") ); + + // Display min values: + value = ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_TrackMinWidth, internal_units, true ); + msg.Printf(_("Minimum value for tracks width: %s
\n"), value.GetData() ); + m_MessagesList->AppendToPage(msg); + value = ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_ViasMinSize, internal_units, true ); + msg.Printf(_("Minimum value for vias diameter: %s
\n"), value.GetData() ); + m_MessagesList->AppendToPage(msg); + value = ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_MicroViasMinSize, internal_units, true ); + msg.Printf(_("Minimum value for microvias diameter: %s
\n"), value.GetData() ); + m_MessagesList->AppendToPage(msg); + +} + + /********************************************************************/ void DIALOG_DESIGN_RULES::Init() /********************************************************************/ @@ -117,11 +141,13 @@ void DIALOG_DESIGN_RULES::Init() netclass = netclasses.GetDefault(); + // Initialize list of nets for Default Net Class for( NETCLASS::const_iterator name = netclass->begin(); name != netclass->end(); ++name ) { m_AllNets.push_back( NETCUP( *name, netclass->GetName() ) ); } + // Initialize list of nets for others (custom) Net Classes for( NETCLASSES::const_iterator nc = netclasses.begin(); nc != netclasses.end(); ++nc ) { netclass = nc->second; @@ -133,6 +159,8 @@ void DIALOG_DESIGN_RULES::Init() } InitializeRulesSelectionBoxes(); + + PrintCurrentSettings( ); } // Sort comparison function diff --git a/pcbnew/dialog_design_rules.h b/pcbnew/dialog_design_rules.h index f57d3abbb3..ec50cf2c10 100644 --- a/pcbnew/dialog_design_rules.h +++ b/pcbnew/dialog_design_rules.h @@ -65,6 +65,7 @@ private: void CopyRulesListToBoard(); void SetRoutableLayerStatus(); void FillListBoxWithNetNames( wxListCtrl* aListCtrl, const wxString& aNetClass ); + void PrintCurrentSettings( ); /** * Function swapNetClass diff --git a/pcbnew/librairi.cpp b/pcbnew/librairi.cpp index bb9edb6e9b..1ba372b006 100644 --- a/pcbnew/librairi.cpp +++ b/pcbnew/librairi.cpp @@ -705,7 +705,7 @@ int WinEDA_BasePcbFrame::Save_Module_In_Library( const wxString& aLibName, MODULE* WinEDA_BasePcbFrame::Create_1_Module( wxDC* DC, const wxString& module_name ) /************************************************************************************/ -/* Create a new module or footprint : A new module is tartted with 2 texts : +/* Create a new module or footprint : A new module contains 2 texts : * First = REFERENCE * Second = VALUE: "VAL**" * the new module is added on begining of the linked list of modules diff --git a/pcbnew/loadcmp.cpp b/pcbnew/loadcmp.cpp index 41bb6cd880..d3bca71612 100644 --- a/pcbnew/loadcmp.cpp +++ b/pcbnew/loadcmp.cpp @@ -165,7 +165,7 @@ MODULE* WinEDA_BasePcbFrame::Load_Module_From_Library( const wxString& library, module->SetPosition( curspos ); /* TODO: call RecalculateAllTracksNetcode() only if some pads pads have * a netname. - * If all pads are "not connected (usually the caes in module libraries, + * If all pads are not connected (usually the case in module libraries, * rebuild only the pad and list of nets ( faster) */ // GetBoard()->m_Pcb->m_NetInfo->BuildListOfNets(); diff --git a/pcbnew/modedit.cpp b/pcbnew/modedit.cpp index 5c81c5c3ae..604b272d44 100644 --- a/pcbnew/modedit.cpp +++ b/pcbnew/modedit.cpp @@ -223,6 +223,10 @@ void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event ) MODULE* module = Create_1_Module( NULL, wxEmptyString ); if( module ) // i.e. if create module command not aborted { + // Initialize data relative to nets and netclasses (for a new module + // the defaults are used) + // This is mandatory to handle and draw pads + GetBoard()->m_NetInfo->BuildListOfNets(); redraw = true; module->SetPosition( wxPoint( 0, 0 ) ); if( GetBoard()->m_Modules )