Commit Graph

793 Commits

Author SHA1 Message Date
Nick Østergaard 45a8c2e27f Rename pad copy actions in the pad tool
Import becomes apply and export becomes copy.

The term "push" to apply settings globally has not been renamed.

Swap the order of the copy and apply in the context menu.
2017-02-07 23:08:09 +01:00
John Beard cdc392867a When 'Find-moving' modules in GAL, pick up at origin
Perviously, the generic snapping code would choose the nearest of the
module origin and origin of each module pad when selecting a module
using the "Find module" tool (T hotkey).

This is unlikely to be expected unless the cursor is already near the
correct pad or the module centre.

New behaviour is to pick up by module origin first, then
select the module. This means that the cursor is already nearest the
main module origin anchor, so that is what will be used.

Fixes: lp:1571214
* https://bugs.launchpad.net/kicad/+bug/1571214
2017-02-07 11:19:38 -05:00
jean-pierre charras 9a6e5734bf Minor fixes: fix UI capitalization issues, and better comment in a menu. 2017-02-04 10:21:41 +01:00
Maciej Suminski 8dadc18429 Check if selection is not empty before modifying it in EDIT_TOOL
Fixes: lp:1661311
* https://bugs.launchpad.net/kicad/+bug/1661311
2017-02-02 23:32:11 +01:00
John Beard fb6de689b9 Factor an EDIT_TOOL selection routine
Also add some commentary to other EDIT_TOOL selection functions.
2017-02-01 09:57:58 +01:00
John Beard 45b60b1bb0 Add exchange modules GAL tool (in EDIT_TOOL)
Includes tool action and the transistion binding in EDIT_TOOL.

Fixes: lp:1541460
* https://bugs.launchpad.net/kicad/+bug/1541460
2017-02-01 09:57:36 +01:00
Maciej Suminski 9627f063ff Added missing handler for 'activate' events in EDIT_TOOL
Fixes: lp:1660306
* https://bugs.launchpad.net/kicad/+bug/1660306
2017-01-30 14:05:44 +01:00
Maciej Suminski 4b9243e0bf Allow registering TOOLs in any order. 2017-01-30 13:21:43 +01:00
John Beard 019b949646 Pre-select highlighted net in zone create dialog
Applies in GAL mode (legacy mode already did this).

Fixes: lp:1482866
* https://bugs.launchpad.net/kicad/+bug/1482866
2017-01-29 23:46:41 +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 750eed7ff5 Renamed MODULE_TOOLS to MODULE_EDITOR_TOOLS 2017-01-27 15:39:41 +01:00
John Beard 0f5bfdb156 Add mirror tool action for GAL module editor
This is basically a simple clone of the legacy tool with a few minor
tidy-ups for GAL mode.

Fixes: lp:1619301
* https://bugs.launchpad.net/kicad/+bug/1619301
2017-01-25 20:17:28 +01:00
John Beard beed72ffbb Add pad import/export/push to GAL canvas
This implements the pad import/export to the board's master pad setting
in the GAL canvases.

Implemented as a new GAL tool: PAD_TOOL.

It uses the same dialog, which has been split out into its own files in
pcbnew/dialogs, rather than along with frame methods in
pcbnew/globaleditpad.cpp.

Fixes: lp:1619304
* https://bugs.launchpad.net/kicad/+bug/1619304
2017-01-25 20:17:28 +01:00
Dick Hollenbeck 0c459ced97 EDA_TEXT object refactor.
Make all EDA_TEXT data private and rename accessors to avoid function
name collisions in derived classes.

Overload EDA_TEXT's SetTextAngle() and SetEffects() in TEXTE_PCB.

Add support for preserving Reference text position, size, orientation
during a netlist import into a BOARD, as well as the one off footprint
update dialog.
2017-01-25 08:03:32 -05: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 6362e5cf0f Added create() method for SELECTION_MENU 2017-01-23 14:52:11 +01:00
Maciej Suminski 59346a6ef1 Alternative way for setting icons for align/distribute actions. 2017-01-23 11:41:00 +01:00
Maciej Suminski f0a7c1715e Fixed warning 'cast pointer from integer of a different size' 2017-01-23 11:40:59 +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 6a1b068dd2 Allow editing locked modules in modedit
Since you have to explicitly enter the module editor with the menu or
hotkey, allowing editing of module sub-parts once in should not cause
any unexpected changes.

Fixes: lp:1591625
* https://bugs.launchpad.net/kicad/+bug/1591625
2017-01-22 20:31:59 -05:00
jean-pierre charras 2de913797a Fix a UI policy issue. Very minor cosmetic change: give same look to Zoom and Grid selection in 2 menus. 2017-01-20 11:35:24 +01:00
jean-pierre charras e710b8b370 Fix incorrect parameter type when appending zoom and grid menuitems 2017-01-19 20:26:57 +01:00
Maciej Suminski e5fbd0c442 Fixed crash upon finished zone drawing in GAL.
In principle, this patch reverts 2eefa117. The difference is removal of
one unused method (SELECTION::clear) and fixing hidden overloaded
virtual methods warnings.

