Seth Hillbrand
e282dca102
Add configurable hysteresis to PCB snapping
...
Makes it harder to enter and harder to exit a snap. ideally this should
help make snapping more intuitive and easier to use. Once you have a
snap, it is harder to lose it but it avoids being overly snappy in the
begining
2025-08-29 16:21:35 -07:00
Seth Hillbrand
a811f61c39
Make Expand Connection respect the filter
...
Prevents expansion that would require traversing elements that are
disabled in the selection filter
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21581
2025-08-29 16:11:38 -07:00
Seth Hillbrand
50274352b1
Skip exterior segments when splitting
...
We need to avoid fracture points when choosing how to split exterior
segments
2025-08-29 15:50:34 -07:00
Seth Hillbrand
ec7b831be3
ADDED: Search feature for html message box
...
Allow search for text in e.g. the custom rules examples
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21550
2025-08-29 10:29:11 -07:00
Jeff Young
9525fae7c8
Run collision check on correct layer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21586
2025-08-29 17:13:16 +01:00
Seth Hillbrand
e8cec41355
ADDED: Indication of filter blocking
...
If the selection filter has blocked all selections under the cursor,
show a subtle flash on which filter(s) did the blocking. Helpful for
people getting frustrated by not being able to select locked items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20487
2025-08-29 07:08:27 -07:00
Jeff Young
8a60893249
Regularize content of item descriptions.
...
1) Use sentence capitalisation
2) Show text of text items
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21582
2025-08-29 12:03:55 +01:00
Mark Roszko
7115f9e716
Drop the FromChar in ConvertNotation
2025-08-28 18:27:06 -04:00
Jeff Young
736d87aa35
ADDED: directive labels checkbox to Schematic Editor Display Settings panel in Preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21577
2025-08-28 17:49:06 +01:00
Jeff Young
eb6b2de648
Fix for the fix (for clang).
2025-08-28 13:20:20 +01:00
Jeff Young
83fab7b02c
Fix undo for move of group-of-shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21563
2025-08-28 13:20:14 +01:00
Mark Roszko
af852ea15d
Protect from_chars from clang
2025-08-28 07:11:08 -04:00
Mark Roszko
fd57f637ac
Revert "Compilers should have complete from_chars support now"
...
This reverts commit 3a8dd87db4513b7c7ede748a4f30ef5192e1752b.
2025-08-28 07:07:44 -04:00
Jeff Young
5c240efd75
Consolidate to single copy of deletableItems.
2025-08-28 11:54:24 +01:00
Mark Roszko
b01c1f39c1
Add missing header
2025-08-28 01:22:08 +00:00
Mark Roszko
3e019ee4ae
pcb plots dont need LOCALE_IO anymore
2025-08-27 20:44:16 -04:00
Mark Roszko
4f32146f9a
nlohmann json is locale independent (uses to_chars)
2025-08-27 20:41:47 -04:00
Mark Roszko
9bc463606a
More redundant LOCALE_IO
2025-08-27 20:11:26 -04:00
Mark Roszko
747106ea37
Redundant include
2025-08-27 20:07:58 -04:00
Mark Roszko
94d83773d0
Drop a LOCALE_IO via std::from_chars
2025-08-27 20:07:28 -04:00
Mark Roszko
3a8dd87db4
Compilers should have complete from_chars support now
2025-08-27 20:07:28 -04:00
Mark Roszko
2cf6ec2411
Remove some obsolete LOCALE_IO
2025-08-27 20:07:27 -04:00
Seth Hillbrand
408e1feae2
Fix Chessboard splitting
...
Due to a bug(?) in Clipper2, 45° collinear edges may not be detected.
See https://github.com/AngusJohnson/Clipper2/issues/1008 for current
status. In the meantime, we pre-process these to remove the extraneous
joints preventing our triangulation from getting mixed up
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18176
2025-08-27 15:00:58 -07:00
Seth Hillbrand
ea8206eca5
Don't both designers with unneeded changes
...
If we are not asking for fields to be removed when updating, then don't
say we're doing anything if all we have to do is remove fields
2025-08-27 13:30:44 -07:00
Jeff Young
6dd4e01f16
ADDED: custom body styles.
...
(Also moves editing of unit display names to the
Symbol Properties dialog and retires the Set Unit
Display Name dialog.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16069
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14843
2025-08-27 18:11:56 +01:00
Mark Roszko
3eb6caaec6
Move gencad writer to {fmt}
2025-08-27 08:11:12 -04:00
jean-pierre charras
9725ac2215
GERBER_JOBFILE_WRITER: fix incorrect layer id in File Attributes for inner layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21569
2025-08-27 13:25:24 +02:00
jean-pierre charras
b349f1988a
PAD: better HitTest( const VECTOR2I& aPosition, int aAccuracy, PCB_LAYER_ID aLayer )
2025-08-27 13:23:02 +02:00
jean-pierre charras
963aa47778
Pcbnew: fix teardrop generation for pads having different shapes by layer.
...
Teardrop generator used pad::HitTest not testing the hit of a specific layer.
It created false test for some complex pads. Now use a test specific to a layer.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21560
2025-08-27 11:03:00 +02:00
Seth Hillbrand
2f21414186
Revert "Allow netlisting for multi-unit parts"
...
Breaks QA. need to debug before re-committing
This reverts commit 635445c096c8624a47c9e0fdd6c1ebefa668e973.
2025-08-26 22:07:40 -07:00
Seth Hillbrand
8bd6da3ec9
Revert "Fix build error"
...
This reverts commit 19e4c3f498b8b66eacd2b651a570f0f137a8b6b2.
2025-08-26 22:07:26 -07:00
Mark Roszko
19e4c3f498
Fix build error
...
std::string does not have a overload for appending a wchar
2025-08-26 20:25:56 -04:00
modbw
57ad779797
Fix net assignment messed up in Eagle import
...
When there is a polygon in the Eagle project withput any pad connected
netCode was not incremented and so the wrong nets were assigned to the
following elements.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21243
2025-08-26 17:11:21 -07:00
Adrián García
46084c04b9
pcbnew: avoid missing or wrong lines inside hatched fill polygons
...
Avoid considering duplicated intersections between a segment of the
hatched fill and the polygon outline or vertices.
Also, check whether the segments of the lines are inside or outside
the polygon, so no lines are drawn outside when the shape is complex.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20450
2025-08-26 16:47:26 -07:00
Seth Hillbrand
635445c096
Allow netlisting for multi-unit parts
...
Merges pin map from each unit into coherent model prior to exporting for
spice simulation
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1779
2025-08-26 15:02:37 -07:00
Seth Hillbrand
394f6be509
Formatting
2025-08-26 14:47:04 -07:00
Seth Hillbrand
fe4de09d71
Add undo/redo functionality to dialog boxes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18986
2025-08-26 14:39:19 -07:00
Seth Hillbrand
b832ae7f45
Add checks to copper sliver QA
...
Fedora still doesn't like our copper sliver QA sometimes. This adds a
bit more to try and get to the bottom of the issue
2025-08-26 13:27:03 -07:00
Seth Hillbrand
8592b2ee70
JP's patch to fix crash in routing empty board
2025-08-26 12:41:54 -07:00
Seth Hillbrand
1e76f1a11d
Ensure that we check tracks exiting pads for gaps
...
The DP gap check should look for sections of track that are coupled by
wider than a given spacing. Our primitive check of looking for
collisions on the segment between the start poins causes tracks exiting
but not entering pads to be excluded.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21561
2025-08-26 12:39:59 -07:00
Seth Hillbrand
0a767acb3a
Wrap net_selector widget for properties
...
Provides consistent interface to modify/filter nets in property panel
and dialogs
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17643
2025-08-26 11:50:12 -07:00
Seth Hillbrand
29c4d9b197
Add width/height adjustment to reference image
...
Allows setting specific width or height on a reference image instead of
just scale
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18567
2025-08-26 11:22:32 -07:00
Seth Hillbrand
2db8c6eca0
Maintain group membership when shoving
...
Keep track of the original group membership and assign this to the newly
created element as well
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20862
2025-08-26 10:34:10 -07:00
Seth Hillbrand
9c577a4f4c
Allow mid-track teardrops
...
Tracks passing through but not stopping at pads/vias should still get
teardrops
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21246
2025-08-26 10:04:52 -07:00
John Beard
0f0527bd03
Pcbnew: fix sensitivity of via placement to large grids
...
Another case where large grids are overly "grabby" for snaps.
In this case, because the via was moved to the grid-snap first,
and then THAT position was used to look for things like pad-snaps,
the pad snaps would not be found if a coarse grid meant the cursor
was outside the pad.
Instead, use the mouse position when looking for the non-grid snaps
in VIA_PLACER::SnapItem.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18626
2025-08-26 23:34:46 +08:00
John Beard
3d8803f579
Pcbnew: use R-tree for pad checks in via place tool
...
Otherwise this is an O(n-pads-on-board) operation for every new
candidate via position.
2025-08-26 23:34:46 +08:00
John Beard
4bebd09bd0
EDA_LIST_DIALOG: Simplify ctor args
...
Sometimes you want to add these in the ctor of the child
class based on some logic and having to construct the vector
in the init-list is a bit ugly.
Theoretically allows to not require a vector too.
2025-08-26 23:34:46 +08:00
John Beard
7f4a1bf64a
Sym edit: allow to flatten symbol on save as
...
Sometimes, you don't want to drag the whole inheritance hierarchy with
you.
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/8895
2025-08-26 23:34:46 +08:00
Seth Hillbrand
ab93dd8a68
Avoid trying to get a display when headless
2025-08-26 06:48:36 -07:00
Seth Hillbrand
cb620338db
Prevent stale names in fp browser
...
When switching libraries, if there is an additional footprint with the
same name, we don't want to select it by default as this will prevent
updating the footprint display. Instead, force the update
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9763
2025-08-26 06:21:59 -07:00