Jeff Young
d155870275
Sometimes use grid (instead of clearance) for slop radius.
...
This is particularly important both when very large grids
are in use, and when the router hasn't been initialized
with a net yet (ie: in hover mode) and the board clearance
is set to 0.
https://forum.kicad.info/t/new-track-start-position-problem-on-kicad-7-0-10-rc1/47006
2023-12-21 12:58:58 +00:00
Jeff Young
fc85112a72
Create dummyPattern at centre of pickerItem, not end.
...
This keeps TOPOLOGY::AssembleDiffPair() from picking an
arc the segment might be connect to. Since it can't handle
arcs at all, that's bad.
2023-12-20 15:27:29 +00:00
Jon Evans
1c895fe18c
Improve rendering of tuning status popup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16304
Add dedicated UI rendering layers
Switch to screen-space rendering to avoid blurriness
Fix a bug in OpenGL GAL that causes layer
ordering to be broken when using Scale
Fix some issues with VIEW_GROUP layer ordering
2023-12-19 22:38:21 -05:00
Jeff Young
b29a56530c
Remove undo-of-ungroup hack.
...
The hack assumed that the parent group would be the first
deleted item of type group in the undo list. While this
will be true when undoing a user ungroup command, it will
not be when undoing an ungroup side-effect, such as when a
member of a group is deleted during UpdateFromPCB.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16384
2023-12-17 15:35:35 +00:00
Alex Shvartzkop
3b26f96fe4
Tuning Patterns: read/write min_amplitude.
2023-12-17 05:32:02 +03:00
Jeff Young
9fb06f95a0
Fix msys2 build.
2023-12-16 16:17:24 +00:00
Jeff Young
66a15f6acf
Re-factor frame pointer out of generator API.
2023-12-16 16:11:45 +00:00
Jeff Young
ea3c87f243
Move group/ungroup to COMMIT infrastructure.
2023-12-16 14:17:25 +00:00
Jeff Young
1df84f4d92
Move some PCB_GENERATOR special-cases to propMgr listeners.
2023-12-15 21:04:33 +00:00
Jeff Young
a0274a8463
Last fix was too aggressive.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16362
2023-12-14 18:27:33 +00:00
Jeff Young
ec7e3c5bd6
Handle nets in recoverBaseline().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16360
2023-12-14 15:35:09 +00:00
Jeff Young
e000acb768
Make sure router honours unconstrained tuning setting.
2023-12-12 13:57:12 +00:00
Jeff Young
abd2cf25f2
Re-display hidden router items after cancelling.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16308
2023-12-11 16:02:02 +00:00
Jeff Young
c9b5e3b012
Don't leave undo items in a hidden state.
2023-12-11 15:12:41 +00:00
Jeff Young
453d0566ff
Support properties dialog during tuning.
2023-12-11 15:12:41 +00:00
Jeff Young
e3c9cf94b7
Reduce the size of the tuning popups.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16304
2023-12-08 19:50:29 +00:00
Jeff Young
4d28dfacc2
Remove query dialog from tuning tool startup.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16305
2023-12-08 17:01:14 +00:00
Jeff Young
e0a34efcb7
Use a more self-documenting API for router preview item flags.
...
Also fixes a bug where rule areas were drawn with solid fills.
2023-12-08 16:02:15 +00:00
Jeff Young
2661e7a8ee
Fix over-zealous copy/paste and add a few more comments.
2023-12-06 13:08:22 +00:00
Jeff Young
04246a969c
Show tuning status while tuning.
2023-12-03 14:23:57 +00:00
Jeff Young
33b602eb44
Use popup look & feel for on-canvas tuning status.
...
We previously used the ruler look & feel because it leveraged
pre-existing code.
But it's too hard to read over a busy background. Maybe the ruler
should move to popup look & feel as well?
2023-12-03 13:21:01 +00:00
Jeff Young
b13590f4c0
Use preview items instead of highlightNets & status popup
...
The router preview item can be specific to the part that is being
tuned, rather than the whole net. It's also less visually noisy as
it doesn't dim/undim the rest of the board.
Using kigfx preview items for the status keeps us from having a bunch
of focus issues with the status popup window.
2023-12-02 16:15:43 +00:00
Alex Shvartzkop
2d9eee93e2
Fixes for length tuning patterns.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16198
2023-12-01 08:44:10 +03:00
Graham Keeth
4f36f669dc
Use Title Case for property names
2023-11-29 01:23:35 +00:00
Alex Shvartzkop
f84bab00b4
Fix build; renaming.
2023-11-28 22:18:37 +03:00
Alex Shvartzkop
7eb98a9863
Fixes for tuning patterns and router.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16160
2023-11-28 20:55:39 +03:00
Seth Hillbrand
619c9bb0e4
Don't include hidden layers when selecting tuning
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16188
2023-11-28 09:41:09 -08:00
Jeff Young
efaa131bc4
Position dummy tuning pattern before trying to get length out of it.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16165
2023-11-26 18:18:49 +00:00
Jeff Young
2a198e22e2
Draw tuning pattern border when placing.
2023-11-23 23:25:49 +00:00
Jeff Young
b6501ce632
Report current length on roll-over.
2023-11-23 23:25:49 +00:00
Alex Shvartzkop
05e954ad5d
Fixes for length tuning patterns.
2023-11-12 12:17:08 +03:00
Alex Shvartzkop
78c7dc85f0
Fix moving tuning patterns, disable rotation.
2023-11-12 02:24:35 +03:00
Jeff Young
cc721c4907
Improve encapsulation of group internals.
...
(It's still leaking into BOARD_COMMIT and some other places, but at
least it no longer leaks into all the edit tools.)
Also fixes some bugs when moving/copying/pasting multiple selections
containing length-tuning patterns.
2023-11-09 14:05:35 +00:00
Jeff Young
b5d904b45d
Ignore VVIAs when assembling length-tuning line.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15995
2023-10-30 19:55:51 +00:00
Jeff Young
7c08aa09d5
Don't generate virtual vias when editing a tuning pattern.
2023-10-22 20:35:15 +01:00
Jeff Young
5da35d7750
Don't modify dp-tuning when doing skew tuning.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15901
2023-10-22 20:35:14 +01:00
Jeff Young
fc22e602e2
Coverity fixes.
2023-10-20 16:38:21 +01:00
Jeff Young
00fb542146
nullptr safety
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15906
2023-10-20 16:28:05 +01:00
Jeff Young
68a5753c80
Repair Rotate on PCB_GENERATOR items.
2023-10-19 23:34:52 +01:00
Jeff Young
24ddc728e8
Add PCB_ACTIONS::regenerateAllTuning....
...
... and move GENERATOR_TOOL to RegenerateAllOfType().
2023-10-19 11:20:09 +01:00
Jeff Young
67f0f6e3b9
Rename class to match current terminology.
2023-10-19 01:31:13 +01:00
Jeff Young
e5225abb62
Tuning mode is invariant.
...
Don't show target skew for length tuning, and don't show
target length for skew tuning.
2023-10-17 13:30:58 +01:00
Jeff Young
89011e888c
More modern look & feel for tuning status popup.
...
(Also includes min and max info, and move string processing out
of router.)
2023-10-17 13:30:58 +01:00
Jeff Young
9ed802e951
Support min/max rules in diff pair placer and skew placer.
2023-10-17 13:30:58 +01:00
Jeff Young
9c4bb464ac
Improve tuning status popup colours.
2023-10-17 13:30:58 +01:00
Jeff Young
a2e35aabae
Trim meander group items to just the tuning pattern.
2023-10-16 13:44:05 +01:00
Jeff Young
64cc8dd6aa
Adjust dashed-box and edit-point locations to be outside meanders.
2023-10-16 13:44:05 +01:00
Jeff Young
d51e058e24
Move diff-pair netname resolution to BOARD.
...
Also adds reporting of dp gap constaints and max uncoupled to track
selections, and max uncoupled during routing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13748
2023-10-15 22:46:23 +01:00
Jeff Young
2c02c26af4
Centralize min/opt/max printing.
2023-10-15 22:46:23 +01:00
Jeff Young
ccc20348bf
Don't start with MEANDER_SIDE_DEFAULT.
...
It means we get a different default for left-to-right-drawn than we
do when going the other way.
Also fixes bug in PNS::DP_MEANDER_PLACER so that it honours side
specified in settings.
2023-10-15 17:59:11 +01:00