Jeff Young
2d29f76c49
Fix incorrect control-key map for hotkeys.
...
Fixes: lp:1832431
* https://bugs.launchpad.net/kicad/+bug/1832431
2019-06-12 10:08:23 +01:00
Seth Hillbrand
06d2170501
Fix default User Template location
...
When we assign a string to the wxFilename, it takes the last section as
the filename (unless there is a trailing '/'). So on Linux, we got
/home/user for the Documents dir and /home/ was the directory while
'user' was the filename. Appending directories 'kicad/templates' made
the final directory '/home/kicad/templates'. Forcing this to be a
directory restores correct behavior.
(cherry picked from commit 0ee38653f7
)
2019-06-11 17:11:27 -07:00
Jeff Young
7726b039b2
Re-jigger standard submenus so they both link AND work.
2019-06-11 18:03:16 +01:00
John Beard
9625cea57f
Fix hotkey debug spew
...
Two issues:
* Unassigned hotkeys were being passed to WX in the menu strings as
"<unassigned>". WX doesn't recognise this, and prints debug each time.
Unassigned hotkeys are no longer rare or naughty, so we shouldn't provoke
debug spew. Suppress by not appending hotkey strings for actions with 0
(i.e. unassigned) hotkey IDs.
* The zone cutout tool uses GR_KB_SHIFT, not MD_SHIFT. This causes
"unknown hotkey" spew from WX.
2019-06-11 14:40:57 +01:00
Jeff Young
b9e07f2a70
Attempt to fix un-resolved sub-menus.
...
While I'm pretty sure this will work, the issues don't appear on OSX
so I can't be positive.
Fixes: lp:1832049
* https://bugs.launchpad.net/kicad/+bug/1832049
2019-06-11 10:04:21 +01:00
Jeff Young
a91934c7b3
Don't update toolbars on mouse-move events.
...
It produces cursor-lag in some instances, and none of our state changes
currently rely on mouse position.
Fixes: lp:1831541
* https://bugs.launchpad.net/kicad/+bug/1831541
2019-06-11 09:52:01 +01:00
Jeff Young
9f427da56f
Use the ACTION_ID offset when updating the layer pair bitmap.
2019-06-11 09:13:56 +01:00
Jeff Young
a3f3fb39de
Convert 3DViewer to new hotkey architecture.
2019-06-10 23:46:01 +01:00
Jeff Young
aeadc768f6
Add import of hotkeys and fix bugs in reanding and writing hotkeys.
2019-06-10 23:46:01 +01:00
Jeff Young
b0e8443383
Sync-ing of menu has been done in CONDITIONAL_MENU for some time now.
2019-06-10 23:46:01 +01:00
Jeff Young
620395608c
Move Kicad Manager launch bar to ACTIONs.
...
Also fixes a bug where hotkeys weren't getting put in menus.
2019-06-10 23:46:01 +01:00
Jeff Young
a568e70b99
Follow naming conventions.
2019-06-10 23:46:01 +01:00
Jeff Young
5e49517781
Move hotkeys to ACTION architecture.
2019-06-10 23:46:00 +01:00
Jeff Young
c13ef839c1
Tool framework for Kicad Manager frame.
2019-06-10 23:46:00 +01:00
Jeff Young
16cb1e731d
Finish moving TOOL_MANAGER down to the EDA_BASE_FRAME level.
2019-06-10 23:46:00 +01:00
Jeff Young
c3cc85eb1c
A little bit of cleanup.
2019-06-10 23:46:00 +01:00
Jeff Young
6025256e07
Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out.
2019-06-10 23:46:00 +01:00
Jeff Young
d323fb57a7
Give KIWAY_HOLDER its own header file.
2019-06-10 23:46:00 +01:00
Jeff Young
e606587ff6
Move remaining Symbol Tree ctx menu cmds to ACTIONS.
...
Also moves the various Player instantiators down into COMMON_TOOLS
for better sharing.
2019-06-10 23:46:00 +01:00
John Beard
7ebda0247f
Common: Remove legacy_gal library, fold into common
...
Return the EDA_DRAW_FRAME class back to common, whence it came (before it was
duplicated into legacy_wx and legacy_gal). Now there is only one
implementation (the GAL one), it doesn't need to be in a separate library.
This simplifies the dependencies for common lib users.
2019-06-10 18:56:57 +01:00
jean-pierre charras
074ebe0e2b
Pl_editor: fix missing switch to "C" locale when saving selected items in clipboard.
...
It was only noticeable in countries using a comma as floating point separator.
Fixes: lp:1832211
https://bugs.launchpad.net/kicad/+bug/1832211
2019-06-10 11:55:52 +02:00
Seth Hillbrand
4a52062a54
GAL: Make high-contrast meld into background
...
This mixes the de-emphasized layers into the background color rather
than merely a black color. This also keeps some of the original layer
color.
Fixes: lp:1831316
* https://bugs.launchpad.net/kicad/+bug/1831316
2019-06-09 08:16:58 -07:00
jean-pierre charras
63eb552e0a
Fix issue in cairo_gal when drawing a 360 deg arc (in fact a circle).
...
It was due to a angle normalization between -360 and 360 degrees.
So, in arcs, if the start angle and end angle diff is n*360 deg,
this normalization gives start angle = end angle.
The fix forces end angle = start angle+360deg in this case.
Fixes: lp:1832096
https://bugs.launchpad.net/kicad/+bug/1832096
2019-06-09 11:06:00 +02:00
Seth Hillbrand
1a3b129d1e
pcbnew: Don't reset triangular points for intersection
...
We prevent the creation of invalid polygons by keeping the converging
lines from intersecting. This test doesn't make sense for triangular
polygons as they always intersect and we want to allow them to move
outside of the singular point.
Fixes: lp:1831481
* https://bugs.launchpad.net/kicad/+bug/1831481
(cherry picked from commit 966173c129
)
2019-06-07 21:35:29 -07:00
jean-pierre charras
dfbe02c8c2
pl_editor: show the page limits and the coord reference corner position.
2019-06-07 12:42:28 +02:00
jean-pierre charras
ce9b1e3da5
Pl_editor: add missing HitTest() for WS_DRAW_ITEM_BITMAP item.
2019-06-06 11:13:10 +02:00
Jon Evans
27a5ed1a9f
Mathplot: properly set foreground color when saving screenshots
...
Fixes: lp:1810914
* https://bugs.launchpad.net/kicad/+bug/1810914
2019-06-05 22:43:50 -04:00
Seth Hillbrand
c6af38477d
CMake: Handle custom_target indirection
...
Building custom targets that depend on custom commands such as our
keyword lexer requires two layers of indirection to pick up changes
properly and not overwrite the same file in parallel builds.
Fixes: lp:1831643
* https://bugs.launchpad.net/kicad/+bug/1831643
2019-06-05 13:05:43 -07:00
Jeff Young
2d40425e4d
Move footprint & symbol tree context menus to tool infrastructure.
...
Fixes: lp:1831692
* https://bugs.launchpad.net/kicad/+bug/1831692
2019-06-05 20:16:48 +01:00
jean-pierre charras
6f8a0a4eed
pcbnew: Fix launching of action plugins from an action menu
...
The action menu handler was capturing too many menuitem events.
Only context menuitem highlight events and some popup menu events need to be captured
Any id < 0 (like automatically assigned menuitem id) is no longer captured.
Fixes: lp:1831669
https://bugs.launchpad.net/kicad/+bug/1831669
2019-06-05 11:14:31 +02:00
Jeff Young
1ea5b04e22
More ACTIONS work. Nearly done now.
2019-06-04 22:31:42 +01:00
jean-pierre charras
eb1faebf1f
Pcbnew: prepare the new zone filling algo (filled polygons with no thickness). Work in progress.
2019-06-04 21:24:24 +02:00
Jeff Young
568c8c336b
Move DRC control to a tool; move assorted commands to ACTIONS.
2019-06-03 21:08:30 +01:00
Jeff Young
9f1e2e34b7
Move some dupicated tools to common tools.
2019-06-03 21:08:30 +01:00
Jeff Young
e517199794
Move ConfigurePaths and LibTable management to common ACTIONs.
2019-06-03 21:08:30 +01:00
Seth Hillbrand
1f30d0c803
pcbnew: remove the last dlist components from pcbnew
2019-06-02 20:06:11 -07:00
Jeff Young
33773bad4d
Yet more command conversions to ACTIONs.
2019-06-02 21:10:56 +01:00
Jeff Young
6ac273264d
Move Show3DViewer to common action.
2019-06-02 16:21:44 +01:00
Jon Evans
374a3feb3e
Fix message panel update
2019-06-02 11:20:28 -04:00
Jeff Young
45a9544726
Instantate a default menu from no selection when menu is first built.
...
This might resolve some of the GTK menu anomalies.
2019-06-02 12:58:08 +01:00
jean-pierre charras
b7f4113f96
Some minor fixes to prepare the new zone filling algo (no filled polygon thickness)
2019-06-02 11:51:47 +02:00
Seth Hillbrand
6a45446496
pcbnew: Remove the last dlist from modules/pcbnew
2019-06-01 20:55:32 -07:00
Seth Hillbrand
9163ac543a
pcbnew: Move pads to std::deque
2019-06-01 16:23:54 -07:00
Jeff Young
3e655801b5
Fix bug in selecting grid size in Pcbnew.
...
Fixes: lp:1831337
* https://bugs.launchpad.net/kicad/+bug/1831337
2019-06-01 23:03:24 +01:00
Jeff Young
7f1ed30ff5
Move DeMorgan handling to ACTIONs.
2019-06-01 23:03:24 +01:00
Seth Hillbrand
888c01d11b
pcbnew: Move tracks to std::deque
2019-06-01 09:53:23 -07:00
Seth Hillbrand
961b22d603
pcbnew: Changing drawings from dlist to std::deque
2019-06-01 09:51:57 -07:00
Jeff Young
296ec66796
Cosmetic cleanup in preference panels.
2019-06-01 16:29:12 +01:00
Jeff Young
74e10791ff
Fix some Mac-specific issues with the Preferences... menu item.
2019-06-01 16:29:12 +01:00
Jeff Young
f67df4bf11
Collapse ARRAY_CREATOR into single class now that legacy instance is gone.
...
Also removes AllowLegacyCanvas ADVANCED_CONFIG option.
2019-06-01 16:29:12 +01:00
Jon Evans
b578f8b362
Fix infinite loop in grid initialization, Cairo edition
2019-05-31 20:51:23 -04:00
Jeff Young
7553cc2651
Clean up some dangling legacy odds and ends.
2019-06-01 01:17:46 +01:00
Jeff Young
c71c1d4d1a
Prevent infinite loop when grid size not defined.
2019-06-01 00:17:04 +01:00
Jeff Young
ed9153a786
Fix assert launching PCBNew.
2019-06-01 00:06:25 +01:00
Jeff Young
c2662b0e11
Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME.
2019-05-31 21:55:30 +01:00
Jeff Young
d6e9bdf07b
Convert remaining legacy drawing code to print code.
2019-05-31 21:54:22 +01:00
Jeff Young
03bab2f4a9
Remove some more legacy drawing stuff.
2019-05-31 21:54:22 +01:00
Jeff Young
d2daab808c
Remove some legacy cursor handling stuff.
2019-05-31 21:54:22 +01:00
Jeff Young
edc8438ef0
Start the process of removing the legacy draw panel.
2019-05-31 21:54:21 +01:00
jean-pierre charras
4842c73530
Fix minor compil warnings.
2019-05-31 21:38:30 +02:00
Jon Evans
9094a17795
Zoom to fit: only consider worksheet if there are no other items
2019-05-29 21:27:59 -04:00
Seth Hillbrand
87d997704f
Enable cairo switch
...
Hooks up the action to the event.
Fixes: lp:1830976
* https://bugs.launchpad.net/kicad/+bug/1830976
2019-05-29 15:21:21 -07:00
Ian McInerney
45f10fcff1
gal: Decoupled X and Y grid step sizes
...
Made the X and Y step sizes for the grid separate in the GAL.
Cleaned up the types inside the DrawGrid functions.
Fixes: lp:1821416
* https://bugs.launchpad.net/kicad/+bug/1821416
2019-05-28 20:07:45 -07:00
Jeff Young
1e9da7f57b
Remove CurItem() architecture and legacy routers and drawing code.
2019-05-29 00:26:30 +01:00
Jeff Young
9d29e94cb5
Remove some more legacy code.
2019-05-29 00:26:29 +01:00
Jeff Young
0260b32125
Push resetLocalCoords down into COMMON_TOOLS.
...
Fixes: lp:1830693
* https://bugs.launchpad.net/kicad/+bug/1830693
2019-05-29 00:26:29 +01:00
Jeff Young
a27e4246e0
Move some more menu commands to ACTIONs.
2019-05-29 00:26:29 +01:00
Jeff Young
c0909611d3
Remove a bunch more legacy editing code.
2019-05-29 00:26:29 +01:00
John Beard
6b4b2d61f8
Common: do not conditionally define wxPoint/Size operator<<
...
Due to an interaction with old (<1.59) versions of Boost, the ostream
operator<< for wxPoint and wxSize is requried to use
BOOST_CHECK_EQUAL_COLLECTIONS (the print_log_value<T> function is not
used by this macro until 1.59).
Because these functions are available in Debug builds, unit tests that
use such functions will break when compiled as Release or
RelWithDebugInfo.
The change here is to not disable these functions in Release builds.
Also, the functions are moved to common.h, to go with other generic
WX "polyfill" functions. Although they might be commonly used by the
EDA_ITEM::Show functions, they are not specifically related to that
class.
Fixes: lp:1830612
* https://bugs.launchpad.net/kicad/+bug/1830612
2019-05-28 13:52:36 +01:00
Jeff Young
718ad77891
Fix a bug introduced when UseGalCanvas() no longer switches.
...
We still need to setup the viewport the first time.
Also removes some more legacy editing code.
2019-05-27 18:47:20 +01:00
Jeff Young
9d9745b555
Remove more legacy editing code.
2019-05-27 18:47:20 +01:00
Jon Evans
0a6b1ea256
Improve image alpha handling in PDF and PS plotters
...
Fixes: lp:1825276
* https://bugs.launchpad.net/kicad/+bug/1825276
(cherry picked from commit 4adf89b40b
)
2019-05-27 13:06:26 -04:00
Jeff Young
e9e28b9aac
Retire legacy block architecture.
2019-05-27 11:58:56 +01:00
Jeff Young
21c216556b
Cut/copy/paste for PlEditor.
2019-05-27 11:58:55 +01:00
Jeff Young
6936effaa7
Implement undo for Page Settings in PlEditor, Eeschema and PCBNew.
...
Fixes: lp:1820059
* https://bugs.launchpad.net/kicad/+bug/1820059
2019-05-27 11:58:55 +01:00
Jeff Young
248089c934
Get rid of PageLayout globals so drawing the preview doesn't mess up the document.
2019-05-27 11:55:58 +01:00
Jeff Young
bdd44ce88c
Use consistent PageLayout data structure names.
2019-05-27 11:55:58 +01:00
Seth Hillbrand
0e5cc54ec9
Eagle: Fix crash when importing Eagle V6
...
This fixes multiple issues when importing Eagle V6 files.
Crashes occured when arcs of 0-length were found and when parts were
referenced in the schematic that were not found in the library. This
could happen if the library and schematic were different cases.
Fixes: lp:1830564
* https://bugs.launchpad.net/kicad/+bug/1830564
2019-05-26 20:31:55 -07:00
Jon Evans
d2a2dea9c4
Eeschema: fix worksheet and background color for printing
...
Fixes: lp:1820611
* https://bugs.launchpad.net/kicad/+bug/1820611
(cherry picked from commit 720b26d11e
)
2019-05-26 14:26:26 -04:00
Jon Evans
b40289c1bd
Eeschema: use worksheet color when plotting
...
Fixes: lp:1825568
* https://bugs.launchpad.net/kicad/+bug/1825568
(cherry picked from commit e35be13b23
)
2019-05-26 13:03:23 -04:00
Jon Evans
15cf25a6fc
GerbView: Fix selection of the last two grid settings
...
Fixes: lp:1827642
* https://bugs.launchpad.net/kicad/+bug/1827642
(cherry picked from commit ba19d93df9
)
2019-05-26 13:03:23 -04:00
Jon Evans
e156e4509c
Report actual intersection position for crossing tracks
...
Fixes: lp:1825588
* https://bugs.launchpad.net/kicad/+bug/1825588
(cherry picked from commit f101934909
)
2019-05-26 13:03:23 -04:00
Jon Evans
549b76739e
Exclude invisible items from view bounding box for zoom-to-fit
...
Fixes: lp:1116457
* https://bugs.launchpad.net/kicad/+bug/1116457
(cherry picked from commit ede2575018
)
2019-05-26 13:03:23 -04:00
jean-pierre charras
b5c80fe689
Fix missing include to compile pcbnew_wrap.cxx
2019-05-26 09:12:03 +02:00
jean-pierre charras
568d4e2b19
Avoid including id.h in a lot of files that do not use it.
2019-05-26 08:14:25 +02:00
jean-pierre charras
a6e6e914af
Eeschema: make menu file history working again.
...
(the bug was due to an unexpected menuitem ID range used for the menuitems of the history)
2019-05-25 20:58:28 +02:00
Seth Hillbrand
6bcf1839b7
pcbnew: Add arc approximation setting to board
...
This places the arc approximation setting in the kicad_pcb file and uses
it for all parts of the board rendering where arcs are converted to
segments. This allows the user to customize their speed vs. accuracy
tradeoff. The default setting of maximum error of 0.005mm is acceptable
for small boards on moderate systems.
2019-05-24 21:21:06 -07:00
Jeff Young
b9898e2bb0
Fix crash when a pagelayout includes a bitmap or polygon.
...
Fixes: lp:1830439
* https://bugs.launchpad.net/kicad/+bug/1830439
2019-05-25 01:37:08 +01:00
Jeff Young
a3dfce5adb
Implement common file menu actions and move Eeschema over.
2019-05-25 01:14:21 +01:00
Jeff Young
ba4ba5b668
Implementing boundingbox getters for WS_DRAW_ITEMs.
2019-05-24 21:23:26 +01:00
Seth Hillbrand
f0352176ec
Fix a compile error in Linux
...
Operands to the ternary operator cannot have different types under g++
(linux)
2019-05-24 12:12:10 -07:00
jean-pierre charras
32f25cf8b4
ACTION_MENU::appendCopy: Fix an issue on Windows with Check-able menu-items.
...
The source bitmap was copied to the new created item.
However, for Checkable menu-items, when setting a bitmap, our standard check bitmap is also added.
This is unwanted when the source bitmap is the wxNullBitmap (bitmap sizes are different)
2019-05-24 21:01:49 +02:00
Jeff Young
71f188f3de
Hook up import-page-layout and change-background-color actions.
2019-05-24 19:49:10 +01:00
Jeff Young
85f984ccd9
Add point-editor activation for immediate-mode drawing.
2019-05-24 19:49:09 +01:00
Jeff Young
09424db68f
Restore selection around undo/redo.
2019-05-24 19:49:09 +01:00
Jeff Young
323bb0f8e1
Moving PageLayout editor to GAL canvas and modern toolset.
2019-05-24 19:49:09 +01:00
jean-pierre charras
40382f4d52
Viewlib: menubar/view menu: make grid select working
...
Set also a better icon for this menu item
2019-05-24 15:49:51 +02:00
jean-pierre charras
e957fb403b
eda_draw_frame.cpp: fix missing EVT_MENU_CLOSE capture, that can create crashes.
...
in this case the crash can happens because a menu pointer used in EVT_MENU_HIGHLIGHT
is not cleared when closing the menu
2019-05-24 10:22:09 +02:00
Seth Hillbrand
1a56dfe342
Plotter: Ensure group style is respected in SVG
...
Graphics Changed is cleared when setting graphics for a group but needs
to be reset when the group ends.
Fixes: lp:1830245
* https://bugs.launchpad.net/kicad/+bug/1830245
2019-05-23 09:40:35 -07:00
John Beard
2dd5757eb5
Common: Fix copy-construction of empty BITMAP_BASE
...
The bitmap pointer is not checked at copy construct. This is
an instant segfault if you copy an empty bitmap.
Fix the constructor and remove the expected test failure, from the
previous commit.
2019-05-23 16:58:08 +01:00