49776 Commits

Author SHA1 Message Date
John Beard
b34746e06b Symbol editor: allow editing all related symbols from the treeview
This makes it more straightforward to edit a group of related symbols
(related = all derived from the same parent, including the parent).

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/21067
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/9742
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/11506
2025-09-03 00:24:18 +08:00
John Beard
9b14434fc3 Symbol editor: allow to inject the symbol list into DIALOG_LIB_FIELDS
This will permit editing fields for subsets (e.g. only symbols in
a certain inheritance hierarchy)
2025-09-03 00:24:12 +08:00
Seth Hillbrand
1f1f8699e0 Prevent pads from moving inappropriately
Free pads is a setting unless we are in the footprint editor and needs
to be respected by the alignmen tool

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21626
2025-09-02 09:11:31 -07:00
John Beard
0ede830f54 LIB_SYMBOL: When assigning, clear the parent if needed
This allows assigning a symbol with no parent to a symbol with
a parent to work more as expected.
2025-09-02 23:50:17 +08:00
Seth Hillbrand
de8c4d4b01 ADDED: via_dangling constraint
Allows programmatic suppression of this error if you don't care about it

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18058
2025-09-02 08:26:18 -07:00
jean-pierre charras
e01dfd3158 gendrill_Excellon_writer: remove use of LOCALE_IO 2025-09-02 16:18:09 +02:00
Jeff Young
cff261ce2e Don't allow stack addresses to escape via long-life handlers. 2025-09-02 14:19:17 +01:00
Jeff Young
6a171e11fb Clang got cranky on the emplace_back call. 2025-09-02 12:17:07 +01:00
John Beard
1e272ca21b Geom: use SHAPE_SEGMENT for OVAL
OVAL didn't do anything SHAPE_SEGMENT couldn't already do.
2025-09-02 17:38:26 +08:00
jean-pierre charras
60a5c8b742 WX_INFOBAR: Better calculation of the minimal height.
The height was sometimes to big (case of multi-line text or small initial
size of the parent frame).
The height is now calculated from the height of one line of text, even for
multi-line text.
2025-09-02 07:50:50 +02:00
Seth Hillbrand
9cba910d53 ADDED: Library Table Editor
Edits all symbols in a library at once.  Supports copy/paste, multiple
field assignment and selective coloration based on existing data

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11506
2025-09-01 21:47:14 -07:00
Mark Roszko
35ffb28335 Remove the GetCommonSettings mock
There's some sort of internal issue in boost::test and the turtle mocks that causes test crashes
2025-09-01 22:13:36 -04:00
Jeff Young
98b63389c1 Give Mac dock icon menu a kick.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17596
2025-09-01 22:04:59 +01:00
Jeff Young
ce140d8dfc Formatting. 2025-09-01 22:04:59 +01:00
Mark Roszko
5e2ec53165 Use ADDR2LINE for linux qa for now 2025-09-01 13:57:45 -04:00
Mark Roszko
d5e342b64d Updated turtle mocks to 2.0.0 properly (it was already mostly there being off-tag instead of the mentioned tag) 2025-09-01 13:49:28 -04:00
John Beard
eedfb7a573 Pcbnew: pickup footprints by points, add a selection filter 2025-09-02 01:24:14 +08:00
Ian McInerney
c95c15dd4e Don't throw away old hidden text that was converted to fields 2025-09-01 18:19:46 +01:00
Mark Roszko
4a4725c906 Avoid shadowed variable warning 2025-09-01 12:24:35 -04:00
Mark Roszko
667dccb163 Add rdynamic to QABUILD executables. 2025-09-01 12:20:22 -04:00
Mark Roszko
4fb76404bc Try and disable boost's signal handler 2025-09-01 16:07:03 +00:00
Mark Roszko
267ee811a7 Try and suppress gcc warning 2025-09-01 11:58:13 -04:00
John Beard
e016dc52fd Pcbnew: Add concept of a 'point'
This is a zero-dimensional object that can be used for snapping
and documentation of useful, but non-physical features on a
board or footprint. They do not correspond to any physical
output in exports or plots.

Points do have a "size", but this is a graphical property only
and determines how large they are drawn on the board.

