Commit 44c01057 authored by CHARRAS's avatar CHARRAS

some enhancements. See changelog

parent 2f1b4cd1
/* XPM */ /* XPM */
static const char * add_tracks_xpm[] = { #ifndef XPMMAIN
"16 16 16 1", extern const char *add_tracks_xpm[];
" c None",
". c #007D00", #else
"+ c #006100", const char * add_tracks_xpm[] = {
"@ c #004400", "16 16 16 1",
"# c #007800", " c None",
"$ c #007B00", ". c #007D00",
"% c #004000", "+ c #006100",
"& c #007C00", "@ c #004400",
"* c #006500", "# c #007800",
"= c #007A00", "$ c #007B00",
"- c #004600", "% c #004000",
"; c #D72E2E", "& c #007C00",
"> c #A32222", "* c #006500",
", c #C22929", "= c #007A00",
"' c #D22D2D", "- c #004600",
") c #6D1717", "; c #D72E2E",
" ", "> c #A32222",
"........ ", ", c #C22929",
"........+ ", "' c #D22D2D",
" @.# ", ") c #6D1717",
" $.% ", " ",
" &.* ", "........ ",
" .= ", "........+ ",
" $.- ", " @.# ",
" ;;; ........", " $.% ",
" ;;;;; .......", " &.* ",
";;> >;, ", " .= ",
";; ;' ", " $.- ",
";;> ;;, ", " ;;; ........",
" ;;;;;) ", " ;;;;; .......",
" ,',) ", ";;> >;, ",
" "}; ";; ;' ",
";;> ;;, ",
" ;;;;;) ",
" ,',) ",
" "};
#endif
/* 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
/* XPM */ /* 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", "16 16 3 1",
" c None", " c None",
"! c black", "! c black",
...@@ -20,3 +24,4 @@ static const char * width_segment_xpm[] = { ...@@ -20,3 +24,4 @@ static const char * width_segment_xpm[] = {
" ! ", " ! ",
" ! ", " ! ",
" "}; " "};
#endif
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 Change Log for Kicad
...@@ -63,6 +6,16 @@ Started 2007-June-11 ...@@ -63,6 +6,16 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with
email address. email address.
2008-Jan-28 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
+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 <dick@softplc.com> 2008-Jan-27 UPDATE Dick Hollenbeck <dick@softplc.com>
================================================================================ ================================================================================
......
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
...@@ -60,7 +60,7 @@ IF(WIN32) ...@@ -60,7 +60,7 @@ IF(WIN32)
IF(MINGW) IF(MINGW)
# resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068)
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o 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 -i ${CMAKE_CURRENT_SOURCE_DIR}/cvpcb.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o) -o ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o)
SET(CVPCB_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o) SET(CVPCB_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/cvpcb_rc.o)
......
...@@ -106,7 +106,7 @@ IF(WIN32) ...@@ -106,7 +106,7 @@ IF(WIN32)
IF(MINGW) IF(MINGW)
# resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068)
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o 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 -i ${CMAKE_CURRENT_SOURCE_DIR}/eeschema.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o) -o ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o)
SET(EESCHEMA_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o) SET(EESCHEMA_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/eeschema_rc.o)
......
...@@ -62,7 +62,7 @@ IF(WIN32) ...@@ -62,7 +62,7 @@ IF(WIN32)
IF(MINGW) IF(MINGW)
# resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068)
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o 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 -i ${CMAKE_CURRENT_SOURCE_DIR}/gerbview.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o) -o ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o)
SET(GERBVIEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o) SET(GERBVIEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/gerbview_rc.o)
......
...@@ -186,7 +186,10 @@ ...@@ -186,7 +186,10 @@
#include "../bitmaps/transistor.xpm" #include "../bitmaps/transistor.xpm"
#include "../bitmaps/kicad_icon_small.xpm" #include "../bitmaps/kicad_icon_small.xpm"
#include "../bitmaps/general_ratsnet.xpm" #include "../bitmaps/general_ratsnet.xpm"
#include "../bitmaps/Add_Tracks.xpm"
#include "../bitmaps/Auto_track_width.xpm"
#include "../bitmaps/fill_zone.xpm" #include "../bitmaps/fill_zone.xpm"
#include "../bitmaps/Width_Segment.xpm"
// Largeur du toolbar vertical // Largeur du toolbar vertical
#define VTOOLBAR_WIDTH 26 #define VTOOLBAR_WIDTH 26
......
...@@ -548,17 +548,17 @@ enum main_id { ...@@ -548,17 +548,17 @@ enum main_id {
ID_POPUP_PCB_DELETE_TRACKNET, ID_POPUP_PCB_DELETE_TRACKNET,
ID_POPUP_PCB_DELETE_TRACK_MNU, 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_MOVE_ZONE_CORNER,
ID_POPUP_PCB_ADD_ZONE_CORNER, ID_POPUP_PCB_ADD_ZONE_CORNER,
ID_POPUP_PCB_DELETE_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_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_ALL_ZONES,
ID_POPUP_PCB_FILL_ZONE, ID_POPUP_PCB_FILL_ZONE,
ID_POPUP_PCB_DELETE_ZONE_CONTAINER, ID_POPUP_PCB_DELETE_ZONE_CONTAINER,
ID_POPUP_PCB_PLACE_ZONE_CORNER,
ID_POPUP_PCB_ZONE_ADD_SIMILAR_ZONE, ID_POPUP_PCB_ZONE_ADD_SIMILAR_ZONE,
ID_POPUP_PCB_ZONE_ADD_CUTOUT_ZONE, ID_POPUP_PCB_ZONE_ADD_CUTOUT_ZONE,
ID_POPUP_PCB_DELETE_ZONE_CUTOUT, ID_POPUP_PCB_DELETE_ZONE_CUTOUT,
...@@ -587,6 +587,7 @@ enum main_id { ...@@ -587,6 +587,7 @@ enum main_id {
ID_POPUP_PCB_EXPORT_PAD_SETTINGS, ID_POPUP_PCB_EXPORT_PAD_SETTINGS,
ID_POPUP_PCB_SELECT_WIDTH, ID_POPUP_PCB_SELECT_WIDTH,
ID_POPUP_PCB_SELECT_AUTO_WIDTH,
ID_POPUP_PCB_SELECT_WIDTH1, ID_POPUP_PCB_SELECT_WIDTH1,
ID_POPUP_PCB_SELECT_WIDTH2, ID_POPUP_PCB_SELECT_WIDTH2,
ID_POPUP_PCB_SELECT_WIDTH3, ID_POPUP_PCB_SELECT_WIDTH3,
...@@ -731,7 +732,7 @@ enum main_id { ...@@ -731,7 +732,7 @@ enum main_id {
ID_AUX_TOOLBAR_PCB_VIA_SIZE, ID_AUX_TOOLBAR_PCB_VIA_SIZE,
ID_AUX_TOOLBAR_PCB_TRACK_WIDTH, ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
ID_AUX_TOOLBAR_PCB_SELECT_LAYER_PAIR, 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_UNUSED3,
ID_AUX_TOOLBAR_PCB_UNUSED4, ID_AUX_TOOLBAR_PCB_UNUSED4,
ID_AUX_TOOLBAR_PCB_UNUSED5, ID_AUX_TOOLBAR_PCB_UNUSED5,
......
...@@ -79,35 +79,36 @@ ...@@ -79,35 +79,36 @@
/*************************************/ /*************************************/
/* constantes de gestion des couches */ /* constantes de gestion des couches */
/*************************************/ /*************************************/
#define CUIVRE_LAYER (1<<COPPER_LAYER_N) ///< bit mask for copper layer #define CUIVRE_LAYER (1 << COPPER_LAYER_N) ///< bit mask for copper layer
#define LAYER_2 (1<<LAYER_N_2) ///< bit mask for layer 2 #define LAYER_2 (1 << LAYER_N_2) ///< bit mask for layer 2
#define LAYER_3 (1<<LAYER_N_3) ///< bit mask for layer 3 #define LAYER_3 (1 << LAYER_N_3) ///< bit mask for layer 3
#define LAYER_4 (1<<LAYER_N_4) ///< bit mask for layer 4 #define LAYER_4 (1 << LAYER_N_4) ///< bit mask for layer 4
#define LAYER_5 (1<<LAYER_N_5) ///< bit mask for layer 5 #define LAYER_5 (1 << LAYER_N_5) ///< bit mask for layer 5
#define LAYER_6 (1<<LAYER_N_6) ///< bit mask for layer 6 #define LAYER_6 (1 << LAYER_N_6) ///< bit mask for layer 6
#define LAYER_7 (1<<LAYER_N_7) ///< bit mask for layer 7 #define LAYER_7 (1 << LAYER_N_7) ///< bit mask for layer 7
#define LAYER_8 (1<<LAYER_N_8) ///< bit mask for layer 8 #define LAYER_8 (1 << LAYER_N_8) ///< bit mask for layer 8
#define LAYER_9 (1<<LAYER_N_9) ///< bit mask for layer 9 #define LAYER_9 (1 << LAYER_N_9) ///< bit mask for layer 9
#define LAYER_10 (1<<LAYER_N_10) ///< bit mask for layer 10 #define LAYER_10 (1 << LAYER_N_10) ///< bit mask for layer 10
#define LAYER_11 (1<<LAYER_N_11) ///< bit mask for layer 11 #define LAYER_11 (1 << LAYER_N_11) ///< bit mask for layer 11
#define LAYER_12 (1<<LAYER_N_12) ///< bit mask for layer 12 #define LAYER_12 (1 << LAYER_N_12) ///< bit mask for layer 12
#define LAYER_13 (1<<LAYER_N_13) ///< bit mask for layer 13 #define LAYER_13 (1 << LAYER_N_13) ///< bit mask for layer 13
#define LAYER_14 (1<<LAYER_N_14) ///< bit mask for layer 14 #define LAYER_14 (1 << LAYER_N_14) ///< bit mask for layer 14
#define LAYER_15 (1<<LAYER_N_15) ///< bit mask for layer 15 #define LAYER_15 (1 << LAYER_N_15) ///< bit mask for layer 15
#define CMP_LAYER (1<<LAYER_CMP_N) ///< bit mask for component layer #define CMP_LAYER (1 << LAYER_CMP_N) ///< bit mask for component layer
#define ADHESIVE_LAYER_CU (1<<ADHESIVE_N_CU) #define ADHESIVE_LAYER_CU (1 << ADHESIVE_N_CU)
#define ADHESIVE_LAYER_CMP (1<<ADHESIVE_N_CMP) #define ADHESIVE_LAYER_CMP (1 << ADHESIVE_N_CMP)
#define SOLDERPASTE_LAYER_CU (1<<SOLDERPASTE_N_CU) #define SOLDERPASTE_LAYER_CU (1 << SOLDERPASTE_N_CU)
#define SOLDERPASTE_LAYER_CMP (1<<SOLDERPASTE_N_CMP) #define SOLDERPASTE_LAYER_CMP (1 << SOLDERPASTE_N_CMP)
#define SILKSCREEN_LAYER_CU (1<<SILKSCREEN_N_CU) #define SILKSCREEN_LAYER_CU (1 << SILKSCREEN_N_CU)
#define SILKSCREEN_LAYER_CMP (1<<SILKSCREEN_N_CMP) #define SILKSCREEN_LAYER_CMP (1 << SILKSCREEN_N_CMP)
#define SOLDERMASK_LAYER_CU (1<<SOLDERMASK_N_CU) #define SOLDERMASK_LAYER_CU (1 << SOLDERMASK_N_CU)
#define SOLDERMASK_LAYER_CMP (1<<SOLDERMASK_N_CMP) #define SOLDERMASK_LAYER_CMP (1 << SOLDERMASK_N_CMP)
#define DRAW_LAYER (1<<DRAW_N) #define DRAW_LAYER (1 << DRAW_N)
#define COMMENT_LAYER (1<<COMMENT_N) #define COMMENT_LAYER (1 << COMMENT_N)
#define ECO1_LAYER (1<<ECO1_N) #define ECO1_LAYER (1 << ECO1_N)
#define ECO2_LAYER (1<<ECO2_N) #define ECO2_LAYER (1 << ECO2_N)
#define EDGE_LAYER (1<<EDGE_N) #define EDGE_LAYER (1 << EDGE_N)
// extra bits 0xE0000000 // extra bits 0xE0000000
/* masques generaux : */ /* masques generaux : */
#define ALL_LAYERS 0x1FFFFFFF #define ALL_LAYERS 0x1FFFFFFF
...@@ -133,6 +134,7 @@ enum Track_Shapes { ...@@ -133,6 +134,7 @@ enum Track_Shapes {
class EQUIPOT; class EQUIPOT;
class MARKER; class MARKER;
struct CHEVELU; struct CHEVELU;
//class Ki_PageDescr; //class Ki_PageDescr;
//class DrawBlockStruct; //class DrawBlockStruct;
...@@ -150,13 +152,15 @@ class EDA_BoardDesignSettings ...@@ -150,13 +152,15 @@ class EDA_BoardDesignSettings
public: public:
int m_CopperLayerCount; // Number of copper layers for this design int m_CopperLayerCount; // Number of copper layers for this design
int m_ViaDrill; // via drill (for the entire board) int m_ViaDrill; // via drill (for the entire board)
int m_ViaDrillCustomValue; // via drill for vias which must have a defined drill value
int m_MicroViaDrill; // micro via drill (for the entire board) int m_MicroViaDrill; // micro via drill (for the entire board)
int m_CurrentViaSize; // Current via size int m_CurrentViaSize; // Current via size
int m_CurrentMicroViaSize; // Current micro via size int m_CurrentMicroViaSize; // Current micro via size
bool m_MicroViasAllowed; // true to allow micro vias bool m_MicroViasAllowed; // true to allow micro vias
int m_ViaSizeHistory[HISTORY_NUMBER]; // Last HISTORY_NUMBER used via sizes int m_ViaSizeHistory[HISTORY_NUMBER]; // Last HISTORY_NUMBER used via sizes
int m_CurrentViaType; // via type (BLIND, TROUGHT ...), bits 1 and 2 (not 0 and 1) int m_CurrentViaType; // via type (VIA_BLIND_BURIED, VIA_TROUGHT VIA_MICROVIA)
int m_CurrentTrackWidth; // current track width int m_CurrentTrackWidth; // current track width
bool m_UseConnectedTrackWidth; // if true, when creating a new track starting on an existing track, use this track width
int m_TrackWidthHistory[HISTORY_NUMBER]; // Last HISTORY_NUMBER used track widths int m_TrackWidthHistory[HISTORY_NUMBER]; // Last HISTORY_NUMBER used track widths
int m_DrawSegmentWidth; // current graphic line width (not EDGE layer) int m_DrawSegmentWidth; // current graphic line width (not EDGE layer)
int m_EdgeSegmentWidth; // current graphic line width (EDGE layer only) int m_EdgeSegmentWidth; // current graphic line width (EDGE layer only)
...@@ -165,7 +169,7 @@ public: ...@@ -165,7 +169,7 @@ public:
int m_TrackClearence; // track to track and track to pads clearance int m_TrackClearence; // track to track and track to pads clearance
int m_ZoneClearence; // zone to track and zone to pads clearance int m_ZoneClearence; // zone to track and zone to pads clearance
int m_MaskMargin; // Solder mask margin int m_MaskMargin; // Solder mask margin
// Color options for screen display of the Printed Board: // Color options for screen display of the Printed Board:
int m_PcbGridColor; // Grid color int m_PcbGridColor; // Grid color
int m_LayerColor[32]; // Layer colors (tracks and graphic items) int m_LayerColor[32]; // Layer colors (tracks and graphic items)
...@@ -174,16 +178,16 @@ public: ...@@ -174,16 +178,16 @@ public:
int m_ModuleTextCUColor; // Text module color for modules on the COPPER layer int m_ModuleTextCUColor; // Text module color for modules on the COPPER layer
int m_ModuleTextNOVColor; // Text module color for "invisible" texts (must be BLACK if really not displayed) int m_ModuleTextNOVColor; // Text module color for "invisible" texts (must be BLACK if really not displayed)
int m_AnchorColor; // Anchor color for modules and texts int m_AnchorColor; // Anchor color for modules and texts
int m_PadCUColor; // Pad color for the COPPER side of the pad int m_PadCUColor; // Pad color for the COPPER side of the pad
int m_PadCMPColor; // Pad color for the COMPONENT side of the pad int m_PadCMPColor; // Pad color for the COMPONENT side of the pad
// Pad color for the pads of both sides is m_PadCUColor OR m_PadCMPColor (in terms of colors) // Pad color for the pads of both sides is m_PadCUColor OR m_PadCMPColor (in terms of colors)
int m_RatsnestColor; // Ratsnest color int m_RatsnestColor; // Ratsnest color
public: public:
EDA_BoardDesignSettings(); EDA_BoardDesignSettings();
/** /**
* Function GetVisibleLayers * Function GetVisibleLayers
* returns a bit-map of all the layers that are visible. * returns a bit-map of all the layers that are visible.
...@@ -212,13 +216,13 @@ public: ...@@ -212,13 +216,13 @@ public:
public: public:
PCB_SCREEN( int idscreen ); PCB_SCREEN( int idscreen );
~PCB_SCREEN(); ~PCB_SCREEN();
PCB_SCREEN* Next() { return (PCB_SCREEN*) Pnext; } PCB_SCREEN* Next() { return (PCB_SCREEN*) Pnext; }
void Init(); void Init();
void SetNextZoom(); void SetNextZoom();
void SetPreviousZoom(); void SetPreviousZoom();
void SetLastZoom(); void SetLastZoom();
/** /**
* Function GetCurItem * Function GetCurItem
* returns the currently selected BOARD_ITEM, overriding BASE_SCREEN::GetCurItem(). * returns the currently selected BOARD_ITEM, overriding BASE_SCREEN::GetCurItem().
...@@ -232,17 +236,17 @@ public: ...@@ -232,17 +236,17 @@ public:
* It is mainly used to connect BGA to the first inner layer * It is mainly used to connect BGA to the first inner layer
* And it is allowed from an external layer to the first inner layer * And it is allowed from an external layer to the first inner layer
*/ */
bool IsMicroViaAcceptable(void); bool IsMicroViaAcceptable( void );
}; };
/**********************************/ /**********************************/
/* Module (Footprint) description */ /* Module (Footprint) description */
/**********************************/ /**********************************/
#include "class_pad.h" // class for pads #include "class_pad.h" // class for pads
#include "class_edge_mod.h" // Class for footprint graphic elements #include "class_edge_mod.h" // Class for footprint graphic elements
#include "class_text_mod.h" // Class for footprint fields #include "class_text_mod.h" // Class for footprint fields
#include "class_module.h" // Class for the footprint #include "class_module.h" // Class for the footprint
#include "class_equipot.h" #include "class_equipot.h"
...@@ -271,7 +275,7 @@ public: ...@@ -271,7 +275,7 @@ public:
int DisplayModText; int DisplayModText;
bool DisplayPcbTrackFill; /* FALSE = sketch , TRUE = filled */ bool DisplayPcbTrackFill; /* FALSE = sketch , TRUE = filled */
bool DisplayTrackIsol; bool DisplayTrackIsol;
int m_DisplayViaMode; /* 0 do not show via hole, int m_DisplayViaMode; /* 0 do not show via hole,
* 1 show via hole for non default value * 1 show via hole for non default value
* 2 show all via hole */ * 2 show all via hole */
......
No preview for this file type
...@@ -2,7 +2,7 @@ msgid "" ...@@ -2,7 +2,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: kicad\n" "Project-Id-Version: kicad\n"
"POT-Creation-Date: \n" "POT-Creation-Date: \n"
"PO-Revision-Date: 2008-01-22 20:51+0100\n" "PO-Revision-Date: 2008-01-26 16:17+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n" "Language-Team: kicad team <jean-pierre.charras@ujf-grenoble.fr>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
...@@ -72,8 +72,8 @@ msgstr "Attention: Impossible de cr ...@@ -72,8 +72,8 @@ msgstr "Attention: Impossible de cr
#: pcbnew/gen_modules_placefile.cpp:87 #: pcbnew/gen_modules_placefile.cpp:87
#: pcbnew/gen_modules_placefile.cpp:98 #: pcbnew/gen_modules_placefile.cpp:98
#: pcbnew/gen_modules_placefile.cpp:251 #: pcbnew/gen_modules_placefile.cpp:251
#: pcbnew/export_gencad.cpp:83
#: pcbnew/plothpgl.cpp:67 #: pcbnew/plothpgl.cpp:67
#: pcbnew/export_gencad.cpp:83
#: eeschema/plothpgl.cpp:560 #: eeschema/plothpgl.cpp:560
#: eeschema/plotps.cpp:389 #: eeschema/plotps.cpp:389
#: cvpcb/genequiv.cpp:42 #: cvpcb/genequiv.cpp:42
...@@ -231,10 +231,10 @@ msgstr "Controle la capture du curseur pcb quand le curseuir souris est sur le p ...@@ -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_pad_edit.cpp:217
#: pcbnew/dialog_initpcb.cpp:161 #: pcbnew/dialog_initpcb.cpp:161
#: pcbnew/dialog_edit_mod_text.cpp:213 #: pcbnew/dialog_edit_mod_text.cpp:213
#: pcbnew/dialog_track_options.cpp:212
#: pcbnew/dialog_display_options.cpp:282 #: pcbnew/dialog_display_options.cpp:282
#: pcbnew/swap_layers.cpp:220 #: pcbnew/swap_layers.cpp:220
#: pcbnew/set_grid.cpp:171 #: pcbnew/set_grid.cpp:171
#: pcbnew/dialog_track_options.cpp:322
#: pcbnew/dialog_drc.cpp:549 #: pcbnew/dialog_drc.cpp:549
#: eeschema/symbtext.cpp:174 #: eeschema/symbtext.cpp:174
#: eeschema/dialog_options.cpp:274 #: eeschema/dialog_options.cpp:274
...@@ -259,12 +259,11 @@ msgstr "&OK" ...@@ -259,12 +259,11 @@ msgstr "&OK"
#: pcbnew/dialog_netlist.cpp:189 #: pcbnew/dialog_netlist.cpp:189
#: pcbnew/dialog_initpcb.cpp:164 #: pcbnew/dialog_initpcb.cpp:164
#: pcbnew/dialog_edit_mod_text.cpp:217 #: pcbnew/dialog_edit_mod_text.cpp:217
#: pcbnew/dialog_track_options.cpp:216
#: pcbnew/dialog_display_options.cpp:286 #: pcbnew/dialog_display_options.cpp:286
#: pcbnew/swap_layers.cpp:224 #: pcbnew/swap_layers.cpp:224
#: pcbnew/set_grid.cpp:176 #: pcbnew/set_grid.cpp:176
#: pcbnew/zones.cpp:219 #: pcbnew/dialog_zones_by_polygon.cpp:205
#: pcbnew/dialog_zones_by_polygon.cpp:204 #: pcbnew/dialog_track_options.cpp:328
#: pcbnew/dialog_drc.cpp:545 #: pcbnew/dialog_drc.cpp:545
#: eeschema/plothpgl.cpp:274 #: eeschema/plothpgl.cpp:274
#: eeschema/symbtext.cpp:178 #: eeschema/symbtext.cpp:178
...@@ -356,7 +355,7 @@ msgstr "3D Caract" ...@@ -356,7 +355,7 @@ msgstr "3D Caract"
#: pcbnew/cotation.cpp:105 #: pcbnew/cotation.cpp:105
#: pcbnew/mirepcb.cpp:99 #: pcbnew/mirepcb.cpp:99
#: pcbnew/set_color.cpp:353 #: 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:158
#: pcbnew/sel_layer.cpp:316 #: pcbnew/sel_layer.cpp:316
#: pcbnew/dialog_gendrill.cpp:278 #: pcbnew/dialog_gendrill.cpp:278
...@@ -376,8 +375,8 @@ msgstr "OK" ...@@ -376,8 +375,8 @@ msgstr "OK"
#: pcbnew/pcbtexte.cpp:116 #: pcbnew/pcbtexte.cpp:116
#: pcbnew/modedit_onclick.cpp:203 #: pcbnew/modedit_onclick.cpp:203
#: pcbnew/modedit_onclick.cpp:235 #: pcbnew/modedit_onclick.cpp:235
#: pcbnew/onrightclick.cpp:145 #: pcbnew/onrightclick.cpp:157
#: pcbnew/onrightclick.cpp:159 #: pcbnew/onrightclick.cpp:171
#: pcbnew/block.cpp:154 #: pcbnew/block.cpp:154
#: pcbnew/cotation.cpp:109 #: pcbnew/cotation.cpp:109
#: pcbnew/mirepcb.cpp:103 #: pcbnew/mirepcb.cpp:103
...@@ -454,13 +453,13 @@ msgstr "Cuivre" ...@@ -454,13 +453,13 @@ msgstr "Cuivre"
#: pcbnew/class_text_mod.cpp:369 #: pcbnew/class_text_mod.cpp:369
#: pcbnew/class_text_mod.cpp:373 #: pcbnew/class_text_mod.cpp:373
#: pcbnew/class_pcb_text.cpp:177 #: pcbnew/class_pcb_text.cpp:177
#: pcbnew/class_pad.cpp:1062
#: pcbnew/class_track.cpp:832 #: pcbnew/class_track.cpp:832
#: pcbnew/class_module.cpp:1217 #: pcbnew/class_module.cpp:1217
#: pcbnew/sel_layer.cpp:145 #: pcbnew/sel_layer.cpp:145
#: pcbnew/class_pad.cpp:970
#: pcbnew/class_drawsegment.cpp:175 #: pcbnew/class_drawsegment.cpp:175
#: pcbnew/class_zone.cpp:61 #: pcbnew/class_zone.cpp:61
#: pcbnew/class_zone.cpp:512 #: pcbnew/class_zone.cpp:523
#: gerbview/affiche.cpp:109 #: gerbview/affiche.cpp:109
msgid "Layer" msgid "Layer"
msgstr "Couche" msgstr "Couche"
...@@ -484,8 +483,8 @@ msgstr "User" ...@@ -484,8 +483,8 @@ msgstr "User"
#: pcbnew/dialog_edit_module.cpp:246 #: pcbnew/dialog_edit_module.cpp:246
#: pcbnew/class_text_mod.cpp:383 #: pcbnew/class_text_mod.cpp:383
#: pcbnew/class_pcb_text.cpp:188 #: pcbnew/class_pcb_text.cpp:188
#: pcbnew/class_pad.cpp:1104
#: pcbnew/class_module.cpp:1240 #: pcbnew/class_module.cpp:1240
#: pcbnew/class_pad.cpp:1012
#: eeschema/affiche.cpp:117 #: eeschema/affiche.cpp:117
#: gerbview/affiche.cpp:49 #: gerbview/affiche.cpp:49
msgid "Orient" msgid "Orient"
...@@ -635,23 +634,65 @@ msgstr "Librairie: " ...@@ -635,23 +634,65 @@ msgstr "Librairie: "
msgid "Modules (%d items)" msgid "Modules (%d items)"
msgstr "Modules (%d lments)" msgstr "Modules (%d lments)"
#: pcbnew/pcbcfg.cpp:68 #: pcbnew/edit.cpp:177
#: eeschema/eeconfig.cpp:58 #: pcbnew/editmod.cpp:45
#: cvpcb/menucfg.cpp:170 msgid "Module Editor"
msgid "Read config file" msgstr "Ouvrir Editeur de modules"
msgstr "Lire config"
#: pcbnew/pcbcfg.cpp:81 #: pcbnew/edit.cpp:257
#: cvpcb/menucfg.cpp:182 msgid "Add Tracks"
#, c-format msgstr "Addition de pistes"
msgid "File %s not found"
msgstr " fichier %s non trouv"
#: pcbnew/pcbcfg.cpp:196 #: pcbnew/edit.cpp:266
#: eeschema/eeconfig.cpp:192 msgid "Add Zones"
#: cvpcb/cfg.cpp:71 msgstr "Addition de Zones"
msgid "Save preferences"
msgstr "Sauver prfrences" #: pcbnew/edit.cpp:268
msgid "Warning: Display Zone is OFF!!!"
msgstr "Attention: Affichage zones dsactiv !!!"
#: pcbnew/edit.cpp:275
msgid "Add Layer Alignment Target"
msgstr "Ajouter Mire de superposition"
#: pcbnew/edit.cpp:279
msgid "Adjust Zero"
msgstr "Ajuster Zro"
#: pcbnew/edit.cpp:285
msgid "Add Graphic"
msgstr "Addition lments 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 gnral"
#: pcbnew/edit.cpp:533
#: pcbnew/modedit.cpp:424
#: eeschema/schedit.cpp:455
#: eeschema/libframe.cpp:579
msgid "Delete item"
msgstr "Suppression d'lments"
#: pcbnew/dialog_setup_libs.cpp:97 #: pcbnew/dialog_setup_libs.cpp:97
#: eeschema/dialog_eeschema_config.cpp:105 #: eeschema/dialog_eeschema_config.cpp:105
...@@ -975,214 +1016,214 @@ msgstr "Ajout de stub (arc)" ...@@ -975,214 +1016,214 @@ msgstr "Ajout de stub (arc)"
msgid "Add Polynomial Shape" msgid "Add Polynomial Shape"
msgstr "Ajout Forme polynomiale" msgstr "Ajout Forme polynomiale"
#: pcbnew/pcbplot.cpp:115 #: pcbnew/pcbplot.cpp:120
#: pcbnew/pcbplot.cpp:205 #: pcbnew/pcbplot.cpp:210
#: gerbview/tool_gerber.cpp:90 #: gerbview/tool_gerber.cpp:90
msgid "Plot" msgid "Plot"
msgstr "Tracer" msgstr "Tracer"
#: pcbnew/pcbplot.cpp:145 #: pcbnew/pcbplot.cpp:150
msgid "Plot Format" msgid "Plot Format"
msgstr "Format de trac" msgstr "Format de trac"
#: pcbnew/pcbplot.cpp:171 #: pcbnew/pcbplot.cpp:176
msgid "Spot min" msgid "Spot min"
msgstr "Spot min" msgstr "Spot min"
#: pcbnew/pcbplot.cpp:175 #: pcbnew/pcbplot.cpp:180
msgid "Pen Size" msgid "Pen Size"
msgstr "Diam plume" msgstr "Diam plume"
#: pcbnew/pcbplot.cpp:179 #: pcbnew/pcbplot.cpp:184
msgid "Pen Speed (cm/s)" msgid "Pen Speed (cm/s)"
msgstr "Vitesse plume (cm/s)" msgstr "Vitesse plume (cm/s)"
#: pcbnew/pcbplot.cpp:181 #: pcbnew/pcbplot.cpp:186
msgid "Set pen speed in cm/s" msgid "Set pen speed in cm/s"
msgstr "Ajuster Vitesse plume en centimetres par seconde" msgstr "Ajuster Vitesse plume en centimetres par seconde"
#: pcbnew/pcbplot.cpp:183 #: pcbnew/pcbplot.cpp:188
msgid "Pen Ovr" msgid "Pen Ovr"
msgstr "Recouvrement" msgstr "Recouvrement"
#: pcbnew/pcbplot.cpp:185 #: pcbnew/pcbplot.cpp:190
msgid "Set plot overlay for filling" msgid "Set plot overlay for filling"
msgstr "Ajuste recouvrement des tracs pour les remplissages" msgstr "Ajuste recouvrement des tracs pour les remplissages"
#: pcbnew/pcbplot.cpp:187 #: pcbnew/pcbplot.cpp:192
msgid "Lines Width" msgid "Lines Width"
msgstr "Epaiss. lignes" msgstr "Epaiss. lignes"
#: pcbnew/pcbplot.cpp:189 #: pcbnew/pcbplot.cpp:194
msgid "Set width for lines in Line plot mode" msgid "Set width for lines in Line plot mode"
msgstr "Ajuster l'paisseur des traits en Mode trac filaire" msgstr "Ajuster l'paisseur des traits en Mode trac filaire"
#: pcbnew/pcbplot.cpp:193 #: pcbnew/pcbplot.cpp:198
msgid "Absolute" msgid "Absolute"
msgstr "Absolu" msgstr "Absolu"
#: pcbnew/pcbplot.cpp:193 #: pcbnew/pcbplot.cpp:198
msgid "Auxiliary axis" msgid "Auxiliary axis"
msgstr "Axe Auxiliaire" msgstr "Axe Auxiliaire"
#: pcbnew/pcbplot.cpp:195 #: pcbnew/pcbplot.cpp:200
msgid "Plot Origin" msgid "Plot Origin"
msgstr "Origine des coord de trac" msgstr "Origine des coord de trac"
#: pcbnew/pcbplot.cpp:209 #: pcbnew/pcbplot.cpp:214
#: pcbnew/xchgmod.cpp:137 #: pcbnew/xchgmod.cpp:137
#: share/zoom.cpp:448 #: share/zoom.cpp:448
msgid "Close" msgid "Close"
msgstr "Fermer" msgstr "Fermer"
#: pcbnew/pcbplot.cpp:213 #: pcbnew/pcbplot.cpp:218
msgid "Save options" msgid "Save options"
msgstr "Sauver options" msgstr "Sauver options"
#: pcbnew/pcbplot.cpp:217 #: pcbnew/pcbplot.cpp:222
msgid "Create Drill File" msgid "Create Drill File"
msgstr "Crer Fichier de percage" msgstr "Crer Fichier de percage"
#: pcbnew/pcbplot.cpp:228 #: pcbnew/pcbplot.cpp:234
#: share/dialog_print.cpp:150 #: share/dialog_print.cpp:150
msgid "X Scale Adjust" msgid "X Scale Adjust"
msgstr "Ajustage Echelle X" msgstr "Ajustage Echelle X"
#: pcbnew/pcbplot.cpp:229 #: pcbnew/pcbplot.cpp:235
#: share/wxprint.cpp:170 #: share/wxprint.cpp:170
msgid "Set X scale adjust for exact scale plotting" msgid "Set X scale adjust for exact scale plotting"
msgstr "Ajuster chelle X pour traage l'chelle exacte" msgstr "Ajuster chelle X pour traage l'chelle exacte"
#: pcbnew/pcbplot.cpp:230 #: pcbnew/pcbplot.cpp:236
#: share/dialog_print.cpp:156 #: share/dialog_print.cpp:156
msgid "Y Scale Adjust" msgid "Y Scale Adjust"
msgstr "Ajustage Echelle Y" msgstr "Ajustage Echelle Y"
#: pcbnew/pcbplot.cpp:231 #: pcbnew/pcbplot.cpp:237
#: share/wxprint.cpp:171 #: share/wxprint.cpp:171
msgid "Set Y scale adjust for exact scale plotting" msgid "Set Y scale adjust for exact scale plotting"
msgstr "Ajuster chelle Y pour traage l'chelle exacte" msgstr "Ajuster chelle Y pour traage l'chelle exacte"
#: pcbnew/pcbplot.cpp:233 #: pcbnew/pcbplot.cpp:239
msgid "Plot Negative" msgid "Plot Negative"
msgstr "Trac en Negatif" msgstr "Trac en Negatif"
#: pcbnew/pcbplot.cpp:257 #: pcbnew/pcbplot.cpp:264
msgid "Exclude Edges Pcb layer" msgid "Exclude Edges Pcb Layer"
msgstr "Exclure Couche Contours PCB" msgstr "Exclure Couche Contours PCB"
#: pcbnew/pcbplot.cpp:260 #: pcbnew/pcbplot.cpp:267
msgid "Exclude contents of Edges Pcb layer from all other layers" msgid "Exclude contents of Edges Pcb layer from all other layers"
msgstr "Exclure les tracs contour PCB des autres couches" msgstr "Exclure les tracs contour PCB des autres couches"
#: pcbnew/pcbplot.cpp:266 #: pcbnew/pcbplot.cpp:273
#: eeschema/plotps.cpp:191 #: eeschema/plotps.cpp:191
#: share/svg_print.cpp:200 #: share/svg_print.cpp:200
#: share/dialog_print.cpp:174 #: share/dialog_print.cpp:174
msgid "Print Sheet Ref" msgid "Print Sheet Ref"
msgstr "Imprimer cartouche" msgstr "Imprimer cartouche"
#: pcbnew/pcbplot.cpp:275 #: pcbnew/pcbplot.cpp:282
msgid "Print Pads on Silkscreen" msgid "Print Pads on Silkscreen"
msgstr "Pads sur Srigraphie" msgstr "Pads sur Srigraphie"
#: pcbnew/pcbplot.cpp:278 #: pcbnew/pcbplot.cpp:285
msgid "Enable/disable print/plot pads on Silkscreen layers" msgid "Enable/disable print/plot pads on Silkscreen layers"
msgstr "Active/dsactive trac des pastilles sur les couches de srigraphie" msgstr "Active/dsactive trac des pastilles sur les couches de srigraphie"
#: pcbnew/pcbplot.cpp:282 #: pcbnew/pcbplot.cpp:289
msgid "Always Print Pads" msgid "Always Print Pads"
msgstr "Toujour tracer pads" msgstr "Toujour tracer pads"
#: pcbnew/pcbplot.cpp:284 #: pcbnew/pcbplot.cpp:291
msgid "Force print/plot pads on ALL layers" msgid "Force print/plot pads on ALL layers"
msgstr "Force le trac des pastilles sur TOUTES les couches" msgstr "Force le trac des pastilles sur TOUTES les couches"
#: pcbnew/pcbplot.cpp:288 #: pcbnew/pcbplot.cpp:295
msgid "Print Module Value" msgid "Print Module Value"
msgstr "Imprimer Valeur Module" msgstr "Imprimer Valeur Module"
#: pcbnew/pcbplot.cpp:291 #: pcbnew/pcbplot.cpp:298
msgid "Enable/disable print/plot module value on Silkscreen layers" msgid "Enable/disable print/plot module value on Silkscreen layers"
msgstr "Active/dsactive le trac des textes valeurs des modules sur couches de srigraphie" msgstr "Active/dsactive le trac des textes valeurs des modules sur couches de srigraphie"
#: pcbnew/pcbplot.cpp:294 #: pcbnew/pcbplot.cpp:301
msgid "Print Module Reference" msgid "Print Module Reference"
msgstr "Imprimer Rfrence Module" msgstr "Imprimer Rfrence Module"
#: pcbnew/pcbplot.cpp:297 #: pcbnew/pcbplot.cpp:304
msgid "Enable/disable print/plot module reference on Silkscreen layers" msgid "Enable/disable print/plot module reference on Silkscreen layers"
msgstr "Active/dsactive le trac des textes rfrence des modules sur couches de srigraphie" msgstr "Active/dsactive le trac des textes rfrence des modules sur couches de srigraphie"
#: pcbnew/pcbplot.cpp:301 #: pcbnew/pcbplot.cpp:308
msgid "Print other Module texts" msgid "Print other Module texts"
msgstr "Imprimer autres textes module" msgstr "Imprimer autres textes module"
#: pcbnew/pcbplot.cpp:304 #: pcbnew/pcbplot.cpp:311
msgid "Enable/disable print/plot module field texts on Silkscreen layers" msgid "Enable/disable print/plot module field texts on Silkscreen layers"
msgstr "Active/dsactive le trac des textes des champs des modules sur couches de srigraphie" msgstr "Active/dsactive le trac des textes des champs des modules sur couches de srigraphie"
#: pcbnew/pcbplot.cpp:308 #: pcbnew/pcbplot.cpp:315
msgid "Force Print Invisible Texts" msgid "Force Print Invisible Texts"
msgstr "Force trac textes invisibles" msgstr "Force trac textes invisibles"
#: pcbnew/pcbplot.cpp:311 #: pcbnew/pcbplot.cpp:318
msgid "Force print/plot module invisible texts on Silkscreen layers" msgid "Force print/plot module invisible texts on Silkscreen layers"
msgstr "Force le trac des textes invisibles sur couches de srigraphie" msgstr "Force le trac des textes invisibles sur couches de srigraphie"
#: pcbnew/pcbplot.cpp:315 #: pcbnew/pcbplot.cpp:322
msgid "No Drill mark" msgid "No Drill mark"
msgstr "Pas de marque" msgstr "Pas de marque"
#: pcbnew/pcbplot.cpp:315 #: pcbnew/pcbplot.cpp:322
msgid "Small mark" msgid "Small mark"
msgstr "Petite marque" msgstr "Petite marque"
#: pcbnew/pcbplot.cpp:315 #: pcbnew/pcbplot.cpp:322
msgid "Real Drill" msgid "Real Drill"
msgstr "Perage rel" msgstr "Perage rel"
#: pcbnew/pcbplot.cpp:317 #: pcbnew/pcbplot.cpp:324
msgid "Pads Drill Opt" msgid "Pads Drill Opt"
msgstr "Options perage" msgstr "Options perage"
#: pcbnew/pcbplot.cpp:323 #: pcbnew/pcbplot.cpp:330
msgid "Auto scale" msgid "Auto scale"
msgstr "Ech. auto" msgstr "Ech. auto"
#: pcbnew/pcbplot.cpp:323 #: pcbnew/pcbplot.cpp:330
msgid "Scale 1" msgid "Scale 1"
msgstr "Echelle 1" msgstr "Echelle 1"
#: pcbnew/pcbplot.cpp:323 #: pcbnew/pcbplot.cpp:330
msgid "Scale 1.5" msgid "Scale 1.5"
msgstr "Echelle 1,5" msgstr "Echelle 1,5"
#: pcbnew/pcbplot.cpp:323 #: pcbnew/pcbplot.cpp:330
#: share/dialog_print.cpp:142 #: share/dialog_print.cpp:142
msgid "Scale 2" msgid "Scale 2"
msgstr "Echelle 2" msgstr "Echelle 2"
#: pcbnew/pcbplot.cpp:323 #: pcbnew/pcbplot.cpp:330
#: share/dialog_print.cpp:143 #: share/dialog_print.cpp:143
msgid "Scale 3" msgid "Scale 3"
msgstr "Echelle 3" msgstr "Echelle 3"
#: pcbnew/pcbplot.cpp:325 #: pcbnew/pcbplot.cpp:332
msgid "Scale Opt" msgid "Scale Opt"
msgstr "Echelle" msgstr "Echelle"
#: pcbnew/pcbplot.cpp:330 #: pcbnew/pcbplot.cpp:337
#: pcbnew/dialog_display_options.cpp:221 #: pcbnew/dialog_display_options.cpp:221
#: pcbnew/dialog_display_options.cpp:229 #: pcbnew/dialog_display_options.cpp:229
#: pcbnew/dialog_display_options.cpp:266 #: pcbnew/dialog_display_options.cpp:266
#: pcbnew/class_board_item.cpp:98 #: pcbnew/class_board_item.cpp:98
#: pcbnew/dialog_zones_by_polygon.cpp:167 #: pcbnew/dialog_zones_by_polygon.cpp:168
#: gerbview/options.cpp:321 #: gerbview/options.cpp:321
msgid "Line" msgid "Line"
msgstr "Ligne" msgstr "Ligne"
#: pcbnew/pcbplot.cpp:330 #: pcbnew/pcbplot.cpp:337
#: pcbnew/dialog_display_options.cpp:192 #: pcbnew/dialog_display_options.cpp:192
#: pcbnew/dialog_display_options.cpp:222 #: pcbnew/dialog_display_options.cpp:222
#: pcbnew/dialog_display_options.cpp:230 #: pcbnew/dialog_display_options.cpp:230
...@@ -1194,7 +1235,7 @@ msgstr "Ligne" ...@@ -1194,7 +1235,7 @@ msgstr "Ligne"
msgid "Filled" msgid "Filled"
msgstr "Plein" msgstr "Plein"
#: pcbnew/pcbplot.cpp:330 #: pcbnew/pcbplot.cpp:337
#: pcbnew/dialog_display_options.cpp:191 #: pcbnew/dialog_display_options.cpp:191
#: pcbnew/dialog_display_options.cpp:223 #: pcbnew/dialog_display_options.cpp:223
#: pcbnew/dialog_display_options.cpp:231 #: pcbnew/dialog_display_options.cpp:231
...@@ -1205,27 +1246,27 @@ msgstr "Plein" ...@@ -1205,27 +1246,27 @@ msgstr "Plein"
msgid "Sketch" msgid "Sketch"
msgstr "Contour" msgstr "Contour"
#: pcbnew/pcbplot.cpp:331 #: pcbnew/pcbplot.cpp:338
msgid "Plot Mode" msgid "Plot Mode"
msgstr "Mode de Trac" msgstr "Mode de Trac"
#: pcbnew/pcbplot.cpp:338 #: pcbnew/pcbplot.cpp:345
msgid "Plot Mirror" msgid "Plot Mirror"
msgstr "Trac Miroir" msgstr "Trac Miroir"
#: pcbnew/pcbplot.cpp:343 #: pcbnew/pcbplot.cpp:350
msgid "Vias on Mask" msgid "Vias on Mask"
msgstr "Vias sur masque" 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" msgid "Print/plot vias on mask layers. They are in this case not protected"
msgstr "Trace vias sur vernis pargne. Elles seront non protges" msgstr "Trace vias sur vernis pargne. Elles seront non protges"
#: pcbnew/pcbplot.cpp:350 #: pcbnew/pcbplot.cpp:357
msgid "Org = Centre" msgid "Org = Centre"
msgstr "Org = Centre" msgstr "Org = Centre"
#: pcbnew/pcbplot.cpp:352 #: pcbnew/pcbplot.cpp:359
msgid "Draw origin ( 0,0 ) in sheet center" msgid "Draw origin ( 0,0 ) in sheet center"
msgstr "Origine des tracs au centre de la feuille" msgstr "Origine des tracs au centre de la feuille"
...@@ -1265,9 +1306,9 @@ msgid "Text" ...@@ -1265,9 +1306,9 @@ msgid "Text"
msgstr "Texte" msgstr "Texte"
#: pcbnew/class_text_mod.cpp:350 #: pcbnew/class_text_mod.cpp:350
#: pcbnew/class_pad.cpp:973
#: pcbnew/class_module.cpp:1243 #: pcbnew/class_module.cpp:1243
#: pcbnew/class_edge_mod.cpp:285 #: pcbnew/class_edge_mod.cpp:285
#: pcbnew/class_pad.cpp:881
#: cvpcb/setvisu.cpp:31 #: cvpcb/setvisu.cpp:31
msgid "Module" msgid "Module"
msgstr "Module" msgstr "Module"
...@@ -1277,7 +1318,7 @@ msgstr "Module" ...@@ -1277,7 +1318,7 @@ msgstr "Module"
#: pcbnew/class_track.cpp:776 #: pcbnew/class_track.cpp:776
#: pcbnew/class_drawsegment.cpp:159 #: pcbnew/class_drawsegment.cpp:159
#: pcbnew/class_zone.cpp:59 #: pcbnew/class_zone.cpp:59
#: pcbnew/class_zone.cpp:483 #: pcbnew/class_zone.cpp:494
#: gerbview/affiche.cpp:93 #: gerbview/affiche.cpp:93
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
...@@ -1326,14 +1367,14 @@ msgstr "Epaisseur" ...@@ -1326,14 +1367,14 @@ msgstr "Epaisseur"
#: pcbnew/class_text_mod.cpp:389 #: pcbnew/class_text_mod.cpp:389
#: pcbnew/class_pcb_text.cpp:194 #: pcbnew/class_pcb_text.cpp:194
#: pcbnew/class_pad.cpp:1075 #: pcbnew/class_pad.cpp:983
#: gerbview/affiche.cpp:55 #: gerbview/affiche.cpp:55
msgid "H Size" msgid "H Size"
msgstr "Taille H" msgstr "Taille H"
#: pcbnew/class_text_mod.cpp:392 #: pcbnew/class_text_mod.cpp:392
#: pcbnew/class_pcb_text.cpp:197 #: pcbnew/class_pcb_text.cpp:197
#: pcbnew/class_pad.cpp:1079 #: pcbnew/class_pad.cpp:987
#: gerbview/affiche.cpp:58 #: gerbview/affiche.cpp:58
msgid "V Size" msgid "V Size"
msgstr "Taille V" msgstr "Taille V"
...@@ -1689,7 +1730,7 @@ msgid "Print Module" ...@@ -1689,7 +1730,7 @@ msgid "Print Module"
msgstr "Imprimer Module" msgstr "Imprimer Module"
#: pcbnew/tool_modedit.cpp:115 #: pcbnew/tool_modedit.cpp:115
#: pcbnew/tool_pcb.cpp:269 #: pcbnew/tool_pcb.cpp:268
#: eeschema/tool_sch.cpp:108 #: eeschema/tool_sch.cpp:108
#: eeschema/tool_lib.cpp:170 #: eeschema/tool_lib.cpp:170
#: gerbview/tool_gerber.cpp:271 #: gerbview/tool_gerber.cpp:271
...@@ -1697,7 +1738,7 @@ msgid "zoom +" ...@@ -1697,7 +1738,7 @@ msgid "zoom +"
msgstr "zoom +" msgstr "zoom +"
#: pcbnew/tool_modedit.cpp:119 #: pcbnew/tool_modedit.cpp:119
#: pcbnew/tool_pcb.cpp:273 #: pcbnew/tool_pcb.cpp:272
#: eeschema/tool_sch.cpp:112 #: eeschema/tool_sch.cpp:112
#: eeschema/tool_lib.cpp:174 #: eeschema/tool_lib.cpp:174
#: gerbview/tool_gerber.cpp:278 #: gerbview/tool_gerber.cpp:278
...@@ -1705,7 +1746,7 @@ msgid "zoom -" ...@@ -1705,7 +1746,7 @@ msgid "zoom -"
msgstr "zoom -" msgstr "zoom -"
#: pcbnew/tool_modedit.cpp:123 #: pcbnew/tool_modedit.cpp:123
#: pcbnew/tool_pcb.cpp:277 #: pcbnew/tool_pcb.cpp:276
#: eeschema/tool_sch.cpp:116 #: eeschema/tool_sch.cpp:116
#: eeschema/tool_lib.cpp:178 #: eeschema/tool_lib.cpp:178
#: gerbview/tool_gerber.cpp:285 #: gerbview/tool_gerber.cpp:285
...@@ -1713,7 +1754,7 @@ msgid "redraw" ...@@ -1713,7 +1754,7 @@ msgid "redraw"
msgstr "Redessin" msgstr "Redessin"
#: pcbnew/tool_modedit.cpp:128 #: pcbnew/tool_modedit.cpp:128
#: pcbnew/tool_pcb.cpp:282 #: pcbnew/tool_pcb.cpp:281
#: eeschema/tool_sch.cpp:121 #: eeschema/tool_sch.cpp:121
#: eeschema/tool_lib.cpp:184 #: eeschema/tool_lib.cpp:184
#: gerbview/tool_gerber.cpp:296 #: gerbview/tool_gerber.cpp:296
...@@ -1737,36 +1778,28 @@ msgid "Add Pads" ...@@ -1737,36 +1778,28 @@ msgid "Add Pads"
msgstr "Addition de \"pins\"" msgstr "Addition de \"pins\""
#: pcbnew/tool_modedit.cpp:168 #: pcbnew/tool_modedit.cpp:168
#: pcbnew/tool_pcb.cpp:433 #: pcbnew/tool_pcb.cpp:434
#: eeschema/tool_sch.cpp:226 #: eeschema/tool_sch.cpp:226
msgid "Add graphic line or polygon" msgid "Add graphic line or polygon"
msgstr "Addition de lignes ou polygones graphiques" msgstr "Addition de lignes ou polygones graphiques"
#: pcbnew/tool_modedit.cpp:172 #: pcbnew/tool_modedit.cpp:172
#: pcbnew/tool_pcb.cpp:437 #: pcbnew/tool_pcb.cpp:438
msgid "Add graphic circle" msgid "Add graphic circle"
msgstr "Addition de graphiques (Cercle)" msgstr "Addition de graphiques (Cercle)"
#: pcbnew/tool_modedit.cpp:176 #: pcbnew/tool_modedit.cpp:176
#: pcbnew/tool_pcb.cpp:441 #: pcbnew/tool_pcb.cpp:442
msgid "Add graphic arc" msgid "Add graphic arc"
msgstr "Addition de graphiques (Arc de Cercle)" 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/tool_modedit.cpp:185
#: pcbnew/modedit.cpp:410 #: pcbnew/modedit.cpp:410
msgid "Place anchor" msgid "Place anchor"
msgstr "Place Ancre" msgstr "Place Ancre"
#: pcbnew/tool_modedit.cpp:190 #: pcbnew/tool_modedit.cpp:190
#: pcbnew/tool_pcb.cpp:459 #: pcbnew/tool_pcb.cpp:460
#: eeschema/tool_sch.cpp:235 #: eeschema/tool_sch.cpp:235
#: eeschema/tool_lib.cpp:93 #: eeschema/tool_lib.cpp:93
#: gerbview/tool_gerber.cpp:393 #: gerbview/tool_gerber.cpp:393
...@@ -1774,41 +1807,41 @@ msgid "Delete items" ...@@ -1774,41 +1807,41 @@ msgid "Delete items"
msgstr "Suppression d'lments" msgstr "Suppression d'lments"
#: pcbnew/tool_modedit.cpp:212 #: pcbnew/tool_modedit.cpp:212
#: pcbnew/tool_pcb.cpp:333 #: pcbnew/tool_pcb.cpp:334
#: eeschema/tool_sch.cpp:257 #: eeschema/tool_sch.cpp:257
#: gerbview/tool_gerber.cpp:417 #: gerbview/tool_gerber.cpp:417
msgid "Display Grid OFF" msgid "Display Grid OFF"
msgstr "Suppression de l'affichage de la grille" msgstr "Suppression de l'affichage de la grille"
#: pcbnew/tool_modedit.cpp:216 #: pcbnew/tool_modedit.cpp:216
#: pcbnew/tool_pcb.cpp:336 #: pcbnew/tool_pcb.cpp:337
#: gerbview/tool_gerber.cpp:423 #: gerbview/tool_gerber.cpp:423
msgid "Display Polar Coord ON" msgid "Display Polar Coord ON"
msgstr "Activer affichage coord Polaires" msgstr "Activer affichage coord Polaires"
#: pcbnew/tool_modedit.cpp:220 #: pcbnew/tool_modedit.cpp:220
#: pcbnew/tool_pcb.cpp:338 #: pcbnew/tool_pcb.cpp:339
#: eeschema/tool_sch.cpp:261 #: eeschema/tool_sch.cpp:261
#: gerbview/tool_gerber.cpp:427 #: gerbview/tool_gerber.cpp:427
msgid "Units = Inch" msgid "Units = Inch"
msgstr "Units = pouce" msgstr "Units = pouce"
#: pcbnew/tool_modedit.cpp:224 #: pcbnew/tool_modedit.cpp:224
#: pcbnew/tool_pcb.cpp:340 #: pcbnew/tool_pcb.cpp:341
#: eeschema/tool_sch.cpp:265 #: eeschema/tool_sch.cpp:265
#: gerbview/tool_gerber.cpp:431 #: gerbview/tool_gerber.cpp:431
msgid "Units = mm" msgid "Units = mm"
msgstr "Units = mm" msgstr "Units = mm"
#: pcbnew/tool_modedit.cpp:230 #: pcbnew/tool_modedit.cpp:230
#: pcbnew/tool_pcb.cpp:343 #: pcbnew/tool_pcb.cpp:344
#: eeschema/tool_sch.cpp:269 #: eeschema/tool_sch.cpp:269
#: gerbview/tool_gerber.cpp:437 #: gerbview/tool_gerber.cpp:437
msgid "Change Cursor Shape" msgid "Change Cursor Shape"
msgstr "Slection de la forme du curseur" msgstr "Slection de la forme du curseur"
#: pcbnew/tool_modedit.cpp:238 #: pcbnew/tool_modedit.cpp:238
#: pcbnew/tool_pcb.cpp:365 #: pcbnew/tool_pcb.cpp:366
msgid "Show Pads Sketch" msgid "Show Pads Sketch"
msgstr "Afficher pastilles en contour" msgstr "Afficher pastilles en contour"
...@@ -1821,7 +1854,7 @@ msgid "Show Edges Sketch" ...@@ -1821,7 +1854,7 @@ msgid "Show Edges Sketch"
msgstr "Afficher Modules en contour" msgstr "Afficher Modules en contour"
#: pcbnew/tool_modedit.cpp:285 #: pcbnew/tool_modedit.cpp:285
#: pcbnew/tool_pcb.cpp:566 #: pcbnew/tool_pcb.cpp:580
#: eeschema/plotps.cpp:169 #: eeschema/plotps.cpp:169
#: share/zoom.cpp:367 #: share/zoom.cpp:367
msgid "Auto" msgid "Auto"
...@@ -1843,48 +1876,48 @@ msgid "Grid %.3f" ...@@ -1843,48 +1876,48 @@ msgid "Grid %.3f"
msgstr "Grille %.3f" msgstr "Grille %.3f"
#: pcbnew/tool_modedit.cpp:314 #: pcbnew/tool_modedit.cpp:314
#: pcbnew/tool_pcb.cpp:600 #: pcbnew/tool_pcb.cpp:614
msgid "User Grid" msgid "User Grid"
msgstr "Grille perso" msgstr "Grille perso"
#: pcbnew/gendrill.cpp:298 #: pcbnew/gendrill.cpp:308
msgid "Drill file" msgid "Drill file"
msgstr "Fichier de percage" msgstr "Fichier de percage"
#: pcbnew/gendrill.cpp:316 #: pcbnew/gendrill.cpp:323
#: pcbnew/gendrill.cpp:779 #: pcbnew/gendrill.cpp:789
#: pcbnew/plotps.cpp:51 #: pcbnew/plotps.cpp:51
#: pcbnew/xchgmod.cpp:642 #: pcbnew/xchgmod.cpp:642
msgid "Unable to create file " msgid "Unable to create file "
msgstr "Impossible de crer le fichier " msgstr "Impossible de crer le fichier "
#: pcbnew/gendrill.cpp:368 #: pcbnew/gendrill.cpp:378
#: pcbnew/dialog_gendrill.cpp:180 #: pcbnew/dialog_gendrill.cpp:180
msgid "2:3" msgid "2:3"
msgstr "2:3" msgstr "2:3"
#: pcbnew/gendrill.cpp:369 #: pcbnew/gendrill.cpp:379
#: pcbnew/dialog_gendrill.cpp:181 #: pcbnew/dialog_gendrill.cpp:181
msgid "2:4" msgid "2:4"
msgstr "2:4" msgstr "2:4"
#: pcbnew/gendrill.cpp:374 #: pcbnew/gendrill.cpp:384
msgid "3:2" msgid "3:2"
msgstr "3:2" msgstr "3:2"
#: pcbnew/gendrill.cpp:375 #: pcbnew/gendrill.cpp:385
msgid "3:3" msgid "3:3"
msgstr "3:3" msgstr "3:3"
#: pcbnew/gendrill.cpp:718 #: pcbnew/gendrill.cpp:728
msgid "Drill Map file" msgid "Drill Map file"
msgstr "Fichier Plan de perage" msgstr "Fichier Plan de perage"
#: pcbnew/gendrill.cpp:733 #: pcbnew/gendrill.cpp:743
msgid "Unable to create file" msgid "Unable to create file"
msgstr "Impossible de crer le fichier " msgstr "Impossible de crer le fichier "
#: pcbnew/gendrill.cpp:764 #: pcbnew/gendrill.cpp:774
msgid "Drill Report file" msgid "Drill Report file"
msgstr "Fichier rapport de perage:" msgstr "Fichier rapport de perage:"
...@@ -1928,9 +1961,28 @@ msgstr "Valeur incorrecte pour offset du pad" ...@@ -1928,9 +1961,28 @@ msgstr "Valeur incorrecte pour offset du pad"
msgid "Unknown netname, no change" msgid "Unknown netname, no change"
msgstr "Net inconnu, pas de changement" msgstr "Net inconnu, pas de changement"
#: pcbnew/export_gencad.cpp:69 #: pcbnew/specctra.cpp:92
msgid "GenCAD file:" #: pcbnew/specctra.cpp:99
msgstr "Fichier GenCAD:" 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 systme sur criture fichier \"%s\""
#: pcbnew/class_pcb_text.cpp:173 #: pcbnew/class_pcb_text.cpp:173
#: gerbview/affiche.cpp:29 #: gerbview/affiche.cpp:29
...@@ -1942,10 +1994,6 @@ msgstr "COTATION" ...@@ -1942,10 +1994,6 @@ msgstr "COTATION"
msgid "PCB Text" msgid "PCB Text"
msgstr "Texte Pcb" 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/dialog_netlist.cpp:135
#: pcbnew/class_board_item.cpp:75 #: pcbnew/class_board_item.cpp:75
#: eeschema/onrightclick.cpp:320 #: eeschema/onrightclick.cpp:320
...@@ -1969,9 +2017,9 @@ msgid "Keep" ...@@ -1969,9 +2017,9 @@ msgid "Keep"
msgstr "Garder" msgstr "Garder"
#: pcbnew/dialog_netlist.cpp:143 #: pcbnew/dialog_netlist.cpp:143
#: pcbnew/onrightclick.cpp:599 #: pcbnew/onrightclick.cpp:612
#: pcbnew/onrightclick.cpp:772 #: pcbnew/onrightclick.cpp:785
#: pcbnew/onrightclick.cpp:869 #: pcbnew/onrightclick.cpp:882
#: eeschema/edit_component_in_lib.cpp:239 #: eeschema/edit_component_in_lib.cpp:239
#: eeschema/edit_component_in_lib.cpp:320 #: eeschema/edit_component_in_lib.cpp:320
msgid "Delete" msgid "Delete"
...@@ -2102,37 +2150,59 @@ msgstr "Invisible" ...@@ -2102,37 +2150,59 @@ msgstr "Invisible"
msgid "Value:" msgid "Value:"
msgstr "Valeur:" msgstr "Valeur:"
#: pcbnew/class_pad.cpp:801 #: pcbnew/initpcb.cpp:125
#: pcbnew/class_pad.cpp:887 msgid "Current Board will be lost ?"
msgid "Unknown Pad shape" msgstr "Le C.I. courant sera perdu ?"
msgstr "Forme pad inconnue"
#: pcbnew/class_pad.cpp:976 #: pcbnew/initpcb.cpp:215
msgid "RefP" msgid "Delete Zones ?"
msgstr "RefP" msgstr "Effacer Zones ?"
#: pcbnew/class_pad.cpp:979 #: pcbnew/initpcb.cpp:243
#: pcbnew/class_board_item.cpp:35 msgid "Delete Board edges ?"
msgid "Net" msgstr "Effacement contour PCB"
msgstr "Net"
#: pcbnew/class_pad.cpp:1085 #: pcbnew/initpcb.cpp:248
#: pcbnew/class_track.cpp:847 msgid "Delete draw items?"
#: pcbnew/class_track.cpp:852 msgstr "Suppression lments graphiques?"
msgid "Drill"
msgstr "Perage"
#: pcbnew/class_pad.cpp:1093 #: pcbnew/initpcb.cpp:290
msgid "Drill X / Y" #: gerbview/initpcb.cpp:150
msgstr "Perage X/Y" msgid "Delete Tracks?"
msgstr "Effacer Pistes ?"
#: pcbnew/class_pad.cpp:1108 #: pcbnew/initpcb.cpp:313
msgid "X Pos" msgid "Delete Modules?"
msgstr "X Pos" msgstr "Effacement des Modules?"
#: pcbnew/class_pad.cpp:1112 #: pcbnew/initpcb.cpp:336
msgid "Y pos" #: gerbview/initpcb.cpp:173
msgstr "Y pos" msgid "Delete Pcb Texts"
msgstr "Effacer Textes Pcb"
#: pcbnew/dsn.cpp:501
msgid "Line length exceeded"
msgstr "Longueur de ligne dpasse"
#: 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 caractre de dlimitation de ligne doit tre un seul caractre ', \", or $"
#: pcbnew/dsn.cpp:755
msgid "Un-terminated delimited string"
msgstr "Ligne dlimite non termine"
#: pcbnew/modedit.cpp:77 #: pcbnew/modedit.cpp:77
#: pcbnew/controle.cpp:172 #: pcbnew/controle.cpp:172
...@@ -2172,15 +2242,8 @@ msgstr "Ajouter Pastilles" ...@@ -2172,15 +2242,8 @@ msgstr "Ajouter Pastilles"
msgid "Add Drawing" msgid "Add Drawing"
msgstr "Ajout d'lments graphiques" msgstr "Ajout d'lments graphiques"
#: pcbnew/modedit.cpp:424
#: pcbnew/edit.cpp:540
#: eeschema/schedit.cpp:455
#: eeschema/libframe.cpp:579
msgid "Delete item"
msgstr "Suppression d'lments"
#: pcbnew/modedit_onclick.cpp:207 #: pcbnew/modedit_onclick.cpp:207
#: pcbnew/onrightclick.cpp:150 #: pcbnew/onrightclick.cpp:162
#: eeschema/onrightclick.cpp:126 #: eeschema/onrightclick.cpp:126
#: eeschema/libedit_onrightclick.cpp:53 #: eeschema/libedit_onrightclick.cpp:53
#: gerbview/onrightclick.cpp:42 #: gerbview/onrightclick.cpp:42
...@@ -2188,7 +2251,7 @@ msgid "End Tool" ...@@ -2188,7 +2251,7 @@ msgid "End Tool"
msgstr "Fin Outil" msgstr "Fin Outil"
#: pcbnew/modedit_onclick.cpp:217 #: pcbnew/modedit_onclick.cpp:217
#: pcbnew/onrightclick.cpp:473 #: pcbnew/onrightclick.cpp:486
#: eeschema/onrightclick.cpp:587 #: eeschema/onrightclick.cpp:587
#: eeschema/libedit_onrightclick.cpp:237 #: eeschema/libedit_onrightclick.cpp:237
#: gerbview/onrightclick.cpp:51 #: gerbview/onrightclick.cpp:51
...@@ -2196,13 +2259,13 @@ msgid "Cancel Block" ...@@ -2196,13 +2259,13 @@ msgid "Cancel Block"
msgstr "Annuler Bloc" msgstr "Annuler Bloc"
#: pcbnew/modedit_onclick.cpp:219 #: pcbnew/modedit_onclick.cpp:219
#: pcbnew/onrightclick.cpp:475 #: pcbnew/onrightclick.cpp:488
#: gerbview/onrightclick.cpp:52 #: gerbview/onrightclick.cpp:52
msgid "Zoom Block (Midd butt drag)" msgid "Zoom Block (Midd butt drag)"
msgstr "Zoom Bloc (drag+bouton milieu)" msgstr "Zoom Bloc (drag+bouton milieu)"
#: pcbnew/modedit_onclick.cpp:222 #: pcbnew/modedit_onclick.cpp:222
#: pcbnew/onrightclick.cpp:478 #: pcbnew/onrightclick.cpp:491
#: eeschema/onrightclick.cpp:595 #: eeschema/onrightclick.cpp:595
#: eeschema/libedit_onrightclick.cpp:245 #: eeschema/libedit_onrightclick.cpp:245
#: gerbview/onrightclick.cpp:54 #: gerbview/onrightclick.cpp:54
...@@ -2210,7 +2273,7 @@ msgid "Place Block" ...@@ -2210,7 +2273,7 @@ msgid "Place Block"
msgstr "Place Bloc" msgstr "Place Bloc"
#: pcbnew/modedit_onclick.cpp:224 #: pcbnew/modedit_onclick.cpp:224
#: pcbnew/onrightclick.cpp:480 #: pcbnew/onrightclick.cpp:493
#: eeschema/onrightclick.cpp:604 #: eeschema/onrightclick.cpp:604
#: eeschema/libedit_onrightclick.cpp:251 #: eeschema/libedit_onrightclick.cpp:251
msgid "Copy Block (shift + drag mouse)" msgid "Copy Block (shift + drag mouse)"
...@@ -2221,18 +2284,18 @@ msgid "Mirror Block (alt + drag mouse)" ...@@ -2221,18 +2284,18 @@ msgid "Mirror Block (alt + drag mouse)"
msgstr "Bloc Miroir (alt + drag mouse)" msgstr "Bloc Miroir (alt + drag mouse)"
#: pcbnew/modedit_onclick.cpp:228 #: pcbnew/modedit_onclick.cpp:228
#: pcbnew/onrightclick.cpp:484 #: pcbnew/onrightclick.cpp:497
msgid "Rotate Block (ctrl + drag mouse)" msgid "Rotate Block (ctrl + drag mouse)"
msgstr "Rotation Bloc (ctrl + drag mouse)" msgstr "Rotation Bloc (ctrl + drag mouse)"
#: pcbnew/modedit_onclick.cpp:230 #: pcbnew/modedit_onclick.cpp:230
#: pcbnew/onrightclick.cpp:486 #: pcbnew/onrightclick.cpp:499
msgid "Delete Block (shift+ctrl + drag mouse)" msgid "Delete Block (shift+ctrl + drag mouse)"
msgstr "Effacement Bloc (shift+ctrl + drag mouse)" msgstr "Effacement Bloc (shift+ctrl + drag mouse)"
#: pcbnew/modedit_onclick.cpp:252 #: pcbnew/modedit_onclick.cpp:252
#: pcbnew/onrightclick.cpp:766 #: pcbnew/onrightclick.cpp:779
#: pcbnew/onrightclick.cpp:863 #: pcbnew/onrightclick.cpp:876
msgid "Rotate" msgid "Rotate"
msgstr "Rotation" msgstr "Rotation"
...@@ -2257,17 +2320,17 @@ msgid "Move Pad" ...@@ -2257,17 +2320,17 @@ msgid "Move Pad"
msgstr "Dplace Pad" msgstr "Dplace Pad"
#: pcbnew/modedit_onclick.cpp:274 #: pcbnew/modedit_onclick.cpp:274
#: pcbnew/onrightclick.cpp:805 #: pcbnew/onrightclick.cpp:818
msgid "Edit Pad" msgid "Edit Pad"
msgstr "Edit Pad" msgstr "Edit Pad"
#: pcbnew/modedit_onclick.cpp:276 #: pcbnew/modedit_onclick.cpp:276
#: pcbnew/onrightclick.cpp:809 #: pcbnew/onrightclick.cpp:822
msgid "New Pad Settings" msgid "New Pad Settings"
msgstr "Nouvelles Caract. Pads" msgstr "Nouvelles Caract. Pads"
#: pcbnew/modedit_onclick.cpp:278 #: pcbnew/modedit_onclick.cpp:278
#: pcbnew/onrightclick.cpp:811 #: pcbnew/onrightclick.cpp:824
msgid "Export Pad Settings" msgid "Export Pad Settings"
msgstr "Exporte Caract. Pads" msgstr "Exporte Caract. Pads"
...@@ -2276,7 +2339,7 @@ msgid "delete Pad" ...@@ -2276,7 +2339,7 @@ msgid "delete Pad"
msgstr "Supprimer Pad" msgstr "Supprimer Pad"
#: pcbnew/modedit_onclick.cpp:285 #: pcbnew/modedit_onclick.cpp:285
#: pcbnew/onrightclick.cpp:816 #: pcbnew/onrightclick.cpp:829
msgid "Global Pad Settings" msgid "Global Pad Settings"
msgstr "Edition Globale des pads" msgstr "Edition Globale des pads"
...@@ -2309,9 +2372,9 @@ msgid "Place edge" ...@@ -2309,9 +2372,9 @@ msgid "Place edge"
msgstr "Place contour" msgstr "Place contour"
#: pcbnew/modedit_onclick.cpp:317 #: pcbnew/modedit_onclick.cpp:317
#: pcbnew/onrightclick.cpp:734 #: pcbnew/onrightclick.cpp:747
#: pcbnew/onrightclick.cpp:768 #: pcbnew/onrightclick.cpp:781
#: pcbnew/onrightclick.cpp:865 #: pcbnew/onrightclick.cpp:878
#: eeschema/onrightclick.cpp:313 #: eeschema/onrightclick.cpp:313
msgid "Edit" msgid "Edit"
msgstr "Editer" msgstr "Editer"
...@@ -2348,7 +2411,7 @@ msgstr "Fichier" ...@@ -2348,7 +2411,7 @@ msgstr "Fichier"
#: pcbnew/plotps.cpp:361 #: pcbnew/plotps.cpp:361
#: pcbnew/affiche.cpp:63 #: pcbnew/affiche.cpp:63
#: pcbnew/class_board.cpp:412 #: pcbnew/class_board.cpp:424
msgid "Vias" msgid "Vias"
msgstr "Vias" msgstr "Vias"
...@@ -2377,710 +2440,702 @@ msgstr "Pistes sur couches cuivre seulement" ...@@ -2377,710 +2440,702 @@ msgstr "Pistes sur couches cuivre seulement"
msgid "Cotation not authorized on Copper layers" msgid "Cotation not authorized on Copper layers"
msgstr "Cotation non autorise sur Couches Cuivre" msgstr "Cotation non autorise sur Couches Cuivre"
#: pcbnew/dialog_track_options.cpp:134 #: pcbnew/onrightclick.cpp:76
msgid "Vias:" msgid "Auto Width"
msgstr "Vias:" msgstr "Epaisseur Automatique"
#: pcbnew/dialog_track_options.cpp:138
msgid "Via Size"
msgstr "Diametre Via"
#: pcbnew/dialog_track_options.cpp:144 #: pcbnew/onrightclick.cpp:78
msgid "Default Via Drill" msgid "Use the track width when starting on a track, otherwise the current track width"
msgstr "Perage vias par dfaut" msgstr "Ssi on dmarre sur une piste existante, utiliser sa largeur, sinon utiliserlal largeur courante"
#: pcbnew/dialog_track_options.cpp:150 #: pcbnew/onrightclick.cpp:92
msgid "Alternate Via Drill" #, c-format
msgstr "Perage vias alternatif" msgid "Track %.1f"
msgstr "Piste %.1f"
#: pcbnew/dialog_track_options.cpp:157 #: pcbnew/onrightclick.cpp:94
#: pcbnew/pcbnew.h:291 #, c-format
msgid "Through Via" msgid "Track %.3f"
msgstr "Via Traversante" msgstr "Piste %.3f"
#: pcbnew/dialog_track_options.cpp:158 #: pcbnew/onrightclick.cpp:112
msgid "Blind or Buried Via " #, c-format
msgstr "Via enterre ou Aveugle" msgid "Via %.1f"
msgstr "Via %.1f"
#: pcbnew/dialog_track_options.cpp:159 #: pcbnew/onrightclick.cpp:114
msgid "Default Via Type" #, c-format
msgstr "Via par Dfaut" msgid "Via %.3f"
msgstr "Via %.3f"
#: pcbnew/dialog_track_options.cpp:163 #: pcbnew/onrightclick.cpp:230
#: pcbnew/dialog_gendrill.cpp:270 msgid "Lock Module"
msgid "Micro Vias:" msgstr "Verrouiller Modules"
msgstr "Micro Vias:"
#: pcbnew/dialog_track_options.cpp:167 #: pcbnew/onrightclick.cpp:238
msgid "Micro Via Size" msgid "Unlock Module"
msgstr "Diametre Micro Via" msgstr "Dverrouiller Modules"
#: pcbnew/dialog_track_options.cpp:173 #: pcbnew/onrightclick.cpp:246
msgid "Micro Via Drill" msgid "Auto place Module"
msgstr "Perage Micro Via" msgstr "Auto place Module"
#: pcbnew/dialog_track_options.cpp:181 #: pcbnew/onrightclick.cpp:252
msgid "Allows Micro Vias" msgid "Autoroute"
msgstr "Autorise Micro Vias" msgstr "Autoroute"
#: pcbnew/dialog_track_options.cpp:183 #: pcbnew/onrightclick.cpp:268
#: pcbnew/dialog_track_options.cpp:185 msgid "Move Drawing"
msgid "" msgstr "Dplace Trac"
"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:191 #: pcbnew/onrightclick.cpp:273
msgid "Track Width" msgid "End Drawing"
msgstr "Epais. Piste" msgstr "Fin trac"
#: pcbnew/dialog_track_options.cpp:197 #: pcbnew/onrightclick.cpp:275
#: pcbnew/dialog_drc.cpp:439 msgid "Edit Drawing"
msgid "Clearance" msgstr "Edit Trac"
msgstr "Isolation"
#: pcbnew/dialog_track_options.cpp:203 #: pcbnew/onrightclick.cpp:276
msgid "Mask clearance" msgid "Delete Drawing"
msgstr "Retrait Masque" msgstr "Supprimer Trac"
#: pcbnew/dialog_display_options.cpp:186 #: pcbnew/onrightclick.cpp:281
msgid "Tracks and vias"
msgstr "Pistes et vias"
#: pcbnew/dialog_display_options.cpp:193
msgid "Tracks:"
msgstr "Pistes:"
#: pcbnew/dialog_display_options.cpp:199
msgid "New track"
msgstr "Nouvelle piste"
#: pcbnew/dialog_display_options.cpp:201
msgid "Show Track Clearance"
msgstr "Monter Isolation Piste"
#: pcbnew/dialog_display_options.cpp:207
msgid "defined holes"
msgstr "Trous dfinis"
#: pcbnew/dialog_display_options.cpp:209
msgid "Show Via Holes"
msgstr "Montrer trous pour vias"
#: pcbnew/dialog_display_options.cpp:213
msgid "Modules"
msgstr "Modules"
#: pcbnew/dialog_display_options.cpp:224
msgid "Module Texts"
msgstr "Texte module"
#: pcbnew/dialog_display_options.cpp:232
msgid "Module Edges:"
msgstr "Contours modules:"
#: pcbnew/dialog_display_options.cpp:239
msgid "Pad Options:"
msgstr "Options Pads:"
#: pcbnew/dialog_display_options.cpp:246
msgid "Pad Shapes:"
msgstr "Forme Pads:"
#: pcbnew/dialog_display_options.cpp:250
msgid "Show Pad Clearance"
msgstr "Monter Isolation"
#: pcbnew/dialog_display_options.cpp:254
msgid "Show Pad Number"
msgstr "Afficher le n de pad"
#: pcbnew/dialog_display_options.cpp:258
msgid "Show Pad NoConnect"
msgstr "Montrer non conn"
#: pcbnew/dialog_display_options.cpp:269
#: gerbview/options.cpp:322
msgid "Display other items:"
msgstr "Afficher autres lments"
#: pcbnew/dialog_display_options.cpp:276
#: eeschema/dialog_options.cpp:267
msgid "Show page limits"
msgstr " Afficher limites de page"
#: pcbnew/menubarmodedit.cpp:40
msgid "Sizes and Widths"
msgstr "Dims. et Epaiss."
#: pcbnew/menubarmodedit.cpp:41
#: pcbnew/menubarpcb.cpp:212
msgid "Adjust width for texts and drawings"
msgstr "Ajuster dims pour textes et graphiques"
#: pcbnew/menubarmodedit.cpp:46
#: pcbnew/menubarpcb.cpp:217
msgid "Adjust size,shape,layers... for Pads"
msgstr "Ajuster taille, forme, couches... pour pads"
#: pcbnew/menubarmodedit.cpp:50
#: pcbnew/menubarpcb.cpp:206
#: pcbnew/set_grid.h:39
msgid "User Grid Size"
msgstr "Dim Grille utilisteur"
#: pcbnew/menubarmodedit.cpp:51
#: pcbnew/menubarpcb.cpp:207
msgid "Adjust User Grid"
msgstr "Ajuster Grille utilisateur"
#: pcbnew/menubarmodedit.cpp:60
#: pcbnew/menubarpcb.cpp:275
#: eeschema/menubar.cpp:178
#: cvpcb/tool_cvpcb.cpp:158
#: kicad/buildmnu.cpp:198
#: gerbview/tool_gerber.cpp:149
msgid "&Contents"
msgstr "&Contenu"
#: pcbnew/menubarmodedit.cpp:60
#: pcbnew/menubarpcb.cpp:275
msgid "Open the pcbnew manual"
msgstr "Ouvrir la documentation de pcbnew"
#: pcbnew/menubarmodedit.cpp:64
#: pcbnew/menubarpcb.cpp:279
#: eeschema/menubar.cpp:183
#: cvpcb/tool_cvpcb.cpp:162
#: kicad/buildmnu.cpp:203
#: gerbview/tool_gerber.cpp:151
msgid "&About"
msgstr "&Infos logiciel"
#: pcbnew/menubarmodedit.cpp:64
#: pcbnew/menubarpcb.cpp:279
#: eeschema/menubar.cpp:183
#: cvpcb/tool_cvpcb.cpp:163
#: kicad/buildmnu.cpp:203
#: gerbview/tool_gerber.cpp:152
msgid "About this application"
msgstr "Au sujet de cette application"
#: pcbnew/menubarmodedit.cpp:72
#: pcbnew/menubarpcb.cpp:287
msgid "3D Display"
msgstr "3D Visu"
#: pcbnew/menubarmodedit.cpp:72
#: pcbnew/menubarpcb.cpp:287
msgid "Show Board in 3D Mode"
msgstr "Visualisation en 3D"
#: pcbnew/menubarmodedit.cpp:76
#: pcbnew/menubarpcb.cpp:293
msgid "&Dimensions"
msgstr "&Dimensions"
#: pcbnew/menubarmodedit.cpp:77
#: pcbnew/menubarpcb.cpp:296
msgid "&3D Display"
msgstr "&3D Visu"
#: pcbnew/menubarmodedit.cpp:78
#: pcbnew/menubarpcb.cpp:297
#: eeschema/menubar.cpp:191
#: cvpcb/tool_cvpcb.cpp:169
#: kicad/buildmnu.cpp:211
#: gerbview/tool_gerber.cpp:159
msgid "&Help"
msgstr "&Aide"
#: pcbnew/edgemod.cpp:204
msgid "The graphic item will be on a copper layer.It is very dangerous. Are you sure"
msgstr "L'lment graphique sera sur une couche cuivre. C'est trs dangereux. Etes vous sr"
#: pcbnew/edgemod.cpp:246
msgid "New Width (1/10000\"):"
msgstr "Novelle largeur (1/10000\"):"
#: pcbnew/edgemod.cpp:253
msgid "Incorrect number, no change"
msgstr "Nombre incorrect, pas de changement"
#: pcbnew/modules.cpp:81
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 dpasse"
#: 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 caractre de dlimitation de ligne doit tre un seul caractre ', \", or $"
#: pcbnew/dsn.cpp:743
msgid "Un-terminated delimited string"
msgstr "Ligne dlimite non termine"
#: 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 systme 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 "Dverrouiller 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 "Dplace 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" msgid "Delete Zone"
msgstr "Supprimer Zone" msgstr "Supprimer Zone"
#: pcbnew/onrightclick.cpp:276 #: pcbnew/onrightclick.cpp:288
msgid "End edge zone" msgid "End edge zone"
msgstr "Fin contour Zone" msgstr "Fin contour Zone"
#: pcbnew/onrightclick.cpp:279 #: pcbnew/onrightclick.cpp:291
msgid "Delete Current Edge" msgid "Delete Current Edge"
msgstr "Effacer Contour Zone Courant" msgstr "Effacer Contour Zone Courant"
#: pcbnew/onrightclick.cpp:298 #: pcbnew/onrightclick.cpp:310
msgid "Delete Marker" msgid "Delete Marker"
msgstr "Effacer Marqueur" msgstr "Effacer Marqueur"
#: pcbnew/onrightclick.cpp:305 #: pcbnew/onrightclick.cpp:317
msgid "Edit Dimension" msgid "Edit Dimension"
msgstr "Edit Cote" msgstr "Edit Cote"
#: pcbnew/onrightclick.cpp:308 #: pcbnew/onrightclick.cpp:320
msgid "Delete Dimension" msgid "Delete Dimension"
msgstr "Suppression Cote" msgstr "Suppression Cote"
#: pcbnew/onrightclick.cpp:315 #: pcbnew/onrightclick.cpp:327
msgid "Move Target" msgid "Move Target"
msgstr "Dplacer Mire" msgstr "Dplacer Mire"
#: pcbnew/onrightclick.cpp:318 #: pcbnew/onrightclick.cpp:330
msgid "Edit Target" msgid "Edit Target"
msgstr "Editer Mire" msgstr "Editer Mire"
#: pcbnew/onrightclick.cpp:320 #: pcbnew/onrightclick.cpp:332
msgid "Delete Target" msgid "Delete Target"
msgstr "Supprimer Mire" msgstr "Supprimer Mire"
#: pcbnew/onrightclick.cpp:351 #: pcbnew/onrightclick.cpp:364
msgid "Get and Move Footprint" msgid "Get and Move Footprint"
msgstr "Sel et Dpl.t module" msgstr "Sel et Dpl.t module"
#: pcbnew/onrightclick.cpp:365 #: pcbnew/onrightclick.cpp:378
msgid "Fill or Refill All Zones" msgid "Fill or Refill All Zones"
msgstr "Remplir ou Re-remplir Toutes les Zones" msgstr "Remplir ou Re-remplir Toutes les Zones"
#: pcbnew/onrightclick.cpp:370 #: pcbnew/onrightclick.cpp:383
#: pcbnew/onrightclick.cpp:381
#: pcbnew/onrightclick.cpp:394 #: pcbnew/onrightclick.cpp:394
#: pcbnew/onrightclick.cpp:455 #: pcbnew/onrightclick.cpp:407
#: pcbnew/onrightclick.cpp:468
msgid "Select Working Layer" msgid "Select Working Layer"
msgstr "Slection de la couche de travail" msgstr "Slection de la couche de travail"
#: pcbnew/onrightclick.cpp:379 #: pcbnew/onrightclick.cpp:392
#: pcbnew/onrightclick.cpp:452 #: pcbnew/onrightclick.cpp:465
#: pcbnew/onrightclick.cpp:593
msgid "Select Track Width" msgid "Select Track Width"
msgstr "Slection Epais. Piste" msgstr "Slection Epais. Piste"
#: pcbnew/onrightclick.cpp:383 #: pcbnew/onrightclick.cpp:396
msgid "Select layer pair for vias" msgid "Select layer pair for vias"
msgstr "Selection couple de couches pour Vias" msgstr "Selection couple de couches pour Vias"
#: pcbnew/onrightclick.cpp:400 #: pcbnew/onrightclick.cpp:413
msgid "Footprint documentation" msgid "Footprint documentation"
msgstr "Documentation des modules" msgstr "Documentation des modules"
#: pcbnew/onrightclick.cpp:410 #: pcbnew/onrightclick.cpp:423
msgid "Glob Move and Place" msgid "Glob Move and Place"
msgstr "Move et Place Globaux" msgstr "Move et Place Globaux"
#: pcbnew/onrightclick.cpp:412 #: pcbnew/onrightclick.cpp:425
msgid "Unlock All Modules" msgid "Unlock All Modules"
msgstr "Dverrouiller tous les Modules" msgstr "Dverrouiller tous les Modules"
#: pcbnew/onrightclick.cpp:414 #: pcbnew/onrightclick.cpp:427
msgid "Lock All Modules" msgid "Lock All Modules"
msgstr "Verrouiller tous les Modules" msgstr "Verrouiller tous les Modules"
#: pcbnew/onrightclick.cpp:417 #: pcbnew/onrightclick.cpp:430
msgid "Move All Modules" msgid "Move All Modules"
msgstr "Dplace tous les Modules" msgstr "Dplace tous les Modules"
#: pcbnew/onrightclick.cpp:418 #: pcbnew/onrightclick.cpp:431
msgid "Move New Modules" msgid "Move New Modules"
msgstr "Dplace nouveaux Modules" msgstr "Dplace nouveaux Modules"
#: pcbnew/onrightclick.cpp:420 #: pcbnew/onrightclick.cpp:433
msgid "Autoplace All Modules" msgid "Autoplace All Modules"
msgstr "Autoplace Tous Modules" msgstr "Autoplace Tous Modules"
#: pcbnew/onrightclick.cpp:421 #: pcbnew/onrightclick.cpp:434
msgid "Autoplace New Modules" msgid "Autoplace New Modules"
msgstr "AutoPlace nouveaux Modules" msgstr "AutoPlace nouveaux Modules"
#: pcbnew/onrightclick.cpp:422 #: pcbnew/onrightclick.cpp:435
msgid "Autoplace Next Module" msgid "Autoplace Next Module"
msgstr "Autoplace Module suivant" msgstr "Autoplace Module suivant"
#: pcbnew/onrightclick.cpp:425 #: pcbnew/onrightclick.cpp:438
msgid "Orient All Modules" msgid "Orient All Modules"
msgstr "Oriente Tous Modules" msgstr "Oriente Tous Modules"
#: pcbnew/onrightclick.cpp:432 #: pcbnew/onrightclick.cpp:445
msgid "Global Autoroute" msgid "Global Autoroute"
msgstr "Autoroutage global" msgstr "Autoroutage global"
#: pcbnew/onrightclick.cpp:434 #: pcbnew/onrightclick.cpp:447
msgid "Select layer pair" msgid "Select layer pair"
msgstr "Selection couple de couches" msgstr "Selection couple de couches"
#: pcbnew/onrightclick.cpp:436 #: pcbnew/onrightclick.cpp:449
msgid "Autoroute All Modules" msgid "Autoroute All Modules"
msgstr "Autoroute Tous Modules" msgstr "Autoroute Tous Modules"
#: pcbnew/onrightclick.cpp:438 #: pcbnew/onrightclick.cpp:451
msgid "Reset Unrouted" msgid "Reset Unrouted"
msgstr "Rinit Non routs" msgstr "Rinit Non routs"
#: pcbnew/onrightclick.cpp:443 #: pcbnew/onrightclick.cpp:456
msgid "Global AutoRouter" msgid "Global AutoRouter"
msgstr "Autorouteur Global" msgstr "Autorouteur Global"
#: pcbnew/onrightclick.cpp:445 #: pcbnew/onrightclick.cpp:458
msgid "Read Global AutoRouter Data" msgid "Read Global AutoRouter Data"
msgstr "Lire Donnes de L'autorouteur global" msgstr "Lire Donnes de L'autorouteur global"
#: pcbnew/onrightclick.cpp:482 #: pcbnew/onrightclick.cpp:495
msgid "Flip Block (alt + drag mouse)" msgid "Flip Block (alt + drag mouse)"
msgstr "Inversion Bloc (alt + drag mouse)" msgstr "Inversion Bloc (alt + drag mouse)"
#: pcbnew/onrightclick.cpp:505 #: pcbnew/onrightclick.cpp:518
msgid "Drag Via" msgid "Drag Via"
msgstr "Drag Via" msgstr "Drag Via"
#: pcbnew/onrightclick.cpp:509 #: pcbnew/onrightclick.cpp:522
#: pcbnew/onrightclick.cpp:579
msgid "Edit Via" msgid "Edit Via"
msgstr "Edit Via" msgstr "Edit Via"
#: pcbnew/onrightclick.cpp:511 #: pcbnew/onrightclick.cpp:524
msgid "Set via hole to Default" msgid "Set via hole to Default"
msgstr "Ajuste perage via dfaut" msgstr "Ajuste perage via dfaut"
#: pcbnew/onrightclick.cpp:513 #: pcbnew/onrightclick.cpp:526
msgid "Set via hole to alt value" msgid "Set via hole to alt value"
msgstr "Ajuste perage via valeur alternative" msgstr "Ajuste perage via valeur alternative"
#: pcbnew/onrightclick.cpp:515 #: pcbnew/onrightclick.cpp:528
msgid "Set the via hole alt value" msgid "Set the via hole alt value"
msgstr "Ajuste la valeur alt. perage via" msgstr "Ajuste la valeur alt. perage via"
#: pcbnew/onrightclick.cpp:517 #: pcbnew/onrightclick.cpp:530
msgid "Export Via hole to alt value" msgid "Export Via hole to alt value"
msgstr "Exporte perage via valeur alt." msgstr "Exporte perage via valeur alt."
#: pcbnew/onrightclick.cpp:519 #: pcbnew/onrightclick.cpp:532
msgid "Export via hole to others id vias" msgid "Export via hole to others id vias"
msgstr "Exporte perage via aux autres semblables." msgstr "Exporte perage via aux autres semblables."
#: pcbnew/onrightclick.cpp:521 #: pcbnew/onrightclick.cpp:534
msgid "Set ALL via holes to default" msgid "Set ALL via holes to default"
msgstr "Ajuste perage TOUTES vias au dfaut" msgstr "Ajuste perage TOUTES vias au dfaut"
#: pcbnew/onrightclick.cpp:534 #: pcbnew/onrightclick.cpp:547
msgid "Move Node" msgid "Move Node"
msgstr "Dplace Noeud" msgstr "Dplace Noeud"
#: pcbnew/onrightclick.cpp:539 #: pcbnew/onrightclick.cpp:552
msgid "Drag Segments, keep slope" msgid "Drag Segments, keep slope"
msgstr "Drag Segments, garder direction" msgstr "Drag Segments, garder direction"
#: pcbnew/onrightclick.cpp:541 #: pcbnew/onrightclick.cpp:554
msgid "Drag Segment" msgid "Drag Segment"
msgstr "Drag Segment" msgstr "Drag Segment"
#: pcbnew/onrightclick.cpp:544 #: pcbnew/onrightclick.cpp:557
msgid "Move Segment" msgid "Move Segment"
msgstr "Dplace Segment" msgstr "Dplace Segment"
#: pcbnew/onrightclick.cpp:547 #: pcbnew/onrightclick.cpp:560
msgid "Break Track" msgid "Break Track"
msgstr "Briser piste" msgstr "Briser piste"
#: pcbnew/onrightclick.cpp:554 #: pcbnew/onrightclick.cpp:567
msgid "Place Node" msgid "Place Node"
msgstr "Place noeud" msgstr "Place noeud"
#: pcbnew/onrightclick.cpp:561 #: pcbnew/onrightclick.cpp:574
msgid "End Track" msgid "End Track"
msgstr "Terminer Piste" msgstr "Terminer Piste"
#: pcbnew/onrightclick.cpp:564 #: pcbnew/onrightclick.cpp:577
msgid "Place Via" msgid "Place Via"
msgstr "Place Via" msgstr "Place Via"
#: pcbnew/onrightclick.cpp:569 #: pcbnew/onrightclick.cpp:584
msgid "Place Micro Via" msgid "Place Micro Via"
msgstr "Place Micro Via" msgstr "Place Micro Via"
#: pcbnew/onrightclick.cpp:577 #: pcbnew/onrightclick.cpp:598
msgid "Change Width"
msgstr "Change Largeur"
#: pcbnew/onrightclick.cpp:580
msgid "Edit Segment"
msgstr "Edit Segment"
#: pcbnew/onrightclick.cpp:585
msgid "Edit Track" msgid "Edit Track"
msgstr "Editer Piste" msgstr "Editer Piste"
#: pcbnew/onrightclick.cpp:587 #: pcbnew/onrightclick.cpp:600
msgid "Edit Net" msgid "Edit Net"
msgstr "Edit Net" msgstr "Edit Net"
#: pcbnew/onrightclick.cpp:589 #: pcbnew/onrightclick.cpp:602
msgid "Edit ALL Tracks and Vias" msgid "Edit ALL Tracks and Vias"
msgstr "Editer TOUTES Pistes et Vias" msgstr "Editer TOUTES Pistes et Vias"
#: pcbnew/onrightclick.cpp:591 #: pcbnew/onrightclick.cpp:604
msgid "Edit ALL Vias (no track)" msgid "Edit ALL Vias (no track)"
msgstr "Editer TOUTES Vias (pas les pistes)" msgstr "Editer TOUTES Vias (pas les pistes)"
#: pcbnew/onrightclick.cpp:593 #: pcbnew/onrightclick.cpp:606
msgid "Edit ALL Tracks (no via)" msgid "Edit ALL Tracks (no via)"
msgstr "Editer TOUTES Pistes (pas les vias)" msgstr "Editer TOUTES Pistes (pas les vias)"
#: pcbnew/onrightclick.cpp:601 #: pcbnew/onrightclick.cpp:614
msgid "Delete Via" msgid "Delete Via"
msgstr "Suppression Via" msgstr "Suppression Via"
#: pcbnew/onrightclick.cpp:601 #: pcbnew/onrightclick.cpp:614
msgid "Delete Segment" msgid "Delete Segment"
msgstr "SupprimerSegment" msgstr "SupprimerSegment"
#: pcbnew/onrightclick.cpp:608 #: pcbnew/onrightclick.cpp:621
msgid "Delete Track" msgid "Delete Track"
msgstr "Effacer Piste" msgstr "Effacer Piste"
#: pcbnew/onrightclick.cpp:612 #: pcbnew/onrightclick.cpp:625
msgid "Delete Net" msgid "Delete Net"
msgstr "Supprimer Net" msgstr "Supprimer Net"
#: pcbnew/onrightclick.cpp:617 #: pcbnew/onrightclick.cpp:630
msgid "Set Flags" msgid "Set Flags"
msgstr "Ajust. Flags" msgstr "Ajust. Flags"
#: pcbnew/onrightclick.cpp:618 #: pcbnew/onrightclick.cpp:631
msgid "Locked: Yes" msgid "Locked: Yes"
msgstr "Verrou: Oui" msgstr "Verrou: Oui"
#: pcbnew/onrightclick.cpp:619 #: pcbnew/onrightclick.cpp:632
msgid "Locked: No" msgid "Locked: No"
msgstr "Verrou: Non" msgstr "Verrou: Non"
#: pcbnew/onrightclick.cpp:629 #: pcbnew/onrightclick.cpp:642
msgid "Track Locked: Yes" msgid "Track Locked: Yes"
msgstr "Piste verrouille: Oui" msgstr "Piste verrouille: Oui"
#: pcbnew/onrightclick.cpp:630 #: pcbnew/onrightclick.cpp:643
msgid "Track Locked: No" msgid "Track Locked: No"
msgstr "Piste verrouille: Non" msgstr "Piste verrouille: Non"
#: pcbnew/onrightclick.cpp:632 #: pcbnew/onrightclick.cpp:645
msgid "Net Locked: Yes" msgid "Net Locked: Yes"
msgstr "Net verrouill: Oui" msgstr "Net verrouill: Oui"
#: pcbnew/onrightclick.cpp:633 #: pcbnew/onrightclick.cpp:646
msgid "Net Locked: No" msgid "Net Locked: No"
msgstr "Net verrouill: Non" msgstr "Net verrouill: Non"
#: pcbnew/onrightclick.cpp:649 #: pcbnew/onrightclick.cpp:662
msgid "Place Corner" msgid "Place Corner"
msgstr "Place Sommet" msgstr "Place Sommet"
#: pcbnew/onrightclick.cpp:652 #: pcbnew/onrightclick.cpp:665
msgid "Place Zone" msgid "Place Zone"
msgstr "Place Zone" msgstr "Place Zone"
#: pcbnew/onrightclick.cpp:658 #: pcbnew/onrightclick.cpp:671
#: pcbnew/dialog_drc.cpp:477 #: pcbnew/dialog_drc.cpp:477
msgid "Zones" msgid "Zones"
msgstr "Zones" msgstr "Zones"
#: pcbnew/onrightclick.cpp:663 #: pcbnew/onrightclick.cpp:676
msgid "Move Corner" msgid "Move Corner"
msgstr "Dplace Sommet" msgstr "Dplace Sommet"
#: pcbnew/onrightclick.cpp:665 #: pcbnew/onrightclick.cpp:678
msgid "Delete Corner" msgid "Delete Corner"
msgstr "Supprimer Sommet" msgstr "Supprimer Sommet"
#: pcbnew/onrightclick.cpp:670 #: pcbnew/onrightclick.cpp:683
msgid "Create Corner" msgid "Create Corner"
msgstr "Crer Sommet" msgstr "Crer Sommet"
#: pcbnew/onrightclick.cpp:675 #: pcbnew/onrightclick.cpp:688
msgid "Add Similar Zone" msgid "Add Similar Zone"
msgstr "Addition d'une Zone Semblable" msgstr "Addition d'une Zone Semblable"
#: pcbnew/onrightclick.cpp:678 #: pcbnew/onrightclick.cpp:691
msgid "Add Cutout Area" msgid "Add Cutout Area"
msgstr "Addition d'une Zone Interdite" msgstr "Addition d'une Zone Interdite"
#: pcbnew/onrightclick.cpp:695
msgid "Fill Zone"
msgstr "Remplir Zone"
#: pcbnew/onrightclick.cpp:698
msgid "Move Zone"
msgstr "Dplace Zone"
#: pcbnew/onrightclick.cpp:701
msgid "Edit Zone Params"
msgstr "Editer Paramtres 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 ct"
#: 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"
msgstr "Pistes et vias"
#: pcbnew/dialog_display_options.cpp:193
msgid "Tracks:"
msgstr "Pistes:"
#: pcbnew/dialog_display_options.cpp:199
msgid "New track"
msgstr "Nouvelle piste"
#: pcbnew/dialog_display_options.cpp:201
msgid "Show Track Clearance"
msgstr "Monter Isolation Piste"
#: pcbnew/dialog_display_options.cpp:207
msgid "defined holes"
msgstr "Trous dfinis"
#: pcbnew/dialog_display_options.cpp:209
msgid "Show Via Holes"
msgstr "Montrer trous pour vias"
#: pcbnew/dialog_display_options.cpp:213
msgid "Modules"
msgstr "Modules"
#: pcbnew/dialog_display_options.cpp:224
msgid "Module Texts"
msgstr "Texte module"
#: pcbnew/dialog_display_options.cpp:232
msgid "Module Edges:"
msgstr "Contours modules:"
#: pcbnew/dialog_display_options.cpp:239
msgid "Pad Options:"
msgstr "Options Pads:"
#: pcbnew/dialog_display_options.cpp:246
msgid "Pad Shapes:"
msgstr "Forme Pads:"
#: pcbnew/dialog_display_options.cpp:250
msgid "Show Pad Clearance"
msgstr "Monter Isolation"
#: pcbnew/dialog_display_options.cpp:254
msgid "Show Pad Number"
msgstr "Afficher le n de pad"
#: pcbnew/dialog_display_options.cpp:258
msgid "Show Pad NoConnect"
msgstr "Montrer non conn"
#: pcbnew/dialog_display_options.cpp:269
#: gerbview/options.cpp:322
msgid "Display other items:"
msgstr "Afficher autres lments"
#: pcbnew/dialog_display_options.cpp:276
#: eeschema/dialog_options.cpp:267
msgid "Show page limits"
msgstr " Afficher limites de page"
#: pcbnew/menubarmodedit.cpp:40
msgid "Sizes and Widths"
msgstr "Dims. et Epaiss."
#: pcbnew/menubarmodedit.cpp:41
#: pcbnew/menubarpcb.cpp:212
msgid "Adjust width for texts and drawings"
msgstr "Ajuster dims pour textes et graphiques"
#: pcbnew/menubarmodedit.cpp:46
#: pcbnew/menubarpcb.cpp:217
msgid "Adjust size,shape,layers... for Pads"
msgstr "Ajuster taille, forme, couches... pour pads"
#: pcbnew/menubarmodedit.cpp:50
#: pcbnew/menubarpcb.cpp:206
#: pcbnew/set_grid.h:39
msgid "User Grid Size"
msgstr "Dim Grille utilisteur"
#: pcbnew/menubarmodedit.cpp:51
#: pcbnew/menubarpcb.cpp:207
msgid "Adjust User Grid"
msgstr "Ajuster Grille utilisateur"
#: pcbnew/menubarmodedit.cpp:60
#: pcbnew/menubarpcb.cpp:275
#: eeschema/menubar.cpp:178
#: cvpcb/tool_cvpcb.cpp:158
#: kicad/buildmnu.cpp:198
#: gerbview/tool_gerber.cpp:149
msgid "&Contents"
msgstr "&Contenu"
#: pcbnew/menubarmodedit.cpp:60
#: pcbnew/menubarpcb.cpp:275
msgid "Open the pcbnew manual"
msgstr "Ouvrir la documentation de pcbnew"
#: pcbnew/menubarmodedit.cpp:64
#: pcbnew/menubarpcb.cpp:279
#: eeschema/menubar.cpp:183
#: cvpcb/tool_cvpcb.cpp:162
#: kicad/buildmnu.cpp:203
#: gerbview/tool_gerber.cpp:151
msgid "&About"
msgstr "&Infos logiciel"
#: pcbnew/menubarmodedit.cpp:64
#: pcbnew/menubarpcb.cpp:279
#: eeschema/menubar.cpp:183
#: cvpcb/tool_cvpcb.cpp:163
#: kicad/buildmnu.cpp:203
#: gerbview/tool_gerber.cpp:152
msgid "About this application"
msgstr "Au sujet de cette application"
#: pcbnew/menubarmodedit.cpp:72
#: pcbnew/menubarpcb.cpp:287
msgid "3D Display"
msgstr "3D Visu"
#: pcbnew/menubarmodedit.cpp:72
#: pcbnew/menubarpcb.cpp:287
msgid "Show Board in 3D Mode"
msgstr "Visualisation en 3D"
#: pcbnew/menubarmodedit.cpp:76
#: pcbnew/menubarpcb.cpp:293
msgid "&Dimensions"
msgstr "&Dimensions"
#: pcbnew/menubarmodedit.cpp:77
#: pcbnew/menubarpcb.cpp:296
msgid "&3D Display"
msgstr "&3D Visu"
#: pcbnew/menubarmodedit.cpp:78
#: pcbnew/menubarpcb.cpp:297
#: eeschema/menubar.cpp:191
#: cvpcb/tool_cvpcb.cpp:169
#: kicad/buildmnu.cpp:211
#: gerbview/tool_gerber.cpp:159
msgid "&Help"
msgstr "&Aide"
#: pcbnew/edgemod.cpp:204
msgid "The graphic item will be on a copper layer.It is very dangerous. Are you sure"
msgstr "L'lment graphique sera sur une couche cuivre. C'est trs dangereux. Etes vous sr"
#: pcbnew/edgemod.cpp:246
msgid "New Width (1/10000\"):"
msgstr "Novelle largeur (1/10000\"):"
#: pcbnew/edgemod.cpp:253
msgid "Incorrect number, no change"
msgstr "Nombre incorrect, pas de changement"
#: pcbnew/modules.cpp:81
msgid "Footprint name:"
msgstr "Nom Module: "
#: pcbnew/modules.cpp:282
#: eeschema/onrightclick.cpp:317
#: eeschema/find.cpp:229
msgid "Value "
msgstr "Valeur "
#: pcbnew/pcbframe.cpp:268
msgid "Board modified, Save before exit ?"
msgstr "Circuit Imprim modifie, 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 (dsactive !!!), actuellement DRC active"
#: pcbnew/pcbframe.cpp:370
msgid "DRC On (Currently: DRC is inactive !!!)"
msgstr "DRC On (Actuellement, DRC dsactive !!!)"
#: pcbnew/pcbframe.cpp:381
msgid "Polar Coords not show"
msgstr "Coord Polaires non affiches"
#: 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 montre"
#: 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 gnral non affich"
#: pcbnew/pcbframe.cpp:396
msgid "Show General ratsnest"
msgstr "Afficher le chevelu gnral"
#: pcbnew/pcbframe.cpp:402
msgid "Module ratsnest not show"
msgstr "Ne pas montrer le chevelu du module pendant dplacement"
#: pcbnew/onrightclick.cpp:682 #: pcbnew/pcbframe.cpp:403
msgid "Fill Zone" msgid "Show Module ratsnest"
msgstr "Remplir Zone" msgstr "Montrer le chevelu du module"
#: pcbnew/onrightclick.cpp:685 #: pcbnew/pcbframe.cpp:410
msgid "Move Zone" msgid "Disable Auto Delete old Track"
msgstr "Dplace Zone" msgstr "Ne pas Autoriser l'effacement automatique des pistes"
#: pcbnew/onrightclick.cpp:688 #: pcbnew/pcbframe.cpp:411
msgid "Edit Zone Params" msgid "Enable Auto Delete old Track"
msgstr "Editer Paramtres de la Zone" msgstr "Autoriser l'effacement automatique des pistes"
#: pcbnew/onrightclick.cpp:693 #: pcbnew/pcbframe.cpp:418
msgid "Delete Cutout" msgid "Do not Show Zones"
msgstr "Supprimer Zone Interdite" msgstr "Ne pas monter Zones"
#: pcbnew/onrightclick.cpp:696 #: pcbnew/pcbframe.cpp:418
msgid "Delete Zone Outline" #: pcbnew/tool_pcb.cpp:361
msgstr "Supprimer Contour de Zone" #: pcbnew/set_color.h:423
msgid "Show Zones"
msgstr "Monter Zones"
#: pcbnew/onrightclick.cpp:718 #: pcbnew/pcbframe.cpp:424
#: pcbnew/onrightclick.cpp:763 msgid "Show Pads Sketch mode"
#: pcbnew/onrightclick.cpp:801 msgstr "Afficher pastilles en contour"
#: pcbnew/onrightclick.cpp:860
msgid "Move"
msgstr "Move"
#: pcbnew/onrightclick.cpp:721 #: pcbnew/pcbframe.cpp:425
#: pcbnew/onrightclick.cpp:803 msgid "Show pads filled mode"
msgid "Drag" msgstr "Afficher pastilles en mode plein"
msgstr "Drag"
#: pcbnew/onrightclick.cpp:725 #: pcbnew/pcbframe.cpp:431
msgid "Rotate +" msgid "Show Tracks Sketch mode"
msgstr "Rotation +" msgstr "Afficher pistes en contour"
#: pcbnew/onrightclick.cpp:729 #: pcbnew/pcbframe.cpp:432
#: eeschema/onrightclick.cpp:301 msgid "Show Tracks filled mode"
msgid "Rotate -" msgstr "Afficher pistes en mode plein"
msgstr "Rotation -"
#: pcbnew/onrightclick.cpp:730 #: pcbnew/pcbframe.cpp:438
msgid "Flip" msgid "Normal Contrast Mode Display"
msgstr "Change ct" msgstr "Mode d'affichage Contraste normal"
#: pcbnew/onrightclick.cpp:820 #: pcbnew/pcbframe.cpp:439
msgid "delete" #: pcbnew/tool_pcb.cpp:374
msgstr "Effacer" msgid "Hight Contrast Mode Display"
msgstr "Mode d'affichage Haut Contraste"
#: pcbnew/onrightclick.cpp:827 #: pcbnew/pcbframe.cpp:451
msgid "Autoroute Pad" #: pcbnew/class_board_item.cpp:139
msgstr "Autoroute Pad" #: pcbnew/class_track.cpp:765
msgid "Track"
msgstr "Piste"
#: pcbnew/onrightclick.cpp:828 #: pcbnew/pcbframe.cpp:483
msgid "Autoroute Net" #: pcbnew/class_board_item.cpp:199
msgstr "Autoroute Net" msgid "Via"
msgstr "Via"
#: pcbnew/block.cpp:122 #: pcbnew/block.cpp:122
msgid "Include Modules" msgid "Include Modules"
...@@ -3114,70 +3169,29 @@ msgstr "Effacer Bloc" ...@@ -3114,70 +3169,29 @@ msgstr "Effacer Bloc"
msgid "Delete zones" msgid "Delete zones"
msgstr "SuppressionZones" msgstr "SuppressionZones"
#: pcbnew/block.cpp:601 #: pcbnew/block.cpp:607
msgid "Rotate Block" msgid "Rotate Block"
msgstr "Rotation Bloc" msgstr "Rotation Bloc"
#: pcbnew/block.cpp:658 #: pcbnew/block.cpp:664
msgid "Zone rotation" msgid "Zone rotation"
msgstr "Rotation Zones" msgstr "Rotation Zones"
#: pcbnew/block.cpp:766 #: pcbnew/block.cpp:772
msgid "Block mirroring" msgid "Block mirroring"
msgstr "Bloc Miroir" msgstr "Bloc Miroir"
#: pcbnew/block.cpp:954 #: pcbnew/block.cpp:960
msgid "Move Block" msgid "Move Block"
msgstr "Dplacer Bloc" msgstr "Dplacer Bloc"
#: pcbnew/block.cpp:1109 #: pcbnew/block.cpp:1115
msgid "Copy Block" msgid "Copy Block"
msgstr "Copie Bloc" msgstr "Copie Bloc"
#: pcbnew/edit.cpp:176 #: pcbnew/ioascii.cpp:167
#: pcbnew/editmod.cpp:45 msgid "Error: Unexpected end of file !"
msgid "Module Editor" msgstr "Erreur: Fin de fichier inattendue !"
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 dsactiv !!!"
#: pcbnew/edit.cpp:274
msgid "Add Layer Alignment Target"
msgstr "Ajouter Mire de superposition"
#: pcbnew/edit.cpp:278
msgid "Adjust Zero"
msgstr "Ajuster Zro"
#: pcbnew/edit.cpp:284
msgid "Add Graphic"
msgstr "Addition lments 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 gnral"
#: pcbnew/router.cpp:60 #: pcbnew/router.cpp:60
msgid "Unable to create temporary file " msgid "Unable to create temporary file "
...@@ -3273,6 +3287,11 @@ msgstr "Le texte est la REFERENCE!" ...@@ -3273,6 +3287,11 @@ msgstr "Le texte est la REFERENCE!"
msgid "Text is VALUE!" msgid "Text is VALUE!"
msgstr "Le texte est la VALEUR!" 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 #: pcbnew/class_board_item.cpp:40
#: eeschema/dialog_build_BOM.cpp:300 #: eeschema/dialog_build_BOM.cpp:300
#: eeschema/component_class.cpp:56 #: eeschema/component_class.cpp:56
...@@ -3337,14 +3356,8 @@ msgstr "Graphique" ...@@ -3337,14 +3356,8 @@ msgstr "Graphique"
msgid "Arc" msgid "Arc"
msgstr "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/class_board_item.cpp:146
#: pcbnew/dialog_zones_by_polygon.cpp:228 #: pcbnew/dialog_zones_by_polygon.cpp:229
msgid "Net:" msgid "Net:"
msgstr "Net:" msgstr "Net:"
...@@ -3353,17 +3366,17 @@ msgid "Length:" ...@@ -3353,17 +3366,17 @@ msgid "Length:"
msgstr "Long.:" msgstr "Long.:"
#: pcbnew/class_board_item.cpp:152 #: pcbnew/class_board_item.cpp:152
#: pcbnew/class_zone.cpp:477 #: pcbnew/class_zone.cpp:488
msgid "Zone Outline" msgid "Zone Outline"
msgstr "Contour de Zone" msgstr "Contour de Zone"
#: pcbnew/class_board_item.cpp:156 #: pcbnew/class_board_item.cpp:156
#: pcbnew/class_zone.cpp:480 #: pcbnew/class_zone.cpp:491
msgid "(Cutout)" msgid "(Cutout)"
msgstr "(Cutout)" msgstr "(Cutout)"
#: pcbnew/class_board_item.cpp:175 #: pcbnew/class_board_item.cpp:175
#: pcbnew/class_zone.cpp:500 #: pcbnew/class_zone.cpp:511
msgid "Not Found" msgid "Not Found"
msgstr " Non Trouv" msgstr " Non Trouv"
...@@ -3372,11 +3385,6 @@ msgstr " Non Trouv ...@@ -3372,11 +3385,6 @@ msgstr " Non Trouv
msgid "Zone" msgid "Zone"
msgstr "Zone" msgstr "Zone"
#: pcbnew/class_board_item.cpp:199
#: pcbnew/pcbframe.cpp:479
msgid "Via"
msgstr "Via"
#: pcbnew/class_board_item.cpp:203 #: pcbnew/class_board_item.cpp:203
msgid "Blind/Buried" msgid "Blind/Buried"
msgstr "Borgne/Aveugle" msgstr "Borgne/Aveugle"
...@@ -3419,108 +3427,12 @@ msgstr "Type Err" ...@@ -3419,108 +3427,12 @@ msgstr "Type Err"
msgid "Pcbnew is already running, Continue?" msgid "Pcbnew is already running, Continue?"
msgstr "Pcbnew est est cours d'excution. Continuer ?" msgstr "Pcbnew est est cours d'excution. Continuer ?"
#: pcbnew/pcbframe.cpp:266
msgid "Board modified, Save before exit ?"
msgstr "Circuit Imprim modifie, 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 (dsactive !!!), actuellement DRC active"
#: pcbnew/pcbframe.cpp:368
msgid "DRC On (Currently: DRC is inactive !!!)"
msgstr "DRC On (Actuellement, DRC dsactive !!!)"
#: pcbnew/pcbframe.cpp:379
msgid "Polar Coords not show"
msgstr "Coord Polaires non affiches"
#: 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 montre"
#: 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 gnral non affich"
#: pcbnew/pcbframe.cpp:394
msgid "Show General ratsnest"
msgstr "Afficher le chevelu gnral"
#: pcbnew/pcbframe.cpp:400
msgid "Module ratsnest not show"
msgstr "Ne pas montrer le chevelu du module pendant dplacement"
#: 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 #: pcbnew/cotation.cpp:85
msgid "Dimension properties" msgid "Dimension properties"
msgstr "Proprits des Cotes" msgstr "Proprits des Cotes"
#: pcbnew/cotation.cpp:133 #: pcbnew/cotation.cpp:133
#: pcbnew/dialog_zones_by_polygon.cpp:235 #: pcbnew/dialog_zones_by_polygon.cpp:236
#: gerbview/affiche.cpp:37 #: gerbview/affiche.cpp:37
msgid "Layer:" msgid "Layer:"
msgstr "Couche:" msgstr "Couche:"
...@@ -3548,19 +3460,18 @@ msgstr "Net Code" ...@@ -3548,19 +3460,18 @@ msgstr "Net Code"
#: pcbnew/affiche.cpp:52 #: pcbnew/affiche.cpp:52
#: pcbnew/class_module.cpp:1228 #: pcbnew/class_module.cpp:1228
#: pcbnew/class_board.cpp:402 #: pcbnew/class_board.cpp:414
msgid "Pads" msgid "Pads"
msgstr "Pads" msgstr "Pads"
#: pcbnew/class_track.cpp:791 #: pcbnew/class_track.cpp:791
#: pcbnew/zones.cpp:873 #: pcbnew/zones_by_polygon.cpp:906
#: pcbnew/zones_by_polygon.cpp:900 #: pcbnew/class_zone.cpp:514
#: pcbnew/class_zone.cpp:503
msgid "NetName" msgid "NetName"
msgstr "NetName" msgstr "NetName"
#: pcbnew/class_track.cpp:796 #: pcbnew/class_track.cpp:796
#: pcbnew/class_zone.cpp:508 #: pcbnew/class_zone.cpp:519
msgid "NetCode" msgid "NetCode"
msgstr "NetCode" msgstr "NetCode"
...@@ -3578,6 +3489,12 @@ msgstr "Stat" ...@@ -3578,6 +3489,12 @@ msgstr "Stat"
msgid "Diam" msgid "Diam"
msgstr "Diam" msgstr "Diam"
#: pcbnew/class_track.cpp:847
#: pcbnew/class_track.cpp:852
#: pcbnew/class_pad.cpp:993
msgid "Drill"
msgstr "Perage"
#: pcbnew/deltrack.cpp:161 #: pcbnew/deltrack.cpp:161
msgid "Delete NET ?" msgid "Delete NET ?"
msgstr "Supprimer Net ?" msgstr "Supprimer Net ?"
...@@ -3820,124 +3737,52 @@ msgid "file %s not found" ...@@ -3820,124 +3737,52 @@ msgid "file %s not found"
msgstr " fichier %s non trouv" msgstr " fichier %s non trouv"
#: pcbnew/xchgmod.cpp:240 #: pcbnew/xchgmod.cpp:240
#, c-format #, c-format
msgid "Unable to create file %s" msgid "Unable to create file %s"
msgstr "Impossible de crer fichier <%s>" msgstr "Impossible de crer fichier <%s>"
#: pcbnew/xchgmod.cpp:347
#, c-format
msgid "Change modules <%s> -> <%s> (val = %s)?"
msgstr "Change modules <%s> -> <%s> (val = %s)?"
#: pcbnew/xchgmod.cpp:354
#, c-format
msgid "Change modules <%s> -> <%s> ?"
msgstr "Change modules <%s> -> <%s> ?"
#: pcbnew/xchgmod.cpp:418
msgid "Change ALL modules ?"
msgstr "Change TOUS les modules ?"
#: pcbnew/xchgmod.cpp:480
#, c-format
msgid "Change module %s (%s) "
msgstr "Change module %s (%s) "
#: pcbnew/xchgmod.cpp:626
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/zones.cpp:162
msgid "Grid size:"
msgstr "Dim Grille"
#: pcbnew/zones.cpp:167
#: pcbnew/dialog_zones_by_polygon.cpp:160
msgid "Zone clearance value (mm):"
msgstr "Valeur isolation zone (mm):"
#: 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 #: pcbnew/xchgmod.cpp:347
msgid "Fill" #, c-format
msgstr "Remplissage" msgid "Change modules <%s> -> <%s> (val = %s)?"
msgstr "Change modules <%s> -> <%s> (val = %s)?"
#: pcbnew/zones.cpp:226 #: pcbnew/xchgmod.cpp:354
msgid "Update Options" #, c-format
msgstr "Maj Options" msgid "Change modules <%s> -> <%s> ?"
msgstr "Change modules <%s> -> <%s> ?"
#: pcbnew/zones.cpp:235 #: pcbnew/xchgmod.cpp:418
#: pcbnew/dialog_zones_by_polygon.cpp:247 msgid "Change ALL modules ?"
msgid "Zone clearance value:" msgstr "Change TOUS les modules ?"
msgstr "Valeur isolation zone:"
#: pcbnew/zones.cpp:238 #: pcbnew/xchgmod.cpp:480
#: pcbnew/dialog_zones_by_polygon.cpp:250 #, c-format
msgid "Grid :" msgid "Change module %s (%s) "
msgstr "Grille:" msgstr "Change module %s (%s) "
#: pcbnew/zones.cpp:401 #: pcbnew/xchgmod.cpp:626
msgid "New zone segment width: " msgid "Cmp files:"
msgstr "Nouvelle largeur des segments zone:" msgstr "Fichiers Cmp: "
#: pcbnew/zones.cpp:599 #: pcbnew/pcbcfg.cpp:68
msgid "Zone: No net selected" #: eeschema/eeconfig.cpp:58
msgstr "Zone: Net non slectionn" #: cvpcb/menucfg.cpp:170
msgid "Read config file"
msgstr "Lire config"
#: pcbnew/zones.cpp:641 #: pcbnew/pcbcfg.cpp:81
msgid "Delete Current Zone Edges" #: cvpcb/menucfg.cpp:182
msgstr "Effacer contour zone courant" #, c-format
msgid "File %s not found"
msgstr " fichier %s non trouv"
#: pcbnew/zones.cpp:871 #: pcbnew/pcbcfg.cpp:196
#: pcbnew/zones_by_polygon.cpp:898 #: eeschema/eeconfig.cpp:192
msgid "No Net" #: cvpcb/cfg.cpp:71
msgstr "No Net" msgid "Save preferences"
msgstr "Sauver prfrences"
#: pcbnew/tool_pcb.cpp:50 #: pcbnew/tool_pcb.cpp:49
msgid "" msgid ""
"Show active layer selections\n" "Show active layer selections\n"
"and select layer pair for route and place via" "and select layer pair for route and place via"
...@@ -3945,56 +3790,56 @@ msgstr "" ...@@ -3945,56 +3790,56 @@ msgstr ""
"Affiche selections couche active\n" "Affiche selections couche active\n"
"et selection paire de couches pour routage and placement via" "et selection paire de couches pour routage and placement via"
#: pcbnew/tool_pcb.cpp:238 #: pcbnew/tool_pcb.cpp:237
msgid "New Board" msgid "New Board"
msgstr "Nouveau Circuit Imprim" msgstr "Nouveau Circuit Imprim"
#: pcbnew/tool_pcb.cpp:240 #: pcbnew/tool_pcb.cpp:239
msgid "Open existing Board" msgid "Open existing Board"
msgstr "Ouvrir C.I. existant" msgstr "Ouvrir C.I. existant"
#: pcbnew/tool_pcb.cpp:241 #: pcbnew/tool_pcb.cpp:240
msgid "Save Board" msgid "Save Board"
msgstr "Sauver Circuit Imprim" msgstr "Sauver Circuit Imprim"
#: pcbnew/tool_pcb.cpp:245 #: pcbnew/tool_pcb.cpp:244
#: eeschema/tool_sch.cpp:65 #: eeschema/tool_sch.cpp:65
#: gerbview/tool_gerber.cpp:232 #: gerbview/tool_gerber.cpp:232
msgid "page settings (size, texts)" msgid "page settings (size, texts)"
msgstr "Ajustage de la feuille de dessin (dimensions, textes)" msgstr "Ajustage de la feuille de dessin (dimensions, textes)"
#: pcbnew/tool_pcb.cpp:249 #: pcbnew/tool_pcb.cpp:248
msgid "Open Module Editor" msgid "Open Module Editor"
msgstr "Ouvrir Editeur de modules" msgstr "Ouvrir Editeur de modules"
#: pcbnew/tool_pcb.cpp:252 #: pcbnew/tool_pcb.cpp:251
#: eeschema/tool_sch.cpp:81 #: eeschema/tool_sch.cpp:81
#: gerbview/tool_gerber.cpp:243 #: gerbview/tool_gerber.cpp:243
msgid "Cut selected item" msgid "Cut selected item"
msgstr "Suppression des lments slectionns" msgstr "Suppression des lments slectionns"
#: pcbnew/tool_pcb.cpp:256 #: pcbnew/tool_pcb.cpp:255
#: eeschema/tool_sch.cpp:84 #: eeschema/tool_sch.cpp:84
#: gerbview/tool_gerber.cpp:248 #: gerbview/tool_gerber.cpp:248
msgid "Copy selected item" msgid "Copy selected item"
msgstr "Copie des lments slectionns" msgstr "Copie des lments slectionns"
#: pcbnew/tool_pcb.cpp:258 #: pcbnew/tool_pcb.cpp:257
#: eeschema/tool_sch.cpp:87 #: eeschema/tool_sch.cpp:87
#: gerbview/tool_gerber.cpp:254 #: gerbview/tool_gerber.cpp:254
msgid "Paste" msgid "Paste"
msgstr "Copie des lments sauvegards" msgstr "Copie des lments sauvegards"
#: pcbnew/tool_pcb.cpp:261 #: pcbnew/tool_pcb.cpp:260
#: gerbview/tool_gerber.cpp:261 #: gerbview/tool_gerber.cpp:261
msgid "Undelete" msgid "Undelete"
msgstr "Annulation du dernier effacement" msgstr "Annulation du dernier effacement"
#: pcbnew/tool_pcb.cpp:264 #: pcbnew/tool_pcb.cpp:263
msgid "Print Board" msgid "Print Board"
msgstr "Imprimer C.I." msgstr "Imprimer C.I."
#: pcbnew/tool_pcb.cpp:266 #: pcbnew/tool_pcb.cpp:265
msgid "Plot (HPGL, PostScript, or GERBER format)" msgid "Plot (HPGL, PostScript, or GERBER format)"
msgstr "Tracer en format HPGL, POSTSCRIPT ou GERBER" msgstr "Tracer en format HPGL, POSTSCRIPT ou GERBER"
...@@ -4003,43 +3848,43 @@ 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" msgid "Find components and texts"
msgstr "Recherche de composants et textes" msgstr "Recherche de composants et textes"
#: pcbnew/tool_pcb.cpp:291 #: pcbnew/tool_pcb.cpp:292
msgid "Read Netlist" msgid "Read Netlist"
msgstr "Lire Netliste" msgstr "Lire Netliste"
#: pcbnew/tool_pcb.cpp:293 #: pcbnew/tool_pcb.cpp:294
msgid "Pcb Design Rules Check" msgid "Pcb Design Rules Check"
msgstr "Controle des rgles de conception" msgstr "Controle des rgles de conception"
#: pcbnew/tool_pcb.cpp:304 #: pcbnew/tool_pcb.cpp:305
msgid "Mode Module: Manual and Automatic Move or Place for modules" msgid "Mode Module: Manual and Automatic Move or Place for modules"
msgstr "Mode Module: Dplacements ou Placement Manuel ou Automatique des modules" msgstr "Mode Module: Dplacements ou Placement Manuel ou Automatique des modules"
#: pcbnew/tool_pcb.cpp:307 #: pcbnew/tool_pcb.cpp:308
msgid "Mode Track and Autorouting" msgid "Mode Track and Autorouting"
msgstr "Mode Pistes and Autoroutage" msgstr "Mode Pistes and Autoroutage"
#: pcbnew/tool_pcb.cpp:331 #: pcbnew/tool_pcb.cpp:332
msgid "Drc OFF" msgid "Drc OFF"
msgstr "Drc DESACTIVEE" msgstr "Drc DESACTIVEE"
#: pcbnew/tool_pcb.cpp:348 #: pcbnew/tool_pcb.cpp:349
msgid "Show General Ratsnest" msgid "Show General Ratsnest"
msgstr "Monter le chevelu gnral" msgstr "Monter le chevelu gnral"
#: pcbnew/tool_pcb.cpp:351 #: pcbnew/tool_pcb.cpp:352
msgid "Show Module Ratsnest when moving" msgid "Show Module Ratsnest when moving"
msgstr "Monter le chevelu du module pendant dplacement" msgstr "Monter le chevelu du module pendant dplacement"
#: pcbnew/tool_pcb.cpp:356 #: pcbnew/tool_pcb.cpp:357
msgid "Enable Auto Del Track" msgid "Enable Auto Del Track"
msgstr "Autoriser l'effacement automatique des pistes" msgstr "Autoriser l'effacement automatique des pistes"
#: pcbnew/tool_pcb.cpp:369 #: pcbnew/tool_pcb.cpp:370
msgid "Show Tracks Sketch" msgid "Show Tracks Sketch"
msgstr "Afficher pistes en contour" msgstr "Afficher pistes en contour"
#: pcbnew/tool_pcb.cpp:382 #: pcbnew/tool_pcb.cpp:383
msgid "" msgid ""
"Display auxiliary vertical toolbar (tools for micro wave applications)\n" "Display auxiliary vertical toolbar (tools for micro wave applications)\n"
" This is a very experimental feature (under development)" " This is a very experimental feature (under development)"
...@@ -4047,68 +3892,76 @@ msgstr "" ...@@ -4047,68 +3892,76 @@ msgstr ""
"Affiche toolbar vertical auxiliaire (outils pour applications micro-ondes)\n" "Affiche toolbar vertical auxiliaire (outils pour applications micro-ondes)\n"
"C'est un outil exprimental (en cours de dveloppement)" "C'est un outil exprimental (en cours de dveloppement)"
#: pcbnew/tool_pcb.cpp:411 #: pcbnew/tool_pcb.cpp:412
msgid "Net highlight" msgid "Net highlight"
msgstr "Surbrillance des quipotentielles" msgstr "Surbrillance des quipotentielles"
#: pcbnew/tool_pcb.cpp:415 #: pcbnew/tool_pcb.cpp:416
msgid "Display local ratsnest (pad or module)" msgid "Display local ratsnest (pad or module)"
msgstr "Afficher le chevelu local (pastilles ou modules)" msgstr "Afficher le chevelu local (pastilles ou modules)"
#: pcbnew/tool_pcb.cpp:420 #: pcbnew/tool_pcb.cpp:421
msgid "Add modules" msgid "Add modules"
msgstr "Addition de Modules" msgstr "Addition de Modules"
#: pcbnew/tool_pcb.cpp:424 #: pcbnew/tool_pcb.cpp:425
msgid "Add tracks and vias" msgid "Add tracks and vias"
msgstr "Ajouter pistes et vias" msgstr "Ajouter pistes et vias"
#: pcbnew/tool_pcb.cpp:428 #: pcbnew/tool_pcb.cpp:429
msgid "Add zones" msgid "Add zones"
msgstr "Addition de Zones" msgstr "Addition de Zones"
#: pcbnew/tool_pcb.cpp:445 #: pcbnew/tool_pcb.cpp:446
msgid "Add text" msgid "Add text"
msgstr "Ajout de Texte" msgstr "Ajout de Texte"
#: pcbnew/tool_pcb.cpp:450 #: pcbnew/tool_pcb.cpp:451
msgid "Add dimension" msgid "Add dimension"
msgstr "Ajout des cotes" msgstr "Ajout des cotes"
#: pcbnew/tool_pcb.cpp:454 #: pcbnew/tool_pcb.cpp:455
#: gerbview/tool_gerber.cpp:378 #: gerbview/tool_gerber.cpp:378
msgid "Add layer alignment target" msgid "Add layer alignment target"
msgstr "Ajouter Mire de superposition" msgstr "Ajouter Mire de superposition"
#: pcbnew/tool_pcb.cpp:464 #: pcbnew/tool_pcb.cpp:465
msgid "Offset adjust for drill and place files" msgid "Offset adjust for drill and place files"
msgstr "Ajuste offset pour fichier de perage et placement" msgstr "Ajuste offset pour fichier de perage et placement"
#: pcbnew/tool_pcb.cpp:489 #: pcbnew/tool_pcb.cpp:490
msgid "Create line of specified length for microwave applications" msgid "Create line of specified length for microwave applications"
msgstr "Creation de lignes de longueur spcifie (pour applications micro-ondes)" msgstr "Creation de lignes de longueur spcifie (pour applications micro-ondes)"
#: pcbnew/tool_pcb.cpp:495 #: pcbnew/tool_pcb.cpp:496
msgid "Create gap of specified length for microwave applications" msgid "Create gap of specified length for microwave applications"
msgstr "Creation de gaps de longueur spcifie (pour applications micro-ondes)" msgstr "Creation de gaps de longueur spcifie (pour applications micro-ondes)"
#: pcbnew/tool_pcb.cpp:503 #: pcbnew/tool_pcb.cpp:504
msgid "Create stub of specified length for microwave applications" msgid "Create stub of specified length for microwave applications"
msgstr "Creation de stub de longueur spcifie (pour applications micro-ondes)" msgstr "Creation de stub de longueur spcifie (pour applications micro-ondes)"
#: pcbnew/tool_pcb.cpp:509 #: pcbnew/tool_pcb.cpp:510
msgid "Create stub (arc) of specified length for microwave applications" msgid "Create stub (arc) of specified length for microwave applications"
msgstr "Creation de stub (arc) de longueur spcifie (pour applications micro-ondes)" msgstr "Creation de stub (arc) de longueur spcifie (pour applications micro-ondes)"
#: pcbnew/tool_pcb.cpp:516 #: pcbnew/tool_pcb.cpp:517
msgid "Create a polynomial shape for microwave applications" msgid "Create a polynomial shape for microwave applications"
msgstr "Creation de formes polynomiales (pour applications micro-ondes)" 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 dmarre sur une piste existante, utiliser sa largeur\n"
" sinon utiliser la largeur courante"
#: pcbnew/tool_pcb.cpp:584
msgid "Zoom " msgid "Zoom "
msgstr "Zoom " msgstr "Zoom "
#: pcbnew/tool_pcb.cpp:584 #: pcbnew/tool_pcb.cpp:598
#: eeschema/eelayer.cpp:223 #: eeschema/eelayer.cpp:223
#: pcbnew/set_color.h:414 #: pcbnew/set_color.h:414
#: eeschema/eelayer.h:210 #: eeschema/eelayer.h:210
...@@ -4116,24 +3969,28 @@ msgstr "Zoom " ...@@ -4116,24 +3969,28 @@ msgstr "Zoom "
msgid "Grid" msgid "Grid"
msgstr "Grille" msgstr "Grille"
#: pcbnew/tool_pcb.cpp:691 #: pcbnew/tool_pcb.cpp:707
msgid "+/- to switch" msgid "+/- to switch"
msgstr "+/- pour commuter" msgstr "+/- pour commuter"
#: pcbnew/zones_by_polygon.cpp:342 #: pcbnew/zones_by_polygon.cpp:342
#: pcbnew/zones_by_polygon.cpp:380 #: pcbnew/zones_by_polygon.cpp:381
#: pcbnew/zones_by_polygon.cpp:713 #: pcbnew/zones_by_polygon.cpp:719
msgid "Area: DRC outline error" msgid "Area: DRC outline error"
msgstr "Zone; Erreur DRC sur contour" 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" msgid "DRC error: this start point is inside or too close an other area"
msgstr "Erreur DRC: ce point de dpart est a l'intrieur d'une autre zone ou trop proche" msgstr "Erreur DRC: ce point de dpart est a l'intrieur 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" msgid "DRC error: closing this area creates a drc error with an other area"
msgstr "Erreur DRC: la fermeture de cette zone cre une erreur DRC avec une autre zone" msgstr "Erreur DRC: la fermeture de cette zone cre 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 #: pcbnew/move_or_drag_track.cpp:714
msgid "Unable to drag this segment: too many segments connected" msgid "Unable to drag this segment: too many segments connected"
msgstr "Impossible de drag ce segment: trop de segments connects" msgstr "Impossible de drag ce segment: trop de segments connects"
...@@ -4142,79 +3999,118 @@ msgstr "Impossible de drag ce segment: trop de segments connect ...@@ -4142,79 +3999,118 @@ msgstr "Impossible de drag ce segment: trop de segments connect
msgid "Unable to drag this segment: two collinear segments" msgid "Unable to drag this segment: two collinear segments"
msgstr "Impossible de drag ce segment: 2 segments aligns" msgstr "Impossible de drag ce segment: 2 segments aligns"
#: 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 #: 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:" msgid "Grid Size for Filling:"
msgstr "Taille de Grille pour Remplissage:" 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" msgid "Hatched Outline"
msgstr "Contour Hachur" msgstr "Contour Hachur"
#: pcbnew/dialog_zones_by_polygon.cpp:169 #: pcbnew/dialog_zones_by_polygon.cpp:170
msgid "Full Hatched" msgid "Full Hatched"
msgstr "Pleinement Hachur" msgstr "Pleinement Hachur"
#: pcbnew/dialog_zones_by_polygon.cpp:170 #: pcbnew/dialog_zones_by_polygon.cpp:171
msgid "Outlines Appearance" msgid "Outlines Appearance"
msgstr "Aspect des Contours" 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" msgid "Alphabetic"
msgstr "Alphabetique" msgstr "Alphabetique"
#: pcbnew/dialog_zones_by_polygon.cpp:212 #: pcbnew/dialog_zones_by_polygon.cpp:213
msgid "Advanced" msgid "Advanced"
msgstr "Avanc" msgstr "Avanc"
#: pcbnew/dialog_zones_by_polygon.cpp:213 #: pcbnew/dialog_zones_by_polygon.cpp:214
msgid "Net sorting:" msgid "Net sorting:"
msgstr "Tri des Equipotentielles:" msgstr "Tri des Equipotentielles:"
#: pcbnew/dialog_zones_by_polygon.cpp:217 #: pcbnew/dialog_zones_by_polygon.cpp:218
msgid "Filter" msgid "Filter"
msgstr "Filtre" 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" 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: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:501 #: pcbnew/dialog_zones_by_polygon.cpp:506
msgid "Error : you must choose a layer" msgid "Error : you must choose a layer"
msgstr "Erreur. Vous devez choisir une couche" 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" msgid "Error : you must choose a net name"
msgstr "Erreur. Vous devez choisir une quipotentielle" msgstr "Erreur. Vous devez choisir une quipotentielle"
#: pcbnew/initpcb.cpp:125 #: pcbnew/class_board.cpp:427
msgid "Current Board will be lost ?" msgid "Nodes"
msgstr "Le C.I. courant sera perdu ?" msgstr "Nodes"
#: pcbnew/initpcb.cpp:215
msgid "Delete Zones ?"
msgstr "Effacer Zones ?"
#: pcbnew/initpcb.cpp:243
msgid "Delete Board edges ?"
msgstr "Effacement contour PCB"
#: pcbnew/initpcb.cpp:248 #: pcbnew/class_board.cpp:430
msgid "Delete draw items?" msgid "Links"
msgstr "Suppression lments graphiques?" msgstr "Liens"
#: pcbnew/initpcb.cpp:290 #: pcbnew/class_board.cpp:433
#: gerbview/initpcb.cpp:150 msgid "Nets"
msgid "Delete Tracks?" msgstr "Nets"
msgstr "Effacer Pistes ?"
#: pcbnew/initpcb.cpp:313 #: pcbnew/class_board.cpp:436
msgid "Delete Modules?" msgid "Connect"
msgstr "Effacement des Modules?" msgstr "Connect"
#: pcbnew/initpcb.cpp:336 #: pcbnew/class_board.cpp:439
#: gerbview/initpcb.cpp:173 #: eeschema/eelayer.h:116
msgid "Delete Pcb Texts" msgid "NoConn"
msgstr "Effacer Textes Pcb" msgstr "Non Conn"
#: pcbnew/sel_layer.cpp:92 #: pcbnew/sel_layer.cpp:92
msgid "Select Layer:" msgid "Select Layer:"
...@@ -4305,14 +4201,114 @@ msgstr "Change Per ...@@ -4305,14 +4201,114 @@ msgstr "Change Per
msgid "Change Orient" msgid "Change Orient"
msgstr "Change Orientation" 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" msgid "No pads or starting point found to fill this zone outline"
msgstr "Pas de pads ou de points de dpart pour remplir ce contour de zone" msgstr "Pas de pads ou de points de dpart pour remplir ce contour de zone"
#: pcbnew/zone_filling_algorithm.cpp:193 #: pcbnew/zone_filling_algorithm.cpp:205
msgid "Ok" msgid "Ok"
msgstr "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 "Perage 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 "Perage vias par dfaut"
#: pcbnew/dialog_track_options.cpp:192
msgid "Alternate Via Drill"
msgstr "Perage 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 enterre ou Aveugle"
#: pcbnew/dialog_track_options.cpp:212
msgid "Default Via Type"
msgstr "Via par Dfaut"
#: 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 "Perage 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 #: pcbnew/find.cpp:114
msgid "Marker found" msgid "Marker found"
msgstr "Marqueur trouv" msgstr "Marqueur trouv"
...@@ -4352,35 +4348,6 @@ msgstr "Chercher Marqueur" ...@@ -4352,35 +4348,6 @@ msgstr "Chercher Marqueur"
msgid "Find Next Marker" msgid "Find Next Marker"
msgstr "Marqueur Suivant" 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 #: pcbnew/menubarpcb.cpp:42
msgid "Load Board Ctrl-O" msgid "Load Board Ctrl-O"
msgstr "Charger Circuit Imprim (Ctrl O)" msgstr "Charger Circuit Imprim (Ctrl O)"
...@@ -4956,6 +4923,10 @@ msgstr "Fichier rapport termin ...@@ -4956,6 +4923,10 @@ msgstr "Fichier rapport termin
msgid "DRC Report file" msgid "DRC Report file"
msgstr "Fichier rapport de contrle DRC:" msgstr "Fichier rapport de contrle DRC:"
#: pcbnew/specctra_export.cpp:52
msgid "Specctra DSN file:"
msgstr "Fichier Specctra DSN"
#: pcbnew/gen_drill_report_files.cpp:388 #: pcbnew/gen_drill_report_files.cpp:388
msgid "" msgid ""
" Drill map: Too many diameter values to draw to draw one symbol per drill value (max 13)\n" " Drill map: Too many diameter values to draw to draw one symbol per drill value (max 13)\n"
...@@ -4973,11 +4944,11 @@ msgstr "Netcode" ...@@ -4973,11 +4944,11 @@ msgstr "Netcode"
msgid "Netname" msgid "Netname"
msgstr "NetName" msgstr "NetName"
#: pcbnew/class_zone.cpp:516 #: pcbnew/class_zone.cpp:527
msgid "Corners" msgid "Corners"
msgstr "Sommets" msgstr "Sommets"
#: pcbnew/class_zone.cpp:520 #: pcbnew/class_zone.cpp:531
msgid "Hatch lines" msgid "Hatch lines"
msgstr "Lignes de Hachure" msgstr "Lignes de Hachure"
...@@ -10031,11 +10002,6 @@ msgstr "S ...@@ -10031,11 +10002,6 @@ msgstr "S
msgid "grid user" msgid "grid user"
msgstr "grille 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 #: pcbnew/gen_self.h:217
msgid "Length(inch):" msgid "Length(inch):"
msgstr "Longueur (pouces):" msgstr "Longueur (pouces):"
...@@ -10156,6 +10122,10 @@ msgstr "Afficher Modules Cmp" ...@@ -10156,6 +10122,10 @@ msgstr "Afficher Modules Cmp"
msgid "Show Modules Cu" msgid "Show Modules Cu"
msgstr "Afficher 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 #: pcbnew/dialog_gendrill.h:50
msgid "WinEDA_DrillFrame" msgid "WinEDA_DrillFrame"
msgstr "WinEDA_DrillFrame" msgstr "WinEDA_DrillFrame"
......
...@@ -17,7 +17,7 @@ IF(WIN32) ...@@ -17,7 +17,7 @@ IF(WIN32)
IF(MINGW) IF(MINGW)
# resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068)
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o 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 -i ${CMAKE_CURRENT_SOURCE_DIR}/kicad.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o) -o ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o)
SET(KICAD_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o) SET(KICAD_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/kicad_rc.o)
......
...@@ -17,8 +17,8 @@ ...@@ -17,8 +17,8 @@
; General Product Description Definitions ; General Product Description Definitions
!define PRODUCT_NAME "KiCad" !define PRODUCT_NAME "KiCad"
!define PRODUCT_VERSION "2007.07.09" !define PRODUCT_VERSION "2008.01.25"
!define PRODUCT_WEB_SITE "http://www.lis.inpg.fr/realise_au_lis/kicad/" !define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/"
!define COMPANY_NAME "" !define COMPANY_NAME ""
!define TRADE_MARKS "" !define TRADE_MARKS ""
!define COPYRIGHT "Jean-Pierre Charras" !define COPYRIGHT "Jean-Pierre Charras"
...@@ -272,4 +272,4 @@ Function CheckAlreadyInstalled ...@@ -272,4 +272,4 @@ Function CheckAlreadyInstalled
StrCmp $R0 "" +3 StrCmp $R0 "" +3
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION $(ALREADY_INSTALLED) /SD IDOK IDOK +2 MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION $(ALREADY_INSTALLED) /SD IDOK IDOK +2
Abort Abort
FunctionEnd FunctionEnd
\ No newline at end of file
...@@ -153,7 +153,7 @@ IF(WIN32) ...@@ -153,7 +153,7 @@ IF(WIN32)
IF(MINGW) IF(MINGW)
# resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068) # resource compilation for mingw (http://www.cmake.org/Bug/view.php?id=4068)
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o 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 -i ${CMAKE_CURRENT_SOURCE_DIR}/pcbnew.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o) -o ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o)
SET(PCBNEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o) SET(PCBNEW_RESOURCES ${CMAKE_CURRENT_BINARY_DIR}/pcbnew_rc.o)
......
...@@ -11,9 +11,9 @@ class Pcb3D_GLCanvas; ...@@ -11,9 +11,9 @@ class Pcb3D_GLCanvas;
class D_PAD : public BOARD_ITEM class D_PAD : public BOARD_ITEM
{ {
private: private:
int m_NetCode; // Net number for fast comparisons int m_NetCode; // Net number for fast comparisons
public: public:
wxPoint m_Pos; // pad Position on board wxPoint m_Pos; // pad Position on board
...@@ -27,7 +27,7 @@ public: ...@@ -27,7 +27,7 @@ public:
wxString m_Netname; /* Net Name */ 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 // 2..14 = internal layers
// 16 .. 31 = technical layers // 16 .. 31 = technical layers
...@@ -37,7 +37,19 @@ public: ...@@ -37,7 +37,19 @@ public:
wxSize m_Drill; // Drill diam (drill shape = PAD_CIRCLE) or drill size(shape = OVAL) wxSize m_Drill; // Drill diam (drill shape = PAD_CIRCLE) or drill size(shape = OVAL)
// for drill shape = PAD_CIRCLE, drill diam = m_Drill.x // 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_Size; // X and Y size ( relative to orient 0)
wxSize m_DeltaSize; // delta sur formes rectangle -> trapezes wxSize m_DeltaSize; // delta sur formes rectangle -> trapezes
...@@ -54,6 +66,9 @@ public: ...@@ -54,6 +66,9 @@ public:
int m_physical_connexion; // variable used in rastnest computations int m_physical_connexion; // variable used in rastnest computations
// handle block number in track connection // handle block number in track connection
int m_zone_connexion; // variable used in rastnest computations
// handle block number in zone connection
public: public:
D_PAD( MODULE* parent ); D_PAD( MODULE* parent );
D_PAD( D_PAD* pad ); D_PAD( D_PAD* pad );
...@@ -72,58 +87,59 @@ public: ...@@ -72,58 +87,59 @@ public:
{ {
return m_Pos; return m_Pos;
} }
void SetPosition( const wxPoint& aPos ) void SetPosition( const wxPoint& aPos )
{ {
m_Pos = aPos; m_Pos = aPos;
} }
/* remove from linked list */ /* remove from linked list */
void UnLink(); void UnLink();
/* Reading and writing data on files */ /* Reading and writing data on files */
int ReadDescr( FILE* File, int* LineNum = NULL ); int ReadDescr( FILE* File, int* LineNum = NULL );
/** /**
* Function Save * Function Save
* writes the data structures for this object out to a FILE in "*.brd" format. * writes the data structures for this object out to a FILE in "*.brd" format.
* @param aFile The FILE to write to. * @param aFile The FILE to write to.
* @return bool - true if success writing else false. * @return bool - true if success writing else false.
*/ */
bool Save( FILE* aFile ) const; bool Save( FILE* aFile ) const;
/* drawing functions */ /* drawing functions */
void Draw( WinEDA_DrawPanel* panel, wxDC* DC, const wxPoint& offset, int draw_mode ); void Draw( WinEDA_DrawPanel* panel, wxDC* DC, const wxPoint& offset, int draw_mode );
void Draw3D( Pcb3D_GLCanvas* glcanvas ); void Draw3D( Pcb3D_GLCanvas* glcanvas );
// others // others
void SetPadName( const wxString& name ); // Change pad name 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 ReturnStringPadName( wxString& text ); // Return pad name as string in a buffer
void ComputeRayon(); // compute m_Rayon, rayon du cercle exinscrit void ComputeRayon(); // compute m_Rayon, rayon du cercle exinscrit
const wxPoint ReturnShapePos(); // retourne la position const wxPoint ReturnShapePos(); // retourne la position
/** /**
* Function GetNet * Function GetNet
* @return int - the netcode * @return int - the netcode
*/ */
int GetNet() const { return m_NetCode; } int GetNet() const { return m_NetCode; }
void SetNet( int aNetCode ) { m_NetCode = aNetCode; } void SetNet( int aNetCode ) { m_NetCode = aNetCode; }
/** /**
* Function Display_Infos * Function Display_Infos
* has knowledge about the frame and how and where to put status information * has knowledge about the frame and how and where to put status information
* about this object into the frame's message panel. * about this object into the frame's message panel.
* Is virtual from EDA_BaseStruct. * Is virtual from EDA_BaseStruct.
* @param frame A WinEDA_DrawFrame in which to print status information. * @param frame A WinEDA_DrawFrame in which to print status information.
*/ */
void Display_Infos( WinEDA_DrawFrame* frame ); void Display_Infos( WinEDA_DrawFrame* frame );
/** /**
* Function IsOnLayer * Function IsOnLayer
* tests to see if this object is on the given layer. Is virtual so * tests to see if this object is on the given layer. Is virtual so
...@@ -132,9 +148,9 @@ public: ...@@ -132,9 +148,9 @@ public:
* @param aLayer The layer to test for. * @param aLayer The layer to test for.
* @return bool - true if on given layer, else false. * @return bool - true if on given layer, else false.
*/ */
bool IsOnLayer( int aLayer ) const; bool IsOnLayer( int aLayer ) const;
/** /**
* Function HitTest * Function HitTest
* tests if the given wxPoint is within the bounds of this object. * tests if the given wxPoint is within the bounds of this object.
...@@ -152,17 +168,18 @@ public: ...@@ -152,17 +168,18 @@ public:
{ {
return wxT( "PAD" ); return wxT( "PAD" );
} }
/** /**
* Function Compare * Function Compare
* compares two pads and return 0 if they are equal. * 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. * @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) #if defined (DEBUG)
/** /**
* Function Show * Function Show
* is used to output the object tree, currently for debugging only. * is used to output the object tree, currently for debugging only.
......
...@@ -127,7 +127,7 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings() ...@@ -127,7 +127,7 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings()
// Default values for designing boards // Default values for designing boards
{ {
int ii; int ii;
static const int default_layer_color[32] = { static const int default_layer_color[32] = {
GREEN, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, GREEN, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY,
LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY, LIGHTGRAY,
...@@ -146,11 +146,16 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings() ...@@ -146,11 +146,16 @@ EDA_BoardDesignSettings::EDA_BoardDesignSettings()
LIGHTGRAY LIGHTGRAY
}; };
m_CopperLayerCount = 2; // Default design is a double sided board m_CopperLayerCount = 2; // Default design is a double sided board
m_ViaDrill = 250; // via drill (for the entire board) m_ViaDrill = 250; // defualt via drill (for the entire board)
m_CurrentViaSize = 450; // Current via size m_ViaDrillCustomValue = 250; // via drill for vias which must have a defined drill value
m_CurrentViaType = VIA_THROUGH; /* via type (BLIND, TROUGHT ...), bits 1 and 2 (not 0 and 1)*/ m_CurrentViaSize = 450; // Current via size
m_CurrentTrackWidth = 170; // current track width 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++ ) for( ii = 0; ii < HISTORY_NUMBER; ii++ )
{ {
m_TrackWidthHistory[ii] = 0; // Last HISTORY_NUMBER used track widths m_TrackWidthHistory[ii] = 0; // Last HISTORY_NUMBER used track widths
......
...@@ -399,7 +399,7 @@ void WinEDA_PcbTracksDialog::SetDisplayValue() ...@@ -399,7 +399,7 @@ void WinEDA_PcbTracksDialog::SetDisplayValue()
Internal_Unit ); Internal_Unit );
PutValueInLocalUnits( *m_OptViaDrill, g_DesignSettings.m_ViaDrill, Internal_Unit ); PutValueInLocalUnits( *m_OptViaDrill, g_DesignSettings.m_ViaDrill, Internal_Unit );
PutValueInLocalUnits( *m_MicroViaDrillCtrl, g_DesignSettings.m_MicroViaDrill, 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_OptTrackWidth, g_DesignSettings.m_CurrentTrackWidth, Internal_Unit );
PutValueInLocalUnits( *m_OptTrackClearance, g_DesignSettings.m_TrackClearence, Internal_Unit ); PutValueInLocalUnits( *m_OptTrackClearance, g_DesignSettings.m_TrackClearence, Internal_Unit );
PutValueInLocalUnits( *m_OptMaskMargin, g_DesignSettings.m_MaskMargin, Internal_Unit ); PutValueInLocalUnits( *m_OptMaskMargin, g_DesignSettings.m_MaskMargin, Internal_Unit );
...@@ -431,7 +431,7 @@ void WinEDA_PcbTracksDialog::AcceptPcbOptions( wxCommandEvent& event ) ...@@ -431,7 +431,7 @@ void WinEDA_PcbTracksDialog::AcceptPcbOptions( wxCommandEvent& event )
ReturnValueFromTextCtrl( *m_MicroViaDrillCtrl, m_Parent->m_InternalUnits ); ReturnValueFromTextCtrl( *m_MicroViaDrillCtrl, m_Parent->m_InternalUnits );
g_DesignSettings.m_ViaDrill = g_DesignSettings.m_ViaDrill =
ReturnValueFromTextCtrl( *m_OptViaDrill, m_Parent->m_InternalUnits ); ReturnValueFromTextCtrl( *m_OptViaDrill, m_Parent->m_InternalUnits );
g_ViaHoleLastValue = g_DesignSettings.m_ViaDrillCustomValue =
ReturnValueFromTextCtrl( *m_OptCustomViaDrill, m_Parent->m_InternalUnits ); ReturnValueFromTextCtrl( *m_OptCustomViaDrill, m_Parent->m_InternalUnits );
g_DesignSettings.m_MicroViasAllowed = m_AllowMicroViaCtrl->IsChecked(); g_DesignSettings.m_MicroViasAllowed = m_AllowMicroViaCtrl->IsChecked();
......
...@@ -84,6 +84,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -84,6 +84,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
case ID_POPUP_PCB_SELECT_LAYER_PAIR: case ID_POPUP_PCB_SELECT_LAYER_PAIR:
case ID_POPUP_PCB_SELECT_NO_CU_LAYER: case ID_POPUP_PCB_SELECT_NO_CU_LAYER:
case ID_POPUP_PCB_SELECT_WIDTH: 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_WIDTH1:
case ID_POPUP_PCB_SELECT_WIDTH2: case ID_POPUP_PCB_SELECT_WIDTH2:
case ID_POPUP_PCB_SELECT_WIDTH3: case ID_POPUP_PCB_SELECT_WIDTH3:
...@@ -339,7 +341,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -339,7 +341,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
GetScreen()->SetModify(); GetScreen()->SetModify();
break; break;
case ID_POPUP_PCB_EDIT_NET: case ID_POPUP_PCB_EDIT_NET:
if( GetCurItem() == NULL ) if( GetCurItem() == NULL )
break; break;
Edit_Net_Width( &dc, ( (TRACK*) GetCurItem() )->GetNet() ); Edit_Net_Width( &dc, ( (TRACK*) GetCurItem() )->GetNet() );
...@@ -833,7 +835,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -833,7 +835,8 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
DisplayTrackSettings(); DisplayTrackSettings();
m_SelTrackWidthBox_Changed = FALSE; m_SelTrackWidthBox_Changed = FALSE;
m_SelViaSizeBox_Changed = FALSE; m_SelViaSizeBox_Changed = FALSE;
} g_DesignSettings.m_UseConnectedTrackWidth = false;
}
break; break;
case ID_POPUP_PCB_SELECT_WIDTH1: case ID_POPUP_PCB_SELECT_WIDTH1:
...@@ -845,6 +848,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -845,6 +848,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
case ID_POPUP_PCB_SELECT_WIDTH7: case ID_POPUP_PCB_SELECT_WIDTH7:
case ID_POPUP_PCB_SELECT_WIDTH8: case ID_POPUP_PCB_SELECT_WIDTH8:
DrawPanel->MouseToCursorSchema(); DrawPanel->MouseToCursorSchema();
g_DesignSettings.m_UseConnectedTrackWidth = false;
{ {
int ii = id - ID_POPUP_PCB_SELECT_WIDTH1; int ii = id - ID_POPUP_PCB_SELECT_WIDTH1;
g_DesignSettings.m_CurrentTrackWidth = g_DesignSettings.m_TrackWidthHistory[ii]; g_DesignSettings.m_CurrentTrackWidth = g_DesignSettings.m_TrackWidthHistory[ii];
...@@ -852,6 +856,15 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) ...@@ -852,6 +856,15 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event )
} }
break; 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: case ID_POPUP_PCB_SELECT_VIASIZE:
break; break;
......
...@@ -44,7 +44,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC ) ...@@ -44,7 +44,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC )
ShowNewTrackWhenMovingCursor( Panel, DC, FALSE ); ShowNewTrackWhenMovingCursor( Panel, DC, FALSE );
if( g_HightLigt_Status ) if( g_HightLigt_Status )
frame->Hight_Light( DC ); frame->Hight_Light( DC );
g_HightLigth_NetCode = OldNetCodeSurbrillance; g_HightLigth_NetCode = OldNetCodeSurbrillance;
if( OldEtatSurbrillance ) if( OldEtatSurbrillance )
frame->Hight_Light( DC ); frame->Hight_Light( DC );
...@@ -59,7 +59,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC ) ...@@ -59,7 +59,7 @@ static void Exit_Editrack( WinEDA_DrawPanel* Panel, wxDC* DC )
delete track; delete track;
} }
} }
Panel->ManageCurseur = NULL; Panel->ManageCurseur = NULL;
Panel->ForceCloseManageCurseur = NULL; Panel->ForceCloseManageCurseur = NULL;
frame->SetCurItem( NULL ); frame->SetCurItem( NULL );
...@@ -73,7 +73,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) ...@@ -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 * Routine d'initialisation d'un trace de piste et/ou de mise en place d'un
* nouveau point piste * nouveau point piste
* *
* Si pas de piste en cours de trace: * Si pas de piste en cours de trace:
* - Recherche de netname de la nouvelle piste ( pad de depart out netname * - Recherche de netname de la nouvelle piste ( pad de depart out netname
* de la piste si depart sur une ancienne piste * de la piste si depart sur une ancienne piste
...@@ -84,58 +84,69 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) ...@@ -84,58 +84,69 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC )
* - si DRC OK : addition d'un nouveau point piste * - si DRC OK : addition d'un nouveau point piste
*/ */
{ {
D_PAD* pt_pad = NULL; D_PAD* pt_pad = NULL;
TRACK* adr_buf = NULL, * Track; TRACK* TrackOnStartPoint = NULL, * Track;
int masquelayer = g_TabOneLayerMask[GetScreen()->m_Active_Layer]; int masquelayer = g_TabOneLayerMask[GetScreen()->m_Active_Layer];
EDA_BaseStruct* LockPoint; EDA_BaseStruct* LockPoint;
wxPoint pos = GetScreen()->m_Curseur; 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->ManageCurseur = ShowNewTrackWhenMovingCursor;
DrawPanel->ForceCloseManageCurseur = Exit_Editrack; 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; OldNetCodeSurbrillance = g_HightLigth_NetCode;
OldEtatSurbrillance = g_HightLigt_Status; OldEtatSurbrillance = g_HightLigt_Status;
if( g_HightLigt_Status ) if( g_HightLigt_Status )
Hight_Light( DC ); 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_CurrentTrackSegment->m_Flags = IS_NEW;
g_TrackSegmentCount = 1; g_TrackSegmentCount = 1;
g_HightLigth_NetCode = 0; 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 ); LockPoint = LocateLockPoint( m_Pcb, pos, masquelayer );
if( LockPoint ) if( LockPoint ) // An item (pad or track) is found
{ {
if( LockPoint->Type() == TYPEPAD ) if( LockPoint->Type() == TYPEPAD )
{ {
pt_pad = (D_PAD*) LockPoint; 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; pos = pt_pad->m_Pos;
g_HightLigth_NetCode = pt_pad->GetNet(); g_HightLigth_NetCode = pt_pad->GetNet();
} }
else /* le point d'accrochage est un segment */ else /* A track segment is found */
{ {
adr_buf = (TRACK*) LockPoint; TrackOnStartPoint = (TRACK*) LockPoint;
g_HightLigth_NetCode = adr_buf->GetNet(); g_HightLigth_NetCode = TrackOnStartPoint->GetNet();
CreateLockPoint( &pos.x, &pos.y, adr_buf, NULL ); CreateLockPoint( &pos.x, &pos.y, TrackOnStartPoint, NULL );
} }
} }
build_ratsnest_pad( LockPoint, wxPoint( 0, 0 ), TRUE ); build_ratsnest_pad( LockPoint, wxPoint( 0, 0 ), TRUE );
Hight_Light( DC ); Hight_Light( DC );
g_CurrentTrackSegment->m_Flags = IS_NEW; g_CurrentTrackSegment->m_Flags = IS_NEW;
g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer ); g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer );
g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth; g_CurrentTrackSegment->m_Width = g_DesignSettings.m_CurrentTrackWidth;
g_CurrentTrackSegment->m_Start = pos; if( g_DesignSettings.m_UseConnectedTrackWidth )
g_CurrentTrackSegment->m_End = g_CurrentTrackSegment->m_Start; {
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 ); g_CurrentTrackSegment->SetNet( g_HightLigth_NetCode );
if( pt_pad ) if( pt_pad )
{ {
...@@ -143,10 +154,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) ...@@ -143,10 +154,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC )
g_CurrentTrackSegment->SetState( BEGIN_ONPAD, ON ); g_CurrentTrackSegment->SetState( BEGIN_ONPAD, ON );
} }
else else
g_CurrentTrackSegment->start = adr_buf; g_CurrentTrackSegment->start = TrackOnStartPoint;
if( g_TwoSegmentTrackBuild ) if( g_TwoSegmentTrackBuild )
{ {
// Create 2 segments // Create 2 segments
g_CurrentTrackSegment = g_CurrentTrackSegment->Copy(); g_CurrentTrackSegment = g_CurrentTrackSegment->Copy();
g_TrackSegmentCount++; g_TrackSegmentCount++;
...@@ -159,7 +170,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) ...@@ -159,7 +170,7 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC )
g_CurrentTrackSegment->Display_Infos( this ); g_CurrentTrackSegment->Display_Infos( this );
SetCurItem( g_CurrentTrackSegment ); SetCurItem( g_CurrentTrackSegment );
DrawPanel->ManageCurseur( DrawPanel, DC, FALSE ); DrawPanel->ManageCurseur( DrawPanel, DC, FALSE );
if( Drc_On ) if( Drc_On )
{ {
if( BAD_DRC == m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track ) ) 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 ) ...@@ -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 ) ) if( BAD_DRC == m_drc->Drc( g_CurrentTrackSegment, m_Pcb->m_Track ) )
return NULL; return NULL;
if( g_TwoSegmentTrackBuild // We must handle 2 segments if( g_TwoSegmentTrackBuild // We must handle 2 segments
&& g_CurrentTrackSegment->Back() ) && g_CurrentTrackSegment->Back() )
{ {
...@@ -220,7 +231,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC ) ...@@ -220,7 +231,10 @@ TRACK* WinEDA_PcbFrame::Begin_Route( TRACK* track, wxDC* DC )
g_TrackSegmentCount++; g_TrackSegmentCount++;
g_CurrentTrackSegment->m_Start = g_CurrentTrackSegment->m_End; g_CurrentTrackSegment->m_Start = g_CurrentTrackSegment->m_End;
g_CurrentTrackSegment->SetLayer( GetScreen()->m_Active_Layer ); 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 */ /* Show the new position */
ShowNewTrackWhenMovingCursor( DrawPanel, DC, FALSE ); ShowNewTrackWhenMovingCursor( DrawPanel, DC, FALSE );
} }
...@@ -238,7 +252,7 @@ int WinEDA_PcbFrame::Add_45_degrees_Segment( wxDC* DC, TRACK* pt_segm ) ...@@ -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 /* rectifie un virage a 90 et le modifie par 2 coudes a 45
* n'opere que sur des segments horizontaux ou verticaux. * n'opere que sur des segments horizontaux ou verticaux.
* *
* entree : pointeur sur le segment qui vient d'etre trace * entree : pointeur sur le segment qui vient d'etre trace
* On suppose que le segment precedent est celui qui a ete * On suppose que le segment precedent est celui qui a ete
* precedement trace * precedement trace
...@@ -279,7 +293,7 @@ int WinEDA_PcbFrame::Add_45_degrees_Segment( wxDC* DC, TRACK* pt_segm ) ...@@ -279,7 +293,7 @@ int WinEDA_PcbFrame::Add_45_degrees_Segment( wxDC* DC, TRACK* pt_segm )
// les segments doivent etre de longueur suffisante: // les segments doivent etre de longueur suffisante:
if( MAX( abs( dx0 ), abs( dy0 ) ) < (pas_45 * 2) ) if( MAX( abs( dx0 ), abs( dy0 ) ) < (pas_45 * 2) )
return 0; return 0;
if( MAX( abs( dx1 ), abs( dy1 ) ) < (pas_45 * 2) ) if( MAX( abs( dx1 ), abs( dy1 ) ) < (pas_45 * 2) )
return 0; return 0;
...@@ -382,7 +396,7 @@ void WinEDA_PcbFrame::End_Route( TRACK* track, wxDC* DC ) ...@@ -382,7 +396,7 @@ void WinEDA_PcbFrame::End_Route( TRACK* track, wxDC* DC )
if( track == NULL ) if( track == NULL )
return; 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; return;
/* Sauvegarde des coord du point terminal de la piste */ /* Sauvegarde des coord du point terminal de la piste */
...@@ -512,15 +526,17 @@ void ShowNewTrackWhenMovingCursor( WinEDA_DrawPanel* panel, wxDC* DC, bool erase ...@@ -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 */ /* dessin de la nouvelle piste : mise a jour du point d'arrivee */
g_CurrentTrackSegment->SetLayer( screen->m_Active_Layer ); 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 ) if( g_TwoSegmentTrackBuild )
{ {
TRACK* previous_track = (TRACK*) g_CurrentTrackSegment->Pback; TRACK* previous_track = (TRACK*) g_CurrentTrackSegment->Pback;
if( previous_track && (previous_track->Type() == TYPETRACK) ) if( previous_track && (previous_track->Type() == TYPETRACK) )
{ {
previous_track->SetLayer( screen->m_Active_Layer ); 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 ) if( Track_45_Only )
...@@ -713,10 +729,10 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount ) ...@@ -713,10 +729,10 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount )
* return a pointer on the first segment (start of track list) * return a pointer on the first segment (start of track list)
*/ */
{ {
TRACK* firsttrack = track; TRACK* firsttrack = track;
TRACK* oldtrack; TRACK* oldtrack;
int nn = 0; int nn = 0;
BOARD_ITEM* LockPoint; BOARD_ITEM* LockPoint;
if( track == 0 ) if( track == 0 )
return NULL; return NULL;
...@@ -742,7 +758,7 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount ) ...@@ -742,7 +758,7 @@ TRACK* DeleteNullTrackSegments( BOARD* pcb, TRACK* track, int* segmcount )
*segmcount = nn; *segmcount = nn;
if( nn == 0 ) 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 // we must set the pointers on connected items and the connection status
...@@ -802,7 +818,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad ) ...@@ -802,7 +818,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad )
TRACK* lasttrack = g_CurrentTrackSegment; TRACK* lasttrack = g_CurrentTrackSegment;
if( !g_CurrentTrackSegment->IsNull() ) if( !g_CurrentTrackSegment->IsNull() )
{ {
/* Must create a new segment, from track end to pad center */ /* Must create a new segment, from track end to pad center */
g_CurrentTrackSegment = lasttrack->Copy(); g_CurrentTrackSegment = lasttrack->Copy();
g_TrackSegmentCount++; g_TrackSegmentCount++;
...@@ -810,7 +826,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad ) ...@@ -810,7 +826,7 @@ void EnsureEndTrackOnPad( D_PAD* Pad )
g_CurrentTrackSegment->Pback = lasttrack; g_CurrentTrackSegment->Pback = lasttrack;
lasttrack->end = g_CurrentTrackSegment; lasttrack->end = g_CurrentTrackSegment;
} }
g_CurrentTrackSegment->m_End = Pad->m_Pos; g_CurrentTrackSegment->m_End = Pad->m_Pos;
g_CurrentTrackSegment->SetState( END_ONPAD, OFF ); g_CurrentTrackSegment->SetState( END_ONPAD, OFF );
......
...@@ -23,7 +23,6 @@ ...@@ -23,7 +23,6 @@
#include "Global_Options_Pad.xpm" #include "Global_Options_Pad.xpm"
#include "Delete_Pad.xpm" #include "Delete_Pad.xpm"
#include "Export_Options_Pad.xpm" #include "Export_Options_Pad.xpm"
#include "Width_Segment.xpm"
#include "Select_Layer_Pair.xpm" #include "Select_Layer_Pair.xpm"
/*************************************************************************/ /*************************************************************************/
......
...@@ -47,7 +47,6 @@ ...@@ -47,7 +47,6 @@
#include "Select_W_Layer.xpm" #include "Select_W_Layer.xpm"
#include "Width_Track.xpm" #include "Width_Track.xpm"
#include "Width_Vias.xpm" #include "Width_Vias.xpm"
#include "Width_Segment.xpm"
#include "Width_Net.xpm" #include "Width_Net.xpm"
#include "Width_Track_Via.xpm" #include "Width_Track_Via.xpm"
#include "Select_Layer_Pair.xpm" #include "Select_Layer_Pair.xpm"
...@@ -71,6 +70,16 @@ static wxMenu* Append_Track_Width_List() ...@@ -71,6 +70,16 @@ static wxMenu* Append_Track_Width_List()
double value; double value;
trackwidth_menu = new wxMenu; 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++ ) for( ii = 0; (ii < HISTORY_NUMBER) && (ii < TRACK_HISTORY_NUMBER_MAX); ii++ )
{ {
if( g_DesignSettings.m_TrackWidthHistory[ii] == 0 ) if( g_DesignSettings.m_TrackWidthHistory[ii] == 0 )
...@@ -84,7 +93,9 @@ static wxMenu* Append_Track_Width_List() ...@@ -84,7 +93,9 @@ static wxMenu* Append_Track_Width_List()
msg.Printf( _( "Track %.3f" ), value ); msg.Printf( _( "Track %.3f" ), value );
trackwidth_menu->Append( ID_POPUP_PCB_SELECT_WIDTH1 + ii, msg, wxEmptyString, TRUE ); 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 ); trackwidth_menu->Check( ID_POPUP_PCB_SELECT_WIDTH1 + ii, TRUE );
} }
...@@ -172,12 +183,12 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) ...@@ -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 ); // 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 /* We can reselect another item only if there are no item being edited
* because ALL moving functions use GetCurItem(), therefore GetCurItem() * because ALL moving functions use GetCurItem(), therefore GetCurItem()
* must return the same item during moving. We know an item is moving * must return the same item during moving. We know an item is moving
* if( item && (item->m_Flags != 0)) is true and after calling * if( item && (item->m_Flags != 0)) is true and after calling
* PcbGeneralLocateAndDisplay(), GetCurItem() is any arbitrary BOARD_ITEM, * PcbGeneralLocateAndDisplay(), GetCurItem() is any arbitrary BOARD_ITEM,
* not the current item being edited. In such case we cannot call * not the current item being edited. In such case we cannot call
* PcbGeneralLocateAndDisplay(). * PcbGeneralLocateAndDisplay().
*/ */
if( !item || (item->m_Flags == 0) ) if( !item || (item->m_Flags == 0) )
{ {
...@@ -329,7 +340,7 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) ...@@ -329,7 +340,7 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu )
wxT( "WinEDA_PcbFrame::OnRightClick() Error: illegal DrawType %d" ), wxT( "WinEDA_PcbFrame::OnRightClick() Error: illegal DrawType %d" ),
item->Type() ); item->Type() );
DisplayError( this, msg ); DisplayError( this, msg );
SetCurItem(NULL); SetCurItem( NULL );
break; break;
default: default:
...@@ -337,9 +348,10 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu ) ...@@ -337,9 +348,10 @@ bool WinEDA_PcbFrame::OnRightClick( const wxPoint& aMousePos, wxMenu* aPopMenu )
wxT( "WinEDA_PcbFrame::OnRightClick() Error: unknown DrawType %d" ), wxT( "WinEDA_PcbFrame::OnRightClick() Error: unknown DrawType %d" ),
item->Type() ); item->Type() );
DisplayError( this, msg ); DisplayError( this, msg );
// Attempt to clear error (but should no occurs )
if ( item->Type() >= MAX_STRUCT_TYPE_ID ) // Attempt to clear error (but should no occurs )
SetCurItem(NULL); if( item->Type() >= MAX_STRUCT_TYPE_ID )
SetCurItem( NULL );
break; break;
} }
...@@ -509,21 +521,26 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu ) ...@@ -509,21 +521,26 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
ID_POPUP_PCB_VIA_EDITING, _( "Edit Via" ), edit_xpm ); ID_POPUP_PCB_VIA_EDITING, _( "Edit Via" ), edit_xpm );
ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_DEFAULT, ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_DEFAULT,
_( "Set via hole to Default" ), apply_xpm ); _( "Set via hole to Default" ), apply_xpm );
ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_VALUE, _( msg = _( "Set via hole to a specific value. This specfic value is currently" );
"Set via hole to alt value" ), options_new_pad_xpm ); msg << wxT(" ") << ReturnStringFromValue( g_UnitMetric, g_DesignSettings.m_ViaDrillCustomValue, m_InternalUnits );
ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_ENTER_VALUE, ADD_MENUITEM_WITH_HELP( via_mnu, ID_POPUP_PCB_VIA_HOLE_TO_VALUE,
_( "Set the via hole alt value" ), edit_xpm ); _( "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, _( ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_EXPORT, _(
"Export Via hole to alt value" ), Export_Options_Pad_xpm ); "Export Via hole to alt value" ), Export_Options_Pad_xpm );
ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS, ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS,
_( "Export via hole to others id vias" ), global_options_pad_xpm ); _( "Export via hole to others id vias" ), global_options_pad_xpm );
ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_RESET_TO_DEFAULT, ADD_MENUITEM( via_mnu, ID_POPUP_PCB_VIA_HOLE_RESET_TO_DEFAULT,
_( "Set ALL via holes to default" ), apply_xpm ); _( "Set ALL via holes to default" ), apply_xpm );
if( ! Track->IsDrillDefault() ) if( !Track->IsDrillDefault() )
{ {
via_mnu->Enable( ID_POPUP_PCB_VIA_HOLE_EXPORT, FALSE ); 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 ); via_mnu->Enable( ID_POPUP_PCB_VIA_HOLE_TO_VALUE, FALSE );
} }
else else
...@@ -563,24 +580,27 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu ) ...@@ -563,24 +580,27 @@ void WinEDA_PcbFrame::createPopupMenuForTracks( TRACK* Track, wxMenu* PopMenu )
} }
msg = AddHotkeyName( _( "Place Via" ), s_Board_Editor_Hokeys_Descr, HK_ADD_VIA ); msg = AddHotkeyName( _( "Place Via" ), s_Board_Editor_Hokeys_Descr, HK_ADD_VIA );
PopMenu->Append( ID_POPUP_PCB_PLACE_VIA, msg ); 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() ) // 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 ); msg = AddHotkeyName( _(
} "Place Micro Via" ), s_Board_Editor_Hokeys_Descr,
HK_ADD_MICROVIA );
PopMenu->Append( ID_POPUP_PCB_PLACE_MICROVIA, msg );
}
} }
// track Width control : // track Width control :
wxMenu* track_mnu = new wxMenu; wxMenu* track_mnu;
ADD_MENUITEM_WITH_SUBMENU( PopMenu, track_mnu, if( !flags ) // track Width control :
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 )
{ {
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, ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_TRACK,
_( "Edit Track" ), width_track_xpm ); _( "Edit Track" ), width_track_xpm );
ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_NET, ADD_MENUITEM( track_mnu, ID_POPUP_PCB_EDIT_NET,
...@@ -644,19 +664,19 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu ...@@ -644,19 +664,19 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu
{ {
if( edge_zone->m_Flags ) if( edge_zone->m_Flags )
{ {
if( (edge_zone->m_Flags & IN_EDIT ) ) if( (edge_zone->m_Flags & IN_EDIT ) )
ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_CORNER, ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_CORNER,
_( "Place Corner" ), apply_xpm ); _( "Place Corner" ), apply_xpm );
else else
ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_OUTLINES, ADD_MENUITEM( aPopMenu, ID_POPUP_PCB_PLACE_ZONE_OUTLINES,
_( "Place Zone" ), apply_xpm ); _( "Place Zone" ), apply_xpm );
} }
else else
{ {
wxMenu * zones_menu = new wxMenu(); wxMenu* zones_menu = new wxMenu();
ADD_MENUITEM_WITH_SUBMENU( aPopMenu, zones_menu, ADD_MENUITEM_WITH_SUBMENU( aPopMenu, zones_menu,
-1, _( "Zones" ), add_zone_xpm ); -1, _( "Zones" ), add_zone_xpm );
int index; int index;
if( ( index = edge_zone->HitTestForCorner( GetScreen()->RefPos( true ) ) ) >= 0 ) if( ( index = edge_zone->HitTestForCorner( GetScreen()->RefPos( true ) ) ) >= 0 )
{ {
ADD_MENUITEM( zones_menu, ID_POPUP_PCB_MOVE_ZONE_CORNER, ADD_MENUITEM( zones_menu, ID_POPUP_PCB_MOVE_ZONE_CORNER,
...@@ -688,10 +708,10 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu ...@@ -688,10 +708,10 @@ void WinEDA_PcbFrame::createPopUpMenuForZones( ZONE_CONTAINER* edge_zone, wxMenu
_( "Edit Zone Params" ), edit_xpm ); _( "Edit Zone Params" ), edit_xpm );
zones_menu->AppendSeparator(); zones_menu->AppendSeparator();
if ( index >= 0 && edge_zone->m_Poly->IsCutoutContour( edge_zone->m_CornerSelection ) ) if( index >= 0 && edge_zone->m_Poly->IsCutoutContour( edge_zone->m_CornerSelection ) )
ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CUTOUT, ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CUTOUT,
_( "Delete Cutout" ), delete_xpm ); _( "Delete Cutout" ), delete_xpm );
ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CONTAINER, ADD_MENUITEM( zones_menu, ID_POPUP_PCB_DELETE_ZONE_CONTAINER,
_( "Delete Zone Outline" ), delete_xpm ); _( "Delete Zone Outline" ), delete_xpm );
} }
......
...@@ -114,6 +114,7 @@ BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame ) ...@@ -114,6 +114,7 @@ BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame )
EVT_TOOL( ID_GET_NETLIST, WinEDA_PcbFrame::Process_Special_Functions ) EVT_TOOL( ID_GET_NETLIST, WinEDA_PcbFrame::Process_Special_Functions )
EVT_TOOL( ID_DRC_CONTROL, 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_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, EVT_KICAD_CHOICEBOX( ID_TOOLBARH_PCB_SELECT_LAYER,
WinEDA_PcbFrame::Process_Special_Functions ) WinEDA_PcbFrame::Process_Special_Functions )
EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_TRACK_WIDTH, EVT_KICAD_CHOICEBOX( ID_AUX_TOOLBAR_PCB_TRACK_WIDTH,
...@@ -442,6 +443,8 @@ void WinEDA_PcbFrame::SetToolbars() ...@@ -442,6 +443,8 @@ void WinEDA_PcbFrame::SetToolbars()
if( m_AuxiliaryToolBar ) if( m_AuxiliaryToolBar )
{ {
wxString msg; wxString msg;
m_AuxiliaryToolBar->ToggleTool( ID_AUX_TOOLBAR_PCB_SELECT_AUTO_WIDTH,
g_DesignSettings.m_UseConnectedTrackWidth );
if( m_SelTrackWidthBox && m_SelTrackWidthBox_Changed ) if( m_SelTrackWidthBox && m_SelTrackWidthBox_Changed )
{ {
m_SelTrackWidthBox_Changed = FALSE; m_SelTrackWidthBox_Changed = FALSE;
......
...@@ -294,8 +294,6 @@ eda_global wxString g_ViaType_Name[4] ...@@ -294,8 +294,6 @@ eda_global wxString g_ViaType_Name[4]
#endif #endif
; ;
eda_global int g_ViaHoleLastValue; // Last value for non default value via hole
/* couleurs des autres items des empreintes */ /* couleurs des autres items des empreintes */
#if defined MAIN #if defined MAIN
int g_PadCMPColor = RED; int g_PadCMPColor = RED;
......
...@@ -35,7 +35,6 @@ ...@@ -35,7 +35,6 @@
#include "mw_Add_Line.xpm" #include "mw_Add_Line.xpm"
#include "mw_Add_Gap.xpm" #include "mw_Add_Gap.xpm"
#include "mw_toolbar.xpm" #include "mw_toolbar.xpm"
#include "Add_Tracks.xpm"
#include "Show_Zone.xpm" #include "Show_Zone.xpm"
#include "net_hightlight.xpm" #include "net_hightlight.xpm"
#include "PcbOffset.xpm" #include "PcbOffset.xpm"
...@@ -282,7 +281,9 @@ void WinEDA_PcbFrame::ReCreateHToolbar() ...@@ -282,7 +281,9 @@ void WinEDA_PcbFrame::ReCreateHToolbar()
_( "auto zoom" ) ); _( "auto zoom" ) );
m_HToolBar->AddSeparator(); 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 ), m_HToolBar->AddTool( ID_FIND_ITEMS, wxEmptyString, BITMAP( find_xpm ),
msg ); msg );
...@@ -526,6 +527,12 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() ...@@ -526,6 +527,12 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
/****************************************************/ /****************************************************/
/* Create auxiliary horizontal toolbar /* 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; int ii;
...@@ -544,6 +551,13 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() ...@@ -544,6 +551,13 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
m_AuxiliaryToolBar->AddControl( m_SelTrackWidthBox ); m_AuxiliaryToolBar->AddControl( m_SelTrackWidthBox );
m_SelTrackWidthBox_Changed = TRUE; 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_AuxiliaryToolBar->AddSeparator();
m_SelViaSizeBox = new WinEDAChoiceBox( m_AuxiliaryToolBar, m_SelViaSizeBox = new WinEDAChoiceBox( m_AuxiliaryToolBar,
ID_AUX_TOOLBAR_PCB_VIA_SIZE, ID_AUX_TOOLBAR_PCB_VIA_SIZE,
...@@ -610,28 +624,29 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar() ...@@ -610,28 +624,29 @@ void WinEDA_PcbFrame::ReCreateAuxiliaryToolbar()
WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent )
/**************************************************************************/ /**************************************************************************/
{ {
int ii, jj, ll; int ii, jj, ll;
unsigned lenght = 0; unsigned lenght = 0;
bool rebuild = FALSE; bool rebuild = FALSE;
long current_mask_layer; long current_mask_layer;
if( m_SelLayerBox == NULL ) if( m_SelLayerBox == NULL )
{ {
if( parent == NULL ) if( parent == NULL )
return NULL; return NULL;
m_SelLayerBox = new WinEDAChoiceBox( parent, ID_TOOLBARH_PCB_SELECT_LAYER, m_SelLayerBox = new WinEDAChoiceBox( parent, ID_TOOLBARH_PCB_SELECT_LAYER,
wxPoint( -1, -1 ), wxPoint( -1, -1 ),
#if defined(__UNIX__) #if defined (__UNIX__)
// Width enough for the longest string: "Component (Page Down)"
// Maybe that string is too long? // Width enough for the longest string: "Component (Page Down)"
wxSize( 230, -1 ) // Maybe that string is too long?
wxSize( 230, -1 )
#else #else
wxSize( LISTBOX_WIDTH+40, -1 ) wxSize( LISTBOX_WIDTH + 40, -1 )
#endif #endif
); );
parent->AddControl( m_SelLayerBox ); parent->AddControl( m_SelLayerBox );
} }
...@@ -654,8 +669,8 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) ...@@ -654,8 +669,8 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent )
m_SelLayerBox->Clear(); m_SelLayerBox->Clear();
for( ii = 0, jj = 0; ii <= EDGE_N; ii++ ) for( ii = 0, jj = 0; ii <= EDGE_N; ii++ )
{ {
// List to append hotkeys in layer box selection // List to append hotkeys in layer box selection
static int HK_SwitchLayer[EDGE_N+1] = { static int HK_SwitchLayer[EDGE_N + 1] = {
HK_SWITCH_LAYER_TO_COPPER, HK_SWITCH_LAYER_TO_COPPER,
HK_SWITCH_LAYER_TO_INNER1, HK_SWITCH_LAYER_TO_INNER1,
HK_SWITCH_LAYER_TO_INNER2, HK_SWITCH_LAYER_TO_INNER2,
...@@ -672,7 +687,7 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) ...@@ -672,7 +687,7 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent )
HK_SWITCH_LAYER_TO_INNER13, HK_SWITCH_LAYER_TO_INNER13,
HK_SWITCH_LAYER_TO_INNER14, HK_SWITCH_LAYER_TO_INNER14,
HK_SWITCH_LAYER_TO_COMPONENT HK_SWITCH_LAYER_TO_COMPONENT
}; };
if( (g_TabOneLayerMask[ii] & Masque_Layer) ) if( (g_TabOneLayerMask[ii] & Masque_Layer) )
{ {
...@@ -680,10 +695,11 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent ) ...@@ -680,10 +695,11 @@ WinEDAChoiceBox* WinEDA_PcbFrame::ReCreateLayerBox( WinEDA_Toolbar* parent )
msg = AddHotkeyName( msg, s_Board_Editor_Hokeys_Descr, HK_SwitchLayer[ii] ); msg = AddHotkeyName( msg, s_Board_Editor_Hokeys_Descr, HK_SwitchLayer[ii] );
m_SelLayerBox->Append( msg ); m_SelLayerBox->Append( msg );
m_SelLayerBox->SetClientData( jj, (void*) ii ); m_SelLayerBox->SetClientData( jj, (void*) ii );
lenght = max(lenght, msg.Len() ); lenght = max( lenght, msg.Len() );
jj++; jj++;
} }
} }
// Test me: // Test me:
// int lchar = m_SelLayerBox->GetFont().GetPointSize(); // int lchar = m_SelLayerBox->GetFont().GetPointSize();
// m_SelLayerBox->SetSize(wxSize(lenght * lchar,-1)); // m_SelLayerBox->SetSize(wxSize(lenght * lchar,-1));
......
...@@ -43,10 +43,10 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxDC* DC, int command_type, SEGVIA* via ...@@ -43,10 +43,10 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxDC* DC, int command_type, SEGVIA* via
DrawPanel->MouseToCursorSchema(); DrawPanel->MouseToCursorSchema();
case ID_POPUP_PCB_VIA_HOLE_TO_VALUE: // Set the drill via to custom 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->Draw( DrawPanel, DC, GR_XOR );
via->SetDrillValue( g_ViaHoleLastValue ); via->SetDrillValue( g_DesignSettings.m_ViaDrillCustomValue );
via->Draw( DrawPanel, DC, GR_OR ); via->Draw( DrawPanel, DC, GR_OR );
GetScreen()->SetModify(); GetScreen()->SetModify();
} }
...@@ -57,12 +57,12 @@ void WinEDA_PcbFrame::Via_Edit_Control( wxDC* DC, int command_type, SEGVIA* via ...@@ -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 case ID_POPUP_PCB_VIA_HOLE_EXPORT: // Export the current drill value as the new custom value
if( via->GetDrillValue() > 0 ) if( via->GetDrillValue() > 0 )
g_ViaHoleLastValue = via->GetDrillValue(); g_DesignSettings.m_ViaDrillCustomValue = via->GetDrillValue();
break; break;
case ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS: // Export the current drill value to via which have the same size case ID_POPUP_PCB_VIA_HOLE_EXPORT_TO_OTHERS: // Export the current drill value to via which have the same size
if( via->GetDrillValue() > 0 ) if( via->GetDrillValue() > 0 )
g_ViaHoleLastValue = via->GetDrillValue(); g_DesignSettings.m_ViaDrillCustomValue = via->GetDrillValue();
via_struct = m_Pcb->m_Track; via_struct = m_Pcb->m_Track;
for( ; via_struct != NULL; via_struct = (TRACK*) via_struct->Pnext ) for( ; via_struct != NULL; via_struct = (TRACK*) via_struct->Pnext )
{ {
......
...@@ -134,7 +134,7 @@ int ZONE_CONTAINER::Fill_Zone( WinEDA_PcbFrame* frame, wxDC* DC, bool verbose ) ...@@ -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 ); 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; LISTE_PAD* pad;
int cells_count = 0; int cells_count = 0;
for( ii = 0, pad = frame->m_Pcb->m_Pads; ii < frame->m_Pcb->m_NbPads; ii++, pad++ ) 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 ) ...@@ -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( cells_count == 0 )
{ {
if( verbose ) if( verbose )
......
/////////////////////////////////////////////////////////////////////////////
// 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,
&currentEdge->m_End.x, &currentEdge->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();
}
/////////////////////////////////////////////////////////////////////////////
// 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_
<?xml version="1.0" encoding="windows-1252"?>
<anthemion-project version="1.0.0.0" xmlns="http://www.anthemion.co.uk">
<header>
<long name="name_counter">0</long>
<string name="html_path">""</string>
<string name="title">""</string>
<string name="author">""</string>
<string name="description">""</string>
<long name="doc_count">23</long>
<string name="xrc_filename">""</string>
<bool name="convert_images_to_xpm">0</bool>
<bool name="inline_images">0</bool>
<bool name="generate_cpp_for_xrc">0</bool>
<bool name="use_help_text_for_tooltips">1</bool>
<bool name="translate_strings">1</bool>
<bool name="extract_strings">0</bool>
<string name="user_name">"jean-pierre Charras"</string>
<string name="copyright_string">"GNU License"</string>
<string name="resource_prefix">""</string>
<bool name="use_two_step_construction">0</bool>
<string name="current_platform">"&lt;All platforms&gt;"</string>
<string name="target_wx_version">"&lt;Any&gt;"</string>
<string name="cpp_header_comment">"/////////////////////////////////////////////////////////////////////////////
// Name: %HEADER-FILENAME%
// Purpose:
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"</string>
<string name="cpp_implementation_comment">"/////////////////////////////////////////////////////////////////////////////
// Name: %SOURCE-FILENAME%
// Purpose:
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"</string>
<string name="cpp_function_comment">"
/*!
* %BODY%
*/
"</string>
<string name="cpp_symbols_file_comment">"/////////////////////////////////////////////////////////////////////////////
// Name: %SYMBOLS-FILENAME%
// Purpose: Symbols file
// Author: %AUTHOR%
// Modified by:
// Created: %DATE%
// RCS-ID:
// Copyright: %COPYRIGHT%
// Licence:
/////////////////////////////////////////////////////////////////////////////
"</string>
<string name="cpp_header_preamble">"#if defined(__GNUG__) &amp;&amp; !defined(NO_GCC_PRAGMA)
#pragma interface &quot;%HEADER-FILENAME%&quot;
#endif
"</string>
<string name="cpp_implementation_preamble">"#if defined(__GNUG__) &amp;&amp; !defined(NO_GCC_PRAGMA)
#pragma implementation &quot;%HEADER-FILENAME%&quot;
#endif
// For compilers that support precompilation, includes &quot;wx/wx.h&quot;.
#include &quot;wx/wxprec.h&quot;
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#ifndef WX_PRECOMP
#include &quot;wx/wx.h&quot;
#endif
"</string>
<string name="resource_file_header">"app_resources.h"</string>
<string name="resource_file_implementation">"app_resources.cpp"</string>
<string name="resource_class_name">"AppResources"</string>
<string name="app_file_header">"app.h"</string>
<string name="app_file_implementation">"app.cpp"</string>
<string name="app_class_name">"Application"</string>
<bool name="generate_app_class">0</bool>
<string name="external_symbol_filenames">""</string>
<string name="configuration">"&lt;None&gt;"</string>
<string name="source_encoding">"&lt;System&gt;"</string>
<string name="project_encoding">"&lt;System&gt;"</string>
<string name="resource_archive">""</string>
<bool name="use_resource_archive">0</bool>
<bool name="archive_xrc_files">1</bool>
<bool name="archive_image_files">1</bool>
</header>
<data>
<document>
<string name="title">""</string>
<string name="type">"data-document"</string>
<string name="filename">""</string>
<string name="icon-name">""</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<document>
<string name="title">"Configurations"</string>
<string name="type">"config-data-document"</string>
<string name="filename">""</string>
<string name="icon-name">""</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="template-name">""</string>
<bool name="dirty">1</bool>
<string name="Compiler name">""</string>
<string name="Build mode">"Debug"</string>
<string name="Unicode mode">"ANSI"</string>
<string name="Shared mode">"Static"</string>
<string name="Modularity">"Modular"</string>
<string name="GUI mode">"GUI"</string>
<string name="Toolkit">"wxMSW"</string>
<string name="Runtime linking">"Dynamic"</string>
<string name="Use exceptions">"Yes"</string>
<string name="Use ODBC">"No"</string>
<string name="Use OpenGL">"No"</string>
<string name="wxWidgets version">"%WXVERSION%"</string>
<string name="Executable name">"%EXECUTABLE%"</string>
<string name="Program arguments">""</string>
<string name="Working path">"%AUTO%"</string>
<string name="Output path">"%AUTO%"</string>
<string name="Objects path">"%AUTO%"</string>
<string name="Compiler location">"%AUTO%"</string>
<string name="wxWidgets location">"%AUTO%"</string>
<string name="C++ command">"%AUTO%"</string>
<string name="Resource compiler">"%AUTO%"</string>
<string name="Make command">"%AUTO%"</string>
<string name="Project makefile">"%AUTO%"</string>
<string name="wxWidgets makefile">"%AUTO%"</string>
<string name="Compiler bin path">"%AUTO%"</string>
<string name="Compiler include path">"%AUTO%"</string>
<string name="Compiler lib path">"%AUTO%"</string>
<string name="Preprocessor flags">"%AUTO%"</string>
<string name="Optimizations">"%AUTO%"</string>
<string name="Warnings">"%AUTO%"</string>
<string name="Debug flags">"%AUTO%"</string>
<string name="Libraries">"%AUTO%"</string>
<string name="Library path">"%AUTO%"</string>
<string name="Linker flags">"%AUTO%"</string>
<string name="Include path">"%AUTO%"</string>
<string name="Resource flags">"%AUTO%"</string>
<string name="Resource path">"%AUTO%"</string>
<string name="wxWidgets build path">"%AUTO%"</string>
<string name="wxWidgets build command">"%AUTO%"</string>
<string name="wxWidgets clean command">"%AUTO%"</string>
<string name="PATH variable">"%AUTO%"</string>
</document>
</document>
</data>
<documents>
<document>
<string name="title">"Projects"</string>
<string name="type">"root-document"</string>
<string name="filename">""</string>
<string name="icon-name">"project"</string>
<long name="is-transient">1</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<document>
<string name="title">"Windows"</string>
<string name="type">"html-document"</string>
<string name="filename">""</string>
<string name="icon-name">"dialogsfolder"</string>
<long name="is-transient">1</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">1</long>
<document>
<string name="title">"Fill Zones Options"</string>
<string name="type">"dialog-document"</string>
<string name="filename">""</string>
<string name="icon-name">"dialog"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbDialogProxy"</string>
<long name="base-id">10000</long>
<bool name="use-id-prefix">0</bool>
<string name="id-prefix">""</string>
<long name="use-xrc">0</long>
<string name="proxy-Id name">"ID_DIALOG"</string>
<long name="proxy-Id value">10000</long>
<string name="proxy-Class">"WinEDA_ZoneFrame"</string>
<string name="proxy-Base class">"wxDialog"</string>
<string name="proxy-Window kind">"wxDialog"</string>
<string name="proxy-Implementation filename">"zones.cpp"</string>
<string name="proxy-Header filename">"zones.h"</string>
<string name="proxy-XRC filename">""</string>
<string name="proxy-Title">"Fill Zones Options"</string>
<bool name="proxy-Centre">1</bool>
<string name="proxy-Icon">""</string>
<bool name="proxy-Dialog units">0</bool>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<bool name="proxy-wxDEFAULT_DIALOG_STYLE">0</bool>
<bool name="proxy-wxCAPTION">1</bool>
<bool name="proxy-wxRESIZE_BORDER">0</bool>
<bool name="proxy-wxTHICK_FRAME">0</bool>
<bool name="proxy-wxSYSTEM_MENU">1</bool>
<bool name="proxy-wxSTAY_ON_TOP">0</bool>
<bool name="proxy-wxDIALOG_NO_PARENT">0</bool>
<bool name="proxy-wxCLOSE_BOX">1</bool>
<bool name="proxy-wxMAXIMIZE_BOX">0</bool>
<bool name="proxy-wxMINIMIZE_BOX">0</bool>
<bool name="proxy-wxDIALOG_MODAL">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxSIMPLE_BORDER">0</bool>
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
<bool name="proxy-wxRAISED_BORDER">0</bool>
<bool name="proxy-wxSTATIC_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<bool name="proxy-wxCLIP_CHILDREN ">0</bool>
<bool name="proxy-wxTAB_TRAVERSAL">0</bool>
<bool name="proxy-wxWS_EX_VALIDATE_RECURSIVELY">0</bool>
<bool name="proxy-wxWS_EX_BLOCK_EVENTS">1</bool>
<bool name="proxy-wxWS_EX_TRANSIENT">0</bool>
<string name="proxy-Custom styles">"MAYBE_RESIZE_BORDER"</string>
<bool name="proxy-wxDIALOG_EX_CONTEXTHELP">0</bool>
<bool name="proxy-Fit to content">1</bool>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">400</long>
<long name="proxy-Height">300</long>
<string name="proxy-Event sources">""</string>
<document>
<string name="title">"wxBoxSizer H"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"sizer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="proxy-type">"wbBoxSizerProxy"</string>
<string name="proxy-Orientation">"Horizontal"</string>
<string name="proxy-Member variable name">""</string>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<document>
<string name="title">"wxBoxSizer V"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"sizer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbBoxSizerProxy"</string>
<string name="proxy-Orientation">"Vertical"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Expand"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<document>
<string name="title">"wxRadioBox: ID_RADIOBOX"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"radiobox"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbRadioBoxProxy"</string>
<string name="proxy-Id name">"ID_RADIOBOX"</string>
<long name="proxy-Id value">10001</long>
<string name="proxy-Class">"wxRadioBox"</string>
<string name="proxy-Member variable name">"m_GridCtrl"</string>
<string name="proxy-Label">"Grid size:"</string>
<long name="proxy-Major dimension count">1</long>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<string name="proxy-Data variable">""</string>
<string name="proxy-Data validator">""</string>
<bool name="proxy-wxRA_SPECIFY_ROWS">0</bool>
<bool name="proxy-wxRA_SPECIFY_COLS">1</bool>
<string name="proxy-Items">"0.00000|0.00000|0.00000|0.00000"</string>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Left"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
<document>
<string name="title">"wxStaticText: wxID_STATIC"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"statictext"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/12/2006"</string>
<string name="proxy-type">"wbStaticTextProxy"</string>
<string name="proxy-Id name">"wxID_STATIC"</string>
<long name="proxy-Id value">5105</long>
<string name="proxy-Class">"wxStaticText"</string>
<string name="proxy-Member variable name">"m_ClearanceValueTitle"</string>
<string name="proxy-Label">"Zone clearance value (mm):"</string>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<string name="proxy-Data variable">""</string>
<string name="proxy-Data validator">""</string>
<bool name="proxy-wxALIGN_LEFT">0</bool>
<bool name="proxy-wxALIGN_RIGHT">0</bool>
<bool name="proxy-wxALIGN_CENTRE">0</bool>
<bool name="proxy-wxST_NO_AUTORESIZE">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxSIMPLE_BORDER">0</bool>
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
<bool name="proxy-wxRAISED_BORDER">0</bool>
<bool name="proxy-wxSTATIC_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Left"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">0</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">1</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
<document>
<string name="title">"wxTextCtrl: ID_TEXTCTRL"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"textctrl"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/12/2006"</string>
<string name="proxy-type">"wbTextCtrlProxy"</string>
<string name="proxy-Id name">"ID_TEXTCTRL"</string>
<long name="proxy-Id value">10006</long>
<string name="proxy-Class">"wxTextCtrl"</string>
<string name="proxy-Member variable name">"m_ZoneClearanceCtrl"</string>
<string name="proxy-Initial value">""</string>
<long name="proxy-Max length">0</long>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<string name="proxy-Data variable">""</string>
<string name="proxy-Data validator">""</string>
<bool name="proxy-wxTE_MULTILINE">0</bool>
<bool name="proxy-wxTE_PROCESS_ENTER">0</bool>
<bool name="proxy-wxTE_PROCESS_TAB">0</bool>
<bool name="proxy-wxTE_PASSWORD">0</bool>
<bool name="proxy-wxTE_READONLY">0</bool>
<bool name="proxy-wxTE_RICH">0</bool>
<bool name="proxy-wxTE_RICH2">0</bool>
<bool name="proxy-wxTE_AUTO_URL">0</bool>
<bool name="proxy-wxTE_NOHIDESEL">0</bool>
<bool name="proxy-wxTE_LEFT">0</bool>
<bool name="proxy-wxTE_CENTRE">0</bool>
<bool name="proxy-wxTE_RIGHT">0</bool>
<bool name="proxy-wxHSCROLL">0</bool>
<bool name="proxy-wxTE_LINEWRAP">0</bool>
<bool name="proxy-wxTE_WORDWRAP">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxSIMPLE_BORDER">0</bool>
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
<bool name="proxy-wxRAISED_BORDER">0</bool>
<bool name="proxy-wxSTATIC_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Left"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">0</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
</document>
<document>
<string name="title">"Spacer"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"spacer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbSpacerProxy"</string>
<long name="proxy-Width">5</long>
<long name="proxy-Height">5</long>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Expand"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
</document>
<document>
<string name="title">"wxBoxSizer V"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"sizer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbBoxSizerProxy"</string>
<string name="proxy-Orientation">"Vertical"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Expand"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<document>
<string name="title">"wxRadioBox: ID_RADIOBOX1"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"radiobox"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbRadioBoxProxy"</string>
<string name="proxy-Id name">"ID_RADIOBOX1"</string>
<long name="proxy-Id value">10004</long>
<string name="proxy-Class">"wxRadioBox"</string>
<string name="proxy-Member variable name">"m_FillOpt"</string>
<string name="proxy-Label">"Pad options:"</string>
<long name="proxy-Major dimension count">1</long>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<string name="proxy-Data variable">""</string>
<string name="proxy-Data validator">""</string>
<bool name="proxy-wxRA_SPECIFY_ROWS">0</bool>
<bool name="proxy-wxRA_SPECIFY_COLS">1</bool>
<string name="proxy-Items">"Include Pads|Thermal|Exclude Pads"</string>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Left"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
<document>
<string name="title">"wxRadioBox: ID_RADIOBOX2"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"radiobox"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbRadioBoxProxy"</string>
<string name="proxy-Id name">"ID_RADIOBOX2"</string>
<long name="proxy-Id value">10005</long>
<string name="proxy-Class">"wxRadioBox"</string>
<string name="proxy-Member variable name">"m_OrientEdgesOpt"</string>
<string name="proxy-Label">"Zone edges orient:"</string>
<long name="proxy-Major dimension count">1</long>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">""</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<string name="proxy-Data variable">""</string>
<string name="proxy-Data validator">""</string>
<bool name="proxy-wxRA_SPECIFY_ROWS">0</bool>
<bool name="proxy-wxRA_SPECIFY_COLS">1</bool>
<string name="proxy-Items">"Any|H , V and 45 deg"</string>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Right"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
</document>
<document>
<string name="title">"Spacer"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"spacer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbSpacerProxy"</string>
<long name="proxy-Width">5</long>
<long name="proxy-Height">5</long>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Expand"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
</document>
<document>
<string name="title">"wxBoxSizer V"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"sizer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbBoxSizerProxy"</string>
<string name="proxy-Orientation">"Vertical"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Top"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<document>
<string name="title">"wxButton: ID_FILL_ZONE"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"dialogcontrol"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbButtonProxy"</string>
<string name="event-handler-0">"wxEVT_COMMAND_BUTTON_CLICKED|ExecFillZone"</string>
<string name="proxy-Id name">"ID_FILL_ZONE"</string>
<long name="proxy-Id value">10002</long>
<string name="proxy-Class">"wxButton"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-Label">"Fill"</string>
<bool name="proxy-Default">1</bool>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">"CC0000"</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<bool name="proxy-wxBU_LEFT">0</bool>
<bool name="proxy-wxBU_RIGHT">0</bool>
<bool name="proxy-wxBU_TOP">0</bool>
<bool name="proxy-wxBU_BOTTOM">0</bool>
<bool name="proxy-wxBU_EXACTFIT">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Expand"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
<document>
<string name="title">"wxButton: wxID_CANCEL"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"dialogcontrol"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbButtonProxy"</string>
<string name="event-handler-0">"wxEVT_COMMAND_BUTTON_CLICKED|OnCancelClick"</string>
<string name="proxy-Id name">"wxID_CANCEL"</string>
<long name="proxy-Id value">5101</long>
<string name="proxy-Class">"wxButton"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-Label">"&amp;Cancel"</string>
<bool name="proxy-Default">0</bool>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">"0000FF"</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<bool name="proxy-wxBU_LEFT">0</bool>
<bool name="proxy-wxBU_RIGHT">0</bool>
<bool name="proxy-wxBU_TOP">0</bool>
<bool name="proxy-wxBU_BOTTOM">0</bool>
<bool name="proxy-wxBU_EXACTFIT">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Expand"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
<document>
<string name="title">"wxButton: ID_SET_OPTIONS_ZONE"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"dialogcontrol"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="proxy-type">"wbButtonProxy"</string>
<string name="event-handler-0">"wxEVT_COMMAND_BUTTON_CLICKED|ExecFillZone"</string>
<string name="proxy-Id name">"ID_SET_OPTIONS_ZONE"</string>
<long name="proxy-Id value">10003</long>
<string name="proxy-Class">"wxButton"</string>
<string name="proxy-Member variable name">""</string>
<string name="proxy-Label">"Update Options"</string>
<bool name="proxy-Default">0</bool>
<string name="proxy-Help text">""</string>
<string name="proxy-Tooltip text">""</string>
<string name="proxy-Background colour">""</string>
<string name="proxy-Foreground colour">"006400"</string>
<string name="proxy-Font">""</string>
<bool name="proxy-Hidden">0</bool>
<bool name="proxy-Enabled">1</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
<bool name="proxy-wxBU_LEFT">0</bool>
<bool name="proxy-wxBU_RIGHT">0</bool>
<bool name="proxy-wxBU_TOP">0</bool>
<bool name="proxy-wxBU_BOTTOM">0</bool>
<bool name="proxy-wxBU_EXACTFIT">0</bool>
<bool name="proxy-wxNO_BORDER">0</bool>
<bool name="proxy-wxWANTS_CHARS">0</bool>
<string name="proxy-Custom styles">""</string>
<long name="proxy-X">-1</long>
<long name="proxy-Y">-1</long>
<long name="proxy-Width">-1</long>
<long name="proxy-Height">-1</long>
<string name="proxy-AlignH">"Expand"</string>
<string name="proxy-AlignV">"Centre"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Custom arguments">""</string>
<string name="proxy-Custom ctor arguments">""</string>
</document>
</document>
<document>
<string name="title">"Spacer"</string>
<string name="type">"dialog-control-document"</string>
<string name="filename">""</string>
<string name="icon-name">"spacer"</string>
<long name="is-transient">0</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">0</long>
<string name="created">"25/9/2006"</string>
<string name="proxy-type">"wbSpacerProxy"</string>
<long name="proxy-Width">5</long>
<long name="proxy-Height">5</long>
<string name="proxy-AlignH">"Centre"</string>
<string name="proxy-AlignV">"Expand"</string>
<long name="proxy-Stretch factor">0</long>
<long name="proxy-Border">5</long>
<bool name="proxy-wxLEFT">1</bool>
<bool name="proxy-wxRIGHT">1</bool>
<bool name="proxy-wxTOP">1</bool>
<bool name="proxy-wxBOTTOM">1</bool>
<bool name="proxy-wxSHAPED">0</bool>
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
<string name="proxy-Platform">"&lt;Any platform&gt;"</string>
</document>
</document>
</document>
</document>
<document>
<string name="title">"Sources"</string>
<string name="type">"html-document"</string>
<string name="filename">""</string>
<string name="icon-name">"sourcesfolder"</string>
<long name="is-transient">1</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">1</long>
<document>
<string name="title">"zones.rc"</string>
<string name="type">"source-editor-document"</string>
<string name="filename">"zones.rc"</string>
<string name="icon-name">"source-editor"</string>
<long name="is-transient">0</long>
<long name="owns-file">0</long>
<long name="title-mode">1</long>
<long name="locked">0</long>
<string name="created">"25/4/2006"</string>
<string name="language">""</string>
</document>
</document>
<document>
<string name="title">"Images"</string>
<string name="type">"html-document"</string>
<string name="filename">""</string>
<string name="icon-name">"bitmapsfolder"</string>
<long name="is-transient">1</long>
<long name="owns-file">1</long>
<long name="title-mode">0</long>
<long name="locked">1</long>
</document>
</document>
</documents>
</anthemion-project>
#include "wx/msw/wx.rc"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment