Marek Roszko
7c8ee26a38
FromDIP the pcb aui sizes
2024-01-17 22:02:05 -05:00
Jeff Young
97cb15dd47
Make sub menus conditional on them having child items.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16631
2024-01-18 00:21:15 +00:00
Jeff Young
455fae45d8
Support point editing of inverted rectangles.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16595
2024-01-17 15:27:48 +00:00
Jeff Young
df48ebfbe7
Restore preferential selection treatment for silk items.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16607
2024-01-17 14:02:43 +00:00
Jeff Young
ace4ef7b16
Implement stingy selection mode for tuning patterns.
2024-01-17 00:34:22 +00:00
Jeff Young
be6a2d018d
Implement stingy selection mode for tuning patterns.
2024-01-17 00:34:22 +00:00
Seth Hillbrand
121271bd0a
Allow users to specify no minimum text width in DRC
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16596
2024-01-16 16:24:18 -08:00
Jeff Young
322ad1af45
Implement copy/paste for generators.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16613
2024-01-16 23:38:50 +00:00
Marek Roszko
b4bfdf95d3
Explicitly add 48, 128, 256 to icon bundles for each app
2024-01-16 17:21:44 -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
levanlap2502
faeec25557
Fix fillet lines, when line angle is 0 or 180
...
Check angle of line before creating Fillet
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15966
2024-01-16 13:30:21 -08:00
Seth Hillbrand
13544ff975
Avoid crash on step export
...
Detach the wxProcess from the chain before closing
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16608
2024-01-16 13:18:54 -08:00
Marek Roszko
76e8ed2506
Fix sch_field and pcb_target not returning evaluated similarity correctly
2024-01-16 15:43:49 -05:00
Jeff Young
4fb11e210a
Copy teardrop settings.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16618
2024-01-16 17:20:54 +00:00
Alex Shvartzkop
c8a0a58683
Fix PCB_FILE_T usage in FP_LIB_TABLE_GRID.
2024-01-16 19:35:10 +03:00
Alex Shvartzkop
4f6c25895e
Rename UNKNOWN in enums to prevent shadowing.
2024-01-16 19:14:57 +03:00
jean-pierre charras
76bd892f93
Fix not working Duplicate command in FP editor
...
Fixes #16594
https://gitlab.com/kicad/code/kicad/-/issues/16594
2024-01-16 16:30:55 +01:00
Alex Shvartzkop
f99505e190
Fix arc editing bugs when endpoints match.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16532
2024-01-16 16:17:45 +03:00
Alex Shvartzkop
338914c7cf
Restore Fix Discontinuities default tolerance; enable it by default.
...
There's no artifacts anymore due to CalcArcCenter fixes.
2024-01-16 12:13:08 +03:00
Alex Shvartzkop
4fac43d696
Fix variable substitutions in library tables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16601
2024-01-15 09:53:08 +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
jean-pierre charras
c18bfe0c61
DIALOG_DRC & DIALOG_ERC: re-enable button "Run ERC" and "Run DRC" after running tests.
...
Fixes #16583
https://gitlab.com/kicad/code/kicad/-/issues/16583
2024-01-12 15:38:25 +01:00
jean-pierre charras
549ef88f70
QFNWizard: ensure thermal vias/pads have the property PAD_PROP::HEATSINK set.
2024-01-11 16:29:41 +01:00
jean-pierre charras
0ac23f9099
FP editor: ensure a newly created pad PTH has a hole.
...
When a new pad type PTH is created from a SMD pad master , previously its
hole had a null size because the master pad had a null size.
Also allows a HEATSINK pad to be added to a SMD footprint.
2024-01-11 16:27:05 +01:00
Marek Roszko
d0236ca751
Make DRC exclusions work in cli & python DRC
...
The way exclusions work is actually silly, and you can end up with your project file losing them too.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11562
2024-01-10 19:55:44 -05:00
Jeff Young
3836194cc6
Add some missing autocomplete clauses.
...
We really need to figure out how to auto-generate these....
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16565
2024-01-10 20:16:52 +00:00
Jeff Young
27c253780d
Separate out Pad_Shape so auto-complete can work.
2024-01-10 19:22:05 +00:00
Jeff Young
e55ec85e19
Remove added items from group on revert.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16562
2024-01-10 17:36:31 +00:00
Jeff Young
9038f80543
Switch button focus to Close after running ERC or DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16541
2024-01-10 17:36:31 +00:00
Jeff Young
435e60d0e5
Knockout different-net dimensions in zone-filler.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16549
2024-01-10 16:42:18 +00:00
Mark Roszko
a74c96b287
Fix misspelling of gltf
2024-01-10 16:30:50 +00:00
jean-pierre charras
07d7ccf46f
Fix 2 minor compil warnings.
2024-01-10 09:16:14 +01:00
Marek Roszko
08c2237a94
Update the layer names in cli/python board load of the property grid layer enum because DRC quietly uses it
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16555
2024-01-09 20:43:14 -05: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
Marek Roszko
f53c3f895d
pcb_group.h should live in pcbnew
2024-01-08 22:32:18 -05:00
Marek Roszko
00f3a315d2
Create a default file name for cli 3d export if empty
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16547
2024-01-08 21:40:33 -05: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
Jeff Young
3a781f5dbe
Let router draw tuning pattern baselines.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15996
2024-01-07 13:54:40 +00:00
Jeff Young
cd83dfa831
Stage/add/delete group members when adding/deleting group.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16540
2024-01-07 13:39:13 +00: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
Seth Hillbrand
d3e1e54b24
Avoid removing segments that do not maintain conns
...
If the two segments being merged have connection points originally, then
the merged segment must have the same connection points. We had been
moving the merged segment to match the original connections but this is
not as robust as just not merging these lines (and therefore leaving the
original)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15495
2024-01-05 11:40:30 -08:00
Jeff Young
015a050169
Escape error messages for HTML.
2024-01-05 11:03:36 +00:00
Jeff Young
5aae8e2fd0
Code cleanup.
2024-01-04 16:13:42 +00:00
Jeff Young
91d144c720
Do NOT return false from a visitor unless you want to stop visiting!
...
This fixes a bug where DRC would bail out early if any of
the colliding objects was a free pad.
2024-01-04 14:35:08 +00:00
Jeff Young
aa4107ce2d
Code cleanup (and Coverity quieting).
2024-01-04 14:35:08 +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
Jeff Young
1e71899611
Thread pad & graphic clearance testing.
...
This allows us to poll the event loop & update the progress
on a time interval rather than on an items-completed
interval (the later of which can't easily take host machine
performance into account).
Also fixes a bug where we'd bail out of QueryColliding if
we ever found !testClearance && !testShorting && !testHoles.
2024-01-03 13:49:29 +00:00
Jeff Young
8993cd12a6
Thread cache generator.
...
This allows us to poll the event loop & update the progress
on a time interval rather than on an items-completed
interval (the later of which can't easily take host machine
performance into account).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16506
2024-01-03 12:45:05 +00:00
jean-pierre charras
c8c0685ff2
drc/drc_test_provider_library_parity: fix issues when testing graphic items:
...
- fix tests for zones: they were rotated/moved twice before comparing
- fix tests for some graphics (RECT and POLYGONS): they were not always compared
using the right order.
Fixes #16501
https://gitlab.com/kicad/code/kicad/-/issues/16501
2024-01-03 12:43:24 +01:00
Ian McInerney
4770532511
Ensure footprints are removed from group before exporting to library
...
Duplicating a footprint automatically adds it to the group the original
is contained in, and these copies should not be part of the board after
their use.
Fixes KICAD-5YC
2024-01-03 00:19:29 +00:00
Jeff Young
0b526cca15
Delete tracks when deleting tuning pattern as part of sel.
2024-01-02 18:00:25 +00:00
Jeff Young
a523c58530
Add a m_forceMarkObstaclesMode warning when violating DRC.
...
Also adds a modifier combination to commit anyway.
2024-01-02 17:02:50 +00:00
jean-pierre charras
5d3c35c5d3
BOARD_NETLIST_UPDATER: fix incorrect warning message:
...
pad number and footprint reference were swapped.
Fixes #16500
https://gitlab.com/kicad/code/kicad/-/issues/16500
2024-01-02 15:14:53 +01:00
Ian McInerney
9db1dd5ec5
Refresh message panel when router mode changes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16497
2024-01-01 19:25:54 +00:00
Jon Evans
b8aef58561
Add proper comparison operators for BOARD_DESIGN_SETTINGS and children
...
BOARD::operator== was just comparing pointers
2024-01-01 13:37:31 -05:00
Jon Evans
81dbb12054
Don't enable the shove when forcing highlight mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16467
2024-01-01 11:48:30 -05:00
Jeff Young
15a2d65a0c
More explicit pad-missing message when net involved.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16489
2024-01-01 10:51:34 +00: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
Jeff Young
985e590e6f
PCB_FIELDs don't belong in the view.
...
They're handled by their parent FOOTPRINTs.
Also makes sure footprint children get their parents
updated on a swap.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16412
2023-12-31 21:38:11 +00:00
Jeff Young
911a54ac82
Make sure sexpr gets stacked when followed by non-token.
...
For instance, with "(min 1.27mm)", we need to stack the
"min" token after hitting the space.
2023-12-31 17:22:58 +00:00
Ian McInerney
53e16558a5
Refresh appearance panel when appending board
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16226
2023-12-31 17:08:09 +00:00
Jeff Young
71b9dd1fb4
Update FPWatcher when saving canvas footprint.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16414
2023-12-31 11:26:16 +00:00
Andrea Greco
55429aea6b
pcbnew: Show current router mode in status bar
2023-12-31 02:54:59 +00:00
Jeff Young
6c39e67342
Don't leave tools with stale state when reloading fp.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16414
2023-12-30 21:05:06 +00:00
Jeff Young
2e02ca9d14
Make length-tuning rollover layer-specific.
...
Also don't show target length in diaog when it hasn't been
set.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16379
2023-12-30 20:27:39 +00:00
jean-pierre charras
b94c941217
Pcbnew, Fp Editor, pad_tool::PlacePad() avoid recreate from scratch a pad
...
when the previous is not used.
If a new pad is generated, when moving it by arrow creates a new pad for
each move by the current code.
This is not annoying unless the pad number is edited during move.
So, the pad number is now reinitialized only after the current pad is used,
not during the current move.
Fixes #16409
https://gitlab.com/kicad/code/kicad/-/issues/16409
2023-12-30 20:15:31 +01:00
jean-pierre charras
1ae5bc7c0d
DIALOG_BOARD_REANNOTATE_BASE: do not force the size of bitmap windows.
...
Also do not force the dialog size: wxWidgets sizers should set the right size.
2023-12-30 16:02:31 +01:00
Jeff Young
2e9f0679fc
Fix i18n mixup.
...
Tab names and column names are translated on the fly, but
that means they need _HKI macros to make sure they get into
the translation database.
2023-12-30 11:24:35 +00:00
Jeff Young
0fac52dcad
Accept EEschema tokens as well as netlist tokens for pintype.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16169
2023-12-29 16:34:03 +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
Jeff Young
5145b146e9
Handle dimensions in search pane.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16459
2023-12-28 21:16:56 +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
Jeff Young
e17d81cf6d
Re-enter auto-complete on a ctrl-space.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16445
2023-12-27 21:14:27 +00: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
69c95acc57
Handle arcs in TOPOLOGY::AssembleDiffPair().
2023-12-27 13:52:02 +00:00
Jeff Young
2ba9e07f0f
Add missing DRC auto-complete token.
2023-12-27 13:52:02 +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
Jon Evans
7d25675e2b
Fix handling of dimensions in footprint updater
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16448
2023-12-26 14:08:39 -05:00
Alex Shvartzkop
5bbe01b570
EasyEDA Pro: support .elibz format (device libraries)
2023-12-25 07:00:24 +03:00
Jeff Young
6a5adc7646
Record nested footprints for collision checking.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16410
2023-12-24 19:40:21 +00:00
Jeff Young
c051e66830
Handle units switch in board stackup.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16361
2023-12-24 16:18:46 +00:00
Jeff Young
f887f9b1e5
Save Net Inspector col order, widths, sorting, etc.
2023-12-24 13:11:16 +00:00
jean-pierre charras
408c90d3ae
Python stuff: fix an issue to build pcbnew_wrap.cxx (at least on msys2)
...
- Reorder two include in pcbnew.i
- rename PLUGIN to PCB_IO (missing rename) in footprint.i
2023-12-24 10:41:16 +01: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
Jeff Young
687389224e
Do a more complete search for a coupled net.
...
In particular, don't bail out if the starting seg is part
of a tuning pattern meander or a user-authored non-coupled
segment to get to a via or something).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16380
2023-12-23 23:43:12 +00:00
Jon Evans
4288c8dcaf
Avoid repeated selection notifications when importing netlist
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16356
2023-12-23 17:41:23 -05:00
jean-pierre charras
2051ad8123
Fix a DRC issue about thermal reliefs.
...
They can be not fully counted when a rect pad has the same (or a smaller) size
as the thermal spoke width, due to a bad bounding box used in calculations.
Fixes #16265
https://gitlab.com/kicad/code/kicad/-/issues/16265
2023-12-23 19:50:11 +01:00
Jeff Young
3f73bbcc4f
Don't run keepUpright when not rotating.
...
For that matter, don't do anything at all for a rotation
of 0 (or a move vector of {0,0}).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16402
2023-12-22 21:22:36 +00:00
Jeff Young
8b344b13e5
Reenable m_useAuxOriginCheckBox when appropriate.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16424
2023-12-22 14:22:02 +00:00
Jeff Young
1f627a3a75
Fix two unrelated bugs in ungroup.
...
1) Don't double-remove the members from the group.
2) Don't auto-recurse BOARD_COMMIT::Stage for non-modify
changes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16419
2023-12-21 22:47:23 +00:00