They also have a layer, which allows them to be selected and
made visible according to layer filters.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4691
2025-09-01 23:44:21 +08:00
John Beard
c4d9338097 Pcbnew: sort sexpr text items stably
Currently all texts on the same layer do not sort stably in the file
format. Add sorting criteria to sort by position, angle, size
and so on and finally by string.
2025-09-01 23:44:21 +08:00
John Beard
5d967289ee Eeschema: order pins by number, not position
Also use StrNumCmp, then the pin numbers are ordered exactly the
same way as pads in footprints.
2025-09-01 23:44:21 +08:00
John Beard
262f1fdabb Pcbnew: add layer mode/stackup checks to library parity DRC 2025-09-01 23:44:21 +08:00
Mark Roszko
c9476caebf Fix macOS build 2025-09-01 11:31:03 -04:00
Mark Roszko
a8d6292d61 Use boost::stacktrace w/ unit test handlers to start hunting for that copper sliver wabbit 2025-09-01 11:07:12 -04:00
jean-pierre charras
4953e80122 Fix some compil warnings 2025-09-01 16:22:05 +02:00
JamesJCode
bd04d508e0 Fix some compiler warnings 2025-09-01 14:50:22 +01:00
Seth Hillbrand
82c61efcbd Revert "When re-launching on MacOS, create a new instance"
Needs to launch without jumping back in and allow switching

This reverts commit 1885f4bdee6656d988bf088b048fbfbb70ac0f3d.
2025-09-01 06:39:34 -07:00
Jeff Young
4024a15a17 Don't reference stack variables from a long-life lambda.
In particular, a lambda for conditional menus should
never capture more than `[this]`.  Even the tool's
frame pointer could change.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21615
2025-09-01 12:44:20 +01:00
Jeff Young
0c8e7a7137 Reload symbol chooser on keep symbol, and improve accessibility.
(Respond to hotkey-generated clicks.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7698
2025-09-01 11:45:20 +01:00
Jeff Young
1f44417ad0 Attempt to improve ever-growing-window problems. 2025-09-01 11:45:20 +01:00
jean-pierre charras
5b31b11731 SHAPE_RECT: add Normalize method to assure width or height > 0
ROUNDRECT: add option to normalize the rectangle on creation

if the created rectangle has a negative size(width or height) there are issues
when drawing it.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21613
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21610
2025-09-01 11:56:56 +02:00
Adrián García
5fb55ccb30 jobsets: fix Replace button to overwrite existing files (#19900) 2025-09-01 01:13:23 +00:00
Seth Hillbrand
2eb7ba2fb9 Simplify overlapping points after editing
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21571
2025-08-31 17:48:59 -07:00
Seth Hillbrand
2c4d792358 Stop converging at existing point
Prevents collapsing points into drag element when hitting convergence
2025-08-31 17:48:59 -07:00
Seth Hillbrand
77a2330a33 Fix QA result based on updated behavior 2025-08-31 15:52:38 -07:00
Seth Hillbrand
7b4f4540b4 ADDED: Light snapping to 45° multiples
When modifying the points of a polygon, we add a small snap to the
points preferring multiples of 45° unless you are holding shift

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15709
2025-08-31 13:47:34 -07:00
Seth Hillbrand
1885f4bdee When re-launching on MacOS, create a new instance
Allows people to run multiple copies of KiCad.  Only launches new copies
if the TLW is already shown.  Otherwise, sticks with the default MacOS
behavior of raising the running window
2025-08-31 12:54:55 -07:00
Seth Hillbrand
eba8d0748c Don't show angles for non-polygons 2025-08-31 12:54:38 -07:00
Seth Hillbrand
f5904cf2ac Prevent main KiCad window from expanding based on DPI events
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21602
2025-08-31 11:54:53 -07:00
Seth Hillbrand
bbc762a546 ADDED: Angle preview for polygon mod
Shows angle for the current and adjacent corners and whether they are
congruent
2025-08-31 11:49:41 -07:00
Seth Hillbrand
c6c8e19e39 The smallest angle between two segments is 0-180
Not 0-90.  Subtracting 180-angle and then taking the smaller of angle
and 180-angle will always get you 90 or less.  But obtuse angles are not
< 90
2025-08-31 11:49:41 -07:00
Jeff Young
1309b436da Allow stitching of graphic shapes. 2025-08-31 19:32:48 +01:00
Jeff Young
c47b7459aa Set free vias to graphic net if available.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21578
2025-08-31 19:21:29 +01:00
Jeff Young
a2e98fb53c Don't set point to a value we're not going to keep.
It just causes flicker.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/19947
2025-08-31 17:13:11 +01:00
Seth Hillbrand
2321285c16 Maybe don't need eary exit here 2025-08-31 08:11:44 -07:00
Seth Hillbrand
2cdeb0cd7c Second pass at fixing warping and grids
First attempt caused additional problems for #21535

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18196
2025-08-31 07:54:21 -07:00