Commit Graph

6320 Commits

Author SHA1 Message Date
jean-pierre charras 99427a86cd Fix a double minor bug about layers occupied by SMD pads and CONN pad:
The default layer stack between these 2 types was swaped in pad definition, and also in the dialog pad properties.
This double swap creates no bug, but creates bugs in the footprint wizards (SMD or CONN pads do not have the right layer stack)
FYI, the CONN pad type should be removed soon.
2014-06-30 20:14:06 +02:00
jean-pierre charras cba2109b44 Enable technical layers when starting Pcbnew with no board.
Use format 4.6 (full resolution of Pcbnew) in Gerber files to avoid the creation of self-intersecting polygons.
2014-06-30 17:46:47 +02:00
Dick Hollenbeck e5f6238490 fix export_gencad.cpp 2014-06-30 10:03:20 -05:00
jean-pierre charras 8e241482b7 Update complex_hierarchy.kicad_pcb file, used in qa tests, which was created by a test version of Pcbnew, and was not currently readable. 2014-06-30 14:18:52 +02:00
jean-pierre charras b8d82d94fc Gerber output: Some changes after evaluation of Gerber files by Ucamco (the manager of GERBER format):
* default file ext is now .gbr (the "official extension")
* some outdated commands remoded.
* mainly use mm and 4.5 format instead of inches and 3.4 format. this is mandatory,
  because the 3.4 format (comming from old pcbned internal units) creates truncations in coordinates.
  (with serious issues in polygons which can appear self-intersecting afer truncation)
2014-06-30 12:00:21 +02:00
Dick Hollenbeck 29fdcc8a41 1) Add 32 Cu Layers and provisions for additional future layers.
2) Change from legacy Cu stack to counting down from top=(F_Cu or 0).
   The old Cu stack required knowing the count of Cu layers to make
   sense of the layer number when converting to many exported file types.
   The new Cu stack is more commonly used, although ours still gives
   B_Cu a fixed number.
3) Introduce class LSET and enum LAYER_ID.  LAYER_NUM is only advisory and
   can safely be replaced with int.
4) Change *.kicad_pcb file format version to 4 from 3.
5) Change fixed names Inner1_Cu-Inner14_Cu to In1_Cu-In30_Cu and their
   meanings are typically flipped.
6) Moved the #define LAYER_N_* stuff into legacy_plugin.cpp where they
   can die a quiet death, and switch to enum LAYER_ID symbols throughout.
7) Removed the LEGACY_PLUGIN::Save() and FootprintSave() functions.
   You will need to convert to the format immediately, *.kicad_pcb and
   *.kicad_mod (=pretty) since legacy format was never going to know
   about 32 Cu layers and additional technical layers and the reversed Cu
   stack.
2014-06-30 01:59:52 -05:00
Dick Hollenbeck b51d85d218 merge 2014-06-30 01:44:46 -05:00
Dick Hollenbeck 633f546ea1 merge 2014-06-30 00:46:18 -05:00
Dick Hollenbeck 1601db07bd fix VIA::IsOnLayer() 2014-06-29 23:40:16 -05:00
Dick Hollenbeck 6bb6128b24 fix pcb_parser for new board, coding standards 2014-06-29 16:50:06 -05:00
Dick Hollenbeck b725b18bfa fix LSET() constructors, formatting 2014-06-29 15:33:29 -05:00
Dick Hollenbeck fbe455c1c1 re-work the LSET(int,...) constructor 2014-06-29 13:09:32 -05:00
Dick Hollenbeck 576783dbbb class_marker IsOnLayer() 2014-06-29 08:12:30 -05:00
Dick Hollenbeck a7db812c21 LAYER_ID work 2014-06-29 08:05:51 -05:00
jean-pierre charras f27fb5c874 Fix Pl_Editor scrollbars incorrect position. 2014-06-29 11:24:42 +02:00
jean-pierre charras b8358d1634 Make gerbview compilable and working (does not use now layers and layer masks from Pcbnew).
Export to Pcbnew is broken, but it is a very rarely used feature. It will be fixed later.
2014-06-27 19:09:25 +02:00
jean-pierre charras 4a825e8dcc Make gerbview compilable and working (does not use now layers and layer masks from Pcbnew).
Export to Pcbnew is broken, but it is a very rarely used feature. It will be fixed later.
2014-06-27 19:07:42 +02:00
jean-pierre charras 1d18ebef99 Pspice netlist generator: add option to use net numbers as net names (feature removed a long time ago, but needed by Oscad team)
Note these options are saved in project config.
2014-06-26 21:20:05 +02:00
Dick Hollenbeck ddffb23fb3 use LSET::any() whereever possible and avoid conversion to integral type 2014-06-25 12:01:50 -05:00
Dick Hollenbeck b32b9dee8a copyright 2014-06-25 09:24:02 -05:00
Dick Hollenbeck ff81fc7c60 1) Fix compiles using wx 3.x and 2.8.
2) Fix passing wxString to common/config_params so lookup keys 
   can be dynamically generated.  This gives ~/.kicad files all the colors.
