49479 Commits

Author SHA1 Message Date
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
Seth Hillbrand
dad60f99c0 More GDI conservation 2025-08-26 06:04:30 -07:00
Seth Hillbrand
4660c72c69 Fix qa issue in api 2025-08-26 05:45:08 -07:00
Seth Hillbrand
b5f3d4cf7b Reduce GDI usage by caching layer swatches 2025-08-26 05:29:02 -07:00
Seth Hillbrand
412fc1e6d9 Fix pcbnew QA mock 2025-08-25 22:08:05 -07:00
Seth Hillbrand
8997b7bcf7 Remove old HasCorner 2025-08-25 22:06:26 -07:00
Seth Hillbrand
5b86f20476 Suppress unneeded move corner context
Doesn't really make sense in terms of a group

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21552
2025-08-25 22:04:32 -07:00
Seth Hillbrand
7841476ed6 Make all 4 corners draggable
When scaling, maybe you want to drag from the bottom left or top right

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21554
2025-08-25 22:02:20 -07:00
Seth Hillbrand
a034c30563 Properly add group size mod to commit
Allows escaping the current state

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21553
2025-08-25 21:59:13 -07:00
Seth Hillbrand
6dd03bc735 Fix screen scaling
We don't use wxWidget DPI (which is the screen DPI) for our on-screen
display.  Instead, we use 91 (?!?).  Make this configurable in advanced
config and use the set value in our scaling widget
2025-08-25 18:03:46 -07:00
Seth Hillbrand
1df5ad0e4c Fix circle scaling
We scale the full circle, which is just defined by its points

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21551
2025-08-25 18:03:46 -07:00
Seth Hillbrand
9013ddae43 Suppress deprecation warnings
Treats thread-pool as a system library so we don't see the deprecation
warnings that we're not going to address anyway
2025-08-25 16:31:39 -07:00
Seth Hillbrand
bfe805a221 Add user-controlled scaling factor
Lets the user decide what 100% zoom is for their system based on a
slider.

This is inspired by Inkscape's custom scaling widget

Fixes https://gitlab.com/kicad/code/kicad/-/issues/19256
2025-08-25 14:37:07 -07:00
Addo White
843eea259d Fix for Cursor rendering on Linux+EGL+Nvidia in accelerated graphics mode
EGL/NVidia can sometimes clip the cursor based on its plane regardless of the depth mask.  This avoids the issue by forcing the cursor up over the existing plane.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12183
2025-08-25 14:35:33 -07:00
Jeff Young
cc9ec7c01c Move assignment operator for SCH_SHEET_PATH. 2025-08-25 20:48:37 +01:00
Jeff Young
537ea6ee0c Move assignment operator for TRIANGULATED_POLYGON. 2025-08-25 20:48:37 +01:00