Commit Graph

14303 Commits

Author SHA1 Message Date
Jeff Young 8165fc6c44 Give up trying to infer what kind of polygon the user wants.
In many instances there are 3 valid answers: mimic linewidths, use
centerlines, and build a bounding hull.

Fixes https://gitlab.com/kicad/code/kicad/issues/12950
2022-11-28 22:12:53 +00:00
Seth Hillbrand 137b4de1c2 Allow groups in groups
This was allowed in the qa test, so we allow it going forward
2022-11-28 11:28:31 -08:00
Mike Williams 4a4fab78a3 PCB: allow swap while moving 2022-11-28 14:16:08 -05:00
Mike Williams 3042633f4a PCB: block unroute and move individually when already moving 2022-11-28 14:16:08 -05:00
Seth Hillbrand 259e41be2d Don't add non-groupable items to the group
Things like markers and netinfo should never get added to the group,
even if we are inside the group while adding the items

Fixes https://gitlab.com/kicad/code/kicad/issues/13026
2022-11-28 09:11:20 -08:00
Seth Hillbrand d232ade752 Remove cloned items from groups
When destroying, the group must be null and there's no group purpose in
the DRC checks
2022-11-28 09:11:20 -08:00
Jeff Young eb19e32b40 Performance optimization for pad drawing.
Fixes https://gitlab.com/kicad/code/kicad/issues/12999
2022-11-28 13:20:12 +00:00
Jon Evans b2b3f5752f Properties: Add grouping and sorting by creation order 2022-11-27 22:40:23 -05:00
Jon Evans 64f315c649 Move properties panel to widgets with the other AUI panels 2022-11-27 22:40:23 -05:00
Seth Hillbrand 3460c50afa Attempt to avoid double-free when shutting down on Windows 2022-11-27 16:21:06 -08:00
Jon Evans 5bbe21f540 Properties: don't rebuild the panel when closing an editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12984
2022-11-27 14:29:16 -05:00
Jeff Young c0ab2258a4 Update LAYER_PAD_FR when F_Cu colour changes (and same for back).
Fixes https://gitlab.com/kicad/code/kicad/issues/13012
2022-11-27 18:55:00 +00:00
Jeff Young ec9c6a8053 Separate creation of polygons for open and closed shapes.
This allows us to create a bounding hull from an open shape-line-chain,
which is useful for defining milled slots.
2022-11-27 18:29:41 +00:00
Jeff Young 740e193871 Increase bounding box of stroke text and the leader box of all text.
Fixes https://gitlab.com/kicad/code/kicad/issues/13009
2022-11-27 15:27:30 +00:00
Jeff Young 1e3186b9cb Allow pad-to-copper-graphic collisions in net-ties.
This is done under the same conditions as track-to-copper-graphic --
the pad or track must also collide with a net-tie pad, and the pad or
track to copper-graphic collision must be within the boundary of said
pad.

Fixes https://gitlab.com/kicad/code/kicad/issues/13008
2022-11-26 15:04:33 +00:00
jean-pierre charras 3f50199dad TEARDROP_MANAGER: fix a corner case that generate a invalid teardrop polygon.
Also add a better handling of connected tracks when searching for a track connected
to a too short track to create a teardrop, search was stopped to Y connections.
Now the selected track is the longest of these 2 candidates.
Fixes #13006
https://gitlab.com/kicad/code/kicad/issues/13006
2022-11-26 14:37:20 +01:00
Jeff Young 86d7638f10 Fix typo.
Fixes https://gitlab.com/kicad/code/kicad/issues/13005
2022-11-26 10:45:07 +00:00
jean-pierre charras b3559ae12c Minor fix: make DIALOG_EXPORT_STEP_PROCESS_BASE correctly re-sizable. 2022-11-26 07:40:48 +01:00
Jon Evans 74a2e4cad9 Properties: Add support for zone connection style 2022-11-25 18:44:02 -05:00
Jon Evans 96fe93618e Properties: Stop sorting by name
It's more useful to have properties shown in add order,
since we can group them
2022-11-25 16:29:56 -05:00
Jon Evans 611c19016f Properties: add support for string escaping
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12975
2022-11-25 13:15:46 -05:00
Jon Evans 5061f0556f Properties: implement ellipsization for name column 2022-11-25 12:37:47 -05:00
Jon Evans 220ef6fb44 Properties: Add some missing footprint properties; cleanup
Add concept of "internal" properties that will be accessible from
Python/DRC but not shown in the Properties Manager
2022-11-25 12:37:47 -05:00
Jeff Young 4aff5c7618 Keep courtyard caches alive during move.
Fixes https://gitlab.com/kicad/code/kicad/issues/12999
2022-11-25 17:20:11 +00:00
Simon Richter fbc321c4c1 Fix initialization order
This avoids a conditional branch on an uninitialized value in valgrind.
2022-11-25 16:00:23 +00:00
Jon Evans 8c7691fbc3 Harmonize on "Manager" for now, since we use that in the docs 2022-11-25 09:13:23 -05:00
Jon Evans bbea5b3fbc Save and restore properties and search panel sizes 2022-11-25 09:11:30 -05:00
Jon Evans 308576b78d Properties: Use parent footprint references instead of UUIDs
Also remove redundant Net Name property (Net is used)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12334
2022-11-24 22:40:45 -05:00
Jon Evans 11e784cf10 Properties: specialize layer setting for footprints
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12480
2022-11-24 22:11:26 -05:00
Jon Evans 88495e5be1 Properties: Fix masking of layers for non-copper items
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12884
2022-11-24 20:34:40 -05:00
Jon Evans 7a9467b0d5 Get rid of some gcc warnings 2022-11-24 17:05:58 -05:00
Jeff Young 32836da14b Don't show annular rings controls for vias that span only a single layer. 2022-11-24 18:05:37 +00:00
Jeff Young d6ae915616 Pay attention to layers when sorting pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/10143
2022-11-24 15:47:10 +00:00
Seth Hillbrand 47d86e5d9e Don't crash when canceling graphics import
Grouped graphics need to have their group removed from the preview
before deleting the elements to avoid reading freed memory when
redrawing
2022-11-23 16:21:06 -08:00
Jeff Young 16db0440ba Fix logic that was accidentally flipped in earlier commit.
Fixes https://gitlab.com/kicad/code/kicad/issues/12962

