Commit Graph

11596 Commits

Author SHA1 Message Date
Jeff Young f606069bf6 Formatting. 2021-04-10 10:04:02 +01:00
Mikolaj Wielgus 43d8145304 Pcbnew: Snap to the closest point on graphic polygon border
Fixes https://gitlab.com/kicad/code/kicad/issues/8164
2021-04-09 22:33:55 +00:00
Jonathan Haas 58dfb6539f Change orientation and flip sign of dimension height when rotating orthogonal dimensions.
Fixes https://gitlab.com/kicad/code/kicad/issues/6940
2021-04-09 22:30:18 +00:00
Jeff Young d2c7df155b Don't show blind/microvia holes on layers they don't appear on.
Fixes https://gitlab.com/kicad/code/kicad/issues/8144
2021-04-09 17:14:53 +01:00
Jeff Young 3450610977 Add ability to allow thermal vias to be implemented as pads.
This is mostly just for CADSTAR.  Since we don't (yet) have general
purpose footprint attributes, this reuses the "net tie" hack.

Fixes https://gitlab.com/kicad/code/kicad/issues/8141
2021-04-09 14:02:13 +01:00
Jon Evans 619a353c5e Decouple 3D view dirty marking and refresh
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8154
2021-04-08 22:09:19 -04:00
Seth Hillbrand 7b3c7e1ef3 Fix some free/delete issues
Removes the C-format memory management
2021-04-08 16:58:45 -07:00
Ian McInerney 9939af3e27 Fix color handling in the stackup manager panel
Fixes https://gitlab.com/kicad/code/kicad/issues/5671
2021-04-09 00:56:31 +01:00
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