Fixes: lp:1657569
* https://bugs.launchpad.net/kicad/+bug/1657569
2017-01-18 22:06:23 +01:00
Maciej Suminski 75fb04d650 TOOL_ACTIONs are handled with transitions, no handlers needed in the event loops
There used to be a number of TOOL_ACTIONs that had entries both in
SetTransitions() and the event loop, which seemed redundant and
troublesome.
Now it is not necessary anymore, transitions setup is enough to execute
associated actions.
2017-01-18 14:20:39 +01:00
Maciej Suminski 2eefa11732 SELECTION has-a VIEW_GROUP instead of being-a VIEW_GROUP
Fixed numerous warnings caused by hidden overloaded methods
provided in both classes (Add(), Remove(), etc.)
2017-01-18 13:22:41 +01:00
Maciej Suminski c758f434c0 Removed unused fields in VIEW & ANTIALIASING_SMAA classes 2017-01-18 13:22:18 +01:00
Maciej Suminski ee2b1ac321 Shortened code using VIEW & PAINTER classes in MODULE_TOOLS methods 2017-01-18 13:22:18 +01:00
Maciej Suminski 004ca3c6f9 Fixed a memory leak in VIEW_ITEM (proper way of doing 9bc2bb2)
The problem with simple deleting VIEW_ITEM_DATA upon VIEW_ITEM removal was
caused by the default copy constructors that copied pointers.
Once a copy of an item was destroyed, the VIEW_ITEM_DATA has been
destroyed, effectively invalidating m_viewPrivData for the other item.
2017-01-16 14:57:50 +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 d7db84e282 Break out tools' common menu functions and ownership
Add a class TOOL_MENU, which provides a management class for a
CONDITIONAL_MENU and a set of CONTEXT_MENUs. The aim of this is to
provide a central place where all TOOL_INTERACTIVEs can get a "basic"
context menu that either they or other tools can register new items and
sub-menus against.

This means that "top-level" tools no longer need to manage the lifetimes
of any CONTEXT_MENUs that they add, and can also delegate simple menu
display functions.
2017-01-12 14:33:57 +01:00
John Beard 378f5cce33 Don't show separator in Select tool if not needed
If the SELECTION_TOOL's Select... menu is not shown, the separator under
it should also not be shown, so use the same SELECTION_CONDITIONS to
enforce this.
2017-01-11 11:15:25 +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
John Beard 6baf0edc08 Line segments obey 45 degree preference in GAL
The GAL line segment tool now listens to the global line segment 45
degree locking preference, with Ctrl used to invert the behaviour. The
behaviour therefore follows the setting normally, and the user can
override when needed with Ctrl.

Fixes: lp:1635718
* https://bugs.launchpad.net/kicad/+bug/1635718
2017-01-11 09:57:55 +01:00
jean-pierre charras 2972f6fbc7 Fix shadowed local variable 2016-12-20 17:51:55 +01:00
jean-pierre charras 9be5398cd2 Add bitmaps to Align/distribute menu ans menu items 2016-12-20 17:50:29 +01:00
Tomasz Włostowski b20323dc63 SELECTION: fixed pointer arithmetic-related segfault in operator[] 2016-12-20 12:01:09 +01:00
Maciej Suminski c8676db84e Fixed panning & cursor control with arrow keys in flipped view 2016-12-12 16:45:52 +01:00
Maciej Suminski f94c10b453 Fixed a warning in release builds 2016-12-12 16:45:52 +01:00
Maciej Suminski 89055c4425 Code formatting 2016-12-12 16:45:52 +01:00
Tomasz Włostowski 3f7c5a0845 fixed post-rebase issues 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 bcfc1e7a3f fix shadowed local variables 2016-11-25 16:00:42 +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
Simon Richter b0f9864bc4 Clean up warnings from exception handlers
The exception objects caught are either not referenced at all, or only in
debug builds. This avoids the warnings for the unused variables.
2016-10-10 11:08:49 -04:00
jean-pierre charras 502d0a38be Fix a missing parameter initialization (arc angle) in footprint DXF import 2016-09-30 11:11:52 +02:00
Chris Pavlina 2b7e6e73ec Fix uninitialized variable in drawing_tool.cpp 2016-09-30 09:04:18 +02:00
Maciej Suminski 18695751e8 Fixed a footprint editor crash on DXF import
Fixes: lp:1627422
* https://bugs.launchpad.net/kicad/+bug/1627422
2016-09-27 13:36:52 +02:00
Simon Richter ad088db6d2 Add more "override" markers. 2016-09-25 13:59:41 -04:00
Simon Richter 59c81976dc Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
decimad 6a9c1cb6a1 Split the undo/redo event into the two stages "pre" and "post" for convenient synchronization of dependent state. 2016-09-23 13:29:25 +02:00
Gustav Bergquist 061a7b8450 Cast TOOL_EVENT parameter type to intptr_t 2016-09-21 21:22:19 +02:00
decimad ee3d75f273 Add coroutine call invocation context to identify the main stack frame.
Run the text draw-tool on the main stack frame.

