Jeff Young
d2cd659471
Be better about cleaning up mouse capture.
...
Fixes: lp:1841996
* https://bugs.launchpad.net/kicad/+bug/1841996
2019-08-29 23:56:16 +01:00
Jeff Young
359cf384de
Import graphics is a one-shot, not a tool.
...
Fixes: lp:1841975
* https://bugs.launchpad.net/kicad/+bug/1841975
2019-08-29 23:56:16 +01:00
Seth Hillbrand
64c012c175
modedit: Enable snapping on anchors
...
The selection of footprint anchor should obey normal snapping paradigm.
2019-08-28 10:38:27 -07:00
Seth Hillbrand
494d0de9b8
Handle active layer overloading
...
Setting the active layer should be tied to the events that are triggered
by the layer change and overloaded for each frame. This ties the hotkey
back to these events.
Fixes: lp:1838244
* https://bugs.launchpad.net/kicad/+bug/1838244
2019-08-27 21:28:51 -07:00
Jeff Young
ebbb12e978
Give empty preference pages the right parent.
...
Fixes: lp:1841665
* https://bugs.launchpad.net/kicad/+bug/1841665
2019-08-27 21:50:52 +01:00
Jeff Young
2fba0a4f61
Register COMMON_CONTROL for help menu actions.
...
Fixes: lp:1841560
* https://bugs.launchpad.net/kicad/+bug/1841560
2019-08-27 19:23:07 +01:00
Jeff Young
559035a7f6
Make sure the menu bar gets activated (ie: don't eat the activate event).
...
Fixes: lp:1841560
* https://bugs.launchpad.net/kicad/+bug/1841560
2019-08-27 19:23:07 +01:00
Jeff Young
a5a237ac32
Improve readability of flag checking.
2019-08-27 19:23:07 +01:00
Seth Hillbrand
ff118c62ec
Cleanup OnCharHook in footprint_viewer_frame
...
This provides a better fix for d0adaf1ef
and handles Tab/Shift-Tab
consistently in the filters
2019-08-27 08:42:43 -07:00
Seth Hillbrand
d0adaf1efd
pcbnew: Update focus in browser
...
When we refresh a scrolled window to get the GTK scrollbars updated, we
can capture the mouse, making key-only scrolling difficult when we want
the window not focused. This resets the active focus after refresh.
Fixes: lp:1841565
* https://bugs.launchpad.net/kicad/+bug/1841565
2019-08-27 08:30:08 -07:00
jean-pierre charras
9dac8534c1
Pcbnew: seriously speedup calculation time when plotting large filled areas.
2019-08-27 13:32:00 +02:00
Seth Hillbrand
48d68f55d7
pcbnew: Two layer boards need both masks
...
Adds the missing default layer to the default board setups for two
layers with parts on single side (either top or bottom)
Fixes: lp:1841294
* https://bugs.launchpad.net/kicad/+bug/1841294
(cherry picked from commit 8b3a2984bf
)
2019-08-26 17:14:35 -07:00
Seth Hillbrand
b3615b36bb
pcbnew: Retain 45° constraint
...
This also finishes the polygon with 45° lines when chosen as a create
option.
Fixes: lp:1833673
* https://bugs.launchpad.net/kicad/+bug/1833673
(cherry picked from commit fccce265aa
)
2019-08-26 14:36:23 -07:00
Jeff Young
bc0e67579c
Change OK/Cancel to MSW order and move some other dialogs to new system.
...
(There's no point in following the OSX OK/Cancel order as you can't
tab to buttons on OSX anyway.)
2019-08-26 18:36:35 +01:00
Jeff Young
6b6e9eddee
Return control of Symbol and Footprint chooser col widths to user.
...
The auto-calculation wasn't working out and even with it some users
wanted control.
Fixes: lp:1796774
* https://bugs.launchpad.net/kicad/+bug/1796774
2019-08-26 18:27:49 +01:00
Jeff Young
67db6c49b5
Buttons which bring up dialogs for more info need a "...".
...
Fixes: lp:1795385
* https://bugs.launchpad.net/kicad/+bug/1795385
2019-08-26 18:27:49 +01:00
Jeff Young
92330b9c93
Sort modules and pads in Footprint Report file.
...
Fixes: lp:1793764
* https://bugs.launchpad.net/kicad/+bug/1793764
2019-08-26 18:27:49 +01:00
Seth Hillbrand
8277aeec7d
eagle: Set module-relative position of ref/val
...
We need to set the footprint local coordinates of the footprint
reference and value fields at instantiation separately from the
TEXT_DIVERS elements.
Fixes: lp:1829727
* https://bugs.launchpad.net/kicad/+bug/1829727
(cherry picked from commit a43a228f78
)
2019-08-26 09:57:17 -07:00
Ian McInerney
1bbd944277
pcbnew: Add ability to reset layer/item colors to defaults
2019-08-26 09:20:08 -04:00
Jeff Young
b109aba663
Add a file browser to the Sheet Properties dialog.
...
Fixes: lp:1840459
* https://bugs.launchpad.net/kicad/+bug/1840459
2019-08-26 00:45:34 +01:00
Jeff Young
19b463ec78
Add option to keep 3DModel info when exchanging footprints.
...
Fixes: lp:1841303
* https://bugs.launchpad.net/kicad/+bug/1841303
2019-08-25 22:49:36 +01:00
Jeff Young
03da721030
Move events to wxFormBuilder and fix the missing hookup.
...
Fixes: lp:1841361
* https://bugs.launchpad.net/kicad/+bug/1841361
2019-08-25 20:48:47 +01:00
Jeff Young
7c85dc6cd7
Clearance should be in mils, not inches.
...
Fixes: lp:1841360
* https://bugs.launchpad.net/kicad/+bug/1841360
2019-08-25 20:48:46 +01:00
Seth Hillbrand
7c37641d83
pcbnew: Partial board stats cleanup
...
Fixes ordering issue and int/double conversion in board area
Moves via casting to internal dyn_cast
2019-08-25 08:48:09 -07:00
jean-pierre charras
a0fec9db57
PCBNew - fix incorrect gerber generation for overlapping zones of the same net and having different draw options.
...
Previously, zones of the same net were merged for plotting,
regardless the fact the outline thickness can be different between the zones,
creating incorrect solid areas.
Fixes: lp:1840695
https://bugs.launchpad.net/kicad/+bug/1840695
2019-08-25 13:16:45 +02:00
Jeff Young
2622f875ee
Simplify the pad tool menus a bit.
2019-08-24 17:13:35 +01:00
Seth Hillbrand
2518a2cc81
pcbnew:Initialize board statistics
...
Uninitialized values can cause odd output values. Also adjust absolute
calc to utilize floating point returns.
Fixes: lp:1838325
* https://bugs.launchpad.net/kicad/+bug/1838325
2019-08-24 08:21:08 -07:00
Seth Hillbrand
820c2d2722
pcbnew: Fix error in connecitivty calculation
...
Point in polygon should test against half the stroke width as the stroke
is performed _on_ the polygon edge.
2019-08-23 10:45:41 -07:00
Seth Hillbrand
18b6bdf5dd
Use cached bbox for connectivity
...
On large boards, connectivity checks are hotspots. We use the cached
bbox to avoid re-computing polygons for pads.
2019-08-23 10:45:41 -07:00
Jeff Young
809a4e3c0e
Improve connectivity tests for pads.
...
We now test N, S, E and W as well as center.
Fixes: lp:1840721
* https://bugs.launchpad.net/kicad/+bug/1840721
2019-08-23 17:44:10 +01:00
Jeff Young
32aa265175
Enable Save As for footprints with no current library.
...
Fixes: lp:1840997
* https://bugs.launchpad.net/kicad/+bug/1840997
2019-08-23 10:56:46 +01:00
Seth Hillbrand
03d5bf0df5
PNS: Check that we are optimizing a pad
...
Vias are also sent to breakout optimizer, so we need to check for the
solid cast before dereference.
Fixes: lp:1841057
* https://bugs.launchpad.net/kicad/+bug/1841057
2019-08-22 08:57:19 -07:00
Jeff Young
a6b7d4f7f6
Support 9 comments in the page setting GUI.
...
Fixes: lp:1793148
* https://bugs.launchpad.net/kicad/+bug/1793148
2019-08-21 20:34:01 +01:00
Seth Hillbrand
8576668eba
pcbnew: Snap items to grouped layers
...
When moving a group of items, the allowed snapping layers should be each
layer in the group, not just the first item's LSET.
Fixes: lp:1830164
* https://bugs.launchpad.net/kicad/+bug/1830164
2019-08-21 12:32:13 -07:00
Seth Hillbrand
22fdc7f51f
pcbnew: Scale line width for import
...
The line width in the import dialog is meant to reflect the resulting
width and not the given width of the file.
Fixes: lp:1831496
* https://bugs.launchpad.net/kicad/+bug/1831496
2019-08-21 10:25:40 -07:00
Jeff Young
d1b2a6ea70
More descriptive labelling and hints for solder paste margins.
...
Fixes: lp:1837220
* https://bugs.launchpad.net/kicad/+bug/1837220
2019-08-21 15:35:03 +01:00
Jeff Young
bfb8806682
Upgrade Cvpcb filtering to use a multi-term combined matcher.
...
Fixes: lp:1827135
* https://bugs.launchpad.net/kicad/+bug/1827135
2019-08-21 15:35:02 +01:00
Seth Hillbrand
06cb21cc47
pcbnew: Optimize pad connection revision
...
This modifies that logic for optimizing pad connections.
1) Custom pads now prefer the connections to their longer side. This is
particularly important to match the behavior in a rectangular pad
2) Costs for straight lines are non-zero. This favors fewer connections
3) Custom pad breakouts are at the polygon boundary rather than offset
by 0.1mm. This also matches the circular and rectangular paradigm.
4) Line Heads contained in the pad itself are not optimized. This
prevents escaping the pad unnecessarily
Fixes: lp:1824182
* https://bugs.launchpad.net/kicad/+bug/1824182
2019-08-20 19:35:26 -07:00
Jeff Young
aaa44b7348
Honor the {0, 0} reference on the clipboard.
...
Fixes: lp:1840819
* https://bugs.launchpad.net/kicad/+bug/1840819
2019-08-20 19:57:36 +01:00
Jeff Young
a25368cc6b
Improve spelling.
...
The groundwork here is thanks to kunda1.
Fixes: lp:1831510
* https://bugs.launchpad.net/kicad/+bug/1831510
2019-08-20 19:14:05 +01:00
Jeff Young
baeb3689b5
Improve SNR (and spelling).
2019-08-20 18:02:28 +01:00
Jeff Young
b219fbc3d2
Implement undo/redo for lock/unlock/toggle lock.
...
Fixes: lp:1840770
* https://bugs.launchpad.net/kicad/+bug/1840770
2019-08-20 16:39:40 +01:00
Jeff Young
fb21077d3a
Fix some alignment issues in dialog and formatting issues in code.
...
Fixes: lp:1840775
* https://bugs.launchpad.net/kicad/+bug/1840775
2019-08-20 16:39:40 +01:00
Jeff Young
375e8a2f97
Only add ref & value to boundingBox if they're visible.
...
Fixes: lp:1746911
* https://bugs.launchpad.net/kicad/+bug/1746911
2019-08-20 16:39:40 +01:00
Jeff Young
054a24c26e
Prevent size events from firing during initialization.
...
Fixes: lp:1840690
* https://bugs.launchpad.net/kicad/+bug/1840690
2019-08-20 16:39:40 +01:00
Jeff Young
1bfefc61ea
Allow mouse drag to initiate a router drag if over a track or via.
...
Fixes: lp:1840694
* https://bugs.launchpad.net/kicad/+bug/1840694
2019-08-19 21:09:44 +01:00
Jeff Young
195fbbaf23
Reduce confusion by putting all dialog pages as leaf nodes.
2019-08-19 17:46:25 +01:00
jean-pierre charras
b25ffc0aa8
Pcbnew, layer manager: fix flicker when loading a file, and incorrect size on start when no file is loaded
...
Fixes: lp:1840591
https://bugs.launchpad.net/kicad/+bug/1840591
2019-08-19 10:42:22 +02:00
Jeff Young
e65569e3b2
Clean up some issues in Footprint Viewer.
2019-08-19 00:06:22 +01:00
jean-pierre charras
8f583008e0
Fix minor compil warnings
2019-08-18 09:13:55 +02:00
Jeff Young
3fefe01d2e
Improve keyboard-only use of Footprint Viewer.
...
Fixes: lp:1465295
* https://bugs.launchpad.net/kicad/+bug/1465295
2019-08-17 12:23:19 +01:00
Seth Hillbrand
99859727e8
pcbnew: Handle edge cuts in footprints for bbox
...
The Board bounding box calculation has two modes: edges only and
everything. While the everything mode works as expected, the edges only
calculation (and everything that depends on it) was seeing only the edge
cuts on the board drawings layer and not the footprint edge cuts.
Fixes: lp:1839768
* https://bugs.launchpad.net/kicad/+bug/1839768
2019-08-16 10:58:45 -07:00
Seth Hillbrand
aa875e5830
PNS: Don't allow routing on hidden layers
...
If the layer is not shown, we should not be allowing it's items to be
selected and chosen as the start/end items in the router.
(cherry picked from commit fc1fb7a590
)
2019-08-15 12:40:05 -07:00
jean-pierre charras
d50dc4ff65
PANEL_SETUP_LAYERS: minor cosmetic change: Fix for commit e2be49a2
.
...
The commit e2be49a2
was sent too early.
2019-08-15 10:26:08 +02:00
jean-pierre charras
e2be49a2f6
PANEL_SETUP_LAYERS: minor cosmetic change.
2019-08-15 09:44:55 +02:00
jean-pierre charras
2f2aba2333
FOOTPRINT_WIZARD_FRAME: fix UI issues (incorrect size of message panel and not selectable first item in param list)
...
Fixes: lp:1840193
https://bugs.launchpad.net/kicad/+bug/1840193
2019-08-15 09:27:28 +02:00
Seth Hillbrand
959a4bdded
pcbnew: Don't stack same tool handler
...
The Get and place tool used to live in selection tool and could activate
the edit tool by stacking calls. Now that it is itself in the edit
tool, we cannot stack another call to the edit tool that runs
immediately, instead we allow the GetAndPlace to finish before beginning
the next tool (Move)
2019-08-14 17:12:00 -07:00
Jeff Young
a0eaff289a
Add filters to footprint viewer.
...
This also allows us to remove button to access the tree dialog
since the only extra it provided was filtering.
Fixes: lp:1465295
* https://bugs.launchpad.net/kicad/+bug/1465295
2019-08-14 21:51:26 +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
Ian McInerney
e47c9ccc0b
pcbnew: Clean up switch statement in launcher
2019-08-14 09:35:14 +01:00
Jeff Young
045f5f6a61
Move some functions out of SELECTION_TOOL that don't really belong there.
2019-08-13 13:29:18 +01:00
Jeff Young
dd938b02df
New move tool doesn't require GetAndPlace to jump through hoops.
...
And at least one of those hoops leaves the cursor forced.
Fixes: lp:1839877
* https://bugs.launchpad.net/kicad/+bug/1839877
2019-08-13 10:01:47 +01:00
jean-pierre charras
1c295d46a9
Pcbnew plot: fix missing footprint texts on solder mask layers.
...
Fixes: lp:1839892
https://bugs.launchpad.net/kicad/+bug/1839892
2019-08-13 09:43:36 +02:00
Seth Hillbrand
619c78622e
pcbnew: Initialize drag and clear links
...
Drag is used for multiple modes so should be initialized when starting.
The line that we generate however needs to be pristine in drag, so we
clear the links in the duplicate.
Fixes: lp:1839612
* https://bugs.launchpad.net/kicad/+bug/1839612
2019-08-12 15:32:16 -07:00
Jeff Young
ccf18ceb0e
Fix accidental change in default radio button of Update PCB from Schematic.
2019-08-12 22:21:09 +01:00
Jeff Young
f3f0a6899f
Invoke move by ACTION; the EDIT_TOOL does lots of other stuff too.
...
Fixes: lp:1839877
* https://bugs.launchpad.net/kicad/+bug/1839877
2019-08-12 22:21:09 +01:00
Jeff Young
3bf24fae7a
Set selection reference point to top-left item.
...
Fixes: lp:1771016
* https://bugs.launchpad.net/kicad/+bug/1771016
2019-08-12 22:21:09 +01:00
Jeff Young
cc0bd9a171
Even out PCB_EDITOR_CONTROL and PCB_INSPECTION_TOOL.
2019-08-12 22:21:09 +01:00
Ian McInerney
d170243d61
Fix some memory leaks
...
Some elements of modules and boards were not deleted, so memory
was being leaked on some library loads and single-instance
pcbnew usage.
2019-08-12 15:03:25 -04:00
Michael Kavanagh
79b2ff7551
Refactor deleteTool ACTION removing duplicates
2019-08-12 13:49:55 -04:00
Michael Kavanagh
db59c7011b
Unify menubar delete action
2019-08-12 13:49:55 -04:00
jean-pierre charras
10e4bf2a20
Remove dead code
2019-08-11 14:22:58 +02:00
jean-pierre charras
e04436b138
Cleaning code: remove dead code in spread_footprints.cpp.
2019-08-10 20:29:54 +02:00
Jeff Young
c836cc9cf8
Don't use activate to move as the edit tool must activate for other ops.
...
Fixes: lp:1839534
* https://bugs.launchpad.net/kicad/+bug/1839534
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
bc07c7da11
Use wxChoice instead of wxComboBox so we get menu highlighting.
2019-08-09 16:01:45 +01:00
Jeff Young
17d015ed5d
Strip illegal chars from 3D filepath and change rotation increment to 90deg.
...
Fixes: lp:1823559
* https://bugs.launchpad.net/kicad/+bug/1823559
2019-08-08 23:02:37 +01:00
Jeff Young
ab283174df
Make sure edit flags get cleared after drawing footprint items.
...
Fixes: lp:1839518
* https://bugs.launchpad.net/kicad/+bug/1839518
2019-08-08 20:51:07 +01:00
Jeff Young
0b87a92ed6
Make Mac-work-around Mac-only.
2019-08-08 16:32:44 +01:00
Jeff Young
4d53ff9811
Grid dropdown doesn't always live in the same toolbar.
...
Also fixes typo in grid properties dialog.
Fixes: lp:1839224
* https://bugs.launchpad.net/kicad/+bug/1839224
2019-08-08 13:51:23 +01:00
Tomasz Włostowski
726bceecfd
router: springback now works for dragging vias in shove mode
...
Fixes: lp:1837766
* https://bugs.launchpad.net/kicad/+bug/1837766
2019-08-07 23:49:57 +02:00
Tomasz Włostowski
88f2318c9c
router: add VIA_HANDLE to refer to VIAs going in/out the SHOVE algorithm without raw pointers
2019-08-07 23:48:28 +02:00
Tomasz Włostowski
45e4387ed1
router: remove unnecessary include
2019-08-07 23:46:32 +02:00
Tomasz Włostowski
5666af4d1d
router: copy m_owner when copying PNS::ITEMs
2019-08-07 23:45:38 +02:00
Tomasz Włostowski
75fcdb3b08
router: disable hole to hole mechanical constraint in P&S until a suitable solution is found (as it is now it breaks springback)
2019-08-07 23:44:43 +02: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
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
Jeff Young
4399a52ad3
Work around a wxWidgets bug that loses the preferences item from the menu.
...
Fixes: lp:1839148
* https://bugs.launchpad.net/kicad/+bug/1839148
2019-08-06 11:50:19 -06:00
Jeff Young
edc05b5d54
Pad properties dialog needs to edit the local value, not the resultant value.
...
Fixes: lp:1838618
* https://bugs.launchpad.net/kicad/+bug/1838618
2019-08-05 21:38:28 -06:00
Ian McInerney
f59b3a0210
pcbnew: Move layer toolbar icon previous values to struct
...
The static variables posed problems on Linux, and also were
not as portable for multiple instances of PCB_EDIT_FRAME.
2019-08-05 20:47:29 -06:00
Jeff Young
6c0a3b4534
Disable inappropriate values for aperture pads.
...
Fixes: lp:1809010
* https://bugs.launchpad.net/kicad/+bug/1809010
2019-08-05 16:48:18 -06:00
Jeff Young
6069263beb
Add ctrl-W to 3D viewer.
...
Fixes: lp:1835454
* https://bugs.launchpad.net/kicad/+bug/1835454
2019-08-05 16:48:18 -06:00
Wayne Stambaugh
bf5ce3a1ba
Pcbnew: fix minor layout issues in options panel.
2019-08-05 11:29:16 -04:00
Jeff Young
95bfb733ee
Add defensive coding for <enter> processing in Edit Footprint Text dialog.
...
Fixes: lp:1806124
* https://bugs.launchpad.net/kicad/+bug/1806124
2019-08-04 16:25:36 -06:00
jean-pierre charras
120637bd9b
A few I18n minor fixes.
2019-08-04 10:33:54 +02:00
Jeff Young
c60118b6a4
Ativate delete tool so it can display the selection clarification menu when needed.
...
Fixes: lp:1835371
* https://bugs.launchpad.net/kicad/+bug/1835371
2019-08-03 22:17:31 -06:00
Jeff Young
3e8ebe0a2a
Fix formatting.
2019-08-03 22:16:21 -06:00
Jeff Young
373ba5a904
Better tooltip for Match Mode radio buttons.
...
Fixes: lp:1838551
* https://bugs.launchpad.net/kicad/+bug/1838551
2019-08-03 17:20:54 -06:00
Jeff Young
c438686deb
Put selected layer in front of DRC markers.
...
Fixes: lp:1824656
* https://bugs.launchpad.net/kicad/+bug/1824656
2019-08-03 17:20:54 -06:00
jean-pierre charras
7bfbcef942
Make some strings more easily translatable
...
DIALOG_BOARD_STATISTICS: fix some minor issues.
2019-08-03 09:32:10 +02:00