Commit Graph

16740 Commits

Author SHA1 Message Date
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
jean-pierre charras 37b166348a Fix compil error and minor compil warnings 2019-08-27 09:13:07 +02:00
Seth Hillbrand 85eed87b28 eeschema: Modify all units at the same time
When editing symbol library reference, this ensures that all units are
modified by the same action and the component is not represented by its
subunits.

Fixes: lp:1834509
* https://bugs.launchpad.net/kicad/+bug/1834509

(cherry picked from commit 80e0d848f2)
2019-08-26 20:43:05 -07: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
Jeff Young 8d31c9a6c1 Save values of Page Settings Export buttons in project.
Fixes: lp:1791431
* https://bugs.launchpad.net/kicad/+bug/1791431
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
Wayne Stambaugh 1320dda9cb Set version string to 5.99.0
This will sync the git tag for this commit.  This should help prevent
confusion for users who were thinking that 5.0.0-r#####-g######## was
an older version than the 5.1 branch.
2019-08-26 11:42:02 -04:00
Steven A. Falco e997f4a7f4 Revert part of commit 6cab769f41
Commit 6cab769f41 breaks compilation on ppc64le, because the gcc
compiler defines both _ARCH_PPC and _ARCH_PPC64.
2019-08-26 08:22:48 -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 80dd3f8635 Draw datasheet field with the value from the dfm file.
Fixes: lp:1841369
* https://bugs.launchpad.net/kicad/+bug/1841369
2019-08-25 21:51:00 +01:00
Jeff Young de8f97be6b Don't apply GTK fix to OSX as it causes a hang.
Fixes: lp:1841379
* https://bugs.launchpad.net/kicad/+bug/1841379
2019-08-25 20:48:47 +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
jean-pierre charras 72c4cfd4b6 Update demo "video" 2019-08-25 20:49:34 +02:00
jean-pierre charras 4f73530c4a Gerbview: better progress reporter info when loading more than one file 2019-08-25 20:32:40 +02: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 9f80da60c3 Add buttons to MSW tab order.
Fixes: lp:1840991
* https://bugs.launchpad.net/kicad/+bug/1840991
2019-08-24 17:13:35 +01: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
Jeff Young f21467e340 Support tabbing to non-text controls on non-Mac platforms.
Fixes: lp:1840991
* https://bugs.launchpad.net/kicad/+bug/1840991
2019-08-23 22:14:37 +01: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
Jeff Young d080c928a7 Fix up python test for new comment signatures.
Fixes: lp:1793148
* https://bugs.launchpad.net/kicad/+bug/1793148
2019-08-23 00:56:08 +01:00
Jeff Young c85d1fa00c Try out our own tabbing logic.
Fixes: lp:1840991
* https://bugs.launchpad.net/kicad/+bug/1840991
2019-08-22 21:18:24 +01:00
Seth Hillbrand 77488e379c gerbview: Ensure selection lives on top
Just picking the next layer will be overwritten when we have multiple
objects on the same layer in gerbview.  Move the selection to the top to
ensure it is out top-most layer when drawing.

Fixes: lp:1833868
* https://bugs.launchpad.net/kicad/+bug/1833868
2019-08-22 10:51:35 -07:00
Seth Hillbrand 85df994eda Handle wx scrollbar thumbs in system-independent way
The thumb size changes between system versions and (on GTK) render
managers, so hard-coded wasn't working.  This gets the actual value from
the system and uses to adjust the range.  Changes in the range can also
trigger the refresh.

Fixes: lp:1822617
* https://bugs.launchpad.net/kicad/+bug/1822617

Fixes: lp:1816749
* https://bugs.launchpad.net/kicad/+bug/1816749
2019-08-22 10:07:34 -07: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 de74590279 Parse bus definitions as a single term.
Fixes: lp:1841043
* https://bugs.launchpad.net/kicad/+bug/1841043
2019-08-22 12:50:23 +01:00
Jeff Young 13b7dd354c Fix tab order in pin properties dialog.
Fixes: lp:1840991
* https://bugs.launchpad.net/kicad/+bug/1840991
2019-08-22 10:54:11 +01:00
Jeff Young 23fd4b64dd Remove curly braces from netname escaping context.
They're now used for bus definition control characters.
Also fixes the sheet pin edit dialog to correctly escape/unescape
netnames.

Fixes: lp:1840834
* https://bugs.launchpad.net/kicad/+bug/1840834
2019-08-22 10:53:39 +01:00
Jeff Young 97212acecb Sort pins by number when grouping by name.
Fixes: lp:1828648
* https://bugs.launchpad.net/kicad/+bug/1828648
2019-08-21 20:34:01 +01: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 bbe5146bbb Refresh items which may have had their dangling state changed.
While it's tempting to look at the changed flag that TestDanglingEnds
returns, it's insuficient as the connectivity algorithm might have
already updated it (and ignored the changed flag).

Fixes: lp:1835107
* https://bugs.launchpad.net/kicad/+bug/1835107
2019-08-21 15:35:02 +01:00
Jeff Young cc93d82025 Don't drop selection until unfold net has been chosen.
Fixes: lp:1831466
* https://bugs.launchpad.net/kicad/+bug/1831466
2019-08-21 15:35:02 +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