Fixes: lp:1547282
* https://bugs.launchpad.net/kicad/+bug/1547282
2016-09-21 11:56:40 +02:00
Dick Hollenbeck 9ad49dc2d1 Split IO_ERROR out of richio.* and store Problem() and Where() separately 2016-09-20 11:56:18 -04:00
Maciej Suminski 4bb16afc9e Fixed text placement tool in FP editor
Fixes: lp:1625304
* https://bugs.launchpad.net/kicad/+bug/1625304
2016-09-20 10:19:33 +02:00
Maciej Suminski 8590809c7a Selection tool fix to enable selecting overlapping items
Fixes: lp:1499022
* https://bugs.launchpad.net/kicad/+bug/1499022
2016-09-15 13:25:08 +02:00
Maciej Suminski edf64afa3e Fixed freezes after appending a board. 2016-09-12 13:45:57 +02:00
Maciej Suminski 6701b80f77 Converted global deletion, global text size setting & module exchange to BOARD_COMMIT. 2016-09-12 13:45:57 +02:00
Maciej Suminski 91ea4242ca Fixed freeze after adding a module 2016-09-12 13:45:57 +02:00
Maciej Suminski 303a6928ab Changed pointEditorUpdate to editModifiedSelection. 2016-09-12 13:45:57 +02:00
Maciej Suminski ad1111748e Removed 'undo inhibit' in EDIT_TOOL 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 b815ea7865 Removed remaining m_editModules flags. 2016-09-12 11:50:06 +02:00
Maciej Suminski 9861b35707 EDIT_TOOL::hoverSelection() works with current selection. 2016-09-12 11:50:06 +02:00
Maciej Suminski b661993427 Removed SELECTION_TOOL::EditModules()
as there is already PCB_TOOL::SetEditModules() and
SELECTION_TOOL::m_editModules shadows PCB_TOOL::m_editModules.
2016-09-12 11:50:06 +02:00
Tomasz Wlostowski a5b7a7ca0a Changed DuplicateAndAddItem() to parametrized Duplicate(). 2016-09-12 11:50:06 +02:00
Tomasz Wlostowski 1924507001 Added a PCB_TOOL subclass. 2016-09-12 11:50:06 +02:00
Maciej Suminski ff6bdeee4b Removed a number 'if(m_editModules)' sections from pcbnew tools. 2016-09-12 11:50:06 +02:00
Maciej Suminski 1dd43d1d98 Unified undo buffer handling code for PCB & module editor.
Replaced UR_MODEDIT with UR_CHANGED.
2016-09-12 11:50:06 +02:00
Tomasz Wlostowski 0700178d07 P&S: enable delete & backspace shortcuts while router is active 2016-08-15 17:16:47 +02:00
Wayne Stambaugh 4ed346ea64 Eeschema: initial schematic I/O plugin.
* Factor out PROPERTIES object from the PCB plugin code and move it into
  common so it can be used by both the Pcbnew and Eeschema plugins.

* Add schematic I/O plugin manager for loading and saving schematic and
  component library files.

* Add initial attempt at a parser for current schematic file format.  This
  parser will be infinitely more strict than the current parser which is very
  forgiving in what it parses.

* Make minor changes to the base bitmap class to support the new parser.

* Add find root sheet support to sheet object to allow fetching the root
  sheet from any sheet in the stack.
