jean-pierre charras
715a5ee47b
array_creator: fix issues (crashes) in board editor and footprint editor:
...
- In fp editor, fields cannot be duplicated: each is unique.
duplicating fields created a crash and issues in undo/redo command
- In board editor after creating an array with footprints.
- crash when closing pcbnew
- error when undoing the array creation
The crash was due to call run this_item->RunOnDescendants() on footprints: it
must be run only on a PCB_GROUP.
2024-01-27 17:02:20 +01:00
Jeff Young
a8f6329590
Remove stale comment.
2024-01-27 15:52:59 +00: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
jean-pierre charras
89f8c5d918
PCB_SELECTION_TOOL::selectPoint() Remove items disabled by the selection filter
...
before using any other filter. This avoid to select an item from the candidate
list that cannot be selected and eliminate another candidate.
Fixes #16755
https://gitlab.com/kicad/code/kicad/-/issues/16755
2024-01-26 19:13:50 +01:00
Jeff Young
c5bd62434b
Zero out number of non-numberable pads in ImportSettingsFrom().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16769
2024-01-26 14:05:04 +00:00
Jeff Young
053a0aade7
Formatting & commenting.
2024-01-26 14:05:04 +00:00
Jeff Young
cc058a7927
Exit pad edit mode before closing footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16766
2024-01-26 13:49:17 +00:00
Jeff Young
f4e123f57e
!m_isBoardEditor != m_isFootprintEditor.
...
(There's also python, cli, etc.)
2024-01-26 12:47:01 +00:00
Marek Roszko
465ccaef90
Add missing schematic parity drc test to cli
2024-01-25 22:14:49 -05:00
Marek Roszko
a282762686
Fix pcb drc in cli due to awkward !m_isBoardEditor logic with more awkward logic
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16744
2024-01-25 22:09:29 -05: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
Jeff Young
b3f94ad46a
Cleanup before exit.
...
Possibly KICAD-5TE.
2024-01-25 15:30:25 +00:00
Jon Evans
a377fa4201
Add some missing deep comparisions for BOARD_STACKUP
2024-01-25 09:08:27 -05: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
Ian McInerney
d04b21c6d6
Ensure parameter typeinfo matches the actual object's typeinfo
...
AppleClang seems to generate different typeinfo for forward declarations
of classes than the actual class object, so the any_cast for the pointer
parameter fails due to the types not matching (even when they look the
same when printed in the error).
Instead, we must always ensure we use the actual object when defining
the parameter type when placing the object into the event.
2024-01-24 16:14:32 +00:00
Jeff Young
65c75072ef
Convert between refs and KIIDs in Footprint Properties.
...
Also fixes DIALOG_TEXT_PROPERTIES, which did it correctly
for multi-line texts, but not for single-line texts.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16721
2024-01-24 13:35:37 +00:00
Jeff Young
89850824d5
Naming & comments.
2024-01-24 13:35:37 +00:00
Jan Wichmann
b6ddef7162
pcbnew: Added missing DRC checks for value and library-link between symbol and footprint
2024-01-24 12:35:51 +00:00
Jeff Young
7cf861a239
Use ARC_HIGH_DEF (not ARC_LOW_DEF) for courtyard generation.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16695
2024-01-24 12:00:33 +00:00
Jeff Young
9d88a9f60a
Fix typo causing OnItemsChanged() to get called too often.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16657
2024-01-24 11:36:56 +00:00
Jon Evans
d50e0811fb
Fix QA build
2024-01-23 22:50:53 -05:00
Jon Evans
c143be6279
Pads need to be included in collection for length checks
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16724
2024-01-23 22:08:08 -05:00
Alex
ed00cb3304
Support arcs in Break Track.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16712
2024-01-24 05:47:50 +03:00
Jon Evans
a46d409ec6
Make sure grouping commits follow board editor path
2024-01-23 21:22:23 -05:00
Jon Evans
256364aaa1
Parent property should not be accessible from the UI
2024-01-23 20:41:34 -05:00
Jeff Young
ea7176d466
Don't attempt to update start item from a keyboard event.
2024-01-23 23:07:11 +00:00
Jeff Young
d47a000564
Make sure group items get added to commit.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16705
2024-01-22 23:34:34 +00:00
Jeff Young
85f0dd279c
Push fileFilter callback function down a level.
...
(The GRID_CELL_PATH_EDITOR is shared by the whole column.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16707
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13959
2024-01-22 18:27:31 +00:00
Jeff Young
236123c487
Allow FPID to be matched against in memberOfFootprint().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16662
2024-01-22 14:03:45 +00:00
Marek Roszko
f63c7806fd
More bitmap bundle comboboxes
2024-01-21 22:55:13 -05:00
Jeff Young
d6b39c672e
Footprint editor items always get added to footprint.
...
Also fixes an unrelated crash when assuming the current
editor is the board editor.
2024-01-21 22:51:36 +00:00
Jeff Young
6fca467e2a
Don't query first item of empty vector.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16687
2024-01-21 22:51:36 +00:00
Jeff Young
2627c99654
Fix typos that produce segfaults.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16696
2024-01-21 22:51:36 +00:00
Jeff Young
e07a4c285b
Remove old hack required for wxWidgets 3.0 on MacOS.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16687
2024-01-21 11:20:34 +00:00
Jeff Young
37c185f437
Remove overly-complex snapping layer for moving objects.
...
We now have a hotkey to select Active Layer vs All Layers,
which gives the user more control.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16683
2024-01-20 22:04:56 +00:00
Jeff Young
13935399a5
Second part of d854de9d68
...
This one for symbol <-> footprint. (Original was for
lib footprint <-> board footprint.)
Also fixes a major bug in DRC where we bail out of parity
checking if DRCE_MISSING_FOOTPRINT is set to ignore (or
overflows).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16671
2024-01-20 18:41:35 +00:00
Jeff Young
d854de9d68
Add missing DRC checks for footprint attributes.
...
Requires string change, but it's a bug, and worse, a DRC
bug. I did minimize the changes by using a single error
message string that then has the various settings (which
are already translated) put into it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16671
2024-01-20 17:22:19 +00:00
jean-pierre charras
be723dd579
PANEL_PCBNEW_COLOR_SETTINGS: ensure color setting for all DRC markers are in list
...
Fixes #16674
https://gitlab.com/kicad/code/kicad/-/issues/16674
2024-01-20 12:05:45 +01:00
Ian McInerney
b36a67e556
Fix missed IO_MGR rename in Python
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16669
2024-01-19 22:23:04 +00:00
jean-pierre charras
7c3f8cbb79
3D viewer: do not load the current board twice when creating the 3D viewer frame.
2024-01-19 18:42:24 +01:00
Jeff Young
1597882c1f
Allow creation of groups with a single member.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16586
2024-01-19 17:32:00 +00:00
Jeff Young
c3e3f3bcb8
Possible fix for move individually.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16087
2024-01-19 15:13:41 +00:00
Jeff Young
bb74100fe2
Fix typo.
2024-01-18 16:17:46 +00:00
Jeff Young
57315dd625
Make sure group children get added to board.
...
Also fixes a bug where you could import on to an invisible
layer (we now auto-show the layer if you do that).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16642
2024-01-18 14:02:43 +00:00
Jeff Young
84c6451787
Reduce visual noise in dialog; regularize spacing.
2024-01-18 14:02:43 +00:00
Alex
3eb3fc9d1e
Fix PCB arc edit point order.
2024-01-18 13:51:32 +03:00
Marek Roszko
7b24167398
FromDIP symbol and footprint editor aui panes
2024-01-17 23:08:38 -05:00
Marek Roszko
f5db4d6864
Remove the invalid default dock directions for search panel
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16636
2024-01-17 22:26:04 -05:00
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