49665 Commits

Author SHA1 Message Date
Daniel Treffenstädt
850c773f9d
Fixed bug where via violations were sometimes counted multiple times. 2025-09-08 09:49:41 +02:00
Daniel Treffenstädt
71224ca4bc
Added via distance check to run condition for drc check 2025-09-08 09:49:41 +02:00
Daniel Treffenstädt
b011ca8a75
Check for zone and pad bounding boxes, prevent spoke double counting. 2025-09-08 09:49:41 +02:00
Daniel Treffenstädt
7a6a701960
Added Pad via distance drc check 2025-09-08 09:49:40 +02:00
Daniel Treffenstädt
b836e55f7f
Made drc item message shorter. 2025-09-08 09:49:40 +02:00
Daniel Treffenstädt
443c1ebb4c
Renamed pad_fanout_ratio provider to fanout_checks 2025-09-08 09:49:40 +02:00
Daniel Treffenstädt
0f2b812c45
Implemented Fanout Force and Torque drc checks 2025-09-08 09:49:40 +02:00
Daniel Treffenstädt
b20b970826
Added: Footprint fanout force and torque constraints 2025-09-08 09:49:39 +02:00
Daniel Treffenstädt
1a4617f201
Added basic function for footprint symmetry 2025-09-08 09:49:09 +02:00
Daniel Treffenstädt
234a34dbf5
Fixed pad size determination 2025-09-08 09:49:09 +02:00
Daniel Treffenstädt
ea67c4318e
Added units to custom drc rules 2025-09-08 09:49:08 +02:00
Daniel Treffenstädt
924541036c
Felt cute, might revert later: Renamed DRC Error from width to ratio? 2025-09-08 09:48:34 +02:00
Daniel Treffenstädt
26e87986bb
Also renamed fanout_width class to fanout_ratio 2025-09-08 09:47:28 +02:00
Daniel Treffenstädt
8eec521482
Also renamed source file from width to ratio 2025-09-08 09:47:28 +02:00
Daniel Treffenstädt
68d3e19a69
Renamed constraint fanout_width to fanout_ratio 2025-09-08 09:47:27 +02:00
Daniel Treffenstädt
0580f57c71
Added basic pad fanout width drc test provider
This is only a rough implementation and is subject
to change.

At the moment it simply takes the bounding box of
the pad and applies the percentage value to the
minor axis. This might be okay for basic shapes,
but complex pad shapes need a better
implementation.
2025-09-08 09:46:12 +02:00
Seth Hillbrand
0c35068e8d ADDED: Optional flashing with cross-probing
Sometimes it is hard to find an element especially if we do not zoom to
the part.  The flash should help draw your eye to the relevant part

Fixes https://gitlab.com/kicad/code/kicad/-/issues/19842
2025-09-07 18:08:04 -07:00
Seth Hillbrand
f66cbaf43a ADDED: Stacked pin notation support
Implement bracket notation for stacked pins ([1,2,3], [1-4], [1,3,5-7]).
Automatic net naming proceeds based on the smallest logical pin number
in stacked groups.

Provide explode/reform commands in symbol editor for conversion.
Supports arbitrary ranges including BGA alphanum ranges like
[AA1-AA3,CD14-CD22]

