Seth Hillbrand
4026904cc4
Make grid snapping depend on grid visibility
...
Turning the grid view on enables snapping to the grid. Turning it off
removes the snap and allows free draw
2020-09-09 10:18:15 -07:00
Seth Hillbrand
173b4ff588
Add snapping to eeschema
...
This generalizes both the SetPosition() function and ORIGIN_VIEWITEM
class away from the pcbnew-centric.
2020-09-09 10:18:15 -07:00
Ian McInerney
cb36006406
First round of cleanup for the PCB groups
...
ADDED: Leave group action
Fixes https://gitlab.com/kicad/code/kicad/issues/5299
2020-09-02 02:10:26 +01:00
Jon Evans
19832c7599
ADDED: Tool for converting shape types in PcbNew
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2406
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2507
2020-08-28 21:16:06 -04:00
Jeff Young
1138c32bf3
Don't pass Cancel event where there was a specific action cancelled.
...
For instance, if during a move the user hits ESC they only want the
move cancelled, not (for instance) the selection dropped.
Fixes https://gitlab.com/kicad/code/kicad/issues/5356
2020-08-25 12:54:40 +01:00
Jeff Young
b8bbe72e48
Another attempt to fix the select-reference-point toolstack thing.
...
This time remove the push/pop from the picker tools as that's
responsible for the issue of trying to re-activate the move action
when its popped. Instead do the push/pop from the client code
of other actions that need it, and not at all from the move-with-
reference action.
Fixes https://gitlab.com/kicad/code/kicad/issues/5336
2020-08-24 22:47:24 +01:00
Jeff Young
a4ff339a1e
Clear toolstack after cancel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5336
2020-08-24 19:28:53 +01:00
Jeff Young
502f2ca2ef
Fix some snarled up event processing.
...
See the bug for details. It's complicated.
Fixes https://gitlab.com/kicad/code/kicad/issues/5336
2020-08-24 13:20:29 +01:00
Seth Hillbrand
1e315bc3fe
pcbnew: Add "Select All" Action to pcbnew and fpedit
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2497
2020-08-20 16:07:10 -07:00
Jeff Young
2bf4fcae2a
Cancel preceeding command if Move was called to place it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5252
2020-08-19 13:18:53 +01:00
Jeff Young
f2a902c0b1
Remove extraneous drag actions.
2020-08-18 19:05:30 +01:00
Marek Roszko
a417da4ce0
Split selecteditemmodified to a selecteditemmoved to reduce updatemsgpanel spam
2020-08-18 13:11:47 +00:00
Marek Roszko
3696064f6f
Don't post update events twice and on motion for movement of items
...
Fix #4880
Fix #4741 (hopefully)
2020-08-18 13:11:47 +00:00
Seth Hillbrand
b8b3d5c16d
pcbnew: Remove all threading from dynamic ratsnest
...
The last remaining threaded operation in dynamic ratsnest was the
recalculation of the dynamic connectivity map. Because we do not
require any of the extra features of the connectivity map, we can get
away with a lightweight move of the anchors to update the ratsnest. The
resulting connectivity tree is not valid but it is not needed for the
ratsnest, which only needs a list of nets/anchors.
2020-08-14 17:48:33 -07:00
Jeff Young
a6d44676b3
Move commit handling outside of ZoneFiller.
...
This allows us to rever the commit on a cancel.
Fixes https://gitlab.com/kicad/code/kicad/issues/5107
2020-08-12 22:20:07 +01:00
Qbort
b41892e4da
Rename class GROUP in pcbnew to PCB_GROUP
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5156
2020-08-12 15:36:08 +01:00
Joshua Redstone
ee428876ec
ADDED: Group/Ungroup function
...
This implements the group/ungroup functions to mark a set of EDA_ITEMs as a unit, allowing them to be moved and rotated as a unit
2020-08-11 19:37:07 +00:00
Jeff Young
00e77d1ba4
Implement pad & via aprons for hatched zones.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2519
2020-08-07 15:15:43 +01:00
Jeff Young
e2ec9d9f00
A more fail-safe way to disallow editing while routing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4413
Fixes https://gitlab.com/kicad/code/kicad/issues/5067
2020-08-05 16:51:58 +01:00
Jeff Young
59ba793096
Disable various combinations of router and editing commands.
...
They just confuse each other.
Fixes https://gitlab.com/kicad/code/kicad/issues/5067
2020-08-04 14:32:02 +01:00
Jeff Young
be957e0105
Convert parent-less module items to board items on paste.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4938
2020-07-27 19:53:42 +01:00
jean-pierre charras
6f7d5f5e2b
Footprint editor: fix some issues in flip and mirror commands.
...
more about fixes #4958
https://gitlab.com/kicad/code/kicad/issues/4958
2020-07-25 18:10:24 +02:00
Ian McInerney
da6d0c9de6
Add cancel to the selection context menu if a tool is running
...
The selection tool's context menu is displayed during the move tool,
so it should contain the ability to cancel the current action.
2020-07-16 15:12:58 +01:00
Jon Evans
bb596ac139
Add Move with Reference to Special Tools menu
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4838
2020-07-09 12:02:26 -04:00
Jon Evans
707ce66cc6
ADDED: Move with Reference action
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4755
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/2304
2020-07-06 19:33:14 -04:00
Jeff Young
7b042f4a75
Add rectangle tool to PCBNew toolbar in favour of Aux Origin.
...
ADDED new rectangle graphics tool for PCBNew and Footprint Editor.
Also adds rectangle tool to both Footprint Editor and PCBNew Place
menus.
The Aux Origin tool can come back once we have multi-select toobar
buttons.
Also collapses an unnecessary level out of the auxOrigin and gridOrigin
settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/2246
2020-07-01 13:31:30 +01:00
Jeff Young
da2b7071b4
WYSISYG custom pad editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2153
Fixes https://gitlab.com/kicad/code/kicad/issues/2305
2020-06-27 14:37:01 +01:00
Seth Hillbrand
899496baaa
pcbnew: Remove item from edit selection in favor of parent
2020-06-14 07:29:44 -07:00
Seth Hillbrand
491ac0256d
pcbnew: Add a number of missing handles for module zones
2020-06-14 07:23:10 -07:00
Seth Hillbrand
09eee84a3e
pcbnew: Handle module zone area in delete
...
Selections containing zone areas need to be handled separately by
modifying the parent rather than the item itself
Fixes https://gitlab.com/kicad/code/kicad/issues/4653
2020-06-14 07:05:14 -07:00
Jeff Young
47ab7c78a6
Divorce GRID_HELPER from the parent frame.
...
This moves GRID_HELPER fully into the tool framework.
2020-06-13 22:44:16 +01:00
Ian McInerney
6692935808
Consolidate common viewer actions across cvpcb and pcbnew frames
...
* Consolidate the measure tool into one tool (this gives cvpcb
unit changing and snapping capabilities in its measure tool)
* Transition cvpcb to use actions for the sketch modes
* Replumb how magnetic items settings are stored and used
2020-05-24 11:58:33 +01:00
jean-pierre charras
1d914133c9
Pcbnew, context menu: move createArray,moveExact,positionRelative in a submenu
2020-05-16 16:09:00 +02:00
Jeff Young
889b6cb1b1
Clean up some commenting and rename MODULE_EDITOR_TOOLs to match filename.
2020-05-03 20:56:32 +01:00
Jeff Young
56946f4db1
Fix pad name increment to use last edited pad.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1882
2020-05-03 08:59:51 +01:00
Jeff Young
199bb2ffb0
Add hittesting for worksheets in Pcbnew and Eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4282
2020-05-03 00:07:38 +01:00
Jeff Young
f113370e1e
Edit worksheet properties when no other selection is available.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4044
2020-04-21 21:17:59 +01:00
Ian McInerney
37a4dd927b
Allow deletion of zone cutout areas
...
ADDED: Ability to delete zone cutout areas
Fixes https://gitlab.com/kicad/code/kicad/issues/4188
2020-04-14 17:57:47 +01:00
Andrew Downing
a8dea9274f
modify behavior of position relative tool
...
CHANGED: The reset buttons now set the X or Y offset to the current
offset from the reference position. Selecting individual pads as the reference item is now also possible.
2020-03-02 20:55:06 +00:00
Jeff Young
129042f8a6
Convert timestamps to UUIDs.
2020-02-20 21:29:52 +00:00
Jon Evans
e59a3d981e
Implement a new settings framework across all of KiCad
...
CHANGED: Settings are now stored in versioned sub-directories
ADDED: First-run dialog for migrating settings from a previous version
CHANGED: Settings are now stored as JSON files instead of wxConfig-style INI files
CHANGED: Color settings are now all stored in a separate settings file
CHANGED: The symbol editor and footprint editor now have their own settings files
CHANGED: Color settings are no longer exposed through BOARD object
CHANGED: Page layout editor now uses Eeschema's color scheme
Settings are now managed through a central SETTINGS_MANAGER held by PGM_BASE.
Existing settings will be migrated from the wxConfig format on first run of each application.
Per-application settings are now stored in one class for each application.
2020-02-19 23:44:56 -05:00
Ian McInerney
8b7d4c2a55
Put tool graphics back on the stack
...
Now that the tool framework gracefully shutdowns the tools, graphics
can be created on the stack inside a tool function.
This reverts commit f6881ce3de
.
2020-02-05 22:23:44 +00:00
Jeff Young
d8cd48aa7f
Allow duplication of module texts from board editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3829
2020-02-05 22:21:16 +00:00
jean-pierre charras
fd0728becf
Fix an other crash similar to f6881ce3
.
2020-01-31 16:41:47 +01:00
jean-pierre charras
f6881ce3de
Fix crash after calling EDIT_TOOL::pickCopyReferencePoint()
...
An instance of STATUS_TEXT_POPUP was created on the stack.
But it crashes pcbnew when closing the current main frame,
perhaps due to stack switching in coroutines.
It is now created on the heap.
2020-01-31 16:08:18 +01:00
Ian McInerney
5d46e721e5
pcbnew: Cleanup includes of pcbnew_id.h
...
* Remove unused IDs from the enum
* Remove the include statements from files that no longer need it
2020-01-03 15:39:05 +00:00
Mark Roszko
19ceb11ae7
Change more enums over to scoped enums
2019-12-28 00:55:11 +00:00
Mark Roszko
11ff16be4e
Switch to scoped enums
2019-12-20 14:11:39 +00:00
jean-pierre charras
cc185e4b8a
Pcbnew: fix crash when deleting pads in the board editor
...
Fixes # |3684 https://gitlab.com/kicad/code/kicad/issues/3684
2019-12-17 13:56:17 +01:00
Jeff Young
d40019210f
Allow undo during a drag.
2019-12-15 21:33:58 +00:00