Commit Graph

273 Commits

Author SHA1 Message Date
Jeff Young a61673a144 Fix compile error for those who have to use the somewhat feeble gcc. 2019-07-16 15:11:50 +01:00
Jeff Young 7d10b29592 Cleanup unused includes. 2019-07-16 01:15:33 +01:00
Jeff Young 3069fd5974 Exit point editor after an <esc> while dragging.
Fixes: lp:1836652
* https://bugs.launchpad.net/kicad/+bug/1836652
2019-07-16 01:09:49 +01:00
Jeff Young e816a0c29d Push Eeschema & PLEditor PICKER_TOOLs down into common.
Also implements a more robust push/pop tool strategy for pickers.
2019-07-16 00:44:01 +01:00
Jeff Young 58ca5b71a9 A more robust fix for 36f1d023f0.
This one also handles when the events get out-of-order due to them
starting out in the Simulation window and not getting dispatched until
the mouse goes over the Schematic window.

Fixes: lp:1835907
* https://bugs.launchpad.net/kicad/+bug/1835907

Fixes: lp:1836544
* https://bugs.launchpad.net/kicad/+bug/1836544
2019-07-15 14:15:24 +01:00
Jeff Young 34894acb89 Don't try to copy a null item.
Fixes: lp:1836126
* https://bugs.launchpad.net/kicad/+bug/1836126
2019-07-11 18:23:32 +01:00
Jeff Young 029b624e96 When adding new wires due to directly-connected items, don't try and de-select them after an undo. The won't be around anymore.
Fixes: lp:1836218
* https://bugs.launchpad.net/kicad/+bug/1836218
2019-07-11 17:36:32 +01:00
Jeff Young cd1a1a67fb Add seleciton/brightening/highlighting to images. 2019-07-10 01:14:28 +01:00
Jeff Young 30ec895c96 Cleanup event processing stuff to keep better track of "handled".
See: https://lists.launchpad.net/kicad-developers/msg41471.html .
2019-07-09 21:59:46 +01:00
Jeff Young 483dc24e87 Homogenize selection tools around our HIG.
In particular make addative and exclusive-or selections work the
same way.

Also give Highlight Net a hotkey now that it can't use ctrl-click
anymore.
2019-07-09 21:59:46 +01:00
Jeff Young 36f1d023f0 Make sure Push/PopTool() go in the right order.
Because the pickers are called with an Activate()/Wait() pair, any
usurping tool gets in between the picker handling the cancel (due
to activation) and the picker client doing a PopTool().  The new
tool is therefore pushed before the old tool is popped.

Fixes: lp:1835907
* https://bugs.launchpad.net/kicad/+bug/1835907
2019-07-09 15:03:23 +01:00
Jeff Young 46f47adebe Update symbols after assigning different LIB_IDs.
Fixes: lp:1835612
* https://bugs.launchpad.net/kicad/+bug/1835612
2019-07-09 12:38:41 +01:00
Jeff Young 3a8f32c380 Convert ShowEEschema to an ACTION so it can get a hotkey assignment.
Fixes: lp:1686010
* https://bugs.launchpad.net/kicad/+bug/1686010
2019-07-09 00:43:41 +01:00
Jeff Young d3d0bdbe17 Go back to rotating selection around center.
Fixes: lp:https://bugs.launchpad.net/kicad/+bug/1833371
* https://bugs.launchpad.net/kicad/+bug/https://bugs.launchpad.net/kicad/+bug/1833371
2019-07-09 00:14:32 +01:00
Jeff Young 772dff7a01 Removed post-page-settings ZoomFitToScreen() calls.
Fixes: lp:1834608
* https://bugs.launchpad.net/kicad/+bug/1834608
2019-07-08 00:06:28 +01:00
Jeff Young a9c66e15ea Common-ize EE_ACTIONS::refreshPreview and use it after cursor actions.
Fixes: lp:1818667
* https://bugs.launchpad.net/kicad/+bug/1818667
2019-07-05 14:45:15 +01:00
jean-pierre charras fffb0d340f Eeschema: fix not deletable bitmap issue (missing SCH_BITMAP in deletable list).
Also display bitmap info in message panel.

