Jeff Young
06a8517818
Further improvements to cache locking.
...
In particular, don't hold cache lock while doing computations.
2024-03-07 13:20:20 +00:00
Armin Schoisswohl
4dcec60bf4
add include <mutex> to fix compilation under linux
2024-03-07 13:20:16 +00:00
Armin Schoisswohl
bb9448edcb
change m_CachesMutex to shared_mutex and do shared locking for read access in zone BBox calculations
2024-03-07 13:20:13 +00:00
Armin Schoisswohl
991ff71f33
fix deadlock in DRC "Checking keeopouts & disallow constraints"
2024-03-07 13:20:10 +00:00
Armin Schoisswohl
4590455ab2
protect cache lookups in pcbnew/zone by locking the mutex before calling find, fix #17237
2024-03-07 13:20:06 +00:00
Yon Uriarte
7520a8b316
Avoid updating max clearance while in dtor
...
Max clearance is updated by IncrementTimeStamp(), which is called when in the FOOTPRINT dtor and ZONE dtor. This can cause issues when iterating over all footprints as the footprints may be delete-ed
Fixes https://gitlab.com/kicad/code/kicad/issues/17269
2024-03-06 18:48:49 +00:00
SubaruArai
8b3fc41ee5
Update QR footprint wizard
...
- Allows more than 62 bytes
- Adjusts size of code based on data or parameters
- Allows selection of ECC
2024-03-06 18:39:40 +00:00
Jeff Young
20efeef5ae
Apply anti-walk algorithm only to textboxes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16481
2024-03-06 13:51:27 +00:00
Yon Uriarte
4e8e14ae3a
Responsive: Avoid excessive repaints when toggling a netclass' rastnest visibility.
...
Toggling netclasses visibility toggles the member nets' visibility one by one. Defer redrawing until all toggling is done.
Fixes https://gitlab.com/kicad/code/kicad/issues/17115
2024-03-05 14:32:12 +00:00
Alex Shvartzkop
a4da829ccc
Fabmaster (CADENCE ASCII): import dimensions graphics.
...
See https://gitlab.com/kicad/code/kicad/-/issues/17239
2024-03-04 19:51:28 +03:00
Alex Shvartzkop
cb4ace5561
Fabmaster (CADENCE ASCII) import: fix position and orientation of footprint graphics.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17239
2024-03-04 19:51:27 +03:00
Mike Williams
36331e259a
VRML: add options to exclude DNP/unspecified types like STEP exporter
2024-03-04 10:10:34 -05:00
Alex Shvartzkop
30573beb48
EasyEDA Std: fix importing footprints from footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17264
2024-03-04 16:34:51 +03:00
Alex Shvartzkop
951c550c1e
EasyEDA Std PCB: fix crash when Name/Prefix type text is not in a footprint.
2024-03-04 15:09:31 +03:00
jean-pierre charras
4a945172db
Pcbnew: do not select a PCB_REFERENCE_IMAGE if the LAYER_DRAW_BITMAPS is not visible.
...
LAYER_DRAW_BITMAPS layer controls transparency and visibility of images on the board.
Fixes #16282
https://gitlab.com/kicad/code/kicad/-/issues/16282
2024-03-04 11:46:45 +01:00
Seth Hillbrand
02cdb0c6b9
Mask aperture pads can have multiple layers
...
But as long as they don't have copper, we should treat them as mask
apertures
2024-03-03 20:56:39 +00:00
Alex Shvartzkop
85b1978408
Use 64-bit type to represent microseconds.
...
int and long are 32-bit on Windows, causing overflows.
2024-03-03 21:40:26 +03:00
Wayne Stambaugh
3eb5c52073
Improve zone manager dialog layout.
2024-03-03 12:09:01 -05:00
JamesJ
66b378087a
Remove close button from pcbnew search panel
...
For consistency with the other panels, removes the circular 'x' close
button from the search panel. Toggling visibility remains possible
through the View menu
2024-03-03 16:18:23 +00:00
Marek Roszko
0c8e08ed58
Move some language changes to a event on the frame
2024-03-03 11:02:26 -05:00
jean-pierre charras
0bde79bd6c
PCB_PAINTER: do not draw PCB_SHAPEs on netname layer in FP editor.
...
Fixes #17250
https://gitlab.com/kicad/code/kicad/-/issues/17250
2024-03-03 17:00:17 +01:00
Yon Uriarte
fe1c73ed7c
Performance: Cache BOARD::GetMaxClearanceValue
2024-03-03 13:54:46 +00:00
jean-pierre charras
f6cf78fd7c
plot_board_layers.cpp: when plotting pads, Save/restore corner radius ratio
...
instead of corner radius.
The corner radius comes from corner radius ratio, so saving/restoring the corner
radius can create rounding errors when trying to recalculate the ratio from the radius.
2024-03-03 11:56:41 +01:00
Jon Evans
ed18a9bcc2
Correctly handle footprint graphic knockouts for no-net case
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17223
2024-03-02 15:39:07 -05:00
Jon Evans
3a3ceb8ffc
Allow specifying a minimum for a via_count constraint
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17234
2024-03-02 15:26:28 -05:00
Roberto Fernandez Bautista
a4929f9c27
Step exporter: handle circles correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17137
2024-03-02 19:09:33 +01:00
Roberto Fernandez Bautista
d458bcad16
kicad_cli fp ugrade: create directory with extension
2024-03-02 18:21:13 +01:00
jean-pierre charras
d81605f4ea
DIALOG_PAD_PROPERTIES: fix a incorrect test to show a warning.
2024-03-02 17:16:27 +01:00
Roberto Fernandez Bautista
4508512343
Sanitise filename before saving footprint library
2024-03-02 13:06:23 +01:00
Roberto Fernandez Bautista
a4a99e3aff
kicad_cli: Allow upgrade of legacy and non-kicad footprint libraries
2024-03-02 13:06:23 +01:00
Jeff Young
bd1d449cd3
Check for NETINFO_ITEM before dereferencing it.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17230
2024-03-02 11:37:22 +00:00
jean-pierre charras
1ee49cca5e
FOOTPRINT_CHOOSER_FRAME: rework on bottom panel to allow a long string in
...
the check box for filter by FP names to be displayed without overlapping other
widgets.
2024-03-02 11:24:54 +01:00
Jan Wichmann
1297ddc88d
pcbnew: Added default master pad properties
...
CHANGED: Automatically selects the right pad type for the footprint type. Resets the pad properties if the master pad properties do not match the pad type.
https://gitlab.com/kicad/code/kicad/-/issues/16563
2024-03-02 00:13:39 +00:00
Seth Hillbrand
0129191ec0
Limit where the intersection of two lines can be
...
This avoids generating lines where we are unable to select them because
they get too close to the border
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16959
2024-03-01 15:57:24 -08:00
Jeff Young
8dddd9cc2c
Separate "use board stackup colors" into separate checkbox.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17085
2024-03-01 23:45:06 +00:00
Seth Hillbrand
14667e2033
Don't wait for unused events
...
We only need the UI update and mouse/keyboard while updating our DRC
window. Waiting for other events gets into a race condition with the
schematic editor that can cause a hang
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17003
2024-03-01 15:21:42 -08:00
Seth Hillbrand
d3334ed9f0
Do not re-number aperture pads
...
Aperture pads do not have numbers, so reserving space for them will
cause the actual numbered pads to become out of order
2024-03-01 13:04:19 -08:00
jean-pierre charras
005affd473
FOOTPRINT_CHOOSER_FRAME: Fix a UI problem specific to Linux
...
On the bottom on the frame, some widgets were not correctly placed.
Fixes #17217
https://gitlab.com/kicad/code/kicad/-/issues/17217
2024-03-01 19:56:22 +01:00
Ethan Chien
8d19d27483
Fix zone manager crash when no board is loaded
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17187
2024-03-01 15:58:01 +00:00
Alex Shvartzkop
defcb49ac8
Support Altium Schematic ASCII import
2024-02-29 20:49:20 +00:00
aris-kimi
24529e5242
ADDED: library tree context menu option to open sym/fp library files from the defined text editor.
...
Short description:
Works for Symbol and Footprint Editor behind an advanced config option.
For Symbol Editor it is shown for a single item selection (library or symbol).
For Footprint Editor it is shown for a footprint selection.
(fp editor allows a single tree item selection only).
Option stays hidden if current frame has been modified.
Also small fix(?) for similar action to the project manager.
(Call for the Execution has moved inside the file loop.)
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15736
2024-02-29 19:01:59 +00:00
Jeff Young
c23550dc0b
Unflip when going to viewport which isn't flipped.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13773
2024-02-29 17:37:48 +00:00
Alex Shvartzkop
39a0a81832
EasyEDA Std import: support multiline text on PCB.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17171
(cherry picked from commit 0dab086f0c
)
2024-02-29 00:54:46 +00:00
JamesJ
b8748c4ef8
Add import netclass color menu items to PCB appearance widget
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16908
ADDED: Context menu item in PCB appearances widget to import netclass
color from schematic.
ADDED: Context menu item to reset PCB netclass color (replicating
same menu item from Nets inspector)
2024-02-28 23:13:15 +00:00
Jeff Young
141de7ac11
Even up spacing in dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16391
2024-02-28 22:18:27 +00:00
Seth Hillbrand
6a8d2a7eb3
Store group id rather than group
...
We only need the group storage id for lookup. Storing the KIID instead
of a copy of the group avoids unneeded overhead
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17175
(cherry picked from commit 7d1adff071
)
2024-02-28 13:27:38 -08:00
Jeff Young
27031dd2c5
Check env vars when testing for unresolved variables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17174
2024-02-28 17:16:58 +00:00
Jon Evans
9e7b4b7f89
Avoid nullptr dereference when loading group info
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17154
2024-02-27 19:43:21 -05:00
Jon Evans
0df5cf7f75
Expose grid origin action in more places
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17007
2024-02-27 18:50:44 -05:00
Seth Hillbrand
a8880fb63e
Fix memory leak in net inspector dialog
2024-02-27 19:49:13 +00:00