Commit Graph

13288 Commits

Author SHA1 Message Date
Seth Hillbrand f6d9c3a733 pcbnew: set default soldermask clearance for footprint viewer
The default board soldermask clearance should not be used in the
footprint viewer.  Setting the board's solder mask margin to 0 will
leave the footprint displayed with only the soldermask defined by
the pads or the footprint.

Thanks to Fabian Inostroza for pointing out the missing line.

Fixes: lp:1779979
* https://bugs.launchpad.net/kicad/+bug/1779979
2018-08-28 10:03:25 -07:00
jean-pierre charras 7ed07cae70 Pcbnew, Plot: fix incorrect plot of custom shapes, when the shape has holes (missing holes).
Fixes: lp:1789404
https://bugs.launchpad.net/kicad/+bug/1789404
2018-08-28 17:51:52 +02:00
Wayne Stambaugh 8bb0fabcba Fix build error with Boost 1.68.
The Boost folks kindly decided to move the sha1.hpp header file location
so check the Boost version to include the proper header path.

Clean up debug trace code.
2018-08-28 10:30:49 -04:00
jean-pierre charras da4d9ee392 Footprint viewer: ensure all panes are always visible, regardless m_auimgr.LoadPerspective() has read.
Perspective is overzealous: it stores everything, so we need to be sure these panes are not hidden,
regardless what the perspective has stored.

Fixes: lp:1789254
https://bugs.launchpad.net/kicad/+bug/1789254
2018-08-27 20:32:45 +02:00
jean-pierre charras a4ddbff321 Kicad archive project: add missing file extensions (.kicad_mod, .gbrjob) in files to archive filter.
From master.
2018-08-27 15:53:16 +02:00
Jeff Young 3c87ab94a2 Fix fast grid switching for OSX and Footprint Editor.
Fixes: lp:1787066
* https://bugs.launchpad.net/kicad/+bug/1787066
2018-08-26 19:01:40 +01:00
Jeff Young e424f29bbb Don't inadvertantly strip hotkey off Save All Libraries.
Fixes: lp:1786066
* https://bugs.launchpad.net/kicad/+bug/1786066
2018-08-26 00:32:38 +01:00
Jeff Young 3587789ae2 Update canvas after changing netclass settings.
Fixes: lp:1786937
* https://bugs.launchpad.net/kicad/+bug/1786937
2018-08-25 23:20:46 +01:00
Jeff Young 8cb389d95c Use actual parent for dialogs; don't pass nullptr.
Fixes: lp:1788962
* https://bugs.launchpad.net/kicad/+bug/1788962
2018-08-25 11:12:58 +01:00
jean-pierre charras 0f78fe5a5a Fix a minor wxWidget alert. 2018-08-25 10:38:13 +02:00
jean-pierre charras 333ba4b9a2 Eeschema: fix an assert ( "meOwner" failed in DeleteAll() ) when appending a sheet from an other project to the schematic.
It was only a overzealous (in this case) assert, with no issue.
The fix avoid calling DeleteAll() when there is nothing to delete.

Fixes: lp:1787810
https://bugs.launchpad.net/kicad/+bug/1787810
2018-08-25 10:38:13 +02:00
Jeff Young 7e2e39ce30 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

Fixes: lp:1786819
* https://bugs.launchpad.net/kicad/+bug/1786819
2018-08-24 23:57:19 +01:00
Wayne Stambaugh b167c41d1b Pcbnew: enable scripting action menu build option by default.
Fixes lp:1783690

https://bugs.launchpad.net/kicad/+bug/1783690
2018-08-21 13:06:27 -04:00
jean-pierre charras dc022dcdae key event in draw_panel.cpp: fix incorrect behavior for the escape key (the key was handled but the evnent was skipped). This create an incorrect behavior because the event key was resend because the primary event was seen as not handled by the drawpanel. 2018-08-21 18:49:08 +02:00
jean-pierre charras e2c6422838 Better fix for accelerator menus using "Back" (previously named "BkSp") key
Use the wxWidgets official accelerator key string for WXK_BACK (this is "Back") in menuitems instead of "BkSp"
Also when reading the hotkey config file, avoid to set a hotkey to unassigned when its name is not found in list.
The default value is used.
Unassigned hotkey use <unassigned> as key name (and 0 as key code) in file.
2018-08-21 18:49:08 +02:00
Ronnie Gaensli 182b8a32df eeschema: fix dangling pin marker after adding NoConnect
Fixes: lp:1787858
* https://bugs.launchpad.net/kicad/+bug/1787858
2018-08-19 19:47:21 -07:00
jean-pierre charras 831978293f Fix ASCII code used in accelerator menus for BkSp key (Linux only)
On Linux (GTK?) the accelerator key BkSp, when used in menus must be coded as "\t\b" and not "\tBkSp".
However, On Windows, it must be "\tBkSp".
Joys of multi-platform development.
2018-08-15 21:19:41 +02:00
John Beard 64f46448ea Fix -Wcatch-value in kicad2step.cpp 2018-08-15 12:51:36 -04:00
Maciej Suminski ca1f50a023 Spice simulator: search each line of a text field for a Spice directive
Fixes: lp:1786119
* https://bugs.launchpad.net/kicad/+bug/1786119