2016-07-06 05:22:56 -04:00
Simon Richter 1b2fd6a382 Replace BOOST_FOREACH with C++11 range based for. 2016-06-29 16:07:55 -04:00
Simon Richter da5699de0a Replace boost::shared_ptr with std::shared_ptr. 2016-06-29 11:09:55 -04:00
Michael Steinberg fde12ebd25 Replace boost::function and boost::bind with their std:: counterparts 2016-06-29 12:23:11 +02:00
Chris Pavlina 5285962775 Remove option to not show footprint ratsnest when moving
This option only exists in legacy, with no real plan to port it to GAL. Nobody
seems to use this; there isn't really much of a point to it. Bye!
2016-06-11 22:34:07 -04:00
Chris Pavlina 8c01318141 Add zoom-to-selection tool 2016-06-08 07:19:53 -04:00
jean-pierre charras a4658ab6be Fix a few compil warnings (not used vars, shadowed local vars) 2016-06-01 14:22:05 +02:00
jean-pierre charras e2cc78b2b5 Code cleanup: remove dead code (some removed methods were broken), and update or add comments. 2016-06-01 11:28:07 +02:00
Simon Richter 96ec9db5d6 Add missing C++ stdlib headers
The GCC standard library headers often include other headers, which makes
some code compile that forgets to include several headers.
2016-05-28 12:46:29 -04:00
Maciej Suminski a30c8d7848 Coverity fixes. 2016-05-11 11:18:27 +02:00
Chris Pavlina 445db7da58 Fix uninitialized fields
Coverity: CIDs 102698, 147347, 147349, 147350
2016-05-10 22:36:23 -04:00
Maciej Suminski ad66af66af Highlight an item when context menu is displayed (GAL). 2016-05-09 10:41:11 +02:00
Maciej Suminski ce8f400645 Added menu for locking tracks & vias (GAL). 2016-05-09 10:29:06 +02:00
Maciej Suminski dd10c577ec Added SELECTION_CONDITIONS::OnlyTypes() variant that takes KICAD_T[]4 2016-05-04 18:35:20 +02:00
Maciej Suminski 06637a17d6 Added 'Reset Grid Origin' hot key (GAL). 2016-05-04 14:59:14 +02:00
Maciej Suminski b735f57fa4 Refresh pads after enumeration in Footprint Editor. 2016-05-04 14:06:10 +02:00
unknown b8a91c7a98 Enhancements in Create array tool (bad parameters detection and disable parms when not applicable) 2016-04-02 14:52:29 +02:00
Chris Pavlina 60d93d024c pcbnew: don't pick up selection after unsuccessful Duplicate
Following rev 6627 (git 2777182), if a non-duplicatable item was the object of
a Duplicate action, the original item would be picked up, potentially
misleading the user into thinking something was actually duplicated.
2016-03-18 07:15:50 -04:00
jean-pierre charras b237d81b75 Create Array dialog: some fixes:
*  No initial copied object changed (this was a serious bug to modify these objects. Previous version modified references and other texts using a very stupid algorithm).
  It also fixes bug 1549231
* only new pads are numbered (therefore renumbering is used only in footprint editor)
*  remove not working and useless feature in circular array: now  only use number for pads (others options using alphabetical letters are removed: did not work corectly, and were useless)
* a more clear option is used to choose if the pads are numbered from a choosen value, or from the first avaible value
* Adding a warning messsage if a parameter is incorrect.
2016-03-07 08:13:06 +01:00
Tomasz Wlostowski 5349eb4179 fixed segfault in selection tool 2016-02-08 15:12:59 +01:00
Tomasz Wlostowski ee3418e90b One-click PCB update improvements
- Fix repetitive undo/redo segfaults & assertions.
- Add Update menu entry on PCB side.
- Fix Python build error
- Add spread footprints after updating
2016-01-29 15:43:40 +01:00
Maciej Suminski 1d39a2a44b Highlight net tool is not deactivated after a single use. 2016-01-29 10:56:29 +01: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
Maciej Suminski 75c8094b5a Make DRC markers not editable with the standard tools (GAL). 2016-01-20 15:22:09 +01:00
Simon Richter da9ca2def2 Avoid cast from const_iterator to iterator
The standard library requires iterators passed to functions that modify the
container to be mutable iterators, but GCC's implementation accepts
const_iterator in some places where these are only used to mark a place,
but the actual modification happens through a different parameter.

As this breaks implementations that use the passed iterator to modify the
container (e.g. because they use a different data organization), this is
not portable; because we already have a non-const reference to the
container anyway, this is trivially fixed as well.
2016-01-17 12:31:00 -05:00
Simon Richter ef582c07f3 Drop some debug output
This was apparently left in from debugging earlier, and should no longer be
needed. Since it uses a GCC extension, it makes compilation on others fail.
2016-01-17 10:59:17 -05:00
Simon Wells a88e61a6e0 Fix uninitialized variable in PCBNEW_CONTROL::CursorControl 2016-01-11 17:12:49 -05:00
Simon Wells 712ff51d3f Clarify assignment as conditional in EDIT_TOOL::Main 2016-01-11 17:12:11 -05:00
Simon Wells dbb7b38bae Delete unused variables in GRID_HELPER::AlignToSegment 2016-01-11 17:06:11 -05:00
Chris Pavlina c44c076bdb Fix coding style error in 6429 2016-01-07 17:33:31 -05:00
Johannes Agricola 07b73b9677 Properly set keepout flag for new zones in GAL 2016-01-07 14:39:21 -05:00
Maciej Suminski 203e8156a1 pcbnew asks before rotating/flipping a locked item (GAL). 2016-01-05 17:01:59 +01:00
jean-pierre charras e175a96be4 Pcbnew: Enhancement: in Get footprint (hotkey 'T') : better footprint selector dialog. 2015-12-20 19:47:52 +01:00
Maciej Suminski 0caa47e73c Fixed crash on undo pad placement in the footprint editor (GAL). 2015-12-15 13:39:53 +01:00
Cirilo Bernardo 2128594a85 Coding policy fixes: remove trailing white space. 2015-12-14 16:20:54 -05:00
Tomasz Wlostowski 72b0593fdb Pcbnew: push and shove router fixes.
* Fix segfault caused by invalidation of the end item by
  PNS_LINE_PLACER::UpdateSizes().
