Ian McInerney
10988478da
Take footprint edge cuts into account in the board statistics
...
Reported in https://gitlab.com/kicad/code/kicad/-/issues/18245
2024-06-29 03:11:54 +01:00
Ian McInerney
c8ebcc8e0f
Only modify visibility checkboxes for layers with them
2024-06-29 03:05:57 +01:00
Seth Hillbrand
f2ab07c8b4
Don't spam the event processor with SelectedEvents
...
If we are appending a sheet, this can be hundres of new elements. We
don't want to pass multiple selected events or we'll do the repeated
processing, slowing down our update
2024-06-28 15:02:07 -07:00
Jeff Young
7962ab07e7
Improve consistency of clearance line painting.
...
Showing the clearance area is not obvious as the clearance
extends from the pad on flashed copper layers and from the
hole on non-flashed copper layers. Because of this, we
choose to not display clearance lines at all on non-copper
active layers as it's not clear which we'd be displaying.
We follow the same rule for tracks for consistency (even
though they don't have the same issue).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18287
2024-06-28 22:10:22 +01:00
Jeff Young
a68b3a7778
Size conversion warning reduction.
2024-06-28 22:10:22 +01:00
Jeff Young
9e6884f656
ADDED: support for ERC & DRC errors and warnings in text variables.
...
Also fixes some bugs in storing exclusions in
symbol fields and children.
Also fixes some bugs in checking for resolved text
variables in symbol children.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18279
2024-06-28 22:10:22 +01:00
Jeff Young
16340e6cf4
Support both short and long item descriptions.
2024-06-28 22:10:22 +01:00
Jeff Young
c4f61c2eaf
Check for unresolved fields in labels.
2024-06-28 22:10:22 +01:00
Alex Shvartzkop
0acc4dc286
If we didn't use all reserved vertices in OpenGL GAL, show the error to user.
...
It will cause graphical artifacts, and it's not clear to what's happening if the message is never shown.
See https://gitlab.com/kicad/code/kicad/-/issues/18298
2024-06-28 23:15:47 +03:00
Seth Hillbrand
9e82d7c93c
Decrease font error allowance
...
This is activated when changing bezier into segments and sets the
minimum allowance in 1/16 of the font's internal units.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18300
2024-06-28 12:11:49 -07:00
Seth Hillbrand
f48a105357
Modify some int32 ops to avoid potential overflow
2024-06-28 08:04:07 -07:00
Seth Hillbrand
d033f93d89
Fixup Altium import rectangle handling
...
Ensure we have positive sizes
Keep rectangles when rotating by multiples of 90
2024-06-27 16:40:25 -07:00
Seth Hillbrand
234230801f
Fixup Altium QA.
...
Apparently, Footprint export does not export the internal rule area
layers. Saving directly does
2024-06-27 16:38:58 -07:00
Seth Hillbrand
51eb7aa5b5
Fixup for Altium pad/fill importer
...
The previous commit merged pads with copper areas. This was appealing
but broke when the pad and the area were meant to have different
size/shape technical layers. Small pads = Small paste. Instead, we do
not merge the pads but we assign them to have the appropriate nets in
KiCad, allowing the same effective result but keeping the technical
layers correct
2024-06-27 13:49:16 -07:00
Ian McInerney
cc81ccf79a
Display unit name in symbol context menu
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18285
2024-06-27 19:57:14 +01:00
Ian McInerney
bdf70ec869
Fix init ordering
2024-06-27 19:43:58 +01:00
jean-pierre charras
8737c6eb3c
footprint selector in symbol properties: fix footprint selection issue.
...
When using the button to select a footprint using the footprint chooser
dialog, the new footprint was not always taken in account (perhaps MSW specific).
It was due to the code to update the footprint name was between Disable() and
Enable, thus creating a loss of some events in the complex grid edition stuff.
This is now replaced by a lock flag to protect this code to be executed when
it should not.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18270
2024-06-27 19:56:57 +02:00
Seth Hillbrand
64c36e8bda
Fix via layer test for DXF plotting
...
Vias might have their primary layer set to a single layer but cross
multiple layers that should be included when plotting
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18282
2024-06-27 09:59:37 -07:00
Alex Shvartzkop
dc2a63d146
STEP export: don't put copper on non-flashed pad layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18267
2024-06-27 06:40:11 +03:00
Jon Evans
c70ef36739
ADDED: Opacity control for filled graphic shapes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18253
2024-06-26 22:29:58 -04:00
Seth Hillbrand
7102d9f72a
Altium import: handle polygons on copper
...
In Altium, copper polys will be connected automatically to their
associated pads. In KiCad, we need to do the equivalent when parsing,
which is to combine the joining copper into the underlying pad. We also
don't want to treat copper polys as proxy pads without the original
anymore.
2024-06-26 17:27:08 -07:00
Seth Hillbrand
f97ac5ce73
C++-ify output using ToString
2024-06-25 18:35:12 -07:00
Seth Hillbrand
0a55ca5e96
Add standard ToString representation of hash
2024-06-25 18:34:57 -07:00
Seth Hillbrand
a9d9d7ac06
Rearrange VERTEX and VERTEX_SET to please MSW/Apple
2024-06-25 18:04:53 -07:00
Seth Hillbrand
4fff28220e
Extract common code into VERTEX_SET mixin
...
The VERTEX_SET is useful when we need to quickly find elements that are
close to each other. Extracting to a mixin keeps the code from
diverging between implementations and simplifies that maintenance.
2024-06-25 12:19:56 -07:00
Seth Hillbrand
3c88b1ebc7
Suppress fallthrough warnings
2024-06-25 12:18:44 -07:00
Seth Hillbrand
6aaaaad37f
Properly count multiple Altium version settings
...
There is a fair amount of gradation in different Altium products
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18276
2024-06-25 10:18:55 -07:00
Seth Hillbrand
3725ae781d
Quiet a warning on linux
...
Linux uint64 is unsigned long, windows is unsigned long long. Rather
than split hairs, we can just use the stringstream to format this
2024-06-25 08:58:37 -07:00
Alex Shvartzkop
fa5b6d7929
If there's a single shape in fuseShapesOrCompound input, just return it.
2024-06-25 14:56:33 +03:00
Jeff Young
a2f7edde2e
Import PCB into existing project.
...
Or, to be more direct: don't pull the project rug
out from under EESchema when importing in non-
stand-alone mode.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18241
2024-06-25 11:49:02 +01:00
Jeff Young
14a55facf2
Clearer naming and commenting.
...
Also some const& hygiene and some formatting.
2024-06-25 11:07:14 +01:00
jean-pierre charras
0a5784fc9e
Gerber plots: Ensure reserved chars are not used in Gerber field strings.
...
In gerber fields, reserved chars (,*%) must be replaced, because they are separators.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18275
2024-06-25 10:49:41 +02:00
jean-pierre charras
1ddac57748
DIALOG_SYNC_SHEET_PINS: minor fix (min size set)
2024-06-25 10:44:48 +02:00
Alex Shvartzkop
4ec738f58f
Fix macOS build.
2024-06-25 03:02:17 +03:00
Alex Shvartzkop
43be7491ff
Add default constructor to MMH3_HASH.
2024-06-25 01:19:55 +03:00
Alex Shvartzkop
bee70bca7f
Fix redefinition error in mmh3_hash.h.
2024-06-25 01:15:47 +03:00
Jeff Young
441da8dfb6
Don't overload error dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18195
2024-06-24 22:50:14 +01:00
dsa-t
cb41b53ab7
Use MurmurHash3_x64_128 (MMH3_HASH) for polygon checksum.
...
Improves performance when moving footprints.
See https://gitlab.com/kicad/code/kicad/-/issues/18148
2024-06-24 21:19:43 +00:00
Kuba Sunderland-Ober
8f02944437
Optimize the newstroke font representation
...
Remove redundant strokes that start where the last stroke ended.
2024-06-24 19:44:06 +00:00
Jan Wichmann
8507ffa338
pcb_calculator: Shows the first page at the first start.
2024-06-24 19:39:40 +00:00
Jeff Young
080cbbe0dd
Error reporting for drawing sheet loading.
2024-06-24 20:22:29 +01:00
Jeff Young
26b86b3922
Don't use wxLogMessage/wxLogError for messages not meant for user.
...
They are particularly damaging when our event loop
gets tied up in knots with the log message window
behind a modal window -- thereby locking up KiCad.
2024-06-24 20:22:29 +01:00
Seth Hillbrand
11c6164934
Silence font replace warnings for libs
...
When loading schematics/pcbs, notification of font replacements might be
warranted but in libraries, this warning is not helpful and intrusive
2024-06-24 09:55:10 -07:00
Jeff Young
92c8ddfddb
Prefer infobar to logged warnings/messages.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18242
2024-06-24 16:26:40 +01:00
Jeff Young
b227bae2c6
Commit strings are user-visible menu strings.
2024-06-24 14:16:05 +01:00
Jeff Young
561106bd01
Formatting.
2024-06-24 14:14:03 +01:00
Jeff Young
968ef0082d
Handle undo of a Repeat Draw Item.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18261
2024-06-24 13:59:05 +01:00
Jeff Young
0b4d0bcb6c
Undo for Repeat Pin.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18261
2024-06-24 13:59:05 +01:00
Alex Shvartzkop
4bf8ed32cd
Optimize testCourtyardClearances when moving footprints (33%->0.69%)
...
Check bounding boxes without hidden text first before trying to check courtyards.
See https://gitlab.com/kicad/code/kicad/-/issues/18148
2024-06-24 06:43:58 +03:00
Alex Shvartzkop
dc56364cf2
Optimize testCourtyardClearances when moving a board.
...
CPU usage: 86% -> 33%
See https://gitlab.com/kicad/code/kicad/-/issues/18148
2024-06-24 02:00:34 +03:00