Fixes https://gitlab.com/kicad/code/kicad/issues/12969
2022-11-23 23:10:28 +00:00
Jeff Young 1aad2fb37b Change via keep-start-end to be start/end, not top/bottom.
The implementation used to always check F_Cu and B_Cu, rather than
where the via started and ended (which will be different for blind/
buried vias and microvias).
2022-11-23 21:37:50 +00:00
Jeff Young 5de4bfde93 Move drilled NPTH holes to hole-clearance checking. Edge-clearance
checking is just for milled holes (slots).

Fixes https://gitlab.com/kicad/code/kicad/issues/12980
2022-11-23 13:31:51 +00:00
Jeff Young e62463b52b Don't store optimized anchors in CN_ITEMs.
It appears that multiple RN_NETs can refer to the same CN_ITEMs meaning
that we run into threading problems if we modify the CN_ITEM.

Fixes https://gitlab.com/kicad/code/kicad/issues/12968
2022-11-23 00:46:06 +00:00
Mike Williams 60d42a7b1e Spelling: fix various suppress misspellings 2022-11-22 13:47:10 -05:00
Jeff Young b42d5da07d Check keepTopBottom when determining whether or not to flash a pad/via.
Fixes https://gitlab.com/kicad/code/kicad/issues/12961
2022-11-22 18:18:43 +00:00
Jeff Young 8b1ffca7fa Better reporting of nets and netclasses. 2022-11-22 14:54:08 +00:00
Jeff Young 97fd99ec99 Re-resolve netclasses after assigning netclass to pattern.
Fixes https://gitlab.com/kicad/code/kicad/issues/12965
2022-11-22 14:54:08 +00:00
Seth Hillbrand 9403b5ce99 Unescape strings in search panel
Fixes https://gitlab.com/kicad/code/kicad/issues/12963
2022-11-22 05:51:31 -08:00
Jeff Young 50089ce558 Fix errors in handling of std::shared_ptrs.
We can't reset to a pointer owned by another std::shared_ptr.
2022-11-22 13:14:00 +00:00
Jeff Young 226529235c Mostly const safety, but also performance opt. by avoiding shared_ptr overhead. 2022-11-22 12:21:30 +00:00
Seth Hillbrand 740dbdf09a De-initialize propertygrid when done
There doesn't appear to be a nice way to de-register wxPropertyGrids, so
we need to reach into the singleton and remove our registered editor.

Fixes https://gitlab.com/kicad/code/kicad/issues/12297
2022-11-21 16:36:00 -08:00
Seth Hillbrand 0e818360c4 Unescape netnames in search panel
Fixes https://gitlab.com/kicad/code/kicad/issues/12960
2022-11-21 15:47:14 -08:00
Seth Hillbrand 50ecb5b498 Remove errant printf 2022-11-21 15:19:45 -08:00
Jeff Young 11130bfd88 Backing out earlier fix in favour of fixing std::shared_ptr usage.
Assigning to a reference to a std::shared_ptr does not update the
reference to a different std::shared_ptr; it changes what the
std::shared_ptr points to.

Fixes https://gitlab.com/kicad/code/kicad/issues/12968
2022-11-21 21:56:17 +00:00
Jeff Young 106508f266 Split ratsnest optimization into separate parallel threads.
Fixes https://gitlab.com/kicad/code/kicad/issues/12968
2022-11-21 18:50:44 +00:00