Ian McInerney
401bc53038
Move the DRC constraints page into a scrolled window
...
We seem to be getting a lot of these now, and it was
being cutoff by default - so make it a scrolled window
like the severities.
2021-04-09 00:56:31 +01:00
Ian McInerney
5490a85f97
Don't recompute the board thickness on UI update
...
The thickness only needs to be computed when the actual
values change, so computing on UI update is a waste of
resources and can cause UI lag.
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
2021-04-09 00:56:31 +01:00
Mikolaj Wielgus
d64de3808f
Pcbnew: Snap to group items
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7694
2021-04-08 23:22:19 +00:00
Jeff Young
a8b40bf683
Avoid Clipper when possible.
...
When expanding an error to the outside of a rounded corner pad we
need to trim it to the pad bounding box or else we get little ears
where the circle approximation meets the pad square. This is expensive,
and for clearance lines we don't really care whether the error is
inside or outside.
Fixes https://gitlab.com/kicad/code/kicad/issues/8157
2021-04-08 22:37:14 +01:00
Jeff Young
5ea68c7694
Copy some bug fixes from DRC dialog across to Footprint Checker.
2021-04-08 22:37:14 +01:00
Jon Evans
4521091cc1
Do not invalidate geometry when all we need is a repaint
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8157
2021-04-08 17:35:51 -04:00
Jon Evans
d878cbddbc
PNS: a few forgotten cleanup items
2021-04-07 23:34:45 -04:00
Jon Evans
c9040a5c53
PNS: fix some weirdness identified by PVS
2021-04-07 23:16:56 -04:00
Jon Evans
e0f26fd525
Make live 3D refresh optional
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8068
2021-04-07 22:39:30 -04:00
Jon Evans
d4957b112e
PNS: Keep last valid drag solution in the node
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5450
2021-04-07 21:59:23 -04:00
Jon Evans
26835f582c
Some situations require more than one dummy
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7820
2021-04-07 21:30:18 -04:00
Jon Evans
9432484394
PNS: Find origin segment correctly when arcs are present
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8139
2021-04-07 20:28:30 -04:00
Ian McInerney
18f07024a6
Simplify UI event handling in pcbnew global edit dialogs
...
Instead of enabling/disabling the controls on every possible
UI event in these dialogs, only do it when the actual control
wants to know if it should change status.
2021-04-07 17:39:48 +01:00
Ian McInerney
1a727558b0
Switch update event handlers to use the event instead of pointers
...
It is safer to use the event to pass the enable/string
instead of pointers, since using the pointers could trigger
other UI events.
2021-04-07 17:39:48 +01:00
Ian McInerney
29cc16a4c4
Push pcbnew layer alpha change update into base frame
...
This code was shared between the footprint frame and
pcb edit frame, so push it into the base edit frame.
Also remove the dummy wxUpdateUIEvents that weren't
actually being used.
2021-04-07 17:39:48 +01:00
Jeff Young
3fd3be9843
Layer fixes for PCBNew drawing tools.
...
1) Implement layer changes for dimension drawing tool
2) Ensure drawing layer is visible for (1) and for the text drawing
tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/8106
2021-04-07 15:02:48 +01:00
Jeff Young
e50b450092
Formatting and organisation.
2021-04-07 14:50:29 +01:00
Roberto Fernandez Bautista
85efdb85b0
CADSTAR PCB: Ensure continuous track routes
...
When route offsetting, add an additional thin track to ensure
end point of one track and start point of the next are at the same
location.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8131
2021-04-07 11:28:02 +00:00
Roberto Fernandez Bautista
211fd65c23
Move: Ignore mouse up and click events until a mouse move / drag event
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8123
2021-04-06 17:29:52 +00:00
Jeff Young
09b2db3139
Test for group in footprint was snagging all footprint children.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8121
2021-04-06 18:27:43 +01:00
Jon Evans
9f957d3e08
Fix crash when attempting to tune discontinuous lines
...
Also correctly find the tuning path through arcs
https://gitlab.com/kicad/code/kicad/-/issues/8131
2021-04-06 09:07:11 -04:00
Roberto Fernandez Bautista
235688e459
Less restrictive Arc Track Dragging tool
...
Use the connecting straight tracks even if not exactly parallel - allow
an error margin configurable in ADVANCED_CFG (default 1 degree). Also
be less strict about end point matching and use the width of the track
as the criteria to determine suitability.
Finally, delete any short lengths of track at the end of the operation
and amend the arc end points to keep connectivity.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7967
2021-04-06 12:52:01 +00:00
Roberto Fernandez Bautista
0a2c8575ce
ZONE properties: stage commit even if !Settings().m_AutoRefillZones
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8028
2021-04-06 12:52:01 +00:00
Jeff Young
69fd0b38ff
Remove a couple of unused OnUpdateUI handlers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
2021-04-06 13:47:15 +01:00
Jeff Young
daaf738c7f
Add save-as files to file history.
...
Also fixes where lock wasn't getting reset on a Save As.
Fixes https://gitlab.com/kicad/code/kicad/issues/8111
2021-04-06 13:35:26 +01:00
david-beinder
b2f788adc1
PNS: Fix UseConnectedTrackWidth when starting from ARCs
2021-04-06 01:27:13 +00:00
Jon Evans
e46c9d35ac
Add undo/redo handling to length tuner event loop
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8129
2021-04-05 19:58:14 -04:00
Jon Evans
24cd174a23
Don't dereference a possibly-invalid optional
2021-04-05 19:34:57 -04:00
Jeff Young
ec45855aed
Make sure drawing layer is visible.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8106
2021-04-06 00:06:23 +01:00
Roberto Fernandez Bautista
9a764126ce
CADSTAR PCB: Keep all tracks as a single chain where possible
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8119
2021-04-05 20:15:09 +01:00
Jon Evans
a6c3d74a73
Pass active layer to StartRouting in length tuner
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7857
2021-04-04 21:51:54 -04:00
Jon Evans
a24bc34b66
Better colors for length tuning popup in dark mode
2021-04-04 20:33:59 -04:00
Jon Evans
c7ecb51f77
Update PNS length tuning algorithm to match the new BOARD algorithm
...
Now tracks inside pads are optimized to give a more accurate length.
Also, the start/end of the assembled line is used to identify the right
pad joints for pad-to-die length calculation.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4204
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1765
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6877
2021-04-04 20:27:22 -04:00
Jon Evans
41c54d383e
Fix some edge cases with length calculation
2021-04-04 19:38:54 -04:00
Jon Evans
cdfb014ab6
CHANGED: Account for via height in track length calculations
2021-04-04 13:59:18 -04:00
Jon Evans
80728f8d78
Improve algorithm for calculating net length; use it for netinfo message panel
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4258
2021-04-04 12:27:09 -04:00
Jon Evans
6b24abac8f
PNS: Don't snap to end items if snapping is disabled by modifier key
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8033
2021-04-04 10:22:23 -04:00
Jeff Young
52ca7ed27c
Naming conventions.
2021-04-04 10:43:56 +01:00
Jeff Young
c1df77f59b
Terminology.
2021-04-04 10:32:24 +01:00
Jeff Young
98e6a089ab
Treat board edges same as graphics for locked/unlocked.
...
It would appear that not using the locked/unlocked graphics filters
is confusing too (see deleted comments in code).
Fixes https://gitlab.com/kicad/code/kicad/issues/8114
2021-04-04 10:27:26 +01:00
Jeff Young
2c3ee0d85f
Don't forget CommitPendingChanges.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8083
2021-04-04 01:02:31 +01:00
Ian McInerney
83ae28f04f
Fix selection when pasting/duplicating items
...
The item flags weren't getting reset after placing
the new items, so the next operation on them was
having weird behavior.
Fixes https://gitlab.com/kicad/code/kicad/issues/7528
2021-04-03 19:09:21 +01:00
Carsten Schoenert
cb17c9f3dd
Typo fix: Correct various misspelled words
...
agressive -> aggressive
decription -> description
miscellanous-> miscellaneous
rectange -> rectangle
Unkown -> Unknown
2021-04-03 13:39:50 +00:00
Carsten Schoenert
8dff3725ac
Typo fix: Correct 'allow to' -> 'allows one to'
2021-04-03 13:39:50 +00:00
Jeff Young
52aea0a2c9
Consistent terminology.
2021-04-03 11:15:11 +01:00
Jeff Young
c5536b2cab
Title case in menus.
2021-04-03 11:15:11 +01:00
Mikolaj Wielgus
aa09d6448a
Pcbnew: Allow Create Array on groups
...
Also removes possible null pointer dereferencing.
Fixes https://gitlab.com/kicad/code/kicad/issues/7515
2021-04-03 09:06:49 +00:00
Jon Evans
a8896ebd73
Don't show leading ratline for unconnected net
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8040
2021-04-02 20:29:25 -04:00
Mikolaj Wielgus
d7a95e2af4
Rotate FP_TEST properly when flipping
...
The angle was `-angle` instead of `180 deg - angle` when flipping top to
bottom.
Fixing that, in turn, created some problems with justification, which
was modified both by `FP_TEXT::Flip()` and `FP_TEXT::KeepUpright()`.
What's worse, `FP_TEXT` has another mechanism for keeping the text
upright: `FP_TEXT::GetDrawRotation()` returns different angles if the
"keep upright" flag is set. But there is no analogous behavior for
justification, so the text would sometimes get shifted, and sometimes
not, depending on which mechanism was engaged. And both are used,
apparently.
Clearly, such an arrangement an open invitation to bugs and
inconsistencies. One of these mechanisms should be removed. I haven't
done this yet, and would prefer to postpone this until V6 is out.
I've fixed the justification problems, but this was by trial-and-error,
and I don't feel I really understand the behavior responsible. But I
think it's a good sign that most of my changes are line removals, not
additions. Flipping is a simple operation, it's just mirroring and layer
change. If something simple has a complicated routine, then it's
probably full of hacks.
Fixes https://gitlab.com/kicad/code/kicad/issues/7289
2021-04-02 21:13:21 +00:00
Mikolaj Wielgus
0a660c2364
Pcbnew: Remove 180 deg rotation when flipping PCB_TEXT in some cases
2021-04-02 21:13:21 +00:00