Adds some additional QA and trace logging

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2004
2025-09-07 14:59:51 -07:00
Seth Hillbrand
ac1b44715b Only dogbone inside corners
Fixes https://gitlab.com/kicad/code/kicad/issues/18880
2025-09-07 13:02:44 -07:00
Jeff Young
b98621c8c8 Formatting. 2025-09-07 20:43:04 +01:00
Jeff Young
28141ed350 Be more consistent with periods at the end of sentences.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21614
2025-09-07 17:54:22 +01:00
Jeff Young
c33da162d6 Be more consistent with periods at the end of sentences.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21614
2025-09-07 17:51:52 +01:00
jean-pierre charras
288c93198a Fix compatibility with wxWidgets 3.3.1 2025-09-07 18:46:54 +02:00
jean-pierre charras
46c8a6ee95 DIALOG_LIB_FIELDS_TABLE & DIALOG_SYMBOL_FIELDS_TABLE: avoid empty m_viewControlsGrid.
The fix is more a workaround: if all columns of m_viewControlsGrid are removed by
the right click menu and the grid is empty, there are no way to re-add a column.
When happens, this workaround re-add a column when reopening the dialog to avoid
a empty grid.
2025-09-07 18:26:48 +02:00
Mark Roszko
bbecc4eaa8 Add UUID to PCB tables to ensure stable file sort 2025-09-07 09:56:12 -04:00
Jeff Young
fef84a2c6a Dirty symbols when modified.
Also show changes in library tree and canvas when
"Apply" button is clicked.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21659
2025-09-07 13:49:59 +01:00
Mark Roszko
963ec84587 Edit Windows-CI.yml 2025-09-07 01:33:01 +00:00
Mark Roszko
4a87dbe472 Edit Windows-CI.yml 2025-09-06 21:24:53 +00:00
Mark Roszko
7d67f82217 Add use of gitlab nuget feed as binary cache 2025-09-06 21:21:41 +00:00
Jeff Young
b7fee045e3 Performance tweak. 2025-09-06 21:50:03 +01:00
Jeff Young
0e5a87546b More consistent action on Show search panel hypertext link.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21665
2025-09-06 21:29:41 +01:00
Jeff Young
5489daf279 ADDED: collapse/expand for view controls in SYMBOL_FIELDS_TABLE...
... and LIB_FIELDS_TABLE.
2025-09-06 19:06:49 +01:00
Mark Roszko
922699f388 Update ngspice to 45.2 2025-09-06 13:35:28 -04:00
Jeff Young
702f774a1f Bring DIALOG_LIB_FIELDS into line with DIALOG_SYMBOL_FIELDS_TABLE. 2025-09-06 15:10:30 +01:00
Mark Roszko
264029c8e9 Update kicad-vcpkg and ngspice 2025-09-06 08:46:34 -04:00
jean-pierre charras
c889a7fa16 DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR_BASE: fix a incorrect widgets type
Fix also a minor issue in DIALOG_FOOTPRINT_PROPERTIES_BASE

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21662
2025-09-06 13:09:39 +02:00
Adrián García
fb558eee3c Fix crash in LIB_SYMBOL::SetUnitCount when reducing unit count
When decreasing the number of units in a symbol, the previous code erased
items directly from m_drawings using a single iterator. Because m_drawings
is a MULTIVECTOR, this could invalidate iterators and attempt to erase
from the wrong bucket, leading to segmentation faults.

This patch iterates bucket by bucket and erases items belonging to units
greater than the requested count. This ensures iterator safety and avoids
accessing invalid memory.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21631
2025-09-05 12:35:54 -07:00
Wayne Stambaugh
6f352ccd96 Improve symbol fields table editor undo/redo memory usage.
- Do not add a modify action to commit for symbols that have no changes.
- Do not add a modify action to commit for each instance of shared symbols.
2025-09-05 11:46:05 -04:00
Jeff Young
c163f0a24c CHANGED: better real-estate usage in Edit Symbol Fields dialog.
1) Moved view controls list to a wx_grid.
2) Allow show/hide of columns in view controls.
3) Allow editing of BOM Names in grid without long-click on Mac.
3) Added column show/hide states and sash pos to prefs.
4) Decreased mininum sash pane width to allow wider main grid.
5) Simplified presentation by moving "include" and "cross-probe"
   settings to config menu.
2025-09-05 13:00:50 +01:00
Jeff Young
fd7da138fd Cleanup dead code. 2025-09-05 13:00:50 +01:00
jean-pierre charras
3bdf44d4a4 PCB_DIM_CENTER: fix incorrect bounding box size for 90deg cross.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21643
2025-09-05 09:40:33 +02:00
jean-pierre charras
168975b0a8 Fix a compil warning on MSYS2 (POINTS collide with a Windows header define)
POINTS is renamed LY_POINT. no actual code change
2025-09-05 09:34:49 +02:00
Mark Roszko
03b3b642b0 Another qa header fix 2025-09-04 21:33:27 -04:00
Seth Hillbrand
f9f5bb9ed1 Consider keywords as required
Because they actually are

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21635
2025-09-04 16:54:53 -07:00
Mark Roszko
4254673be5 Fix windows build, missing wx header 2025-09-04 19:54:21 -04:00
Mark Roszko
0ce952e705 Fix windows build, IN conflicts with windows header 2025-09-04 19:52:34 -04:00
Seth Hillbrand
9ffb0c8b96 wxString explicit conv 2025-09-04 14:57:16 -07:00
Seth Hillbrand
44cc5b8e93 Move to fmt 2025-09-04 14:57:16 -07:00
Seth Hillbrand
a857ea77d9 ADDED: Text expression evaluation
Arbitrary text strings now support full evaluation with a rich
functional language

Fixes https://gitlab.com/kicad/code/kicad/-/issues/6643
2025-09-04 14:57:16 -07:00
Seth Hillbrand
bae5d43c45 Sadly, msys2 doesn't like condition variables 2025-09-04 13:58:38 -07:00