3) Fix LEGACY_PLUGIN so it loads all layer types and masks properly.
4) Extend the table in router/pns_index.h to 128 from 64.
2014-06-24 23:36:02 -05:00
Dick Hollenbeck 01fb6a2573 add lset.cpp 2014-06-24 13:31:41 -05:00
Dick Hollenbeck afac2c5f8a fix zones 2014-06-24 13:30:39 -05:00
jean-pierre charras 4787918fac Make dialog pns properties resizable. DXF import: add very basic polyline import. 2014-06-24 20:04:16 +02:00
Dick Hollenbeck 8fad0a9ea6 1) Add 32 Cu Layers.
2) Change from legacy Cu stack to counting down from top=(F_Cu or 0).
   The old Cu stack required knowing the count of Cu layers to make
   sense of the layer number when converting to many exported file types.
   The new Cu stack is more commonly used, although ours still gives
   B_Cu a fixed number.
3) Introduce class LSET and enum LAYER_ID.
4) Change *.kicad_pcb file format version to 4 from 3.
5) Change fixed names Inner1_Cu-Inner14_Cu to In1_Cu-In30_Cu and their
   meanings are typically flipped.
6) Moved the #define LAYER_N_* stuff into legacy_plugin.cpp where they
   can die a quiet death, and switch to enum LAYER_ID symbols throughout.
7) Removed the LEGACY_PLUGIN::Save() and FootprintSave() functions.
   You will need to convert to the format immediately, *.kicad_pcb and
   *.kicad_mod (=pretty) since legacy format was never going to know
   about 32 Cu layers and additional technical layers and the reversed Cu
   stack.
