Wayne Stambaugh
6a39b81647
Fix the last of broken Doxygen comment specifiers.
2021-01-27 17:39:44 -05:00
Jon Evans
bea310569b
Fix parsing of track/via user sizes from legacy boards
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6134
2021-01-26 21:51:36 -05:00
Jeff Young
1e9639e89c
Save pintype alongside pinfunction (in pads).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7283
2021-01-26 15:28:48 +00:00
Seth Hillbrand
5a9c0a9b5a
Quiet a few coverity warnings
2021-01-24 14:53:18 -08:00
Jeff Young
9ac807bdd2
Freeze implicit footprint file version at last before explicit.
...
We have been writing footprint versions for a while now, but we were
still interpreting the lack of a version as "current". This changes
lack of a version to mean "last format before we started writing out
versions".
Fixes https://gitlab.com/kicad/code/kicad/issues/7143
2021-01-23 00:10:01 +00:00
Seth Hillbrand
060635b14c
fabmaster: Fix graphic handling in geometry section
2021-01-19 12:16:40 -08:00
Ian McInerney
d030d1667b
Fix improper string creation in fabmaster importer
2021-01-18 18:35:10 +00:00
Jon Evans
1754504234
Fabmaster: fix MSVC build
...
std::map is not move-constructable on MSVC because
it is not declared noexcept (and is not required to be
by the standard)
This means that a struct containing graphic_element
cannot be inserted into a vector with move semantics without
compile errors. However, wrapping it in a unique_ptr
works.
2021-01-17 10:23:31 -05:00
Seth Hillbrand
950db6ff9c
pcbnew: Add Fabmaster import
...
Allows importing ASCII design output from OrCAD designs
2021-01-16 14:28:33 -08:00
Thomas Pointhuber
9f24ea0bb7
altium: fix non-copper pads. Roundrect pads were not filled and SetLocalCoord() does not transform polygons into the local coordinates, which is unexpected.
2021-01-14 22:21:05 +01:00
Jeff Young
0bce280424
Make sure design rules get recompiled after netclass changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7082
2021-01-13 12:37:20 +00:00
Dominik Wernberger
07635d2fc7
Minor adjustments
2021-01-12 20:51:31 +00:00
Dominik Wernberger
ac94d72d2d
Add more const specifiers
2021-01-12 20:51:31 +00:00
Jeff Young
3467e643e5
Move pad locking from footprint to pads.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6997
2021-01-08 20:43:02 +00:00
Jeff Young
01fe3b91e9
Implement locking for graphic shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6972
2021-01-07 17:39:18 +00:00
Carlo Bramini
a06387fafd
Fix warning at compile time
2021-01-02 22:42:16 +00:00
Allan Nordhøy
8d81abb57a
Consistent use of spaces in strings.
2020-12-30 22:57:50 +00:00
Roberto Fernandez Bautista
b168b74919
CADSTAR Archive Importer: Fix position of multiline text with NO_ALIGNMENT in CADSTAR
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
ffee24be63
CADSTAR PCB Archive Importer: Rewrite loadBoardStackup routine
...
Uses BOARD_STACKUP::BuildDefaultStackupList instead of trying to build the stackup from scratch
Fixes several asserts / incorrect stackups in some older boards
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
a2cbbb963e
CADSTAR PCB Archive Loader: Correctly handle Dimension text
...
Do not parse fields in dimension text to allow splitting it into prefix and suffix
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
45b621a3d1
CADSTAR PCB Archive Importer: Fix Import of Linear Dimensions (Angular dimensions not supported)
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
fbac766254
CADSTAR PCB Archive Importer: Refactor layer mapping and fix assert
...
An assert was being fired to due to incorrect BOARD_STACKUP_ITEM_TYPE on some boards
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
0a1045300b
CADSTAR PCB Archive Importer: Fix loading of net class settings
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
cde433c82e
CADSTAR PCB Archive Importer: Transfer Project to allow importing of Text Variables
2020-12-30 18:53:43 +00:00
Roberto Fernandez Bautista
03a23db4f7
CADSTAR PCB Archive Importer: Load PCB Text Variables to KiCad project
2020-12-30 18:53:42 +00:00
Roberto Fernandez Bautista
9ed4780fec
CADSTAR Archive Importer: Change architecture to Parse CADSTAR fields and store them in a static map
...
Architecture of the parser changed to have a shared PARSER_CONTEXT between all the individual parsers.
Parses CADSTAR fields such as <@DESIGN_TITLE@> or <@SHEET_NUMBER@> and replaces with an equivalent KiCad Text Variable.
2020-12-30 18:53:42 +00:00
Jan Mrázek
93466fa165
Fix crash when adding 3D Models via Python
2020-12-28 20:03:54 +01:00
Jon Evans
17cf2466aa
Fix overlapping definitions warning
2020-12-27 19:42:04 -05:00
jean-pierre charras
97f3c323c3
Pcbnew: fix missing escaping of texts in DIMENSION when saving the .kicad_pcb file.
...
Fixes #6855
https://gitlab.com/kicad/code/kicad/issues/6855
2020-12-27 10:18:23 +01:00
Jon Evans
70c397a9b4
Implement free vias fully
...
CHANGED: manually-placed (stitching) vias won't have their nets automatically updated
(unless the via is placed directly on a track segment)
CHANGED: stitching vias can be placed on footprint pads and pick up their nets
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5484
2020-12-20 16:29:50 -05:00
Wayne Stambaugh
06aa1506ee
Add optional project parameter to PCB plugin load method.
...
The optional PROJECT parameter is primarily used for third party plugins
that need to store project information loaded by the plugin.
2020-12-18 10:40:51 -05:00
Jeff Young
bb232e6ac6
Unify LIB_IDs now that both are stored in sexpr files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6764
2020-12-18 00:30:26 +00:00
Marek Roszko
7565f60a03
Swap wxFileInputStream/wxFileOutputStream for the buffered kind
2020-12-12 18:52:02 -05:00
Roberto Fernandez Bautista
260219b0e6
CADSTAR PCB Archive Importer: Fix arc and filled shapes in footprints
...
- Need to call the PCB_SHAPE version of SetAngle in order to set the global coordinates for m_ThirdPoint
- Fill shapes also if in a footprint
2020-12-10 14:35:37 +00:00
jean-pierre charras
ac684ac7a3
Fix minor compil warnings.
2020-12-08 18:28:03 +01:00
Jeff Young
b1f0bf7334
More consistent naming.
2020-12-08 13:05:39 +00:00
Marek Roszko
e88d41f764
Add bulk add/remove mode flag to the BOARD_LISTENER
...
This attempts to fix performance when importing large changesets from schematics.
The appearance control is a BOARD_LISTENER that would otherwise redraw per item imported which may cause lockups
2020-12-07 22:04:13 -05:00
Jeff Young
f3e1ac8dbe
Defensive code to prevent lookup of stale parent board.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6618
2020-12-04 14:01:54 +00:00
Jeff Young
fd5e1fbdd4
Formatting and cleanup.
2020-12-04 14:01:54 +00:00
Roberto Fernandez Bautista
0691e942f4
CADSTAR Archive Importer: Fix duplicate KIID for loaded elements
...
Don't use clone to copy an EDA_ITEM. Use Duplicate().
Even if you give the clone a new KIID, all its children will still be clones.
Create Duplicate() in LIB_PART
2020-11-28 17:18:17 +00:00
Roberto Fernandez Bautista
71f9847601
CADSTAR Archive Importer: Only load the Master variant
2020-11-28 17:18:17 +00:00
Roberto Fernandez Bautista
78e3f917d9
CADSTAR PCB Archive Importer: Fix loading of old CADSTAR designs and Do Not Keep Upright
...
Older CADSTAR versions used 1/10 degree whereas newer versions use 1/1000 degree.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6437
2020-11-28 17:18:17 +00:00
Roberto Fernandez Bautista
f2ba9f7ac3
CADSTAR PCB Archive Importer: Correctly load the pad numbers as per the original design
...
To load the pad numbers correctly we need to also check the PART DEFINITION for each component
2020-11-28 17:18:17 +00:00
Jeff Young
9c7c05c161
Mostly formatting cleanup but a few type-casting cleanups too.
2020-11-24 22:16:41 +00:00
jean-pierre charras
976c6262f4
French translation update (fix also trailing spaces in a few sentences)
2020-11-23 11:42:25 +01:00
Jeff Young
18ad58cf4c
Replace legacy copper edge heuristics.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6435
2020-11-19 13:35:26 +00:00
Dominik Wernberger
99da663e82
Remove unused variables plus some more fixes from CppCheck
...
Remove unused variables plus a few more fixes from CppCheck
Remove unused variables plus a few more fixes from CppCheck
2020-11-19 02:28:47 +00:00
Werni
0e44f5128c
Add const specifiers
2020-11-18 19:50:36 +00:00
Marek Roszko
16e3e59495
Split out arrayDim and MIRROR templates from macros.h
...
These were not macros
2020-11-17 20:21:04 -05:00
Jeff Young
dff5173baf
Exorcise some instances of "modedit".
2020-11-17 16:05:48 +00:00
jean-pierre charras
a431fd99ca
Fix crash when converting a Eagle board to a Kicad board.
...
During conversion a illegal layer number was used without filtering
2020-11-17 10:23:44 +01:00
Ian McInerney
7d1a4a4224
Add version information to footprint sexpr files and clipboard
...
This allows the parser to properly interpret the sexpr version
of the footprint so that it can throw future format errors or
do version specific parsing properly.
2020-11-16 23:19:09 +00:00
Jeff Young
f21e308830
Tweak fill logic to also catch filled primitives in custom pad shapes.
2020-11-15 23:14:46 +00:00
Ian McInerney
ceb51bb103
pcbnew: Only write fill flag for circles, rectangles and polygons
...
The other shapes don't have the same concept of being filled
(their fill is only a viewing mode, not an actual saved property).
2020-11-15 22:03:59 +00:00
Ian McInerney
8c08b861ab
Cleanup some compiler and Coverity warnings
2020-11-15 21:41:38 +00:00
Ian McInerney
b31e97cfed
Fix FP/PCB_SHAPE fill sexpr syntax to be backwards compatible
...
Previously the fill for shapes inside a footprint was not being
properly imported from older versions becase the default of no
flag changed from representing filled to representing no fill.
Introduce explicit filling information, and continue to treat no
flag on a polygon as meaning it is filled (which is the legacy
behavior).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6393
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6390
2020-11-15 21:28:27 +00:00
Jeff Young
3f1a58bd06
Replace "module" with "footprint" in PCB sexpr.
2020-11-15 20:23:15 +00:00
Jeff Young
d094f86b1a
Finish module cleanup (except for xpms).
2020-11-14 22:00:12 +00:00
Jeff Young
61bca4aaa4
A bit of "module" erradication, nameing conventions, and formatting.
2020-11-14 21:21:54 +00:00
Jeff Young
666c11965a
Clean up some more MODULE terms.
2020-11-14 19:56:06 +00:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00:00
Jeff Young
8bae52d1c3
Correct naming conventions.
2020-11-14 14:29:11 +00:00
Jeff Young
aa06de2db4
Legacy polygons on non-Edge_Cuts layers were always filled.
2020-11-14 14:15:02 +00:00
Dominik Wernberger
a4650e7269
Rename GetModules to GetFootprints
2020-11-14 09:37:45 +00:00
jean-pierre charras
dfddd19b17
French translation update.
...
Fix also a typo.
2020-11-14 09:02:36 +01:00
Jeff Young
ec020dd19f
First-class support for filled shapes.
2020-11-14 01:40:32 +00:00
Jeff Young
86b6afd14b
More cleanup of MODULE to see if it fixes SWIG error.
2020-11-13 21:07:36 +00:00
Jeff Young
47e86d76fb
Cleanup prior to adding filled flag.
2020-11-13 21:07:36 +00:00
Jeff Young
bdbb68f813
MODULE -> FOOTPRINT.
2020-11-13 16:04:03 +00:00
Jeff Young
3451ac3088
PCB_MODULE_T -> PCB_FOOTPRINT_T
2020-11-13 15:16:24 +00:00
Jeff Young
63a54d003e
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
9106cc19bf
Yet another tranche of module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
2cc9dad4ff
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
8c947b69b0
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
fc9cf1d827
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
52a46341db
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
f5443de7f9
D_PAD -> PAD.
2020-11-13 15:16:24 +00:00
Jeff Young
2bc004eb0b
Prepare for D_PAD -> PAD.
2020-11-13 15:16:23 +00:00
Jeff Young
84dd5108ba
Remove some "class_" prefixes from files.
2020-11-13 15:16:23 +00:00
Jan Mrázek
fc8bf6f0fe
Allow a user to remap layers in Eagle import
...
ADDED Allow for user mapping of layers in Eagle import
ADDED Support required and optional layers in the layer mapping dialog
ADDED Add base class for plugins supporting remappable layers
2020-11-12 11:37:04 +01:00
Jeff Young
f7333ad64a
Update some classnames including archaic zone names.
2020-11-12 10:31:25 +00:00
jean-pierre charras
fb218e3c9b
Pcbnew: allows filled option ( 0 outlines width ) for graphic items rect and circle.
...
It was allowed inside editors, dialog properties and when saving the board file.
However it was not allowed when reading the file. It is now allowed.
Fixes #6355
https://gitlab.com/kicad/code/kicad/issues/6355
2020-11-12 09:01:08 +01:00
Jeff Young
812b714ccd
More Module -> Footprint and a bit of formatting cleanup.
2020-11-10 20:53:12 +00:00
Jeff Young
1c30d36d73
Fix errant use of SetPosition().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6292
2020-11-04 19:24:09 +00:00
jean-pierre charras
89e21d28f0
French translation update, and minor I18n fixes
2020-11-02 20:23:01 +01:00
Roberto Fernandez Bautista
3d49f6d6f8
CADSTAR PCB Archive Importer: Import missing layer subtypes LAYERSUBTYPE_CLEARANCE and LAYERSUBTYPE_ROUT
2020-10-27 11:33:35 +00:00
Roberto Fernandez Bautista
7532428c46
CADSTAR PCB Archive Importer: Fix loading of angled slotted holes
2020-10-27 11:33:35 +00:00
Roberto Fernandez Bautista
5e7d4ca6e8
CADSTAR PCB Archive Importer: Fix Position and orientation of non-symmetrical pads
...
Previously they were not loaded at the correct positions
There is still a problem with angled slotted holes, but now we display a warning to the user.
2020-10-27 11:33:35 +00:00
Roberto Fernandez Bautista
0dc153fe58
CADSTAR PCB Archive Importer: Load correct pad information for pads with PADEXCEPTION
...
Overwrites pad definitions for pads that have PADEXCEPTION
2020-10-27 11:33:35 +00:00
Roberto Fernandez Bautista
7a1777e9b9
CADSTAR PCB Archive Importer: Parse EXITS node in PADEXCEPTION
2020-10-27 11:33:35 +00:00
Ian McInerney
31e626f279
Cleanup creation of all our smart pointers
2020-10-26 23:52:44 +00:00
Thomas Pointhuber
c060fc9591
altium: use CENTER_DIMENSION instead of line interpolation
2020-10-26 14:11:24 +01:00
Thomas Pointhuber
7ec27c2a18
altium: no idea what Region Kind=2 means, but at least the existence is noted
2020-10-26 13:50:11 +01:00
Marek Roszko
1167862c86
Split wx_filename out of common
2020-10-25 20:01:13 -04:00
Jeff Young
b2ad9b5b83
Treat P-CAD copper polygons as very-high-priority zones.
...
In P-CAD they don't avoid other copper pours, so this should more
accurately reflect that in Kicad. (Note that only the very-high-
priority part is new; we've always coverted them to zones.)
Fixes https://gitlab.com/kicad/code/kicad/issues/3997
2020-10-25 13:38:15 +00:00
Marek Roszko
e928b2d8fd
Split EDA_UNITS out from common.
2020-10-25 00:02:52 -04:00
Marek Roszko
1d559108c8
Move LOCALE_IO out of common.h
2020-10-23 21:49:42 -04:00
Thomas Pointhuber
47786fa976
altium: Correctly handle symbol names containing invalid chars
...
Fix: https://gitlab.com/kicad/code/kicad/-/issues/6082
2020-10-23 14:30:29 +02:00
Thomas Pointhuber
412bc2ba8a
altium: detect polygons with less than 2 unique points
2020-10-22 17:23:12 +02:00
Thomas Pointhuber
06e9a21791
altium: fix coding style, remove useless check
2020-10-22 13:44:55 +02:00