Checks if the movement of wires/pins/junctions will create join two nets
that were not previously joined. If so, it places a red circle at the
joint and changes the cursor to a warning sign (so that you can tell if
there is a collision off-screen)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15394
ConvertBrdLayerToPolygonalContours() convert basic graphic items to their
polygonal shapes to allow plotting them in DXF export and vrml export.
For PCB_TABLE, the conversion of PCB_TABLE basic graphic items (textx, segments)
was not made.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21934
When moving an object in pcbnew, instead of using the constrainer to
restrict motion, we use it to build snapping guidelines that are visible
to the designer and make keeping movement on the various axes easier but
not required
(We have a different "Expand Selection" command now,
and this was never a great name for showing
more choices anyway.)
Also treat tablecells as opaque when guessing
selection candidates. It's unlikely there's anything
under them and keeping to their text bounds feels
counter-intuitive.
A track can be connected to a pad or a via when just crossing or touching it.
So we can create 2 teardrops one from pad/via to track start point and the other
to track end point. However this is acceptable only if the pad/via position is inside
the track. Otherwise the 2 teardrop shapes can be strange (and of course incorrect)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21851
Replace striped look by solid fill with 70% opacity and anti-aliasing effect.
Take scale factor into account for padding.
Fix base shape to be the same for all directions (pointy tip).
The root cause is RestoreAuiLayout() that restore the previous Aui perspective
can be called only when all panes are created, because (at least on Windows)
when items managed by m_auimgr are not the same as those existing when saved
by Perspective() in config, broken settings (visibility, position) can happen.
Partial fix for #21828
We need to snap the position to the grid at the start of movement with
the keyboard because it will snap to the movement point of the item when
we are moving, so the difference between mouse position and grid
position will end up being some fractional value that appears random
Fixes https://gitlab.com/kicad/code/kicad/issues/21682
Up/Down flipping needed to be implemented and since it includes a
rotation, we need to specially account for tables in this case to avoid
walking
Fixes https://gitlab.com/kicad/code/kicad/issues/21906
Altium projects save relative sub folder paths in the windows path
format. To import these correctly, we need to turn off the escape
character handling in wx's config file processing otherwise
SUBFOLDER\PROJECT.SchDoc ends up looking like SUBFOLDERROJECT.SchDoc
Fixes https://gitlab.com/kicad/code/kicad/issues/20161
Clearly, sheet pins should not be inserted into the sheet. We also
prevent drag/drop of graphical items by default. If the user wants to
drag/drop graphical items into a sub sheet, they can hold down the ctrl
key while releasing the drag. The cursor will also update to show the
changing action
Fixes https://gitlab.com/kicad/code/kicad/issues/21854