Commit Graph

159 Commits

Author SHA1 Message Date
Maciej Suminski d8acd1c718 Moved Init() & Reset() from TOOL_INTERACTIVE to TOOL_BASE.
Added REASON enum for Reset() function, so tools will know why a reset occured.
Fixed SELECTION_TOOL (it was bailing out, when a new board was loaded and some items were still selected).
Added removal of VIEW_ITEM groups after changing layers and removing items.
2013-12-09 10:42:38 +01:00
Maciej Suminski aebb8b3ff9 Fixed an infinite loop in the destructor of ACTION_MANAGER; 2013-12-06 13:57:56 +01:00
Maciej Suminski c5a1df6216 ClearHotKey() function. 2013-12-05 14:48:44 +01:00
Maciej Suminski 24a317ce28 The Selection Tool is always active. Removed entries for toolbar menu and hotkeys for the tool. 2013-12-03 17:11:22 +01:00
Maciej Suminski ad3cb1f36a Added TOOL_MANAGER::RunAction() function. 2013-12-03 15:41:41 +01:00
Maciej Suminski bec2e9b178 Added some comments & asserts. 2013-12-03 15:17:43 +01:00
Maciej Suminski 4876dbea24 Storing the selected item position from a context menu. 2013-11-29 16:45:39 +01:00
Maciej Suminski af976b2d36 Automatic unregistration of tool actions during ACTION_MANAGER destruction. 2013-11-28 15:24:19 +01:00
Maciej Suminski c21ae6efca Double click support for the Tool Framework. 2013-11-28 15:19:50 +01:00
Dick Hollenbeck b9bd421184 format string concatenation bug 2013-11-13 13:59:47 -06:00
Maciej Suminski fc4f9195b6 Fixed wx2.8 strings compatibility. 2013-11-13 15:52:06 +01:00
Maciej Suminski 5235d7e5eb Modified error handling for OpenGL backend, now error messages should be visible. 2013-11-11 10:48:49 +01:00
Maciej Suminski 5249b1a6da Renamed TOOL_MOUSE_BUTTONS constants to avoid name conflict with Windows MB_RIGHT constant. 2013-10-15 10:41:00 +02:00
Maciej Suminski bc305859b2 Mainly case changes. 2013-10-14 20:40:36 +02:00
Maciej Suminski 0ac3e1fbf2 Namespace KiGfx->KIGFX.
template<> -> template <>
Some more reformatting according to uncrustify results.
2013-10-14 16:13:35 +02:00
Maciej Suminski 22045b61ea Converted tabs to spaces. Removed trailing whitespaces. 2013-10-14 13:43:57 +02:00
Maciej Sumiński 6409f7f96b wxWidgets 2.8 compatibility fix (removed wx/kbdstate.h) 2013-09-29 14:25:04 +02:00
Maciej Sumiński e1290101aa Fixed strings for wxWidgets 2.8 2013-09-29 12:57:20 +02:00
Maciej Suminski 35721397bd Moved common actions to a separate file. 2013-09-27 20:52:34 +02:00
Maciej Suminski 6b74b5771a Even more code comments and reformatting. 2013-09-27 18:51:21 +02:00
Maciej Suminski 3f320e4d68 Some more comments and code formatting. 2013-09-27 16:23:43 +02:00
Maciej Suminski 87b3f2e499 Added Init() to TOOL_INTERACTIVE, allowing to set up things that are needed to be initialized only once.
TOOL_ACTIONs can be run from CONTEXT_MENU after adding them.
Move tool actions are available to be run from CONTEXT_MENU displayed after right mouse button click on selected items.
Added some asserts to check the code.
2013-09-26 18:38:58 +02:00
Maciej Suminski e6c20adc5a Fixed premature highlighting of options in CONTEXT_MENU. 2013-09-26 14:29:47 +02:00
Maciej Suminski 61066fa608 Added functions for handling hotkeys, interface for adding TOOL_ACTIONs to CONTEXT_MENU.
Less objects are allocated dynamically.
CONTEXT_MENU is being run using its copy (it saves a hassle of following the lifetime of object).
2013-09-26 14:09:18 +02:00
Maciej Suminski 7b7a331645 Added some const modifiers. 2013-09-26 11:22:59 +02:00
Maciej Suminski d1578e4e1a Fixed cvpcb build. 2013-09-24 16:12:02 +02:00
Maciej Suminski 96d162c907 Added possibility to cancel a tool that is not on the top of the tool stack. 2013-09-24 15:47:07 +02:00
Maciej Suminski 7db595da31 Added missing files 2013-09-20 18:21:01 +02:00
Maciej Suminski 2c03bf4109 Removed TA_ActivateTool (now tools are invoked by sending TA_Action event, with the tool name as string parameter).
Developed TOOL_Action class & added ActionManager. Hot keys registered by tools are processed.
Selection & move tool can be invoked by a hot key.
2013-09-19 17:02:57 +02:00
Maciej Suminski ab21124b71 Reenabled snapping for tools. 2013-09-16 16:46:02 +02:00
Maciej Suminski f9cc914960 Mouse movement events are sent during autopanning, as the cursor position changes in the world coordinates (even if it stays still in the screen coordinates). It allows tools to update their state, as if the mouse was moved. 2013-09-13 10:26:08 +02:00
Maciej Suminski d9ff4b851a Currently selected layer is displayed on the top. 2013-09-12 18:24:53 +02:00
Maciej Suminski 82fe1a4972 Merged Tom's branch 2013-09-12 17:42:28 +02:00
tomasz.wlostowski@cern.ch 660d4cc6c9 CONTEXT_MENU: null pointer check bugfix. 2013-09-12 11:36:19 +02:00
Maciej Suminski d13355f7fe Removed some potential memory leaks. 2013-09-11 19:37:52 +02:00
tomasz.wlostowski@cern.ch 9eb3916852 Merged kicad-gal-orson 2013-09-10 19:32:19 +02:00
tomasz.wlostowski@cern.ch fa817b7475 pcbnew: start integrating P&S router 2013-09-10 19:26:44 +02:00
tomasz.wlostowski@cern.ch f14db7c78c TOOL_MANAGER: open menu on right mouse button when requested 2013-09-10 19:23:15 +02:00
tomasz.wlostowski@cern.ch 9daa1ab52a TOOL_DISPATCHER: improve mouse handling 2013-09-10 19:22:38 +02:00
Maciej Suminski 87da6a8ad3 Fixed hanging up of menu loop when user never moves mouse cursor into popup menu area. 2013-09-09 17:12:03 +02:00
Maciej Suminski 0dc587e2ef Tools are enabled to switch snapping cursor to grid. 2013-09-09 10:54:11 +02:00
Maciej Suminski f2b4c7a18b Added a few comments. 2013-09-06 16:01:46 +02:00
Maciej Suminski f93d297cb5 Some comments. 2013-09-04 16:25:57 +02:00
Maciej Suminski f4ec1e729e Allow invoking GAL tools, only if GAL is active. 2013-09-02 16:44:13 +02:00
Maciej Suminski e8083ae808 Added some comments and changed names of classes to match the coding rules. 2013-09-02 14:21:12 +02:00
Maciej Suminski fb9a4c2bfc Added stacking for tools. 2013-08-30 10:37:26 +02:00
Maciej Suminski edea2f9112 Reduced displayed events information. 2013-08-29 12:03:57 +02:00
Maciej Suminski 875c0f7062 Modified InvokeTool(), so besides resetting the tool, it also send an ActivateTool event.
Added generation of CancelTool event upon ESC key press.
Minor bugfix.
2013-08-22 15:07:34 +02:00
Maciej Suminski 89a138c09e Added handling keyboard events for the Tool framework. 2013-08-21 17:37:27 +02:00
Maciej Suminski 61ba40aa7e Added InvokeTool() and FindTool() functions. 2013-08-20 14:49:08 +02:00
Maciej Suminski e87eea7abc Reformatting. 2013-08-19 09:47:36 +02:00
Maciej Suminski 9bd7ba36ac Added resetting of tools after loading a new board. 2013-08-15 10:20:49 +02:00
Maciej Suminski 80901c69cf Reformatting. 2013-08-08 19:41:20 +02:00
Maciej Suminski 12e10fd43a Reformatting. 2013-08-08 14:59:59 +02:00
Maciej Suminski 282995eaee Fixed disambiguation menu issue. 2013-08-08 14:50:32 +02:00
Maciej Suminski ee80c7f674 Some more reformatting and adding copyright notices. 2013-08-07 11:20:12 +02:00
Maciej Suminski 62ea71fcae Fixed layers caching settings. Added some comments. 2013-08-07 10:52:50 +02:00
Maciej Suminski 7d5a456344 Code reformatting. 2013-08-06 10:30:09 +02:00
tomasz. 241061025b Added core tool framework files + boost::context assembly stuff (initial, very buggy and unfinished work). 2013-08-02 16:46:53 +02:00