(cherry-picked from commit d5ee3296)
2018-08-14 10:27:07 +02:00
Maciej Suminski 626f5ac45a Spice simulator: prevent double quoting library file names
Fixes: lp:1786559
* https://bugs.launchpad.net/kicad/+bug/1786559

(cherry-picked from commit f82b839d)
2018-08-14 09:47:24 +02:00
Jeff Young a45a8e8797 Warn before replacing edited footprint in footprint editor.
Fixes: lp:1786570
* https://bugs.launchpad.net/kicad/+bug/1786570
2018-08-11 20:36:51 +01:00
jean-pierre charras c7d39d22db FOOTPRINT_WIZARD_FRAME: ensure the draw panel is always visible, even if the config file is incorrect. 2018-08-10 13:44:21 +02:00
jean-pierre charras b764bb1d6d Fix a minor wxWidgets alert 2018-08-10 13:43:12 +02:00
jean-pierre charras 64eaaa4f58 Fix incorrect parent of a separator in a toolbar 2018-08-10 11:53:49 +02:00
Seth Hillbrand 0e946dad1a 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-09 14:57:50 -07:00
Seth Hillbrand 1c2f06106d 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:23:32 -07:00
Seth Hillbrand edbf34c2b2 Adjust RTree default floating point to use double
This reverts the previous work-around 7d62f14dd for the RTree splitting
degeneracy that was placed prior to v5.  It appears not to have worked
for all systems.  In its place, we use doubles instead of floats to
calculate the bounding box when filling the RTree.  This keeps maximum
volume items from overlapping with the system boundary in test cases.

(cherry-picked from 539ca5aa3)
2018-08-06 17:01:59 -07:00
Jeff Young 26cbdbf103 Add Edit context menu item for EEschema graphic lines.
Fixes: lp:1779554
* https://bugs.launchpad.net/kicad/+bug/1779554

(cherry picked from commit 02b29ba)

(cherry picked from commit 7dcc8e346f)
2018-08-06 13:56:56 +01:00
Jeff Young f163d9ff2a Fix bug with duplicate columns in Edit Symbol Fields.
(cherry picked from commit 01c5bdf)
2018-08-06 13:55:59 +01:00
Jeff Young 9230189f62 Fix thread-safety issue with some global wxStrings.
These cause intermittent crashes in footprint loading.  See
comments in code.

(cherry picked from commit 5e8e2570ba)
2018-08-06 13:52:23 +01:00
Ronnie Gaensli 9d241ba812 Cancel Add dimension leaves auto panning on
Fixes: lp:178551
* https://bugs.launchpad.net/kicad/+bug/178551

(cherry picked from commit 3ca84dca)
2018-08-06 11:27:56 +02:00
jean-pierre charras 57c3e98f8c Fix a wxWidgets minor alert 2018-08-03 09:28:30 +02:00
jean-pierre charras 349d1562af fix a few wxWidgets alerts, to avoid useless bug reports when kicad is compiled in Debug mode 2018-08-02 16:58:30 +02:00
jean-pierre charras d81bcee10d CMakeLists.txt: add a option (BUILD_SMALL_DEBUG_FILES, default off) to create smaller binaries in debug mode. It forces link option -g1 instead og -g3 which allows basic debug.
This is especially useful on Mingw because binaries in debug build are very large:
_pcbnew.kiface: 1.25 Gb, small file option: 65Mb
2018-08-02 16:58:30 +02:00
Seth Hillbrand 016c02a42d 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:00:49 -07:00
Jeff Young 80e7a83fb0 Generalize OSX &Cancel fix to work for other languages.
Fixes: lp:1784350
* https://bugs.launchpad.net/kicad/+bug/1784350

