Maciej Suminski
05de84d542
Undo/redo support.
2014-02-17 14:53:01 +01:00
Maciej Suminski
f82e07849b
Improved way of drawing 45-degree lines.
2014-02-17 11:33:03 +01:00
Maciej Suminski
c1c8f54e8b
Added a few asserts. Made some steps idiotproof.
2014-02-14 15:52:13 +01:00
Maciej Suminski
9d3f7230ee
New items are created using pointers (instead of copying automatic variables when drawing is finished).
2014-02-14 15:13:42 +01:00
Maciej Suminski
b1fb59ad13
Refactorization: moved drawing 45 degree multiple line to a function.
2014-02-14 14:24:12 +01:00
Maciej Suminski
a7cb90deb8
Some more minor refactorization.
2014-02-14 11:35:48 +01:00
Maciej Suminski
b7d4377621
Refactoring: zones and keepout areas are drawn using the same function.
2014-02-14 10:47:43 +01:00
Maciej Suminski
2b62a85263
Refactoring: made VIEW, VIEW_CONTROLS, BOARD and PCB_EDIT_FRAME fields in DRAWING_TOOL.
2014-02-14 09:49:49 +01:00
Maciej Suminski
597e98dbf4
Cursor is in world coordinates.
2014-02-13 20:23:28 +01:00
Maciej Suminski
3106d25361
Added keepout areas drawing tool.
2014-02-13 16:24:33 +01:00
Maciej Suminski
fce753ba24
Added zone drawing tool.
2014-02-13 16:10:32 +01:00
Maciej Suminski
45c5a3de7f
Placing modules with a minor bug.
2014-02-13 12:46:39 +01:00
Maciej Suminski
87d3458ea9
Added PCB_TARGET placing tool.
2014-02-11 17:15:33 +01:00
Maciej Suminski
ae5fa23285
Added DIMENSION drawing tool.
2014-02-11 14:38:44 +01:00
Maciej Suminski
2aef11a5fc
Made rotate & flip tool actions generic.
...
Drawing tool reacts to rotate & flip events while placing a text.
2014-02-10 17:08:55 +01:00
Maciej Suminski
4b27778451
Basic text placing tool.
2014-02-10 15:40:25 +01:00
Maciej Suminski
02316e02c3
Drawing arcs - version 1
2014-02-10 10:58:58 +01:00
Maciej Suminski
45f55fb8c5
Actually added files for drawing tools. Added possibility of drawing circles.
2014-02-06 17:12:37 +01:00
Maciej Suminski
b21ce73c37
Initial version of the drawing tool.
2014-02-06 15:09:38 +01:00
Maciej Suminski
3a15f5ad28
Initialized value to suppress Valgrind warnings.
2014-02-05 11:33:45 +01:00
Maciej Suminski
17c030aa98
Fixed removal of items in the KiCad-default style.
2014-02-05 11:08:34 +01:00
Maciej Suminski
a9031edc0d
Grip margin is relative to the world's zoom.
2014-02-05 10:17:14 +01:00
Maciej Suminski
f922533978
Added possibility for editing pads properties.
2014-02-05 09:05:27 +01:00
Maciej Suminski
8df0f769f7
Added KiCad-style modification methods (hover over an item and press a hot key, without selecting first).
...
Modification point is selected basing on the number of selected items.
Rotation angle setting (Preferences->General) is taken into account while rotating.
2014-02-04 17:27:00 +01:00
Maciej Suminski
625dcddb27
Added 2 tool actions:
...
- pcbnew.InteractiveSelection.Single for selecting a single item
- pcbnew.InteractiveSelection.Clear for clearing the selection
Made SELECTION_TOOL::clearSelection private.
2014-02-04 16:03:56 +01:00
Maciej Suminski
106fa9bbd8
Edit tool may still be activated if it was invoked with no selected items.
2014-02-04 14:21:29 +01:00
Maciej Suminski
82ca611ed3
SELECTION_TOOL::SELECTION::Clear made private, as there was no chance to call it outside the SELECTION_TOOL class.
2014-02-04 11:37:54 +01:00
Maciej Suminski
24ba75ba92
Minor change to clearing selection handling.
2014-01-31 14:52:01 +01:00
Maciej Suminski
a73e386505
Added a new tool event: TA_UNDO_REDO, sent after undo/redo operation is issued.
2014-01-30 11:18:58 +01:00
Maciej Suminski
bec24b6c7f
Ratsnest is updated after rotation, flip, undo/redo operations.
...
Fixed crashes of ratsnest when a pointer for an item has changed after undo/redo operations.
Vias are properly removed from ratsnest (pcbnew/class_board.cpp).
2014-01-29 10:17:14 +01:00
Maciej Suminski
83f7c7e35e
Added RN_DATA::Add()/Remove() methods.
...
RN_DATA::Update()/AddSimple() take BOARD_ITEM* as the parameter (instead of being split to versions with BOARD_CONNECTED_ITEM* and MODULE*), to make the code look clearer.
2014-01-28 16:30:58 +01:00
Maciej Suminski
8f054a606f
Fixed snapping and ratsnest update for EDIT_TOOL.
2014-01-07 17:23:17 +01:00
Maciej Suminski
bc71a2c007
Removed TOOL_STATE.idle field, as it was redundant.
2014-01-07 14:11:53 +01:00
Maciej Suminski
537d82fb98
Upstream merge.
2014-01-06 10:29:31 +01:00
Dick Hollenbeck
517ca83fbc
Hide m_galCanvas and m_galCanvasActive behind accessors. Fix DLIST concatonation API corner case.
2013-12-26 16:36:43 -06:00
Maciej Suminski
fe5c5953fc
Upstream merge.
2013-12-20 10:15:00 +01:00
Maciej Suminski
84c496e138
Upstream merge
2013-12-19 11:15:27 +01:00
Maciej Suminski
d613da8b8d
Module texts are undo/redoable.
2013-12-19 10:10:42 +01:00
Maciej Suminski
7ce91d4e38
Fixed zone area removal (& undoing) using the EDIT_TOOL.
2013-12-18 17:16:15 +01:00
Maciej Suminski
fb78432367
Made pads & module texts unselectable
2013-12-18 16:26:21 +01:00
Maciej Suminski
f4de2877f3
Added possibility of removing selected items while dragging.
2013-12-18 15:38:38 +01:00
Maciej Suminski
fd0a3348ea
More elegant way of handling interruption of current modifications.
2013-12-18 15:11:12 +01:00
Maciej Suminski
c1d6e44413
Speed optimization during selection of multiple items.
...
Removed debug output.
2013-12-18 15:09:09 +01:00
Maciej Suminski
873235304e
SELECTION_TOOL uses ITEMS_PICKED_LIST to store selected items.
...
Modifications done using the EDIT_TOOL are saved using the default KiCad's undo buffer.
If there is only one item selected, info about the item is displayed in the bottom status bar.
2013-12-18 14:33:34 +01:00
Maciej Suminski
7e60cc530a
Comments.
2013-12-09 11:07:30 +01:00
Maciej Suminski
a3909d4f71
Added removal of BOARD_ITEMs for the TOOL_FRAMEWORK.
2013-12-09 11:01:05 +01:00
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
fc2d8e91c9
Changed selection rules (pads&modules can be selected depending on the 'modules front/back' visibility instead of corresponding copper layers).
...
Fixed comments.
2013-12-05 14:52:08 +01:00
Maciej Suminski
27c7eb5dce
The Selection Tool displays information about selected items. ClearSelection() made public.
2013-12-04 10:58:51 +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