Jeff Young
5e49517781
Move hotkeys to ACTION architecture.
2019-06-10 23:46:00 +01:00
Jeff Young
765606012f
Convert separate-compilation of selection.cpp to polymorphism.
2019-06-10 23:46:00 +01:00
Jeff Young
e606587ff6
Move remaining Symbol Tree ctx menu cmds to ACTIONS.
...
Also moves the various Player instantiators down into COMMON_TOOLS
for better sharing.
2019-06-10 23:46:00 +01:00
Jeff Young
b9927a0655
Don't put standard menu items into symbol tree context menu.
2019-06-05 23:33:15 +01:00
Jeff Young
469fc3b572
Finish moving symbol editor tree context menu to ACTIONs.
2019-06-05 23:29:59 +01:00
Jeff Young
2d40425e4d
Move footprint & symbol tree context menus to tool infrastructure.
...
Fixes: lp:1831692
* https://bugs.launchpad.net/kicad/+bug/1831692
2019-06-05 20:16:48 +01:00
Jeff Young
1ea5b04e22
More ACTIONS work. Nearly done now.
2019-06-04 22:31:42 +01:00
Jon Evans
1721cc1700
Ensure pasted sheets get parents set properly for screen discovery
...
Fixes: lp:1831460
* https://bugs.launchpad.net/kicad/+bug/1831460
2019-06-03 20:30:35 -04:00
Jeff Young
1bf04d1722
More ACTIONs work.
2019-06-04 00:51:16 +01:00
Jeff Young
568c8c336b
Move DRC control to a tool; move assorted commands to ACTIONS.
2019-06-03 21:08:30 +01:00
Jeff Young
9f1e2e34b7
Move some dupicated tools to common tools.
2019-06-03 21:08:30 +01:00
Jeff Young
33773bad4d
Yet more command conversions to ACTIONs.
2019-06-02 21:10:56 +01:00
Jeff Young
dfc2fe3929
Don't try to post-process an empty clipboard paste.
...
Fixes: lp:1831364
* https://bugs.launchpad.net/kicad/+bug/1831364
2019-06-02 16:21:44 +01:00
Jeff Young
7f1ed30ff5
Move DeMorgan handling to ACTIONs.
2019-06-01 23:03:24 +01:00
Jeff Young
39b91c90dd
Moved more operations to ACTIONs.
2019-06-01 23:03:24 +01:00
Jeff Young
3777c5270b
Move some more Eeschema operations to ACTIONs.
2019-06-01 16:29:12 +01:00
Jeff Young
f1076c0f48
Fix missing reference keeping history from getting saved.
...
Fixes: lp:1830185
* https://bugs.launchpad.net/kicad/+bug/1830185
2019-05-31 23:38:15 +01:00
Jeff Young
c7fa5c567f
Load sheet content after a paste.
...
Fixes: lp:1830633
* https://bugs.launchpad.net/kicad/+bug/1830633
2019-05-31 23:38:15 +01:00
Jeff Young
1dd1ddf83b
Try an "add wires" strategy instead of trying to figure out what to pick up and what to anchor.
...
Fixes: lp:1831199
* https://bugs.launchpad.net/kicad/+bug/1831199
2019-05-31 21:56:35 +01:00
Jeff Young
d7774b94fc
Fix regression with switching between drag and move operation.
2019-05-31 21:56:35 +01:00
Jeff Young
ead1914b1d
Don't autopan until mouse moves.
2019-05-31 21:55:30 +01:00
Jeff Young
d2daab808c
Remove some legacy cursor handling stuff.
2019-05-31 21:54:22 +01:00
jean-pierre charras
4842c73530
Fix minor compil warnings.
2019-05-31 21:38:30 +02:00
Jeff Young
0260b32125
Push resetLocalCoords down into COMMON_TOOLS.
...
Fixes: lp:1830693
* https://bugs.launchpad.net/kicad/+bug/1830693
2019-05-29 00:26:29 +01:00
Jeff Young
db90e97d0b
fixup! Implement undo for Page Settings in PlEditor, Eeschema and PCBNew.
2019-05-27 14:12:20 +01:00
Jeff Young
d24a2afaca
Fix duplicate to work like paste to keep pins from getting duplicated.
...
Also fixes the post-duplicate move to start at the cursor pos.
Also fixes the fact that duplicate wasn't getting its hotkey.
Fixes: lp:1830596
* https://bugs.launchpad.net/kicad/+bug/1830596
2019-05-27 11:58:56 +01:00
Jeff Young
800cc1a11c
Fix intial drag point for paste in LibEdit.
2019-05-27 11:58:56 +01:00
Jeff Young
e9e28b9aac
Retire legacy block architecture.
2019-05-27 11:58:56 +01:00
Jeff Young
927d2a645c
Move LibEdit Save operations to ACTIONS.
2019-05-27 11:58:55 +01:00
Jeff Young
6936effaa7
Implement undo for Page Settings in PlEditor, Eeschema and PCBNew.
...
Fixes: lp:1820059
* https://bugs.launchpad.net/kicad/+bug/1820059
2019-05-27 11:58:55 +01:00
jean-pierre charras
568d4e2b19
Avoid including id.h in a lot of files that do not use it.
2019-05-26 08:14:25 +02:00
jean-pierre charras
b8e2054b23
Activate context menu in LIB_VIEW_FRAME canvas.
2019-05-25 10:13:27 +02:00
Jeff Young
a3dfce5adb
Implement common file menu actions and move Eeschema over.
2019-05-25 01:14:21 +01:00
Jeff Young
85f984ccd9
Add point-editor activation for immediate-mode drawing.
2019-05-24 19:49:09 +01:00
Jeff Young
323bb0f8e1
Moving PageLayout editor to GAL canvas and modern toolset.
2019-05-24 19:49:09 +01:00
Michael Kavanagh
43a5bb72ca
Fix swapped mirror icons in eeschema context menu
...
Fixes: lp:1828631
* https://bugs.launchpad.net/kicad/+bug/1828631
2019-05-24 13:12:58 -04:00
Jon Evans
ab3ada5200
Clear moving flag for second-click-placed items
...
Fixes: lp:1830227
* https://bugs.launchpad.net/kicad/+bug/1830227
2019-05-23 21:51:14 -04:00
Jeff Young
ebd8c44eee
Don't confuse SCH_ITEMs and LIB_ITEMs.
...
Fixes: lp:1829826
* https://bugs.launchpad.net/kicad/+bug/1829826
2019-05-23 22:57:53 +01:00
jean-pierre charras
872c8ca37b
Remove a duplicate icon.
2019-05-23 16:21:06 +02:00
John Beard
e1f6230e8c
Do not statically construct wxTimer
...
If you construct wxTimer statically, it will be constructed
before WX init, which means you might get assertions about
missing m_impl's within the timer class.
The solution is to construct the wxTimer at run time. In this
case, static within the function will be constructed only after
the function is called (and actually the scope only needed to be
this function anyway).
2019-05-23 11:28:11 +01:00
Jeff Young
0047f88f82
Mark unfold bus menu as clean so it doesn't get generated a second time.
...
Fixes: lp:1829878
* https://bugs.launchpad.net/kicad/+bug/1829878
2019-05-23 00:27:53 +01:00
Jeff Young
1636405b66
Set a reference point for all selection sizes.
...
Fixes: lp:1829833
* https://bugs.launchpad.net/kicad/+bug/1829833
2019-05-23 00:27:53 +01:00
Tomasz Włostowski
ecb81426a4
eemodern: fixed use-after-free in SCH_DRAWING_TOOLS::DrawSheet().
2019-05-23 00:28:58 +02:00
Jeff Young
323ecada8d
Generate refresh preview events when objects are moving.
...
Fixes: lp:1829683
* https://bugs.launchpad.net/kicad/+bug/1829683
2019-05-22 21:48:04 +01:00
Jeff Young
fbffb9ae1e
Don't put KICAD_T arrays on stack and expect them to be there when you need them.
...
Fixes: lp:1829748
* https://bugs.launchpad.net/kicad/+bug/1829748
2019-05-22 21:48:04 +01:00
Jeff Young
67f7571f04
Don't call VIEW::Redraw() from within the tool.
...
Fixes: lp:1828824
* https://bugs.launchpad.net/kicad/+bug/1828824
2019-05-22 21:48:04 +01:00
Jeff Young
67cc2aac2e
Rework Eeschema find/replace for modern toolset.
...
Fixes: lp:1827274
* https://bugs.launchpad.net/kicad/+bug/1827274
Fixes: lp:1827240
* https://bugs.launchpad.net/kicad/+bug/1827240
2019-05-22 21:48:04 +01:00
Tomasz Włostowski
2b38b23a5e
eemodern: fixed use-after-free crash in LIB_EDIT_TOOL::DoDelete()
2019-05-22 21:35:03 +02:00
jean-pierre charras
f18807ea0f
Eeschema: Ensure axis are always drawn in libedit and viewlib
...
Fixes: lp:1822408
https://bugs.launchpad.net/kicad/+bug/1822408
2019-05-22 10:04:34 +02:00
Seth Hillbrand
e1373d70ae
libedit: Ensure proper dereference in shared tools
...
Fixes: lp:1829826
* https://bugs.launchpad.net/kicad/+bug/1829826
2019-05-21 19:43:15 -07:00
Tomasz Włostowski
bc52f0a03b
eemodern: clean printf debug gibberish, implement inline drag, move & cursor warp/reference point options
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
af30eca3cb
eemodern: hover selection should autoclear after invoking properties dialog
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
aff3243f3b
eeschema: fix use-after-free crash in GetScreen()/GetCurrentSheet()
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
034669bf30
eemodern: implement drag-related settings in the Preferences window
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
5ea46e8b78
eemodern: initial attempt at inline drag/move actions
2019-05-20 21:04:46 +02:00
Jeff Young
813de6a1f3
Implement brightening for Eeschema Find/Replace.
2019-05-18 14:28:22 +01:00
Jeff Young
21a7621ddb
Fix issues with multiple M or G commands in a row.
2019-05-18 14:11:19 +01:00
Jeff Young
952108dd43
Implement SCH_SHEET_PIN selection, rotation and mirroring.
...
Fixes: lp:1829521
* https://bugs.launchpad.net/kicad/+bug/1829521
2019-05-18 00:23:12 +01:00
Jeff Young
5f851a4bad
Add AutoplaceFields to symbol tool context menu.
2019-05-18 00:21:49 +01:00
Jeff Young
7c25001622
Implement immediate actions for adding and importing sheet pins.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-18 00:21:49 +01:00
Jeff Young
6b3fe33d6f
Improve selection logic for sloppy selections.
2019-05-17 00:48:39 +01:00
Jeff Young
5dd71b5563
Disable pin table and part properties when there's no part.
...
Fixes: lp:1828962
* https://bugs.launchpad.net/kicad/+bug/1828962
2019-05-16 23:53:33 +01:00
Jeff Young
68224e0fcd
Don't double-add pins to parent part when pasting.
...
Also adds undo to paste operations in LibEdit.
Fixes: lp:1829355
* https://bugs.launchpad.net/kicad/+bug/1829355
2019-05-16 23:53:11 +01:00
Jeff Young
0dd1584394
Add import-sheet-pin error message and move messages to status popups.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-16 23:11:22 +01:00
Jeff Young
6630a7227d
Constrain SHEET_PIN movement, and keep them attached when resizing SHEET.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-16 22:36:19 +01:00
Jeff Young
fbb807f3bb
Move some more menu & toolbar items to modern toolset.
2019-05-16 19:57:06 +01:00
Jeff Young
eba892009d
Improve hit-test logic by gradually increasing threshold.
...
Fixes: lp:1828222
* https://bugs.launchpad.net/kicad/+bug/1828222
2019-05-16 19:57:05 +01:00
Jeff Young
69afa27a5f
Implement ACTION_TOOLBAR and update some of the menus to ACTION_MENU.
...
This gives us better separation of MVC in line with the design of
the modern toolset. It also reduces a whole bunch of duplicated
data.
2019-05-15 17:50:52 +01:00
Jeff Young
f9e4ee1fc9
CONTEXT_MENU -> ACTION_MENU. (Now used for menu-bar menus too.)
2019-05-15 17:50:52 +01:00
Jeff Young
e850592587
Cleanup.
2019-05-15 17:50:52 +01:00
Jeff Young
ef5c69167a
Start moving some LibEdit and SchEdit menubar menus to actions.
...
Also includes a bunch of bug fixes that got intermingled.
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828793
* https://bugs.launchpad.net/kicad/+bug/1828793
2019-05-13 21:44:29 +01:00
Jeff Young
d290154dd3
Fix rectangle resizing in LibEdit.
...
Fixes: lp:1828791
* https://bugs.launchpad.net/kicad/+bug/1828791
2019-05-13 21:44:29 +01:00
Jeff Young
924a5e68f0
Fix missing superclass call.
2019-05-12 18:20:41 +01:00
Jeff Young
25209516a6
Adjust net highlighting after edits.
...
Fixes: lp:1800291
* https://bugs.launchpad.net/kicad/+bug/1800291
2019-05-12 18:20:41 +01:00
Jeff Young
f602ccd814
Insert EE_TOOL_BASE under SchEdit and LibEdit tools, and fix errant rename scope which clobbered PCBNew's PICKER_TOOL.
2019-05-12 13:47:08 +01:00
Jeff Young
5c39521149
Move Symbol Properties and Pin Table to actions.
...
Fixes: lp:1804273
* https://bugs.launchpad.net/kicad/+bug/1804273
2019-05-11 15:38:49 +01:00
Jeff Young
7995b5cc3c
Restore selection on abort and undo/redo.
...
Also includes a related bug fix to not create an undo record for
the initial schematic cleanup.
Fixes: lp:1825975
* https://bugs.launchpad.net/kicad/+bug/1825975
2019-05-11 15:38:49 +01:00
Jeff Young
76a915d472
Fix highlighting when initiated via ctrl-click.
...
Fixes: lp:1796755
* https://bugs.launchpad.net/kicad/+bug/1796755
2019-05-11 15:38:49 +01:00
jean-pierre charras
0a308c4584
Fix minor compil warnings
2019-05-11 11:12:39 +02:00
Jeff Young
792c4328aa
Cleanup.
2019-05-10 21:40:08 +01:00
Jeff Young
a9f663d5ef
Soften hit-testing in SchEdit and LibEdit a bit.
...
Old threshold was 0; new is 5 pixels.
2019-05-10 20:46:28 +01:00
Jeff Young
0c2ba94b16
More sharing between SchEdit and LibEdit.
2019-05-10 20:22:26 +01:00
Jeff Young
86d1592777
Fix bug with re-enting selection main loop.
2019-05-10 19:56:20 +01:00
Jeff Young
c1539ae014
Naming changes to reflect sharing between SchEdit and LibEdit.
2019-05-10 19:56:20 +01:00
Jeff Young
f3c95ad83c
Clean up the RepeatItem architecture and finish deleting the UndoItem facility.
2019-05-10 19:56:20 +01:00
Jeff Young
7da2631b27
Check item before concluding that ConvertText has run.
...
Otherwise we set item from nullptr back to the selection, and then
we think we're dragging again which causes all kinds of grief.
Fixes: lp:1828067
* https://bugs.launchpad.net/kicad/+bug/1828067
2019-05-10 16:11:57 +01:00
Jeff Young
f6e07f575a
Rename for clarity.
...
SetOffset() didn't set anything; it performed an action.
Move() suggests a delta, when it in fact does a SetPosition().
2019-05-10 16:11:57 +01:00
Jeff Young
ea0941cab3
Implement modern tools for LibEdit.
2019-05-10 16:11:57 +01:00
Jeff Young
40f41133b3
Move Circle, Arc, Rectangle and PolyLine tools to modern toolset.
2019-05-10 16:11:57 +01:00
Seth Hillbrand
589a37bfe8
eeschema: Don't segfault on empty drawlist
2019-05-09 15:11:36 -07:00
Seth Hillbrand
0e5f5d37d1
eeschema: Fix sign error in comparison
2019-05-09 14:10:53 -07:00
Seth Hillbrand
2f782ac7a4
eeschema: Prevent double-commit on duplicate/copy
...
When activating the move from a drag extension, we need to add
additional components to the commit. This breaks for duplicate/copy
when we have already added the correct components
2019-05-09 13:46:35 -07:00
jean-pierre charras
c716d66e53
Fix typo
2019-05-08 14:28:31 +02:00
Jeff Young
a40367ce17
Add a wire between direct-connect items when only is being dragged.
...
Fixes: lp:1798968
* https://bugs.launchpad.net/kicad/+bug/1798968
2019-05-07 20:39:46 +01:00
Jeff Young
469231ae15
Move Pin, Symbol Text and Symbol Anchor to modern toolset.
2019-05-07 20:39:46 +01:00
Jeff Young
cf046e0548
Anchor a selected wire at the edge of a drag which is connected to a non-drag item.
...
Fixes: lp:1827846
* https://bugs.launchpad.net/kicad/+bug/1827846
2019-05-07 12:04:19 +01:00
Jeff Young
f40408187e
A couple of temp hacks for LibEdit <esc> processing while in transition.
...
Fixes: lp:1828004
* https://bugs.launchpad.net/kicad/+bug/1828004
2019-05-07 12:04:19 +01:00
Jeff Young
2097411550
Refresh RequestSelection selection if all items were filtered out.
...
If you have, for instance a pin selected and do a cmd-E we'll filter
out the pin and then do nothing. We should instead treat it as a
hover selection if everything got filtered.
2019-05-07 12:04:19 +01:00
Jeff Young
f1a38a6d41
Respond to <esc> from selection tool.
...
Fixes: lp:1827917
* https://bugs.launchpad.net/kicad/+bug/1827917
2019-05-06 21:56:19 +01:00
Jeff Young
cd2bd23c37
Fix a bunch of issues with hotkeys, IDs and event processing.
...
Fixes: lp:1827894
* https://bugs.launchpad.net/kicad/+bug/1827894
2019-05-06 21:42:00 +01:00