(cherry picked from commit 98849bde96)
2018-08-01 11:50:04 +01:00
jean-pierre charras d2aa976017 Fix many wxWidgets alerts, to avoid useless bug reports when kicad is compiled in Debug mode 2018-07-31 11:41:47 +02:00
John Beard 9476b53533 Use M_PI for Pi, not constexpr calculation
Constexpr evaluation breaks Clang compilation.

Use math.h M_PI, as elsewhere.
2018-07-30 12:46:27 -04:00
jean-pierre charras 5e19ed29b8 Fix D_PAD::BuildPadShapePolygon() incorrect calculation for custom pad shapes.
Fixes: lp:1784340
https://bugs.launchpad.net/kicad/+bug/1784340
2018-07-30 16:58:20 +02:00
John Beard aa340e6b85 QA Geometry: New test suite for generic geometric tests
This is the first test for a generic test suite for geometric functions.

The tests run are for fillet corners of SHAPE_POLY_SETS.

Previously, SHAPE_POLY_SET::Fillet was tested against CPolyLine::Fillet
to ensure compatibility. However, thse two functions now have different
interfaces and are not directly comparable. Also, this depended on
CPolyLine::Fillet being correct, which was not tested.

Instead, test SHAPE_POLY_SET::Fillet using tests against geometric
constraints, independent of any other fillet implementation.
2018-07-27 14:41:24 -04:00
John Beard 9a80ebf387 QA: Rename geometry to shape_poly_set_refactor
This test is not really concerned with generic geometric code testing,
but rather the correctness of a refactoring effort.

Rename it make this clearer, and also to make way for generic geometry tests.
2018-07-27 14:41:11 -04:00
John Beard df1fa37fd8 QA: Add python test as a Ctest test rather than build target 2018-07-27 14:41:04 -04:00
John Beard 370a412f49 Enable CTest tests and add qa_geometry as a test
This allows the use of `make test` or `ctest` to run all registered
tests.

The ChamferFillet/Fillet test is disabled for now as it fails.
2018-07-27 14:40:57 -04:00
Maciej Suminski d63c1a2118 Use quoted file name when opening a PDF file
Fixes: lp:1783667
* https://bugs.launchpad.net/kicad/+bug/1783667

(cherry-picked from bbfc1eb1)
2018-07-26 12:07:46 +02:00
Maciej Suminski 35576adb73 Converted PNS Length Tuning dialog to use TransferData{From,To}Window()
Fixes: lp:1783694
* https://bugs.launchpad.net/kicad/+bug/1783694

(cherry-picked from commit dbf4bcdb)
2018-07-26 10:36:21 +02:00
Maciej Suminski 4ff426275f Fixed KIDIALOG freeze
wxDialog calls Show(false) when the dialog is about to be closed, but
KIDIALOG::Show() implementation did not forward the show parameter to
wxRichMessageDialog::Show() invocation. As the parameter was not
specified, the mentioned Show() call always used 'true' as the default
parameter, preventing the dialog from being closed.

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

(cherry-picked from commit 39d8d143)
2018-07-25 12:10:54 +02:00
John Beard 7dc9f99165 Fix -Wcatch-value in sexpr.cpp
This is fixed by catching bty const-ref, rather than by value.

Also a few trailing space deletions.
2018-07-23 14:57:52 -04:00
Maciej Suminski 30da1a3b02 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.

(cherry picked from commit 45c1742a)
2018-07-22 19:52:55 +02:00
Wayne Stambaugh 3dcf04fdb8 Apply footprint editor options when dialog OK button is clicked.
Fixes lp:1781977

https://bugs.launchpad.net/kicad/+bug/1781977
2018-07-18 08:45:43 -04:00
jean-pierre charras 6fbc7bb4ce Gerbview, read Excellon files: fix a few issues.
The main issue is the fact Excellon files have no coordinate fine format definition.
Only the units are defined.
Units are floating point numbers or integer numbers.
Integer numbers can be defined as 3.3 or 2.4 numbers (mm/inches)
However some files (altium drill files for instance) use an other notation.
This fix is a workaround to accept 2.x (inch) or 3.x (mm) notations.

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

Fixes: lp:1782053
https://bugs.launchpad.net/kicad/+bug/1782053
2018-07-17 17:41:33 +02:00