Jeff Young
c04a183141
Hand cherry-pick of fix from master.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11261
2022-05-09 00:36:27 +01:00
Jeff Young
2dcff109df
Update Selection Filter title bar with language changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11421
(cherry picked from commit 4ab2c93070
)
2022-05-09 00:36:27 +01:00
Jeff Young
936040fe8b
Remove extra test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10364
Fixes https://gitlab.com/kicad/code/kicad/issues/10364
(cherry picked from commit c78a47c3fb
)
2022-05-09 00:36:27 +01:00
Seth Hillbrand
485e89f7a5
Finally found the intermittant QA crash
...
When loading footprints/zones in parallel, we cannot reference a static
vector that gets cleared by other threads.
It is unclear why this element was ever static to begin with (premature
optimization?) but it has been this way for a long time. We never
noticed until we threaded load cycles, which gave the hatch a chance to
override itself and cause crashes
Fixes https://gitlab.com/kicad/code/kicad/issues/9888
(cherry picked from commit 8218f9ab44
)
2022-05-06 11:53:49 -07:00
Seth Hillbrand
611311697e
Revert "Fix another static variable instance"
...
This reverts commit 5bd3a9cca8
.
Reverted in favor of cherry-picking the more complete fix
from 8218f9ab44
2022-05-06 11:53:21 -07:00
Seth Hillbrand
5bd3a9cca8
Fix another static variable instance
...
Premature optimization appears to be the issue. When we threaded zone
handling and added multiple layers, we started overwriting the
pointbuffer variable, which was declared static for unknown reasons
Fixes https://gitlab.com/kicad/code/kicad/issues/9888
2022-05-06 11:49:57 -07:00
jean-pierre charras
6971e409bf
Pcbnew: fix lost of focus after clicking on a wxChoice in toolbar.
...
After changing track width, via size, grid or zoom from the toolbar, the
canvas has no longer the focus on Windows. So we force the focus after clicking
on these widgets.
From Master branch
Fixes #11103
https://gitlab.com/kicad/code/kicad/issues/11103
2022-05-05 11:54:47 +02:00
jean-pierre charras
fbc6c8f8f4
pcad importer: fix a truncation when converting mils to IU.
...
The value in mils is a double, but the function to convert in IU uses int.
From master branch.
Fixes #11380 https://gitlab.com/kicad/code/kicad/issues/11380
2022-05-04 17:37:11 +02:00
Seth Hillbrand
bfa1661edf
Sync via/pad flashing for null boards
...
Pads return true by default and so should vias
2022-04-15 11:39:18 -07:00
Jeff Young
110663d214
Fix crash bug when selecting marker.
2022-04-15 13:40:19 +01:00
jean-pierre charras
2de1bd7a4a
Ensure "Open Recent" and "Clear files" menu titles are updated after language change.
...
From Master branch.
2022-04-14 15:06:17 +02:00
Jeff Young
6818eff90e
Improvements to Eagle dimension importing.
...
1) Import leaders
2) Drop radius and angle dimensions
3) Import dimension text sizes
4) Correctly interpret which side dimension offset is on
5) Correclty handle offsets for non-cardinal dimensions
Fixes https://gitlab.com/kicad/code/kicad/issues/10763
2022-04-12 13:24:34 +01:00
Jeff Young
a60e7e27b6
A better blob vs web detector.
...
Since we're in a deflated state, a long web *could* still have a very
small area. So check max extents instead.
(cherry picked from commit 1dae5eb7c4
)
2022-04-12 13:24:34 +01:00
Jeff Young
601995c759
Apply the min-width-by-min-width test to islands after pruning.
...
We're looking for minimum *web* width. A blob does not a web make.
Fixes https://gitlab.com/kicad/code/kicad/issues/6907
(cherry picked from commit 1a2e0d8226
)
2022-04-12 13:24:14 +01:00
Marek Roszko
fe11bc8330
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
2022-04-11 20:39:08 -04:00
Seth Hillbrand
d0796399a2
DP tolerance needs to be 1IU on each axis
...
ApproximatelyParallel will only check for parallel within 1 IU, so a 1x1
SEG will always be parallel and the projection is invalid
2022-04-11 16:55:54 -07:00
Seth Hillbrand
c2d72180f8
Revert "Change the behavior of ACTION_MENU::Add to require clones if required outside the function"
...
This reverts commit 651f50a26d
.
2022-04-11 11:03:19 -07:00
Marek Roszko
651f50a26d
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
...
Fix https://gitlab.com/kicad/code/kicad/-/issues/10994
2022-04-10 22:40:58 -04:00
Jeff Young
529048dac1
Better error reporting for DP uncoupled length.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10087
(cherry picked from commit 722b2588f4
)
2022-04-09 23:09:10 +01:00
Jeff Young
43929781a2
On-the-fly translations for pin electrical types.
...
Also add on-the-fly translation for editor title bars.
Fixes https://gitlab.com/kicad/code/kicad/issues/11324
(cherry picked from commit 68ca385e07
)
2022-04-09 21:22:50 +01:00
Seth Hillbrand
821fe6ea42
Don't set the dirty bit when running DRC
...
Dirty bit is set in the zone filler separately, there is no action in
the DRC that needs to be saved
Fixes https://gitlab.com/kicad/code/kicad/issues/11344
2022-04-06 17:03:01 -07:00
Jeff Young
f8c92e355b
Plating thickness appears on both sides of hole wall.
2022-04-04 21:51:30 +01:00
dsa-t
fdfe5a813e
Clamp cursor to limits of coordinates representation
...
Also improves large distance handling.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8846
(cherry picked from commit 68655540eb
)
2022-04-04 13:38:50 -07:00
aris-kimi
636d009860
Added footprint rule area anchors
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10461
(cherry picked from commit 47c0672ff3
)
2022-04-04 13:38:00 -07:00
Seth Hillbrand
7d96d5940d
UNDEFINED_LAYER is always flashed
...
This is already true for vias and should be true for pads as well
Fixes https://gitlab.com/kicad/code/kicad/issues/11335
2022-04-04 12:25:55 -07:00
jean-pierre charras
604871518f
Export VRML: fix some (minor) issues, from Master branch.
2022-04-04 14:46:55 +02:00
jean-pierre charras
5a68077f60
VRML exporter: make export faster by using SHAPE_POLY_SET::PM_FAST.
2022-04-04 12:28:54 +02:00
Jeff Young
8054f1a948
Apply a more sophisticated test for ignoring isInCoupledDiffPair.
...
The basic problem is that the DRC engine does length testing and skew
testing by collecting all the diff pair constituent parts and pairing them
itself. Since each part is collected on its own, we need to ignore the
'B' unit when evaluating any conditional expressions. However, doing this
in general means that when evaluating "OwnClearance()" we also ignore the
'B' unit and return the diff pair CLEARANCE_CONSTRAINT when we shouldn't.
This implements a more discerning test which know what the current requested
constraint is when evaluating expressions.
See also https://forum.kicad.info/t/solved-custom-differencing-rule-not-working-drc/34034/6
Fixes https://gitlab.com/kicad/code/kicad/issues/11314
(cherry picked from commit f7cdc7af75
)
2022-04-03 18:23:41 +01:00
Jeff Young
e21f0ec9fb
Honour prime-event-location when starting router.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11239
(cherry picked from commit a54bbfe12b
)
2022-04-03 18:21:00 +01:00
Jeff Young
1adfca8f2d
Don't re-fetch selection when running select-in-same-sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11110
(cherry picked from commit a35ae8cdce
)
2022-04-03 18:20:32 +01:00
Jeff Young
e98e9f72df
Only write Allow DRC Violations if enabled.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11177
(cherry picked from commit b78a260326
)
2022-04-03 18:13:04 +01:00
Jeff Young
f8ff9705ff
Fix issues with importing NPTH pads from CircuitStudio.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10493
(cherry picked from commit 118a37f19f
)
2022-04-03 15:51:33 +01:00
Jeff Young
6de8b99cf2
Don't default to Annotate All just because the selection is empty.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11181
(cherry picked from commit 6fa8cab188
)
2022-04-03 15:51:33 +01:00
Jeff Young
c9829cf9a8
Enable bb and/or uvias when encountering them on Altium import.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10044
(cherry picked from commit 1d66925f5f
)
2022-04-03 15:51:33 +01:00
Jeff Young
0fc4ccf8d9
Clean up pad handling in 3D viewer.
...
Most importantly, create F_Cu/B_Cu layers if they're otherwise empty
but we have plated pads to render on them.
Fixes https://gitlab.com/kicad/code/kicad/issues/10207
(cherry picked from commit 0dc857b5ab
)
2022-04-03 15:51:33 +01:00
Marek Roszko
455ec428f2
Free memory in dxf import sooner on bad_alloc
...
(cherry picked from commit b18e441a88
)
2022-04-02 13:58:35 +00:00
Marek Roszko
d5de4bb5c7
Catch memory exhaustion trying to import large DXFs
...
See https://gitlab.com/kicad/code/kicad/-/issues/11308
(cherry picked from commit 9f8c0a8185
)
2022-04-02 03:15:33 +00:00
Seth Hillbrand
6706a5c462
Skip zero-size elements when converting
...
Also fixes an assertion when converting to polygon from the board editor
Fixes https://gitlab.com/kicad/code/kicad/issues/11313
2022-04-01 13:22:08 -07:00
Seth Hillbrand
c23679d9bd
Consistently handle env/prj variables
...
User-defined variables cannot be used for internally-reserved variables
Fixes https://gitlab.com/kicad/code/kicad/issues/11232
2022-03-31 17:05:25 -07:00
jean-pierre charras
bf8c7d7697
GERBER_JOBFILE_WRITER: fix a crash due to use of a null pointer.
...
Can happens when it is created from a Python script.
From Master branch
Fixes #11227
https://gitlab.com/kicad/code/kicad/issues/11227
2022-03-24 18:01:24 +01:00
Seth Hillbrand
4e98ce87c7
All triangular trapezoid pads
...
A triangular trapezoid will have the deltaX/deltaY of the same size as
the length of that axis. This creates a three-point polygon, which is
perfectly valid for our use
2022-03-22 13:38:36 -07:00
Jeff Young
eeee5afdfd
Zero out parent rule when overridden by local property.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11197
(cherry picked from commit b679a21651
)
2022-03-21 20:56:00 +00:00
Jeff Young
790b810621
A little bit of nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11077
(cherry picked from commit b3ae0fdca5
)
2022-03-21 20:54:28 +00:00
Seth Hillbrand
e33bf78d96
Separate flashing check for connectivity
...
When building the connectivity database, we should not be using the
connectivity to check for shapes.
To make this deterministic, we introduce two flags (ALWAYS_FLASH and
NEVER_FLASH) that are used with connectivity building to determine
whether a pad is flashed for connectivity or not. ZONE <-> PAD/VIA
connectivity will be checked with ALWAYS_FLASHED and all other
connectivity will be checked with NEVER_FLASHED if they are marked for
potential annular ring removal. If they are not marked for removal,
they will be checked ALWAYS_FLASHED.
Fixes https://gitlab.com/kicad/code/kicad/issues/11114
(cherry picked from commit 442aae19d9
)
2022-03-21 08:37:53 -07:00
jean-pierre charras
1b108afd0b
Specctra import/export: fix some issues (tested only with FreeRouter):
...
- Handling of locked tracks
- Locked tracks are now exported with attribute "fix".
- Incorrect view cleaning
- Fix memory leak.
From master branch.
2022-03-20 19:05:23 +01:00
jean-pierre charras
a8384beb6f
Python, board.i: fix incorrect order of an include.
...
The result was ignoring PCB_SHAPE in pcb_text.i.
2022-03-20 18:47:14 +01:00
Seth Hillbrand
c44d31fcfb
Fix expand variables for built-in
...
Allow falling back to the alternate variable definitions if the built-in
text block variables are not set.
Also push the project into variable resolution when plotting
Fixes https://gitlab.com/kicad/code/kicad/issues/11168
2022-03-18 16:46:36 -07:00
Frank Zeeman
4a1abd239a
Append True to Python 3 AddPrimitivePoly() call
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11012
(cherry picked from commit b3a319b77e
)
2022-03-18 13:01:56 -07:00
Jeff Young
f69ebe55ad
Improved performance for Cleanup Tracks & Vias.
...
(cherry picked from commit 14378812be
)
2022-03-18 12:50:09 -07:00
Jeff Young
ff604cc6a3
Pull some fixes back from master.
...
Mostly wxT(), but also some performance, and some for better response
to Cancel button.
(cherry picked from commit 5c63df28e4
)
2022-03-18 12:49:54 -07:00