Seth Hillbrand
46feb76aba
Allow EDA_RECT to properly be uninitialized
...
The base initialization of EDA_RECT sets a 0/0/0/0 rectangle that
prevents merging properly with valid EDA_RECT. This sets the default to
be uninitialized until the internal data are set.
2019-08-16 10:54:16 -07:00
Seth Hillbrand
fbc19ab893
Make coroutines stack size configurable
...
This allows rapid debugging of the coroutine memory issues. It moves
the default stack size to 256 * 4096 = 2^20, which will utilize full
pages on all architectures.
2019-08-15 09:25:13 -07:00
Jeff Young
8ba7d4570c
Move warp-mouse-on-move setting from Eeschema settings to common settings.
...
It's also used by the Symbol Editor, and will likely be used by
Pcbnew and friends in the future.
2019-08-15 12:53:04 +01:00
Jeff Young
fb0fd825ba
Don't try and be too smart about scaling and worksheets.
...
Fixes: lp:1815586
* https://bugs.launchpad.net/kicad/+bug/1815586
2019-08-14 11:37:10 +01:00
Jeff Young
3cdf88f2c6
CERN copyrights for work packages.
2019-08-14 09:35:15 +01:00
Ian McInerney
8493daf9ff
Unify menu item creation for closing a window
...
* Push a function into CONDITIONAL_MENU that adds the item
* Modify the tooltip for close and exit items to have the
program name
Fixes: lp:1835454
* https://bugs.launchpad.net/kicad/+bug/1835454
2019-08-14 09:35:15 +01:00
Jeff Young
c2d77a7300
Add some defensive code to prevent re-entrant printing.
...
Fixes: lp:1765965
* https://bugs.launchpad.net/kicad/+bug/1765965
2019-08-13 18:00:09 +01:00
Jeff Young
a33d67f6b4
Push shift/cmd+<enter> processing down into dialog shim.
...
This will make them more uniform rather than only supported when
something else is using <enter>.
Fixes: lp:1838353
* https://bugs.launchpad.net/kicad/+bug/1838353
2019-08-13 16:53:40 +01:00
Ian McInerney
95430e131e
cvpcb: cleanup include statements
2019-08-12 14:19:01 -04:00
Ian McInerney
9fda86e261
cvpcb: Move file extension to common and deprecate a header
2019-08-12 14:19:01 -04:00
Michael Kavanagh
79b2ff7551
Refactor deleteTool ACTION removing duplicates
2019-08-12 13:49:55 -04:00
Seth Hillbrand
0b80c00678
Add Valgrind stack instrumentation
...
Our coroutine system can make debugging memory issues harder by not
following a standard stack allocation system. We can get around this by
using valgrind's built-in stack instrumentation. Each coroutine
registers a stack allocation allowing memcheck to recognize when
accesses are bounded.
2019-08-10 08:28:25 -07:00
Jeff Young
3a2c39b0f8
Remove disappearing-preferences hack in favour of fix in wxWidgets.
...
This has been patched in our local OSX wxWidgets branch.
2019-08-10 11:58:05 +01:00
Jeff Young
17b5a3750b
Move preferences-lost hack down into EDA_DRAW_FRAME.
...
I've now seen it in Eeschema as well as Pcbnew.
Fixes: lp:1839148
* https://bugs.launchpad.net/kicad/+bug/1839148
2019-08-09 21:22:56 +01:00
Jeff Young
8db8119564
Redraw selection halos after zooming.
...
Fixes: lp:1838869
* https://bugs.launchpad.net/kicad/+bug/1838869
2019-08-08 13:51:23 +01:00
Seth Hillbrand
5151cd0bfe
C++14: Remove unused make_unique.h
...
Also removes header references now that we are in C++14, this is
built-in to the std
2019-08-07 09:27:31 -07:00
Seth Hillbrand
5facd37376
GAL: Use cursor enum
...
Not all platforms define the WXWIN_COMPATIBILITY_2_8 so an int isn't
properly cast.
2019-08-06 18:33:42 -07:00
Seth Hillbrand
e985e10eec
gerber: Fracture footprint polygons before exporting
...
Footprint polygons can be degenerate and need
to be simplified before exporting
2019-08-06 17:00:27 -07:00
Ian McInerney
920120864f
Fix initialization of COLOR4D statics
...
Just declaring as static const would give an initialization order
fiasco since they were being used to initialize other statics.
2019-08-06 10:06:10 -07:00
Ian McInerney
b6f6fc3d65
Return handled status for actions run from hotkeys
2019-08-05 20:46:05 -06:00
Jeff Young
1a68d7c200
Cleanup no-longer-used variable.
2019-08-05 16:48:18 -06:00
Jeff Young
97d70d7844
Fix cursor bugs in simulation.
...
1) cancel simProbe or simTune when simulator window closed
2) handle non-stock cursors through SetCurrentCursor()
Fixes: lp:1833583
* https://bugs.launchpad.net/kicad/+bug/1833583
2019-08-04 16:25:36 -06:00
Jeff Young
5503727d3d
Fix some placement bugs with selection haloes on text.
...
Fixes: lp:1838841
* https://bugs.launchpad.net/kicad/+bug/1838841
2019-08-03 17:20:54 -06:00
Jeff Young
cc82e59003
Push the Quit/Close menu logic down into common.
2019-08-02 14:32:49 -06:00
Jeff Young
937e3c2d48
Make m_Text private so we don't keep getting bugs where m_shown_text fails to get updated.
...
Fixes: lp:1838655
* https://bugs.launchpad.net/kicad/+bug/1838655
2019-08-01 20:36:59 -06:00
Ian McInerney
bea74c27e5
Add log trace for tool handling
2019-07-31 21:56:53 -06:00
Jeff Young
6bf1ac45e3
New selection highlighting model for eeschema.
2019-07-29 19:57:41 -06:00
Jeff Young
3904d7ccfc
Push some search stuff down into EDA_DRAW_FRAME so it can be shared.
...
Also rewrites the PCBNew Find dialog to make use of the above, including:
1) searching in user-defined footprint fields
2) searching in pcb text
3) a history list in the search popup
4) case sensitive searching
5) word sensitive searching
6) the ability to turn wildcard searching on/off
7) better placement of the result when the dialog obscures part of the
window
Fixes: lp:1838006
* https://bugs.launchpad.net/kicad/+bug/1838006
2019-07-26 17:53:32 -06:00
Jeff Young
460b03372d
Implement preference for immediate actions.
...
Also pushes prefer-selection-to-dragging to common.
2019-07-25 20:41:22 -06:00
jean-pierre charras
dd702cd53d
Remove pads not on copper layers (just on tech layers) from connectivity calculation.
...
Pads not on copper layers now do not have a netname, and are no longer taken in account in connectivity.
Especially it avoid creating useless rats-nests for these pads.
2019-07-25 13:08:41 +02:00
jean-pierre charras
858db3c104
Synchronize toolbars state with current options after rebuilding them.
...
Previously, for instance after modifying preferences or language,
they were rebuilt but the tools state was not set due to a missing call to SyncToolbars() after rebuilding.
2019-07-20 18:16:35 +02:00
Tomasz Wlostowski
6cab769f41
MSVC support for libcontext
...
This uses the Windows native Fiber API.
2019-07-17 08:10:47 -04:00
Tomasz Wlostowski
8b492c3c45
Export LIB_TREE_ITEM
2019-07-17 08:10:47 -04:00
Seth Hillbrand
ae0bdb96e5
Resetting polygon inflate/deflate defaults
...
These are used in too many places throughout pcbnew to change all
polygons. If we need different rounding, we'll want to implement them
on a per-call basis.
2019-07-16 11:46:18 -07:00
jean-pierre charras
6388189f48
Preferences, Hotkey list: Avoid list to be shown twice.
...
The bug was due to the fact TransferDataToWindow was called twice, and the hotkey list was not cleared before rebuild it
2019-07-16 18:30:14 +02:00
Jeff Young
2c5876ee8c
Add more control over how corners are handled when inflating polygons.
2019-07-16 16:41:21 +01:00
Jeff Young
e816a0c29d
Push Eeschema & PLEditor PICKER_TOOLs down into common.
...
Also implements a more robust push/pop tool strategy for pickers.
2019-07-16 00:44:01 +01:00
Jeff Young
58ca5b71a9
A more robust fix for 36f1d023f0
.
...
This one also handles when the events get out-of-order due to them
starting out in the Simulation window and not getting dispatched until
the mouse goes over the Schematic window.
Fixes: lp:1835907
* https://bugs.launchpad.net/kicad/+bug/1835907
Fixes: lp:1836544
* https://bugs.launchpad.net/kicad/+bug/1836544
2019-07-15 14:15:24 +01:00
Jeff Young
a3c74051c2
Allow edits to self-intersecting polygons.
...
1) Intermediate states might be self-intersecting, and we shouldn't
be policing our users on what order to do things in
2) The polygon might already be self-intersecting, at which point we're
preventing the user from fixing it.
Also includes better const management for SHAPE_POLY_SET API.
Fixes: lp:1833831
* https://bugs.launchpad.net/kicad/+bug/1833831
2019-07-14 18:18:48 +01:00
Jeff Young
928d6c5dff
Implement preserved-corners to prevent divots when filling adjacent zones.
...
Fixes: lp:1460787
* https://bugs.launchpad.net/kicad/+bug/1460787
2019-07-14 18:18:48 +01:00
Jeff Young
1a7cef2950
Improve performance, commenting and API of some polygon classes.
2019-07-14 10:39:38 +01:00
Jeff Young
37af3adffb
Add preference for flip axis.
...
Fixes: lp:1836267
* https://bugs.launchpad.net/kicad/+bug/1836267
2019-07-14 10:36:48 +01:00
Jeff Young
a3855cb4f2
Allow thermal spokes to be same width as minimum width.
...
Also some changes for readability and clarity, both in the code
and in the Feature Constraints panel.
Fixes: lp:1835674
* https://bugs.launchpad.net/kicad/+bug/1835674
2019-07-14 10:36:48 +01:00
Ian McInerney
ff9d899ae0
pcbnew: Clean up warnings with unit handling in the DXF export
2019-07-10 12:21:01 -04:00
Jeff Young
30ec895c96
Cleanup event processing stuff to keep better track of "handled".
...
See: https://lists.launchpad.net/kicad-developers/msg41471.html .
2019-07-09 21:59:46 +01:00
Jeff Young
483dc24e87
Homogenize selection tools around our HIG.
...
In particular make addative and exclusive-or selections work the
same way.
Also give Highlight Net a hotkey now that it can't use ctrl-click
anymore.
2019-07-09 21:59:46 +01:00
Jeff Young
4852c91b42
Possible fix for GTK bug differentiating hotkeys from menu picks.
...
Fixes: lp:1835672
* https://bugs.launchpad.net/kicad/+bug/1835672
2019-07-08 10:51:45 +01:00
Jeff Young
a11f3a0b80
Make <esc> unhighlight nets, but only after all tools have been cleared.
...
Also moves the Highlight Net hotkey from activating the tool to just doing
a one-shot highlight.
Fixes: lp:1835658
* https://bugs.launchpad.net/kicad/+bug/1835658
2019-07-08 00:02:25 +01:00
Jeff Young
a3b855ac6c
Massage an earlier fix so that mouse-clicks in tools update the highlighting.
2019-07-06 17:50:35 +01:00
jean-pierre charras
39c830435c
Fix a bug created by commit ea0edaba
.
2019-07-06 14:48:53 +02:00