Wayne Stambaugh
441c2b50b9
Fix potential stale pointer bug in schematic highlight connection code.
...
SCH_CONNECTION objects are temporary and can become stale any time the
connectivity is updated. Keeping them around to reference later is a
bad idea. Even if the object pointer is still valid in an SCH_ITEM in
the undo/redo buffers, comparing the pointer against another pointer as
a test to see if they are the same connection is not valid. Saving the
connection name is safe and ensures the connection is the same even if
the pointers differ.
(cherry picked from commit 831a6d55fc
)
2023-05-29 13:55:07 -04:00
Jeff Young
d0c132ccd4
Defense in depth for "mouse stuck in canvas".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12653
(cherry picked from commit 49655ae742
)
2023-05-06 11:29:05 +01:00
Jon Evans
cca9945867
Revert "Fix handling of selection overlay in schematic editor"
...
This reverts commit e2711a6121
.
This ended up being too complex for 7.0
2023-02-16 16:43:57 -05:00
Jon Evans
e2711a6121
Fix handling of selection overlay in schematic editor
...
We weren't actually using the overlay group at all
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11142
(cherry picked from commit 0f18a36f8f
)
2023-02-16 02:17:36 +00:00
James Jackson
661eed7fed
Eeschema: ensure wire / bus auto-start respects bus labels
...
Fixes #13506 and further ensures correct behaviour for heirarchical labels and sheet pins
2023-01-15 19:25:28 +00:00
Jeff Young
c3ca1ce014
Tune the hit-test extra-slop for lines (and apply it to arcs too).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13429
2023-01-07 23:06:51 +00:00
Mike Williams
068b714908
Schematic: merge dual import sheet pin actions
...
I believe I have managed to keep the slightly distinct functionality of
both implementations: the action will now use the selected sheet or find
one under the cursor if it's there.
It will also keep placing pins while they exist, which was inconsistent
in the behavior of the single click version before (other single click
commands keep placing until you cancel, e.g. no-connects )
Also, it will automatically end the tool when it runs out of sheet pins.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13296
2022-12-29 09:36:29 -05:00
Mike Williams
9b782fa827
Schematic: don't deselect line ends when right clicking off-selection
2022-12-22 14:16:38 -05:00
Mike Williams
8b7d0d71fb
Schematic: show update/change symbols for multiple symbol selection
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13231
2022-12-22 14:00:51 -05:00
Mike Williams
389f0655cd
Schematic: re-enable old break wire functionality, add slice
...
Also fix break/slice wires for multiple wires. The shortcut and code
always allowed it, the context menu just didn't appear.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13163
2022-12-19 15:55:59 -05:00
Mike Williams
243727428a
Selection: non-greedy box selection of wires ends only when dangling
...
See discussion:
https://gitlab.com/kicad/code/kicad/-/issues/13022#note_1205902448
2022-12-12 15:04:33 -05:00
Mike Williams
5ce0fe5998
Selection: drop non-greedy full line selection from middle
...
It's too inconsistent to have greedy and non-greedy mode, and also have
tweaks to the non-greedy mode that make it greedier.
2022-12-12 14:45:06 -05:00
Mike Williams
f4fb70e04c
Schematic: re-allow partial selection of line ends
...
Also fix some XOR selecting issues.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13022
2022-12-10 13:17:42 -05:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Mike Williams
4b02e5efb4
Schematic: allowing ctrl/shift-clicking point editor points
2022-12-08 14:12:12 -05:00
Mike Williams
8f646fa9fb
Schematic: fix XOR unselecting one end of fully selected line
2022-12-01 15:00:06 -05:00
Jeff Young
651b3f1349
SCH_FIELDs are in parent's coord system.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12979
2022-11-23 13:22:50 +00:00
Alex
12a55f20d3
Fix a mistake in grip margin.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12952
2022-11-21 00:25:19 +05:00
Jeff Young
b84066610e
Use drag origin instead of current mouse pos for drag checking.
2022-11-19 21:01:45 +00:00
Jeff Young
9d8fdd8d53
Fire selection events from SelectAll().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12896
2022-11-13 22:59:21 +00:00
Jeff Young
1825905011
Replace more-than-half-line algorithm with greedy/stingy check.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10860
2022-10-10 20:23:48 +01:00
Jeff Young
cb20a39693
Always select whole lines with greedy selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10869
2022-10-10 20:17:15 +01:00
jean-pierre charras
fd4cd17f4f
fix a compil warning
2022-09-20 18:55:20 +02:00
Jeff Young
30a4d3d2de
Coverity fixes.
2022-09-20 00:19:15 +01:00
Marek Roszko
61e11d6896
Strip out Mils2Iu
2022-09-16 21:09:27 -04:00
kliment
b97f9ea329
Add support for symbol unit display names in eeschema and symbol editor
2022-09-14 22:11:37 +00:00
Jeff Young
f2abf0832a
Filter pins by unit.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-09-09 13:41:13 +01:00
Alex
d67c81a657
When deselecting items, pick only selected ones.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10292
2022-09-06 19:44:29 +00:00
Jeff Young
ebe9617e77
More EDA_RECT expungification, and an attempt to fix the python test.
2022-08-31 17:19:48 +01:00
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
2022-08-31 01:22:49 +01:00
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
...
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Jeff Young
122a6d7f46
Move hypertext linking to user-page-numbers.
...
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
2022-08-27 19:17:43 +01:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Alex
3a76d42630
Cross-probing/selection for multiple items (PCB -> SCH)
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10469
2022-08-22 19:33:39 +00:00
Jeff Young
4f0136db3b
Attempt to fix std::initializer_list lifetime issue.
2022-08-21 20:54:41 +01:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
jean-pierre charras
993c446fdf
Fix some warnings detected by PVS-STUDIO (most are not used vars)
2022-07-25 18:23:52 +02:00
Jeff Young
3def3d659e
Allow click-selection and greedy-drag selection of visible pin text.
...
Stingy drag still works only on the pin itself.
Fixes https://gitlab.com/kicad/code/kicad/issues/11723
2022-07-23 23:27:14 +01:00
Jeff Young
f48755cc67
Restore unique-item filtering when collecting nearby items from view.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-07-23 15:09:58 +01:00
Jeff Young
cb77e68076
Don't assume a SCH_EDIT_FRAME in EE_SELECTION_TOOL.
...
It's also used in the symbol editor.
But in any case, pins of other units have no business being in an
SCH_SYMBOL anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-07-23 14:28:07 +01:00
Jeff Young
0d5302f375
Add preference for esc-clears-net-highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8760
2022-07-23 10:32:43 +01:00
Jeff Young
45393f228a
Promote pin selections to symbols when preference is set.
...
Also make additional line slop zoom-relative.
Fixes https://gitlab.com/kicad/code/kicad/issues/12034
2022-07-19 10:31:49 +01:00
Jeff Young
e5a664c6b3
Try a slightly different tack for cancelling net highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12029
2022-07-19 10:31:49 +01:00
Alex
c6d9dcdad5
Schematic editor: allow box-selecting pins.
2022-07-18 18:51:52 +00:00
Alex
d343d87b73
Speed-up EE_SELECTION_TOOL::RequestSelection.
2022-07-18 18:51:52 +00:00
Jeff Young
57acce9e55
Share more code between selection tools.
2022-07-11 19:04:08 -06:00
Jeff Young
4685dc49cc
Show more than 9 items in disambiguation menu.
...
(But only the first 9 get hotkeys.)
Fixes https://gitlab.com/kicad/code/kicad/issues/11966
2022-07-10 20:11:22 -06:00
Jeff Young
b759d860c0
Don't disambiguate if the user is dragging a multiple selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10108
2022-07-10 19:45:56 -06:00
Jeff Young
e122dc38bd
Add context menu item for clearing net highlighting.
...
In selection tools, drawing tools, router tool, line_wire_bus tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/11920
2022-07-10 17:15:20 -06:00
Jeff Young
00fc225306
Give <esc>-with-no-selection-clears-net-highlight a test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8760
2022-07-09 11:56:16 -06:00