Jeff Young
981072598b
Overhaul cursor code for new tool/action framework.
...
Includes the addition of an onSetCursor() handler which must be called
from both the GAL canvas AND the GAL backend (at least on OSX) to prevent
cursor flickering between (for instance) pencil and arrow.
Also includes new architecture for point editors which allows them to
coordiate cursors with the editing tools (so we can switch to an arrow
when over a point).
2019-06-27 22:37:11 +01:00
Jeff Young
2f23aa9556
Implement a more robust tool stacking architecture.
...
We were running into various corner conditions where a tool's event
loop would exit while the tool was still active, or the tool would
get popped while we were still in the event loop. (A lot of these
had to do with the POINT_EDITOR's, but not all of them.)
The new architecture:
1) tools always do a Push()/Pop()
2) everyone is responsible for their own pops; no more stack-clearing
on a cancel
3) CancelInteractive events go to all tools to facilitate (2)
2019-06-27 17:01:31 +01:00
Jeff Young
89d1d3d299
Real-time highlighting for PlEditor delete tool.
2019-06-25 21:10:21 +01:00
Jeff Young
f9702aab87
Immediate actions for PlEditor, PcbNew, etc.
2019-06-25 11:34:28 +01:00
jean-pierre charras
b8d2fef079
pl_editor: fix a crash when cancelling the "add bitmap dialog" by escape key.
2019-06-20 13:05:23 +02:00
Jeff Young
730b89af6d
Another round of changes for immediate actions.
2019-06-19 18:35:17 +01:00
Jeff Young
3a0256aade
Add handle-based editing for eeschema bitmaps.
...
Also cleans out a bunch of duplicated functionality from the image
editor dialog.
Fixes: lp:1828722
* https://bugs.launchpad.net/kicad/+bug/1828722
2019-06-19 18:35:17 +01:00
Jeff Young
581b5257e1
One more try getting <ESC>/PopTool behaviour right.
2019-06-18 22:34:31 +01:00
Jeff Young
dcbd897a95
Push/pop tools even when selected from the toolbar.
2019-06-18 20:24:15 +01:00
Jeff Young
7cfe19d9fd
Cleanup.
2019-06-17 22:15:20 +01:00
Jeff Young
4eab89d9ef
Fix OSX button order issue in Unsaved Changes dialog.
...
Also changes the presentation of the string when the checkbox appears
so that the "Changes will be lost" warning isn't hidden by the turndown.
This last part may require conditional compilation as it's undocumented.
Lastly, regularizes the Unsaved Changes strings between the apps.
2019-06-17 17:01:57 +01:00
Jeff Young
1f35ec5521
Beware of copying events and losing the m_passEvent flag.
...
Fixes: lp:1833031
* https://bugs.launchpad.net/kicad/+bug/1833031
2019-06-17 14:44:39 +01:00
Jeff Young
e6d5110ccf
Implement I18N for ACTIONs.
...
It's a bit of a hack because they're statically initialized and
so we can't make use of the _() macro. We do still want it in the
code, however, because the string harvesting is based off of it.
Fixes: lp:1833000
* https://bugs.launchpad.net/kicad/+bug/1833000
2019-06-17 10:45:23 +01:00
jean-pierre charras
66d2060942
Partial fix for missing language selection menu.
...
The fix is partial because in the list of languages the menuitem corresponding to the selected language is not checked.
2019-06-16 20:35:57 +02:00
Jeff Young
e4fbd003e0
Make m_passEvent event-specific rather than global.
...
If a tool called something like clearSelection while processing a
MOUSE_CLICK, the SELECTION_TOOL will pass the clearSelection
COMMAND_EVENT because it handles it as a transition, not as an
event. Because m_passEvent is effectively global, the tool manager
would then interpret that as passing the MOUSE_CLICK and we'd end
up processing the click by multiple tools.
2019-06-16 12:06:49 +01:00
Jeff Young
0f4bdbd184
Tighten down the POINT_EDITORs a bit more.
2019-06-16 01:33:39 +01:00
Jeff Young
19aba615c2
Remove selection condition from conditional menu separators.
...
We don't allow duplicate separators anyway so all they really do
is complicate the code.
2019-06-15 20:43:51 +01:00
Jeff Young
5610261dce
Immediate-action hotkeys (and context menu actions) for eeschema.
2019-06-15 20:43:51 +01:00
jean-pierre charras
12a4a38507
pl_editor:make the option "show formatted texts" working.
2019-06-15 19:54:05 +02:00
jean-pierre charras
96935e0a7e
Pl_editor rework: refinements in Design inspector.
2019-06-15 09:58:23 +02:00
jean-pierre charras
6dc8e96a34
pl_editor rework: add a design inspector (similar to what was existing previously, but as a dialog)
...
Wip.
2019-06-14 20:48:50 +02:00
Jeff Young
8f84c3ec4f
Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal.
2019-06-13 19:58:37 +01:00
Steven A. Falco
1edeba7fb4
Show the current grid setting.
2019-06-13 14:34:39 -04:00
Jeff Young
ce1f35a1be
Cleanup some left-over vestiages of the legacy canvas architecture.
2019-06-13 15:51:32 +01:00
jean-pierre charras
54b22b1851
pl_editor: fix missing view full rebuild after importing a .kicad_wks file.
2019-06-13 15:53:42 +02:00
jean-pierre charras
c47f97e02f
pl_editor: fix a very minor wxWidgets alert.
2019-06-13 11:01:14 +02:00
jean-pierre charras
cbe8c5a934
pl_editor: minor cosmetic fixes for a better readability of a few texts.
2019-06-12 15:05:19 +02:00
Seppe Stas
455ee4c08c
Set KiCad version in MacOS apps
...
Uses CMake's configure_file function [1] to automaticaly set the
CFBundleShortVersionString [2] value in every app's Info.plist file.
Also updates the CFBundleLongVersionString and CFBundleVersion with the
extended KiCad Version
[1]: https://cmake.org/cmake/help/latest/command/configure_file.html
[2]: https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring
2019-06-12 04:40:03 -07:00
Jeff Young
7726b039b2
Re-jigger standard submenus so they both link AND work.
2019-06-11 18:03:16 +01:00
Jeff Young
6623ab91a8
Fix issue with picker tool activation.
2019-06-11 00:25:38 +01:00
Jeff Young
b0e8443383
Sync-ing of menu has been done in CONDITIONAL_MENU for some time now.
2019-06-10 23:46:01 +01:00
Jeff Young
a568e70b99
Follow naming conventions.
2019-06-10 23:46:01 +01:00
Jeff Young
5e49517781
Move hotkeys to ACTION architecture.
2019-06-10 23:46:00 +01:00
Jeff Young
6025256e07
Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out.
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
John Beard
7ebda0247f
Common: Remove legacy_gal library, fold into common
...
Return the EDA_DRAW_FRAME class back to common, whence it came (before it was
duplicated into legacy_wx and legacy_gal). Now there is only one
implementation (the GAL one), it doesn't need to be in a separate library.
This simplifies the dependencies for common lib users.
2019-06-10 18:56:57 +01:00
jean-pierre charras
dfbe02c8c2
pl_editor: show the page limits and the coord reference corner position.
2019-06-07 12:42:28 +02: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
jean-pierre charras
56e3e988ff
Pl_editor: fix missing hotkeys
2019-06-04 14:38:35 +02:00
jean-pierre charras
c977895412
Pl_editor: avoid flickering of the Properties Frame when moving an item.
2019-06-04 10:55:14 +02:00
Jeff Young
1bf04d1722
More ACTIONs work.
2019-06-04 00:51:16 +01:00
Jeff Young
9f1e2e34b7
Move some dupicated tools to common tools.
2019-06-03 21:08:30 +01:00
jean-pierre charras
a5f670b69d
Pl_editor: fix a incorrect include:
...
The included file was a .cpp file instead of the corresponding .h file
2019-06-03 18:29:50 +02:00
jean-pierre charras
7e1407f205
Pl_editor: fix incorrect view update after editing a item (the view was not refreshed, at least on Windows)
2019-06-03 17:39:04 +02:00
Jeff Young
33773bad4d
Yet more command conversions to ACTIONs.
2019-06-02 21:10:56 +01:00
Jeff Young
45a9544726
Instantate a default menu from no selection when menu is first built.
...
This might resolve some of the GTK menu anomalies.
2019-06-02 12:58:08 +01:00
Jeff Young
7f1ed30ff5
Move DeMorgan handling to ACTIONs.
2019-06-01 23:03:24 +01:00
Jeff Young
74e10791ff
Fix some Mac-specific issues with the Preferences... menu item.
2019-06-01 16:29:12 +01:00
Jeff Young
c2662b0e11
Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME.
2019-05-31 21:55:30 +01:00
Jeff Young
d6e9bdf07b
Convert remaining legacy drawing code to print code.
2019-05-31 21:54:22 +01:00