Commit Graph

3010 Commits

Author SHA1 Message Date
Maciej Suminski 62a76f1ed2 Removed a few RecacheAllItems() calls, some of them changed to specific type recaching (using TYPE_COLLECTOR & VIEW_ITEM::ViewUpdate() ).
Removed OPENGL_GAL::SetStrokeColor().
2014-02-25 14:28:09 +01:00
Maciej Suminski e063962ce7 Renamed BOARD_CONNECTED_ITEM::GetNet() -> GetNetCode()
Renamed BOARD_CONNECTED_ITEM::SetNet() -> SetNetCode()
Added BOARD_CONNECTED_ITEM::GetNet() for accessing NETINFO_ITEM* of a given item.
Fixed module editor crash when launched to edit a module from a PCB.
Replaced some BOARD::FindNet( item->GetNet() ) calls with BOARD_CONNECTED_ITEM::GetNet().
2014-02-25 11:47:27 +01:00
Maciej Suminski 374b15ff9e Minor code cleaning and optimizations. 2014-02-24 14:31:55 +01:00
Maciej Suminski de0e8bd519 Fixed a missing group clearing and update for restored VIEW_ITEMs.Fixed a missing group clearing and update for restored VIEW_ITEMs. 2014-02-24 12:56:47 +01:00
Maciej Suminski 0383f93aac Some variables initialized to NULL. 2014-02-24 11:17:49 +01:00
Maciej Suminski be6dc9d0af Revisiting GAL:
- VIEW_ITEM::ViewUpdate() does not update items immediately. Now it marks them to be updated and the real update occurs on the next rendering frame.
- VIEW::InvalidateItem() made private.
- VIEW_LAYER::enabled -> visible
- Some functions moved to header files.
2014-02-21 16:57:18 +01:00
Maciej Suminski e4b2deed51 Removed some excessive variables. 2014-02-19 15:20:42 +01:00
Maciej Suminski 3dbb864e5e Continous mode for drawing tools (i.e. they do not finish after adding a single object). 2014-02-19 13:51:32 +01:00
Maciej Suminski f01b2502c8 Added TOOL_ACTION for PNS router activation.
Most of the GAL tools are activated by corresponding buttons on the right toolbar.
Removed menu entry for PNS router (as it is activated as the usual "Add track" tool).
2014-02-17 18:21:00 +01:00
Maciej Suminski 0161fab1a3 Fixed wrongly formulated assert. 2014-02-17 17:20:44 +01:00
Maciej Suminski 364d0e0f02 Undo/redo support. 2014-02-17 14:53:01 +01:00
Maciej Suminski 7278716c65 Small leak fix. 2014-02-17 14:36:51 +01:00
Maciej Suminski e79d47fed2 Improved way of drawing 45-degree lines. 2014-02-17 11:33:03 +01:00
Maciej Suminski 6d3e691dd9 Added a few asserts. Made some steps idiotproof. 2014-02-14 15:52:13 +01:00
Maciej Suminski 834dce571e 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 8aef3b30fa Refactorization: moved drawing 45 degree multiple line to a function. 2014-02-14 14:24:12 +01:00
Maciej Suminski 1c7cc3229c Some more minor refactorization. 2014-02-14 11:35:48 +01:00
Maciej Suminski 881b24c6e4 Refactoring: zones and keepout areas are drawn using the same function. 2014-02-14 10:47:43 +01:00
Maciej Suminski b0aa561719 Refactoring: made VIEW, VIEW_CONTROLS, BOARD and PCB_EDIT_FRAME fields in DRAWING_TOOL. 2014-02-14 09:49:49 +01:00
Maciej Suminski 249de46078 Cursor is in world coordinates. 2014-02-13 20:23:28 +01:00
Maciej Suminski 1492f71d6c Added keepout areas drawing tool. 2014-02-13 16:24:33 +01:00
Maciej Suminski 88bc292a37 Added zone drawing tool. 2014-02-13 16:10:32 +01:00
Maciej Suminski ff12d3d2e5 Changed PCB_EDIT_FRAME::setTopLayer() to PCB_EDIT_FRAME::SetTopLayer() and changed to public (as it had exactly the same functionality). 2014-02-13 15:57:57 +01:00
Maciej Suminski 39de31f7b2 Placing modules with a minor bug. 2014-02-13 12:46:39 +01:00
Maciej Suminski 7cddc08e1f Merged fix from the selection_tool branch. 2014-02-12 18:04:27 +01:00
Maciej Suminski 59a56fc820 Added PCB_TARGET placing tool. 2014-02-11 17:15:33 +01:00
Maciej Suminski 46f3c2210d Fixed ratsnest related segfaults on BOARD destruction. 2014-02-11 14:39:14 +01:00
Maciej Suminski 962a0e16c5 Added DIMENSION drawing tool. 2014-02-11 14:38:44 +01:00
Maciej Suminski 4eee9e18d5 Removed redundant fields DIMENSION::m_arrowD1O, m_arrowD2O, m_arrowG1O, m_arrowG2O (==m_crossBarO/F).
Added DIMENSION::SetOrigin(), DIMENSION::SetEnd(), DIMENSION::GetOrigin(), DIMENSION::GetEnd(), DIMENSION::GetHeight().
Fixed flipping for DIMENSION class.
Added an information that helps to understand roles of the points in the DIMENSION class.
Some minor changes to PCB_PAINTER (mainly using const COLOR4D& for taking the result of GetColor() function).
2014-02-11 13:22:30 +01:00
Maciej Suminski 0dac3077bd 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 5491a468ba Basic text placing tool. 2014-02-10 15:40:25 +01:00
Maciej Suminski aaf0c13838 Drawing arcs - version 1 2014-02-10 10:58:58 +01:00
Maciej Suminski 52e5d11d0a Corrected bounding box for arcs (DRAWSEGMENT). 2014-02-07 19:51:04 +01:00
Maciej Suminski 93483241ed Actually added files for drawing tools. Added possibility of drawing circles. 2014-02-06 17:12:37 +01:00
Maciej Suminski 3a25e108f5 Initial version of the drawing tool. 2014-02-06 15:09:38 +01:00
Maciej Suminski 5299e41ac4 Added TOOL_INTERACTIVE::Activate().
Removed an unnecessary header from class_board_item.h.
2014-02-06 14:45:33 +01:00
Maciej Suminski 37dc675b7a Merged the lp:~cern-kicad/kicad/selection_tool branch. 2014-02-06 12:48:18 +01:00
Maciej Suminski 8718c57d41 Fixed included headers. 2014-02-06 12:38:47 +01:00
Maciej Suminski b3c5980e61 Merged ratsnest_threadsafe branch. 2014-02-05 11:55:04 +01:00
Maciej Suminski c8c98753b5 Initialized value to suppress Valgrind warnings. 2014-02-05 11:33:45 +01:00
Maciej Suminski de0c476042 Fixed removal of items in the KiCad-default style. 2014-02-05 11:08:34 +01:00
Maciej Suminski cff1ea84ee Fixed bug introduced in the last commit. 2014-02-05 10:47:55 +01:00
Maciej Suminski aff5e66ab8 Some items were still marked as selected after undoing an operation. 2014-02-05 10:30:50 +01:00
Cirilo Bernardo 82bfe0dbdf Apply IDF tools patch from Cirilo Bernardo 2014-02-05 10:27:21 +01:00
Maciej Suminski 7e8b1906b2 Grip margin is relative to the world's zoom. 2014-02-05 10:17:14 +01:00
Maciej Suminski cf9e5417d0 Added possibility for editing pads properties. 2014-02-05 09:05:27 +01:00
Maciej Suminski 244be39ffa 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 9ee9c93ef8 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 980e325ba1 Edit tool may still be activated if it was invoked with no selected items. 2014-02-04 14:21:29 +01:00
Maciej Suminski e954736b5d Protection against non consecutive net codes. 2014-02-04 13:40:39 +01:00