* GAL zone drawing tool updates the ratsnest after zone drawing is complete.
* Fixed performance issue in zones processing using strict simplification
  only for the final filled area.
2015-11-18 09:35:17 -05:00
jean-pierre charras 21d700facc Replace "module" by "footprint" in a few messages. 2015-11-17 17:18:00 +01:00
Thomasz Wlostowski 6e470ece1d Pcbnew: fix push and shove router segfault bug. 2015-11-03 11:19:42 -05:00
Simon Wells 5bc6a55015 Changed behaviour so if the menu is closed without selection by pressing esc or clicking outside of the menu that the last highlighted option wont be selected 2015-10-08 02:32:36 +13:00
Maciej Suminski db8560f055 Fixed crash when placing 45-degree lines in the footprint editor (GAL). 2015-10-01 15:52:45 +02:00
Maciej Suminski 25d5a2fbfb Disable capture cursor & autopanning for tools in idle state (GAL). 2015-09-21 10:16:23 +02:00
jean-pierre charras 00cffb080e Make call to DXF importer not possible if a footprint does not exist, also in GAL mode. 2015-09-13 18:44:07 +02:00
Maciej Suminski 6e23979253 Removal tool asks for confirmation only for modules (GAL). 2015-09-08 11:17:30 +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
Maciej Suminski 24e7f961b9 Fix a Coverity report (catches an unhandled exception). 2015-09-01 11:32:23 +02:00
Tomasz Wlostowski 0723ac5bef enumeratePads: fix segfault when no module is loaded in the editor 2015-08-25 10:22:52 +02:00
Maciej Suminski 0cad702fc7 Fixed footprint editor crash on ref/val text layer change (GAL). 2015-08-15 16:00:34 +02:00
Henrik Nyberg 5486104e8d Fixed the missing remove zone corner menu entry. 2015-08-15 15:28:48 +02:00
Henrik Nyberg a6c94e26f6 Improved code for handling zone corner dragging (GAL). 2015-08-12 10:15:45 +02:00
Maciej Suminski f43510739c Append board in GAL. 2015-08-07 18:24:42 +02:00
Maciej Suminski 0bd85fd8d1 Fixed a minor memleak. 2015-08-07 18:20:49 +02:00
Maciej Suminski 5caa1523bd Handling Coverity reports. 2015-08-07 17:07:06 +02:00
Maciej Suminski 2a93d083ee More DXF import fixes. 2015-08-03 21:11:59 +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 e3cbfb0609 Better way of handling changes in EDIT_TOOL (GAL). 2015-07-31 17:40:19 +02:00
Maciej Suminski cb629e0ad4 Fixed DXF placing problem (GAL). 2015-07-30 13:49:36 +02:00
Maciej Suminski 3049bc1d5f Fixing SELECTION_TOOL heuristics, take #2. 2015-07-30 13:49:35 +02:00
Maciej Suminski 4718b6d7c8 Code formatting. 2015-07-30 13:49:35 +02:00
Maciej Suminski 29cbaa206e Fixed updating of Zoom & Grid context menus. 2015-07-30 13:49:35 +02:00
Maciej Suminski 094c286024 Fixed issues reported by Coverity. 2015-07-30 13:49:35 +02:00
Maciej Suminski 63b0e63152 Prevent 'select copper' & 'select trivial connection' from picking modules. 2015-07-28 17:33:18 +02:00
Maciej Suminski c632f3db18 Update ratsnest on footprint change (GAL). 2015-07-28 17:33:18 +02:00
Maciej Suminski 5402bf0960 Allow zone drawing tool to start a new zone in the previous zone last point. 2015-07-28 17:33:18 +02:00
Maciej Suminski 55b09483df Picker tool captures cursor by default. 2015-07-28 11:11:18 +02:00
Maciej Suminski 6983f90b9f Align cursor to the grid when dragging multiple items (GAL). 2015-07-28 10:28:59 +02:00
Maciej Suminski d010703eaf Fixed cursor freeze in pcbnew (GAL). 2015-07-24 10:58:47 +02:00
Maciej Suminski 656790a672 Make module texts selectable if overlapping with module pads. 2015-07-24 09:42:46 +02:00
Maciej Suminski 74584e2081 Fixed crash on undo layer change in TEXTE_MODULE. 2015-07-24 09:42:46 +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 982eee7905 Do not invoke PNS inline dragging when 'Duplicate' is run. 2015-07-24 09:42:45 +02:00
Maciej Suminski f7fa0852b5 Fixed screen scrolling on zooming in/out. 2015-07-24 09:42:45 +02:00
Tomasz Wlostowski 591f54f540 DRAWING_TOOL: show cursor when placing text 2015-07-22 13:51:59 +02:00
Maciej Suminski 83171482b3 Fixed a memleak (CONDITIONAL_MENU). 2015-07-22 10:46:57 +02:00
unknown 40ccc0bedf replace round() with KiROUND(), our function that is used almost everywhere for rounding, and detects int overflows in debug mode. 2015-07-17 10:26:48 +02:00
Maciej Suminski 27eafcb5c1 Fix erroneous cursor control with keys when grid size is less than one pixel with certain zoom levels. 2015-07-16 17:52:08 +02:00
Maciej Suminski 36d3d9f78e Cursor warps to the drag origin (GAL). 2015-07-15 17:32:30 +02:00
Maciej Suminski 4b45146c46 Improvements to the SELECTION_TOOL heuristics & sanitization rules. 2015-07-15 14:08:52 +02:00
Maciej Suminski 6a6ea35335 Fixed assert on double 'Move' command invocation (GAL). 2015-07-15 14:08:52 +02:00
Maciej Suminski 59af7a96f8 Minor code cleaning. 2015-07-15 14:08:52 +02:00
Maciej Suminski 36d1818b54 Fixed snapping problem when commands are issued from the context menu (GAL). 2015-07-15 14:08:51 +02:00
Maciej Suminski 2752953f34 Merging for non-copper zones (GAL). 2015-07-15 14:08:50 +02:00
Andrew Zonenberg 561a962977 Fixed bug where "add text" tool in module editor did not update the toolbar radio buttons correctly 2015-07-11 17:03:50 -07:00
Andrew Zonenberg 6775cf392a Removed leading space 2015-07-11 16:50:31 -07:00
Andrew Zonenberg 1ea566b59d Fixed bug where GAL text tool was overzealously capturing the cursor when not necessary 2015-07-11 16:03:07 -07:00
Andrew Zonenberg a3a0db9be9 Fixed bug where GAL module editor does not release mouse capture after exiting text tool 2015-07-11 15:31:01 -07:00
Maciej Suminski ca27eeb5c7 Fixed "select copper connection". 2015-07-09 20:04:54 +02:00
Maciej Suminski f0a1f6dd78 Hotkeys for selecting trivial or copper connection (GAL). 2015-07-09 17:11:34 +02:00
Maciej Suminski 825fe8e5de F4 panning (GAL). 2015-07-09 17:09:34 +02:00
Maciej Suminski 33e1797116 Tracks & vias properties dialog. 2015-07-09 13:35:51 +02:00
Maciej Suminski 13739217b8 New SELECTION_CONDITION subclass (OnlyTypes). 2015-07-09 13:35:49 +02:00
Jon Neal fdf5b821f0 Add centering cursor on zoom to GAL. 2015-07-09 10:18:27 +02:00
Maciej Suminski df15be4f01 CONTEXT_TRACK_VIA_SIZE_MENU: generic context menu that displays track/via sizes. 2015-07-07 18:36:56 +02:00
Maciej Suminski 15e9e69ae0 Clicking with keyboard handles keyboard modifiers (GAL). 2015-07-07 18:36:52 +02:00
Maciej Suminski e7099036d7 Fixed one key delay when moving items with arrow keys (GAL). 2015-07-07 18:36:50 +02:00
Maciej Suminski 1b4daade82 GRID_HELPER anchors for vias (GAL). 2015-07-07 18:36:32 +02:00
Maciej Suminski 453b05db09 One more zoom fit-to-screen fix (GAL). 2015-07-03 20:58:13 +02:00
Maciej Suminski 0cc6992d88 Double click finishes drawing (GAL). 2015-07-03 20:58:13 +02:00
Maciej Suminski 1b208e0a5e Display info in the message panel if only one item was selected using area selection tool. 2015-07-03 20:58:12 +02:00
Maciej Suminski 3cb095b7c2 GAL canvases update status bar, message panel & zoom widget. 2015-07-03 20:58:12 +02:00
Maciej Suminski 891bd3d629 Do not show 'Properties' menu entry if there is more than one item selected (GAL). 2015-07-03 20:58:11 +02:00
Maciej Suminski 766da1e494 Code formatting. 2015-07-02 16:11:15 +02:00
Tomasz Wlostowski 0ade919a98 router: fix shortcut crash & inline dragging for inline dragging P&S 2015-07-02 16:10:07 +02:00
Tomasz Wlostowski 171d39c8d0 router: invoke interactive drag when dragging traces/vias in edit tool (disabled by default) 2015-07-02 16:09:56 +02:00
Maciej Suminski 51c0ae3480 Fixed cursor offset in GAL. 2015-07-01 03:46:42 +02:00
Maciej Suminski b352ef9deb Panning with keyboard (GAL). 2015-06-30 14:08:29 +02:00
Maciej Suminski 30b679ae5e Cursor control with keyboard (GAL). 2015-06-30 14:08:24 +02:00
Maciej Suminski b5ef511063 Fixed alignment to grid when there is a grid offset (GAL). 2015-06-30 14:08:03 +02:00
Maciej Suminski 5ca8e0b9d6 Fixed incorrect polygon finishing in 45-degree mode (GAL). 2015-06-30 13:55:30 +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 37db33cbca Update cross hairshape (GAL). 2015-06-26 17:30:41 +02:00
Maciej Suminski ac6a90afa3 Update ratsnest after properties are changed. 2015-06-25 17:36:57 +02:00
Maciej Suminski 09febe745d Remove a corner from zone outline function (GAL). 2015-06-19 17:32:33 +02:00
Maciej Suminski a988ebaabd Zone merging (GAL). 2015-06-19 17:32:33 +02:00
Maciej Suminski 39ddb3e9ae Two new selection conditions: same net & same layer. 2015-06-19 17:32:33 +02:00
Maciej Suminski e91fdd0079 Removed redundant transition in SELECTION_TOOL. 2015-06-19 17:32:32 +02:00
Maciej Suminski a16dd894d5 Show Place & Drill origin in GAL. 2015-06-18 17:51:54 +02:00
Maciej Suminski 28a270a328 Refactored grid origin point drawing (GAL). 2015-06-18 17:51:53 +02:00
Maciej Suminski fa3d074ca4 Find command zooms in found items (GAL). 2015-06-18 17:51:52 +02:00
Maciej Suminski 8964ff8922 Hotkey lists displayed after pressing the Help button (GAL). 2015-06-18 17:51:52 +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 057bd1b886 PICKER_TOOL - generic tool for picking a point. 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 12adb25a71 Fixed 'Edit in footprint editor' hotkey (GAL). 2015-06-16 15:27:59 +02:00
Maciej Suminski dd5275f6c6 Minor SELECTION_TOOL fixes. 2015-06-16 14:51:39 +02:00
Maciej Suminski f202e5318c Fixed SELECTION_CONDITIONS::lessThanFunc(). 2015-06-05 17:48:59 +02:00
Maciej Suminski 209e630873 Disable net highlighting after loading a new board. 2015-06-04 14:54:08 +02:00
Maciej Suminski ce4b4f8221 Update ratsnest on zone refill (GAL). 2015-06-04 14:54:08 +02:00
Chris Pavlina 064e8a82e1 Fixed an assertion in arc drawing tool (GAL). 2015-06-02 20:16:55 +02:00
jean-pierre charras fd907a413c Minor changes: modify a few messages in dialogs to allow a better or more easy translation of these messages (too short messages cannot be safely translated).
Remove no more existing special.lib from template file kicad.pro
2015-05-22 13:00:43 +02:00
Maciej Suminski 01c9f09833 wxWidgets under OS X require wxMenuItem ids to be >0. 2015-05-18 13:48:13 +02:00
Maciej Suminski 6788e31a1e Fixed context menu crash on OS X (GAL). 2015-05-18 13:48:12 +02:00
Maciej Suminski 7c59d0dcc4 Layer toggling with 'Place Via' hot key when router is 2015-05-18 13:48:11 +02:00
Maciej Suminski 4fe65715a2 Added trivial connection selection (GAL). 2015-05-18 13:48:10 +02:00
Maciej Suminski 4f3337f5ed Fix hot keys for adjusting grid size (GAL). 2015-05-12 12:03:39 +02:00
jean-pierre charras 37b0868376 Pcbnew: fix minor issues about fast grid switching, and next/previous grid selection from hotkeys. (GAL mode still has an issue) 2015-05-12 11:05:36 +02:00
Maciej Suminski 7eaceffd35 Fixed weird handling of 'Find' action. 2015-05-05 20:39:42 +02:00
Maciej Suminski da75c52665 Hot keys settings are synchronized between GAL & legacy 2015-05-05 20:39:42 +02:00
Maciej Suminski 99e5228948 Moved the list of TOOL_ACTIONs to ACTION_MANAGER. 2015-05-05 20:39:41 +02:00
unknown 04ffd0a4ac i18n pcbnew GAL popup menu entries 2015-05-03 17:53:44 +02:00
jean-pierre charras d41bc31c49 Fix bug #1447905 (very minor bug, in fact). Fix a few minor coding style issues.
Fix 2 coverity warnings.
2015-05-03 08:31:14 +02:00
jean-pierre charras 2047d87317 Minor fixes (Bug #1414328 and Bug #1440312). Remove translatable attribute in a debug message.
tools/edit_tool.cpp: remove limitation (GAL mode) to delete the last pad in a footprint (a footprint can have 0 pad, for instance a logo)
2015-05-01 17:01:09 +02:00
jean-pierre charras 5a02b91e5f Fix some issues created by rev 5632:
*  Use only double to store zoom levels in class BASE_SCREEN (int type is not working for eeschema or page layout editor) (this fix Bug #1450551, Assertion failed on wxRound() when zooming)
*  Fix crash in all apps but Pcbnew when a grid or a zoom was selected from the popup menu.
*  Modify default hotkeys for Next Grid and Previous Grid: the initial key was a dead key, not suitable as hotkey. the 'N' and Shift N keys are used instead (with a change for unfill zone hotkey)
*  Modify code in EDA_DRAW_FRAME::SetNextGrid() and EDA_DRAW_FRAME::SetPreviousGrid() to make them compatible with other editors than the board editor.
2015-05-01 11:31:23 +02:00
Maciej Suminski 81ea3ce408 Missing files. 2015-04-30 11:08:18 +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 9ef9b7b8e1 Preliminary selection mode for SELECTION_TOOL. 2015-04-30 10:46:07 +02:00
Maciej Suminski b8295b6af8 Code formatting. 2015-04-30 10:46:07 +02:00
Maciej Suminski 787415c2aa Updating the user grid size on change in GAL. 2015-04-30 10:46:06 +02:00
Maciej Suminski 3e46f2233a Corrected "Zoom Auto" in GAL with empty board. 2015-04-30 10:46:06 +02:00
Maciej Suminski 6379d80636 Zoom & grid menus for GAL canvases. 2015-04-30 10:46:05 +02:00
Maciej Suminski 06b978b829 Refactored CONTEXT_MENU, added handler for updating. 2015-04-30 10:46:05 +02:00
Maciej Suminski 10a4b64005 More icons for context menus. 2015-04-30 10:46:04 +02:00
Maciej Suminski 025d4cf23a Alternative way of handling grid settings in GAL. 2015-04-30 10:46:04 +02:00
Maciej Suminski 4be876a13a Expandable CONTEXT_MENUs (GAL). Minor CONTEXT_MENU 2015-04-30 10:46:04 +02:00
Maciej Suminski 946b9d1933 setTransitions() are called automatically for tools. 2015-04-30 10:46:03 +02:00
Maciej Suminski c4888afbcc Refactored the way GAL handles zoom settings. 2015-04-30 10:46:02 +02:00
Maciej Suminski 5c984aa069 Parametrized TOOL_ACTIONs. 2015-04-30 10:46:01 +02:00
jean-pierre charras 20dfe9ca29 Minor fixes: dialog_create_array.* files: clean code ( remove useless declarations and functions ).
fix a few coverity warnings about not initialized members in ctors.
2015-04-22 18:39:49 +02:00
jean-pierre charras c519eea12b 3D viewer: fix (the fix is not perfect) a minor issue in zone rendering: copper thickness was not good when the option 'Show Holes in Zones" was OFF, and "Show Copper Thickness" ON.
Fix a few coverity minor warnings.
2015-04-12 19:44:46 +02:00
Maciej Suminski cec0a956bd bugfix: pcbnew segfaults after adding footprint directly from editor 2015-04-11 23:41:22 +02:00
Eldar Khayrullin 5d55fa018e Translate Selection tool "Select..." entry. 2015-04-04 21:57:38 +02:00
jean-pierre charras cbf487c598 Pcbnew: duplicate and create array: popup menus in legacy mode: remove these options for a few items which cannot be (safely) duplicated (pads in board editor, and a few others )
Modedit, GAL mode: fix a crash when a duplicated area includes the ref or value fields.
Add missing bitmap for pad enumerate.
fix bad flag for Portuguese language.
Fix a few typo in messages.
2015-04-03 21:10:09 +02:00
jean-pierre charras 4def0958a5 Fix some coverity warnings. Fix typo and errors in comments. Very minor other fixes. 2015-04-03 11:13:06 +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 589dd442f5 Clippy returns home. 2015-04-02 09:18:45 +02:00
Maciej Suminski 8be73ad05a KiCad assistant. 2015-03-31 23:45:02 +02:00
Maciej Suminski 9e8719d3ff Fixed overlapping segment endings in OpenGL view. 2015-03-30 14:09:56 +02:00
John Beard 900ecbae9d Fix for cancellation of duplicate in GAL mode. 2015-03-16 10:25:40 +01:00
jean-pierre charras f743b98844 Try to fix Bug #1431391 (Unable to edit pins in Schematic library editor). It happens on XFCE, but also on Unity. This fix works on Unity. (it is due to the fact the dialog is not raised, for an unknown reason, and this bug depend on the way Eeschema and Libedit are run).
Add Ctrl+E hotkey in eeschema to edit a component with Libedit (similar to pcbnew Ctrl+E hotkey)
As usual, fix a few minor coverity warnings
2015-03-14 12:50:39 +01:00
Tomasz Wlostowski e9bc7b58cc Snap cursor to pad center when moving (GAL footprint editor). 2015-03-11 18:06:44 +01:00
Maciej Suminski b6c5b291a2 Coverity fixes. 2015-03-11 14:17:43 +01:00
Maciej Suminski 035b231b62 Refinement for fix in 5497. 2015-03-10 18:31:23 +01:00
Maciej Suminski 2ecb72da84 Fixed disappearing selected items when switching between GAL canvases. 2015-03-10 17:05:38 +01: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 c160a7de17 Capturing cursor in drawing tools (GAL). 2015-03-10 14:43:14 +01:00
Maciej Suminski cc72e585f0 Fixed segfault in arc drawing tool (GAL footprint editor). 2015-03-10 14:32:40 +01:00
Maciej Suminski 56b692ae3e "Select net/connection" (GAL). 2015-03-10 09:36:04 +01:00