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
Jeff Young
2450250ae7
Use "tuning pattern" in the GUI.
2023-10-15 17:59:11 +01:00
Jeff Young
6baac175c5
Status bar messages for meanders.
2023-10-15 17:59:11 +01:00
jean-pierre charras
7efd414519
Fix minor Coverity and compil warnings
2023-10-15 15:55:31 +02:00
Jeff Young
8028ea893f
Reduce public API of PCB_GENERATOR_MEANDERS.
...
It doesn't make a huge difference because the class is declared in
the .cpp file, but it still makes it easier to understand what is
conceptually public and what is not.
2023-10-14 15:04:18 +01:00
Jeff Young
5f5113c80a
Pick up current rule values when editing meanders.
2023-10-14 15:04:18 +01:00
Thomas Pointhuber
7cb198e021
fix SEGV in pcb_generator_meanders
2023-10-12 21:47:34 +02:00
Jeff Young
af020f4f9a
Fixes for diff-pair meander rectangle & edit points.
2023-10-12 17:54:34 +01:00
Jeff Young
78ee6f2e42
Fix a couple of undo bugs.
...
The first caused items coming back from undo to be hidden.
The second caused them to be ungrouped from the parent meander.
2023-10-12 17:54:34 +01:00
Jeff Young
cdc9c2e409
Fix undo bug where items come back hidden.
2023-10-12 17:54:34 +01:00
Jeff Young
16d904d47e
Add support for diff-pair meanders.
2023-10-12 17:54:34 +01:00
Jeff Young
d4b8b550f3
Go back to using VIEW::Hide() instead of ForcedTransparency().
...
(The issue was that the selection VIEW_GROUP drawing ignores the
HIDDEN flag so we need to make sure the PCB_GENERATOR_MEANDERS isn't
in the selection VIEW_GROUP while we're editing it.)
2023-10-12 17:54:34 +01:00
Jeff Young
1b676985f6
Retire length tuning tool in favour of first-class meanders.
2023-10-12 17:54:34 +01:00
Jeff Young
1ca477aeee
Unroll from PICKER_TOOL so we can handle amplitude/spacing events.
...
Also fixes a bug where we didn't clear the router on an <ESC>.
2023-10-12 17:54:34 +01:00
Jeff Young
d6c2ad7503
Unroll from PICKER_TOOL so we can handle amplitude/spacing events.
...
Also fixes a bug where we didn't clear the router on an <ESC>.
2023-10-12 17:54:34 +01:00
Jeff Young
1aeccc5895
Unroll from PICKER_TOOL so we can handle amplitude/spacing events.
2023-10-12 17:54:34 +01:00
Jeff Young
a57c9967f3
Draw meander borders while placing.
2023-10-12 17:54:34 +01:00
Jeff Young
4da3e0ff93
Make meander dashed-line borders constant size.
2023-10-12 17:54:34 +01:00
Jeff Young
d04641c868
ADDED: support for editing target length in Meander Properties dialog.
...
Also supports overriding the custom rules.
2023-10-12 17:54:34 +01:00
Jeff Young
0683313ecb
Fix ghosted image while moving meander.
...
Also cleans up some undo description strings. (They go in the menu
so they should be title-caps.)
2023-10-10 15:24:58 +01:00
Jeff Young
d916e650f1
Tuning status popup for point editor.
2023-10-10 11:55:57 +01:00
Jeff Young
bb74445dda
Code clarity.
2023-10-10 11:14:47 +01:00
Jeff Young
4226839586
Switch to diff-pair mode if startItem is a diff-pair member.
2023-10-10 11:08:53 +01:00
Jeff Young
099e5dd9e7
More undo bugs.
2023-10-09 22:32:32 +01:00
Jeff Young
994f9f8823
Cleanup & compiler warnings.
2023-10-09 22:32:32 +01:00
Jeff Young
642938455e
Add status popup for meander placer.
2023-10-09 22:32:32 +01:00
Jeff Young
1afa6ddbd5
Rename getLineBetweenPoints() to getLine().
...
While it uses the first point to find the line, it in fact returns
the entire connection, not just the part between the two points.
2023-10-09 22:32:32 +01:00
Jeff Young
44e0821e13
Fix some issues with undo.
...
Also fixes the baseline being visible while placing the meander.
2023-10-09 22:32:32 +01:00
Jeff Young
d10b0b053e
Move meander placer picker tool from item highlighting to net highlighting.
2023-10-09 22:32:32 +01:00
Jeff Young
b662ff4956
Improve graphical feedback while placing a meander.
2023-10-09 15:22:41 +01:00
jean-pierre charras
c9d6e79d2d
Fix minor compil warnings.
2023-10-08 15:04:45 +02:00
Alex Shvartzkop
a4832dd3c8
ADDED: Interactive meander objects for length tuning.
2023-10-08 02:41:17 +00:00