Jeff Young
9ff66d0e71
Don't capture references to local variables for CallAfter.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16934
(cherry picked from commit 9d40374baf
)
2024-02-23 16:53:30 +01:00
Jeff Young
276171b85e
Handle holes in shapes when creating bounding hulls.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16347
(cherry picked from commit 0ead8a14a1
)
2024-02-23 16:53:30 +01:00
jean-pierre charras
ef6a5b6252
teardrops: calculate better points on track for track arc.
...
Previously, a reference point to calculate teardrop length was calculated
using a track segment. It can create significant position error with track arcs.
Now a arc is used to find this reference point.
2024-02-23 11:36:14 +01:00
Alex Shvartzkop
6ceea747b2
Swap to capitalized strings (translated).
2024-02-22 11:54:52 +03:00
Alex Shvartzkop
dd6213051d
Pick DP coupled segment closest to start item and baseline.
2024-02-20 22:06:00 +03:00
jean-pierre charras
01327b24b4
PANEL_SETUP_LAYERS: when removing a layer, do not delete items owned by footprints.
...
Items owned by footprints are allowed to be on non existing layers on board.
Moreover, items owned by footprint cannot be deleted by the board editor.
Fixes #17038
https://gitlab.com/kicad/code/kicad/-/issues/17038
2024-02-20 18:38:48 +01:00
Jeff Young
012b32e989
Don't leave dangling net pointers on PCB_SHAPEs.
...
Also makes it harder for this type of error to occur in
future.
2024-02-20 17:36:54 +00:00
Alex Shvartzkop
2e97d5d7cc
Add missing check in tuning pattern outline.
2024-02-20 20:32:07 +03:00
Alex Shvartzkop
cbfd757d28
Reduce amplitude snap value of tuning patterns.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
10e6ca8740
Show tuning pattern baselines when not editing them.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
59a0635b09
Disable local ratsnest when moving generators (tuning patterns).
...
They're not moving like normal objects, leaving ghost ratsnest.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
ed712faf41
Disallow duplicating tuning patterns alone.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
5e5effaf3a
Ensure minimum outline size in tuning patterns.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16847
2024-02-20 03:20:08 +00:00
Tomasz Wlostowski
82312a0fae
router: SplitAdjacentSegments() should check if the end segment we are about to split is in the same net that the head segment
...
Otherwise, the router might add bogus segments to the node. The root of the problem is somewhere in the logic that delivers aEndItem to ROUTER::Move() though - as the end item (in line placement mode at least) should always be an item within the same net as the head and not belonging to the current head...
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
8d76e4e171
Allow DP meanders to (mostly) fit on adjacent segments.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
943c5fea59
Fix length calculations in DP meander placer.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
29188bdc53
Fix some edge-cases in DP tuning pattern outline.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
4227b1add9
Improve tuning pattern robustness.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
1a65c0091f
Tweak default meander settings.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
35e73d7dee
Restore green router collision color.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
e9a881ed01
Reset placer when routing start fails to prevent crash on next usage.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17008
2024-02-20 03:20:08 +00:00
Seth Hillbrand
89592d08bf
Revise teardrop graphics sizes
...
Sizes were too large on many systems. Revised panel uses 615px on Linux
instead of 742. Adjusted line sizes to remain minimum visible width at
new height.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17018
2024-02-19 12:48:36 -08:00
Mike Williams
60fe87a73c
PCB: always parse ki_fp_filters as a property, not a field
2024-02-19 09:41:27 -05:00
Ian McInerney
d3befd8bb8
Remove dummy items from group before they are deleted
...
Board items should not be in a group when they are deleted, but these
are dummy ones, so their group membership doesn't matter.
Fixes KICAD-7P0
Fixes KICAD-6VX
Fixes KICAD-7KK
Fixes KICAD-6VH
2024-02-16 12:20:00 +00:00
Marek Roszko
b2c6e2de1f
Fix file not found msg contents for step resolving
2024-02-15 23:10:57 -05:00
Marek Roszko
762c159b96
Fix KIPRJMOD by setting the project as active by modifying the board loading helper
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16973
2024-02-15 23:06:41 -05:00
Seth Hillbrand
08bdf1abae
Avoid drawing netnames when not in board editor
...
Shouldn't be needed if we properly clear the netinfo but there's no
reason to keep netnames so better to avoid possible issues
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16981
2024-02-15 17:17:22 -08:00
Marek Roszko
c48fc7ebff
Fix crash due to PCB_SHAPEs not being returned by BOARD::AllConnectedItems
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16981
2024-02-15 19:58:21 -05:00
Jon Evans
4ec390838b
Re-enable non-KiCad board import when non-standalone
...
Partial revert of ec2cd99405
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16978
2024-02-15 12:14:32 -05:00
Jon Evans
7b0bb59b37
Remove hard-coded versioned env vars in most places
2024-02-15 15:31:08 +00:00
Mike Williams
6c1273ca12
PCB Parsing: only parse old properties before PCB fields addition
2024-02-14 09:35:10 -05:00
jean-pierre charras
8e6fe0eaf0
Gerbview settings: store option "Page Limits" in gerbview config.
...
Previously this appearance option in Layer Manager was not stored.
2024-02-14 11:21:55 +01:00
jean-pierre charras
0d1945def7
Gerber drill file: do not flash oblong holes: they must be routed.
...
Fixes #16962
https://gitlab.com/kicad/code/kicad/-/issues/16962
2024-02-14 09:22:49 +01:00
Marek Roszko
f73d45b0cf
Add $schema prop to drc/erc
2024-02-13 19:08:55 -05:00
Ian McInerney
b86bf19328
Make shape properties layer selection obey cancel command
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16735
2024-02-13 20:31:05 +00:00
Mike Williams
3cd61a2d39
PCB: appending boards should not select existing generators
2024-02-13 10:15:30 -05:00
Jeff Young
0cf433b28e
CONVERT_TOOL::CreateLines() doesn't use SKIP_STRUCT flag.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16930
2024-02-12 23:59:33 +00:00
Roberto Fernandez Bautista
ca148fb4d1
pns_debug_tool: Fix "save as" to save log file with new router state
2024-02-12 21:22:57 +01:00
jean-pierre charras
7e4e80a2e5
DRC library parity attribute tests: disable DNP and EXCLUDE from BOM.
...
They are related to a design, not to a footprint, and are tested in
schematic parity tests.
2024-02-12 10:55:56 +01:00
Marek Roszko
2afe4db945
Add some missing newlines in cli output without changing strings
2024-02-11 21:12:21 -05:00
Marek Roszko
6a37f99e94
Fix crash if we exit lib table setup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16917
2024-02-11 21:05:23 -05:00
Marek Roszko
d694bb5960
Use file name rather than path for erc/drc json and text reports
2024-02-11 20:16:22 -05:00
Jon Evans
622c2f1316
Make sure connectivity is updated in undo/redo
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16945
2024-02-11 20:01:15 -05:00
Marek Roszko
e51ddc52b7
Fix crash writing json drc report
2024-02-11 17:36:56 -05:00
Alex
b5982f7319
EasyEDA import: force close some line chains.
2024-02-11 23:52:56 +03:00
jean-pierre charras
fe1579ebbd
BOARD_NETLIST_UPDATER: fix issue when reading net-lists having no FOOTPRINT_FIELD
...
they can be old net-lists or non Kicad net-lists.
Fixes #16931
https://gitlab.com/kicad/code/kicad/-/issues/16931
2024-02-11 21:03:00 +01:00
Jon Evans
e9be95741b
Deconflict hotkey for Route from Other End
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16415
2024-02-11 10:58:38 -05:00
Jon Evans
ec2cd99405
Guard actions that change project against running in non-standalone mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16942
2024-02-11 09:36:17 -05:00
Roberto Fernandez Bautista
3a6d74a3b3
Allow user to select location to save router event log
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16904
Note: no new strings added
"Unable to write '%s'." is from pagelayout_editor/files.cpp(182)
2024-02-11 13:43:55 +01:00
Alex Shvartzkop
2b295f85f5
Fix corner radius for 0 amplitude meanders.
2024-02-10 08:36:50 +03:00
Alex Shvartzkop
ff17a22e31
Internationalize Image Properties dialogs.
2024-02-10 08:34:19 +03:00
Seth Hillbrand
cd548e392a
Add document type icons
...
Update Macos script to use doctype icons for icns builds
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14754
2024-02-09 15:55:57 -08:00
Seth Hillbrand
f303996f9c
Add new icons for tools
...
Align elements to grid
Cleanup graphics
Cleanup tracks/vias
Drag
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16206
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16205
2024-02-09 15:55:57 -08:00
Seth Hillbrand
cabbab9a5f
Move pcbnew drag to move specific icon
2024-02-09 15:55:57 -08:00
Alex Shvartzkop
fcdd34f58b
Reserve strings for Tune Length
2024-02-10 02:44:05 +03:00
Alex Shvartzkop
2121227194
Fix nullptr group assert in tracks cleaner.
2024-02-10 00:44:05 +03:00
Alex Shvartzkop
d4e89543de
Length-tuning fixes/improvements:
...
- Ensure correct amplitude values in tuning patterns.
- Support lower amplitudes in DP length tuning
- Ensure correct minimal inner radius in DP length tuning
2024-02-10 00:44:05 +03:00
Lucas Dumont
2933cdf636
Extend NETLIST lifetime for JobExportDrc
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16925
2024-02-09 22:14:36 +01:00
Alex Shvartzkop
453e185613
Increase unconstrained tuning length to 1km.
2024-02-09 19:25:46 +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
91e15634fc
Re-use ERC's delete-exclusions-query dialog for DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16914
2024-02-09 11:21:06 +00:00
Jeff Young
4905c37712
Streamline explodePad undo.
...
Also fixes a bug where new shapes were added to the view
twice.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16888
2024-02-09 10:08:37 +00:00
Jon Evans
037f349585
Make expand connection work on generated tracks
2024-02-08 19:28:28 -05:00
Jeff Young
53d048921a
Fix merge conflicts.
2024-02-09 00:04:43 +00:00
Jon Evans
7929d7cda2
Fix build
2024-02-08 17:33:34 -05:00
Jeff Young
ecbe1df7c1
Update target length/skew to std::optional.
...
Also fixes a bug in the router where the target length would
get trashed if set to maxLongLongInt. (We'd add the default
tolerance to it sending it negative.)
2024-02-08 18:14:31 +00:00
Jeff Young
e62b4f8ff4
Add nullable int and double to property system.
2024-02-08 18:14:31 +00:00
Alex Shvartzkop
876449b83d
Set DP skew meanders max length to INT32_MAX instead of 100 mm.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16860
2024-02-08 19:34:17 +03:00
Alex Shvartzkop
f4cf23e5cf
Length tuning: fix status popup display when unconstrained.
2024-02-08 18:55:42 +03:00
Mike Williams
b979f52364
FP Editor: show hidden texts when we should
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16909
2024-02-08 10:28:23 -05:00
arturo182
abb1915114
Missed a checkbox for Select All in Import Settings
2024-02-08 15:01:23 +00:00
Alex Shvartzkop
f1caa262a6
Separate actions for single track and differential pair length tuning.
2024-02-08 14:58:28 +00:00
Seth Hillbrand
6e0d97df76
Do not cache invisible text objects
...
In some cases, extremely long, invisible texts can fill and crash opengl
buffers
2024-02-07 15:26:41 -08:00
Jeff Young
bce372c8a3
Don't clear the undo/redo list when we're just trimming it.
...
We only allow a certain number of commands on the lists
and trim them when they overflow. PCB_BASE_EDIT_FRAME and
PL_EDITOR_FRAME implemented this correctly; SCH_EDIT_FRAME
and SYMBOL_EDIT_FRAME did not.
2024-02-07 14:52:10 +00:00
Jeff Young
1e6986d2f5
Don't report starved thermals when connected only to isolated islands.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16866
2024-02-07 14:09:03 +00:00
Jeff Young
e6929b2184
Tooltip for "Prefer zone connections".
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16587
2024-02-05 19:22:41 +00:00
Jeff Young
d30361b425
Increase artificial via preference further.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16880
2024-02-05 19:20:33 +00:00
Jeff Young
1ff36f23b8
Clean up stale TODOs.
2024-02-05 15:49:57 +00:00
Jeff Young
da46a96623
Update a few strings based on new string freeze policy.
2024-02-05 15:49:57 +00:00
Ian McInerney
7ea1568802
Fix selection tool behavior in footprint viewer
...
The footprint viewer isn't an edit frame, so we need to access the
settings through the base frame type instead. Also, double click makes
no sense in the footprint viewer, and just leads to weird results
sometimes.
Fixes Sentry KICAD-7A2
2024-02-05 14:50:17 +00:00
Marek Roszko
835500bf1c
Hide the color prop from pcb editor
2024-02-05 01:13:16 -05:00
Marek Roszko
3960c53225
A few tweaks for hidpi
2024-02-05 00:52:11 -05:00
Jeff Young
0370db43ae
A footprint does it's own child hit testing.
...
We only need to add it for groups.
2024-02-04 23:16:43 +00:00
Jeff Young
77c19fa99a
Fill in missing zone properties.
...
Also fixes some bugs with hatch properties being available
on rule areas.
2024-02-04 23:01:31 +00:00
Marek Roszko
5d0abd3b01
Use CallAfter instead of Idle event hack for drc dialog item selection
2024-02-04 12:37:56 -05:00
Jeff Young
cab351d249
Don't do a sided-test on a footprint which has no side.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15284
2024-02-04 15:18:23 +00:00
Jeff Young
4e0b48a03a
ZONE_SETTINGS init belongs in ZONE_SETTINGS's ctor.
...
(Not in ZONE's ctor.)
2024-02-03 20:17:31 +00:00
Jeff Young
5379a1d863
Nullptr protection.
2024-02-03 20:17:31 +00:00
Ian McInerney
2fc96c1d11
Ensure stackup material returned is correct after list item deletion
2024-02-03 18:06:40 +00:00
Alex
5c86247e21
Fix inactive cells being black in default settings panels on MSW.
2024-02-03 21:00:28 +03:00
Ian McInerney
dc6fb73b40
Fix mistake in 7edda82b
where any key could delete the material
2024-02-03 17:01:57 +00:00
Ian McInerney
7edda82b2a
Hook up delete key in stackup materials list box
...
Allow the delete key to delete a material from the stackup list, since
otherwise there is no way to delete materials from the list.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16854
2024-02-03 16:39:56 +00:00
Wayne Stambaugh
92c2ddf77a
Do not parent dialogs to non top level windows in panels or widgets.
2024-02-03 10:40:28 -05:00
Jeff Young
4d49762714
Remove Export Settings to Other Similar Zones.
...
The UI for it is clunky (Cancel afterwards doesn't do what
you think it might), the undo code is all hand-rolled (and
possibly buggy?), and we have the Property Inspector now
for this type of stuff.
2024-02-03 13:22:16 +00:00
Jeff Young
0890ac57dd
Improve clarity of default zone settings.
2024-02-03 13:22:16 +00:00
Subaru Arai
d9737a39bf
remove qr footprint generator min pixel size
...
The minimum pixel width should be left for the user to decide, since it
depends on the manufacturer and layer.
2024-02-03 09:37:29 +00:00
Marek Roszko
239cbb4637
Use Fit to size the layer box after sitting min size
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16862
2024-02-02 23:43:05 -05:00
Mark Roszko
b354b24182
Revert "Call Layout after calculating layer combobox size to ensure it takes effect"
...
This reverts commit cd8eb23c3e
2024-02-03 04:32:36 +00:00
Marek Roszko
cd8eb23c3e
Call Layout after calculating layer combobox size to ensure it takes effect
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16862
2024-02-02 23:11:48 -05:00
Jeff Young
7cc663ad77
Schematic parity checking for CLI DRC.
2024-02-02 23:05:37 +00:00
Wayne Stambaugh
2b1bf369f2
Do not parent file or directory dialogs to panels.
...
Parenting dialogs to child windows of top level windows is most likely
not defined behavior. It's also likely that this behavior varies across
platforms so it' best not to risk doing it. wxWidgets does not check if
the dialog parent is actually a top level window. There may be other
places we are doing this with our message dialogs so we should do an
audit.
2024-02-02 09:20:36 -05:00
Alex Shvartzkop
4a1245e85a
STEP: export copper plating for vias/pads (25 micrometers).
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16694
2024-02-02 00:29:03 +03:00
Jeff Young
a485a4815c
Clear text before replacing in ImportSettingsFrom.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16851
2024-02-01 17:37:27 +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
Ma Han
7c6ee16b22
removed the dots for several strings in the settings dialog
...
https://gitlab.com/kicad/code/kicad/-/issues/16651
2024-02-01 08:52:57 +00:00
Alex Shvartzkop
1122d80388
Better support for arcs in tuning patterns.
2024-01-31 23:38:05 +03:00
Alex Shvartzkop
7d1888c756
Add parts of arcs to tuning patterns correctly.
2024-01-31 21:45:01 +03:00
Roberto Fernandez Bautista
e9fbb36538
SHAPE_LINE_CHAIN: Fix and simplify NextShape() + remove PrevShape()
...
NextShape() function was too complex (trying to go back and forwards).
We only used PrevShape() in one place, so removed that usage.
Added QA tests
2024-01-31 19:17:46 +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
Jeff Young
19560f0281
Fix pad edit mode undo.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16835
2024-01-31 15:45:58 +00:00
Marek Roszko
4b12534dbd
Fix property editor for graphic circles
2024-01-30 22:00:09 -05:00
Marek Roszko
c8d24b7613
Add missing IPC2581 cli support
2024-01-30 20:42:34 -05:00
Jeff Young
32d589a121
Don't rely on baselines for fetching DRC_RULE items.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16816
2024-01-30 13:19:04 +00:00
Jeff Young
5b5c6f0474
Init tuning pattern settings from BOARD_DESIGN_SETTINGS.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16819
2024-01-30 13:19:04 +00:00
Jeff Young
88cc029ad3
Enable meander radius for diff-pairs.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16820
2024-01-30 13:19:04 +00:00
Jeff Young
d7471d8c2f
Remove tooltip of questionable value.
2024-01-29 23:24:49 +00:00
Alex Shvartzkop
3ed196859f
STEP export: build a segment from last point for segment case as well.
...
https://gitlab.com/kicad/code/kicad/-/issues/16807
2024-01-29 19:59:41 +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
Jeff Young
ee5e2e56c0
Naming conventions; no functional changes.
2024-01-29 16:00:06 +00:00
Marek Roszko
5c94e0287b
Clean up tuning pattern if undo triggered during drag
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16718
2024-01-28 16:10:59 -05:00
Jeff Young
00aed2aa3e
Don't attempt to test for recursion on unsaved file.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16722
2024-01-28 15:37:08 +00:00
Jeff Young
071d8af5d7
Don't include text in footprint preview widget's autozoom.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16794
2024-01-28 14:35:01 +00: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
Jeff Young
995c4af51d
Deleted items must have their ownership changed to undo/redo.
2024-01-28 11:13:48 +00:00
Jeff Young
9eb8ec7733
Comments and menu-capitalisation.
2024-01-28 11:13:48 +00:00
Jeff Young
27534074ac
Fix errors resulting from FP fields being moved from m_drawings to m_fields.
2024-01-28 11:13:48 +00:00
Jeff Young
ade987c101
Fix logic errors in undo while drawing rectangles.
...
Draw 2 rectangles. Start drawing a third, but don't
complete. Hit Ctrl-Z instead. Boom.
2024-01-27 21:18:50 +00:00
Jeff Young
eacebe63f1
We do undo on individual footprint children now.
...
Adding a commit record for the parent means we replace the
parent first on undo and then if a child was added we can't
find it to remove it.
2024-01-27 20:26:50 +00:00
Jeff Young
07cefa7883
More active tracking of undo/redo items.
2024-01-27 20:02:40 +00:00
Jeff Young
f7752ce0a1
Cleanup dead code.
2024-01-27 17:45:48 +00:00
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
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
Jeff Young
ee0fff97f9
Cleanup formatting and remove dead code.
2023-12-21 22:06:59 +00:00
Mike Williams
1700cad83b
Symbol/Footprint Chooser: remember open libraries
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16383
2023-12-21 09:57:54 -05:00
Jon Evans
c1eef79119
Fix off-by-one error in setting depth
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16421
2023-12-21 08:31:47 -05:00
Jeff Young
d155870275
Sometimes use grid (instead of clearance) for slop radius.
...
This is particularly important both when very large grids
are in use, and when the router hasn't been initialized
with a net yet (ie: in hover mode) and the board clearance
is set to 0.
https://forum.kicad.info/t/new-track-start-position-problem-on-kicad-7-0-10-rc1/47006
2023-12-21 12:58:58 +00:00
Jeff Young
fc85112a72
Create dummyPattern at centre of pickerItem, not end.
...
This keeps TOPOLOGY::AssembleDiffPair() from picking an
arc the segment might be connect to. Since it can't handle
arcs at all, that's bad.
2023-12-20 15:27:29 +00:00
Jon Evans
76d1cc8150
Cleanup
2023-12-19 22:43:15 -05:00
Jon Evans
b1695add9e
Fix warnings
2023-12-19 22:38:34 -05:00
Jon Evans
1c895fe18c
Improve rendering of tuning status popup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16304
Add dedicated UI rendering layers
Switch to screen-space rendering to avoid blurriness
Fix a bug in OpenGL GAL that causes layer
ordering to be broken when using Scale
Fix some issues with VIEW_GROUP layer ordering
2023-12-19 22:38:21 -05:00
Jeff Young
24846d3f44
Repair earlier fix for VVIAs.
2023-12-19 16:48:01 +00:00
Ian McInerney
c7592758cc
Ensure some variables are initialized to known values
2023-12-19 14:32:31 +00:00
Wayne Stambaugh
ffbb7fde74
Improve footprint editor import graphics dialog layout.
2023-12-19 07:39:57 -05:00
Wayne Stambaugh
a4b38fbb80
Coverity warning fixes.
2023-12-18 16:09:13 -05:00
Jeff Young
c7facfd4d4
remove unused variables
2023-12-18 18:54:47 +00:00
Jeff Young
cfa55d958a
performance efficiencies
2023-12-18 18:45:02 +00:00
Jeff Young
1c73d3d967
nullptr safety
2023-12-18 18:36:14 +00:00
Jeff Young
e4baf877c8
performance efficiencies
2023-12-18 18:36:02 +00:00
Jeff Young
8251fca66a
performance efficiencies
2023-12-18 17:39:29 +00:00
Jeff Young
68cbb820a7
performance efficiencies
2023-12-18 17:20:34 +00:00
Mike Williams
3aa20e2008
Create Array: fix mismatched tooltips
...
Partially addresses https://gitlab.com/kicad/code/kicad/-/issues/16391
2023-12-18 12:02:11 -05:00
Jeff Young
11805d6696
performance efficiencies
2023-12-18 17:01:55 +00:00
Jeff Young
3b36307425
Remove shadowed variable.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16363
2023-12-18 14:24:04 +00:00
Wayne Stambaugh
25c03da5a5
Coding policy and Doxygen comment fixes.
2023-12-18 08:32:41 -05:00
Jeff Young
16c8050f3d
Fix event/flag race condition.
2023-12-17 21:55:29 +00:00
Jeff Young
08a00633b1
Make sure child items get edit flags cleared in commit.
...
In the footprint editor, in particular, we often just
add the parent footprint to the commit rather than the
actual modified item(s).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16389
2023-12-17 21:55:29 +00:00
Wayne Stambaugh
eb3fd10af8
Fix obscured object selection issue in board and footprint editors.
...
This selection improvement feature is hidden behind the advanced
configuration key "PcbSelectionVisibilityRatio". It is turned off (1.0)
by default. Value values are from 0.0 to less that 1.0. From testing,
using a value between 0.1 and 0.3 produces the best results.
This fix uses normal alpha blending described in the link below. The
current design only uses the alpha of the object's color. It could be
improved by doing a full color alpha blending but using the color alpha
alone seems to result in satisfactory results.
https://en.wikipedia.org/wiki/Alpha_compositing
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16126
2023-12-17 16:43:56 -05:00
Jeff Young
1b0cc82c56
Move a couple of stragglers to BOARD_COMMIT.
2023-12-17 21:01:31 +00:00
Jeff Young
a96b7116d0
Make sure de-selected items get redrawn.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16385
2023-12-17 17:59:43 +00:00
Jeff Young
b29a56530c
Remove undo-of-ungroup hack.
...
The hack assumed that the parent group would be the first
deleted item of type group in the undo list. While this
will be true when undoing a user ungroup command, it will
not be when undoing an ungroup side-effect, such as when a
member of a group is deleted during UpdateFromPCB.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16384
2023-12-17 15:35:35 +00:00
Alex Shvartzkop
c5ac2337e4
PNS mitering: construct arcs from start, end, angle.
...
Previously, arc endpoint and expected miter endpoint could differ,
causing very small loops later on.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16360
2023-12-17 05:47:07 +03:00
Alex Shvartzkop
3b26f96fe4
Tuning Patterns: read/write min_amplitude.
2023-12-17 05:32:02 +03:00
Jeff Young
9fb06f95a0
Fix msys2 build.
2023-12-16 16:17:24 +00:00
Jeff Young
66a15f6acf
Re-factor frame pointer out of generator API.
2023-12-16 16:11:45 +00:00
Jeff Young
ea3c87f243
Move group/ungroup to COMMIT infrastructure.
2023-12-16 14:17:25 +00:00
Jeff Young
1df84f4d92
Move some PCB_GENERATOR special-cases to propMgr listeners.
2023-12-15 21:04:33 +00:00
Jeff Young
0ab474e596
Comments.
2023-12-15 18:02:52 +00:00
Jeff Young
4844cffc00
Make sure PCB_GENERATOR's lock status follows their members.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16372
2023-12-15 17:37:36 +00:00
John Beard
9b2cde9571
Use FormatBool for PCB_GENERATOR serialisation
2023-12-14 21:22:59 +00:00
John Beard
e41f5efb03
Use modern bool style for footprint locking (locked yes)
...
Add some simple tests for specific footprint load/save checks
(including round-trip stability)
2023-12-14 21:22:59 +00:00
John Beard
481fa1f959
Allow PCB reference image locking and UUID to be saved
...
Add some unit tests for reference image saving/loading.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16334
2023-12-14 21:22:59 +00:00
John Beard
f3f16a1e23
Update format version for reference images and footprint format changes
2023-12-14 21:22:59 +00:00
Jeff Young
a0274a8463
Last fix was too aggressive.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16362
2023-12-14 18:27:33 +00:00
Jeff Young
ec7e3c5bd6
Handle nets in recoverBaseline().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16360
2023-12-14 15:35:09 +00:00
Wayne Stambaugh
8687d5092f
String and dialog layout fixes.
2023-12-13 11:49:34 -05:00
Jeff Young
1fa6b7b5d6
Initialize pre-defined sizes even when using netclass values.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16351
2023-12-13 14:14:58 +00:00
Jeff Young
b9daa073d4
Work around wxWidgets CHAR_HOOK issue.
2023-12-13 13:16:51 +00:00
Wayne Stambaugh
9d6e9b14eb
Fix action tool friendly name string capitalization.
2023-12-13 08:15:19 -05:00
jean-pierre charras
427de4cda6
BOARD::GetBoardPolygonOutlines(): add option to add NPTH as board holes.
...
Used in 3D viewer to truncate plated holes intersecting NPTH.
Fixes #16325
https://gitlab.com/kicad/code/kicad/-/issues/16325
2023-12-13 08:31:29 +01:00
Mike Williams
96e229de0a
kicad-cli: only plot user selected copper layers
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15634
2023-12-12 11:00:49 -05:00
Jeff Young
de070a1d62
Watch out for VVIAs.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16339
2023-12-12 15:45:13 +00:00
Jeff Young
e000acb768
Make sure router honours unconstrained tuning setting.
2023-12-12 13:57:12 +00:00
Jeff Young
ea67430c49
Cleanup.
2023-12-12 13:57:12 +00:00
Ian McInerney
3c0566d318
Don't allow copying markers
...
Fixes KICAD-5FQ
2023-12-11 22:22:19 +00:00
Jon Evans
873023f0c4
Yet another workaround for libgit2 API changes
2023-12-11 16:21:18 -05:00
Wayne Stambaugh
5fa274ead0
Add board layer view stack up sequence from front layer to back layer.
...
The old bottom to top layer stack up sequence from back to front layer was
only used for plotting so it was renamed appropriately. This will be used
for future board object select disambiguation improvements.
2023-12-11 15:07:58 -05:00
Jeff Young
e801e793dc
Prevent copy-elision issues by using smart-pointer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16335
2023-12-11 16:27:31 +00:00
Jeff Young
abd2cf25f2
Re-display hidden router items after cancelling.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16308
2023-12-11 16:02:02 +00:00
Jeff Young
c9b5e3b012
Don't leave undo items in a hidden state.
2023-12-11 15:12:41 +00:00
Jeff Young
453d0566ff
Support properties dialog during tuning.
2023-12-11 15:12:41 +00:00
Mike Williams
61da4fb1af
PCB Fields: operate on field copies in dialogs
...
Makes cancel/undo work properly
2023-12-11 09:37:23 -05:00
Ian McInerney
7554e629a8
Fix visibility of NET_INFO::SetParent
...
Without explictly inheriting the base SetParent method, the compiler was
warning a lot about hiding it due to the different argument type of the
new SetParent method.
2023-12-11 10:07:28 +00:00
Jon Evans
8a474879c5
Make sure DRC engine works at startup
...
If we wait to initialize this until later, some
routing operations will not work properly as the
constraints will be empty
2023-12-10 23:00:19 -05:00
Jon Evans
47ab6f8d03
Set default netclass for newly-added no-net PNS items
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16144
2023-12-10 22:59:36 -05:00
Jeff Young
d8d71a8a6e
Honour "report all errors" for track/edge collisions.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16268
2023-12-10 23:04:57 +00:00
Jeff Young
a567a66d35
Fix tooltip.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16330
2023-12-10 18:53:13 +00:00
Jeff Young
3efc191aa9
Implement ESC processing for choose footprint dialog.
...
Also steals copy processing for details pane from symbol chooser.
2023-12-10 18:13:42 +00:00
jean-pierre charras
057baf306f
Pcbnew: draw shadow PCB_SHAPEs for locked items using continuous lines.
...
Using other shapes gives really strange and ugly results.
Fixes #16327
https://gitlab.com/kicad/code/kicad/-/issues/16327
2023-12-10 15:36:33 +01:00
Jeff Young
931cec862e
Non-plated slots are effectively edges.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16267
2023-12-09 21:06:40 +00:00
Alex Shvartzkop
a161829f86
Use SCOPED_FLAGS_CLEANER more carefully.
...
Other methods used ConvertOutlineToPolygon's SKIP_STRUCT state.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16321
2023-12-09 19:24:51 +03:00
Seth Hillbrand
0db362a907
Fix bug where default courtyard outline set to 0
...
The defaults are stored in mm, this needs to be converted to IU for
proper use in pcbnew
2023-12-08 13:31:13 -08:00
Jeff Young
e3c9cf94b7
Reduce the size of the tuning popups.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16304
2023-12-08 19:50:29 +00:00
Wayne Stambaugh
b7dc7e90ac
Minor string fixes.
2023-12-08 13:09:16 -05:00