2014-06-24 11:17:18 -05:00
Maciej Suminski f20a875ee9 Dragging items by their origin is optional (activated by dragging elements with Ctrl held). 2014-06-23 16:12:59 +02:00
Kirill Mavreshko fb30c47123 Fixes bug #1332438: PNS router crashes when you another track while routing in "shove" mode 2014-06-23 08:50:53 +02:00
jean-pierre charras fad894e31a Fix compil issue with KICAD_SCRIPTING_WXPYTHON option ON.
Minor enhancements.
2014-06-20 19:29:35 +02:00
jean-pierre charras a0e04a7a20 Remove 2 global variables: g_DrawBgColor and g_ShowPageLimits.
They are now member of EDA_DRAW_FRAME.
This change could fix Bug #1330781 (Background color change in Eeschema affects background color in Pcbnew)
Show page limits has meaning only for the schematic editor,  the board editor and the page layout editor.
Draw background color selection exists only in eeschema and  page layout editor.
In pcbnew, only a black background is allowed.
A side effect is now the user should set the background color in schematic editor, and the library editor (2 different options).
The default is still the white color.
2014-06-20 13:13:04 +02:00
Lorenzo Marcantonio 57b328538f Fixes 1332429 2014-06-20 10:55:30 +02:00
unknown cd7143c5b7 Gerber X2 patch (Support for the "file function" attribute) from Thiadmer Riemersma, committed in rev 4948: minor fix for better compatibility with older versions of Pcbnew 2014-06-19 09:12:48 +02:00
jean-pierre charras 552a413c01 Pcbnew, python console: make it not dockable (workaround to avoid the fact accelerator keys which are used in the main menu are not sent to the console, in docked mode).
Minor cosmetic enhancement.
2014-06-19 08:26:53 +02:00
jean-pierre charras 655b1de0f4 Pcbnew, python console: make it not dockable (workaround to avoid the fact hot keys which are used in the main menu are not sent to the console, in docked mode)
Minor cosmetic enhancement.
2014-06-18 18:33:16 +02:00
jean-pierre charras d2390f13d7 better management of Python console. 2014-06-18 13:44:17 +02:00
jean-pierre charras cbd98327dc Minor cosmetic enhancement, and try to fix an issue with accelerator keys and the Python scripting console 2014-06-17 20:31:27 +02:00
Dick Hollenbeck 88e12fabaa fix some bugs in FOOTPRINT_VIEWER_FRAME, get rid of statics 2014-06-16 14:00:26 -05:00
Bernhard Stegmaier 9654ec5613 Fixes 2014-06-16 11:42:27 -05:00
Bernhard Stegmaier 39d6e942fa OSX drawing artifacts 2014-06-16 11:32:23 -05:00
jean-pierre charras 7e2fbc9e10 Fix specctra export crash, when a non copper zone was found on the board to export. 2014-06-16 14:04:55 +02:00
unknown 1459f8bfb1 Apply vrml_layer_pth, from Cirilo Bernardo 2014-06-16 14:02:15 +02:00
jean-pierre charras 0d454578f2 Fix a bug in ClassOf which crashes Pcbnew when its argument is NULL. It fixes bug #1329364. 2014-06-12 22:03:57 +02:00
Lorenzo Marcantonio 6d6a70de61 In KIFACE_I::end_common save the 'common' configuration variables loaded in KIFACE_I::begin_common (the background color and the page border flag) 2014-06-12 20:34:16 +02:00
Lorenzo Marcantonio 09ab4d57d0 Fixes #1186269
- Refactored the common part of cursor key movement and crosshair update
  in the various GeneralControl
- Add x10 movement with the keyboard (CTRL modifier)
- Avoid fixup of the cursor position by dummy mouse movements generated
  by cursor warping (original analysis and idea Chris Gibson)
- Do key handling in a way to permit sub-pixel cursor movement
2014-06-12 18:12:14 +02:00
Jean-Samuel Reynaud a9e2f0e3de pcbnew crashed on start compiled with KICAD_SCRIPTING_WXPYTHON=ON 2014-06-12 08:57:00 -05:00
Dick Hollenbeck 6675ae64cf refinements 2014-06-11 00:57:26 -05:00
Dick Hollenbeck a015fa53e6 Save the footprint editor's last footprint in the PROJECT RString facility. 2014-06-11 00:18:41 -05:00
Dick Hollenbeck e2360155a6 *) Remove more wxString static constructors which were crashing in PAGE_INFO assignment
to a new BOARD in the footprint editor.  This is PAGE_INFO::A4 and company.
   
*) Remove static storage of the BOARD in the module editor.
2014-06-11 00:00:30 -05:00
jean-pierre charras 869792f88d Plot SVG: fix issue with arcs (bug #1328155 ) both in Pcbnew and Eeschema. 2014-06-10 18:21:38 +02:00
Dick Hollenbeck c22ccaffc4 Remove class RETAINED_PATH, put is main member function into SEARCH_STACK.
Change class PROJECT to use a generalized wxString in place of the
RETAINED_PATH items, so that new session and project specific strings
of any purpose can be saved there, for the life of a session.
2014-06-10 10:56:43 -05:00
unknown 583fe1d524 VRML export rewritten 2014-06-08 12:35:42 +02:00