Seth Hillbrand
1c93b122f1
SCH_PIN: Guard the calculated map
...
Pins are used in threaded application so we need to keep the
precalculation map guarded
2019-04-10 15:29:00 -07:00
Seth Hillbrand
1a031e771f
eeschema: Connectivity threading
...
This threads the first step (update item) in the connectivity routine.
Also eliminates the duplicate call for multiple copies of the same
sheet.
2019-04-10 15:04:22 -07:00
Jeff Young
e90452d0e2
When checking for duplicate aliases look in the dialog not the symbol.
...
Fixes: lp:1821543
* https://bugs.launchpad.net/kicad/+bug/1821543
2019-04-10 21:21:00 +01:00
Jeff Young
b7c12b238f
Increase GervView layers to 51.
...
This also makes its use of LSET consistent with PCBNew.
Fixes: lp:1809019
* https://bugs.launchpad.net/kicad/+bug/1809019
2019-04-10 21:21:00 +01:00
Jeff Young
2144c6c97d
Save a bit of space in the copper zone dialog.
2019-04-10 18:12:14 +01:00
jean-pierre charras
aa53b5508e
Zone filler: fix missing calculation of filled polygons when fill mode is ZFM::SEGMENTS
2019-04-10 17:49:40 +02:00
Jon Evans
105520b235
Fix neighbor detection candidate logic
2019-04-10 00:45:41 -04:00
Seth Hillbrand
a0981d06a7
Remove std:: aliasing
2019-04-09 21:16:05 -07:00
Seth Hillbrand
9ef442b3a3
eeschema connectivity - Adjust performance in init
...
This allow single init for map structures, improving first-run
performance.
2019-04-09 21:00:11 -07:00
Seth Hillbrand
2048114512
Reduce chance for wxPoint hash collision
...
Hash collisions reduce the speed of unordered maps by increasing the
comparison time of underlying values. This implements the inverse
golden ration offset into the x value to ensure that consecutive points
are far from each other in the map.
2019-04-09 20:40:04 -07:00
Jon Evans
541c2fdb29
Performance: Move vector inside SCH_SHEET_PATH so hash can be cached
2019-04-09 21:09:48 -04:00
Seth Hillbrand
86d32fa34d
CONNECTION_GRAPH: Performance mods
...
Reduce loop count and pre-set the needed vectors. Also thread the
dangling ends calculation on a per-sheet basis.
2019-04-09 21:09:48 -04:00
Seth Hillbrand
89d2e67e45
3d-viewer: Refresh raytracing on rotate
2019-04-09 15:01:06 -07:00
Seth Hillbrand
707e7b4b65
3d-viewer: Force canvas refresh before screenshot
...
In some linux configurations, the canvas refresh must be posted before
being handled. Simply requesting the refresh can queue the event,
preventing an up to date GL canvas from being saved.
Fixes: lp:1819536
* https://bugs.launchpad.net/kicad/+bug/1819536
2019-04-09 14:47:11 -07:00
Seth Hillbrand
7cf394e34f
pcbnew: Handle missing footprint wizards
...
When we do not have any footprint wizards to display, we cannot select
the grid rows.
Fixes: lp:1823608
* https://bugs.launchpad.net/kicad/+bug/1823608
2019-04-09 11:54:01 -07:00
Wayne Stambaugh
f056777e6a
Pcbnew: fix Hyperlynx export reporting string formatting.
2019-04-09 13:56:36 -04:00
Jeff Young
fe1c2310e4
Readjust Edit Symbol Properties when symbol references changes.
...
The new reference may contain different numbers of units and/or
different deMorgan conversion settings.
Fixes: lp:1822316
* https://bugs.launchpad.net/kicad/+bug/1822316
2019-04-09 17:06:27 +01:00
Wayne Stambaugh
3d33cba574
Eeschema: fix schematic text object plotting issue.
...
Save and restore text thickness in SCH_TEXT::Plot() function to prevent
the plotting default thickness value from stepping on the original text
thickness and causing all of the text objects to magically change to bold.
Fixes lp:1823165
https://bugs.launchpad.net/kicad/+bug/1823165
2019-04-09 10:14:32 -04:00
jean-pierre charras
37ae0bf809
Pcbnew: fix a serious issue in ZONE_FILLER.
2019-04-09 11:38:18 +02:00
jean-pierre charras
59e6d3bf22
Ensure netlist is always up to date when creating a netlist.
...
A previous commit updated the netlist only on cross probing, that not covered all cases.
2019-04-09 10:36:39 +02:00
Seth Hillbrand
cf69cb5637
eeschema: Return CONNECTION when initing
2019-04-08 21:59:49 -04:00
Jon Evans
bf051b5c41
Cache InNetlist status for components
2019-04-08 21:54:41 -04:00
Jon Evans
94ba1bcb87
Update connection graph before sending netlist to pcbnew
...
Fixes: lp:1823449
* https://bugs.launchpad.net/kicad/+bug/1823449
2019-04-08 21:36:16 -04:00
Jeff Young
c78c3c8198
Allow no-connects to be dragged.
...
Fixes: lp:1821342
* https://bugs.launchpad.net/kicad/+bug/1821342
2019-04-09 00:34:26 +01:00
Jeff Young
d88df890ed
Fix merge issue between fetch netlist stuff and new connectivity graph.
2019-04-08 21:13:46 +01:00
Seth Hillbrand
257d9b5fe9
Allow setting the kicad config dir
...
This allows setting the config dir at build time, providing packagers a
method of controlling where the configuration files are placed.
Fixes: lp:1780601
* https://bugs.launchpad.net/kicad/+bug/1780601
2019-04-08 12:33:49 -07:00
Seth Hillbrand
9c00a7a5c3
Add missing header to qa
2019-04-08 12:33:49 -07:00
Jeff Young
adf3637476
Allow dialogs to veto mouse-warping when called from context menu.
...
Fixes: lp:1745731
* https://bugs.launchpad.net/kicad/+bug/1745731
2019-04-08 20:07:40 +01:00
John Beard
dd17f24c04
Libeval: consistent formatting for NaN
...
On some platforms like MSVC, NaN prints as "-nan(ind)". This
is a bit needlessly ugly, so print "NaN" on all platforms
consistently.
This fixes a test failure on MSVC.
2019-04-08 16:27:45 +01:00
jean-pierre charras
3b194d6993
Fix a collision name between lib_pin.cpp and a Windows header.
2019-04-08 17:10:55 +02:00
jean-pierre charras
0997ecf446
Fix incorrect conversion from wxString to std::string
2019-04-08 17:10:54 +02:00
John Beard
3f32dc9a64
QA: numeric evaluator: add a context to tests
...
This allows a failing test to report which case failed more clearly.
Add a quick helper to make an "in -> out" context string.
2019-04-08 15:56:19 +01:00
jean-pierre charras
0b33df8831
Pcbnew,DIALOG_SELECT_NET_FROM_LIST: fix a crash and the not working net selection.
...
It was due to changes in code, and related to escaping the '/' in net labels.
2019-04-08 15:36:55 +02:00
John Beard
8548e69382
3D viewer: update icons from common settings
...
Use the icon scaling logic and call a toolbar rebuild when the
common settings change (echos the handling in Pcbnew and friends).
Remove an unused function.
2019-04-08 14:29:15 +01:00
John Beard
124dd5e59a
3D viewer: use hi-DPI settings for canvases
...
The 3D viewer also uses OpenGL, so it also needs to
adjust based on DPI scale factors.
This patch moves the 3D viewer common config code solely
within the 3D viewer, and adds handling of the DPI scale. This
also avoids duplicated logic in PCB_BASE_FRAME::CommonSettingsChanged.
For now, as EDA_3D_VIEWER is not included in the Kiway settings
dispatch, still manually invoke the settings update from
PCB_BASE_FRAME.
The PANEL_3D_PREV gets a similar function to read the config, but
it doesn't have a listener for the update, so it's set just once
at dialog init, just like the existing pan settings.
Fixes: lp:1823681
* https://bugs.launchpad.net/kicad/+bug/1823681
2019-04-08 14:29:15 +01:00
Jeff Young
d361e68d0e
Condense the DRC dialog a bit.
...
The messages title doesn't really provide useful info anyway.
2019-04-08 13:26:26 +01:00
Jeff Young
a1c162e59f
Reimplement footprint checking on top of DRC architecture.
...
This allows Import Netlist and Update PCB from Schematic to
share the same checking code, and expose it through the DRC
dialog.
Fixes: lp:1685516
* https://bugs.launchpad.net/kicad/+bug/1685516
Fixes: lp:1809293
* https://bugs.launchpad.net/kicad/+bug/1809293
2019-04-08 13:26:17 +01:00
Jeff Young
77f15eeeaf
Support synchronous messaging over KIWAY EXPRESS.
...
This allows us to make the various netlist and pcb update routines
more atomic and less reliant on carefully sequenced asynchronous
messages.
This is also a prelude to adding support for footprint testing
without a netlist.
2019-04-08 13:26:09 +01:00
Jeff Young
52e3a1d7c4
Trim zone fills to board outline.
...
Fixes: lp:1820306
* https://bugs.launchpad.net/kicad/+bug/1820306
2019-04-08 13:10:29 +01:00
Jeff Young
b6c0aeb608
Move cut/copy/paste part (in libedit tree) to real clipboard.
...
Fixes: lp:1821547
* https://bugs.launchpad.net/kicad/+bug/1821547
2019-04-08 11:21:58 +01:00
Seth Hillbrand
cf63ae7ae2
pcbnew: Show clearance when editing tracks
...
When requested by display options, we should show the track clearance
when dragging tracks.
Fixes: lp:1818343
* https://bugs.launchpad.net/kicad/+bug/1818343
2019-04-07 21:25:28 -07:00
Seth Hillbrand
c8118e3ce4
pcbnew: Allow click+drag of tracks
...
This behavior existed in 5.0.x but did not properly exit the edit tool
in 5.1. This removes stops the edit tool when we begin dragging a track
using the interactive router.
Fixes: lp:1820312
* https://bugs.launchpad.net/kicad/+bug/1820312
2019-04-07 20:59:06 -07:00
Jon Evans
bd487d2c25
Rework logic for linking local subgraphs together
2019-04-07 23:54:47 -04:00
Jon Evans
2162b53d72
Allow selecting more items for highlighting
2019-04-07 23:54:47 -04:00
Jon Evans
c07de84c05
Suppress false ERC warnings for invisible power pins
2019-04-07 23:54:47 -04:00
Tomasz Włostowski
e5753b79d4
pcbnew: Hyperlynx Exporter - initial version
2019-04-08 02:56:02 +02:00
Jeff Young
a81512ca96
Adjust justified text for rotation.
...
Fixes: lp:1823090
* https://bugs.launchpad.net/kicad/+bug/1823090
2019-04-07 22:17:59 +01:00
Michael Kavanagh
27e6f5b9e8
Change "Switch track width to previous" default hotkey from Ctrl+W to Shift+W
...
Tiny improvement in consistency.
Fixes lp:1785842
https://bugs.launchpad.net/kicad/+bug/1785842
2019-04-07 10:50:59 -07:00
jean-pierre charras
3cb6dc69f0
Update demos to use recent footprints.
2019-04-07 17:07:57 +02:00
Seth Hillbrand
a300ae105d
pcbnew: Freeze the netclasses dialog on init
...
Prevents the size events from firing on Mac when we set up the netclass
panel
Fixes: lp:1819426
* https://bugs.launchpad.net/kicad/+bug/1819426
2019-04-07 07:07:55 -07:00