John Beard
abe83b54ae
Add zone cutout tool to GAL
...
When activated, the zone interactive editor is launched with a flag. The
drawn zone is then used to modify the existing zone at the end of the
action.
2017-02-10 23:23:55 +01:00
John Beard
bed0ad142d
Add zone duplicate onto layer to GAL
...
This adds it into the PCB_EDITOR_CONTROL tool, alongside the zone merge
tool.
2017-02-09 12:50:48 +01:00
John Beard
7045ed92fb
Add CCW rotation to GAL canvas
...
This makes "rotate" into two separate TOOL_EVENTs, which each have a
"multiplier" parameter.
Also added is a namespace for 'free functions' that use TOOL_EVENT
public interfaces (perhaps with other inputs too) to centralise some
decision-making and calculations.
Fixes: lp:1660731
* https://bugs.launchpad.net/kicad/+bug/1660731
2017-02-09 12:50:47 +01:00
Maciej Suminski
24d63fb5d9
Removed redundant calls to wxUpdateUIEvent handlers
...
This is done automatically by wxWidgets
and does not need to be called explicitly.
2017-01-27 15:39:51 +01:00
Maciej Suminski
1102eb0d0d
Store menu titles in CONTEXT_MENU
...
Previously a title had to be provided when a submenu was added,
but this led to storing the same title in many places.
2017-01-23 14:52:11 +01:00
Maciej Suminski
682da70a86
Fixed the issue of creating and event handling in context menus (GAL).
...
When creating a copy of CONTEXT_MENU, always a CONTEXT_MENU instance was
constructed, whereas an inherited type should be used. Solved with
CONTEXT_MENU::create() that has to be overridden in inheriting classes.
Event & update handlers are now virtual functions, instead of setting
the handlers with Set{Event,Update}Handler().
2017-01-23 11:40:59 +01:00
John Beard
c50d28d94d
Access tools' TOOL_MENUs rather than CONDITIONAL_MENUs
...
This means that non-top-level tools, for example EDIT_TOOL and
PCB_EDITOR_CONTROL can submit their own menus to the top-level tool's
TOOL_MENU, which will then retain a reference to it and make it
available for the CONTEXT_MENU that is shown.
2017-01-12 14:34:03 +01:00
John Beard
f1c5b9a9ae
Add context menu to GAL DRAWING_TOOL, including the zone menu
...
Includes a tiny class for scoped set-reset of a variable, which is used
here to store the current drawing mode.
Fixes: lp:1218629
* https://bugs.launchpad.net/kicad/+bug/1518629
2017-01-11 10:41:08 +01:00
Maciej Suminski
89055c4425
Code formatting
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
1c1f4e9a50
Refactoring of VIEW/VIEW_ITEM classes:
...
- Remove dependency of EDA_ITEM on VIEW
- VIEW_ITEM is now a pure virtual interface
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
27a10e8597
Multiple simplifications to GAL tools in PCBNew:
...
- Finalize transition to BOARD_COMMIT (removed all remaining uses of PICKED_ITEMS_LIST) and implicit view/ratsnest updates
- Simplified SELECTION class, it now can be directly added to a VIEW
- Removed unnecesary casts and templates
- Introduced C++11 features (range based for, lambdas) where they improve code readability
- Added non-undoable COMMITs, which can be used to propagate change notifications to interested listeners (e.g. ratsnest/view)
2016-12-12 16:45:52 +01:00
jean-pierre charras
d167407d1a
Pcbnew: add "edit all tracks and vias" command in edit menu.
...
Previously, this command was accessible only by right clicking on a track and only in the legacy mode.
2016-10-14 21:07:39 +02:00
Gustav Bergquist
061a7b8450
Cast TOOL_EVENT parameter type to intptr_t
2016-09-21 21:22:19 +02:00
Maciej Suminski
91ea4242ca
Fixed freeze after adding a module
2016-09-12 13:45:57 +02:00
Maciej Suminski
5a1f52bf30
Modified tools to use BOARD_COMMIT.
2016-09-12 13:45:57 +02:00
Maciej Suminski
ff6bdeee4b
Removed a number 'if(m_editModules)' sections from pcbnew tools.
2016-09-12 11:50:06 +02:00
Michael Steinberg
fde12ebd25
Replace boost::function and boost::bind with their std:: counterparts
2016-06-29 12:23:11 +02:00
Chris Pavlina
445db7da58
Fix uninitialized fields
...
Coverity: CIDs 102698, 147347, 147349, 147350
2016-05-10 22:36:23 -04:00
Maciej Suminski
ce8f400645
Added menu for locking tracks & vias (GAL).
2016-05-09 10:29:06 +02:00
Maciej Suminski
e51adaeefd
Highlight a net when crossprobing with eeschema and highlight net tool is enabled.
2016-01-25 16:16:05 +01:00
jean-pierre charras
21d700facc
Replace "module" by "footprint" in a few messages.
2015-11-17 17:18:00 +01:00
Maciej Suminski
25d5a2fbfb
Disable capture cursor & autopanning for tools in idle state (GAL).
2015-09-21 10:16:23 +02:00
Brian Sidebotham
34aab6f687
Add axis origin to the Footprint Editor to align with the Legacy canvas
2015-09-05 20:47:35 +01:00
Maciej Suminski
b1d241c271
Net highlighting mode is toggled when used on the same net (GAL).
2015-09-03 17:56:30 +02:00
Maciej Suminski
9f41fe0bda
Added a hot key for (un)locking modules (GAL).
2015-09-03 17:35:41 +02:00
Tomasz Wlostowski
9c2bcb2f3c
Fixed crash on right click on zone with GAL mode.
2015-08-03 11:53:58 +02:00
Maciej Suminski
d010703eaf
Fixed cursor freeze in pcbnew (GAL).
2015-07-24 10:58:47 +02:00
Maciej Suminski
d6bc33bd42
Removed a few more memory leaks and fixed crash on exit.
2015-07-24 09:42:46 +02:00
Maciej Suminski
2752953f34
Merging for non-copper zones (GAL).
2015-07-15 14:08:50 +02:00
Maciej Suminski
15857f22ca
Fixed dragging offset in eeschema after crossprobing a multipart component in pcbnew GAL canvas.
2015-06-26 17:32:48 +02:00
Maciej Suminski
a988ebaabd
Zone merging (GAL).
2015-06-19 17:32:33 +02:00
Maciej Suminski
a16dd894d5
Show Place & Drill origin in GAL.
2015-06-18 17:51:54 +02:00
Maciej Suminski
f63170ca84
Tools available under toolbar buttons: delete items, highlight net, set drill/place origin (GAL).
2015-06-18 17:51:51 +02:00
Maciej Suminski
ac10ca40f8
Net highlighting is moved to a separate TOOL_ACTION.
2015-06-18 17:51:50 +02:00
Maciej Suminski
ce4b4f8221
Update ratsnest on zone refill (GAL).
2015-06-04 14:54:08 +02:00
Maciej Suminski
99e5228948
Moved the list of TOOL_ACTIONs to ACTION_MANAGER.
2015-05-05 20:39:41 +02:00
Maciej Suminski
872259981a
CONDITIONAL_MENU supports separators and ordering.
2015-04-30 10:46:08 +02:00
Maciej Suminski
958046ddb2
Moved SELECTION_TOOL context menu to a separate class.
2015-04-30 10:46:08 +02:00
Maciej Suminski
946b9d1933
setTransitions() are called automatically for tools.
2015-04-30 10:46:03 +02:00
Maciej Suminski
b1cd83c197
Icons in GAL context menus.
2015-04-02 16:09:48 +02:00
Maciej Suminski
6083f3b011
Internationalization of GAL dialogs & menus.
2015-04-02 16:09:26 +02:00
Maciej Suminski
26f20fbb00
Moved "Place Target" and "Place Module" tools from DRAWING_TOOL to PCB_EDITOR_CONTROL (to avoid placing modules in the footprint editor).
2015-03-10 16:58:26 +01:00
Maciej Suminski
b0ad779ee4
Calming down the Coverity report.
2015-02-15 23:21:52 +01:00
Maciej Suminski
b19010ff8b
Cross-probing pcbnew<->eeschema (GAL).
2015-02-14 21:52:22 +01:00
Maciej Suminski
902d0e3f1f
Tools are processing const TOOL_EVENT& (Tool Framework).
2015-02-14 21:28:47 +01:00
Nick Østergaard
1df31338a3
Shortcut for fill all and unfill all zones for GAL.
2014-12-08 23:41:47 +01:00
Maciej Suminski
78853febbe
Zone fill/unfill actions in context menu (GAL).
2014-07-09 16:57:01 +02:00
Maciej Suminski
eee2779f6b
Moved some layout editor specific tool actions to another class (PCB_EDITOR_CONTROL).
2014-07-09 13:50:27 +02:00