diff --git a/pcbnew/bitmaps/Add_Tracks.xpm b/bitmaps/Add_Tracks.xpm similarity index 80% rename from pcbnew/bitmaps/Add_Tracks.xpm rename to bitmaps/Add_Tracks.xpm index 0863bcf7bc..05b273f8af 100644 --- a/pcbnew/bitmaps/Add_Tracks.xpm +++ b/bitmaps/Add_Tracks.xpm @@ -1,35 +1,41 @@ -/* XPM */ -static const char * add_tracks_xpm[] = { -"16 16 16 1", -" c None", -". c #007D00", -"+ c #006100", -"@ c #004400", -"# c #007800", -"$ c #007B00", -"% c #004000", -"& c #007C00", -"* c #006500", -"= c #007A00", -"- c #004600", -"; c #D72E2E", -"> c #A32222", -", c #C22929", -"' c #D22D2D", -") c #6D1717", -" ", -"........ ", -"........+ ", -" @.# ", -" $.% ", -" &.* ", -" .= ", -" $.- ", -" ;;; ........", -" ;;;;; .......", -";;> >;, ", -";; ;' ", -";;> ;;, ", -" ;;;;;) ", -" ,',) ", -" "}; +/* XPM */ +#ifndef XPMMAIN +extern const char *add_tracks_xpm[]; + +#else +const char * add_tracks_xpm[] = { +"16 16 16 1", +" c None", +". c #007D00", +"+ c #006100", +"@ c #004400", +"# c #007800", +"$ c #007B00", +"% c #004000", +"& c #007C00", +"* c #006500", +"= c #007A00", +"- c #004600", +"; c #D72E2E", +"> c #A32222", +", c #C22929", +"' c #D22D2D", +") c #6D1717", +" ", +"........ ", +"........+ ", +" @.# ", +" $.% ", +" &.* ", +" .= ", +" $.- ", +" ;;; ........", +" ;;;;; .......", +";;> >;, ", +";; ;' ", +";;> ;;, ", +" ;;;;;) ", +" ,',) ", +" "}; + +#endif diff --git a/bitmaps/Auto_track_width.xpm b/bitmaps/Auto_track_width.xpm new file mode 100644 index 0000000000..31c89d6be0 --- /dev/null +++ b/bitmaps/Auto_track_width.xpm @@ -0,0 +1,39 @@ +/* XPM */ +#ifndef XPMMAIN +extern const char *auto_track_width_xpm[]; + +#else +const char * auto_track_width_xpm[] = { +"16 16 14 1", +" c None", +", c #008080", +". c #00E000", +"+ c #006100", +"@ c #004400", +"# c #007800", +"$ c #007B00", +"% c #004000", +"& c #007C00", +"* c #006500", +"= c #007A00", +"- c #004600", +"x c #FF2D2D", +"o c #0000FF", +" ", +"........+ ", +".........+ ", +" @..# ", +" $.% o o ", +" &..* o ", +" xxxx..= o ", +" x xxx..- o ", +" x x ........", +" x x .......", +"x x , o ", +"x x ,, o ", +"x x,,,,,,,,,,o ", +"x x ,, o ", +"x x , o o ", +"x x "}; + +#endif diff --git a/pcbnew/bitmaps/Width_Segment.xpm b/bitmaps/Width_Segment.xpm similarity index 78% rename from pcbnew/bitmaps/Width_Segment.xpm rename to bitmaps/Width_Segment.xpm index d9a7e396af..e351af0007 100644 --- a/pcbnew/bitmaps/Width_Segment.xpm +++ b/bitmaps/Width_Segment.xpm @@ -1,5 +1,9 @@ /* XPM */ -static const char * width_segment_xpm[] = { +#ifndef XPMMAIN +extern const char *width_segment_xpm[]; + +#else +const char * width_segment_xpm[] = { "16 16 3 1", " c None", "! c black", @@ -20,3 +24,4 @@ static const char * width_segment_xpm[] = { " ! ", " ! ", " "}; +#endif diff --git a/change_log.txt b/change_log.txt index b23c182594..451ac85baa 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,60 +1,3 @@ -Can somebody please come to my rescue on this one: - -This was posted to the developer's list. It would be nice to get an -apology or at least a link to the posting from which he launches such an attack: - - - - -Dick, enough of this whining. The article on gnu.org is more than an opinion -piece - unless -you really don't know what/who gnu.org is. While I and others here do appreciate -contributions made by all involved, your contributions do not entitle you to the -rest of the -code base. The GPL license is not revocable. You can take your lines of the -code (and only -just what you wrote) and do what you want, but you can't take Jean Pierre's -code, even if -you have modified it, without violating the GPL. - -I'm hereby asking Jean Pierre if he could please make it clear to this list if -he has ANY -intent of turning this package away from GPL for Dick or anyone else. I think -all involved -should know here and now if this is going to remain an open GPL project or not. -I don't -think anyone else here is interested in seeing kicad become a proprietary -package. - -If Dick thinks he can just take the entire code base as his, I'm sure that FSF -would help -with the legal costs of stopping him. (To donate to FSF see -http://www.fsf.org/associate/support_freedom/donate ) - -FSF has stepped up to the plate before and stopped people from appropriating GPL -software -for their own ends. The cost of IP litigation is not cheap, so I would recommend -Dick to -talk to an IP attorney before doing something stupid. - - ----------------------------------------------------------------- -Karl Schmidt EMail Karl@... -Transtronics, Inc. WEB http://xtronics.com -3209 West 9th Street Ph (785) 841-3089 -Lawrence, KS 66049 FAX (785) 841-0434 - -A clear conscience is usually the sign of a bad memory. - ----------------------------------------------------------------- - - - - - - - - Change Log for Kicad @@ -63,6 +6,16 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with email address. +2008-Jan-28 UPDATE Jean-Pierre Charras +================================================================================ ++pcbnew: + - Better criteria to find starting poind in zone filling: the filling alg. uses + pads, vias and track ends to find where start the filling. + - Added a tool + option in popup menu in track mode (select track width): + when creating a track, if activated: if we starts on an existing track, + the new track takes the width of the existing track + + 2008-Jan-27 UPDATE Dick Hollenbeck ================================================================================ diff --git a/contrib_makefiles.txt b/contrib_makefiles.txt deleted file mode 100644 index d3c945da70..0000000000 --- a/contrib_makefiles.txt +++ /dev/null @@ -1,309 +0,0 @@ -libs.dynamic - -CC = `wx-config --cc` -# Note: at least on Debian using gcc gives a smaller binary than using: -# `wx-config --ld` -LD = gcc - -SRCSUFF = .cpp -OBJSUFF = .o -FINAL = 1 - -WXPATH = `wx-config --prefix`/lib -PREFIX_WX_LIBS = `wx-config --basename` -SUFFIX_WX_LIBGL = _gl-$(LIBVERSION) - -LIBSTDC = -lstdc++ -LIBVERSION=`wx-config --release` -WXSYSLIB= `wx-config --libs` - -# attention à l'ordre des libairies -LIBS = -L/usr/local/lib -L/usr/X11R6/lib\ - $(EXTRALIBS) $(WXSYSLIB)\ - $(LIBSTDC) - -LIBS3D = -l$(PREFIX_WX_LIBS)$(SUFFIX_WX_LIBGL) -lGL -lGLU - -# Sub-projects -KICAD_SUBDIRS = common 3d-viewer eeschema pcbnew cvpcb kicad gerbview wxhtml -# How to invoke make -MAKE := $(MAKE) -f makefile.gtk -# File with the libraries definitions -LIBSDEF = libs.dynamic -# Prefix, can be from command line -ifneq ($(strip $(prefix)),) - IPREFIX=$(prefix) -else - IPREFIX=/usr/local/kicad/linux -endif -# Install tool, can be from command line -ifeq ($(INSTALL),) - INSTALL=install -endif -# C Flags, can be from command line -ifeq ($(CFLAGS),) - CFLAGS=-Wall -O2 - #CFLAGS=-Wall -Werror -g3 -endif -CFLAGS:=$(CFLAGS) `wx-config --cxxflags` -# Linker flags (strip) -LDFLAGS = -s -export - -.PHONY: $(KICAD_SUBDIRS) - -all: $(KICAD_SUBDIRS) - -common: - cd $@ ; $(MAKE) - -3d-viewer: - cd $@ ; $(MAKE) - -eeschema: - cd $@ ; $(MAKE) - -pcbnew: - cd $@ ; $(MAKE) - -cvpcb: - cd $@ ; $(MAKE) - -kicad: - cd $@ ; $(MAKE) - -gerbview: - cd $@ ; $(MAKE) - -wxhtml: - cd $@ ; $(MAKE) - -install: - @for d in $(KICAD_SUBDIRS); do (cd $$d && $(MAKE) install); done - -clean: - @for d in $(KICAD_SUBDIRS); do (cd $$d && $(MAKE) clean); done - -3d-viewer/makefile.gtk -## Makefile for 3d-viewer.a ( wxGTK - LINUX ) - -# Compiler flags. -CPPFLAGS = $(CFLAGS) -DPCBNEW -I../pcbnew -I ../include -I../common - -include ../$(LIBSDEF) - -TARGET = 3d-viewer - -all: $(TARGET).a - -include makefile.include - -$(TARGET).a: $(OBJECTS3D) makefile.gtk makefile.include - rm -f $@ - ar -rv $@ $(OBJECTS3D) - ranlib $@ - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj 2> /dev/null - -# No install target - -## Makefile for common.a - -# Compiler flags. -CPPFLAGS = $(CFLAGS) -I./ -I../include -EDACPPFLAGS = $(CPPFLAGS) - -all: common.a - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - - -common.a: $(OBJECTS) makefile.gtk makefile.include - rm -f $@ - ar -rv $@ $(OBJECTS) - ranlib $@ - - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj 2> /dev/null - -# No install target - -# File: makefile - -# Compiler flags. -CPPFLAGS = $(CFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - -include ../$(LIBSDEF) - - -TARGET = cvpcb - -all: $(TARGET) - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - - -$(TARGET): $(OBJECTS) makefile.gtk makefile.include $(EXTRALIBS) ../$(LIBSDEF) $(LIBVIEWER3D) - $(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) $(LIBVIEWER3D) $(LIBS3D) -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - -## Makefile for eeschema - -include ../$(LIBSDEF) - -TARGET = eeschema - -CPPFLAGS = $(CFLAGS) - -all: $(TARGET) - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - -$(TARGET): $(OBJECTS) makefile.gtk makefile.include $(EXTRALIBS) ../$(LIBSDEF) - $(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - - -## Makefile for GERBVIEW et wxGTK - -# Compiler flags. -CPPFLAGS = $(CFLAGS) - -EXTRALIBS = ../common/common.a -include ../$(LIBSDEF) - - -TARGET = gerbview - -all: $(TARGET) - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - - -$(TARGET): $(OBJECTS) makefile.gtk makefile.include $(EXTRALIBS) ../$(LIBSDEF) - $(LD) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - -# File: makefile for kicad, wxGTK - -# Compiler flags. -CPPFLAGS = $(CFLAGS) - -include ../$(LIBSDEF) - -TARGET = kicad - -all: $(TARGET) - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - - -$(TARGET): $(OBJECTS) makefile.gtk $(EXTRALIBS) ../$(LIBSDEF) - $(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - -## Makefile for PCBNEW et wxGTK - -# Compiler flags. -CPPFLAGS = $(CFLAGS) - -include ../$(LIBSDEF) - -TARGET = pcbnew - -all: $(TARGET) - -include makefile.include - -CPPFLAGS += $(EXTRACPPFLAGS) -EDACPPFLAGS = $(CPPFLAGS) - -$(TARGET): $(OBJECTS) makefile.gtk makefile.include $(LIBVIEWER3D) $(EXTRALIBS) ../$(LIBSDEF) - $(LD) $(LDFLAGS) $(OBJECTS) $(LIBS) $(LIBVIEWER3D) $(LIBS3D)\ - -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - -######################################################################## -######################################################################## - -# Compiler flags. -CPPFLAGS = $(CFLAGS) -I./ -I../include -I../common - -EXTRALIBS = - -include ../$(LIBSDEF) - -TARGET = wxhtml - -OBJDIR = -OBJSUFF = o - -.SUFFIXES: .cpp .h .o .cc -.cpp.o : - $(CC) -c $< -o $(<:.cpp=.o) $(CPPFLAGS) - - -DEPEND = - - -OBJECTS = $(TARGET).o helpfrm.o - - -$(TARGET): $(OBJECTS) makefile.gtk ../common/common.a ../$(LIBSDEF) - $(LD) $(OBJECTS) $(LDFLAGS) $(LIBS) -o $(TARGET) - -install: - $(INSTALL) -d -m 0755 $(IPREFIX) - $(INSTALL) -m 0755 $(TARGET) $(IPREFIX) - -clean: - -rm *.o *.a *~ .*~ core *.bak *.exe *.obj $(TARGET) 2> /dev/null - diff --git a/cvpcb/CMakeLists.txt b/cvpcb/CMakeLists.txt index b40b944741..0cd7b5a579 100644 --- a/cvpcb/CMakeLists.txt +++ b/cvpcb/CMakeLists.txt @@ -60,7 +60,7 @@ IF(WIN32) IF(MINGW) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o - COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR}} -I ${wxWidgets_ROOT_DIR}/include -i ${CMAKE_CURRENT_SOURCE_DIR}/cvpcb.rc -o ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o) SET(CVPCB_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o) diff --git a/eeschema/CMakeLists.txt b/eeschema/CMakeLists.txt index 01936e4a75..7f36ed846d 100644 --- a/eeschema/CMakeLists.txt +++ b/eeschema/CMakeLists.txt @@ -106,7 +106,7 @@ IF(WIN32) IF(MINGW) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o - COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR}} -I ${wxWidgets_ROOT_DIR}/include -i ${CMAKE_CURRENT_SOURCE_DIR}/eeschema.rc -o ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o) SET(EESCHEMA_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o) diff --git a/gerbview/CMakeLists.txt b/gerbview/CMakeLists.txt index 9a71fd51b9..9068ed37e4 100644 --- a/gerbview/CMakeLists.txt +++ b/gerbview/CMakeLists.txt @@ -62,7 +62,7 @@ IF(WIN32) IF(MINGW) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o - COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${wxWidgets_ROOT_DIR}/include -i ${CMAKE_CURRENT_SOURCE_DIR}/gerbview.rc -o ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o) SET(GERBVIEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o) diff --git a/include/bitmaps.h b/include/bitmaps.h index 6f9bed252f..cf8515729f 100644 --- a/include/bitmaps.h +++ b/include/bitmaps.h @@ -186,7 +186,10 @@ #include "../bitmaps/transistor.xpm" #include "../bitmaps/kicad_icon_small.xpm" #include "../bitmaps/general_ratsnet.xpm" + #include "../bitmaps/Add_Tracks.xpm" + #include "../bitmaps/Auto_track_width.xpm" #include "../bitmaps/fill_zone.xpm" + #include "../bitmaps/Width_Segment.xpm" // Largeur du toolbar vertical #define VTOOLBAR_WIDTH 26 diff --git a/include/id.h b/include/id.h index 8598519fe2..37c9f72366 100644 --- a/include/id.h +++ b/include/id.h @@ -548,17 +548,17 @@ enum main_id { ID_POPUP_PCB_DELETE_TRACKNET, ID_POPUP_PCB_DELETE_TRACK_MNU, - ID_POPUP_PCB_EDIT_ZONE_PARAMS, - ID_POPUP_PCB_DELETE_ZONE, ID_POPUP_PCB_MOVE_ZONE_CORNER, ID_POPUP_PCB_ADD_ZONE_CORNER, ID_POPUP_PCB_DELETE_ZONE_CORNER, - ID_POPUP_PCB_STOP_CURRENT_EDGE_ZONE, + ID_POPUP_PCB_PLACE_ZONE_CORNER, ID_POPUP_PCB_DELETE_ZONE_LAST_CREATED_CORNER, + ID_POPUP_PCB_EDIT_ZONE_PARAMS, + ID_POPUP_PCB_DELETE_ZONE, + ID_POPUP_PCB_STOP_CURRENT_EDGE_ZONE, ID_POPUP_PCB_FILL_ALL_ZONES, ID_POPUP_PCB_FILL_ZONE, ID_POPUP_PCB_DELETE_ZONE_CONTAINER, - ID_POPUP_PCB_PLACE_ZONE_CORNER, ID_POPUP_PCB_ZONE_ADD_SIMILAR_ZONE, ID_POPUP_PCB_ZONE_ADD_CUTOUT_ZONE, ID_POPUP_PCB_DELETE_ZONE_CUTOUT, @@ -587,6 +587,7 @@ enum main_id { ID_POPUP_PCB_EXPORT_PAD_SETTINGS, ID_POPUP_PCB_SELECT_WIDTH, + ID_POPUP_PCB_SELECT_AUTO_WIDTH, ID_POPUP_PCB_SELECT_WIDTH1, ID_POPUP_PCB_SELECT_WIDTH2, ID_POPUP_PCB_SELECT_WIDTH3, @@ -731,7 +732,7 @@ enum main_id { ID_AUX_TOOLBAR_PCB_VIA_SIZE, ID_AUX_TOOLBAR_PCB_TRACK_WIDTH, ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR, - ID_AUX_TOOLBAR_PCB_UNUSED2, + ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH, ID_AUX_TOOLBAR_PCB_UNUSED3, ID_AUX_TOOLBAR_PCB_UNUSED4, ID_AUX_TOOLBAR_PCB_UNUSED5, diff --git a/include/pcbstruct.h b/include/pcbstruct.h index cee09c5069..5ff641196d 100644 --- a/include/pcbstruct.h +++ b/include/pcbstruct.h @@ -79,35 +79,36 @@ /*************************************/ /* constantes de gestion des couches */ /*************************************/ -#define CUIVRE_LAYER (1<\n" "MIME-Version: 1.0\n" @@ -72,8 +72,8 @@ msgstr "Attention: Impossible de cr #: pcbnew/gen_modules_placefile.cpp:87 #: pcbnew/gen_modules_placefile.cpp:98 #: pcbnew/gen_modules_placefile.cpp:251 -#: pcbnew/export_gencad.cpp:83 #: pcbnew/plothpgl.cpp:67 +#: pcbnew/export_gencad.cpp:83 #: eeschema/plothpgl.cpp:560 #: eeschema/plotps.cpp:389 #: cvpcb/genequiv.cpp:42 @@ -231,10 +231,10 @@ msgstr "Controle la capture du curseur pcb quand le curseuir souris est sur le p #: pcbnew/dialog_pad_edit.cpp:217 #: pcbnew/dialog_initpcb.cpp:161 #: pcbnew/dialog_edit_mod_text.cpp:213 -#: pcbnew/dialog_track_options.cpp:212 #: pcbnew/dialog_display_options.cpp:282 #: pcbnew/swap_layers.cpp:220 #: pcbnew/set_grid.cpp:171 +#: pcbnew/dialog_track_options.cpp:322 #: pcbnew/dialog_drc.cpp:549 #: eeschema/symbtext.cpp:174 #: eeschema/dialog_options.cpp:274 @@ -259,12 +259,11 @@ msgstr "&OK" #: pcbnew/dialog_netlist.cpp:189 #: pcbnew/dialog_initpcb.cpp:164 #: pcbnew/dialog_edit_mod_text.cpp:217 -#: pcbnew/dialog_track_options.cpp:216 #: pcbnew/dialog_display_options.cpp:286 #: pcbnew/swap_layers.cpp:224 #: pcbnew/set_grid.cpp:176 -#: pcbnew/zones.cpp:219 -#: pcbnew/dialog_zones_by_polygon.cpp:204 +#: pcbnew/dialog_zones_by_polygon.cpp:205 +#: pcbnew/dialog_track_options.cpp:328 #: pcbnew/dialog_drc.cpp:545 #: eeschema/plothpgl.cpp:274 #: eeschema/symbtext.cpp:178 @@ -356,7 +355,7 @@ msgstr "3D Caract" #: pcbnew/cotation.cpp:105 #: pcbnew/mirepcb.cpp:99 #: pcbnew/set_color.cpp:353 -#: pcbnew/dialog_zones_by_polygon.cpp:201 +#: pcbnew/dialog_zones_by_polygon.cpp:202 #: pcbnew/sel_layer.cpp:158 #: pcbnew/sel_layer.cpp:316 #: pcbnew/dialog_gendrill.cpp:278 @@ -376,8 +375,8 @@ msgstr "OK" #: pcbnew/pcbtexte.cpp:116 #: pcbnew/modedit_onclick.cpp:203 #: pcbnew/modedit_onclick.cpp:235 -#: pcbnew/onrightclick.cpp:145 -#: pcbnew/onrightclick.cpp:159 +#: pcbnew/onrightclick.cpp:157 +#: pcbnew/onrightclick.cpp:171 #: pcbnew/block.cpp:154 #: pcbnew/cotation.cpp:109 #: pcbnew/mirepcb.cpp:103 @@ -454,13 +453,13 @@ msgstr "Cuivre" #: pcbnew/class_text_mod.cpp:369 #: pcbnew/class_text_mod.cpp:373 #: pcbnew/class_pcb_text.cpp:177 -#: pcbnew/class_pad.cpp:1062 #: pcbnew/class_track.cpp:832 #: pcbnew/class_module.cpp:1217 #: pcbnew/sel_layer.cpp:145 +#: pcbnew/class_pad.cpp:970 #: pcbnew/class_drawsegment.cpp:175 #: pcbnew/class_zone.cpp:61 -#: pcbnew/class_zone.cpp:512 +#: pcbnew/class_zone.cpp:523 #: gerbview/affiche.cpp:109 msgid "Layer" msgstr "Couche" @@ -484,8 +483,8 @@ msgstr "User" #: pcbnew/dialog_edit_module.cpp:246 #: pcbnew/class_text_mod.cpp:383 #: pcbnew/class_pcb_text.cpp:188 -#: pcbnew/class_pad.cpp:1104 #: pcbnew/class_module.cpp:1240 +#: pcbnew/class_pad.cpp:1012 #: eeschema/affiche.cpp:117 #: gerbview/affiche.cpp:49 msgid "Orient" @@ -635,23 +634,65 @@ msgstr "Librairie: " msgid "Modules (%d items)" msgstr "Modules (%d éléments)" -#: pcbnew/pcbcfg.cpp:68 -#: eeschema/eeconfig.cpp:58 -#: cvpcb/menucfg.cpp:170 -msgid "Read config file" -msgstr "Lire config" +#: pcbnew/edit.cpp:177 +#: pcbnew/editmod.cpp:45 +msgid "Module Editor" +msgstr "Ouvrir Editeur de modules" -#: pcbnew/pcbcfg.cpp:81 -#: cvpcb/menucfg.cpp:182 -#, c-format -msgid "File %s not found" -msgstr " fichier %s non trouvé" +#: pcbnew/edit.cpp:257 +msgid "Add Tracks" +msgstr "Addition de pistes" -#: pcbnew/pcbcfg.cpp:196 -#: eeschema/eeconfig.cpp:192 -#: cvpcb/cfg.cpp:71 -msgid "Save preferences" -msgstr "Sauver préférences" +#: pcbnew/edit.cpp:266 +msgid "Add Zones" +msgstr "Addition de Zones" + +#: pcbnew/edit.cpp:268 +msgid "Warning: Display Zone is OFF!!!" +msgstr "Attention: Affichage zones désactivé !!!" + +#: pcbnew/edit.cpp:275 +msgid "Add Layer Alignment Target" +msgstr "Ajouter Mire de superposition" + +#: pcbnew/edit.cpp:279 +msgid "Adjust Zero" +msgstr "Ajuster Zéro" + +#: pcbnew/edit.cpp:285 +msgid "Add Graphic" +msgstr "Addition éléments graphiques" + +#: pcbnew/edit.cpp:289 +#: pcbnew/tool_modedit.cpp:180 +#: eeschema/schedit.cpp:315 +#: eeschema/libframe.cpp:503 +#: gerbview/tool_gerber.cpp:385 +msgid "Add Text" +msgstr "Ajout de Texte" + +#: pcbnew/edit.cpp:293 +msgid "Add Modules" +msgstr "Addition de Modules" + +#: pcbnew/edit.cpp:297 +msgid "Add Dimension" +msgstr "Ajout de cotes" + +#: pcbnew/edit.cpp:305 +msgid "Net Highlight" +msgstr "Surbrillance des équipotentielles" + +#: pcbnew/edit.cpp:309 +msgid "Local Ratsnest" +msgstr "Monter le chevelu général" + +#: pcbnew/edit.cpp:533 +#: pcbnew/modedit.cpp:424 +#: eeschema/schedit.cpp:455 +#: eeschema/libframe.cpp:579 +msgid "Delete item" +msgstr "Suppression d'éléments" #: pcbnew/dialog_setup_libs.cpp:97 #: eeschema/dialog_eeschema_config.cpp:105 @@ -975,214 +1016,214 @@ msgstr "Ajout de stub (arc)" msgid "Add Polynomial Shape" msgstr "Ajout Forme polynomiale" -#: pcbnew/pcbplot.cpp:115 -#: pcbnew/pcbplot.cpp:205 +#: pcbnew/pcbplot.cpp:120 +#: pcbnew/pcbplot.cpp:210 #: gerbview/tool_gerber.cpp:90 msgid "Plot" msgstr "Tracer" -#: pcbnew/pcbplot.cpp:145 +#: pcbnew/pcbplot.cpp:150 msgid "Plot Format" msgstr "Format de tracé" -#: pcbnew/pcbplot.cpp:171 +#: pcbnew/pcbplot.cpp:176 msgid "Spot min" msgstr "Spot min" -#: pcbnew/pcbplot.cpp:175 +#: pcbnew/pcbplot.cpp:180 msgid "Pen Size" msgstr "Diam plume" -#: pcbnew/pcbplot.cpp:179 +#: pcbnew/pcbplot.cpp:184 msgid "Pen Speed (cm/s)" msgstr "Vitesse plume (cm/s)" -#: pcbnew/pcbplot.cpp:181 +#: pcbnew/pcbplot.cpp:186 msgid "Set pen speed in cm/s" msgstr "Ajuster Vitesse plume en centimetres par seconde" -#: pcbnew/pcbplot.cpp:183 +#: pcbnew/pcbplot.cpp:188 msgid "Pen Ovr" msgstr "Recouvrement" -#: pcbnew/pcbplot.cpp:185 +#: pcbnew/pcbplot.cpp:190 msgid "Set plot overlay for filling" msgstr "Ajuste recouvrement des tracés pour les remplissages" -#: pcbnew/pcbplot.cpp:187 +#: pcbnew/pcbplot.cpp:192 msgid "Lines Width" msgstr "Epaiss. lignes" -#: pcbnew/pcbplot.cpp:189 +#: pcbnew/pcbplot.cpp:194 msgid "Set width for lines in Line plot mode" msgstr "Ajuster l'épaisseur des traits en Mode tracé filaire" -#: pcbnew/pcbplot.cpp:193 +#: pcbnew/pcbplot.cpp:198 msgid "Absolute" msgstr "Absolu" -#: pcbnew/pcbplot.cpp:193 +#: pcbnew/pcbplot.cpp:198 msgid "Auxiliary axis" msgstr "Axe Auxiliaire" -#: pcbnew/pcbplot.cpp:195 +#: pcbnew/pcbplot.cpp:200 msgid "Plot Origin" msgstr "Origine des coord de tracé" -#: pcbnew/pcbplot.cpp:209 +#: pcbnew/pcbplot.cpp:214 #: pcbnew/xchgmod.cpp:137 #: share/zoom.cpp:448 msgid "Close" msgstr "Fermer" -#: pcbnew/pcbplot.cpp:213 +#: pcbnew/pcbplot.cpp:218 msgid "Save options" msgstr "Sauver options" -#: pcbnew/pcbplot.cpp:217 +#: pcbnew/pcbplot.cpp:222 msgid "Create Drill File" msgstr "Créer Fichier de percage" -#: pcbnew/pcbplot.cpp:228 +#: pcbnew/pcbplot.cpp:234 #: share/dialog_print.cpp:150 msgid "X Scale Adjust" msgstr "Ajustage Echelle X" -#: pcbnew/pcbplot.cpp:229 +#: pcbnew/pcbplot.cpp:235 #: share/wxprint.cpp:170 msgid "Set X scale adjust for exact scale plotting" msgstr "Ajuster échelle X pour traçage à l'échelle exacte" -#: pcbnew/pcbplot.cpp:230 +#: pcbnew/pcbplot.cpp:236 #: share/dialog_print.cpp:156 msgid "Y Scale Adjust" msgstr "Ajustage Echelle Y" -#: pcbnew/pcbplot.cpp:231 +#: pcbnew/pcbplot.cpp:237 #: share/wxprint.cpp:171 msgid "Set Y scale adjust for exact scale plotting" msgstr "Ajuster échelle Y pour traçage à l'échelle exacte" -#: pcbnew/pcbplot.cpp:233 +#: pcbnew/pcbplot.cpp:239 msgid "Plot Negative" msgstr "Tracé en Negatif" -#: pcbnew/pcbplot.cpp:257 -msgid "Exclude Edges Pcb layer" +#: pcbnew/pcbplot.cpp:264 +msgid "Exclude Edges Pcb Layer" msgstr "Exclure Couche Contours PCB" -#: pcbnew/pcbplot.cpp:260 +#: pcbnew/pcbplot.cpp:267 msgid "Exclude contents of Edges Pcb layer from all other layers" msgstr "Exclure les tracés contour PCB des autres couches" -#: pcbnew/pcbplot.cpp:266 +#: pcbnew/pcbplot.cpp:273 #: eeschema/plotps.cpp:191 #: share/svg_print.cpp:200 #: share/dialog_print.cpp:174 msgid "Print Sheet Ref" msgstr "Imprimer cartouche" -#: pcbnew/pcbplot.cpp:275 +#: pcbnew/pcbplot.cpp:282 msgid "Print Pads on Silkscreen" msgstr "Pads sur Sérigraphie" -#: pcbnew/pcbplot.cpp:278 +#: pcbnew/pcbplot.cpp:285 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:282 +#: pcbnew/pcbplot.cpp:289 msgid "Always Print Pads" msgstr "Toujour tracer pads" -#: pcbnew/pcbplot.cpp:284 +#: pcbnew/pcbplot.cpp:291 msgid "Force print/plot pads on ALL layers" msgstr "Force le tracé des pastilles sur TOUTES les couches" -#: pcbnew/pcbplot.cpp:288 +#: pcbnew/pcbplot.cpp:295 msgid "Print Module Value" msgstr "Imprimer Valeur Module" -#: pcbnew/pcbplot.cpp:291 +#: pcbnew/pcbplot.cpp:298 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:294 +#: pcbnew/pcbplot.cpp:301 msgid "Print Module Reference" msgstr "Imprimer Référence Module" -#: pcbnew/pcbplot.cpp:297 +#: pcbnew/pcbplot.cpp:304 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:301 +#: pcbnew/pcbplot.cpp:308 msgid "Print other Module texts" msgstr "Imprimer autres textes module" -#: pcbnew/pcbplot.cpp:304 +#: pcbnew/pcbplot.cpp:311 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:308 +#: pcbnew/pcbplot.cpp:315 msgid "Force Print Invisible Texts" msgstr "Force tracé textes invisibles" -#: pcbnew/pcbplot.cpp:311 +#: pcbnew/pcbplot.cpp:318 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:315 +#: pcbnew/pcbplot.cpp:322 msgid "No Drill mark" msgstr "Pas de marque" -#: pcbnew/pcbplot.cpp:315 +#: pcbnew/pcbplot.cpp:322 msgid "Small mark" msgstr "Petite marque" -#: pcbnew/pcbplot.cpp:315 +#: pcbnew/pcbplot.cpp:322 msgid "Real Drill" msgstr "Perçage réel" -#: pcbnew/pcbplot.cpp:317 +#: pcbnew/pcbplot.cpp:324 msgid "Pads Drill Opt" msgstr "Options perçage" -#: pcbnew/pcbplot.cpp:323 +#: pcbnew/pcbplot.cpp:330 msgid "Auto scale" msgstr "Ech. auto" -#: pcbnew/pcbplot.cpp:323 +#: pcbnew/pcbplot.cpp:330 msgid "Scale 1" msgstr "Echelle 1" -#: pcbnew/pcbplot.cpp:323 +#: pcbnew/pcbplot.cpp:330 msgid "Scale 1.5" msgstr "Echelle 1,5" -#: pcbnew/pcbplot.cpp:323 +#: pcbnew/pcbplot.cpp:330 #: share/dialog_print.cpp:142 msgid "Scale 2" msgstr "Echelle 2" -#: pcbnew/pcbplot.cpp:323 +#: pcbnew/pcbplot.cpp:330 #: share/dialog_print.cpp:143 msgid "Scale 3" msgstr "Echelle 3" -#: pcbnew/pcbplot.cpp:325 +#: pcbnew/pcbplot.cpp:332 msgid "Scale Opt" msgstr "Echelle" -#: pcbnew/pcbplot.cpp:330 +#: pcbnew/pcbplot.cpp:337 #: pcbnew/dialog_display_options.cpp:221 #: pcbnew/dialog_display_options.cpp:229 #: pcbnew/dialog_display_options.cpp:266 #: pcbnew/class_board_item.cpp:98 -#: pcbnew/dialog_zones_by_polygon.cpp:167 +#: pcbnew/dialog_zones_by_polygon.cpp:168 #: gerbview/options.cpp:321 msgid "Line" msgstr "Ligne" -#: pcbnew/pcbplot.cpp:330 +#: pcbnew/pcbplot.cpp:337 #: pcbnew/dialog_display_options.cpp:192 #: pcbnew/dialog_display_options.cpp:222 #: pcbnew/dialog_display_options.cpp:230 @@ -1194,7 +1235,7 @@ msgstr "Ligne" msgid "Filled" msgstr "Plein" -#: pcbnew/pcbplot.cpp:330 +#: pcbnew/pcbplot.cpp:337 #: pcbnew/dialog_display_options.cpp:191 #: pcbnew/dialog_display_options.cpp:223 #: pcbnew/dialog_display_options.cpp:231 @@ -1205,27 +1246,27 @@ msgstr "Plein" msgid "Sketch" msgstr "Contour" -#: pcbnew/pcbplot.cpp:331 +#: pcbnew/pcbplot.cpp:338 msgid "Plot Mode" msgstr "Mode de Tracé" -#: pcbnew/pcbplot.cpp:338 +#: pcbnew/pcbplot.cpp:345 msgid "Plot Mirror" msgstr "Tracé Miroir" -#: pcbnew/pcbplot.cpp:343 +#: pcbnew/pcbplot.cpp:350 msgid "Vias on Mask" msgstr "Vias sur masque" -#: pcbnew/pcbplot.cpp:346 +#: pcbnew/pcbplot.cpp:353 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:350 +#: pcbnew/pcbplot.cpp:357 msgid "Org = Centre" msgstr "Org = Centre" -#: pcbnew/pcbplot.cpp:352 +#: pcbnew/pcbplot.cpp:359 msgid "Draw origin ( 0,0 ) in sheet center" msgstr "Origine des tracés au centre de la feuille" @@ -1265,9 +1306,9 @@ msgid "Text" msgstr "Texte" #: pcbnew/class_text_mod.cpp:350 -#: pcbnew/class_pad.cpp:973 #: pcbnew/class_module.cpp:1243 #: pcbnew/class_edge_mod.cpp:285 +#: pcbnew/class_pad.cpp:881 #: cvpcb/setvisu.cpp:31 msgid "Module" msgstr "Module" @@ -1277,7 +1318,7 @@ msgstr "Module" #: pcbnew/class_track.cpp:776 #: pcbnew/class_drawsegment.cpp:159 #: pcbnew/class_zone.cpp:59 -#: pcbnew/class_zone.cpp:483 +#: pcbnew/class_zone.cpp:494 #: gerbview/affiche.cpp:93 msgid "Type" msgstr "Type" @@ -1326,14 +1367,14 @@ msgstr "Epaisseur" #: pcbnew/class_text_mod.cpp:389 #: pcbnew/class_pcb_text.cpp:194 -#: pcbnew/class_pad.cpp:1075 +#: pcbnew/class_pad.cpp:983 #: gerbview/affiche.cpp:55 msgid "H Size" msgstr "Taille H" #: pcbnew/class_text_mod.cpp:392 #: pcbnew/class_pcb_text.cpp:197 -#: pcbnew/class_pad.cpp:1079 +#: pcbnew/class_pad.cpp:987 #: gerbview/affiche.cpp:58 msgid "V Size" msgstr "Taille V" @@ -1689,7 +1730,7 @@ msgid "Print Module" msgstr "Imprimer Module" #: pcbnew/tool_modedit.cpp:115 -#: pcbnew/tool_pcb.cpp:269 +#: pcbnew/tool_pcb.cpp:268 #: eeschema/tool_sch.cpp:108 #: eeschema/tool_lib.cpp:170 #: gerbview/tool_gerber.cpp:271 @@ -1697,7 +1738,7 @@ msgid "zoom +" msgstr "zoom +" #: pcbnew/tool_modedit.cpp:119 -#: pcbnew/tool_pcb.cpp:273 +#: pcbnew/tool_pcb.cpp:272 #: eeschema/tool_sch.cpp:112 #: eeschema/tool_lib.cpp:174 #: gerbview/tool_gerber.cpp:278 @@ -1705,7 +1746,7 @@ msgid "zoom -" msgstr "zoom -" #: pcbnew/tool_modedit.cpp:123 -#: pcbnew/tool_pcb.cpp:277 +#: pcbnew/tool_pcb.cpp:276 #: eeschema/tool_sch.cpp:116 #: eeschema/tool_lib.cpp:178 #: gerbview/tool_gerber.cpp:285 @@ -1713,7 +1754,7 @@ msgid "redraw" msgstr "Redessin" #: pcbnew/tool_modedit.cpp:128 -#: pcbnew/tool_pcb.cpp:282 +#: pcbnew/tool_pcb.cpp:281 #: eeschema/tool_sch.cpp:121 #: eeschema/tool_lib.cpp:184 #: gerbview/tool_gerber.cpp:296 @@ -1737,36 +1778,28 @@ msgid "Add Pads" msgstr "Addition de \"pins\"" #: pcbnew/tool_modedit.cpp:168 -#: pcbnew/tool_pcb.cpp:433 +#: pcbnew/tool_pcb.cpp:434 #: eeschema/tool_sch.cpp:226 msgid "Add graphic line or polygon" msgstr "Addition de lignes ou polygones graphiques" #: pcbnew/tool_modedit.cpp:172 -#: pcbnew/tool_pcb.cpp:437 +#: pcbnew/tool_pcb.cpp:438 msgid "Add graphic circle" msgstr "Addition de graphiques (Cercle)" #: pcbnew/tool_modedit.cpp:176 -#: pcbnew/tool_pcb.cpp:441 +#: pcbnew/tool_pcb.cpp:442 msgid "Add graphic arc" msgstr "Addition de graphiques (Arc de Cercle)" -#: pcbnew/tool_modedit.cpp:180 -#: pcbnew/edit.cpp:288 -#: eeschema/schedit.cpp:315 -#: eeschema/libframe.cpp:503 -#: gerbview/tool_gerber.cpp:385 -msgid "Add Text" -msgstr "Ajout de Texte" - #: pcbnew/tool_modedit.cpp:185 #: pcbnew/modedit.cpp:410 msgid "Place anchor" msgstr "Place Ancre" #: pcbnew/tool_modedit.cpp:190 -#: pcbnew/tool_pcb.cpp:459 +#: pcbnew/tool_pcb.cpp:460 #: eeschema/tool_sch.cpp:235 #: eeschema/tool_lib.cpp:93 #: gerbview/tool_gerber.cpp:393 @@ -1774,41 +1807,41 @@ msgid "Delete items" msgstr "Suppression d'éléments" #: pcbnew/tool_modedit.cpp:212 -#: pcbnew/tool_pcb.cpp:333 +#: pcbnew/tool_pcb.cpp:334 #: eeschema/tool_sch.cpp:257 #: gerbview/tool_gerber.cpp:417 msgid "Display Grid OFF" msgstr "Suppression de l'affichage de la grille" #: pcbnew/tool_modedit.cpp:216 -#: pcbnew/tool_pcb.cpp:336 +#: pcbnew/tool_pcb.cpp:337 #: gerbview/tool_gerber.cpp:423 msgid "Display Polar Coord ON" msgstr "Activer affichage coord Polaires" #: pcbnew/tool_modedit.cpp:220 -#: pcbnew/tool_pcb.cpp:338 +#: pcbnew/tool_pcb.cpp:339 #: eeschema/tool_sch.cpp:261 #: gerbview/tool_gerber.cpp:427 msgid "Units = Inch" msgstr "Unités = pouce" #: pcbnew/tool_modedit.cpp:224 -#: pcbnew/tool_pcb.cpp:340 +#: pcbnew/tool_pcb.cpp:341 #: eeschema/tool_sch.cpp:265 #: gerbview/tool_gerber.cpp:431 msgid "Units = mm" msgstr "Unités = mm" #: pcbnew/tool_modedit.cpp:230 -#: pcbnew/tool_pcb.cpp:343 +#: pcbnew/tool_pcb.cpp:344 #: eeschema/tool_sch.cpp:269 #: gerbview/tool_gerber.cpp:437 msgid "Change Cursor Shape" msgstr "Sélection de la forme du curseur" #: pcbnew/tool_modedit.cpp:238 -#: pcbnew/tool_pcb.cpp:365 +#: pcbnew/tool_pcb.cpp:366 msgid "Show Pads Sketch" msgstr "Afficher pastilles en contour" @@ -1821,7 +1854,7 @@ msgid "Show Edges Sketch" msgstr "Afficher Modules en contour" #: pcbnew/tool_modedit.cpp:285 -#: pcbnew/tool_pcb.cpp:566 +#: pcbnew/tool_pcb.cpp:580 #: eeschema/plotps.cpp:169 #: share/zoom.cpp:367 msgid "Auto" @@ -1843,48 +1876,48 @@ msgid "Grid %.3f" msgstr "Grille %.3f" #: pcbnew/tool_modedit.cpp:314 -#: pcbnew/tool_pcb.cpp:600 +#: pcbnew/tool_pcb.cpp:614 msgid "User Grid" msgstr "Grille perso" -#: pcbnew/gendrill.cpp:298 +#: pcbnew/gendrill.cpp:308 msgid "Drill file" msgstr "Fichier de percage" -#: pcbnew/gendrill.cpp:316 -#: pcbnew/gendrill.cpp:779 +#: pcbnew/gendrill.cpp:323 +#: pcbnew/gendrill.cpp:789 #: pcbnew/plotps.cpp:51 #: pcbnew/xchgmod.cpp:642 msgid "Unable to create file " msgstr "Impossible de créer le fichier " -#: pcbnew/gendrill.cpp:368 +#: pcbnew/gendrill.cpp:378 #: pcbnew/dialog_gendrill.cpp:180 msgid "2:3" msgstr "2:3" -#: pcbnew/gendrill.cpp:369 +#: pcbnew/gendrill.cpp:379 #: pcbnew/dialog_gendrill.cpp:181 msgid "2:4" msgstr "2:4" -#: pcbnew/gendrill.cpp:374 +#: pcbnew/gendrill.cpp:384 msgid "3:2" msgstr "3:2" -#: pcbnew/gendrill.cpp:375 +#: pcbnew/gendrill.cpp:385 msgid "3:3" msgstr "3:3" -#: pcbnew/gendrill.cpp:718 +#: pcbnew/gendrill.cpp:728 msgid "Drill Map file" msgstr "Fichier Plan de perçage" -#: pcbnew/gendrill.cpp:733 +#: pcbnew/gendrill.cpp:743 msgid "Unable to create file" msgstr "Impossible de créer le fichier " -#: pcbnew/gendrill.cpp:764 +#: pcbnew/gendrill.cpp:774 msgid "Drill Report file" msgstr "Fichier rapport de perçage:" @@ -1928,9 +1961,28 @@ msgstr "Valeur incorrecte pour offset du pad" msgid "Unknown netname, no change" msgstr "Net inconnu, pas de changement" -#: pcbnew/export_gencad.cpp:69 -msgid "GenCAD file:" -msgstr "Fichier GenCAD:" +#: pcbnew/specctra.cpp:92 +#: pcbnew/specctra.cpp:99 +msgid "Expecting" +msgstr "Attendu" + +#: pcbnew/specctra.cpp:106 +#: pcbnew/specctra.cpp:113 +msgid "Unexpected" +msgstr "Inattendu" + +#: pcbnew/specctra.cpp:272 +#: pcbnew/specctra.cpp:302 +#: pcbnew/specctra.cpp:3395 +#: pcbnew/specctra.cpp:3420 +#, c-format +msgid "Unable to open file \"%s\"" +msgstr "Ne peut pas ouvrirle fichier \"%s\"" + +#: pcbnew/specctra.cpp:3348 +#, c-format +msgid "System file error writing to file \"%s\"" +msgstr "Erreur système sur écriture fichier \"%s\"" #: pcbnew/class_pcb_text.cpp:173 #: gerbview/affiche.cpp:29 @@ -1942,10 +1994,6 @@ msgstr "COTATION" msgid "PCB Text" msgstr "Texte Pcb" -#: pcbnew/ioascii.cpp:167 -msgid "Error: Unexpected end of file !" -msgstr "Erreur: Fin de fichier inattendue !" - #: pcbnew/dialog_netlist.cpp:135 #: pcbnew/class_board_item.cpp:75 #: eeschema/onrightclick.cpp:320 @@ -1969,9 +2017,9 @@ msgid "Keep" msgstr "Garder" #: pcbnew/dialog_netlist.cpp:143 -#: pcbnew/onrightclick.cpp:599 -#: pcbnew/onrightclick.cpp:772 -#: pcbnew/onrightclick.cpp:869 +#: pcbnew/onrightclick.cpp:612 +#: pcbnew/onrightclick.cpp:785 +#: pcbnew/onrightclick.cpp:882 #: eeschema/edit_component_in_lib.cpp:239 #: eeschema/edit_component_in_lib.cpp:320 msgid "Delete" @@ -2102,37 +2150,59 @@ msgstr "Invisible" msgid "Value:" msgstr "Valeur:" -#: pcbnew/class_pad.cpp:801 -#: pcbnew/class_pad.cpp:887 -msgid "Unknown Pad shape" -msgstr "Forme pad inconnue" +#: pcbnew/initpcb.cpp:125 +msgid "Current Board will be lost ?" +msgstr "Le C.I. courant sera perdu ?" -#: pcbnew/class_pad.cpp:976 -msgid "RefP" -msgstr "RefP" +#: pcbnew/initpcb.cpp:215 +msgid "Delete Zones ?" +msgstr "Effacer Zones ?" -#: pcbnew/class_pad.cpp:979 -#: pcbnew/class_board_item.cpp:35 -msgid "Net" -msgstr "Net" +#: pcbnew/initpcb.cpp:243 +msgid "Delete Board edges ?" +msgstr "Effacement contour PCB" -#: pcbnew/class_pad.cpp:1085 -#: pcbnew/class_track.cpp:847 -#: pcbnew/class_track.cpp:852 -msgid "Drill" -msgstr "Perçage" +#: pcbnew/initpcb.cpp:248 +msgid "Delete draw items?" +msgstr "Suppression éléments graphiques?" -#: pcbnew/class_pad.cpp:1093 -msgid "Drill X / Y" -msgstr "Perçage X/Y" +#: pcbnew/initpcb.cpp:290 +#: gerbview/initpcb.cpp:150 +msgid "Delete Tracks?" +msgstr "Effacer Pistes ?" -#: pcbnew/class_pad.cpp:1108 -msgid "X Pos" -msgstr "X Pos" +#: pcbnew/initpcb.cpp:313 +msgid "Delete Modules?" +msgstr "Effacement des Modules?" -#: pcbnew/class_pad.cpp:1112 -msgid "Y pos" -msgstr "Y pos" +#: pcbnew/initpcb.cpp:336 +#: gerbview/initpcb.cpp:173 +msgid "Delete Pcb Texts" +msgstr "Effacer Textes Pcb" + +#: pcbnew/dsn.cpp:501 +msgid "Line length exceeded" +msgstr "Longueur de ligne dépassée" + +#: pcbnew/dsn.cpp:615 +msgid "in file" +msgstr "dans le fichier" + +#: pcbnew/dsn.cpp:616 +msgid "on line" +msgstr "en ligne" + +#: pcbnew/dsn.cpp:617 +msgid "at offset" +msgstr "a l'offset" + +#: pcbnew/dsn.cpp:665 +msgid "String delimiter must be a single character of ', \", or $" +msgstr "Le caractère de délimitation de ligne doit être un seul caractère ', \", or $" + +#: pcbnew/dsn.cpp:755 +msgid "Un-terminated delimited string" +msgstr "Ligne délimitée non terminée" #: pcbnew/modedit.cpp:77 #: pcbnew/controle.cpp:172 @@ -2172,15 +2242,8 @@ msgstr "Ajouter Pastilles" msgid "Add Drawing" msgstr "Ajout d'éléments graphiques" -#: pcbnew/modedit.cpp:424 -#: pcbnew/edit.cpp:540 -#: eeschema/schedit.cpp:455 -#: eeschema/libframe.cpp:579 -msgid "Delete item" -msgstr "Suppression d'éléments" - #: pcbnew/modedit_onclick.cpp:207 -#: pcbnew/onrightclick.cpp:150 +#: pcbnew/onrightclick.cpp:162 #: eeschema/onrightclick.cpp:126 #: eeschema/libedit_onrightclick.cpp:53 #: gerbview/onrightclick.cpp:42 @@ -2188,7 +2251,7 @@ msgid "End Tool" msgstr "Fin Outil" #: pcbnew/modedit_onclick.cpp:217 -#: pcbnew/onrightclick.cpp:473 +#: pcbnew/onrightclick.cpp:486 #: eeschema/onrightclick.cpp:587 #: eeschema/libedit_onrightclick.cpp:237 #: gerbview/onrightclick.cpp:51 @@ -2196,13 +2259,13 @@ msgid "Cancel Block" msgstr "Annuler Bloc" #: pcbnew/modedit_onclick.cpp:219 -#: pcbnew/onrightclick.cpp:475 +#: pcbnew/onrightclick.cpp:488 #: gerbview/onrightclick.cpp:52 msgid "Zoom Block (Midd butt drag)" msgstr "Zoom Bloc (drag+bouton milieu)" #: pcbnew/modedit_onclick.cpp:222 -#: pcbnew/onrightclick.cpp:478 +#: pcbnew/onrightclick.cpp:491 #: eeschema/onrightclick.cpp:595 #: eeschema/libedit_onrightclick.cpp:245 #: gerbview/onrightclick.cpp:54 @@ -2210,7 +2273,7 @@ msgid "Place Block" msgstr "Place Bloc" #: pcbnew/modedit_onclick.cpp:224 -#: pcbnew/onrightclick.cpp:480 +#: pcbnew/onrightclick.cpp:493 #: eeschema/onrightclick.cpp:604 #: eeschema/libedit_onrightclick.cpp:251 msgid "Copy Block (shift + drag mouse)" @@ -2221,18 +2284,18 @@ msgid "Mirror Block (alt + drag mouse)" msgstr "Bloc Miroir (alt + drag mouse)" #: pcbnew/modedit_onclick.cpp:228 -#: pcbnew/onrightclick.cpp:484 +#: pcbnew/onrightclick.cpp:497 msgid "Rotate Block (ctrl + drag mouse)" msgstr "Rotation Bloc (ctrl + drag mouse)" #: pcbnew/modedit_onclick.cpp:230 -#: pcbnew/onrightclick.cpp:486 +#: pcbnew/onrightclick.cpp:499 msgid "Delete Block (shift+ctrl + drag mouse)" msgstr "Effacement Bloc (shift+ctrl + drag mouse)" #: pcbnew/modedit_onclick.cpp:252 -#: pcbnew/onrightclick.cpp:766 -#: pcbnew/onrightclick.cpp:863 +#: pcbnew/onrightclick.cpp:779 +#: pcbnew/onrightclick.cpp:876 msgid "Rotate" msgstr "Rotation" @@ -2257,17 +2320,17 @@ msgid "Move Pad" msgstr "Déplace Pad" #: pcbnew/modedit_onclick.cpp:274 -#: pcbnew/onrightclick.cpp:805 +#: pcbnew/onrightclick.cpp:818 msgid "Edit Pad" msgstr "Edit Pad" #: pcbnew/modedit_onclick.cpp:276 -#: pcbnew/onrightclick.cpp:809 +#: pcbnew/onrightclick.cpp:822 msgid "New Pad Settings" msgstr "Nouvelles Caract. Pads" #: pcbnew/modedit_onclick.cpp:278 -#: pcbnew/onrightclick.cpp:811 +#: pcbnew/onrightclick.cpp:824 msgid "Export Pad Settings" msgstr "Exporte Caract. Pads" @@ -2276,7 +2339,7 @@ msgid "delete Pad" msgstr "Supprimer Pad" #: pcbnew/modedit_onclick.cpp:285 -#: pcbnew/onrightclick.cpp:816 +#: pcbnew/onrightclick.cpp:829 msgid "Global Pad Settings" msgstr "Edition Globale des pads" @@ -2309,9 +2372,9 @@ msgid "Place edge" msgstr "Place contour" #: pcbnew/modedit_onclick.cpp:317 -#: pcbnew/onrightclick.cpp:734 -#: pcbnew/onrightclick.cpp:768 -#: pcbnew/onrightclick.cpp:865 +#: pcbnew/onrightclick.cpp:747 +#: pcbnew/onrightclick.cpp:781 +#: pcbnew/onrightclick.cpp:878 #: eeschema/onrightclick.cpp:313 msgid "Edit" msgstr "Editer" @@ -2348,7 +2411,7 @@ msgstr "Fichier" #: pcbnew/plotps.cpp:361 #: pcbnew/affiche.cpp:63 -#: pcbnew/class_board.cpp:412 +#: pcbnew/class_board.cpp:424 msgid "Vias" msgstr "Vias" @@ -2377,73 +2440,421 @@ msgstr "Pistes sur couches cuivre seulement" msgid "Cotation not authorized on Copper layers" msgstr "Cotation non autorisée sur Couches Cuivre" -#: pcbnew/dialog_track_options.cpp:134 -msgid "Vias:" -msgstr "Vias:" +#: pcbnew/onrightclick.cpp:76 +msgid "Auto Width" +msgstr "Epaisseur Automatique" -#: pcbnew/dialog_track_options.cpp:138 -msgid "Via Size" -msgstr "Diametre Via" +#: pcbnew/onrightclick.cpp:78 +msgid "Use the track width when starting on a track, otherwise the current track width" +msgstr "Ssi on démarre sur une piste existante, utiliser sa largeur, sinon utiliserlal largeur courante" -#: pcbnew/dialog_track_options.cpp:144 -msgid "Default Via Drill" -msgstr "Perçage vias par défaut" +#: pcbnew/onrightclick.cpp:92 +#, c-format +msgid "Track %.1f" +msgstr "Piste %.1f" -#: pcbnew/dialog_track_options.cpp:150 -msgid "Alternate Via Drill" -msgstr "Perçage vias alternatif" +#: pcbnew/onrightclick.cpp:94 +#, c-format +msgid "Track %.3f" +msgstr "Piste %.3f" -#: pcbnew/dialog_track_options.cpp:157 -#: pcbnew/pcbnew.h:291 -msgid "Through Via" -msgstr "Via Traversante" +#: pcbnew/onrightclick.cpp:112 +#, c-format +msgid "Via %.1f" +msgstr "Via %.1f" -#: pcbnew/dialog_track_options.cpp:158 -msgid "Blind or Buried Via " -msgstr "Via enterrée ou Aveugle" +#: pcbnew/onrightclick.cpp:114 +#, c-format +msgid "Via %.3f" +msgstr "Via %.3f" -#: pcbnew/dialog_track_options.cpp:159 -msgid "Default Via Type" -msgstr "Via par Défaut" +#: pcbnew/onrightclick.cpp:230 +msgid "Lock Module" +msgstr "Verrouiller Modules" -#: pcbnew/dialog_track_options.cpp:163 -#: pcbnew/dialog_gendrill.cpp:270 -msgid "Micro Vias:" -msgstr "Micro Vias:" +#: pcbnew/onrightclick.cpp:238 +msgid "Unlock Module" +msgstr "Déverrouiller Modules" -#: pcbnew/dialog_track_options.cpp:167 -msgid "Micro Via Size" -msgstr "Diametre Micro Via" +#: pcbnew/onrightclick.cpp:246 +msgid "Auto place Module" +msgstr "Auto place Module" -#: pcbnew/dialog_track_options.cpp:173 -msgid "Micro Via Drill" -msgstr "Perçage Micro Via" +#: pcbnew/onrightclick.cpp:252 +msgid "Autoroute" +msgstr "Autoroute" -#: pcbnew/dialog_track_options.cpp:181 -msgid "Allows Micro Vias" -msgstr "Autorise Micro Vias" +#: pcbnew/onrightclick.cpp:268 +msgid "Move Drawing" +msgstr "Déplace Tracé" -#: pcbnew/dialog_track_options.cpp:183 -#: pcbnew/dialog_track_options.cpp:185 -msgid "" -"Allows use of micro vias\n" -"They are very small vias only from an external copper layer to its near neightbour\n" -msgstr "" -"Autorise l'utilisation de micro vias\n" -"Ce sont de petites vias allant d'une couche externe a la plus proche couche interne uniquement\n" +#: pcbnew/onrightclick.cpp:273 +msgid "End Drawing" +msgstr "Fin tracé" -#: pcbnew/dialog_track_options.cpp:191 -msgid "Track Width" -msgstr "Epais. Piste" +#: pcbnew/onrightclick.cpp:275 +msgid "Edit Drawing" +msgstr "Edit Tracé" -#: pcbnew/dialog_track_options.cpp:197 -#: pcbnew/dialog_drc.cpp:439 -msgid "Clearance" -msgstr "Isolation" +#: pcbnew/onrightclick.cpp:276 +msgid "Delete Drawing" +msgstr "Supprimer Tracé" -#: pcbnew/dialog_track_options.cpp:203 -msgid "Mask clearance" -msgstr "Retrait Masque" +#: pcbnew/onrightclick.cpp:281 +msgid "Delete Zone" +msgstr "Supprimer Zone" + +#: pcbnew/onrightclick.cpp:288 +msgid "End edge zone" +msgstr "Fin contour Zone" + +#: pcbnew/onrightclick.cpp:291 +msgid "Delete Current Edge" +msgstr "Effacer Contour Zone Courant" + +#: pcbnew/onrightclick.cpp:310 +msgid "Delete Marker" +msgstr "Effacer Marqueur" + +#: pcbnew/onrightclick.cpp:317 +msgid "Edit Dimension" +msgstr "Edit Cote" + +#: pcbnew/onrightclick.cpp:320 +msgid "Delete Dimension" +msgstr "Suppression Cote" + +#: pcbnew/onrightclick.cpp:327 +msgid "Move Target" +msgstr "Déplacer Mire" + +#: pcbnew/onrightclick.cpp:330 +msgid "Edit Target" +msgstr "Editer Mire" + +#: pcbnew/onrightclick.cpp:332 +msgid "Delete Target" +msgstr "Supprimer Mire" + +#: pcbnew/onrightclick.cpp:364 +msgid "Get and Move Footprint" +msgstr "Sel et Dépl.t module" + +#: pcbnew/onrightclick.cpp:378 +msgid "Fill or Refill All Zones" +msgstr "Remplir ou Re-remplir Toutes les Zones" + +#: pcbnew/onrightclick.cpp:383 +#: pcbnew/onrightclick.cpp:394 +#: pcbnew/onrightclick.cpp:407 +#: pcbnew/onrightclick.cpp:468 +msgid "Select Working Layer" +msgstr "Sélection de la couche de travail" + +#: pcbnew/onrightclick.cpp:392 +#: pcbnew/onrightclick.cpp:465 +#: pcbnew/onrightclick.cpp:593 +msgid "Select Track Width" +msgstr "Sélection Epais. Piste" + +#: pcbnew/onrightclick.cpp:396 +msgid "Select layer pair for vias" +msgstr "Selection couple de couches pour Vias" + +#: pcbnew/onrightclick.cpp:413 +msgid "Footprint documentation" +msgstr "Documentation des modules" + +#: pcbnew/onrightclick.cpp:423 +msgid "Glob Move and Place" +msgstr "Move et Place Globaux" + +#: pcbnew/onrightclick.cpp:425 +msgid "Unlock All Modules" +msgstr "Déverrouiller tous les Modules" + +#: pcbnew/onrightclick.cpp:427 +msgid "Lock All Modules" +msgstr "Verrouiller tous les Modules" + +#: pcbnew/onrightclick.cpp:430 +msgid "Move All Modules" +msgstr "Déplace tous les Modules" + +#: pcbnew/onrightclick.cpp:431 +msgid "Move New Modules" +msgstr "Déplace nouveaux Modules" + +#: pcbnew/onrightclick.cpp:433 +msgid "Autoplace All Modules" +msgstr "Autoplace Tous Modules" + +#: pcbnew/onrightclick.cpp:434 +msgid "Autoplace New Modules" +msgstr "AutoPlace nouveaux Modules" + +#: pcbnew/onrightclick.cpp:435 +msgid "Autoplace Next Module" +msgstr "Autoplace Module suivant" + +#: pcbnew/onrightclick.cpp:438 +msgid "Orient All Modules" +msgstr "Oriente Tous Modules" + +#: pcbnew/onrightclick.cpp:445 +msgid "Global Autoroute" +msgstr "Autoroutage global" + +#: pcbnew/onrightclick.cpp:447 +msgid "Select layer pair" +msgstr "Selection couple de couches" + +#: pcbnew/onrightclick.cpp:449 +msgid "Autoroute All Modules" +msgstr "Autoroute Tous Modules" + +#: pcbnew/onrightclick.cpp:451 +msgid "Reset Unrouted" +msgstr "Réinit Non routés" + +#: pcbnew/onrightclick.cpp:456 +msgid "Global AutoRouter" +msgstr "Autorouteur Global" + +#: pcbnew/onrightclick.cpp:458 +msgid "Read Global AutoRouter Data" +msgstr "Lire Données de L'autorouteur global" + +#: pcbnew/onrightclick.cpp:495 +msgid "Flip Block (alt + drag mouse)" +msgstr "Inversion Bloc (alt + drag mouse)" + +#: pcbnew/onrightclick.cpp:518 +msgid "Drag Via" +msgstr "Drag Via" + +#: pcbnew/onrightclick.cpp:522 +msgid "Edit Via" +msgstr "Edit Via" + +#: pcbnew/onrightclick.cpp:524 +msgid "Set via hole to Default" +msgstr "Ajuste perçage via à défaut" + +#: pcbnew/onrightclick.cpp:526 +msgid "Set via hole to alt value" +msgstr "Ajuste perçage via à valeur alternative" + +#: pcbnew/onrightclick.cpp:528 +msgid "Set the via hole alt value" +msgstr "Ajuste la valeur alt. perçage via" + +#: pcbnew/onrightclick.cpp:530 +msgid "Export Via hole to alt value" +msgstr "Exporte perçage via à valeur alt." + +#: pcbnew/onrightclick.cpp:532 +msgid "Export via hole to others id vias" +msgstr "Exporte perçage via aux autres semblables." + +#: pcbnew/onrightclick.cpp:534 +msgid "Set ALL via holes to default" +msgstr "Ajuste perçage TOUTES vias au défaut" + +#: pcbnew/onrightclick.cpp:547 +msgid "Move Node" +msgstr "Déplace Noeud" + +#: pcbnew/onrightclick.cpp:552 +msgid "Drag Segments, keep slope" +msgstr "Drag Segments, garder direction" + +#: pcbnew/onrightclick.cpp:554 +msgid "Drag Segment" +msgstr "Drag Segment" + +#: pcbnew/onrightclick.cpp:557 +msgid "Move Segment" +msgstr "Déplace Segment" + +#: pcbnew/onrightclick.cpp:560 +msgid "Break Track" +msgstr "Briser piste" + +#: pcbnew/onrightclick.cpp:567 +msgid "Place Node" +msgstr "Place noeud" + +#: pcbnew/onrightclick.cpp:574 +msgid "End Track" +msgstr "Terminer Piste" + +#: pcbnew/onrightclick.cpp:577 +msgid "Place Via" +msgstr "Place Via" + +#: pcbnew/onrightclick.cpp:584 +msgid "Place Micro Via" +msgstr "Place Micro Via" + +#: pcbnew/onrightclick.cpp:598 +msgid "Edit Track" +msgstr "Editer Piste" + +#: pcbnew/onrightclick.cpp:600 +msgid "Edit Net" +msgstr "Edit Net" + +#: pcbnew/onrightclick.cpp:602 +msgid "Edit ALL Tracks and Vias" +msgstr "Editer TOUTES Pistes et Vias" + +#: pcbnew/onrightclick.cpp:604 +msgid "Edit ALL Vias (no track)" +msgstr "Editer TOUTES Vias (pas les pistes)" + +#: pcbnew/onrightclick.cpp:606 +msgid "Edit ALL Tracks (no via)" +msgstr "Editer TOUTES Pistes (pas les vias)" + +#: pcbnew/onrightclick.cpp:614 +msgid "Delete Via" +msgstr "Suppression Via" + +#: pcbnew/onrightclick.cpp:614 +msgid "Delete Segment" +msgstr "SupprimerSegment" + +#: pcbnew/onrightclick.cpp:621 +msgid "Delete Track" +msgstr "Effacer Piste" + +#: pcbnew/onrightclick.cpp:625 +msgid "Delete Net" +msgstr "Supprimer Net" + +#: pcbnew/onrightclick.cpp:630 +msgid "Set Flags" +msgstr "Ajust. Flags" + +#: pcbnew/onrightclick.cpp:631 +msgid "Locked: Yes" +msgstr "Verrou: Oui" + +#: pcbnew/onrightclick.cpp:632 +msgid "Locked: No" +msgstr "Verrou: Non" + +#: pcbnew/onrightclick.cpp:642 +msgid "Track Locked: Yes" +msgstr "Piste verrouillée: Oui" + +#: pcbnew/onrightclick.cpp:643 +msgid "Track Locked: No" +msgstr "Piste verrouillée: Non" + +#: pcbnew/onrightclick.cpp:645 +msgid "Net Locked: Yes" +msgstr "Net verrouillé: Oui" + +#: pcbnew/onrightclick.cpp:646 +msgid "Net Locked: No" +msgstr "Net verrouillé: Non" + +#: pcbnew/onrightclick.cpp:662 +msgid "Place Corner" +msgstr "Place Sommet" + +#: pcbnew/onrightclick.cpp:665 +msgid "Place Zone" +msgstr "Place Zone" + +#: pcbnew/onrightclick.cpp:671 +#: pcbnew/dialog_drc.cpp:477 +msgid "Zones" +msgstr "Zones" + +#: pcbnew/onrightclick.cpp:676 +msgid "Move Corner" +msgstr "Déplace Sommet" + +#: pcbnew/onrightclick.cpp:678 +msgid "Delete Corner" +msgstr "Supprimer Sommet" + +#: pcbnew/onrightclick.cpp:683 +msgid "Create Corner" +msgstr "Créer Sommet" + +#: pcbnew/onrightclick.cpp:688 +msgid "Add Similar Zone" +msgstr "Addition d'une Zone Semblable" + +#: pcbnew/onrightclick.cpp:691 +msgid "Add Cutout Area" +msgstr "Addition d'une Zone Interdite" + +#: pcbnew/onrightclick.cpp:695 +msgid "Fill Zone" +msgstr "Remplir Zone" + +#: pcbnew/onrightclick.cpp:698 +msgid "Move Zone" +msgstr "Déplace Zone" + +#: pcbnew/onrightclick.cpp:701 +msgid "Edit Zone Params" +msgstr "Editer Paramètres de la Zone" + +#: pcbnew/onrightclick.cpp:706 +msgid "Delete Cutout" +msgstr "Supprimer Zone Interdite" + +#: pcbnew/onrightclick.cpp:709 +msgid "Delete Zone Outline" +msgstr "Supprimer Contour de Zone" + +#: pcbnew/onrightclick.cpp:731 +#: pcbnew/onrightclick.cpp:776 +#: pcbnew/onrightclick.cpp:814 +#: pcbnew/onrightclick.cpp:873 +msgid "Move" +msgstr "Move" + +#: pcbnew/onrightclick.cpp:734 +#: pcbnew/onrightclick.cpp:816 +msgid "Drag" +msgstr "Drag" + +#: pcbnew/onrightclick.cpp:738 +msgid "Rotate +" +msgstr "Rotation +" + +#: pcbnew/onrightclick.cpp:742 +#: eeschema/onrightclick.cpp:301 +msgid "Rotate -" +msgstr "Rotation -" + +#: pcbnew/onrightclick.cpp:743 +msgid "Flip" +msgstr "Change côté" + +#: pcbnew/onrightclick.cpp:753 +#: pcbnew/modules.cpp:281 +msgid "Delete Module" +msgstr "Supprimer Module" + +#: pcbnew/onrightclick.cpp:833 +msgid "delete" +msgstr "Effacer" + +#: pcbnew/onrightclick.cpp:840 +msgid "Autoroute Pad" +msgstr "Autoroute Pad" + +#: pcbnew/onrightclick.cpp:841 +msgid "Autoroute Net" +msgstr "Autoroute Net" #: pcbnew/dialog_display_options.cpp:186 msgid "Tracks and vias" @@ -2613,474 +3024,118 @@ msgstr "Nombre incorrect, pas de changement" msgid "Footprint name:" msgstr "Nom Module: " -#: pcbnew/modules.cpp:281 -#: pcbnew/onrightclick.cpp:740 -msgid "Delete Module" -msgstr "Supprimer Module" - #: pcbnew/modules.cpp:282 #: eeschema/onrightclick.cpp:317 #: eeschema/find.cpp:229 msgid "Value " msgstr "Valeur " -#: pcbnew/dsn.cpp:489 -msgid "Line length exceeded" -msgstr "Longueur de ligne dépassée" - -#: pcbnew/dsn.cpp:603 -msgid "in file" -msgstr "dans le fichier" - -#: pcbnew/dsn.cpp:604 -msgid "on line" -msgstr "en ligne" - -#: pcbnew/dsn.cpp:605 -msgid "at offset" -msgstr "a l'offset" - -#: pcbnew/dsn.cpp:653 -msgid "String delimiter must be a single character of ', \", or $" -msgstr "Le caractère de délimitation de ligne doit être un seul caractère ', \", or $" - -#: pcbnew/dsn.cpp:743 -msgid "Un-terminated delimited string" -msgstr "Ligne délimitée non terminée" - -#: pcbnew/specctra.cpp:93 -#: pcbnew/specctra.cpp:100 -msgid "Expecting" -msgstr "Attendu" - -#: pcbnew/specctra.cpp:107 -#: pcbnew/specctra.cpp:114 -msgid "Unexpected" -msgstr "Inattendu" - -#: pcbnew/specctra.cpp:274 -#: pcbnew/specctra.cpp:304 -#: pcbnew/specctra.cpp:3335 -#: pcbnew/specctra.cpp:3352 -#, c-format -msgid "Unable to open file \"%s\"" -msgstr "Ne peut pas ouvrirle fichier \"%s\"" - -#: pcbnew/specctra.cpp:3288 -#, c-format -msgid "System file error writing to file \"%s\"" -msgstr "Erreur système sur écriture fichier \"%s\"" - -#: pcbnew/onrightclick.cpp:82 -#, c-format -msgid "Track %.1f" -msgstr "Piste %.1f" - -#: pcbnew/onrightclick.cpp:84 -#, c-format -msgid "Track %.3f" -msgstr "Piste %.3f" - -#: pcbnew/onrightclick.cpp:100 -#, c-format -msgid "Via %.1f" -msgstr "Via %.1f" - -#: pcbnew/onrightclick.cpp:102 -#, c-format -msgid "Via %.3f" -msgstr "Via %.3f" - -#: pcbnew/onrightclick.cpp:218 -msgid "Lock Module" -msgstr "Verrouiller Modules" - -#: pcbnew/onrightclick.cpp:226 -msgid "Unlock Module" -msgstr "Déverrouiller Modules" - -#: pcbnew/onrightclick.cpp:234 -msgid "Auto place Module" -msgstr "Auto place Module" - -#: pcbnew/onrightclick.cpp:240 -msgid "Autoroute" -msgstr "Autoroute" - -#: pcbnew/onrightclick.cpp:256 -msgid "Move Drawing" -msgstr "Déplace Tracé" - -#: pcbnew/onrightclick.cpp:261 -msgid "End Drawing" -msgstr "Fin tracé" - -#: pcbnew/onrightclick.cpp:263 -msgid "Edit Drawing" -msgstr "Edit Tracé" - -#: pcbnew/onrightclick.cpp:264 -msgid "Delete Drawing" -msgstr "Supprimer Tracé" - -#: pcbnew/onrightclick.cpp:269 -msgid "Delete Zone" -msgstr "Supprimer Zone" - -#: pcbnew/onrightclick.cpp:276 -msgid "End edge zone" -msgstr "Fin contour Zone" - -#: pcbnew/onrightclick.cpp:279 -msgid "Delete Current Edge" -msgstr "Effacer Contour Zone Courant" - -#: pcbnew/onrightclick.cpp:298 -msgid "Delete Marker" -msgstr "Effacer Marqueur" - -#: pcbnew/onrightclick.cpp:305 -msgid "Edit Dimension" -msgstr "Edit Cote" - -#: pcbnew/onrightclick.cpp:308 -msgid "Delete Dimension" -msgstr "Suppression Cote" - -#: pcbnew/onrightclick.cpp:315 -msgid "Move Target" -msgstr "Déplacer Mire" - -#: pcbnew/onrightclick.cpp:318 -msgid "Edit Target" -msgstr "Editer Mire" - -#: pcbnew/onrightclick.cpp:320 -msgid "Delete Target" -msgstr "Supprimer Mire" - -#: pcbnew/onrightclick.cpp:351 -msgid "Get and Move Footprint" -msgstr "Sel et Dépl.t module" - -#: pcbnew/onrightclick.cpp:365 -msgid "Fill or Refill All Zones" -msgstr "Remplir ou Re-remplir Toutes les Zones" - -#: pcbnew/onrightclick.cpp:370 -#: pcbnew/onrightclick.cpp:381 -#: pcbnew/onrightclick.cpp:394 -#: pcbnew/onrightclick.cpp:455 -msgid "Select Working Layer" -msgstr "Sélection de la couche de travail" - -#: pcbnew/onrightclick.cpp:379 -#: pcbnew/onrightclick.cpp:452 -msgid "Select Track Width" -msgstr "Sélection Epais. Piste" - -#: pcbnew/onrightclick.cpp:383 -msgid "Select layer pair for vias" -msgstr "Selection couple de couches pour Vias" - -#: pcbnew/onrightclick.cpp:400 -msgid "Footprint documentation" -msgstr "Documentation des modules" - -#: pcbnew/onrightclick.cpp:410 -msgid "Glob Move and Place" -msgstr "Move et Place Globaux" - -#: pcbnew/onrightclick.cpp:412 -msgid "Unlock All Modules" -msgstr "Déverrouiller tous les Modules" - -#: pcbnew/onrightclick.cpp:414 -msgid "Lock All Modules" -msgstr "Verrouiller tous les Modules" - -#: pcbnew/onrightclick.cpp:417 -msgid "Move All Modules" -msgstr "Déplace tous les Modules" - -#: pcbnew/onrightclick.cpp:418 -msgid "Move New Modules" -msgstr "Déplace nouveaux Modules" - -#: pcbnew/onrightclick.cpp:420 -msgid "Autoplace All Modules" -msgstr "Autoplace Tous Modules" - -#: pcbnew/onrightclick.cpp:421 -msgid "Autoplace New Modules" -msgstr "AutoPlace nouveaux Modules" - -#: pcbnew/onrightclick.cpp:422 -msgid "Autoplace Next Module" -msgstr "Autoplace Module suivant" - -#: pcbnew/onrightclick.cpp:425 -msgid "Orient All Modules" -msgstr "Oriente Tous Modules" - -#: pcbnew/onrightclick.cpp:432 -msgid "Global Autoroute" -msgstr "Autoroutage global" - -#: pcbnew/onrightclick.cpp:434 -msgid "Select layer pair" -msgstr "Selection couple de couches" - -#: pcbnew/onrightclick.cpp:436 -msgid "Autoroute All Modules" -msgstr "Autoroute Tous Modules" - -#: pcbnew/onrightclick.cpp:438 -msgid "Reset Unrouted" -msgstr "Réinit Non routés" - -#: pcbnew/onrightclick.cpp:443 -msgid "Global AutoRouter" -msgstr "Autorouteur Global" - -#: pcbnew/onrightclick.cpp:445 -msgid "Read Global AutoRouter Data" -msgstr "Lire Données de L'autorouteur global" - -#: pcbnew/onrightclick.cpp:482 -msgid "Flip Block (alt + drag mouse)" -msgstr "Inversion Bloc (alt + drag mouse)" - -#: pcbnew/onrightclick.cpp:505 -msgid "Drag Via" -msgstr "Drag Via" - -#: pcbnew/onrightclick.cpp:509 -#: pcbnew/onrightclick.cpp:579 -msgid "Edit Via" -msgstr "Edit Via" - -#: pcbnew/onrightclick.cpp:511 -msgid "Set via hole to Default" -msgstr "Ajuste perçage via à défaut" - -#: pcbnew/onrightclick.cpp:513 -msgid "Set via hole to alt value" -msgstr "Ajuste perçage via à valeur alternative" - -#: pcbnew/onrightclick.cpp:515 -msgid "Set the via hole alt value" -msgstr "Ajuste la valeur alt. perçage via" - -#: pcbnew/onrightclick.cpp:517 -msgid "Export Via hole to alt value" -msgstr "Exporte perçage via à valeur alt." - -#: pcbnew/onrightclick.cpp:519 -msgid "Export via hole to others id vias" -msgstr "Exporte perçage via aux autres semblables." - -#: pcbnew/onrightclick.cpp:521 -msgid "Set ALL via holes to default" -msgstr "Ajuste perçage TOUTES vias au défaut" - -#: pcbnew/onrightclick.cpp:534 -msgid "Move Node" -msgstr "Déplace Noeud" - -#: pcbnew/onrightclick.cpp:539 -msgid "Drag Segments, keep slope" -msgstr "Drag Segments, garder direction" - -#: pcbnew/onrightclick.cpp:541 -msgid "Drag Segment" -msgstr "Drag Segment" - -#: pcbnew/onrightclick.cpp:544 -msgid "Move Segment" -msgstr "Déplace Segment" - -#: pcbnew/onrightclick.cpp:547 -msgid "Break Track" -msgstr "Briser piste" - -#: pcbnew/onrightclick.cpp:554 -msgid "Place Node" -msgstr "Place noeud" - -#: pcbnew/onrightclick.cpp:561 -msgid "End Track" -msgstr "Terminer Piste" - -#: pcbnew/onrightclick.cpp:564 -msgid "Place Via" -msgstr "Place Via" - -#: pcbnew/onrightclick.cpp:569 -msgid "Place Micro Via" -msgstr "Place Micro Via" - -#: pcbnew/onrightclick.cpp:577 -msgid "Change Width" -msgstr "Change Largeur" - -#: pcbnew/onrightclick.cpp:580 -msgid "Edit Segment" -msgstr "Edit Segment" - -#: pcbnew/onrightclick.cpp:585 -msgid "Edit Track" -msgstr "Editer Piste" - -#: pcbnew/onrightclick.cpp:587 -msgid "Edit Net" -msgstr "Edit Net" - -#: pcbnew/onrightclick.cpp:589 -msgid "Edit ALL Tracks and Vias" -msgstr "Editer TOUTES Pistes et Vias" - -#: pcbnew/onrightclick.cpp:591 -msgid "Edit ALL Vias (no track)" -msgstr "Editer TOUTES Vias (pas les pistes)" - -#: pcbnew/onrightclick.cpp:593 -msgid "Edit ALL Tracks (no via)" -msgstr "Editer TOUTES Pistes (pas les vias)" - -#: pcbnew/onrightclick.cpp:601 -msgid "Delete Via" -msgstr "Suppression Via" - -#: pcbnew/onrightclick.cpp:601 -msgid "Delete Segment" -msgstr "SupprimerSegment" - -#: pcbnew/onrightclick.cpp:608 -msgid "Delete Track" -msgstr "Effacer Piste" - -#: pcbnew/onrightclick.cpp:612 -msgid "Delete Net" -msgstr "Supprimer Net" - -#: pcbnew/onrightclick.cpp:617 -msgid "Set Flags" -msgstr "Ajust. Flags" - -#: pcbnew/onrightclick.cpp:618 -msgid "Locked: Yes" -msgstr "Verrou: Oui" - -#: pcbnew/onrightclick.cpp:619 -msgid "Locked: No" -msgstr "Verrou: Non" - -#: pcbnew/onrightclick.cpp:629 -msgid "Track Locked: Yes" -msgstr "Piste verrouillée: Oui" - -#: pcbnew/onrightclick.cpp:630 -msgid "Track Locked: No" -msgstr "Piste verrouillée: Non" - -#: pcbnew/onrightclick.cpp:632 -msgid "Net Locked: Yes" -msgstr "Net verrouillé: Oui" - -#: pcbnew/onrightclick.cpp:633 -msgid "Net Locked: No" -msgstr "Net verrouillé: Non" - -#: pcbnew/onrightclick.cpp:649 -msgid "Place Corner" -msgstr "Place Sommet" - -#: pcbnew/onrightclick.cpp:652 -msgid "Place Zone" -msgstr "Place Zone" - -#: pcbnew/onrightclick.cpp:658 -#: pcbnew/dialog_drc.cpp:477 -msgid "Zones" -msgstr "Zones" - -#: pcbnew/onrightclick.cpp:663 -msgid "Move Corner" -msgstr "Déplace Sommet" - -#: pcbnew/onrightclick.cpp:665 -msgid "Delete Corner" -msgstr "Supprimer Sommet" - -#: pcbnew/onrightclick.cpp:670 -msgid "Create Corner" -msgstr "Créer Sommet" - -#: pcbnew/onrightclick.cpp:675 -msgid "Add Similar Zone" -msgstr "Addition d'une Zone Semblable" - -#: pcbnew/onrightclick.cpp:678 -msgid "Add Cutout Area" -msgstr "Addition d'une Zone Interdite" - -#: pcbnew/onrightclick.cpp:682 -msgid "Fill Zone" -msgstr "Remplir Zone" - -#: pcbnew/onrightclick.cpp:685 -msgid "Move Zone" -msgstr "Déplace Zone" - -#: pcbnew/onrightclick.cpp:688 -msgid "Edit Zone Params" -msgstr "Editer Paramètres de la Zone" - -#: pcbnew/onrightclick.cpp:693 -msgid "Delete Cutout" -msgstr "Supprimer Zone Interdite" - -#: pcbnew/onrightclick.cpp:696 -msgid "Delete Zone Outline" -msgstr "Supprimer Contour de Zone" - -#: pcbnew/onrightclick.cpp:718 -#: pcbnew/onrightclick.cpp:763 -#: pcbnew/onrightclick.cpp:801 -#: pcbnew/onrightclick.cpp:860 -msgid "Move" -msgstr "Move" - -#: pcbnew/onrightclick.cpp:721 -#: pcbnew/onrightclick.cpp:803 -msgid "Drag" -msgstr "Drag" - -#: pcbnew/onrightclick.cpp:725 -msgid "Rotate +" -msgstr "Rotation +" - -#: pcbnew/onrightclick.cpp:729 -#: eeschema/onrightclick.cpp:301 -msgid "Rotate -" -msgstr "Rotation -" - -#: pcbnew/onrightclick.cpp:730 -msgid "Flip" -msgstr "Change côté" - -#: pcbnew/onrightclick.cpp:820 -msgid "delete" -msgstr "Effacer" - -#: pcbnew/onrightclick.cpp:827 -msgid "Autoroute Pad" -msgstr "Autoroute Pad" - -#: pcbnew/onrightclick.cpp:828 -msgid "Autoroute Net" -msgstr "Autoroute Net" +#: pcbnew/pcbframe.cpp:268 +msgid "Board modified, Save before exit ?" +msgstr "Circuit Imprimé modifiée, Sauver avant de quitter ?" + +#: pcbnew/pcbframe.cpp:269 +#: eeschema/schframe.cpp:183 +#: cvpcb/cvframe.cpp:177 +#: common/confirm.cpp:119 +msgid "Confirmation" +msgstr "Confirmation" + +#: pcbnew/pcbframe.cpp:369 +msgid "DRC Off (Disable !!!), Currently: DRC is active" +msgstr "DRC off (désactivée !!!), actuellement DRC active" + +#: pcbnew/pcbframe.cpp:370 +msgid "DRC On (Currently: DRC is inactive !!!)" +msgstr "DRC On (Actuellement, DRC désactivée !!!)" + +#: pcbnew/pcbframe.cpp:381 +msgid "Polar Coords not show" +msgstr "Coord Polaires non affichées" + +#: pcbnew/pcbframe.cpp:382 +msgid "Display Polar Coords" +msgstr "Affichage coord Polaires" + +#: pcbnew/pcbframe.cpp:387 +#: eeschema/schframe.cpp:274 +msgid "Grid not show" +msgstr "Grille non montrée" + +#: pcbnew/pcbframe.cpp:387 +#: eeschema/schframe.cpp:274 +msgid "Show Grid" +msgstr "Afficher grille" + +#: pcbnew/pcbframe.cpp:396 +msgid "General ratsnest not show" +msgstr "Chevelu général non affiché" + +#: pcbnew/pcbframe.cpp:396 +msgid "Show General ratsnest" +msgstr "Afficher le chevelu général" + +#: pcbnew/pcbframe.cpp:402 +msgid "Module ratsnest not show" +msgstr "Ne pas montrer le chevelu du module pendant déplacement" + +#: pcbnew/pcbframe.cpp:403 +msgid "Show Module ratsnest" +msgstr "Montrer le chevelu du module" + +#: pcbnew/pcbframe.cpp:410 +msgid "Disable Auto Delete old Track" +msgstr "Ne pas Autoriser l'effacement automatique des pistes" + +#: pcbnew/pcbframe.cpp:411 +msgid "Enable Auto Delete old Track" +msgstr "Autoriser l'effacement automatique des pistes" + +#: pcbnew/pcbframe.cpp:418 +msgid "Do not Show Zones" +msgstr "Ne pas monter Zones" + +#: pcbnew/pcbframe.cpp:418 +#: pcbnew/tool_pcb.cpp:361 +#: pcbnew/set_color.h:423 +msgid "Show Zones" +msgstr "Monter Zones" + +#: pcbnew/pcbframe.cpp:424 +msgid "Show Pads Sketch mode" +msgstr "Afficher pastilles en contour" + +#: pcbnew/pcbframe.cpp:425 +msgid "Show pads filled mode" +msgstr "Afficher pastilles en mode plein" + +#: pcbnew/pcbframe.cpp:431 +msgid "Show Tracks Sketch mode" +msgstr "Afficher pistes en contour" + +#: pcbnew/pcbframe.cpp:432 +msgid "Show Tracks filled mode" +msgstr "Afficher pistes en mode plein" + +#: pcbnew/pcbframe.cpp:438 +msgid "Normal Contrast Mode Display" +msgstr "Mode d'affichage Contraste normal" + +#: pcbnew/pcbframe.cpp:439 +#: pcbnew/tool_pcb.cpp:374 +msgid "Hight Contrast Mode Display" +msgstr "Mode d'affichage Haut Contraste" + +#: pcbnew/pcbframe.cpp:451 +#: pcbnew/class_board_item.cpp:139 +#: pcbnew/class_track.cpp:765 +msgid "Track" +msgstr "Piste" + +#: pcbnew/pcbframe.cpp:483 +#: pcbnew/class_board_item.cpp:199 +msgid "Via" +msgstr "Via" #: pcbnew/block.cpp:122 msgid "Include Modules" @@ -3114,70 +3169,29 @@ msgstr "Effacer Bloc" msgid "Delete zones" msgstr "SuppressionZones" -#: pcbnew/block.cpp:601 +#: pcbnew/block.cpp:607 msgid "Rotate Block" msgstr "Rotation Bloc" -#: pcbnew/block.cpp:658 +#: pcbnew/block.cpp:664 msgid "Zone rotation" msgstr "Rotation Zones" -#: pcbnew/block.cpp:766 +#: pcbnew/block.cpp:772 msgid "Block mirroring" msgstr "Bloc Miroir" -#: pcbnew/block.cpp:954 +#: pcbnew/block.cpp:960 msgid "Move Block" msgstr "Déplacer Bloc" -#: pcbnew/block.cpp:1109 +#: pcbnew/block.cpp:1115 msgid "Copy Block" msgstr "Copie Bloc" -#: pcbnew/edit.cpp:176 -#: pcbnew/editmod.cpp:45 -msgid "Module Editor" -msgstr "Ouvrir Editeur de modules" - -#: pcbnew/edit.cpp:256 -msgid "Add Tracks" -msgstr "Addition de pistes" - -#: pcbnew/edit.cpp:265 -msgid "Add Zones" -msgstr "Addition de Zones" - -#: pcbnew/edit.cpp:267 -msgid "Warning: Display Zone is OFF!!!" -msgstr "Attention: Affichage zones désactivé !!!" - -#: pcbnew/edit.cpp:274 -msgid "Add Layer Alignment Target" -msgstr "Ajouter Mire de superposition" - -#: pcbnew/edit.cpp:278 -msgid "Adjust Zero" -msgstr "Ajuster Zéro" - -#: pcbnew/edit.cpp:284 -msgid "Add Graphic" -msgstr "Addition éléments graphiques" - -#: pcbnew/edit.cpp:292 -msgid "Add Modules" -msgstr "Addition de Modules" - -#: pcbnew/edit.cpp:296 -msgid "Add Dimension" -msgstr "Ajout de cotes" - -#: pcbnew/edit.cpp:304 -msgid "Net Highlight" -msgstr "Surbrillance des équipotentielles" - -#: pcbnew/edit.cpp:308 -msgid "Local Ratsnest" -msgstr "Monter le chevelu général" +#: pcbnew/ioascii.cpp:167 +msgid "Error: Unexpected end of file !" +msgstr "Erreur: Fin de fichier inattendue !" #: pcbnew/router.cpp:60 msgid "Unable to create temporary file " @@ -3273,6 +3287,11 @@ msgstr "Le texte est la REFERENCE!" msgid "Text is VALUE!" msgstr "Le texte est la VALEUR!" +#: pcbnew/class_board_item.cpp:35 +#: pcbnew/class_pad.cpp:887 +msgid "Net" +msgstr "Net" + #: pcbnew/class_board_item.cpp:40 #: eeschema/dialog_build_BOM.cpp:300 #: eeschema/component_class.cpp:56 @@ -3337,14 +3356,8 @@ msgstr "Graphique" msgid "Arc" msgstr "Arc" -#: pcbnew/class_board_item.cpp:139 -#: pcbnew/pcbframe.cpp:447 -#: pcbnew/class_track.cpp:765 -msgid "Track" -msgstr "Piste" - #: pcbnew/class_board_item.cpp:146 -#: pcbnew/dialog_zones_by_polygon.cpp:228 +#: pcbnew/dialog_zones_by_polygon.cpp:229 msgid "Net:" msgstr "Net:" @@ -3353,17 +3366,17 @@ msgid "Length:" msgstr "Long.:" #: pcbnew/class_board_item.cpp:152 -#: pcbnew/class_zone.cpp:477 +#: pcbnew/class_zone.cpp:488 msgid "Zone Outline" msgstr "Contour de Zone" #: pcbnew/class_board_item.cpp:156 -#: pcbnew/class_zone.cpp:480 +#: pcbnew/class_zone.cpp:491 msgid "(Cutout)" msgstr "(Cutout)" #: pcbnew/class_board_item.cpp:175 -#: pcbnew/class_zone.cpp:500 +#: pcbnew/class_zone.cpp:511 msgid "Not Found" msgstr " Non Trouvé" @@ -3372,11 +3385,6 @@ msgstr " Non Trouv msgid "Zone" msgstr "Zone" -#: pcbnew/class_board_item.cpp:199 -#: pcbnew/pcbframe.cpp:479 -msgid "Via" -msgstr "Via" - #: pcbnew/class_board_item.cpp:203 msgid "Blind/Buried" msgstr "Borgne/Aveugle" @@ -3419,108 +3427,12 @@ msgstr "Type Err" msgid "Pcbnew is already running, Continue?" msgstr "Pcbnew est est cours d'exécution. Continuer ?" -#: pcbnew/pcbframe.cpp:266 -msgid "Board modified, Save before exit ?" -msgstr "Circuit Imprimé modifiée, Sauver avant de quitter ?" - -#: pcbnew/pcbframe.cpp:267 -#: eeschema/schframe.cpp:183 -#: cvpcb/cvframe.cpp:177 -#: common/confirm.cpp:119 -msgid "Confirmation" -msgstr "Confirmation" - -#: pcbnew/pcbframe.cpp:367 -msgid "DRC Off (Disable !!!), Currently: DRC is active" -msgstr "DRC off (désactivée !!!), actuellement DRC active" - -#: pcbnew/pcbframe.cpp:368 -msgid "DRC On (Currently: DRC is inactive !!!)" -msgstr "DRC On (Actuellement, DRC désactivée !!!)" - -#: pcbnew/pcbframe.cpp:379 -msgid "Polar Coords not show" -msgstr "Coord Polaires non affichées" - -#: pcbnew/pcbframe.cpp:380 -msgid "Display Polar Coords" -msgstr "Affichage coord Polaires" - -#: pcbnew/pcbframe.cpp:385 -#: eeschema/schframe.cpp:274 -msgid "Grid not show" -msgstr "Grille non montrée" - -#: pcbnew/pcbframe.cpp:385 -#: eeschema/schframe.cpp:274 -msgid "Show Grid" -msgstr "Afficher grille" - -#: pcbnew/pcbframe.cpp:394 -msgid "General ratsnest not show" -msgstr "Chevelu général non affiché" - -#: pcbnew/pcbframe.cpp:394 -msgid "Show General ratsnest" -msgstr "Afficher le chevelu général" - -#: pcbnew/pcbframe.cpp:400 -msgid "Module ratsnest not show" -msgstr "Ne pas montrer le chevelu du module pendant déplacement" - -#: pcbnew/pcbframe.cpp:401 -msgid "Show Module ratsnest" -msgstr "Montrer le chevelu du module" - -#: pcbnew/pcbframe.cpp:408 -msgid "Disable Auto Delete old Track" -msgstr "Ne pas Autoriser l'effacement automatique des pistes" - -#: pcbnew/pcbframe.cpp:409 -msgid "Enable Auto Delete old Track" -msgstr "Autoriser l'effacement automatique des pistes" - -#: pcbnew/pcbframe.cpp:416 -msgid "Do not Show Zones" -msgstr "Ne pas monter Zones" - -#: pcbnew/pcbframe.cpp:416 -#: pcbnew/tool_pcb.cpp:360 -#: pcbnew/set_color.h:423 -msgid "Show Zones" -msgstr "Monter Zones" - -#: pcbnew/pcbframe.cpp:422 -msgid "Show Pads Sketch mode" -msgstr "Afficher pastilles en contour" - -#: pcbnew/pcbframe.cpp:423 -msgid "Show pads filled mode" -msgstr "Afficher pastilles en mode plein" - -#: pcbnew/pcbframe.cpp:429 -msgid "Show Tracks Sketch mode" -msgstr "Afficher pistes en contour" - -#: pcbnew/pcbframe.cpp:430 -msgid "Show Tracks filled mode" -msgstr "Afficher pistes en mode plein" - -#: pcbnew/pcbframe.cpp:436 -msgid "Normal Contrast Mode Display" -msgstr "Mode d'affichage Contraste normal" - -#: pcbnew/pcbframe.cpp:437 -#: pcbnew/tool_pcb.cpp:373 -msgid "Hight Contrast Mode Display" -msgstr "Mode d'affichage Haut Contraste" - #: pcbnew/cotation.cpp:85 msgid "Dimension properties" msgstr "Propriétés des Cotes" #: pcbnew/cotation.cpp:133 -#: pcbnew/dialog_zones_by_polygon.cpp:235 +#: pcbnew/dialog_zones_by_polygon.cpp:236 #: gerbview/affiche.cpp:37 msgid "Layer:" msgstr "Couche:" @@ -3548,19 +3460,18 @@ msgstr "Net Code" #: pcbnew/affiche.cpp:52 #: pcbnew/class_module.cpp:1228 -#: pcbnew/class_board.cpp:402 +#: pcbnew/class_board.cpp:414 msgid "Pads" msgstr "Pads" #: pcbnew/class_track.cpp:791 -#: pcbnew/zones.cpp:873 -#: pcbnew/zones_by_polygon.cpp:900 -#: pcbnew/class_zone.cpp:503 +#: pcbnew/zones_by_polygon.cpp:906 +#: pcbnew/class_zone.cpp:514 msgid "NetName" msgstr "NetName" #: pcbnew/class_track.cpp:796 -#: pcbnew/class_zone.cpp:508 +#: pcbnew/class_zone.cpp:519 msgid "NetCode" msgstr "NetCode" @@ -3578,6 +3489,12 @@ msgstr "Stat" msgid "Diam" msgstr "Diam" +#: pcbnew/class_track.cpp:847 +#: pcbnew/class_track.cpp:852 +#: pcbnew/class_pad.cpp:993 +msgid "Drill" +msgstr "Perçage" + #: pcbnew/deltrack.cpp:161 msgid "Delete NET ?" msgstr "Supprimer Net ?" @@ -3847,97 +3764,25 @@ msgstr "Change module %s (%s) " msgid "Cmp files:" msgstr "Fichiers Cmp: " -#: pcbnew/zones.cpp:155 -#: pcbnew/zones.cpp:156 -#: pcbnew/zones.cpp:157 -#: pcbnew/zones.cpp:158 -#: pcbnew/dialog_zones_by_polygon.cpp:153 -#: pcbnew/dialog_zones_by_polygon.cpp:154 -#: pcbnew/dialog_zones_by_polygon.cpp:155 -msgid "0.00000" -msgstr "0.00000" +#: pcbnew/pcbcfg.cpp:68 +#: eeschema/eeconfig.cpp:58 +#: cvpcb/menucfg.cpp:170 +msgid "Read config file" +msgstr "Lire config" -#: pcbnew/zones.cpp:162 -msgid "Grid size:" -msgstr "Dim Grille" +#: pcbnew/pcbcfg.cpp:81 +#: cvpcb/menucfg.cpp:182 +#, c-format +msgid "File %s not found" +msgstr " fichier %s non trouvé" -#: pcbnew/zones.cpp:167 -#: pcbnew/dialog_zones_by_polygon.cpp:160 -msgid "Zone clearance value (mm):" -msgstr "Valeur isolation zone (mm):" +#: pcbnew/pcbcfg.cpp:196 +#: eeschema/eeconfig.cpp:192 +#: cvpcb/cfg.cpp:71 +msgid "Save preferences" +msgstr "Sauver préférences" -#: pcbnew/zones.cpp:184 -#: pcbnew/dialog_zones_by_polygon.cpp:180 -msgid "Include Pads" -msgstr "Inclure Pads" - -#: pcbnew/zones.cpp:185 -#: pcbnew/dialog_zones_by_polygon.cpp:181 -msgid "Thermal" -msgstr "Thermique" - -#: pcbnew/zones.cpp:186 -#: pcbnew/dialog_zones_by_polygon.cpp:182 -msgid "Exclude Pads" -msgstr "Exclure Pads" - -#: pcbnew/zones.cpp:190 -#: pcbnew/dialog_zones_by_polygon.cpp:183 -msgid "Pad options:" -msgstr "Options pads" - -#: pcbnew/zones.cpp:195 -#: pcbnew/dialog_zones_by_polygon.cpp:190 -#: eeschema/dialog_options.cpp:257 -msgid "Any" -msgstr "Tout" - -#: pcbnew/zones.cpp:196 -#: pcbnew/dialog_zones_by_polygon.cpp:191 -msgid "H , V and 45 deg" -msgstr "H, V et 45 deg" - -#: pcbnew/zones.cpp:200 -#: pcbnew/dialog_zones_by_polygon.cpp:192 -msgid "Zone edges orient:" -msgstr "Direction contours zone:" - -#: pcbnew/zones.cpp:212 -msgid "Fill" -msgstr "Remplissage" - -#: pcbnew/zones.cpp:226 -msgid "Update Options" -msgstr "Maj Options" - -#: pcbnew/zones.cpp:235 -#: pcbnew/dialog_zones_by_polygon.cpp:247 -msgid "Zone clearance value:" -msgstr "Valeur isolation zone:" - -#: pcbnew/zones.cpp:238 -#: pcbnew/dialog_zones_by_polygon.cpp:250 -msgid "Grid :" -msgstr "Grille:" - -#: pcbnew/zones.cpp:401 -msgid "New zone segment width: " -msgstr "Nouvelle largeur des segments zone:" - -#: pcbnew/zones.cpp:599 -msgid "Zone: No net selected" -msgstr "Zone: Net non sélectionné" - -#: pcbnew/zones.cpp:641 -msgid "Delete Current Zone Edges" -msgstr "Effacer contour zone courant" - -#: pcbnew/zones.cpp:871 -#: pcbnew/zones_by_polygon.cpp:898 -msgid "No Net" -msgstr "No Net" - -#: pcbnew/tool_pcb.cpp:50 +#: pcbnew/tool_pcb.cpp:49 msgid "" "Show active layer selections\n" "and select layer pair for route and place via" @@ -3945,56 +3790,56 @@ msgstr "" "Affiche selections couche active\n" "et selection paire de couches pour routage and placement via" -#: pcbnew/tool_pcb.cpp:238 +#: pcbnew/tool_pcb.cpp:237 msgid "New Board" msgstr "Nouveau Circuit Imprimé" -#: pcbnew/tool_pcb.cpp:240 +#: pcbnew/tool_pcb.cpp:239 msgid "Open existing Board" msgstr "Ouvrir C.I. existant" -#: pcbnew/tool_pcb.cpp:241 +#: pcbnew/tool_pcb.cpp:240 msgid "Save Board" msgstr "Sauver Circuit Imprimé" -#: pcbnew/tool_pcb.cpp:245 +#: pcbnew/tool_pcb.cpp:244 #: eeschema/tool_sch.cpp:65 #: gerbview/tool_gerber.cpp:232 msgid "page settings (size, texts)" msgstr "Ajustage de la feuille de dessin (dimensions, textes)" -#: pcbnew/tool_pcb.cpp:249 +#: pcbnew/tool_pcb.cpp:248 msgid "Open Module Editor" msgstr "Ouvrir Editeur de modules" -#: pcbnew/tool_pcb.cpp:252 +#: pcbnew/tool_pcb.cpp:251 #: eeschema/tool_sch.cpp:81 #: gerbview/tool_gerber.cpp:243 msgid "Cut selected item" msgstr "Suppression des éléments sélectionnés" -#: pcbnew/tool_pcb.cpp:256 +#: pcbnew/tool_pcb.cpp:255 #: eeschema/tool_sch.cpp:84 #: gerbview/tool_gerber.cpp:248 msgid "Copy selected item" msgstr "Copie des éléments sélectionnés" -#: pcbnew/tool_pcb.cpp:258 +#: pcbnew/tool_pcb.cpp:257 #: eeschema/tool_sch.cpp:87 #: gerbview/tool_gerber.cpp:254 msgid "Paste" msgstr "Copie des éléments sauvegardés" -#: pcbnew/tool_pcb.cpp:261 +#: pcbnew/tool_pcb.cpp:260 #: gerbview/tool_gerber.cpp:261 msgid "Undelete" msgstr "Annulation du dernier effacement" -#: pcbnew/tool_pcb.cpp:264 +#: pcbnew/tool_pcb.cpp:263 msgid "Print Board" msgstr "Imprimer C.I." -#: pcbnew/tool_pcb.cpp:266 +#: pcbnew/tool_pcb.cpp:265 msgid "Plot (HPGL, PostScript, or GERBER format)" msgstr "Tracer en format HPGL, POSTSCRIPT ou GERBER" @@ -4003,43 +3848,43 @@ msgstr "Tracer en format HPGL, POSTSCRIPT ou GERBER" msgid "Find components and texts" msgstr "Recherche de composants et textes" -#: pcbnew/tool_pcb.cpp:291 +#: pcbnew/tool_pcb.cpp:292 msgid "Read Netlist" msgstr "Lire Netliste" -#: pcbnew/tool_pcb.cpp:293 +#: pcbnew/tool_pcb.cpp:294 msgid "Pcb Design Rules Check" msgstr "Controle des règles de conception" -#: pcbnew/tool_pcb.cpp:304 +#: pcbnew/tool_pcb.cpp:305 msgid "Mode Module: Manual and Automatic Move or Place for modules" msgstr "Mode Module: Déplacements ou Placement Manuel ou Automatique des modules" -#: pcbnew/tool_pcb.cpp:307 +#: pcbnew/tool_pcb.cpp:308 msgid "Mode Track and Autorouting" msgstr "Mode Pistes and Autoroutage" -#: pcbnew/tool_pcb.cpp:331 +#: pcbnew/tool_pcb.cpp:332 msgid "Drc OFF" msgstr "Drc DESACTIVEE" -#: pcbnew/tool_pcb.cpp:348 +#: pcbnew/tool_pcb.cpp:349 msgid "Show General Ratsnest" msgstr "Monter le chevelu général" -#: pcbnew/tool_pcb.cpp:351 +#: pcbnew/tool_pcb.cpp:352 msgid "Show Module Ratsnest when moving" msgstr "Monter le chevelu du module pendant déplacement" -#: pcbnew/tool_pcb.cpp:356 +#: pcbnew/tool_pcb.cpp:357 msgid "Enable Auto Del Track" msgstr "Autoriser l'effacement automatique des pistes" -#: pcbnew/tool_pcb.cpp:369 +#: pcbnew/tool_pcb.cpp:370 msgid "Show Tracks Sketch" msgstr "Afficher pistes en contour" -#: pcbnew/tool_pcb.cpp:382 +#: pcbnew/tool_pcb.cpp:383 msgid "" "Display auxiliary vertical toolbar (tools for micro wave applications)\n" " This is a very experimental feature (under development)" @@ -4047,68 +3892,76 @@ msgstr "" "Affiche toolbar vertical auxiliaire (outils pour applications micro-ondes)\n" "C'est un outil expérimental (en cours de développement)" -#: pcbnew/tool_pcb.cpp:411 +#: pcbnew/tool_pcb.cpp:412 msgid "Net highlight" msgstr "Surbrillance des équipotentielles" -#: pcbnew/tool_pcb.cpp:415 +#: pcbnew/tool_pcb.cpp:416 msgid "Display local ratsnest (pad or module)" msgstr "Afficher le chevelu local (pastilles ou modules)" -#: pcbnew/tool_pcb.cpp:420 +#: pcbnew/tool_pcb.cpp:421 msgid "Add modules" msgstr "Addition de Modules" -#: pcbnew/tool_pcb.cpp:424 +#: pcbnew/tool_pcb.cpp:425 msgid "Add tracks and vias" msgstr "Ajouter pistes et vias" -#: pcbnew/tool_pcb.cpp:428 +#: pcbnew/tool_pcb.cpp:429 msgid "Add zones" msgstr "Addition de Zones" -#: pcbnew/tool_pcb.cpp:445 +#: pcbnew/tool_pcb.cpp:446 msgid "Add text" msgstr "Ajout de Texte" -#: pcbnew/tool_pcb.cpp:450 +#: pcbnew/tool_pcb.cpp:451 msgid "Add dimension" msgstr "Ajout des cotes" -#: pcbnew/tool_pcb.cpp:454 +#: pcbnew/tool_pcb.cpp:455 #: gerbview/tool_gerber.cpp:378 msgid "Add layer alignment target" msgstr "Ajouter Mire de superposition" -#: pcbnew/tool_pcb.cpp:464 +#: pcbnew/tool_pcb.cpp:465 msgid "Offset adjust for drill and place files" msgstr "Ajuste offset pour fichier de perçage et placement" -#: pcbnew/tool_pcb.cpp:489 +#: pcbnew/tool_pcb.cpp:490 msgid "Create line of specified length for microwave applications" msgstr "Creation de lignes de longueur spécifiée (pour applications micro-ondes)" -#: pcbnew/tool_pcb.cpp:495 +#: pcbnew/tool_pcb.cpp:496 msgid "Create gap of specified length for microwave applications" msgstr "Creation de gaps de longueur spécifiée (pour applications micro-ondes)" -#: pcbnew/tool_pcb.cpp:503 +#: pcbnew/tool_pcb.cpp:504 msgid "Create stub of specified length for microwave applications" msgstr "Creation de stub de longueur spécifiée (pour applications micro-ondes)" -#: pcbnew/tool_pcb.cpp:509 +#: pcbnew/tool_pcb.cpp:510 msgid "Create stub (arc) of specified length for microwave applications" msgstr "Creation de stub (arc) de longueur spécifiée (pour applications micro-ondes)" -#: pcbnew/tool_pcb.cpp:516 +#: pcbnew/tool_pcb.cpp:517 msgid "Create a polynomial shape for microwave applications" msgstr "Creation de formes polynomiales (pour applications micro-ondes)" -#: pcbnew/tool_pcb.cpp:570 +#: pcbnew/tool_pcb.cpp:558 +msgid "" +"Auto track width: when starting on an existing track use its width\n" +"otherwise, use current width setting" +msgstr "" +"Largeur de piste automatique: si on démarre sur une piste existante, utiliser sa largeur\n" +" sinon utiliser la largeur courante" + +#: pcbnew/tool_pcb.cpp:584 msgid "Zoom " msgstr "Zoom " -#: pcbnew/tool_pcb.cpp:584 +#: pcbnew/tool_pcb.cpp:598 #: eeschema/eelayer.cpp:223 #: pcbnew/set_color.h:414 #: eeschema/eelayer.h:210 @@ -4116,24 +3969,28 @@ msgstr "Zoom " msgid "Grid" msgstr "Grille" -#: pcbnew/tool_pcb.cpp:691 +#: pcbnew/tool_pcb.cpp:707 msgid "+/- to switch" msgstr "+/- pour commuter" #: pcbnew/zones_by_polygon.cpp:342 -#: pcbnew/zones_by_polygon.cpp:380 -#: pcbnew/zones_by_polygon.cpp:713 +#: pcbnew/zones_by_polygon.cpp:381 +#: pcbnew/zones_by_polygon.cpp:719 msgid "Area: DRC outline error" msgstr "Zone; Erreur DRC sur contour" -#: pcbnew/zones_by_polygon.cpp:540 +#: pcbnew/zones_by_polygon.cpp:544 msgid "DRC error: this start point is inside or too close an other area" msgstr "Erreur DRC: ce point de départ est a l'intérieur d'une autre zone ou trop proche" -#: pcbnew/zones_by_polygon.cpp:638 +#: pcbnew/zones_by_polygon.cpp:644 msgid "DRC error: closing this area creates a drc error with an other area" msgstr "Erreur DRC: la fermeture de cette zone crée une erreur DRC avec une autre zone" +#: pcbnew/zones_by_polygon.cpp:904 +msgid "No Net" +msgstr "No Net" + #: pcbnew/move_or_drag_track.cpp:714 msgid "Unable to drag this segment: too many segments connected" msgstr "Impossible de drag ce segment: trop de segments connectés" @@ -4142,79 +3999,118 @@ msgstr "Impossible de drag ce segment: trop de segments connect msgid "Unable to drag this segment: two collinear segments" msgstr "Impossible de drag ce segment: 2 segments alignés" +#: pcbnew/dialog_zones_by_polygon.cpp:153 +#: pcbnew/dialog_zones_by_polygon.cpp:154 +#: pcbnew/dialog_zones_by_polygon.cpp:155 #: pcbnew/dialog_zones_by_polygon.cpp:156 +msgid "0.00000" +msgstr "0.00000" + +#: pcbnew/dialog_zones_by_polygon.cpp:157 msgid "Grid Size for Filling:" msgstr "Taille de Grille pour Remplissage:" -#: pcbnew/dialog_zones_by_polygon.cpp:168 +#: pcbnew/dialog_zones_by_polygon.cpp:161 +msgid "Zone clearance value (mm):" +msgstr "Valeur isolation zone (mm):" + +#: pcbnew/dialog_zones_by_polygon.cpp:169 msgid "Hatched Outline" msgstr "Contour Hachuré" -#: pcbnew/dialog_zones_by_polygon.cpp:169 +#: pcbnew/dialog_zones_by_polygon.cpp:170 msgid "Full Hatched" msgstr "Pleinement Hachuré" -#: pcbnew/dialog_zones_by_polygon.cpp:170 +#: pcbnew/dialog_zones_by_polygon.cpp:171 msgid "Outlines Appearance" msgstr "Aspect des Contours" -#: pcbnew/dialog_zones_by_polygon.cpp:211 +#: pcbnew/dialog_zones_by_polygon.cpp:181 +msgid "Include Pads" +msgstr "Inclure Pads" + +#: pcbnew/dialog_zones_by_polygon.cpp:182 +msgid "Thermal" +msgstr "Thermique" + +#: pcbnew/dialog_zones_by_polygon.cpp:183 +msgid "Exclude Pads" +msgstr "Exclure Pads" + +#: pcbnew/dialog_zones_by_polygon.cpp:184 +msgid "Pad options:" +msgstr "Options pads" + +#: pcbnew/dialog_zones_by_polygon.cpp:191 +#: eeschema/dialog_options.cpp:257 +msgid "Any" +msgstr "Tout" + +#: pcbnew/dialog_zones_by_polygon.cpp:192 +msgid "H , V and 45 deg" +msgstr "H, V et 45 deg" + +#: pcbnew/dialog_zones_by_polygon.cpp:193 +msgid "Zone edges orient:" +msgstr "Direction contours zone:" + +#: pcbnew/dialog_zones_by_polygon.cpp:212 msgid "Alphabetic" msgstr "Alphabetique" -#: pcbnew/dialog_zones_by_polygon.cpp:212 +#: pcbnew/dialog_zones_by_polygon.cpp:213 msgid "Advanced" msgstr "Avancé" -#: pcbnew/dialog_zones_by_polygon.cpp:213 +#: pcbnew/dialog_zones_by_polygon.cpp:214 msgid "Net sorting:" msgstr "Tri des Equipotentielles:" -#: pcbnew/dialog_zones_by_polygon.cpp:217 +#: pcbnew/dialog_zones_by_polygon.cpp:218 msgid "Filter" msgstr "Filtre" -#: pcbnew/dialog_zones_by_polygon.cpp:222 +#: pcbnew/dialog_zones_by_polygon.cpp:223 msgid "Do not list net names which match with this text, in advanced mode" -msgstr "" +msgstr "Ne liste pas les noms de nets qui correspondent à ce texte, en mode avancé" -#: pcbnew/dialog_zones_by_polygon.cpp:501 +#: pcbnew/dialog_zones_by_polygon.cpp:248 +msgid "Zone clearance value:" +msgstr "Valeur isolation zone:" + +#: pcbnew/dialog_zones_by_polygon.cpp:251 +msgid "Grid :" +msgstr "Grille:" + +#: pcbnew/dialog_zones_by_polygon.cpp:506 msgid "Error : you must choose a layer" msgstr "Erreur. Vous devez choisir une couche" -#: pcbnew/dialog_zones_by_polygon.cpp:510 +#: pcbnew/dialog_zones_by_polygon.cpp:515 msgid "Error : you must choose a net name" msgstr "Erreur. Vous devez choisir une équipotentielle" -#: pcbnew/initpcb.cpp:125 -msgid "Current Board will be lost ?" -msgstr "Le C.I. courant sera perdu ?" +#: pcbnew/class_board.cpp:427 +msgid "Nodes" +msgstr "Nodes" -#: pcbnew/initpcb.cpp:215 -msgid "Delete Zones ?" -msgstr "Effacer Zones ?" +#: pcbnew/class_board.cpp:430 +msgid "Links" +msgstr "Liens" -#: pcbnew/initpcb.cpp:243 -msgid "Delete Board edges ?" -msgstr "Effacement contour PCB" +#: pcbnew/class_board.cpp:433 +msgid "Nets" +msgstr "Nets" -#: pcbnew/initpcb.cpp:248 -msgid "Delete draw items?" -msgstr "Suppression éléments graphiques?" +#: pcbnew/class_board.cpp:436 +msgid "Connect" +msgstr "Connect" -#: pcbnew/initpcb.cpp:290 -#: gerbview/initpcb.cpp:150 -msgid "Delete Tracks?" -msgstr "Effacer Pistes ?" - -#: pcbnew/initpcb.cpp:313 -msgid "Delete Modules?" -msgstr "Effacement des Modules?" - -#: pcbnew/initpcb.cpp:336 -#: gerbview/initpcb.cpp:173 -msgid "Delete Pcb Texts" -msgstr "Effacer Textes Pcb" +#: pcbnew/class_board.cpp:439 +#: eeschema/eelayer.h:116 +msgid "NoConn" +msgstr "Non Conn" #: pcbnew/sel_layer.cpp:92 msgid "Select Layer:" @@ -4305,14 +4201,114 @@ msgstr "Change Per msgid "Change Orient" msgstr "Change Orientation" -#: pcbnew/zone_filling_algorithm.cpp:155 +#: pcbnew/zone_filling_algorithm.cpp:163 msgid "No pads or starting point found to fill this zone outline" msgstr "Pas de pads ou de points de départ pour remplir ce contour de zone" -#: pcbnew/zone_filling_algorithm.cpp:193 +#: pcbnew/zone_filling_algorithm.cpp:205 msgid "Ok" msgstr "Ok" +#: pcbnew/class_pad.cpp:795 +msgid "Unknown Pad shape" +msgstr "Forme pad inconnue" + +#: pcbnew/class_pad.cpp:884 +msgid "RefP" +msgstr "RefP" + +#: pcbnew/class_pad.cpp:1001 +msgid "Drill X / Y" +msgstr "Perçage X/Y" + +#: pcbnew/class_pad.cpp:1016 +msgid "X Pos" +msgstr "X Pos" + +#: pcbnew/class_pad.cpp:1020 +msgid "Y pos" +msgstr "Y pos" + +#: pcbnew/class_drawsegment.cpp:161 +msgid "Shape" +msgstr "Forme" + +#: pcbnew/class_drawsegment.cpp:168 +msgid " Arc " +msgstr " Arc " + +#: pcbnew/export_gencad.cpp:69 +msgid "GenCAD file:" +msgstr "Fichier GenCAD:" + +#: pcbnew/dialog_track_options.cpp:151 +msgid "Vias:" +msgstr "Vias:" + +#: pcbnew/dialog_track_options.cpp:160 +msgid "Via Size" +msgstr "Diametre Via" + +#: pcbnew/dialog_track_options.cpp:176 +msgid "Default Via Drill" +msgstr "Perçage vias par défaut" + +#: pcbnew/dialog_track_options.cpp:192 +msgid "Alternate Via Drill" +msgstr "Perçage vias alternatif" + +#: pcbnew/dialog_track_options.cpp:208 +#: pcbnew/pcbnew.h:291 +msgid "Through Via" +msgstr "Via Traversante" + +#: pcbnew/dialog_track_options.cpp:209 +msgid "Blind or Buried Via " +msgstr "Via enterrée ou Aveugle" + +#: pcbnew/dialog_track_options.cpp:212 +msgid "Default Via Type" +msgstr "Via par Défaut" + +#: pcbnew/dialog_track_options.cpp:223 +#: pcbnew/dialog_gendrill.cpp:270 +msgid "Micro Vias:" +msgstr "Micro Vias:" + +#: pcbnew/dialog_track_options.cpp:232 +msgid "Micro Via Size" +msgstr "Diametre Micro Via" + +#: pcbnew/dialog_track_options.cpp:245 +msgid "Micro Via Drill" +msgstr "Perçage Micro Via" + +#: pcbnew/dialog_track_options.cpp:260 +msgid "Allows Micro Vias" +msgstr "Autorise Micro Vias" + +#: pcbnew/dialog_track_options.cpp:265 +#: pcbnew/dialog_track_options.cpp:268 +msgid "" +"Allows use of micro vias\n" +"They are very small vias only from an external copper layer to its near neightbour\n" +msgstr "" +"Autorise l'utilisation de micro vias\n" +"Ce sont de petites vias allant d'une couche externe a la plus proche couche interne uniquement\n" + +#: pcbnew/dialog_track_options.cpp:276 +msgid "Track Width" +msgstr "Epais. Piste" + +#: pcbnew/dialog_track_options.cpp:290 +#: pcbnew/dialog_drc.cpp:439 +msgid "Clearance" +msgstr "Isolation" + +#: pcbnew/dialog_track_options.cpp:304 +msgid "Mask clearance" +msgstr "Retrait Masque" + #: pcbnew/find.cpp:114 msgid "Marker found" msgstr "Marqueur trouvé" @@ -4352,35 +4348,6 @@ msgstr "Chercher Marqueur" msgid "Find Next Marker" msgstr "Marqueur Suivant" -#: pcbnew/class_board.cpp:415 -msgid "Nodes" -msgstr "Nodes" - -#: pcbnew/class_board.cpp:418 -msgid "Links" -msgstr "Liens" - -#: pcbnew/class_board.cpp:421 -msgid "Nets" -msgstr "Nets" - -#: pcbnew/class_board.cpp:424 -msgid "Connect" -msgstr "Connect" - -#: pcbnew/class_board.cpp:427 -#: eeschema/eelayer.h:116 -msgid "NoConn" -msgstr "Non Conn" - -#: pcbnew/class_drawsegment.cpp:161 -msgid "Shape" -msgstr "Forme" - -#: pcbnew/class_drawsegment.cpp:168 -msgid " Arc " -msgstr " Arc " - #: pcbnew/menubarpcb.cpp:42 msgid "Load Board Ctrl-O" msgstr "Charger Circuit Imprimé (Ctrl O)" @@ -4956,6 +4923,10 @@ msgstr "Fichier rapport termin msgid "DRC Report file" msgstr "Fichier rapport de contrôle DRC:" +#: pcbnew/specctra_export.cpp:52 +msgid "Specctra DSN file:" +msgstr "Fichier Specctra DSN" + #: pcbnew/gen_drill_report_files.cpp:388 msgid "" " Drill map: Too many diameter values to draw to draw one symbol per drill value (max 13)\n" @@ -4973,11 +4944,11 @@ msgstr "Netcode" msgid "Netname" msgstr "NetName" -#: pcbnew/class_zone.cpp:516 +#: pcbnew/class_zone.cpp:527 msgid "Corners" msgstr "Sommets" -#: pcbnew/class_zone.cpp:520 +#: pcbnew/class_zone.cpp:531 msgid "Hatch lines" msgstr "Lignes de Hachure" @@ -10031,11 +10002,6 @@ msgstr "S msgid "grid user" msgstr "grille user" -#: pcbnew/zones.h:59 -#: pcbnew/dialog_zones_by_polygon.h:53 -msgid "Fill Zones Options" -msgstr "Options de remplissage de Zone" - #: pcbnew/gen_self.h:217 msgid "Length(inch):" msgstr "Longueur (pouces):" @@ -10156,6 +10122,10 @@ msgstr "Afficher Modules Cmp" msgid "Show Modules Cu" msgstr "Afficher Modules Cu" +#: pcbnew/dialog_zones_by_polygon.h:53 +msgid "Fill Zones Options" +msgstr "Options de remplissage de Zone" + #: pcbnew/dialog_gendrill.h:50 msgid "WinEDA_DrillFrame" msgstr "WinEDA_DrillFrame" diff --git a/kicad/CMakeLists.txt b/kicad/CMakeLists.txt index b0e91e2b58..01ddbae1e6 100644 --- a/kicad/CMakeLists.txt +++ b/kicad/CMakeLists.txt @@ -17,7 +17,7 @@ IF(WIN32) IF(MINGW) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o - COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR}} -I ${wxWidgets_ROOT_DIR}/include -i ${CMAKE_CURRENT_SOURCE_DIR}/kicad.rc -o ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o) SET(KICAD_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o) diff --git a/nsis_win_installer/install.nsi b/nsis_win_installer/install.nsi index bb6ff821ba..88c8244ebf 100644 --- a/nsis_win_installer/install.nsi +++ b/nsis_win_installer/install.nsi @@ -17,8 +17,8 @@ ; General Product Description Definitions !define PRODUCT_NAME "KiCad" -!define PRODUCT_VERSION "2007.07.09" -!define PRODUCT_WEB_SITE "http://www.lis.inpg.fr/realise_au_lis/kicad/" +!define PRODUCT_VERSION "2008.01.25" +!define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/" !define COMPANY_NAME "" !define TRADE_MARKS "" !define COPYRIGHT "Jean-Pierre Charras" @@ -272,4 +272,4 @@ Function CheckAlreadyInstalled StrCmp $R0 "" +3 MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION $(ALREADY_INSTALLED) /SD IDOK IDOK +2 Abort -FunctionEnd \ No newline at end of file +FunctionEnd diff --git a/pcbnew/CMakeLists.txt b/pcbnew/CMakeLists.txt index 82df4bf3e8..6ec3d006f5 100644 --- a/pcbnew/CMakeLists.txt +++ b/pcbnew/CMakeLists.txt @@ -153,7 +153,7 @@ IF(WIN32) IF(MINGW) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o - COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND windres.exe -I ${CMAKE_CURRENT_SOURCE_DIR}} -I ${wxWidgets_ROOT_DIR}/include -i ${CMAKE_CURRENT_SOURCE_DIR}/pcbnew.rc -o ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o) SET(PCBNEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o) diff --git a/pcbnew/class_pad.h b/pcbnew/class_pad.h index efed1c5a1a..9090925576 100644 --- a/pcbnew/class_pad.h +++ b/pcbnew/class_pad.h @@ -11,9 +11,9 @@ class Pcb3D_GLCanvas; class D_PAD : public BOARD_ITEM { private: - int m_NetCode; // Net number for fast comparisons + int m_NetCode; // Net number for fast comparisons + - public: wxPoint m_Pos; // pad Position on board @@ -27,7 +27,7 @@ public: wxString m_Netname; /* Net Name */ - int m_Masque_Layer; // Bitwise layer :1= copper layer, 15= cmp, + int m_Masque_Layer; // Bitwise layer :1= copper layer, 15= cmp, // 2..14 = internal layers // 16 .. 31 = technical layers @@ -37,7 +37,19 @@ public: wxSize m_Drill; // Drill diam (drill shape = PAD_CIRCLE) or drill size(shape = OVAL) // for drill shape = PAD_CIRCLE, drill diam = m_Drill.x - wxSize m_Offset; // Offset de la forme (pastilles excentrees) + wxSize m_Offset; /*This parameter is usefull only for oblong pads (it can be used for other + * shapes, but without any interest). + * this is the offset between the pad hole and the pad shape (you must + * understand here pad shape = copper area around the hole) + * Most of cases, the hole is the centre of the shape (m_Offset = 0). + * But some board designers use oblong pads with a hole moved to one of the + * oblong pad shape ends. + * In all cases the pad position is the pad hole. + * The physical shape position (used to draw it for instance) is pad + * position (m_Pos) + m_Offset. + * D_PAD::ReturnShapePos() returns the physical shape position according to + * the offset and the pad rotation.*/ + wxSize m_Size; // X and Y size ( relative to orient 0) wxSize m_DeltaSize; // delta sur formes rectangle -> trapezes @@ -54,6 +66,9 @@ public: int m_physical_connexion; // variable used in rastnest computations // handle block number in track connection + int m_zone_connexion; // variable used in rastnest computations + // handle block number in zone connection + public: D_PAD( MODULE* parent ); D_PAD( D_PAD* pad ); @@ -72,58 +87,59 @@ public: { return m_Pos; } + + void SetPosition( const wxPoint& aPos ) { m_Pos = aPos; } - - + + /* remove from linked list */ void UnLink(); /* Reading and writing data on files */ int ReadDescr( FILE* File, int* LineNum = NULL ); - + /** * Function Save * 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. - */ - bool Save( FILE* aFile ) const; - + */ + bool Save( FILE* aFile ) const; + - /* drawing functions */ void Draw( WinEDA_DrawPanel* panel, wxDC* DC, const wxPoint& offset, int draw_mode ); void Draw3D( Pcb3D_GLCanvas* glcanvas ); // others void SetPadName( const wxString& name ); // Change pad name - wxString ReturnStringPadName(); // Return pad name as string in a wxString + wxString ReturnStringPadName(); // Return pad name as string in a wxString void ReturnStringPadName( wxString& text ); // Return pad name as string in a buffer - void ComputeRayon(); // compute m_Rayon, rayon du cercle exinscrit - const wxPoint ReturnShapePos(); // retourne la position + void ComputeRayon(); // compute m_Rayon, rayon du cercle exinscrit + const wxPoint ReturnShapePos(); // retourne la position + - /** * Function GetNet * @return int - the netcode */ int GetNet() const { return m_NetCode; } void SetNet( int aNetCode ) { m_NetCode = aNetCode; } - - + + /** * Function Display_Infos * has knowledge about the frame and how and where to put status information * about this object into the frame's message panel. * Is virtual from EDA_BaseStruct. * @param frame A WinEDA_DrawFrame in which to print status information. - */ + */ void Display_Infos( WinEDA_DrawFrame* frame ); - + /** * Function IsOnLayer * tests to see if this object is on the given layer. Is virtual so @@ -132,9 +148,9 @@ public: * @param aLayer The layer to test for. * @return bool - true if on given layer, else false. */ - bool IsOnLayer( int aLayer ) const; + bool IsOnLayer( int aLayer ) const; + - /** * Function HitTest * tests if the given wxPoint is within the bounds of this object. @@ -152,17 +168,18 @@ public: { return wxT( "PAD" ); } - - + + /** * Function Compare * compares two pads and return 0 if they are equal. * @return int - <0 if left less than right, 0 if equal, >0 if left greater than right. */ - static int Compare( const D_PAD* padref, const D_PAD* padcmp ); + static int Compare( const D_PAD* padref, const D_PAD* padcmp ); #if defined (DEBUG) + /** * Function Show * is used to output the object tree, currently for debugging only. diff --git a/pcbnew/classpcb.cpp b/pcbnew/classpcb.cpp index 366efbde58..8f29076f77 100644 --- a/pcbnew/classpcb.cpp +++ b/pcbnew/classpcb.cpp @@ -127,7 +127,7 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings() // Default values for designing boards { int ii; - + static const int default_layer_color[32] = { GREEN, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, @@ -146,11 +146,16 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings() LIGHTGRAY }; - m_CopperLayerCount = 2; // Default design is a double sided board - m_ViaDrill = 250; // via drill (for the entire board) - m_CurrentViaSize = 450; // Current via size - m_CurrentViaType = VIA_THROUGH; /* via type (BLIND, TROUGHT ...), bits 1 and 2 (not 0 and 1)*/ - m_CurrentTrackWidth = 170; // current track width + m_CopperLayerCount = 2; // Default design is a double sided board + m_ViaDrill = 250; // defualt via drill (for the entire board) + m_ViaDrillCustomValue = 250; // via drill for vias which must have a defined drill value + m_CurrentViaSize = 450; // Current via size + m_CurrentViaType = VIA_THROUGH; // via type (VIA_BLIND_BURIED, VIA_TROUGHT VIA_MICROVIA) + m_CurrentTrackWidth = 170; // current track width + m_UseConnectedTrackWidth = false; // if true, when creating a new track starting on an existing track, use this track width + m_MicroViaDrill = 50; // micro via drill (for the entire board) + m_CurrentMicroViaSize = 150; // Current micro via size + m_MicroViasAllowed = false; // true to allow micro vias for( ii = 0; ii < HISTORY_NUMBER; ii++ ) { m_TrackWidthHistory[ii] = 0; // Last HISTORY_NUMBER used track widths diff --git a/pcbnew/dialog_track_options.cpp b/pcbnew/dialog_track_options.cpp index 7e2a9199bd..a4cdb9fd9d 100644 --- a/pcbnew/dialog_track_options.cpp +++ b/pcbnew/dialog_track_options.cpp @@ -399,7 +399,7 @@ void WinEDA_PcbTracksDialog::SetDisplayValue() Internal_Unit ); PutValueInLocalUnits( *m_OptViaDrill, g_DesignSettings.m_ViaDrill, Internal_Unit ); PutValueInLocalUnits( *m_MicroViaDrillCtrl, g_DesignSettings.m_MicroViaDrill, Internal_Unit ); - PutValueInLocalUnits( *m_OptCustomViaDrill, g_ViaHoleLastValue, Internal_Unit ); + PutValueInLocalUnits( *m_OptCustomViaDrill, g_DesignSettings.m_ViaDrillCustomValue, Internal_Unit ); PutValueInLocalUnits( *m_OptTrackWidth, g_DesignSettings.m_CurrentTrackWidth, Internal_Unit ); PutValueInLocalUnits( *m_OptTrackClearance, g_DesignSettings.m_TrackClearence, Internal_Unit ); PutValueInLocalUnits( *m_OptMaskMargin, g_DesignSettings.m_MaskMargin, Internal_Unit ); @@ -431,7 +431,7 @@ void WinEDA_PcbTracksDialog::AcceptPcbOptions( wxCommandEvent& event ) ReturnValueFromTextCtrl( *m_MicroViaDrillCtrl, m_Parent->m_InternalUnits ); g_DesignSettings.m_ViaDrill = ReturnValueFromTextCtrl( *m_OptViaDrill, m_Parent->m_InternalUnits ); - g_ViaHoleLastValue = + g_DesignSettings.m_ViaDrillCustomValue = ReturnValueFromTextCtrl( *m_OptCustomViaDrill, m_Parent->m_InternalUnits ); g_DesignSettings.m_MicroViasAllowed = m_AllowMicroViaCtrl->IsChecked(); diff --git a/pcbnew/edit.cpp b/pcbnew/edit.cpp index e6a127e0af..7e71e4d457 100644 --- a/pcbnew/edit.cpp +++ b/pcbnew/edit.cpp @@ -84,6 +84,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_SELECT_LAYER_PAIR: case ID_POPUP_PCB_SELECT_NO_CU_LAYER: case ID_POPUP_PCB_SELECT_WIDTH: + case ID_POPUP_PCB_SELECT_AUTO_WIDTH: + case ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH: case ID_POPUP_PCB_SELECT_WIDTH1: case ID_POPUP_PCB_SELECT_WIDTH2: case ID_POPUP_PCB_SELECT_WIDTH3: @@ -339,7 +341,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) GetScreen()->SetModify(); break; - case ID_POPUP_PCB_EDIT_NET: + case ID_POPUP_PCB_EDIT_NET: if( GetCurItem() == NULL ) break; Edit_Net_Width( &dc, ( (TRACK*) GetCurItem() )->GetNet() ); @@ -833,7 +835,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) DisplayTrackSettings(); m_SelTrackWidthBox_Changed = FALSE; m_SelViaSizeBox_Changed = FALSE; - } + g_DesignSettings.m_UseConnectedTrackWidth = false; + } break; case ID_POPUP_PCB_SELECT_WIDTH1: @@ -845,6 +848,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_SELECT_WIDTH7: case ID_POPUP_PCB_SELECT_WIDTH8: DrawPanel->MouseToCursorSchema(); + g_DesignSettings.m_UseConnectedTrackWidth = false; { int ii = id - ID_POPUP_PCB_SELECT_WIDTH1; g_DesignSettings.m_CurrentTrackWidth = g_DesignSettings.m_TrackWidthHistory[ii]; @@ -852,6 +856,15 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) } break; + case ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH: + g_DesignSettings.m_UseConnectedTrackWidth = not g_DesignSettings.m_UseConnectedTrackWidth; + break; + + case ID_POPUP_PCB_SELECT_AUTO_WIDTH: + DrawPanel->MouseToCursorSchema(); + g_DesignSettings.m_UseConnectedTrackWidth = true; + break; + case ID_POPUP_PCB_SELECT_VIASIZE: break; diff --git a/pcbnew/editrack.cpp b/pcbnew/editrack.cpp index 05402060c0..3937b24e20 100644 --- a/pcbnew/editrack.cpp +++ b/pcbnew/editrack.cpp @@ -44,7 +44,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC ) ShowNewTrackWhenMovingCursor( Panel, DC, FALSE ); if( g_HightLigt_Status ) frame->Hight_Light( DC ); - + g_HightLigth_NetCode = OldNetCodeSurbrillance; if( OldEtatSurbrillance ) frame->Hight_Light( DC ); @@ -59,7 +59,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC ) delete track; } } - + Panel->ManageCurseur = NULL; Panel->ForceCloseManageCurseur = NULL; frame->SetCurItem( NULL ); @@ -73,7 +73,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) /* * Routine d'initialisation d'un trace de piste et/ou de mise en place d'un * nouveau point piste - * + * * Si pas de piste en cours de trace: * - Recherche de netname de la nouvelle piste ( pad de depart out netname * de la piste si depart sur une ancienne piste @@ -84,58 +84,69 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) * - si DRC OK : addition d'un nouveau point piste */ { - D_PAD* pt_pad = NULL; - TRACK* adr_buf = NULL, * Track; + D_PAD* pt_pad = NULL; + TRACK* TrackOnStartPoint = NULL, * Track; int masquelayer = g_TabOneLayerMask[GetScreen()->m_Active_Layer]; EDA_BaseStruct* LockPoint; wxPoint pos = GetScreen()->m_Curseur; + static int InitialTrackWidthValue; /* first track segment width. + * used when we are in the auto tack width mode */ DrawPanel->ManageCurseur = ShowNewTrackWhenMovingCursor; DrawPanel->ForceCloseManageCurseur = Exit_Editrack; - if( track == NULL ) /* debut reel du trace */ + if( track == NULL ) /* Starting a new track */ { - /* effacement surbrillance ancienne */ + /* undrw old hightlight */ OldNetCodeSurbrillance = g_HightLigth_NetCode; OldEtatSurbrillance = g_HightLigt_Status; if( g_HightLigt_Status ) Hight_Light( DC ); - g_FirstTrackSegment = g_CurrentTrackSegment = new TRACK( m_Pcb ); + InitialTrackWidthValue = -1; // Set to "no value" + g_FirstTrackSegment = g_CurrentTrackSegment = new TRACK( m_Pcb ); g_CurrentTrackSegment->m_Flags = IS_NEW; g_TrackSegmentCount = 1; g_HightLigth_NetCode = 0; - /* Localisation de la pastille de reference de la piste: */ + /* Search for a pad at starting point of the new track: */ LockPoint = LocateLockPoint( m_Pcb, pos, masquelayer ); - if( LockPoint ) + if( LockPoint ) // An item (pad or track) is found { if( LockPoint->Type() == TYPEPAD ) { pt_pad = (D_PAD*) LockPoint; - - /* le debut de la piste est remis sur le centre du pad */ + + /* A pad is found: put the starting point on pad centre */ pos = pt_pad->m_Pos; g_HightLigth_NetCode = pt_pad->GetNet(); } - else /* le point d'accrochage est un segment */ + else /* A track segment is found */ { - adr_buf = (TRACK*) LockPoint; - g_HightLigth_NetCode = adr_buf->GetNet(); - CreateLockPoint( &pos.x, &pos.y, adr_buf, NULL ); + TrackOnStartPoint = (TRACK*) LockPoint; + g_HightLigth_NetCode = TrackOnStartPoint->GetNet(); + CreateLockPoint( &pos.x, &pos.y, TrackOnStartPoint, NULL ); } } build_ratsnest_pad( LockPoint, wxPoint( 0, 0 ), TRUE ); Hight_Light( DC ); - g_CurrentTrackSegment->m_Flags = IS_NEW; + g_CurrentTrackSegment->m_Flags = IS_NEW; g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer ); - g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; - g_CurrentTrackSegment->m_Start = pos; - g_CurrentTrackSegment->m_End = g_CurrentTrackSegment->m_Start; + g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; + if( g_DesignSettings.m_UseConnectedTrackWidth ) + { + if( TrackOnStartPoint && TrackOnStartPoint->Type() == TYPETRACK ) + { + InitialTrackWidthValue = TrackOnStartPoint->m_Width; + g_CurrentTrackSegment->m_Width = InitialTrackWidthValue; + } + } + g_CurrentTrackSegment->m_Start = pos; + g_CurrentTrackSegment->m_End = g_CurrentTrackSegment->m_Start; g_CurrentTrackSegment->SetNet( g_HightLigth_NetCode ); if( pt_pad ) { @@ -143,10 +154,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) g_CurrentTrackSegment->SetState( BEGIN_ONPAD, ON ); } else - g_CurrentTrackSegment->start = adr_buf; + g_CurrentTrackSegment->start = TrackOnStartPoint; if( g_TwoSegmentTrackBuild ) - { + { // Create 2 segments g_CurrentTrackSegment = g_CurrentTrackSegment->Copy(); g_TrackSegmentCount++; @@ -159,7 +170,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) g_CurrentTrackSegment->Display_Infos( this ); SetCurItem( g_CurrentTrackSegment ); DrawPanel->ManageCurseur( DrawPanel, DC, FALSE ); - + if( Drc_On ) { if( BAD_DRC == m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track ) ) @@ -175,7 +186,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) { if( BAD_DRC == m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track ) ) return NULL; - + if( g_TwoSegmentTrackBuild // We must handle 2 segments && g_CurrentTrackSegment->Back() ) { @@ -220,7 +231,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) g_TrackSegmentCount++; g_CurrentTrackSegment->m_Start = g_CurrentTrackSegment->m_End; g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer ); - g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; + if( !g_DesignSettings.m_UseConnectedTrackWidth ) + { + g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; + } /* Show the new position */ ShowNewTrackWhenMovingCursor( DrawPanel, DC, FALSE ); } @@ -238,7 +252,7 @@ int WinEDA_PcbFrame::Add_45_degrees_Segment( wxDC* DC, TRACK* pt_segm ) /* rectifie un virage a 90 et le modifie par 2 coudes a 45 * n'opere que sur des segments horizontaux ou verticaux. - * + * * entree : pointeur sur le segment qui vient d'etre trace * On suppose que le segment precedent est celui qui a ete * precedement trace @@ -279,7 +293,7 @@ int WinEDA_PcbFrame::Add_45_degrees_Segment( wxDC* DC, TRACK* pt_segm ) // les segments doivent etre de longueur suffisante: if( MAX( abs( dx0 ), abs( dy0 ) ) < (pas_45 * 2) ) return 0; - + if( MAX( abs( dx1 ), abs( dy1 ) ) < (pas_45 * 2) ) return 0; @@ -382,7 +396,7 @@ void WinEDA_PcbFrame::End_Route( TRACK* track, wxDC* DC ) if( track == NULL ) return; - if( Drc_On && BAD_DRC==m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track) ) + if( Drc_On && BAD_DRC==m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track ) ) return; /* Sauvegarde des coord du point terminal de la piste */ @@ -512,15 +526,17 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase /* dessin de la nouvelle piste : mise a jour du point d'arrivee */ g_CurrentTrackSegment->SetLayer( screen->m_Active_Layer ); - g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; + if( ! g_DesignSettings.m_UseConnectedTrackWidth ) + g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; if( g_TwoSegmentTrackBuild ) { TRACK* previous_track = (TRACK*) g_CurrentTrackSegment->Pback; if( previous_track && (previous_track->Type() == TYPETRACK) ) { previous_track->SetLayer( screen->m_Active_Layer ); - previous_track->m_Width = g_DesignSettings.m_CurrentTrackWidth; - } + if( ! g_DesignSettings.m_UseConnectedTrackWidth ) + previous_track->m_Width = g_DesignSettings.m_CurrentTrackWidth; + } } if( Track_45_Only ) @@ -713,10 +729,10 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount ) * return a pointer on the first segment (start of track list) */ { - TRACK* firsttrack = track; - TRACK* oldtrack; - int nn = 0; - BOARD_ITEM* LockPoint; + TRACK* firsttrack = track; + TRACK* oldtrack; + int nn = 0; + BOARD_ITEM* LockPoint; if( track == 0 ) return NULL; @@ -742,7 +758,7 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount ) *segmcount = nn; if( nn == 0 ) - return NULL; // all the new track segments have been deleted + return NULL; // all the new track segments have been deleted // we must set the pointers on connected items and the connection status @@ -802,7 +818,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad ) TRACK* lasttrack = g_CurrentTrackSegment; if( !g_CurrentTrackSegment->IsNull() ) - { + { /* Must create a new segment, from track end to pad center */ g_CurrentTrackSegment = lasttrack->Copy(); g_TrackSegmentCount++; @@ -810,7 +826,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad ) g_CurrentTrackSegment->Pback = lasttrack; lasttrack->end = g_CurrentTrackSegment; } - + g_CurrentTrackSegment->m_End = Pad->m_Pos; g_CurrentTrackSegment->SetState( END_ONPAD, OFF ); diff --git a/pcbnew/modedit_onclick.cpp b/pcbnew/modedit_onclick.cpp index 50985bd8da..1a398216dd 100644 --- a/pcbnew/modedit_onclick.cpp +++ b/pcbnew/modedit_onclick.cpp @@ -23,7 +23,6 @@ #include "Global_Options_Pad.xpm" #include "Delete_Pad.xpm" #include "Export_Options_Pad.xpm" -#include "Width_Segment.xpm" #include "Select_Layer_Pair.xpm" /*************************************************************************/ diff --git a/pcbnew/onrightclick.cpp b/pcbnew/onrightclick.cpp index 1cc94668fb..4bb0cc4d07 100644 --- a/pcbnew/onrightclick.cpp +++ b/pcbnew/onrightclick.cpp @@ -47,7 +47,6 @@ #include "Select_W_Layer.xpm" #include "Width_Track.xpm" #include "Width_Vias.xpm" -#include "Width_Segment.xpm" #include "Width_Net.xpm" #include "Width_Track_Via.xpm" #include "Select_Layer_Pair.xpm" @@ -71,6 +70,16 @@ static wxMenu* Append_Track_Width_List() double value; trackwidth_menu = new wxMenu; + + trackwidth_menu->Append( ID_POPUP_PCB_SELECT_AUTO_WIDTH, + _( "Auto Width" ), + _( + "Use the track width when starting on a track, otherwise the current track width" ), + TRUE ); + + if( g_DesignSettings.m_UseConnectedTrackWidth ) + trackwidth_menu->Check( ID_POPUP_PCB_SELECT_AUTO_WIDTH, TRUE ); + for( ii = 0; (ii < HISTORY_NUMBER) && (ii < TRACK_HISTORY_NUMBER_MAX); ii++ ) { if( g_DesignSettings.m_TrackWidthHistory[ii] == 0 ) @@ -84,7 +93,9 @@ static wxMenu* Append_Track_Width_List() msg.Printf( _( "Track %.3f" ), value ); trackwidth_menu->Append( ID_POPUP_PCB_SELECT_WIDTH1 + ii, msg, wxEmptyString, TRUE ); - if( g_DesignSettings.m_TrackWidthHistory[ii] == g_DesignSettings.m_CurrentTrackWidth ) + + if( (g_DesignSettings.m_TrackWidthHistory[ii] == g_DesignSettings.m_CurrentTrackWidth) + && ! g_DesignSettings.m_UseConnectedTrackWidth ) trackwidth_menu->Check( ID_POPUP_PCB_SELECT_WIDTH1 + ii, TRUE ); } @@ -172,12 +183,12 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) // printf( "cursor=(%d, %d) select=(%d,%d)\n", cursorPos.x, cursorPos.y, selectPos.x, selectPos.y ); /* We can reselect another item only if there are no item being edited - * because ALL moving functions use GetCurItem(), therefore GetCurItem() - * must return the same item during moving. We know an item is moving - * if( item && (item->m_Flags != 0)) is true and after calling - * PcbGeneralLocateAndDisplay(), GetCurItem() is any arbitrary BOARD_ITEM, - * not the current item being edited. In such case we cannot call - * PcbGeneralLocateAndDisplay(). + * because ALL moving functions use GetCurItem(), therefore GetCurItem() + * must return the same item during moving. We know an item is moving + * if( item && (item->m_Flags != 0)) is true and after calling + * PcbGeneralLocateAndDisplay(), GetCurItem() is any arbitrary BOARD_ITEM, + * not the current item being edited. In such case we cannot call + * PcbGeneralLocateAndDisplay(). */ if( !item || (item->m_Flags == 0) ) { @@ -329,7 +340,7 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) wxT( "WinEDA_PcbFrame::OnRightClick() Error: illegal DrawType %d" ), item->Type() ); DisplayError( this, msg ); - SetCurItem(NULL); + SetCurItem( NULL ); break; default: @@ -337,9 +348,10 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) wxT( "WinEDA_PcbFrame::OnRightClick() Error: unknown DrawType %d" ), item->Type() ); DisplayError( this, msg ); - // Attempt to clear error (but should no occurs ) - if ( item->Type() >= MAX_STRUCT_TYPE_ID ) - SetCurItem(NULL); + + // Attempt to clear error (but should no occurs ) + if( item->Type() >= MAX_STRUCT_TYPE_ID ) + SetCurItem( NULL ); break; } @@ -509,21 +521,26 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu ) ID_POPUP_PCB_VIA_EDITING, _( "Edit Via" ), edit_xpm ); ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_DEFAULT, _( "Set via hole to Default" ), apply_xpm ); - ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_VALUE, _( - "Set via hole to alt value" ), options_new_pad_xpm ); - ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_ENTER_VALUE, - _( "Set the via hole alt value" ), edit_xpm ); + msg = _( "Set via hole to a specific value. This specfic value is currently" ); + msg << wxT(" ") << ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_ViaDrillCustomValue, m_InternalUnits ); + ADD_MENUITEM_WITH_HELP( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_VALUE, + _( "Set via hole to alt value" ), msg, + options_new_pad_xpm ); + msg = _( "Set alt via hole value. This value is currently" ); + msg << wxT(" ") << ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_ViaDrillCustomValue, m_InternalUnits ); + ADD_MENUITEM_WITH_HELP( via_mnu, ID_POPUP_PCB_VIA_HOLE_ENTER_VALUE, + _( "Set the via hole alt value" ), msg, edit_xpm ); ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_EXPORT, _( "Export Via hole to alt value" ), Export_Options_Pad_xpm ); ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS, _( "Export via hole to others id vias" ), global_options_pad_xpm ); ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_RESET_TO_DEFAULT, _( "Set ALL via holes to default" ), apply_xpm ); - if( ! Track->IsDrillDefault() ) + if( !Track->IsDrillDefault() ) { via_mnu->Enable( ID_POPUP_PCB_VIA_HOLE_EXPORT, FALSE ); } - if( g_ViaHoleLastValue <= 0 ) + if( g_DesignSettings.m_ViaDrillCustomValue <= 0 ) via_mnu->Enable( ID_POPUP_PCB_VIA_HOLE_TO_VALUE, FALSE ); } else @@ -563,24 +580,27 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu ) } msg = AddHotkeyName( _( "Place Via" ), s_Board_Editor_Hokeys_Descr, HK_ADD_VIA ); PopMenu->Append( ID_POPUP_PCB_PLACE_VIA, msg ); - // See if we can place a Micro Via (4 or more layers, and start from an external layer): - if ( GetScreen()->IsMicroViaAcceptable() ) - { - msg = AddHotkeyName( _( "Place Micro Via" ), s_Board_Editor_Hokeys_Descr, HK_ADD_MICROVIA ); - PopMenu->Append( ID_POPUP_PCB_PLACE_MICROVIA, msg ); - } + + // See if we can place a Micro Via (4 or more layers, and start from an external layer): + if( GetScreen()->IsMicroViaAcceptable() ) + { + msg = AddHotkeyName( _( + "Place Micro Via" ), s_Board_Editor_Hokeys_Descr, + HK_ADD_MICROVIA ); + PopMenu->Append( ID_POPUP_PCB_PLACE_MICROVIA, msg ); + } } // track Width control : - wxMenu* track_mnu = new wxMenu; - ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu, - ID_POPUP_PCB_EDIT_TRACK_MNU, _( "Change Width" ), width_track_xpm ); - ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_TRACKSEG, - Track->Type()==TYPEVIA ? _( "Edit Via" ) : _( - "Edit Segment" ), width_segment_xpm ); - - if( !flags ) + wxMenu* track_mnu; + if( !flags ) // track Width control : { + track_mnu = new wxMenu; + ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu, + ID_POPUP_PCB_EDIT_TRACK_MNU, _( "Change Width" ), width_track_xpm ); + ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_TRACKSEG, + Track->Type()==TYPEVIA ? _( "Edit Via" ) : _( "Edit Segment" ), width_segment_xpm ); + ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_TRACK, _( "Edit Track" ), width_track_xpm ); ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_NET, @@ -644,19 +664,19 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu { if( edge_zone->m_Flags ) { - if( (edge_zone->m_Flags & IN_EDIT ) ) - ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_CORNER, - _( "Place Corner" ), apply_xpm ); - else - ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_OUTLINES, - _( "Place Zone" ), apply_xpm ); + if( (edge_zone->m_Flags & IN_EDIT ) ) + ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_CORNER, + _( "Place Corner" ), apply_xpm ); + else + ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_OUTLINES, + _( "Place Zone" ), apply_xpm ); } else { - wxMenu * zones_menu = new wxMenu(); - ADD_MENUITEM_WITH_SUBMENU( aPopMenu, zones_menu, - -1, _( "Zones" ), add_zone_xpm ); - int index; + wxMenu* zones_menu = new wxMenu(); + ADD_MENUITEM_WITH_SUBMENU( aPopMenu, zones_menu, + -1, _( "Zones" ), add_zone_xpm ); + int index; if( ( index = edge_zone->HitTestForCorner( GetScreen()->RefPos( true ) ) ) >= 0 ) { ADD_MENUITEM( zones_menu, ID_POPUP_PCB_MOVE_ZONE_CORNER, @@ -688,10 +708,10 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu _( "Edit Zone Params" ), edit_xpm ); zones_menu->AppendSeparator(); - if ( index >= 0 && edge_zone->m_Poly->IsCutoutContour( edge_zone->m_CornerSelection ) ) - ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CUTOUT, - _( "Delete Cutout" ), delete_xpm ); - + if( index >= 0 && edge_zone->m_Poly->IsCutoutContour( edge_zone->m_CornerSelection ) ) + ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CUTOUT, + _( "Delete Cutout" ), delete_xpm ); + ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CONTAINER, _( "Delete Zone Outline" ), delete_xpm ); } diff --git a/pcbnew/pcbframe.cpp b/pcbnew/pcbframe.cpp index 4529392ae2..efc7a525fe 100644 --- a/pcbnew/pcbframe.cpp +++ b/pcbnew/pcbframe.cpp @@ -114,6 +114,7 @@ BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame ) EVT_TOOL( ID_GET_NETLIST, WinEDA_PcbFrame::Process_Special_Functions ) EVT_TOOL( ID_DRC_CONTROL, WinEDA_PcbFrame::Process_Special_Functions ) EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR, WinEDA_PcbFrame::Process_Special_Functions ) + EVT_TOOL( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH, WinEDA_PcbFrame::Process_Special_Functions ) EVT_KICAD_CHOICEBOX( ID_TOOLBARH_PCB_SELECT_LAYER, WinEDA_PcbFrame::Process_Special_Functions ) EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_TRACK_WIDTH, @@ -442,6 +443,8 @@ void WinEDA_PcbFrame::SetToolbars() if( m_AuxiliaryToolBar ) { wxString msg; + m_AuxiliaryToolBar->ToggleTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH, + g_DesignSettings.m_UseConnectedTrackWidth ); if( m_SelTrackWidthBox && m_SelTrackWidthBox_Changed ) { m_SelTrackWidthBox_Changed = FALSE; diff --git a/pcbnew/pcbnew.h b/pcbnew/pcbnew.h index 4a397db8e1..b499d93df0 100644 --- a/pcbnew/pcbnew.h +++ b/pcbnew/pcbnew.h @@ -294,8 +294,6 @@ eda_global wxString g_ViaType_Name[4] #endif ; -eda_global int g_ViaHoleLastValue; // Last value for non default value via hole - /* couleurs des autres items des empreintes */ #if defined MAIN int g_PadCMPColor = RED; diff --git a/pcbnew/tool_pcb.cpp b/pcbnew/tool_pcb.cpp index c05423279b..7c8cbfe093 100644 --- a/pcbnew/tool_pcb.cpp +++ b/pcbnew/tool_pcb.cpp @@ -35,7 +35,6 @@ #include "mw_Add_Line.xpm" #include "mw_Add_Gap.xpm" #include "mw_toolbar.xpm" -#include "Add_Tracks.xpm" #include "Show_Zone.xpm" #include "net_hightlight.xpm" #include "PcbOffset.xpm" @@ -282,7 +281,9 @@ void WinEDA_PcbFrame::ReCreateHToolbar() _( "auto zoom" ) ); m_HToolBar->AddSeparator(); - msg = AddHotkeyName( _( "Find components and texts" ), s_Board_Editor_Hokeys_Descr, HK_FIND_ITEM ); + msg = AddHotkeyName( _( + "Find components and texts" ), s_Board_Editor_Hokeys_Descr, + HK_FIND_ITEM ); m_HToolBar->AddTool( ID_FIND_ITEMS, wxEmptyString, BITMAP( find_xpm ), msg ); @@ -526,6 +527,12 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() /****************************************************/ /* Create auxiliary horizontal toolbar + * displays: + * existing track width choice + * selection for auto track width + * existing via size choice + * grid size choice + * zoom level choice */ { int ii; @@ -544,6 +551,13 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() m_AuxiliaryToolBar->AddControl( m_SelTrackWidthBox ); m_SelTrackWidthBox_Changed = TRUE; + m_AuxiliaryToolBar->AddTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH, + wxEmptyString, + BITMAP( auto_track_width_xpm ), + _( + "Auto track width: when starting on an existing track use its width\notherwise, use current width setting" ), + wxITEM_CHECK ); + m_AuxiliaryToolBar->AddSeparator(); m_SelViaSizeBox = new WinEDAChoiceBox( m_AuxiliaryToolBar, ID_AUX_TOOLBAR_PCB_VIA_SIZE, @@ -610,28 +624,29 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) /**************************************************************************/ { - int ii, jj, ll; - unsigned lenght = 0; - bool rebuild = FALSE; - long current_mask_layer; + int ii, jj, ll; + unsigned lenght = 0; + bool rebuild = FALSE; + long current_mask_layer; if( m_SelLayerBox == NULL ) { if( parent == NULL ) return NULL; - + m_SelLayerBox = new WinEDAChoiceBox( parent, ID_TOOLBARH_PCB_SELECT_LAYER, - - wxPoint( -1, -1 ), -#if defined(__UNIX__) - // Width enough for the longest string: "Component (Page Down)" - // Maybe that string is too long? - wxSize( 230, -1 ) + + wxPoint( -1, -1 ), +#if defined (__UNIX__) + + // Width enough for the longest string: "Component (Page Down)" + // Maybe that string is too long? + wxSize( 230, -1 ) #else - wxSize( LISTBOX_WIDTH+40, -1 ) + wxSize( LISTBOX_WIDTH + 40, -1 ) #endif - ); - + ); + parent->AddControl( m_SelLayerBox ); } @@ -654,8 +669,8 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) m_SelLayerBox->Clear(); for( ii = 0, jj = 0; ii <= EDGE_N; ii++ ) { - // List to append hotkeys in layer box selection - static int HK_SwitchLayer[EDGE_N+1] = { + // List to append hotkeys in layer box selection + static int HK_SwitchLayer[EDGE_N + 1] = { HK_SWITCH_LAYER_TO_COPPER, HK_SWITCH_LAYER_TO_INNER1, HK_SWITCH_LAYER_TO_INNER2, @@ -672,7 +687,7 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) HK_SWITCH_LAYER_TO_INNER13, HK_SWITCH_LAYER_TO_INNER14, HK_SWITCH_LAYER_TO_COMPONENT - }; + }; if( (g_TabOneLayerMask[ii] & Masque_Layer) ) { @@ -680,10 +695,11 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) msg = AddHotkeyName( msg, s_Board_Editor_Hokeys_Descr, HK_SwitchLayer[ii] ); m_SelLayerBox->Append( msg ); m_SelLayerBox->SetClientData( jj, (void*) ii ); - lenght = max(lenght, msg.Len() ); + lenght = max( lenght, msg.Len() ); jj++; } } + // Test me: // int lchar = m_SelLayerBox->GetFont().GetPointSize(); // m_SelLayerBox->SetSize(wxSize(lenght * lchar,-1)); diff --git a/pcbnew/via_edit.cpp b/pcbnew/via_edit.cpp index d879f0672a..fe4cab67a6 100644 --- a/pcbnew/via_edit.cpp +++ b/pcbnew/via_edit.cpp @@ -43,10 +43,10 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxDC* DC, int command_type, SEGVIA* via DrawPanel->MouseToCursorSchema(); case ID_POPUP_PCB_VIA_HOLE_TO_VALUE: // Set the drill via to custom - if( (g_ViaHoleLastValue > 0) && (g_ViaHoleLastValue < via->m_Width) ) + if( (g_DesignSettings.m_ViaDrillCustomValue > 0) && (g_DesignSettings.m_ViaDrillCustomValue < via->m_Width) ) { via->Draw( DrawPanel, DC, GR_XOR ); - via->SetDrillValue( g_ViaHoleLastValue ); + via->SetDrillValue( g_DesignSettings.m_ViaDrillCustomValue ); via->Draw( DrawPanel, DC, GR_OR ); GetScreen()->SetModify(); } @@ -57,12 +57,12 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxDC* DC, int command_type, SEGVIA* via case ID_POPUP_PCB_VIA_HOLE_EXPORT: // Export the current drill value as the new custom value if( via->GetDrillValue() > 0 ) - g_ViaHoleLastValue = via->GetDrillValue(); + g_DesignSettings.m_ViaDrillCustomValue = via->GetDrillValue(); break; case ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS: // Export the current drill value to via which héave the same size if( via->GetDrillValue() > 0 ) - g_ViaHoleLastValue = via->GetDrillValue(); + g_DesignSettings.m_ViaDrillCustomValue = via->GetDrillValue(); via_struct = m_Pcb->m_Track; for( ; via_struct != NULL; via_struct = (TRACK*) via_struct->Pnext ) { diff --git a/pcbnew/zone_filling_algorithm.cpp b/pcbnew/zone_filling_algorithm.cpp index f1bc8fbbe4..438bad27fd 100644 --- a/pcbnew/zone_filling_algorithm.cpp +++ b/pcbnew/zone_filling_algorithm.cpp @@ -134,7 +134,7 @@ int ZONE_CONTAINER::Fill_Zone( WinEDA_PcbFrame* frame, wxDC* DC, bool verbose ) TraceLignePcb( xi, yi, xf, yf, -1, HOLE | CELL_is_EDGE, WRITE_CELL ); } - /* Create a starting point to create the zone filling */ + /* Create a starting point to create the zone filling, from pads */ LISTE_PAD* pad; int cells_count = 0; for( ii = 0, pad = frame->m_Pcb->m_Pads; ii < frame->m_Pcb->m_NbPads; ii++, pad++ ) @@ -157,6 +157,42 @@ int ZONE_CONTAINER::Fill_Zone( WinEDA_PcbFrame* frame, wxDC* DC, bool verbose ) } } + /* Create a starting point to create the zone filling, from vias and tracks */ + TRACK* track; + for( track = frame->m_Pcb->m_Track; track != NULL; track = track->Next() ) + { + if ( ! track->IsOnLayer( GetLayer() ) ) continue; + if ( track->GetNet() != GetNet() ) continue; + wxPoint pos = track->m_Start; + if( m_Poly->TestPointInside( pos.x, pos.y ) ) + { + pos -= Pcb->m_BoundaryBox.m_Pos; + ZoneStartFill.x = ( pos.x + (g_GridRoutingSize / 2) ) / g_GridRoutingSize; + + ZoneStartFill.y = ( pos.y + (g_GridRoutingSize / 2) ) / g_GridRoutingSize; + BoardCell cell = GetCell( ZoneStartFill.y, ZoneStartFill.x, BOTTOM ); + if ( (cell & CELL_is_EDGE) == 0 ) + { + OrCell( ZoneStartFill.y, ZoneStartFill.x, BOTTOM, CELL_is_ZONE ); + cells_count++; + } + } + pos = track->m_End; + if( m_Poly->TestPointInside( pos.x, pos.y ) ) + { + pos -= Pcb->m_BoundaryBox.m_Pos; + ZoneStartFill.x = ( pos.x + (g_GridRoutingSize / 2) ) / g_GridRoutingSize; + + ZoneStartFill.y = ( pos.y + (g_GridRoutingSize / 2) ) / g_GridRoutingSize; + BoardCell cell = GetCell( ZoneStartFill.y, ZoneStartFill.x, BOTTOM ); + if ( (cell & CELL_is_EDGE) == 0 ) + { + OrCell( ZoneStartFill.y, ZoneStartFill.x, BOTTOM, CELL_is_ZONE ); + cells_count++; + } + } + } + if( cells_count == 0 ) { if( verbose ) diff --git a/pcbnew/zones.cpp b/pcbnew/zones.cpp deleted file mode 100644 index 4ac77ff4be..0000000000 --- a/pcbnew/zones.cpp +++ /dev/null @@ -1,878 +0,0 @@ -///////////////////////////////////////////////////////////////////////////// - -// Name: zones.cpp -// Purpose: -// Author: jean-pierre Charras -// Modified by: -// Created: 25/01/2006 11:35:19 -// RCS-ID: -// Copyright: GNU License -// Licence: GNU License -///////////////////////////////////////////////////////////////////////////// - -// Generated by DialogBlocks (unregistered), 25/01/2006 11:35:19 - -#if defined (__GNUG__) && !defined (NO_GCC_PRAGMA) -#pragma implementation "zones.h" -#endif - -// For compilers that support precompilation, includes "wx/wx.h". -#include "wx/wxprec.h" - -#ifdef __BORLANDC__ -#pragma hdrstop -#endif - -#ifndef WX_PRECOMP -#include "wx/wx.h" -#endif - -////@begin includes -////@end includes - -#include "zones.h" - -////@begin XPM images -////@end XPM images - -/* Imported functions */ -void Build_Zone( WinEDA_PcbFrame* frame, wxDC* DC, int net_code, - bool Zone_Exclude_Pads, bool Zone_Create_Thermal_Relief ); - - -/* Local functions */ -static void Display_Zone_Netname( WinEDA_PcbFrame* frame ); -static void Exit_Zones( WinEDA_DrawPanel* Panel, wxDC* DC ); -static void Show_Zone_Edge_While_MoveMouse( WinEDA_DrawPanel* panel, wxDC* DC, bool erase ); - -/* Local variables */ -static bool Zone_45_Only = FALSE; -static bool Zone_Exclude_Pads = TRUE; -static bool s_Zone_Create_Thermal_Relief = TRUE; - -/* Time stamp common to all segments relative to the new created zone */ -static unsigned long s_TimeStamp; - -/*! - * WinEDA_ZoneFrame type definition - */ - -IMPLEMENT_DYNAMIC_CLASS( WinEDA_ZoneFrame, wxDialog ) - -/*! - * WinEDA_ZoneFrame event table definition - */ - -BEGIN_EVENT_TABLE( WinEDA_ZoneFrame, wxDialog ) - -////@begin WinEDA_ZoneFrame event table entries -EVT_BUTTON( ID_FILL_ZONE, WinEDA_ZoneFrame::ExecFillZone ) - -EVT_BUTTON( wxID_CANCEL, WinEDA_ZoneFrame::OnCancelClick ) - -EVT_BUTTON( ID_SET_OPTIONS_ZONE, WinEDA_ZoneFrame::ExecFillZone ) - -////@end WinEDA_ZoneFrame event table entries - -END_EVENT_TABLE() - -/*! - * WinEDA_ZoneFrame constructors - */ - -WinEDA_ZoneFrame::WinEDA_ZoneFrame() -{ -} - - -WinEDA_ZoneFrame::WinEDA_ZoneFrame( WinEDA_PcbFrame* parent, - wxWindowID id, - const wxString& caption, - const wxPoint& pos, - const wxSize& size, - long style ) -{ - m_Parent = parent; - Create( parent, id, caption, pos, size, style ); -} - - -/*! - * WinEDA_ZoneFrame creator - */ - -bool WinEDA_ZoneFrame::Create( wxWindow* parent, - wxWindowID id, - const wxString& caption, - const wxPoint& pos, - const wxSize& size, - long style ) -{ -////@begin WinEDA_ZoneFrame member initialisation - m_GridCtrl = NULL; - m_ClearanceValueTitle = NULL; - m_ZoneClearanceCtrl = NULL; - m_FillOpt = NULL; - m_OrientEdgesOpt = NULL; - -////@end WinEDA_ZoneFrame member initialisation - -////@begin WinEDA_ZoneFrame creation - SetExtraStyle( GetExtraStyle() | wxWS_EX_BLOCK_EVENTS ); - wxDialog::Create( parent, id, caption, pos, size, style ); - - CreateControls(); - GetSizer()->Fit( this ); - GetSizer()->SetSizeHints( this ); - Centre(); - -////@end WinEDA_ZoneFrame creation - - return true; -} - - -/*! - * Control creation for WinEDA_ZoneFrame - */ - -void WinEDA_ZoneFrame::CreateControls() -{ - SetFont( *g_DialogFont ); - -////@begin WinEDA_ZoneFrame content construction - // Generated by DialogBlocks, 03/03/2006 13:36:21 (unregistered) - - WinEDA_ZoneFrame* itemDialog1 = this; - - wxBoxSizer* itemBoxSizer2 = new wxBoxSizer( wxHORIZONTAL ); - itemDialog1->SetSizer( itemBoxSizer2 ); - - wxBoxSizer* itemBoxSizer3 = new wxBoxSizer( wxVERTICAL ); - itemBoxSizer2->Add( itemBoxSizer3, 0, wxGROW | wxALL, 5 ); - - static const wxString m_GridCtrlStrings[] = { - _( "0.00000" ), - _( "0.00000" ), - _( "0.00000" ), - _( "0.00000" ) - }; - - m_GridCtrl = new wxRadioBox( itemDialog1, ID_RADIOBOX, _( - "Grid size:" ), wxDefaultPosition, wxDefaultSize, 4, - m_GridCtrlStrings, 1, wxRA_SPECIFY_COLS ); - itemBoxSizer3->Add( m_GridCtrl, 0, wxALIGN_LEFT | wxALL, 5 ); - - m_ClearanceValueTitle = new wxStaticText( itemDialog1, wxID_STATIC, - _( "Zone clearance value (mm):" ), - wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer3->Add( m_ClearanceValueTitle, - 0, - wxALIGN_LEFT | wxLEFT | wxRIGHT | wxTOP | wxADJUST_MINSIZE, - 5 ); - - m_ZoneClearanceCtrl = new wxTextCtrl( itemDialog1, ID_TEXTCTRL, _T( - "" ), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer3->Add( m_ZoneClearanceCtrl, 0, wxALIGN_LEFT | wxLEFT | wxRIGHT | wxBOTTOM, 5 ); - - itemBoxSizer2->Add( 5, 5, 0, wxGROW | wxALL, 5 ); - - wxBoxSizer* itemBoxSizer8 = new wxBoxSizer( wxVERTICAL ); - itemBoxSizer2->Add( itemBoxSizer8, 0, wxGROW | wxALL, 5 ); - - static const wxString m_FillOptStrings[] = { - _( "Include Pads" ), - _( "Thermal" ), - _( "Exclude Pads" ) - }; - - m_FillOpt = new wxRadioBox( itemDialog1, ID_RADIOBOX1, _( - "Pad options:" ), wxDefaultPosition, wxDefaultSize, 3, - m_FillOptStrings, 1, wxRA_SPECIFY_COLS ); - itemBoxSizer8->Add( m_FillOpt, 0, wxALIGN_LEFT | wxALL, 5 ); - - static const wxString m_OrientEdgesOptStrings[] = { - _( "Any" ), - _( "H , V and 45 deg" ) - }; - - m_OrientEdgesOpt = new wxRadioBox( itemDialog1, ID_RADIOBOX2, - _( "Zone edges orient:" ), wxDefaultPosition, - wxDefaultSize, 2, m_OrientEdgesOptStrings, 1, - wxRA_SPECIFY_COLS ); - - itemBoxSizer8->Add( m_OrientEdgesOpt, 0, wxALIGN_RIGHT | wxALL, 5 ); - - itemBoxSizer2->Add( 5, 5, 0, wxGROW | wxALL, 5 ); - - wxBoxSizer* itemBoxSizer12 = new wxBoxSizer( wxVERTICAL ); - itemBoxSizer2->Add( itemBoxSizer12, 0, wxALIGN_TOP | wxALL, 5 ); - - wxButton* itemButton13 = new wxButton( itemDialog1, ID_FILL_ZONE, - _( "Fill" ), wxDefaultPosition, wxDefaultSize, 0 ); - - itemButton13->SetDefault(); - itemButton13->SetForegroundColour( wxColour( 204, 0, 0 ) ); - itemBoxSizer12->Add( itemButton13, 0, wxGROW | wxALL, 5 ); - - wxButton* itemButton14 = new wxButton( itemDialog1, wxID_CANCEL, - _( "&Cancel" ), wxDefaultPosition, wxDefaultSize, 0 ); - - itemButton14->SetForegroundColour( wxColour( 0, 0, 255 ) ); - itemBoxSizer12->Add( itemButton14, 0, wxGROW | wxALL, 5 ); - - wxButton* itemButton15 = new wxButton( itemDialog1, ID_SET_OPTIONS_ZONE, - _( - "Update Options" ), wxDefaultPosition, - wxDefaultSize, 0 ); - - itemButton15->SetForegroundColour( wxColour( 0, 100, 0 ) ); - itemBoxSizer12->Add( itemButton15, 0, wxGROW | wxALL, 5 ); - - itemBoxSizer2->Add( 5, 5, 0, wxGROW | wxALL, 5 ); - -////@end WinEDA_ZoneFrame content construction - wxString title = _( "Zone clearance value:" ) + ReturnUnitSymbol( g_UnitMetric ); - m_ClearanceValueTitle->SetLabel( title ); - - title = _( "Grid :" ) + ReturnUnitSymbol( g_UnitMetric );; - m_GridCtrl->SetLabel( title ); - - if( g_DesignSettings.m_ZoneClearence == 0 ) - g_DesignSettings.m_ZoneClearence = g_DesignSettings.m_TrackClearence; - title = ReturnStringFromValue( g_UnitMetric, - g_DesignSettings.m_ZoneClearence, - m_Parent->m_InternalUnits ); - m_ZoneClearanceCtrl->SetValue( title ); - - if( Zone_45_Only ) - m_OrientEdgesOpt->SetSelection( 1 ); - - static const int GridList[4] = { 50, 100, 250, 500 }; - int selection = 0; - - for( unsigned ii = 0; ii < (unsigned)m_GridCtrl->GetCount(); ii++ ) - { - wxString msg = ReturnStringFromValue( g_UnitMetric, - GridList[ii], - m_Parent->m_InternalUnits ); - m_GridCtrl->SetString( ii, msg ); - if( g_GridRoutingSize == GridList[ii] ) - selection = ii; - } - - m_GridCtrl->SetSelection( selection ); - - if( Zone_Exclude_Pads ) - { - if( s_Zone_Create_Thermal_Relief ) - m_FillOpt->SetSelection( 1 ); - else - m_FillOpt->SetSelection( 2 ); - } -} - - -/*! - * Should we show tooltips? - */ - -bool WinEDA_ZoneFrame::ShowToolTips() -{ - return true; -} - - -/*! - * Get bitmap resources - */ - -wxBitmap WinEDA_ZoneFrame::GetBitmapResource( const wxString& name ) -{ - // Bitmap retrieval -////@begin WinEDA_ZoneFrame bitmap retrieval - wxUnusedVar( name ); - return wxNullBitmap; - -////@end WinEDA_ZoneFrame bitmap retrieval -} - - -/*! - * Get icon resources - */ - -wxIcon WinEDA_ZoneFrame::GetIconResource( const wxString& name ) -{ - // Icon retrieval -////@begin WinEDA_ZoneFrame icon retrieval - wxUnusedVar( name ); - return wxNullIcon; - -////@end WinEDA_ZoneFrame icon retrieval -} - - -/*! - * wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL - */ - -void WinEDA_ZoneFrame::OnCancelClick( wxCommandEvent& event ) -{ -////@begin wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL in WinEDA_ZoneFrame. - // Before editing this code, remove the block markers. - event.Skip(); - -////@end wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL in WinEDA_ZoneFrame. -} - - -/*! - * wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_BUTTON2 - */ -/***********************************************************/ -void WinEDA_ZoneFrame::ExecFillZone( wxCommandEvent& event ) -/***********************************************************/ -{ - switch( m_FillOpt->GetSelection() ) - { - case 0: - Zone_Exclude_Pads = FALSE; - s_Zone_Create_Thermal_Relief = FALSE; - break; - - case 1: - Zone_Exclude_Pads = TRUE; - s_Zone_Create_Thermal_Relief = TRUE; - break; - - case 2: - Zone_Exclude_Pads = TRUE; - s_Zone_Create_Thermal_Relief = FALSE; - break; - } - - switch( m_GridCtrl->GetSelection() ) - { - case 0: - g_GridRoutingSize = 50; - break; - - case 1: - g_GridRoutingSize = 100; - break; - - case 2: - g_GridRoutingSize = 250; - break; - - case 3: - g_GridRoutingSize = 500; - break; - } - - wxString txtvalue = m_ZoneClearanceCtrl->GetValue(); - g_DesignSettings.m_ZoneClearence = - ReturnValueFromString( g_UnitMetric, txtvalue, m_Parent->m_InternalUnits ); - if( m_OrientEdgesOpt->GetSelection() == 0 ) - Zone_45_Only = FALSE; - else - Zone_45_Only = TRUE; - - if( event.GetId() == ID_SET_OPTIONS_ZONE ) - EndModal( 1 ); - else - EndModal( 0 ); -} - - -/**************************************************************/ -void WinEDA_PcbFrame::Edit_Zone_Width( wxDC* DC, SEGZONE* aZone ) -/**************************************************************/ - -/* Edite (change la largeur des segments) la zone Zone. - * La zone est constituee des segments zones de meme TimeStamp - */ -{ - bool modify = FALSE; - double f_new_width; - int w_tmp; - wxString Line; - wxString Msg( _( "New zone segment width: " ) ); - - if( aZone == NULL ) - return; - - f_new_width = To_User_Unit( g_UnitMetric, aZone->m_Width, GetScreen()->GetInternalUnits() ); - - Line.Printf( wxT( "%.4f" ), f_new_width ); - - Msg += g_UnitMetric ? wxT( "(mm)" ) : wxT( "(\")" ); - if( Get_Message( Msg, Line, this ) != 0 ) - return; - - w_tmp = g_DesignSettings.m_CurrentTrackWidth; - Line.ToDouble( &f_new_width ); - - g_DesignSettings.m_CurrentTrackWidth = From_User_Unit( g_UnitMetric, - f_new_width, GetScreen()->GetInternalUnits() ); - - for( SEGZONE* zone = m_Pcb->m_Zone; zone; zone = zone->Next() ) - { - if( zone->m_TimeStamp == aZone->m_TimeStamp ) - { - modify = TRUE; - Edit_TrackSegm_Width( DC, zone ); - } - } - - g_DesignSettings.m_CurrentTrackWidth = w_tmp; - if( modify ) - { - GetScreen()->SetModify(); - DrawPanel->Refresh(); - } -} - - -/**********************************************************/ -void WinEDA_PcbFrame::Delete_Zone( wxDC* DC, SEGZONE* aZone ) -/**********************************************************/ - -/* Remove the zone which include the segment aZone. - * A zone is a group of segments which have the same TimeStamp - */ -{ - if ( aZone == NULL ) return; - - int nb_segm = 0; - bool modify = FALSE; - unsigned long TimeStamp = aZone->m_TimeStamp; // Save reference time stamp (aZone will be deleted) - - SEGZONE* next; - for( SEGZONE* zone = m_Pcb->m_Zone; zone != NULL; zone = next ) - { - next = zone->Next(); - if( zone->m_TimeStamp == TimeStamp ) - { - modify = TRUE; - - /* Erase segment from screen */ - Trace_Une_Piste( DrawPanel, DC, zone, nb_segm, GR_XOR ); - /* remove item from linked list and free memory */ - zone->DeleteStructure(); - } - } - - if( modify ) - { - GetScreen()->SetModify(); - GetScreen()->SetRefreshReq(); - } -} - - -/*****************************************************************************/ -EDGE_ZONE* WinEDA_PcbFrame::Del_SegmEdgeZone( wxDC* DC, EDGE_ZONE* edge_zone ) -/*****************************************************************************/ -/* Routine d'effacement du segment de limite zone en cours de trace */ -{ - EDGE_ZONE* segm; - - if( m_Pcb->m_CurrentLimitZone ) - segm = m_Pcb->m_CurrentLimitZone; - else - segm = edge_zone; - - if( segm == NULL ) - return NULL; - - Trace_DrawSegmentPcb( DrawPanel, DC, segm, GR_XOR ); - - m_Pcb->m_CurrentLimitZone = segm->Next(); - delete segm; - - segm = m_Pcb->m_CurrentLimitZone; - SetCurItem( segm ); - - if( segm ) - { - segm->Pback = NULL; - if( DrawPanel->ManageCurseur ) - DrawPanel->ManageCurseur( DrawPanel, DC, TRUE ); - } - else - { - DrawPanel->ManageCurseur = NULL; - DrawPanel->ForceCloseManageCurseur = NULL; - SetCurItem( NULL ); - } - return segm; -} - - -/*********************************************/ -void WinEDA_PcbFrame::CaptureNetName( wxDC* DC ) -/*********************************************/ - -/* routine permettant de capturer le nom net net (netcode) d'un pad - * ou d'une piste pour l'utiliser comme netcode de zone - */ -{ - D_PAD* pt_pad = 0; - TRACK* adrpiste; - MODULE* Module; - int masquelayer = g_TabOneLayerMask[GetScreen()->m_Active_Layer]; - int netcode; - - netcode = -1; - MsgPanel->EraseMsgBox(); - adrpiste = Locate_Pistes( m_Pcb->m_Track, masquelayer, CURSEUR_OFF_GRILLE ); - if( adrpiste == NULL ) - { - pt_pad = Locate_Any_Pad( m_Pcb, CURSEUR_OFF_GRILLE ); - - if( pt_pad ) /* Verif qu'il est bien sur la couche active */ - { - Module = (MODULE*) pt_pad->m_Parent; - pt_pad = Locate_Pads( Module, g_TabOneLayerMask[GetScreen()->m_Active_Layer], - CURSEUR_OFF_GRILLE ); - } - if( pt_pad ) - { - pt_pad->Display_Infos( this ); - netcode = pt_pad->GetNet(); - } - } - else - { - adrpiste->Display_Infos( this ); - netcode = adrpiste->GetNet(); - } - - // Mise en surbrillance du net - if( g_HightLigt_Status ) - Hight_Light( DC ); - - g_HightLigth_NetCode = netcode; - if( g_HightLigth_NetCode >= 0 ) - { - Hight_Light( DC ); - } - - /* Affichage du net selectionne pour la zone a tracer */ - Display_Zone_Netname( this ); -} - - -/*******************************************************/ -static void Display_Zone_Netname( WinEDA_PcbFrame* frame ) -/*******************************************************/ - -/* - * Affiche le net_code et le nom de net couramment selectionne - */ -{ - EQUIPOT* pt_equipot; - wxString line; - - pt_equipot = frame->m_Pcb->m_Equipots; - - if( g_HightLigth_NetCode > 0 ) - { - for( ; pt_equipot != NULL; pt_equipot = (EQUIPOT*) pt_equipot->Pnext ) - { - if( pt_equipot->GetNet() == g_HightLigth_NetCode ) - break; - } - - if( pt_equipot ) - { - line.Printf( wxT( "Zone: Net[%d] <%s>" ), g_HightLigth_NetCode, - pt_equipot->m_Netname.GetData() ); - } - else - line.Printf( wxT( "Zone: NetCode[%d], Equipot not found" ), - g_HightLigth_NetCode ); - } - - line = _( "Zone: No net selected" ); - - frame->Affiche_Message( line ); -} - - -/********************************************************/ -static void Exit_Zones( WinEDA_DrawPanel* Panel, wxDC* DC ) -/********************************************************/ - -/** - * Function Exit_Zones - * cancels the Begin_Zone state if at least one EDGE_ZONE has been created. - */ -{ - WinEDA_PcbFrame* pcbframe = (WinEDA_PcbFrame*) Panel->m_Parent; - - if( pcbframe->m_Pcb->m_CurrentLimitZone ) - { - if( Panel->ManageCurseur ) // trace in progress - { - Panel->ManageCurseur( Panel, DC, 0 ); - } - pcbframe->DelLimitesZone( DC, TRUE ); - } - - Panel->ManageCurseur = NULL; - Panel->ForceCloseManageCurseur = NULL; - pcbframe->SetCurItem( NULL ); -} - - -/**************************************************************/ -void WinEDA_BasePcbFrame::DelLimitesZone( wxDC* DC, bool Redraw ) -/**************************************************************/ -{ - EDGE_ZONE* segment; - EDGE_ZONE* next; - - if( m_Pcb->m_CurrentLimitZone == NULL ) - return; - - if( !IsOK( this, _( "Delete Current Zone Edges" ) ) ) - return; - - // erase the old zone border, one segment at a time - for( segment = m_Pcb->m_CurrentLimitZone; segment; segment = next ) - { - next = segment->Next(); - - if( Redraw && DC ) - Trace_DrawSegmentPcb( DrawPanel, DC, segment, GR_XOR ); - - delete segment; - } - m_Pcb->m_CurrentLimitZone = NULL; - - SetCurItem( NULL ); -} - - -/** - * Function Begin_Zone - * either initializes the first segment of a new zone, or adds an - * intermediate segment. - */ -EDGE_ZONE* WinEDA_PcbFrame::Begin_Zone() -{ - EDGE_ZONE* oldedge; - EDGE_ZONE* newedge = NULL; - - oldedge = m_Pcb->m_CurrentLimitZone; - - // if first segment - if( (m_Pcb->m_CurrentLimitZone == NULL ) /* debut reel du trace */ - || (DrawPanel->ManageCurseur == NULL) ) /* reprise d'un trace complementaire */ - { - newedge = new EDGE_ZONE( m_Pcb ); - newedge->m_Flags = IS_NEW | STARTPOINT | IS_MOVED; - newedge->m_Start = newedge->m_End = GetScreen()->m_Curseur; - newedge->SetLayer( GetScreen()->m_Active_Layer ); - - // link into list: - newedge->Pnext = oldedge; - - if( oldedge ) - oldedge->Pback = newedge; - - m_Pcb->m_CurrentLimitZone = newedge; - - DrawPanel->ManageCurseur = Show_Zone_Edge_While_MoveMouse; - DrawPanel->ForceCloseManageCurseur = Exit_Zones; - } - - // edge in progress: - else /* piste en cours : les coord du point d'arrivee ont ete mises - * a jour par la routine Show_Zone_Edge_While_MoveMouse*/ - { - if( oldedge->m_Start != oldedge->m_End ) - { - oldedge->m_Flags &= ~(IS_NEW | IS_MOVED); - - newedge = new EDGE_ZONE( oldedge ); - newedge->m_Flags = IS_NEW | IS_MOVED; - newedge->m_Start = newedge->m_End = oldedge->m_End; - newedge->SetLayer( GetScreen()->m_Active_Layer ); - - // link into list: - newedge->Pnext = oldedge; - oldedge->Pback = newedge; - m_Pcb->m_CurrentLimitZone = newedge; - } - } - - return newedge; -} - - -/*********************************************/ -void WinEDA_PcbFrame::End_Zone( wxDC* DC ) -/*********************************************/ - -/* - * Routine de fin de trace d'une zone (succession de segments) - */ -{ - EDGE_ZONE* edge; - - if( m_Pcb->m_CurrentLimitZone ) - { - Begin_Zone(); - - /* le dernier point genere est de longueur tj nulle donc inutile. */ - /* il sera raccorde au point de depart */ - edge = m_Pcb->m_CurrentLimitZone; - edge->m_Flags &= ~(IS_NEW | IS_MOVED); - - while( edge && edge->Next() ) - { - edge = edge->Next(); - if( edge->m_Flags & STARTPOINT ) - break; - - edge->m_Flags &= ~(IS_NEW | IS_MOVED); - } - - if( edge ) - { - edge->m_Flags &= ~(IS_NEW | IS_MOVED); - m_Pcb->m_CurrentLimitZone->m_End = edge->m_Start; - } - Trace_DrawSegmentPcb( DrawPanel, DC, m_Pcb->m_CurrentLimitZone, GR_XOR ); - } - - DrawPanel->ManageCurseur = NULL; - DrawPanel->ForceCloseManageCurseur = NULL; -} - - -/******************************************************************************************/ -static void Show_Zone_Edge_While_MoveMouse( WinEDA_DrawPanel* panel, wxDC* DC, bool erase ) -/******************************************************************************************/ - -/* redessin du contour de la piste lors des deplacements de la souris - */ -{ - EDGE_ZONE* edge; - EDGE_ZONE* currentEdge; - WinEDA_PcbFrame* pcbframe = (WinEDA_PcbFrame*) panel->m_Parent; - - if( pcbframe->m_Pcb->m_CurrentLimitZone == NULL ) - return; - - /* efface ancienne position si elle a ete deja dessinee */ - if( erase ) - { - edge = pcbframe->m_Pcb->m_CurrentLimitZone; - // for( ; edge; edge = edge->Next() ) - { - Trace_DrawSegmentPcb( panel, DC, edge, GR_XOR ); - } - } - - /* mise a jour de la couche */ - for( edge = pcbframe->m_Pcb->m_CurrentLimitZone; edge; edge = edge->Next() ) - { - edge->SetLayer( pcbframe->GetScreen()->m_Active_Layer ); - } - - /* dessin de la nouvelle piste : mise a jour du point d'arrivee */ - currentEdge = pcbframe->m_Pcb->m_CurrentLimitZone; - if( Zone_45_Only ) - { - // Calcul de l'extremite de la piste pour orientations permises: - // horiz,vertical ou 45 degre - currentEdge->m_End = pcbframe->GetScreen()->m_Curseur; - Calcule_Coord_Extremite_45( currentEdge->m_Start.x, currentEdge->m_Start.y, - ¤tEdge->m_End.x, ¤tEdge->m_End.y ); - } - else /* ici l'angle d'inclinaison est quelconque */ - { - currentEdge->m_End = pcbframe->GetScreen()->m_Curseur; - } - - // for( ; currentEdge; currentEdge = currentEdge->Next() ) - { - Trace_DrawSegmentPcb( panel, DC, currentEdge, GR_XOR ); - } -} - - -/**********************************************/ -void WinEDA_PcbFrame::Fill_Zone( wxDC* DC ) -/**********************************************/ - -/** Function Fill_Zone() - * Init the zone filling - * If a zone edge is found, it is used. - * Otherwise the whole board is filled by the zone - * The zone edge is a frontier, and can be complex. So non filled zones can be achieved - * The zone is put on the active layer - * If a net is hightlighted, the zone will be attached to this net - * The filling start from a starting point. - * If a net is selected, all tracks attached to this net are also starting points - */ -{ - EQUIPOT* pt_equipot; - wxPoint ZoneStartFill; - wxString msg; - - MsgPanel->EraseMsgBox(); - if( m_Pcb->ComputeBoundaryBox() == FALSE ) - { - DisplayError( this, wxT( "Board is empty!" ), 10 ); - return; - } - - DrawPanel->m_IgnoreMouseEvents = TRUE; - WinEDA_ZoneFrame* frame = new WinEDA_ZoneFrame( this ); - - int abrd = frame->ShowModal(); - frame->Destroy(); - DrawPanel->MouseToCursorSchema(); - DrawPanel->m_IgnoreMouseEvents = FALSE; - - if( abrd ) - return; - - - // set all the EDGE_ZONEs to the currently active layer and redraw them - // on that layer. - EDGE_ZONE* PtLim = m_Pcb->m_CurrentLimitZone; - for( ; PtLim != NULL; PtLim = PtLim->Next() ) - { - Trace_DrawSegmentPcb( DrawPanel, DC, PtLim, GR_XOR ); - PtLim->SetLayer( GetScreen()->m_Active_Layer ); - Trace_DrawSegmentPcb( DrawPanel, DC, PtLim, GR_XOR ); - } - - /* Show the NetName */ - if( g_HightLigth_NetCode > 0 ) - { - pt_equipot = m_Pcb->FindNet( g_HightLigth_NetCode ); - if( pt_equipot == NULL ) - { - if( g_HightLigth_NetCode > 0 ) - DisplayError( this, wxT( "Unable to find Net name" ) ); - } - else - msg = pt_equipot->m_Netname; - } - else - msg = _( "No Net" ); - - Affiche_1_Parametre( this, 22, _( "NetName" ), msg, RED ); - - Build_Zone( this, DC, g_HightLigth_NetCode, Zone_Exclude_Pads, s_Zone_Create_Thermal_Relief ); - - GetScreen()->SetModify(); -} diff --git a/pcbnew/zones.h b/pcbnew/zones.h deleted file mode 100644 index 2acbff8c74..0000000000 --- a/pcbnew/zones.h +++ /dev/null @@ -1,126 +0,0 @@ -///////////////////////////////////////////////////////////////////////////// -// Name: zones.h -// Purpose: -// Author: jean-pierre Charras -// Modified by: -// Created: 25/01/2006 11:35:19 -// RCS-ID: -// Copyright: GNU License -// Licence: -///////////////////////////////////////////////////////////////////////////// - -// Generated by DialogBlocks (unregistered), 25/01/2006 11:35:19 - -#ifndef _ZONES_H_ -#define _ZONES_H_ - -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "zones.h" -#endif - -/*! - * Includes - */ -#include "fctsys.h" -#include "gr_basic.h" - -#include "common.h" -#include "pcbnew.h" - -#include "autorout.h" -#include "cell.h" -#include "trigo.h" - -#include "protos.h" - -////@begin includes -////@end includes - -/*! - * Forward declarations - */ - -////@begin forward declarations -////@end forward declarations - -/*! - * Control identifiers - */ - -////@begin control identifiers -#define ID_DIALOG 10000 -#define ID_RADIOBOX 10001 -#define ID_TEXTCTRL 10006 -#define ID_RADIOBOX1 10004 -#define ID_RADIOBOX2 10005 -#define ID_FILL_ZONE 10002 -#define ID_SET_OPTIONS_ZONE 10003 -#define SYMBOL_WINEDA_ZONEFRAME_STYLE wxCAPTION|wxSYSTEM_MENU|wxCLOSE_BOX|MAYBE_RESIZE_BORDER -#define SYMBOL_WINEDA_ZONEFRAME_TITLE _("Fill Zones Options") -#define SYMBOL_WINEDA_ZONEFRAME_IDNAME ID_DIALOG -#define SYMBOL_WINEDA_ZONEFRAME_SIZE wxSize(400, 300) -#define SYMBOL_WINEDA_ZONEFRAME_POSITION wxDefaultPosition -////@end control identifiers - -/*! - * Compatibility - */ - -#ifndef wxCLOSE_BOX -#define wxCLOSE_BOX 0x1000 -#endif - -/*! - * WinEDA_ZoneFrame class declaration - */ - -class WinEDA_ZoneFrame: public wxDialog -{ - DECLARE_DYNAMIC_CLASS( WinEDA_ZoneFrame ) - DECLARE_EVENT_TABLE() - -public: - /// Constructors - WinEDA_ZoneFrame( ); - WinEDA_ZoneFrame( WinEDA_PcbFrame* parent, wxWindowID id = SYMBOL_WINEDA_ZONEFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_ZONEFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_ZONEFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_ZONEFRAME_SIZE, long style = SYMBOL_WINEDA_ZONEFRAME_STYLE ); - - /// Creation - bool Create( wxWindow* parent, wxWindowID id = SYMBOL_WINEDA_ZONEFRAME_IDNAME, const wxString& caption = SYMBOL_WINEDA_ZONEFRAME_TITLE, const wxPoint& pos = SYMBOL_WINEDA_ZONEFRAME_POSITION, const wxSize& size = SYMBOL_WINEDA_ZONEFRAME_SIZE, long style = SYMBOL_WINEDA_ZONEFRAME_STYLE ); - - /// Creates the controls and sizers - void CreateControls(); - -////@begin WinEDA_ZoneFrame event handler declarations - - /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_FILL_ZONE - void ExecFillZone( wxCommandEvent& event ); - - /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL - void OnCancelClick( wxCommandEvent& event ); - -////@end WinEDA_ZoneFrame event handler declarations - -////@begin WinEDA_ZoneFrame member function declarations - - /// Retrieves bitmap resources - wxBitmap GetBitmapResource( const wxString& name ); - - /// Retrieves icon resources - wxIcon GetIconResource( const wxString& name ); -////@end WinEDA_ZoneFrame member function declarations - - /// Should we show tooltips? - static bool ShowToolTips(); - -////@begin WinEDA_ZoneFrame member variables - wxRadioBox* m_GridCtrl; - wxStaticText* m_ClearanceValueTitle; - wxTextCtrl* m_ZoneClearanceCtrl; - wxRadioBox* m_FillOpt; - wxRadioBox* m_OrientEdgesOpt; -////@end WinEDA_ZoneFrame member variables - WinEDA_PcbFrame * m_Parent; -}; - -#endif // _ZONES_H_ - diff --git a/pcbnew/zones.pjd b/pcbnew/zones.pjd deleted file mode 100644 index 6d10ad703b..0000000000 --- a/pcbnew/zones.pjd +++ /dev/null @@ -1,893 +0,0 @@ - - -
- 0 - "" - "" - "" - "" - 23 - "" - 0 - 0 - 0 - 1 - 1 - 0 - "jean-pierre Charras" - "GNU License" - "" - 0 - "<All platforms>" - "<Any>" - "///////////////////////////////////////////////////////////////////////////// -// Name: %HEADER-FILENAME% -// Purpose: -// Author: %AUTHOR% -// Modified by: -// Created: %DATE% -// RCS-ID: -// Copyright: %COPYRIGHT% -// Licence: -///////////////////////////////////////////////////////////////////////////// - -" - "///////////////////////////////////////////////////////////////////////////// -// Name: %SOURCE-FILENAME% -// Purpose: -// Author: %AUTHOR% -// Modified by: -// Created: %DATE% -// RCS-ID: -// Copyright: %COPYRIGHT% -// Licence: -///////////////////////////////////////////////////////////////////////////// - -" - " -/*! - * %BODY% - */ - -" - "///////////////////////////////////////////////////////////////////////////// -// Name: %SYMBOLS-FILENAME% -// Purpose: Symbols file -// Author: %AUTHOR% -// Modified by: -// Created: %DATE% -// RCS-ID: -// Copyright: %COPYRIGHT% -// Licence: -///////////////////////////////////////////////////////////////////////////// - -" - "#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "%HEADER-FILENAME%" -#endif - -" - "#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "%HEADER-FILENAME%" -#endif - -// For compilers that support precompilation, includes "wx/wx.h". -#include "wx/wxprec.h" - -#ifdef __BORLANDC__ -#pragma hdrstop -#endif - -#ifndef WX_PRECOMP -#include "wx/wx.h" -#endif - -" - "app_resources.h" - "app_resources.cpp" - "AppResources" - "app.h" - "app.cpp" - "Application" - 0 - "" - "<None>" - "<System>" - "<System>" - "" - 0 - 1 - 1 -
- - - "" - "data-document" - "" - "" - 0 - 1 - 0 - 0 - - "Configurations" - "config-data-document" - "" - "" - 0 - 1 - 0 - 0 - "" - 1 - "" - "Debug" - "ANSI" - "Static" - "Modular" - "GUI" - "wxMSW" - "Dynamic" - "Yes" - "No" - "No" - "%WXVERSION%" - "%EXECUTABLE%" - "" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - "%AUTO%" - - - - - - - "Projects" - "root-document" - "" - "project" - 1 - 1 - 0 - 0 - - "Windows" - "html-document" - "" - "dialogsfolder" - 1 - 1 - 0 - 1 - - "Fill Zones Options" - "dialog-document" - "" - "dialog" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbDialogProxy" - 10000 - 0 - "" - 0 - "ID_DIALOG" - 10000 - "WinEDA_ZoneFrame" - "wxDialog" - "wxDialog" - "zones.cpp" - "zones.h" - "" - "Fill Zones Options" - 1 - "" - 0 - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - 0 - 1 - 0 - 0 - 1 - 0 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - "MAYBE_RESIZE_BORDER" - 0 - 1 - -1 - -1 - 400 - 300 - "" - - "wxBoxSizer H" - "dialog-control-document" - "" - "sizer" - 0 - 1 - 0 - 0 - "wbBoxSizerProxy" - "Horizontal" - "" - 0 - 0 - 0 - "<Any platform>" - - "wxBoxSizer V" - "dialog-control-document" - "" - "sizer" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbBoxSizerProxy" - "Vertical" - "" - "Centre" - "Expand" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - "wxRadioBox: ID_RADIOBOX" - "dialog-control-document" - "" - "radiobox" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbRadioBoxProxy" - "ID_RADIOBOX" - 10001 - "wxRadioBox" - "m_GridCtrl" - "Grid size:" - 1 - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - "" - "" - 0 - 1 - "0.00000|0.00000|0.00000|0.00000" - 0 - "" - -1 - -1 - -1 - -1 - "Left" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - "wxStaticText: wxID_STATIC" - "dialog-control-document" - "" - "statictext" - 0 - 1 - 0 - 0 - "25/12/2006" - "wbStaticTextProxy" - "wxID_STATIC" - 5105 - "wxStaticText" - "m_ClearanceValueTitle" - "Zone clearance value (mm):" - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - "" - "" - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - "" - -1 - -1 - -1 - -1 - "Left" - "Centre" - 0 - 5 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - "" - "" - - - "wxTextCtrl: ID_TEXTCTRL" - "dialog-control-document" - "" - "textctrl" - 0 - 1 - 0 - 0 - "25/12/2006" - "wbTextCtrlProxy" - "ID_TEXTCTRL" - 10006 - "wxTextCtrl" - "m_ZoneClearanceCtrl" - "" - 0 - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - "" - "" - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - "" - -1 - -1 - -1 - -1 - "Left" - "Centre" - 0 - 5 - 1 - 1 - 0 - 1 - 0 - 0 - 0 - "" - "" - - - - "Spacer" - "dialog-control-document" - "" - "spacer" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbSpacerProxy" - 5 - 5 - "Centre" - "Expand" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - - "wxBoxSizer V" - "dialog-control-document" - "" - "sizer" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbBoxSizerProxy" - "Vertical" - "" - "Centre" - "Expand" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - "wxRadioBox: ID_RADIOBOX1" - "dialog-control-document" - "" - "radiobox" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbRadioBoxProxy" - "ID_RADIOBOX1" - 10004 - "wxRadioBox" - "m_FillOpt" - "Pad options:" - 1 - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - "" - "" - 0 - 1 - "Include Pads|Thermal|Exclude Pads" - 0 - "" - -1 - -1 - -1 - -1 - "Left" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - "wxRadioBox: ID_RADIOBOX2" - "dialog-control-document" - "" - "radiobox" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbRadioBoxProxy" - "ID_RADIOBOX2" - 10005 - "wxRadioBox" - "m_OrientEdgesOpt" - "Zone edges orient:" - 1 - "" - "" - "" - "" - "" - 0 - 1 - "<Any platform>" - "" - "" - 0 - 1 - "Any|H , V and 45 deg" - 0 - "" - -1 - -1 - -1 - -1 - "Right" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - - "Spacer" - "dialog-control-document" - "" - "spacer" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbSpacerProxy" - 5 - 5 - "Centre" - "Expand" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - - "wxBoxSizer V" - "dialog-control-document" - "" - "sizer" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbBoxSizerProxy" - "Vertical" - "" - "Centre" - "Top" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - "wxButton: ID_FILL_ZONE" - "dialog-control-document" - "" - "dialogcontrol" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbButtonProxy" - "wxEVT_COMMAND_BUTTON_CLICKED|ExecFillZone" - "ID_FILL_ZONE" - 10002 - "wxButton" - "" - "Fill" - 1 - "" - "" - "" - "CC0000" - "" - 0 - 1 - "<Any platform>" - 0 - 0 - 0 - 0 - 0 - 0 - 0 - "" - -1 - -1 - -1 - -1 - "Expand" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - "wxButton: wxID_CANCEL" - "dialog-control-document" - "" - "dialogcontrol" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbButtonProxy" - "wxEVT_COMMAND_BUTTON_CLICKED|OnCancelClick" - "wxID_CANCEL" - 5101 - "wxButton" - "" - "&Cancel" - 0 - "" - "" - "" - "0000FF" - "" - 0 - 1 - "<Any platform>" - 0 - 0 - 0 - 0 - 0 - 0 - 0 - "" - -1 - -1 - -1 - -1 - "Expand" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - "wxButton: ID_SET_OPTIONS_ZONE" - "dialog-control-document" - "" - "dialogcontrol" - 0 - 1 - 0 - 0 - "25/4/2006" - "wbButtonProxy" - "wxEVT_COMMAND_BUTTON_CLICKED|ExecFillZone" - "ID_SET_OPTIONS_ZONE" - 10003 - "wxButton" - "" - "Update Options" - 0 - "" - "" - "" - "006400" - "" - 0 - 1 - "<Any platform>" - 0 - 0 - 0 - 0 - 0 - 0 - 0 - "" - -1 - -1 - -1 - -1 - "Expand" - "Centre" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "" - "" - - - - "Spacer" - "dialog-control-document" - "" - "spacer" - 0 - 1 - 0 - 0 - "25/9/2006" - "wbSpacerProxy" - 5 - 5 - "Centre" - "Expand" - 0 - 5 - 1 - 1 - 1 - 1 - 0 - 0 - 0 - "<Any platform>" - - - - - - "Sources" - "html-document" - "" - "sourcesfolder" - 1 - 1 - 0 - 1 - - "zones.rc" - "source-editor-document" - "zones.rc" - "source-editor" - 0 - 0 - 1 - 0 - "25/4/2006" - "" - - - - "Images" - "html-document" - "" - "bitmapsfolder" - 1 - 1 - 0 - 1 - - - - -
diff --git a/pcbnew/zones.rc b/pcbnew/zones.rc deleted file mode 100644 index b86c4e2265..0000000000 --- a/pcbnew/zones.rc +++ /dev/null @@ -1 +0,0 @@ -#include "wx/msw/wx.rc"