Roberto Fernandez Bautista
d458bcad16
kicad_cli fp ugrade: create directory with extension
2024-03-02 18:21:13 +01:00
Roberto Fernandez Bautista
4508512343
Sanitise filename before saving footprint library
2024-03-02 13:06:23 +01:00
Roberto Fernandez Bautista
a4a99e3aff
kicad_cli: Allow upgrade of legacy and non-kicad footprint libraries
2024-03-02 13:06:23 +01:00
Jeff Young
bd1d449cd3
Check for NETINFO_ITEM before dereferencing it.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17230
2024-03-02 11:37:22 +00:00
Alex Shvartzkop
defcb49ac8
Support Altium Schematic ASCII import
2024-02-29 20:49:20 +00:00
Alex Shvartzkop
39a0a81832
EasyEDA Std import: support multiline text on PCB.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17171
(cherry picked from commit 0dab086f0c
)
2024-02-29 00:54:46 +00:00
Jon Evans
9e7b4b7f89
Avoid nullptr dereference when loading group info
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17154
2024-02-27 19:43:21 -05:00
Jeff Young
e6a2f3b87a
Eagle text anchor points and alignment aren't linked.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17135
2024-02-27 15:00:30 +00:00
Jeff Young
6e478f52f4
Fix wrong rotation centre.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17135
2024-02-27 15:00:27 +00:00
Jeff Young
9066e4b9d0
Reconcile solder_paste_ratio and solder_paste_margin_ratio.
2024-02-25 21:25:44 +00:00
Jeff Young
aef87b9796
Push thickness handling down into EDA_TEXT::SetBold().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17077
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14875
2024-02-25 17:28:52 +00:00
Jeff Young
4056428a08
Sigh. We use different tokens for FP and pad solder paste margin ratios.
...
Seriously? Afraid so: solder_paste_margin_ratio and solder_paste_ratio.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17108
2024-02-25 11:31:04 +00:00
Jeff Young
782af3a918
Clear text before replacing in ImportSettingsFrom.
2024-02-24 20:05:51 +00:00
Jeff Young
4eefbc7815
ADDED: textbox and tablecell margins.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10672
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6806
2024-02-24 20:05:51 +00:00
Jeff Young
e445249720
ADDED: PCB tables.
2024-02-24 20:05:51 +00:00
Jeff Young
ee3be0802c
Move PCBNew overrides to nullable properties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5562
2024-02-24 20:05:51 +00:00
Jeff Young
5c026db27a
Report fp library loading errors with libName & fpName.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16975
(cherry picked from commit 12922d9434
)
2024-02-23 16:53:34 +01:00
Mike Williams
60fe87a73c
PCB: always parse ki_fp_filters as a property, not a field
2024-02-19 09:41:27 -05:00
Mike Williams
6c1273ca12
PCB Parsing: only parse old properties before PCB fields addition
2024-02-14 09:35:10 -05:00
Alex
b5982f7319
EasyEDA import: force close some line chains.
2024-02-11 23:52:56 +03:00
Jeff Young
63fc89cafd
Import graphic items on copper layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16916
2024-02-09 13:56:01 +00:00
Jeff Young
0890ac57dd
Improve clarity of default zone settings.
2024-02-03 13:22:16 +00:00
Alex
285067dad1
Altium PCB: support polygon id 65534 for keepout tracks on board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16849
2024-02-01 12:15:06 +03:00
Roberto Fernandez Bautista
079478f989
EDA_ANGLE: use constexpr for constant angles
...
Remove all statics in the class and instead use constexpr to
ensure correct ordering
2024-01-31 19:17:46 +03:00
Seth Hillbrand
b12d0dfd67
Fix pad offset removal vs hole offset
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16767
2024-01-29 08:22:23 -08:00
jean-pierre charras
06d63a2aa0
pcb_io_kicad_sexpr_parser.cpp: init a default board stackup only if no stackup
...
is defined, and only after the enabled layers are defined.
Fixes #16754
https://gitlab.com/kicad/code/kicad/-/issues/16754
2024-01-28 14:23:50 +01:00
Seth Hillbrand
96297b50a1
Remove padstack offset value
...
We encode the pad locations for the package in the pin, so we don't need
an additional offset from the pin location
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16767
2024-01-26 10:53:36 -08:00
Seth Hillbrand
9e9dfb38d1
IPC2581: Correct flipped pad handling
...
Board footprints have pads already flipped, so we don't need to adjust
layers when outputting
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16659
2024-01-25 13:06:59 -08:00
Marek Roszko
fec57459f3
Use correct arg types in altium arc import error message
...
Fixes KICAD-6Q1
2024-01-25 07:50:13 -05:00
Jon Evans
3ef16221fe
Make sure default board thickness exists
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16733
2024-01-24 23:09:56 -05:00
Alex Shvartzkop
27b560b439
EAGLE: fix missing undefined layer check for rectangle zones.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16619
2024-01-17 01:18:24 +03:00
Alex Shvartzkop
4f6c25895e
Rename UNKNOWN in enums to prevent shadowing.
2024-01-16 19:14:57 +03:00
Alex Shvartzkop
42d8c85f12
Altium PCB import: Models is optional.
...
Models directory may not exist in older files.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16512
2024-01-14 11:59:49 +03:00
John Beard
60cba81a2e
Altium import: Handle 110-byte subrecord5 in Pad6 parser
...
This appears to happen in some very old (Protel 3.0.0?)
library files.
The example given in issue #16514 always has 0 in the last 4 bytes.
It's not clear exactly what these bytes do, if anything, so
just skip them and assume the holerotation is 0. If it's not 0,
error out - at that point it might be possible to determine what
the value means.
This appears to correctly import the file provided in the issue.
As the license on that file is unclear, we probably can't just
add it as a unit test and it's rather tricky to special up a
binary file test-case for it.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16514
2024-01-10 00:21:20 +00:00
Jon Evans
8c7d126ced
Fix flipped boolean in teardrop serialization
...
Also change to explicit bools
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16552
2024-01-08 18:44:09 -05:00
Alex Shvartzkop
4f9fbd230d
EasyEDA (JLCEDA) Pro: fix PCB parse error.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16544
2024-01-08 14:38:06 +03:00
jean-pierre charras
f795e40584
Altium Importer: do not stop import when an item looks bad (happens in old files)
...
An importer should not stop import when an item just looks strange. Just skip it.
It can happen with old files.
Better do not import one item than import nothing.
2024-01-07 13:10:59 +01:00
Jeff Young
015a050169
Escape error messages for HTML.
2024-01-05 11:03:36 +00:00
Roberto Fernandez Bautista
9004a5920f
CADSTAR PCB: Handle multi-layer figures & fix multi-layer mapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16515
2024-01-03 20:57:27 +01:00
Roberto Fernandez Bautista
94cb513c0e
CADSTAR PCB: Handle multi-layer library coppers correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16486
2024-01-03 20:18:02 +01:00
Wayne Stambaugh
0e4fe545a4
Fix crash when importing Eagle board file with no "classes" element.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15754
2024-01-03 10:03:52 -05:00
John Beard
751c88ef20
Use 'uuid' (not 'id') in the s-expr PCB groups/generator format
...
Add some regression tests to check loading of groups and generators
from various versions of the s-expr PCB format.
2023-12-31 23:09:26 +00:00
Ian McInerney
f2702b223c
Introduce base IO_MGR class and unify RELEASER objects
...
The IO_RELEASER is a thin-wrapper around a std::unique_ptr, but done
this way to allow easier addition of a custom deleter in the future if
something needs to call back into the IO_MGR.
2023-12-29 00:37:38 +00:00
Marek Roszko
9a890cdba9
Kick the wildcards and file exts into a static class, export it from kicommon
2023-12-27 21:10:01 -05:00
Marek Roszko
a36eb2af72
Netclass shouldnt have odd pcb forward decls
2023-12-27 17:12:35 -05:00
Ian McInerney
d7fe668d79
Push PCB_IOs to use the base progress reporter instead of per-function
2023-12-27 17:06:23 +00:00
Ian McInerney
4a67761d29
Push library reading check to IO_BASE
2023-12-27 16:44:45 +00:00
Ian McInerney
f8688a922d
Unify IO library descriptors
2023-12-27 16:34:59 +00:00
Jeff Young
49d6439ae0
Formatting.
2023-12-27 13:52:02 +00:00
Alex Shvartzkop
e636913178
EasyEDA Std: import dimensions.
2023-12-27 12:48:37 +05:00
Ian McInerney
743e9d669a
Push library management into IO_BASE
2023-12-27 01:21:53 +00:00
Ian McInerney
cad91312aa
Introduce main base class for all IO loaders
2023-12-26 23:27:11 +00:00
Alex Shvartzkop
5bbe01b570
EasyEDA Pro: support .elibz format (device libraries)
2023-12-25 07:00:24 +03:00
Ian McInerney
e6632bb983
Rename PCB IO classes/files
2023-12-24 01:22:21 +00:00
Ian McInerney
d8b47d18d3
Initial rename of file plugin infrastructure components to IO
2023-12-24 01:22:21 +00:00