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
Seth Hillbrand
0035445456
pcbnew: Allow DRC violations when marked
...
We shouldn't consider any obstacles when we are routing in DRC violation
mode.
Fixes: lp:1826723
* https://bugs.launchpad.net/kicad/+bug/1826723
(cherry picked from commit 3b3165ad51
)
2019-06-09 13:03:08 -07:00
jean-pierre charras
929b1a1275
Better message for translation.
2019-06-09 17:53:03 +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
Seth Hillbrand
b75017830f
modedit: Clear undo when importing
...
Importing a footprint is creating a new board. Undo breaks here as we
don't maintain undo/redo across boards.
Fixes: lp:1832107
* https://bugs.launchpad.net/kicad/+bug/1832107
(cherry picked from commit 5ce0e7265b
)
2019-06-08 19:48:28 -07:00
Seth Hillbrand
81c5ba257b
pcbnew: Ensure cursor remains set during tool activity
...
Mouse capture end is called by some actions such as save board. This
resets the cursor image but doesn't change the current tool. Resetting
the cursor image during action prevents this.
(cherry picked from commit 35e87128f5
)
Fixes: lp:1831888
* https://bugs.launchpad.net/kicad/+bug/1831888
2019-06-08 10:25:24 -07:00
Seth Hillbrand
23f9d4642d
pcbnew: Add tooltip explaining limits on Import Vector Graphics
...
The tooltip is shown when selecting a file. Explains that fonts and
bitmaps will be ignored by the conversion.
2019-06-08 09:43:12 -07:00
Seth Hillbrand
f7550940ee
Import Vector Dialog formatting
...
This standardizes the import vector graphics file dialog to use the
sbSizer titles instead of bold+lines. Tooltip changes will be in the
next change as we don't change strings for bugfix releases and this
commit is targeted for 5.1.3
Fixes: lp:1823462
* https://bugs.launchpad.net/kicad/+bug/1823462
2019-06-08 09:36:40 -07:00
Seth Hillbrand
a75dd7f48c
pcbnew: Fix error when exporting GenCAD
...
The qsort routine acted on void**, when it was replaced with the
std::sort, the signature should have changed as well.
2019-06-07 11:09:06 -07:00
jean-pierre charras
b0182abbb5
Custom pads: fix a bug when plotting the custom shape.
...
This bug was seen only with some shapes, not all, and only for layers having a negative margin.
Fixes: lp:1831941
https://bugs.launchpad.net/kicad/+bug/
2019-06-07 10:50:40 +02:00
jean-pierre charras
f1f26a9197
drc_clearance_test_functions.cpp: remove a stupid "optimization code" that creates broken tests (sorry to be rude)
...
Fixes: lp:1831776
https://bugs.launchpad.net/kicad/+bug/1831776
2019-06-06 13:13:37 +02:00
Seth Hillbrand
90f06c56a9
Add mutex to connectivity
...
We were piggy-backing on the includes from previous files that no longer
have mutex.
2019-06-05 15:55:52 -07:00
Jeff Young
6fab7cc025
Remove a bunch of ugly mutex hacks now that we don't use wxString's UTF8 mode anymore.
2019-06-05 21:23:41 +01:00
Jeff Young
64b18ea06a
Use qualified window names when searching for 3D viewers.
...
Just searching in children didn't work because the windows aren't
actually in the child window lists.
Fixes: lp:1831774
* https://bugs.launchpad.net/kicad/+bug/1831774
2019-06-05 21:23:41 +01: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
e75be4074e
Pcbnew: finalize the new zone filling algo (filled polygons with no thickness).
2019-06-05 18:36:20 +02:00
qu1ck
3cb90063a1
Pcbnew scripting fixes
...
* Remove infinite recursion calls in footprint.i
* Extend DRAWINGS deque iterator to auto cast contained BOARD_ITEMS,
similar to what dlist implementation did.
2019-06-04 19:29:31 -07:00
Seth Hillbrand
f007d2857a
pcbnew: ClearPcb() without queuing tools
...
When exiting pcbnew, we only want to run the sections of ClearPcb that
remove the old pcb data. We do not want to queue events that handle
initializing a new pcb. These were caught after freeing memory in some
cases, leading to segfaults.
Fixes: lp:1831560
* https://bugs.launchpad.net/kicad/+bug/1831560
2019-06-04 19:27:17 -07:00
Jeff Young
15241b7fcf
ACTION-ize toolbar/palette control.
2019-06-04 22:31:42 +01:00
Jeff Young
1222f3cc72
ACTION-ize fab outputs.
2019-06-04 22:31:42 +01: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
0ea75cb4e7
Another attempt to fix build failure.
2019-06-04 16:26:45 +01:00
Jeff Young
e3c1235572
Fix link issue with qa_pcbnew test.
...
I'm not terribly happy about the solution as it's a bit less safe.
But it's what we had before.
2019-06-04 15:09:18 +01:00
Jeff Young
1ea001d497
Go back to event-loop zooming for new frames.
...
The immediate mode appears to have made things worse not better.
2019-06-04 13:56:54 +01:00
Jeff Young
4e11dcfa31
Better error reporting for board edge collisions.
2019-06-04 13:56:54 +01:00
Jeff Young
fbfbb64387
A bit of cleanup of stale DRC code.
2019-06-04 13:56:54 +01:00
Jeff Young
ea3c29e3ec
Now that we allow multiple 3DViewers, we need to make sure we have the right one.
...
Note that FindWindow() searches children, whereas FindWindowByName() searches
all windows.
2019-06-04 13:56:54 +01:00
jean-pierre charras
34ccd0f004
Pcbnew: prepare the new zone filling algo (filled polygons with no thickness). Work in progress.
2019-06-04 09:39:17 +02:00
Jeff Young
1bf04d1722
More ACTIONs work.
2019-06-04 00:51:16 +01:00
Jeff Young
584ed9e204
Add files accidentally left out of last commit.
2019-06-04 00:51:16 +01:00
Jeff Young
59a01789ff
Show board info in status bar when seleciton isn't a single object.
...
Fixes: lp:1831402
* https://bugs.launchpad.net/kicad/+bug/1831402
2019-06-03 21:52:59 +01:00
Jeff Young
3912c7407f
Move global commands to ACTIONs.
...
Also fixes a crash bug opening Edit Tracks and Vias dialog.
2019-06-03 21:08:30 +01:00
Jeff Young
d7574db805
Fix regression in dialog-avoidance when focusing on a location.
2019-06-03 21:08:30 +01: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
jean-pierre charras
be54f357eb
Better tooltip, more easy to translate
2019-06-03 18:27:17 +02:00
Seth Hillbrand
95ab0b1813
pcbnew: Hide dynamic ratsnest after canceling edit
...
The dynamic ratsnest is shown while moving items but this needs to be
hidden after cancelling. Previously this was handled by the
SelectionClear event but we've changed this to (correctly) keep the
previous selection when canceling.
Fixes: lp:1831350
* https://bugs.launchpad.net/kicad/+bug/1831350
2019-06-02 20:25:02 -07:00
Seth Hillbrand
1f30d0c803
pcbnew: remove the last dlist components from pcbnew
2019-06-02 20:06:11 -07:00
Seth Hillbrand
99756efea5
Use GetFirstModule() for call that can be NULL
2019-06-02 20:06:11 -07:00
Ian McInerney
cbea5149cb
pcbnew: Cleanup context menu ordering
2019-06-02 21:10:56 +01:00
Jeff Young
da4fe27447
More ACTIONS work.
2019-06-02 21:10:56 +01: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
Ian McInerney
208a8553a5
pcbnew: Add context menu to measure tool
...
Fixes: lp:1831063
* https://bugs.launchpad.net/kicad/+bug/1831063
2019-06-02 07:55:29 -07:00
Seth Hillbrand
63fb408478
pcbnew: Don't modify the board lists outside of class
...
We should not be updating the board lists without using the class_board
methods.
Fixes: lp:1831370
* https://bugs.launchpad.net/kicad/+bug/1831370
2019-06-02 07:30:17 -07:00
jean-pierre charras
17b18637f8
Fix a compil issue on msys2: %zu format does not exist on msys2
2019-06-02 14:37:37 +02: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
072fc4f8cb
DIALOG_COPPER_ZONE: minor cosmetic change.
2019-06-02 11:50:46 +02:00
qu1ck
41a9546b3d
Pcbnew: fix crash in netlist updater
2019-06-01 21:02:16 -07:00
Seth Hillbrand
6a45446496
pcbnew: Remove the last dlist from modules/pcbnew
2019-06-01 20:55:32 -07:00
Seth Hillbrand
b244a940ef
pcbnew: Fix crash in modedit saving
2019-06-01 19:44:29 -07:00
Seth Hillbrand
9163ac543a
pcbnew: Move pads to std::deque
2019-06-01 16:23:54 -07:00
Jon Evans
f49779465e
Fix broken build in array_creator
2019-06-01 16:30:58 -04:00
Seth Hillbrand
3fb8963536
pcbnew: Cleanup tracks and vias rework
...
Fixes a few commit issues based on the std:: rework. Add an option to
delete tracks fully in pads and makes merge tracks smarter
Fixes: lp:1787190
* https://bugs.launchpad.net/kicad/+bug/1787190
2019-06-01 09:53:23 -07:00
Seth Hillbrand
888c01d11b
pcbnew: Move tracks to std::deque
2019-06-01 09:53:23 -07:00
Seth Hillbrand
d1877d7c1b
Moving modules from DLIST 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
Jeff Young
c1298570cb
Remove legacy routing options.
2019-06-01 16:29:12 +01:00
Jeff Young
69e60d3982
Make sure grid settings get set in new canvas when switching.
2019-06-01 01:57:24 +01:00
Jeff Young
7553cc2651
Clean up some dangling legacy odds and ends.
2019-06-01 01:17:46 +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
30ad8e9369
Pcbnew, file menu: fix missing initialization of Append Board menuitem
2019-05-31 18:28:31 +02:00
Jon Evans
d0926cce58
PcbNew: prevent crash in point editor if selection gets invalidated
2019-05-29 21:27:59 -04:00
Seth Hillbrand
eb0fc7bae2
Re-connect switch canvas on startup
2019-05-29 15:29:36 -07:00
Seth Hillbrand
218bea9ace
pcbnew: Fix crash in find dialog
...
Tool manager is not exposed to the dialogs, we need to reference it
through the parent frame.
Fixes: lp:1830942
* https://bugs.launchpad.net/kicad/+bug/1830942
2019-05-29 15:05:38 -07:00
jean-pierre charras
48899a4c96
Fix incorrect tooltip.
2019-05-29 21:33:05 +02:00
Seth Hillbrand
e7e20b85b5
Don't change the board without user action
...
Grid and ratsnest visibility are stored in the board file and should not
be changed without the user explicitly modifying them.
In the future, we'll move these settings out of the board file but we
shouldn't cause extra file-churn for flipped bits.
Fixes: lp:1828285
* https://bugs.launchpad.net/kicad/+bug/1828285
2019-05-29 11:25:44 -07:00
Jon Evans
4d8be7b2bb
PcbNew: ensure Bezier points are updated before plotting
2019-05-29 00:17:34 -04:00
Jon Evans
adfc4d2485
PcbNew: fix Bezier curves not having bounding boxes at startup
2019-05-29 00:17:34 -04:00
Seth Hillbrand
cdaba24f0d
pcbnew: Remove some legacy code
...
The menu IDs were used for disambiguation in legacy canvas.
2019-05-28 20:33:17 -07:00
Seth Hillbrand
453eb9c3eb
pcbnew: Reconnect Grid settings dialog
...
Connects using the new common grid settings ID
2019-05-28 20:32:40 -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
Seth Hillbrand
f59a2410fa
pcbnew: Check netlist settings in proper spot
...
We have _two_ settings that independently control whether the netlist is
updated by timestamp. One in the NETLIST object and one in the
NETLIST_UPDATER object. It looks like we are phasing one out but the
commit was not complete.
Fixes: lp:1828754
* https://bugs.launchpad.net/kicad/+bug/1828754
2019-05-28 14:21:25 -07:00
Seth Hillbrand
10b0b18d80
netlist: Update via netnames
...
Vias may need to have their netnames updated because floating vias do
not get a connectivity push.
Fixes: lp:1830102
* https://bugs.launchpad.net/kicad/+bug/1830102
2019-05-28 12:14:42 -07:00
Michael Kavanagh
27d097a78c
Stop PNS router settings from being overwritten when switching modes
...
Fixes: lp:1824967
* https://bugs.launchpad.net/kicad/+bug/1824967
2019-05-27 16:10:00 -07:00
Jeff Young
50d2aaa97c
Fix copy/paste typos in undo/redo.
2019-05-27 22:17:22 +01:00
Jeff Young
ce4c4c9409
Fix crash in PCBNew undo from uninitialized variable.
2019-05-27 18:58: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
3625668ff5
PcbNew: Fix ordering of fab and courtyard layers
...
Fixes: lp:1829511
* https://bugs.launchpad.net/kicad/+bug/1829511
(cherry picked from commit eb4aded5d6
)
2019-05-27 13:06:26 -04:00
Jon Evans
cfe588a853
Prevent unbalanced PTH pad labels from being hidden by drills
...
Fixes: lp:1829067
* https://bugs.launchpad.net/kicad/+bug/1829067
(cherry picked from commit 5230f45658
)
2019-05-27 13:06:26 -04:00
Jeff Young
d24a2afaca
Fix duplicate to work like paste to keep pins from getting duplicated.
...
Also fixes the post-duplicate move to start at the cursor pos.
Also fixes the fact that duplicate wasn't getting its hotkey.
Fixes: lp:1830596
* https://bugs.launchpad.net/kicad/+bug/1830596
2019-05-27 11:58:56 +01:00
Jeff Young
e9e28b9aac
Retire legacy block architecture.
2019-05-27 11:58:56 +01:00
Jeff Young
2502bce987
Move quit back to wxIDs. wxWidgets like to muck around with the location on OSX.
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
bdd44ce88c
Use consistent PageLayout data structure names.
2019-05-27 11:55:58 +01:00
Jon Evans
638ac3838c
PcbNew: Fix layer alpha overrides being overwritten by color changes
...
Fixes: lp:1827518
* https://bugs.launchpad.net/kicad/+bug/1827518
(cherry picked from commit cb3edf2607
)
2019-05-26 20:20:53 -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
568d4e2b19
Avoid including id.h in a lot of files that do not use it.
2019-05-26 08:14:25 +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
Seth Hillbrand
0a668ee550
pcbnew: Remove segment count from board file
...
This removes the setting for number of segments per circle from the zone
definition. All segment counts are handled by absolute error allowed.
2019-05-24 21:13:53 -07:00
Jon Evans
52a9e68093
Store items changed by connectivity algorithm in undo list
...
Fixes: lp:1828442
* https://bugs.launchpad.net/kicad/+bug/1828442
(cherry picked from commit fb80ee5a0e
)
2019-05-24 21:56:37 -04:00
Michael Kavanagh
741140e4a4
Fix footprint marked as modified when layer visibility changed
...
Fixes: lp:1830330
* https://bugs.launchpad.net/kicad/+bug/1830330
2019-05-24 16:13:22 -04:00
Seth Hillbrand
7058b79bf1
pcbnew: Fix assert in debug build
...
Previously we saved the visibility as a mask of 32bits and the check was
needed. These are now saved as per-layer setting, so the assert is
extra.
2019-05-24 12:39:01 -07:00
Jeff Young
85f984ccd9
Add point-editor activation for immediate-mode drawing.
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
Wayne Stambaugh
816f6db310
Pcbnew: Python scripting support clean up.
...
Always check the return value of PyRun_SimpleString() for errors when a
Python script is run and show an error message rather than fail silently.
Enable Python interpreter I/O redirection in debug builds so that script
string errors will be shown when PyRun_SimpleString() is called.
Do not call PyErr_Print() after a PyRun_SimpleString() call failure. It
doesn't do anything useful.
Do not call Py_Finalize() after a PyRun_SimpleString() call failure. It
seems to cause Pcbnew to crash.
2019-05-24 07:32:38 -04:00
jean-pierre charras
ce93934f08
Pcbnew, ZONE_FILLER: fix incorrect test to remove filled areas outside the board edge cuts.
...
This incorrect test was only for zones with no net.
2019-05-23 20:22:03 +02:00
Ian McInerney
0daf14f9c3
pcbnew: Fixed listing of 3D libraries in the github wizard
...
Fixes: lp:1830137
* https://bugs.launchpad.net/kicad/+bug/1830137
2019-05-23 09:50:05 -07:00
jean-pierre charras
75cea18f07
Pcbnew, toolbars: fix incorrect icons
2019-05-23 11:07:55 +02:00
Seth Hillbrand
ac435ecd68
Moving further arc approximations down
...
This corrects an issue with fill segments-per-circle and moves the error
to segmetns calculation down in a number of functions to expose the
single value for approximation
2019-05-22 14:35:17 -07:00
Jeff Young
67cc2aac2e
Rework Eeschema find/replace for modern toolset.
...
Fixes: lp:1827274
* https://bugs.launchpad.net/kicad/+bug/1827274
Fixes: lp:1827240
* https://bugs.launchpad.net/kicad/+bug/1827240
2019-05-22 21:48:04 +01:00
Michael Kavanagh
07b82d19e3
Allow setting cursor and aux items colour in footprint editor
...
Fixes: lp:1829850
* https://bugs.launchpad.net/kicad/+bug/1829850
2019-05-22 15:46:15 -04:00
jean-pierre charras
459a972116
Remove unused vars.
2019-05-22 08:27:48 +02:00
Seth Hillbrand
6f7475dcd3
pcbnew: Prevent no-connects from driving clusters
...
The no-connect net (0) should never drive the net of a cluster.
Otherwise, tracks connecting between unconnected pads and connected pads
can acquire net 0 incorrectly.
2019-05-21 19:29:29 -07:00
Seth Hillbrand
1181b9f9b4
EAGLE: Correct pcb text orientation
...
Fixes: lp:1829711
* https://bugs.launchpad.net/kicad/+bug/1829711
2019-05-21 14:04:03 -07:00
Seth Hillbrand
a62a89eac3
EAGLE: Prevent numeric-only component references
...
KiCad does not allow references to be numeric only. This prefixes such
references with "UNK" to note that the reference designator type is
unknown.
2019-05-21 13:49:18 -07:00
Seth Hillbrand
490c805319
Allow squared inflation and inflate Eagle Zones
...
Sometimes we want to inflate a polygon without adding rounded edges.
This add the option using the jtMiter setting.
This is used in the Eagle parser to expand the Eagle zones for KiCad.
Eagle Zones are drawn on the polygon edge, so they extend out from the
outline. KiCad zones are drawn inside the polygon. We need to both
increase the zone size and decrease the minimum pen width to account for
this.
Fixes: lp:1817312
* https://bugs.launchpad.net/kicad/+bug/1817312
2019-05-21 13:49:18 -07:00
Seth Hillbrand
bf0a466642
pcbnew: Allow adding SHAPE_LINE_CHAIN to zones
2019-05-21 13:49:18 -07:00
Seth Hillbrand
c80e3e0ffc
eagle: Use width on imported lines if available
...
If not, use the current board design settings for line thickness based
on the board layer.
2019-05-21 13:49:17 -07:00
jean-pierre charras
d3dc7ade8a
menubar_pcb_editor.cpp: minor code refactor.
2019-05-21 14:24:08 +02:00
jean-pierre charras
6e6063b258
Pcbnew: release the lock file if a board was loaded, and when clearing the board currently edited.
...
When the board is cleared, the previous loaded board is no longer in edit.
2019-05-20 18:36:24 +02:00
Seth Hillbrand
dbc40096db
eagle: Use the "first" tag instead of pin num
...
Eagle parsing allows pin 1 to be different from the other pins in the
package but this is set by a tag marking the pin as "first" rather than
the actual number of the pin.
Fixes: lp:1829251
* https://bugs.launchpad.net/kicad/+bug/1829251
2019-05-20 06:02:15 -07:00
jean-pierre charras
4ac20d7ab1
menubar_pcb_editor.cpp: add missing icons.
2019-05-20 10:05:33 +02:00
jean-pierre charras
5137b54bd8
Pcbnew: fix a (minor) lock file issue: the lock was too early set.
...
If the file was (for some reason) not actually loaded, it was locked.
Now, the file is locked only if it is actually loaded.
2019-05-19 11:03:44 +02:00
Jeff Young
7d9a0b06e0
Push help menu down into EDA_BASE_FRAME.
2019-05-18 13:14:08 +01:00
Jeff Young
b90b454ada
Remove legacy block operations.
2019-05-18 00:21:49 +01:00
Jeff Young
1a3d0492f5
Push polar coords down into COMMON_TOOLS.
2019-05-18 00:21:49 +01:00
Seth Hillbrand
f32c95229e
pcbnew: Check for valid data before deleting
...
We need to check for valid rows and iterators before removing a 3d model
Fixes: lp:1829337
* https://bugs.launchpad.net/kicad/+bug/1829337
2019-05-17 09:34:27 -07:00
Wayne Stambaugh
97166a72f5
Pcbnew: fix bug in Eagle footprint plugin.
...
Some how a board object was required to fetch the line width when a
footprint is being parsed. The problem is that there is no board
defined when loading Eagle footprint libraries so there was a nullptr
segfault as a result. When there is no board defined, use the default
KiCad layer line widths.
Fixes lp:1829243
https://bugs.launchpad.net/kicad/+bug/1829243
2019-05-17 08:38:03 -04:00
Jeff Young
97445f1714
Don't go into interactive move when position was set in creation dialog.
...
Fixes: lp:1822569
* https://bugs.launchpad.net/kicad/+bug/1822569
2019-05-16 19:57:06 +01:00
Jeff Young
fbb807f3bb
Move some more menu & toolbar items to modern toolset.
2019-05-16 19:57:06 +01:00
Seth Hillbrand
ddc6079ceb
Move remaining hard-coded segment counts
...
This removes the remaining hard-coded segments counts and replaces them
with the relative error calculation where the segments per arc is
determined by the maximum error we allow (smaller arcs = fewer segments)
2019-05-16 08:49:55 -07:00
John Beard
0eb8f92c69
Pcbnew: add a step field to the array tool
...
This is useful, for example, when arraying only one side
of a connector.
Fixes: lp:1809580
* https://bugs.launchpad.net/kicad/+bug/1809580
2019-05-16 11:20:52 +01:00
John Beard
eb1e67583f
Pcbnew: tidy up array options access/allocation
...
Use unique_ptrs for ownership transfer.
Pass the target object to the constructor rather than
creating an internal verison.
2019-05-16 11:20:52 +01:00
John Beard
6ade8c25e1
Pcbnew: allow alphabetic numbering in n circular grids
...
Add controls to the dialog and wire up to the axis numbering
scheme, same as the grid axes.
Fixes: lp:1814923
* https://bugs.launchpad.net/kicad/+bug/1814923
2019-05-16 11:20:52 +01:00
John Beard
f47e2b54f8
Decouple the array tool list box from the numbering enum
...
This prevents the dialog being sensitive to the exact ordering
of the enum, and instead defines an explicit mapping between
the axis numbering type, the label string and the position in the
list box control.
2019-05-16 11:20:52 +01:00
John Beard
2c1b970027
Arrays: isolate axis code in a new class
...
Remove the axis numbering code from ARRAY_OPTIONS
and place in a new class, ARRAY_AXIS. This keeps
the logic for the array item numbering separate from
the logic for the array item geometry.
This simplifies the logic in the ARRAY_OPTIONS class, which
no longer has to deal with the numbering of each axis.
2019-05-16 11:20:52 +01:00
Seth Hillbrand
44e111b37e
pcbnew: Add remaining Eagle pad types
...
This adds octagon and offset pad types to the Eagle pcb importer.
Fixes: lp:1814498
* https://bugs.launchpad.net/kicad/+bug/1814498
2019-05-15 11:12:16 -07:00
Seth Hillbrand
b3b5ffe799
pcbnew: fixup small type issue
2019-05-15 09:53:42 -07:00
Jeff Young
69afa27a5f
Implement ACTION_TOOLBAR and update some of the menus to ACTION_MENU.
...
This gives us better separation of MVC in line with the design of
the modern toolset. It also reduces a whole bunch of duplicated
data.
2019-05-15 17:50:52 +01:00
Jeff Young
f9e4ee1fc9
CONTEXT_MENU -> ACTION_MENU. (Now used for menu-bar menus too.)
2019-05-15 17:50:52 +01:00
Jeff Young
eb3a201d39
Move some PCBNew and GerbView actions to their COMMON equivalents.
2019-05-15 17:50:52 +01:00