Jeff Young
56de78c130
Remove layer limitations and warnigns now that DRC handles them.
2018-08-27 18:38:56 +01:00
Jeff Young
a860a8db54
Enable user layers in footprint editor.
...
Fixes: lp:1746279
* https://bugs.launchpad.net/kicad/+bug/1746279
2018-08-27 18:38:56 +01:00
Jeff Young
c88b43e356
Don't double-report segments that are too close.
2018-08-27 18:38:56 +01:00
Jeff Young
b842e4556d
Don't double-check all zones.
...
a:b is enough; we don't have to also check b:a.
2018-08-27 18:38:56 +01:00
Jeff Young
6bb75b071a
Implement DRC for PCB & module copper items in PNS router.
...
Fixes: lp:1788699
* https://bugs.launchpad.net/kicad/+bug/1788699
2018-08-27 18:38:56 +01:00
Jeff Young
7b4f9cef50
Implement DRC checks for copper graphic items.
...
Also greatly improves the location of many DRC markers.
Fixes: lp:1619133
* https://bugs.launchpad.net/kicad/+bug/1619133
2018-08-27 18:38:56 +01:00
Wayne Stambaugh
35a31a9787
Fix grid border on board setup net class panel.
...
Fixes lp: 1789190
https://bugs.launchpad.net/kicad/+bug/1789190
2018-08-27 12:33:50 -04:00
Thomas Pointhuber
a2bc4260ef
Modify style of the action plugin panel to follow common style
...
and fix of an assert:
* m_grid->DeleteRows does not like to get a numRows of zero
2018-08-27 08:26:31 -07:00
jean-pierre charras
7c11d0371b
Minor wording fix in a menuitem
2018-08-27 09:19:48 +02:00
Thomas Pointhuber
92cd82be03
Do not show footprint wizard menu when scripting is disabled
2018-08-27 09:19:48 +02:00
qu1ck
72f87861bb
pcbnew: Add toolbar buttons for action plugins
...
Allows optional toolbar buttons for action plugins.
2018-08-26 19:39:27 -07:00
Tomasz Wlostowski
5f8eac8c6e
CONNECTIVITY_DATA: fix SWIG build error
2018-08-24 14:42:49 +02:00
Tomasz Wlostowski
61fb3f6d0f
pcbnew: bring back the autoplacer tool to GAL
2018-08-24 14:42:49 +02:00
Tomasz Wlostowski
33946ea92f
pcbnew: renaming of autorouter/autoplacer files
2018-08-24 14:42:49 +02:00
Jeff Young
020c7b5cb8
Fix non-OSX compile issue (includes).
2018-08-24 12:07:05 +01:00
Jeff Young
d10bfb13d6
Re-enable text layers now that DRC & zone fills are fixed.
...
Fixes: lp:1788268
* https://bugs.launchpad.net/kicad/+bug/1788268
2018-08-24 10:56:13 +01:00
Jeff Young
0e3919e7aa
Fix DRC & zone filling for copper text in footprints.
...
Also improves handling of copper edges in footprints and of text
and track locations in DRC markers.
Also adds DRC for tracks & zones.
Fixes: lp:1762474
* https://bugs.launchpad.net/kicad/+bug/1762474
Fixes: lp:1788268
* https://bugs.launchpad.net/kicad/+bug/1788268
2018-08-24 10:56:13 +01:00
Jeff Young
8aa0886ce7
Improve labels & layout of Track & Via Properties dialog.
2018-08-24 10:56:13 +01:00
Jeff Young
ec9d38e21f
Add filter to net selector widget.
...
Also fixes a bug where nets wouldn't get changed because the
pads weren't changed and so the pad nets would propagate and
wipe out the changed nets on the tracks.
Also includes warning dialogs that pad nets will be changed if the
track nets are.
Fixes: lp:1779854
* https://bugs.launchpad.net/kicad/+bug/1779854
2018-08-24 10:56:13 +01:00
Seth Hillbrand
51473d9a30
pcbnew: Update tooltip in DRC window to reflect actions
...
Previous tooltips were outdated. Current action is to center with
single-click, hightlight with right-click and close window with
double-click.
Fixes: lp:1788635
* https://bugs.launchpad.net/kicad/+bug/1788635
2018-08-23 08:24:52 -07:00
Jeff Young
da172a1089
Fix layout issue with too-short textctrl.
...
Fixes: lp:1788506
* https://bugs.launchpad.net/kicad/+bug/1788506
2018-08-23 00:58:05 +01:00
Jeff Young
30bb911154
Bring PICKER_TOOL in line with other tools.
...
Use standard Magnetize() to handle grid and magnetic pads.
Use the standard menu from PCB_TOOL. Delegating the menu to
the SELECTION_TOOL just caused grief.
Also brings clients (such as Position Relative To) into line,
and implements better Cancel behaviour.
Also improves visibility of modal status messages:
- moves Select Anchor message from status bar to popup
- moves Select Reference message from dialog to popup
Fixes: lp:1786727
* https://bugs.launchpad.net/kicad/+bug/1786727
2018-08-23 00:58:01 +01:00
Jeff Young
c91e51f688
Don't inadventently clear selection reference point.
...
New algorithm more targetted and just clears the items. This
also obviates the need for the aQuietMode flags.
Only fixes one part of the bug, but the "fixes" line is the
easiest way to get a link in the bug to the commit.
Fixes: lp:1786727
* https://bugs.launchpad.net/kicad/+bug/1786727
2018-08-22 15:11:58 +01:00
Andrew Zonenberg
60a55d75fa
Split prohibited text layers for footprints and the rest of the PCB
...
Fixes: lp:1788268
* https://bugs.launchpad.net/kicad/+bug/1788268
2018-08-21 16:34:53 -07:00
Jeff Young
d8782b7515
Improve Update PCB from Schematic.
...
Shorten and improve informational content of messages, errors and
warnings.
Remove redundant info messages when they shadow an action, warning
or error message.
Improve title of "Update Footprints" to make it clear that it's
recreating footprints which have different assignments rather than
updating footprints from the library.
Don't perform the dryRun twice.
Don't use the old netlist method of loading footprints. We get
better error reporting if we do it ourselves.
Be more careful checking the last pad when checking for single-pad
nets. If the last pad has no net then pad != previouspad at the
end of the loop.
Fixes: lp:1787255
* https://bugs.launchpad.net/kicad/+bug/1787255
2018-08-21 19:46:29 +01:00
Jeff Young
c851d6d64b
Fix some more MSW spacing issues.
2018-08-21 10:34:41 +01:00
Jeff Young
779398891d
Follow HIG guidelines for destructive button separation.
2018-08-21 10:34:41 +01:00
Jeff Young
65f62f93ef
Fix MSW spacing issues.
2018-08-21 10:34:41 +01:00
Jeff Young
afacb6e7cb
Improve safety around un-committed grid changes.
2018-08-21 10:34:41 +01:00
Jeff Young
86a801aabc
Allow updating of file history size on the fly.
...
Also updates the file menu IDs so that we can actually handle
more than 9 items in the file history.
Also adds configurable file history length to the other gerber
files (zip, drill and job).
Fixes: lp:1745729
* https://bugs.launchpad.net/kicad/+bug/1745729
2018-08-21 10:34:41 +01:00
Seth Hillbrand
5bd959d92c
Eagle: Fix NULL-dereference on malformed Eagle files
...
Eagle files that are edited may be missing required data. While we do
not need to handle these files, we do need to prevent segfaults in KiCad
when reading them.
2018-08-19 19:48:10 -07:00
Jeff Young
bd543f12b5
Bring track design rule widths in line with via design rule sizes.
2018-08-19 16:15:14 +01:00
Jeff Young
b4bb36f017
Define minHeight so 3D model grid doesn't grow to include all rows.
...
Fixes: lp:1787269
* https://bugs.launchpad.net/kicad/+bug/1787269
2018-08-19 16:10:41 +01:00
Jeff Young
4364384f06
Simplify list of nets dialog.
2018-08-19 16:10:41 +01:00
Jeff Young
672d5ec1aa
Make orientation popups match combobox values.
2018-08-19 16:10:41 +01:00
Jeff Young
bbb76a0de0
Initialize filters with current values.
...
Fixes: lp:1787403
* https://bugs.launchpad.net/kicad/+bug/1787403
2018-08-19 16:10:41 +01:00
Jeff Young
bb5e6bbd79
Include default netclass in Global Edit Track & Via Properties.
...
Fixes: lp:1787403
* https://bugs.launchpad.net/kicad/+bug/1787403
2018-08-19 16:10:41 +01:00
Ronnie Gaensli
46fddab126
pcbnew: fix pan while moving mouse after cancelling selection box
...
Fixes: lp:1776648
* https://bugs.launchpad.net/kicad/+bug/1776648
2018-08-17 13:39:36 +02:00
jean-pierre charras
0c4828df12
footprint_wizard_frame: try to fix a crash that happens sometimes when modifying a parameter.
...
(not noticed on Windows, happens sometimes on Linux. so this commit is just a trial to fix the crash)
2018-08-15 15:55:32 +02:00
jean-pierre charras
8fd686e8f4
Eeschema: Fix 2 minor compil warnings. Pcbnew, very minor fix: avoid using fixed scaling factor in code. Use internal units conversion instead.
2018-08-15 13:39:25 +02:00
Jeff Young
3c455949fc
Revert some dialog changes that lost button sizes.
...
These are required on MSW. Also back-dates the .fbp file to work
on Mac wxFormBuilder.
2018-08-14 13:54:04 +01:00
jean-pierre charras
f0b8b2136a
Pcbnew: Change a duplicate hot key.
2018-08-13 09:28:48 +02:00
jean-pierre charras
595666d46e
Add support of GAL in FOOTPRINT_WIZARD_FRAME.
...
Some refinements are needed (for instance the context menu shows the filter
command if something is selected, that is useless in the footprint wizard.
2018-08-12 17:48:21 +02:00
Jeff Young
4b1a31ffad
Regularize save-changes dialogs.
2018-08-12 00:02:37 +01:00
Jeff Young
acec00f80a
Fix bug displaying canvasses when starting in Legacy mode.
2018-08-11 23:43:19 +01:00
Jeff Young
4c08a71df5
Warn before replacing edited footprint in footprint editor.
...
Fixes: lp:1786570
* https://bugs.launchpad.net/kicad/+bug/1786570
2018-08-11 20:37:30 +01:00
Jeff Young
d81faa72c9
Overhaul border drawing in all the Kicad frames.
...
Primary change is to replace most control/window borders with
AUI pane borders. We implement our own AUI border drawing
routine which avoids the ugly one-pixel white frames around
dark canvasses.
Also increases the signal-to-noise ratio of all the pane
creation code in the various frames.
2018-08-11 17:25:38 +01:00
Jeff Young
43e99e6df0
Inflate footprint bounding box to include texts.
...
This makes zoom automatique work much better in the footprint
editor, and should improve other things which probably assumed
the bounding box included everything (such as refresh code).
Callers which still want just the module outline should call
GetFootprintRect() instead of GetBoundingBox().
2018-08-11 17:14:27 +01:00
jean-pierre charras
009044bd6b
FOOTPRINT_EDIT_FRAME: fix incorrect layer manager initialization depending on canvas type.
...
Especially, the color selector is not the same when selecting GAL or Legacy canvas.
Due to this incorrect init, the color selector type was incorrect.
2018-08-11 13:16:41 +02:00
jean-pierre charras
bd46f720a1
Fix a few AUI issues.
2018-08-11 11:26:47 +02:00
Seth Hillbrand
42c5017db7
PCBNEW: Re-add missing SWIG zone filler
...
Zone filler was factored out into a separate header. To allow python
access to zone filling, we need to include the revised signatures.
2018-08-08 12:25:58 -07:00
jean-pierre charras
15e0771ea8
Add GAL support to Cvpcb display footprints frame.
2018-08-08 16:33:29 +02:00
Jeff Young
a9fa66bb41
Don't broadcast events when running client selection filters.
...
Some other tools (in this case the POINT_EDITOR) aren't good
citizens and activate themselves when receiving selection
changes.
Fixes: lp:1785781
* https://bugs.launchpad.net/kicad/+bug/1785781
2018-08-08 01:44:56 +01:00
Jeff Young
9b44100e04
GetFullPath() includes filename; we just want GetPath()
...
Fixes: lp:1785891
* https://bugs.launchpad.net/kicad/+bug/1785891
2018-08-07 22:04:09 +01:00
Jeff Young
84504599ce
Don't check for visibles in the Footprint Editor.
...
Everything is drawn anyway, and we crash if the viewPrivData
hasn't been allocated yet.
Fixes: lp:1785716
* https://bugs.launchpad.net/kicad/+bug/1785716
2018-08-07 18:39:20 +01:00
John Beard
a1e0735853
Add hotkey (Insert) for zone create corner
...
Adds a hotkey to the TOOL_ACTION, and also checks for
action validity prior to running the actions (previously
implicitly gated by the enablement of the menu item).
2018-08-07 09:19:18 -07:00
Jeff Young
d788c9d479
Move library table dialogs from PLAYER to KIFACE interface.
...
Spooling up a full PLAYER in the background takes too long.
This also fixes bugs around how the tables are saved, although
that was just missing code rather than anything architectural.
Fixes: lp:1785436
* https://bugs.launchpad.net/kicad/+bug/1785436
2018-08-06 21:31:53 +01:00
Jeff Young
be1d6113d6
More performance enhancements.
...
Be more intelligent about sorting lib tree items. (Footprint
entries, for instance, come out of an already-sorted list.)
Don't recreate menus twice when laoding Footprint Editor.
More pervasive use of WX_FILENAME to avoid expensive calls to
wxFileName::SplitPath() and string concatenation.
For POSIX kernels do all the work on the file-system side so we
don't have to keep converting back and forth between encodings.
2018-08-06 13:49:27 +01:00
Jeff Young
0fbe702043
Layout adjustments to Choose Symbol and Choose Footprint.
2018-08-06 13:48:17 +01:00
Jeff Young
d52429fc3c
Read footprint info cache when fpinfo requested via kiway.
2018-08-06 13:48:17 +01:00
Jeff Young
97c4d42ebf
Improve Read Netlist tooltip for footprint assignment.
...
Fixes: lp:1785200
* https://bugs.launchpad.net/kicad/+bug/1785200
2018-08-06 13:48:17 +01:00
Ronnie Gaensli
3ca84dca71
Cancel Add dimension leaves auto panning on
...
Fixes: lp:178551
* https://bugs.launchpad.net/kicad/+bug/178551
2018-08-06 11:24:23 +02:00
jean-pierre charras
c32fcd1403
Fix commit f3f814e622
that breaks the compilation on Windows.
...
Fiw also a minor compil warning
2018-08-04 17:18:15 +02:00
Jeff Young
fd3e57d67f
Layout adjustments and language-change-updating for modview.
2018-08-04 12:59:04 +01:00
Jeff Young
9aaa235b7b
Use binary search on Footprint Info list.
...
While it only improves footprint loading on the standard library
by about 6%, it will keep larger libraries from getting catastrophic.
2018-08-04 10:29:17 +01:00
Jeff Young
33fc74a04d
Performance enhancements for Footprint Editor construction.
2018-08-04 10:29:17 +01:00
Jeff Young
92b3aca0ef
Fix crash when trying to view invalid footprint link.
...
Fixes: lp:1785218
* https://bugs.launchpad.net/kicad/+bug/1785218
2018-08-04 10:29:17 +01:00
Jeff Young
1b71c723bc
Fix pad properties Y dimension enabling.
...
Fixes: lp:1785241
* https://bugs.launchpad.net/kicad/+bug/1785241
2018-08-04 10:29:17 +01:00
Jeff Young
f3f814e622
Performance enhancements for footprint info list.
...
Cache the footprint info on disk (in the project).
Move timestamp-generation (and checking) to the filesystem so the
above will be bullet-proof.
Rewrite some wxWidgets classes for performance (see common.h).
2018-08-04 10:29:17 +01:00
Wayne Stambaugh
8e7d6063fd
Minor dialog and frame window improvements.
...
Drop all uses of wxRAISED_BORDER and wxSUNKEN_BORDER from dialogs and
panels used in main frame windows.
Drop use of wxSP_3DSASH options on all wxSplitterWindow definitions.
Minor dialog alignment and spacing fixes.
2018-08-02 13:00:41 -04:00
jean-pierre charras
ce3760438c
Fix a few wxWidgets minor asserts. Fix also a missing bitmap button initialization.
...
Fixes: lp:1783703
https://bugs.launchpad.net/kicad/+bug/1783703
2018-08-02 13:22:11 +02:00
Jeff Young
d8d4f75fa1
Fix button order and genralize Exit dialog so it can be shared more.
...
This also fixes a bunch of bugs where an error during save would
still close the window (rather than cancelling the close action).
Fixes: lp:1785034
* https://bugs.launchpad.net/kicad/+bug/1785034
2018-08-02 11:01:03 +01:00
Jeff Young
c655bffac1
Improve context menu consistency.
...
Also fixes some interactivity issues in the microwave tools around
single-click tools that have initial properties dialogs. Those
need to act kind of like a hybrid between single-click and two-click
tools.
Fixes: lp:1751381
* https://bugs.launchpad.net/kicad/+bug/1751381
2018-08-02 11:01:03 +01:00
Jeff Young
d6c6322f95
Leave measurement visible until another is started.
2018-08-02 11:01:03 +01:00
Seth Hillbrand
3a09358264
modedit: Store single copy of the footprint in undo
...
When changing elements in the module editor, each element shares the
same parent. Undo commits store a copy of the parent as it existed
before the change. For footprints with many elements, this creates
large, slow undo commits as a copy of the full footprint is stored for
each element being edited.
This keeps a single copy of the footprint in the undo stack per edit.
Fixes: lp:1780526
* https://bugs.launchpad.net/kicad/+bug/1780526
2018-08-01 11:06:23 -07:00
jean-pierre charras
3d28d0274b
put a demo file to the right place
2018-08-01 16:44:18 +02:00
jean-pierre charras
b47ffd7054
Update python scripts examples according to recent changes in pcbnew code.
...
Add a new example to plot files
2018-08-01 16:32:37 +02:00
jean-pierre charras
fc6547f5c0
Make gerber job file writer accessible by Python scripts
2018-08-01 16:32:37 +02:00
Jeff Young
6dbfa793e8
Fix GTK compile errors and remove dead code.
...
Fixes: lp:1783993
* https://bugs.launchpad.net/kicad/+bug/1783993
2018-08-01 12:23:16 +01:00
Jeff Young
9322139baa
Touch up Footprint Viewer for new Lib Tree.
2018-08-01 11:47:48 +01:00
Jeff Young
9175a48c90
Enable Distribute H/V on pads.
...
Fixes: lp:1782988
* https://bugs.launchpad.net/kicad/+bug/1782988
2018-08-01 09:35:46 +01:00
Jeff Young
f8a5e2c1c8
Performance enhancements in fp loading, string cmp, etc.
...
Knocks about 1/3 off the first footprint load, and more than 1/2
off subsequent loads.
2018-08-01 09:35:46 +01:00
Jeff Young
0a35c5c97e
Convert Footprint Editor to component tree.
...
Fixes: lp:1784178
* https://bugs.launchpad.net/kicad/+bug/1784178
Fixes: lp:1780363
* https://bugs.launchpad.net/kicad/+bug/1780363
2018-08-01 09:35:46 +01:00
Jeff Young
b400565880
Convert Place Footprint to component tree.
2018-08-01 09:35:45 +01:00
Seth Hillbrand
13b96799ea
pcbnew: remove duplicate rebuild in GAL
...
When running GAL, the connectivity is built when the board loads, so the
extra call to rebuild connectivity is not needed.
2018-07-31 15:13:12 -07:00
Seth Hillbrand
284c39acac
pcbnew: Unify connected lists between items/zones
...
Keep the zoneitems in the same list as the rest of the items.
2018-07-31 15:12:08 -07:00
Seth Hillbrand
f87cb64d65
pcbnew: Ensure connectivity layers are respected
...
This prevents non-copper layers from being included in the connectivity
search. It also limits the layer search in the connectivity RTree to
just the copper layer range.
2018-07-31 15:11:19 -07:00
Seth Hillbrand
589e5b9ad7
Remove connectivity debug statements
2018-07-31 14:26:57 -07:00
Seth Hillbrand
dc1736eb87
pcbnew: Split Layers in connectivity
...
Splits the connectivity search RTree by layers to avoid large penalty on
zone searches.
2018-07-31 14:26:57 -07:00
Tomasz Wlostowski
099fcf1247
ZONE_CREATE_HELPER: fix zone cutout creation in zones with holes, reinit selection with the resulting zone
...
Fixes: lp:1784268
* https://bugs.launchpad.net/kicad/+bug/1784268
2018-07-31 22:34:56 +02:00
jean-pierre charras
1dbaef303e
Fix FootprintWizardBase.py according to recent changes in lib_id.h
2018-07-31 18:46:25 +02:00
jean-pierre charras
5a2e171f9e
fix a few wxWidgets asserts.
2018-07-31 13:16:58 +02:00
jean-pierre charras
619e13dc2d
Fix D_PAD::BuildPadShapePolygon() incorrect calculation for custom pad shapes.
...
Fixes: lp:1784340
https://bugs.launchpad.net/kicad/+bug/1784340
2018-07-30 16:56:59 +02:00
Tomasz Wlostowski
516cf47946
OPENGL_GAL: optimized JP's bitmap drawing function to use textures
2018-07-30 00:13:37 +02:00
jean-pierre charras
882565f2e1
Fix a few wxWidgets minor asserts
2018-07-29 10:39:05 +02:00
jean-pierre charras
d73db8c73a
Make a few strings not internationalized, because they must not be translated (html format strings)
2018-07-28 12:47:23 +02:00
Jeff Young
3c2c5c38ad
Make icon buttons slightly wider for MSW.
...
Fixes: lp:1783703
* https://bugs.launchpad.net/kicad/+bug/1783703
2018-07-27 14:58:19 +01:00
Jeff Young
4dfae16c1b
Consolidate to single menu actions for save, revert, etc.
...
There's no point in having both Save Symbol and Save Library when
only one can be selected at a time.
Also cleans up a bunch of extraneous icons, and fixes a few
copy/paste errors in menus and toolbars.
2018-07-27 14:58:19 +01:00
Jeff Young
95d3336f63
We need the other end of the stick when not yet routing.
...
Fixes: lp:1781424
* https://bugs.launchpad.net/kicad/+bug/1781424
2018-07-27 14:58:19 +01:00
jean-pierre charras
b70dd1ecc4
Fix compil warnings
2018-07-27 11:18:24 +02:00
Jeff Young
0cca1c6721
Remove active library concept from footprint editor.
...
Also bring the menu system and toolbar in line with Pcbnew,
eeschema, and the symbol library editor, which includes moving
to a standard Save As paradigm for renaming/moving items.
Fixes: lp:1748474
* https://bugs.launchpad.net/kicad/+bug/1748474
Fixes: lp:1778202
* https://bugs.launchpad.net/kicad/+bug/1778202
2018-07-26 21:34:25 +01:00
Jeff Young
cb61525394
Handle separate parsing rules for ID_SCH and ID_PCB.
...
This removes the existing constructors so that all parsing must
be explicit and callers are made aware that they need to think
about illegal characters, malformed ids, etc.
Fixes: lp:1783474
* https://bugs.launchpad.net/kicad/+bug/1783474
2018-07-26 15:43:53 +01:00
John Beard
9ec6efbf13
Add icon for update PCB from Schematic
...
This previously used the "import board file" icon, which is a bit
confusing, as the action is not importing into a PCB.
2018-07-26 15:43:53 +01:00
John Beard
1e11df650c
Typos and inconsistencies in FP and Pad dialogs
...
* A few typos like stray new lines
* Per cent -> percent
* Consistent use of full stops
* Consistent use of commas after "If 0"
Fixes: lp:1783446
https://bugs.launchpad.net/kicad/+bug/1783446
2018-07-26 16:40:08 +02:00
Tomasz Wlostowski
07d56a2e32
BOARD::PadDelete() should update connectivity
...
Fixes: lp:1783528
* https://bugs.launchpad.net/kicad/+bug/1783528
2018-07-26 16:21:02 +02:00
Maciej Suminski
630631b41b
Code formatting
2018-07-26 16:04:31 +02:00
Tomasz Wlostowski
a9af4d0141
ZONE_CREATE_HELPER: fixed crash when adding a cutout to a zone
...
Fixes: lp:1783541
* https://bugs.launchpad.net/kicad/+bug/1783541
2018-07-26 15:30:21 +02:00
Maciej Suminski
dbf4bcdbb7
Converted PNS Length Tuning dialog to use TransferData{From,To}Window()
...
Fixes: lp:1783694
* https://bugs.launchpad.net/kicad/+bug/1783694
2018-07-26 10:08:44 +02:00
jean-pierre charras
f13a546c9b
Fix a few wxWidgets asserts or alerts.
2018-07-25 20:26:55 +02:00
Jeff Young
822ebf6955
Move symbol management to a standard Save As... model.
...
Also brings horizontal toolbar in line with Pcbnew and Eeschema.
And updates the EDA_LIST_DIALOG to current practices.
This finishes the removal of the active library concept from the
Symbol Editor (started with the new component tree in 5.0).
Fixes: lp:1740717
* https://bugs.launchpad.net/kicad/+bug/1740717
2018-07-25 14:41:20 +01:00
Jeff Young
e55bb9e748
Increment references when creating an array.
...
While it's not always correct, not doing so is pretty much always
incorrect.
Fixes: lp:1625964
* https://bugs.launchpad.net/kicad/+bug/1625964
2018-07-25 14:41:20 +01:00
John Beard
6df2d69b6e
Add global zone fill/unfill to Edit menu
...
This means if you don't know the hotkey, the tool action can be
reached without having to activate the zone tool.
Fixes: lp:1783250
https://bugs.launchpad.net/kicad/+bug/1783250
2018-07-25 09:04:51 +02:00
Jeff Young
994a9c5ff8
Only show all layers when the stackup changes.
...
Fixes: lp:1783231
* https://bugs.launchpad.net/kicad/+bug/1783231
2018-07-24 18:43:44 +01:00
John Beard
7acc0b89f9
Pcbnew: fix 45-degree snapping of ruler and dimension tools
...
This introduces a new util function in geometry_utils which snaps a vector
to axes or 45 degree lines. This can be used whenever you want to
snap a vector to these angles, but still want it to stay on a grid.
This snapping is used for the dimension tool and the ruler tool.
This is substantially simpler for two-point tools that the method
used by the line tool, which uses DIRECTION_45.
Fixes: lp:1780826
https://bugs.launchpad.net/kicad/+bug/1780826
2018-07-24 15:01:02 +01:00
John Beard
9d15e58462
Pcbnew: add new icon for board setup
...
Previously, the generic "options" gear was used, which was
confusing.
This commit add a new icon, options_board, specifically for
board-wide options.
2018-07-24 14:58:19 +01:00
Jeff Young
2d4ba56ac0
Promote aperture pads to first-class citizens.
...
Well, almost anyway. We can't use a pad attribute for them as
that would change the file format. So they're currently
defined as a CONN pad with no copper layers.
However, when figuring out of existing pads should be *treated*
as aperture pads, we just check for no copper layers.
Fixes: lp:1781760
* https://bugs.launchpad.net/kicad/+bug/1781760
2018-07-24 14:57:45 +01:00
Jeff Young
4618c64213
Don't number aperture pads.
...
Fixes: lp:1781760
* https://bugs.launchpad.net/kicad/+bug/1781760
2018-07-24 10:39:30 +01:00
Jeff Young
f79ca271e3
Replace missing #ifndef's.
...
We only process symlinks on POSIX kernels (Linux and OSX).
Fixes: lp:1548798
* https://bugs.launchpad.net/kicad/+bug/1548798
2018-07-24 09:05:39 +01:00
jean-pierre charras
1510c2c56f
Fix incorrect arc calculation when building the board outline (internal holes only)
...
Fixes: lp:1783181
https://bugs.launchpad.net/kicad/+bug/1783181
2018-07-24 09:17:20 +02:00
Jeff Young
bc47f085df
Support symlinks for .pretty and .lib files.
...
Fixes: lp:1548798
* https://bugs.launchpad.net/kicad/+bug/1548798
2018-07-23 23:50:13 +01:00
Jeff Young
4d3aeb3339
Make sure cur_lib_table is initialized.
...
The panel doesn't get Show() events so do it in the constructor.
2018-07-23 23:50:13 +01:00
jean-pierre charras
a27ba65ed2
DXF import: verify the layer used to import the DXF drawings is valid (correctly selected).
2018-07-23 13:58:13 +02:00
Jeff Young
afd80c3cdb
Fix botched attempt to have ruler adjust to unit changes.
...
Also fixes the context menu so there's a specific one for the
measurement tool, allowing zooming for instance without cancelling
the tool.
2018-07-23 12:37:01 +01:00
Jeff Young
16b5f40817
Remove assert and update ruler units on the fly.
...
Fixes: lp:1781595
* https://bugs.launchpad.net/kicad/+bug/1781595
2018-07-23 02:02:02 +01:00
Jeff Young
185b524a62
Support both add-empty and add-browse for 3D models.
...
Also fixes a bug where the selected row and the grid cursor get
separated after a delete.
Fixes: lp:1782747
* https://bugs.launchpad.net/kicad/+bug/1782747
2018-07-23 01:09:47 +01:00
Jeff Young
56ff3b3c95
Fix CLion's placement of #includes.
2018-07-22 23:33:36 +01:00
Jeff Young
d804427c83
Add Open-Schematic tool to PcbNew.
...
Fixes: lp:1780610
* https://bugs.launchpad.net/kicad/+bug/1780610
2018-07-22 22:36:24 +01:00
Jeff Young
0c042aff7b
Use mils for track widths when inches is selected.
2018-07-22 22:36:24 +01:00
jean-pierre charras
db712ea643
Footprint editor: display a warning when trying to created a custom pad shape with a Bezier curve.
...
Currently, Bezier curve (S_CURVE shape) is not supported in a custom pad shape.
2018-07-22 18:39:48 +02:00
jean-pierre charras
4cac974420
Add Bezier curve (S_CURVE shape) support in DIALOG_GRAPHIC_ITEM_PROPERTIES.
...
Fix some issues related to S_CURVE shape support.
2018-07-22 18:39:48 +02:00
jean-pierre charras
3c6e8c4a40
More support of DRW_SEGMENT Bezier curve (support in 3D viewer, and PnS router).
2018-07-22 18:39:48 +02:00
jean-pierre charras
7291059489
replace lib_dxf by dxflib from qcad in dxf2idf code
2018-07-22 18:39:47 +02:00
jean-pierre charras
72d1597201
DXF import: add import of DXF splines that are converted to Bezier curves.
...
Fix also a lot of bugs related to Bezier curves (S_CURVE shape in DRAW_SEGMENT class) in Pcbnew code.
Add missing code to handle these Bezier curves
2018-07-22 18:39:47 +02:00
jean-pierre charras
5ee1caf0b9
dialog DIALOG_NONCOPPER_ZONES_PROPERTIES: resize widgets when resizing the dialog frame.
2018-07-22 18:37:28 +02:00
Maciej Suminski
45c1742a3f
pcbnew: Disabled UI update for pcbnew console menu item
...
UI update event handler updates toolbar button state for the scripting
console, but for the associated menu item it displays an assert saying that
the menu item that cannot be checked. To avoid that, the UI update event
handler returns early if event does not come from the toolbar.
2018-07-22 16:09:46 +02:00
Jeff Young
65f4743a44
Sort pads by netlist before running single-pad-net tests.
...
Fixes: lp:1782660
* https://bugs.launchpad.net/kicad/+bug/1782660
2018-07-22 16:21:51 +01:00
jean-pierre charras
8026d2aa41
Fix incorrect behavior of the wxChoice used in dialog zone properties.
...
For some reason the wxChoice did not close after a selection (at least on Windows).
Perhaps due to some window ID collision.
2018-07-22 15:47:45 +02:00
Jeff Young
d32fb68fa9
Remove debugging and add grouping box for Nets & Net Filters.
...
Fixes: lp:1782766
* https://bugs.launchpad.net/kicad/+bug/1782766
(cherry picked from commit a75f376)
2018-07-22 11:19:21 +01:00
Jeff Young
7cce283fea
Fix diff pair custom values.
...
Fixes: lp:1782971
* https://bugs.launchpad.net/kicad/+bug/1782971
(cherry picked from commit 53f35a3)
2018-07-22 11:19:17 +01:00
Jeff Young
7dfc4e30e4
Add some debugging statements to find out what's up with GTK.
2018-07-21 23:17:46 +01:00
Jeff Young
833e0b3c0f
One more attempt to get the layers list width right on GTK.
...
Fixes: lp:1782766
* https://bugs.launchpad.net/kicad/+bug/1782766
2018-07-21 14:44:01 +01:00
Jeff Young
86d98ee7fd
Check via X and Y for indeterminate value before setting.
...
Fixes: lp:1782889
* https://bugs.launchpad.net/kicad/+bug/1782889
2018-07-21 14:05:03 +01:00
Jeff Young
5c646119a7
Allow user-specification of dimension units.
...
Also fixes a units bug when round-tripping a dimension through
the file format.
Fixes: lp:1782797
* https://bugs.launchpad.net/kicad/+bug/1782797
2018-07-21 13:50:21 +01:00
Jeff Young
2c833f2c91
Fix layout issues in Copper Zones dialog.
...
(The list width issue probably also affects other zone dialogs.)
Fixes: lp:1782766
* https://bugs.launchpad.net/kicad/+bug/1782766
2018-07-20 22:21:51 +01:00
Jeff Young
ea3ef1eb87
Don't lose model filepath when writing spin boxes back.
...
Also renames a bunch of stuff to be clearer.
Fixes: lp:1782753
* https://bugs.launchpad.net/kicad/+bug/1782753
2018-07-20 21:59:12 +01:00
Jeff Young
87f72c3d97
Initialize layer comboboxes before trying to set them.
...
Fixes: lp:1782794
* https://bugs.launchpad.net/kicad/+bug/1782794
2018-07-20 20:29:15 +01:00
Jeff Young
c1df78d531
Finish project frame library table editing.
...
Fixes: lp:1782761
* https://bugs.launchpad.net/kicad/+bug/1782761
2018-07-20 18:48:06 +01:00
Jeff Young
bd90341e91
Add Footprint & Datasheet buttons to Edit Symbol dialog.
2018-07-20 18:48:06 +01:00
Maciej Suminski
fecadeca23
Initialize variables in DIALOG_TEXT_PROPERTIES
...
Fixes: lp:1782547
* https://bugs.launchpad.net/kicad/+bug/1782547
2018-07-20 10:33:44 +02:00
Jeff Young
3c1dc9e5c6
Must also set local coords when moving footprint texts.
...
Fixes: lp:1782542
* https://bugs.launchpad.net/kicad/+bug/1782542
2018-07-19 23:26:24 +01:00
Jeff Young
e02fe83a71
Some minor cleanup.
2018-07-19 21:46:41 +01:00
Jeff Young
ba0c823673
Fix flicking issues on non-double-buffered platforms.
2018-07-19 21:46:41 +01:00
Jeff Young
eaf5b913b6
Add Manage Symbol and Footprint Library tables to project frame.
...
Fixes: lp:1780604
* https://bugs.launchpad.net/kicad/+bug/1780604
2018-07-19 21:46:41 +01:00
Jeff Young
5621f4221a
A few more spacing & font-size updates for Windows.
2018-07-19 21:46:41 +01:00
Maciej Suminski
887ee46935
Fixed a crash in DIALOG_COPPER_ZONE
...
wxDataViewCtrl used an incorrect column type, which made wxWidgets try
to extract wxDataViewIcon from an integer variable.
Fixes: lp:1782449
* https://bugs.launchpad.net/kicad/+bug/1782449
2018-07-19 11:11:13 +02:00
Jeff Young
829ba27206
Another round of dialog spacing/font adjustments for Windows.
2018-07-18 17:59:05 +01:00
Jeff Young
93c173fcdd
Add board setup and update PCB from schematic to toolbar.
...
Also reorders toolbar to more closely align with menus (and
eeschema).
2018-07-18 00:01:35 +01:00
Jeff Young
879ffa4d1c
Adjust dialog spacing for Windows.
2018-07-17 22:18:27 +01:00
jean-pierre charras
c585964da9
fix coding style issues.
2018-07-17 19:55:33 +02:00
Jeff Young
e6b55c9ae5
New net membership controls for more efficient operation.
...
(cherry picked from commit f7c5a54)
2018-07-17 15:14:28 +01:00
Jeff Young
977f27f3c4
Adjust spacing on preference panels.
...
Giving them the correct parent changed the spacing.
(cherry picked from commit 7f602f3)
(cherry picked from commit 718db46)
2018-07-17 15:14:25 +01:00
Jeff Young
abae094955
Remove unused variables.
...
(cherry picked from commit 4fc5281)
(cherry picked from commit b151c8d)
2018-07-17 15:14:22 +01:00
Jeff Young
909f850d16
Give panels the correct parent (the treebook, not the dialog).
...
(cherry picked from commit 7338533)
(cherry picked from commit 3ce75be)
2018-07-17 15:14:19 +01:00
Jeff Young
99db5cb543
Allow for reduced nagging with wider use of KIDIALOG.
...
(cherry picked from commit c2dd5df)
2018-07-17 15:13:53 +01:00
Jeff Young
a52605957e
Reduce verbosity in netlist updating messages.
...
Fixes: lp:1615755
* https://bugs.launchpad.net/kicad/+bug/1615755
(cherry picked from commit 798efbd)
2018-07-17 15:13:51 +01:00
Jeff Young
a4c5e2c82f
Fix focus issues with dialog previews.
...
Use SetStealsFocus() to fix the Pad Properties dialog, and remove
mouse-enter-kill-focus to fix 3D preview in Footprint Properties
dialog.
Fixes: lp:1761321
* https://bugs.launchpad.net/kicad/+bug/1761321
Fixes: lp:1690766
* https://bugs.launchpad.net/kicad/+bug/1690766
(cherry picked from commit e0c1fc9)
2018-07-17 15:13:47 +01:00
Jeff Young
deed1d67b3
Make SMD terminology consistent.
...
Fixes: lp:1656688
* https://bugs.launchpad.net/kicad/+bug/1656688
(cherry picked from commit 2946163)
2018-07-17 15:13:45 +01:00
Jeff Young
45e6dfc7af
Simplify copy/paste of pad settings.
...
Fixes: lp:1743141
* https://bugs.launchpad.net/kicad/+bug/1743141
(cherry picked from commit 13ece03)
2018-07-17 15:13:39 +01:00
Jeff Young
d016238c82
Rewrite Move And Swap Layers dialog.
...
Fixes: lp:1670422
* https://bugs.launchpad.net/kicad/+bug/1670422
(cherry picked from commit 356a767)
2018-07-17 15:13:35 +01:00
Jeff Young
df863e44e2
Wire m_showPageLimits control up to GAL canvas.
...
Fixes: lp:1499285
* https://bugs.launchpad.net/kicad/+bug/1499285
(cherry picked from commit 4cb7442)
2018-07-17 15:13:29 +01:00
Jeff Young
fb21069c5a
Refresh layer selection dialogs.
...
Use platform-native widgets to show selection and draw layer
colours over the PCB background colour.
(cherry picked from commit 4f95f7f)
2018-07-17 15:13:24 +01:00
Jeff Young
da69a7cd9c
Enable position-relative tool in footprint editor.
...
Fixes: lp:1778624
* https://bugs.launchpad.net/kicad/+bug/1778624
(cherry picked from commit 3ee9703)
2018-07-17 15:12:43 +01:00
Jeff Young
49ea6e1670
Fix occurrences of "edition" which should be "editing"
...
Fixes: lp:1778168
* https://bugs.launchpad.net/kicad/+bug/1778168
(cherry picked from commit bcb1220)
2018-07-17 15:12:39 +01:00
Jeff Young
d5e88f574f
Clean up units infrastructure after g_UserUnit removal.
...
Fixes: lp:1538239
* https://bugs.launchpad.net/kicad/+bug/1538239
(cherry picked from commit 96d7178)
2018-07-17 15:12:36 +01:00
Jeff Young
aab97c8385
Consolidate design rules UI.
...
Implement new Board Setup paged dialog which includes:
Layers Setup
Design Rules
Solder Mask & Paste
Text & Drawings
Moves line width and text properties to a layer-class-based
system. Renames unlocked to upright (which also reverses the
logic).
New Edit Text and Graphic Properties dialog which replaces
Edit Footprint Text and adds layer-class-based editing and the
italic, upright and visibility properties.
Adds Import Settings functionality which allows settings to
be imported from another project at page granularity.
Also UNIT_BINDERizes the dialog and adds editing of pcb text.
Fixes: lp:1731952
* https://bugs.launchpad.net/kicad/+bug/1731952
Fixes: lp:1743464
* https://bugs.launchpad.net/kicad/+bug/1743464
Fixes: lp:1664761
* https://bugs.launchpad.net/kicad/+bug/1664761
Fixes: lp:1753362
* https://bugs.launchpad.net/kicad/+bug/1753362
Fixes: lp:1545427
* https://bugs.launchpad.net/kicad/+bug/1545427
Fixes: lp:1753775
* https://bugs.launchpad.net/kicad/+bug/1753775
Fixes: lp:1777692
* https://bugs.launchpad.net/kicad/+bug/1777692
Fixes: lp:1780670
* https://bugs.launchpad.net/kicad/+bug/1780670
Fixes: lp:1519601
* https://bugs.launchpad.net/kicad/+bug/1519601
(cherry picked from commit 3944a5e)
2018-07-17 15:12:34 +01:00
Jeff Young
5f3ee1e7ce
More g_UserUnit erradication.
...
(cherry picked from commit 3f08780)
2018-07-17 15:12:31 +01:00
Jeff Young
0358aee89e
UNIT_BINDERize print and plot dialogs.
...
Fixes: lp:1778560
* https://bugs.launchpad.net/kicad/+bug/1778560
Fixes: lp:1392991
* https://bugs.launchpad.net/kicad/+bug/1392991
Fixes: lp:1780362
* https://bugs.launchpad.net/kicad/+bug/1780362
(cherry picked from commit 9df9743)
2018-07-17 15:12:29 +01:00
Jeff Young
ff34c7a948
Eradicate g_userUnit from router.
...
(cherry picked from commit 5e90e6b)
2018-07-17 15:12:26 +01:00
Jeff Young
ae2cb331b1
Merge PCBnew text edit dialogs.
...
(cherry picked from commit 63b7738)
2018-07-17 15:12:24 +01:00
Jeff Young
40c1c8285d
Combine PCBnew and ModEdit Graphic Item Properties dialogs.
...
Also UNIT_BINDERizes the result.
(cherry picked from commit edd3b25)
2018-07-17 15:12:21 +01:00
Jeff Young
ef3e045a9b
Eradicate g_UserUnit from ERC/DRC.
...
(cherry picked from commit 98b8cd4)
2018-07-17 15:12:16 +01:00
Jeff Young
2ff414adb4
Simplify Move Exactly and Postion Relative dialogs.
...
Also removes g_UserUnit references.
Fixes: lp:1660154
* https://bugs.launchpad.net/kicad/+bug/1660154
(cherry picked from commit 1639636)
2018-07-17 15:12:11 +01:00
Jeff Young
5ce0f8ba54
Kill off a few more g_UserUnit references.
...
(cherry picked from commit 452b1a7)
2018-07-17 15:12:07 +01:00
Jeff Young
cae249bbb8
UNIT_BINDERize and simplify Layers Setup dialog.
...
The colours don't add much in the way of comprehension and they
do add visual complexity. Same for the labels at the top of
the layers list box.
Also improved the grouping to make the presets aciton more clear.
(cherry picked from commit 1a03e13)
2018-07-17 15:12:02 +01:00
Jeff Young
3e062867de
Move all the grid workarounds into our own WX_GRID class.
...
(cherry picked from commit 08b4463)
2018-07-17 15:11:38 +01:00
Jeff Young
92dcf43ae8
UNIT_BINDERize zone dialogs.
...
Also includes a bunch of changes to simplifiy the terminology
and unify the copper, non-copper and keepout versions.
Also removes some legacy features:
Removes contol for fill method. If the fill method is currently
segments the dialog will ask if you want to convert to polygons
on OK.
Removes control of boundary resolution. We've done this with trig
since 5.0.
(cherry picked from commit 487aaeb)
2018-07-17 15:11:32 +01:00
Jeff Young
7841f8a466
Unified preferences dialog framework.
...
(cherry picked from commit 8ee3e77)
2018-07-17 15:11:17 +01:00
Jeff Young
2283bcda4c
Add text item property options when updating footprints.
...
Fixes: lp:1753286
* https://bugs.launchpad.net/kicad/+bug/1753286
(cherry picked from commit b94dd87)
2018-07-17 15:11:14 +01:00
Jeff Young
bbc25cd694
Add hole-to-hole clearance testing to DRC.
...
Also move courtyard testing flags to BoardSettings API. Both are
still stored in the config until we decide where they go in order
to prevent prematurely disturbing the board file format.
Fixes: lp:684067
* https://bugs.launchpad.net/kicad/+bug/684067
(cherry picked from commit 5399f60)
2018-07-17 15:11:11 +01:00
Jeff Young
eacaa39aa2
Remove global units usage from GetSelectionText...
...
... and GetMsgPanelInfo.
Step 4 in the g_UserUnit eradication effort.
Also removes a couple of conversion routines that were close
enough to extinction.
(cherry picked from commit c75da51)
2018-07-17 15:11:09 +01:00
Jeff Young
1569842927
Pad properties usability enhancements.
...
Also includes conversion to UNIT_BINDER for pad properties and
pad primitives properties dialogs.
(cherry picked from commit 4a051da)
2018-07-17 15:11:06 +01:00
Jeff Young
0010ad37d1
In-place editing for footprint TEXTE_MODULEs.
...
Fixes: lp:1102168
* https://bugs.launchpad.net/kicad/+bug/1102168
Fixes: lp:1779913
* https://bugs.launchpad.net/kicad/+bug/1779913
(cherry picked from commit 83781ab)
2018-07-17 15:11:04 +01:00
Jeff Young
8f0aa68ab8
Fold 3D Search Paths dialog into Configure Paths.
...
Use in-place editing for both.
Fixes: lp:1743823
* https://bugs.launchpad.net/kicad/+bug/1743823
(cherry picked from commit 33622cd)
2018-07-17 15:11:01 +01:00
Jeff Young
124c6d9857
Add in-place editing and validation to Design Rules.
...
Includes UNIT_BINDER transition and some general layout cleanup.
(cherry picked from commit 282119e)
2018-07-17 15:10:55 +01:00
Jeff Young
05ef6f05d1
Move SanitizePads to CLIENT_SELECTION_FILTER architecture.
...
This not only reduces the number of different mechanisms, but
will also reduce (yet again) the number of Clarify Selection
pop-ups (because the CLIENT_SELECTION_FILTER runs before the
pop-up, while SanitizePads ran after it).
Fixes: lp:1710451
* https://bugs.launchpad.net/kicad/+bug/1710451
(cherry picked from commit e50a993)
2018-07-17 15:10:18 +01:00
Jeff Young
f7861c90ec
Use more self-documenting names for conversion routines.
...
In particular, make sure no one thinks the low-precision ones are
OK for dialogs and/or files.
(cherry picked from commit bc1fcfa)
2018-07-17 15:10:13 +01:00
Jeff Young
7be85deb32
GRID_TRICKS improvements.
...
Allow copy of a single cell demarcated by the grid cursor.
Paste of lib_table s-expressions should always start at 0,0.
Let caller or specialized sub-class do auto-sizing; don’t
do it from within the base GRID_TRICKS.
Don’t start GRID_TRICKS menu IDs at -1; wxWidgets doesn’t
like it when you get to 0.
Add column visibility menu.
(cherry picked from commit e5071ed)
2018-07-17 15:10:03 +01:00
Jeff Young
f0f9e4a1cb
Kicad-ize the numeric evaluator.
...
Naming conventions, code formatting, and wxStrings.
(cherry picked from commit 4a0d7a8)
2018-07-17 15:10:01 +01:00
Jeff Young
0f78f97232
Get rid of 5.0 dialog focus hacks.
...
It's time to fix the focus issues. This adds a new SetInitialFocus()
routine to DIALOG_SHIM which will need to be called from a lot of
dialogs.
(cherry picked from commit 6d9647a)
2018-07-17 15:09:58 +01:00
Jeff Young
a39fb03822
Remove some references to g_UserUnit
...
(cherry picked from commit 614d832)
2018-07-17 15:09:56 +01:00