Seth Hillbrand
90b5cd3032
Unify text edit dialog behavior
...
This makes the pcbnew multiline text editor natively accept tabs in the
same manner as eeschema and extracts key handling routines to the shim
to allow undo/redo.
Also allows Ctrl-Y under Linux in addition to other platforms. While
not as popular as Ctrl-Shift-Z, it is utilized for Redo in some contexts
2019-09-05 14:11:02 -07:00
Jeff Young
3bd38ec245
Improve zoom-to-extents for footprints with long text.
...
Fixes: lp:1820540
* https://bugs.launchpad.net/kicad/+bug/1820540
2019-09-05 21:02:29 +01:00
jean-pierre charras
a5c8b5ed41
Stack manager: cosmetic enhancement: replace a text having no meaning by a bitmap
2019-09-05 21:02:11 +02:00
jean-pierre charras
24ea8f970e
Pcbnew: update SEXPR_BOARD_FILE_VERSION to 20190905 (actual commit date for board physical stackup feature)
2019-09-05 20:15:30 +02:00
jean-pierre charras
5cf21789e9
FOOTPRINT_VIEWER_FRAME: minor fix: initialize m_canvasType to the value actually used.
2019-09-05 19:53:47 +02:00
jean-pierre charras
f3f0e20a67
Pcbnew: add a board layer stack manager
...
This is a new feature.
2019-09-05 18:51:18 +02:00
Seth Hillbrand
e7c07501c5
Minor compile warning cleanup
2019-09-05 09:47:52 -07:00
Seth Hillbrand
a4808e0420
pcbnew: Copy hatch zone settings when duplicate
...
Also wrap orientation instead of verifying it. This allows valid angles
that are larger/smaller than the ±180 limit.
Fixes: lp:1842654
* https://bugs.launchpad.net/kicad/+bug/1842654
2019-09-05 09:42:24 -07:00
Jeff Young
6688e80131
Update description in footprint tree when it's edited.
...
Also implements a more useful message panel for Footprint Editor.
Fixes: lp:1842660
* https://bugs.launchpad.net/kicad/+bug/1842660
2019-09-04 17:19:25 +01:00
Seth Hillbrand
c8a6878eb8
pcbnew: Allow tuning length to be longer than INT_MAX
...
The INT_MAX limit for most elements makes sense only for single-segment,
straight line elements. For elements that accumulate lengths, we should
utilize the long long int (64 bits) to allow for greater lengths.
Fixes: lp:1842367
* https://bugs.launchpad.net/kicad/+bug/1842367
2019-09-03 16:41:09 -07:00
Jeff Young
720de6bae1
Cleanup.
2019-09-03 17:16:27 +01:00
Jeff Young
9a6c534e60
Another try at the duplicate-then-move ghosting bug.
...
Fixes: lp:1813038
* https://bugs.launchpad.net/kicad/+bug/1813038
2019-09-03 16:51:00 +01:00
Jeff Young
4c9e4c947c
Fix for move-after-duplicate only needs the extra update once.
...
This version will be quite a bit more performant.
Fixes: lp:1813038
* https://bugs.launchpad.net/kicad/+bug/1813038
2019-09-02 20:46:06 +01:00
Jeff Young
a675b8e3b2
Add specificty for text labels in Dimension Properties dialog.
...
While we're re-using the Text Properties dialog, it really covers all
properties for a Dimension, so it needs to be more clear what's text
and what's not. This changelist uses the Tooltips to store the more
explicit labels so they can still be edited in FormBuilder.
2019-09-02 11:07:05 +01:00
jean-pierre charras
762dabd754
Pcbnew, DIALOG_TEXT_PROPERTIES: make lines thickness editable when editing a dimension.
...
Fixes: lp:1841797
https://bugs.launchpad.net/kicad/+bug/1841797
2019-09-02 09:48:17 +02:00
Ian McInerney
1b3322a538
Make the extension check for graphics import case insensitive
...
The regex for the file extension that matches against all case
possibilities is only built on Linux.
Fixes: lp:1842180
* https://bugs.launchpad.net/kicad/+bug/1842180
2019-09-02 08:33:23 +02:00
Jeff Young
5e353e8967
Fix another case of selection getting out of sync with dragged items.
...
Use a big hammer this time.
Fixes: lp:1839780
* https://bugs.launchpad.net/kicad/+bug/1839780
2019-08-31 20:23:06 +01:00
Jeff Young
e269b5d1b9
Workaround an issue where a throw terminates (even when there's a catch for it).
...
You can trigger it before this fix by running Cvpcb when a .kicad_mod file is
incorrectly set as "Legacy" in your footprint table.
2019-08-31 15:18:27 +01:00
Jeff Young
315a99e0fe
Use Move() instead of SetPosition() so that the second pt gets updated too.
...
Fixes: lp:1841989
* https://bugs.launchpad.net/kicad/+bug/1841989
2019-08-30 23:32:17 +01:00
Seth Hillbrand
69b6052d6f
fpviewer: Second go at preventing focus stealing
...
Fixes: lp:1841565
* https://bugs.launchpad.net/kicad/+bug/1841565
2019-08-30 09:10:45 -07:00
Jeff Young
79d062aefc
Don't allow selection dragging when a picker tool is running.
...
Fixes: lp:1841691
* https://bugs.launchpad.net/kicad/+bug/1841691
2019-08-30 10:33:34 +01:00
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