Fixes: lp:1835125
https://bugs.launchpad.net/kicad/+bug/1835125
2019-07-05 10:25:23 +02:00
Maciej Suminski c715a22e1c Symbol Editor: clear IS_NEW flag after placing a pin
IS_NEW flag needs to be cleared after a pin is placed, otherwise further
move operations will keep adding the pin to the edited symbol.
2019-07-03 13:32:47 +02:00
Jeff Young d03041b565 Cleanup. 2019-07-02 21:36:42 +01:00
Jeff Young 9effd24f3a Allow move tool to run on top of other tools.
Fixes: lp:1784480
* https://bugs.launchpad.net/kicad/+bug/1784480
2019-07-01 22:15:25 +01:00
Jeff Young ad26ece8d4 Add Global Edit Text and Graphics Properties to Eeschema.
Fixes: lp:1801150
* https://bugs.launchpad.net/kicad/+bug/1801150
2019-07-01 22:15:25 +01:00
jean-pierre charras 5ed8ba5bf3 Libedit: fix a bug in edit graphic item properties:
When changing the common to units and/or common to convert options, the item properties were not updated.
2019-07-01 12:36:46 +02:00
Jeff Young d88bddad7e Respect m_DrawSpecificUnit and m_DrawSpecificConvert when pasting.
Fixes: lp:1834719
* https://bugs.launchpad.net/kicad/+bug/1834719
2019-06-29 22:20:40 +01:00
Jeff Young 09b07cd387 Minor adjustments to arc editing algorithms.
1) Don't snap center since it will be re-computed (most likely
off-grid) anyway.
2) Don't flip shape during initial drawing.
2019-06-29 20:03:08 +01:00
Jeff Young 232e21cb37 Restore selection properly after an undo. 2019-06-29 20:03:08 +01:00
Jeff Young a498d7e9c5 Try out a new arc-editing paradigm for LibEdit.
This is based on the notion that in Kicad the start and end-points
are far more important (as they usually connect to other segments)
than the center is.
2019-06-29 16:10:58 +01:00
Jeff Young 2ed3bf47bb Improve hittesting for Eeschema and LibEdit delete tools. 2019-06-28 22:18:30 +01:00
Jeff Young a72b5416c3 Show preview object for Eeschema junction, noconnect and bus entry tools. 2019-06-28 22:18:30 +01:00
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 7208ef481f Don't confuse a pasted pin with being synchronized.
It's only at the same location because it was copied from there.

Fixes: lp:1834377
* https://bugs.launchpad.net/kicad/+bug/1834377
2019-06-27 00:24:42 +01:00
Jeff Young 5e40de9357 Clear IS_NEW flag after placing pin so the tool knows we're no longer drawing.
Fixes: lp:1834376
* https://bugs.launchpad.net/kicad/+bug/1834376
2019-06-27 00:02:13 +01:00
Jeff Young 7292ce6a8b Improve eeschema selection disambiguation logic. 2019-06-26 21:54:03 +01:00
Jeff Young c77d214c5f Clear annotation of pasted sheets only when they already exist in the current hierarchy.
Fixes: lp:1833205
* https://bugs.launchpad.net/kicad/+bug/1833205
2019-06-26 21:54:03 +01:00
Jeff Young 89d1d3d299 Real-time highlighting for PlEditor delete tool. 2019-06-25 21:10:21 +01:00
Jeff Young 4eaba20cd3 Real-time highlighting for Pcbnew and ModEdit delete tools. 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 70ff2e14a5 Eeschema: avoid crashes when the tool highlight or delete is activated and clicking in a empty schematic.
Was a nullptr not tested.
2019-06-25 08:31:22 +02:00
Seth Hillbrand 39c2745f55 eeschema: Allow spaces in label names for multilabeling
This adds the functionality to add multiple labels to your schematic at
once by using spaces in the original label name.

Fixes: lp:1095113
* https://bugs.launchpad.net/kicad/+bug/1095113
2019-06-20 16:21:49 -07:00
Jeff Young 485d436860 Clear ctx-menu before rebuilding; don't veto ctx-menu mousewarp for non-ctx-menu dialog.
Fixes: lp:1833312
* https://bugs.launchpad.net/kicad/+bug/1833312
2019-06-19 21:17:56 +01:00
Jeff Young 4054d7ddf7 Don't try an intertwine deletion and junction fixup.
Fixes: lp:1833224
* https://bugs.launchpad.net/kicad/+bug/1833224
2019-06-19 19:30:38 +01: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
Seth Hillbrand e16bf40e60 eeschema: Insert junctions when repeating
This is the v6 analog to 697234dd5

Fixes: lp:1832253
* https://bugs.launchpad.net/kicad/+bug/1832253
2019-06-18 20:12:08 -07:00
Jeff Young b8dfc1f26a Fix import sheet pin.
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-06-18 22:44:22 +01:00
Jeff Young 581b5257e1 One more try getting <ESC>/PopTool behaviour right. 2019-06-18 22:34:31 +01:00
Jeff Young b0c1c1ad2b Select both ends of wires in block select.
Fixes: lp:1830717
* https://bugs.launchpad.net/kicad/+bug/1830717
2019-06-18 20:24:15 +01:00
Jeff Young dcbd897a95 Push/pop tools even when selected from the toolbar. 2019-06-18 20:24:15 +01:00
Jeff Young 7dd247f1dc Make better use of TOOL_EVENT parameters. 2019-06-18 20:24:15 +01:00
Jeff Young 9e464f9f5b Implement rollover highlighting for Eeschema delete tool. 2019-06-17 22:15:20 +01:00