Commit Graph

17139 Commits

Author SHA1 Message Date
jean-pierre charras 3cd12088a3 PANEL_SETUP_BOARD_STACKUP: minor cosmetic enhancement. 2019-09-25 09:27:36 +02:00
jean-pierre charras 63e515339b Update demo 2019-09-25 07:33:18 +02:00
Seth Hillbrand 72da23725a pcbnew: Don't copy const structures when not needed
Copying the const pointer on large structures (filled zones) will be
very slow and memory intensive.  This can cause OOM on linux and extreme
slowdowns when the save is triggered.

Fixes: lp:1840168
* https://bugs.launchpad.net/kicad/+bug/1840168
2019-09-24 11:47:21 -07:00
Seth Hillbrand 7f54617dab pcbnew: Clear view prior to terminating
On complex boards, the view holds a very large vector of all objects.
The dtor will remove each one, searching for the pointer before
removing.  When removing all items, this process is not needed, so we
clear the view when exiting.  This also prevents lock-up when closing
the full application as KiCad waits for the dtor to finish
(non-interactively).  This will cause Windows to crash and Linux to
offer an option for terminating the non-responsive application.

Fixes: lp:1843092
* https://bugs.launchpad.net/kicad/+bug/1843092
2019-09-24 11:44:33 -07:00
jean-pierre charras cd6c1c48a4 Board stackup manager: add material selector to solder mask and silkscreen layers. 2019-09-24 16:30:25 +02:00
jean-pierre charras 9f156aa115 3D viewer: do not translate Ctrl and Shift hotkey modifiers: Translations do not always work 2019-09-24 09:41:05 +02:00
jean-pierre charras 06a50751e8 3d viewer: Fix duplicate hotkeys/accelerator keys.
keys X, Y, Z were used both to rotate view and to force left/right view, front/back view, top/bottom view
Now rotate view uses Ctrl+ X,Y,Z keys
2019-09-23 18:51:18 +02:00
jean-pierre charras 840c77fa9c pcbnew/swig/pcbnew_action_plugins.cpp: fix crash due to broken detection of deleted items after running a script.
the old way was not compatible with the current management if board item lists.
The crash was probably due to double deletions.
Note also the management of undo command in pcbnew_action_plugins needs serious optimization.

Fixes: lp:1844880
https://bugs.launchpad.net/kicad/+bug/1844880
2019-09-23 14:07:45 +02:00
jean-pierre charras 529461ef5b Update ecc83 demo 2019-09-23 10:20:05 +02:00
Seth Hillbrand bba949c04d pcbnew: properly close tags when handling bad poly
The parenthesis depth is 2 when the polygon isn't closed.  This
shouldn't happen but we have the fall-through to handle odd cases

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

(cherry picked from commit d862cdaa72)
2019-09-21 09:27:01 -07:00
jean-pierre charras 8be9aeac9f Fix typo 2019-09-21 09:50:01 +02:00
Jakub Kozdon 11f1ce14d1 Eeschema: Option to use also .mod files as a simulation model
Fixes: lp:1844718
* https://bugs.launchpad.net/kicad/+bug/1844718
2019-09-20 09:40:55 -07:00
jean-pierre charras 130d52dd80 Pcb Calculator: Via Calculator gives too low resistance values (100 times).
Fixes: lp:1844804
https://bugs.launchpad.net/kicad/+bug/1844804
2019-09-20 18:14:52 +02:00
jean-pierre charras 7355ed3bda Fix Typo 2019-09-20 13:15:06 +02:00
jean-pierre charras badd0bfa54 Minot fixes in GERBER_JOBFILE_WRITER, due to recent changes in .gbrjob file format. 2019-09-20 13:13:19 +02:00
Seth Hillbrand 4d8949371f conn: Connect pads to anchor points not geo center
Pads may include offsets that allow the user to shift the connection
point of the pad.  This is captured by the pad m_Pos but not by
ShapePos().  When testing connectivity, we need to get the offset
position.
2019-09-19 13:49:12 -07:00
Seth Hillbrand b7128639f8 connectivity: Check all anchors for connection
With pads, we should check available anchor points for each connection,
increasing probability of finding connection to match fill algorithm

Fixes: lp:1844661
* https://bugs.launchpad.net/kicad/+bug/1844661
2019-09-19 12:44:40 -07:00
jean-pierre charras fc6dc81878 Pcbnew, gerber job file: add "name" field in stackup section 2019-09-19 20:29:39 +02:00
jean-pierre charras 115e1e33da dialog edit footprint: display fp orientation between -180 and + 180 instead of 0 ... 360 deg.
Previously, the wxTextCtrl was using 0 ... 360 but the predefined values are -90 to 180 deg.
2019-09-19 20:29:39 +02:00
Jeff Young 33606431cc Fix an insidious bug where DoDelete() and DeleteJunction() were fighting over who owned the STRUCT_DELETED flag.
Fixes: lp:1844620
* https://bugs.launchpad.net/kicad/+bug/1844620
2019-09-19 19:11:19 +01:00
jean-pierre charras 37f06eb2b7 Update demo 2019-09-19 18:05:29 +02:00
jean-pierre charras 16f4958430 Pcbnew: avoid crash when closing pcbnew if the DRC dialog is open.
Cvpcb: change from commit 9ceca583:
the root class close event that save settings is now seeing the close event.
2019-09-19 09:16:12 +02:00
Ian McInerney bb596ebdaf Fix width of part selector columns
* Move column width manipulation into the lib tree adapter
* Fix issue with GTK where if someone types too fast, the part
  column gets 0 width.

Fixes: lp:1841584
* https://bugs.launchpad.net/kicad/+bug/1841584
2019-09-18 16:12:45 -07:00
Wayne Stambaugh 7cf42bb308 Eeschema: do not save legacy symbol libraries in schematic file.
Fixes lp:1843473

https://bugs.launchpad.net/kicad/+bug/1843473
2019-09-18 14:23:04 -04:00
Ian McInerney a37d8f2859 Remove unneeded wxWidgets version checks in the code
Now that the minimum version is 3.0.0, we don't need to actually
check if the version is greater than 3.0.0 inside the code.
2019-09-18 10:03:53 -04:00
Ian McInerney d68dd09f63 Run all matching global actions for a hotkey
Fixes lp:1834547

https://bugs.launchpad.net/kicad/+bug/1834547
2019-09-18 09:21:43 -04:00
jean-pierre charras a1fe8cfa5a Minor changes: cleanup code and prepare code to add more attributes to Object Attributes (.TO) 2019-09-18 11:48:49 +02:00
Ian McInerney 9e555cb422 cvpcb: Run save association action immediately
(this is a complement of commit 9ceca583)
2019-09-18 10:35:37 +02:00
jean-pierre charras 9ceca583b1 Cvpcb: fix minor issues:
- Config not saved
- Confirmation dialog show after clicking on the OK button.

Fixes: lp:1844457
https://bugs.launchpad.net/kicad/+bug/1844457
2019-09-18 09:57:26 +02:00
jean-pierre charras e7adb92930 Update demo 2019-09-17 18:54:06 +02:00
jean-pierre charras a52dc57887 Pcbnew: Fix incorrect footprint angle rotation after flipping around Y axis (left to right)
The angle rotation was always negated. But this is incorrect:
The angle rotation must be negated when flipping around X axis
The angle rotation must be 180 - initial rotation when flipping around Y axis

This bug can break position files and footprint updates,
especially when mixing flipping around Y axis and flipping around X axis.
2019-09-17 18:51:27 +02:00
jean-pierre charras 072ea9a33e Pcbnew: flip command: when flipping only one item, flip it around its anchor instead of its bounding box.
This is the behavior of previous 5.1 version.
Using the bounding box has advantages, but unfortunately in many cases the footprint position is moved.
If a lot of flip commands are made on the same footprint, it is moved far from its initial position.
2019-09-17 10:06:39 +02:00
jean-pierre charras c6889b0065 Fixes in demo kit-dev-coldfire-xilinx_5213. 2019-09-16 15:28:21 +02:00
jean-pierre charras 937b5bd69a Gerbview allows larger DCodes values (previously DCode id number max 999, now 10000)
This is not the DCodes max count but the DCode id (like in %ADD20C,0.05*%: the id is 20)
2019-09-16 14:49:26 +02:00
jean-pierre charras 0ecf5dea86 update demo kit-dev-coldfire-xilinx_5213 2019-09-16 13:43:09 +02:00
jean-pierre charras 64b5e8bee2 Minor fix and enhancement code. 2019-09-15 11:10:53 +02:00
jean-pierre charras 91c66a05ae DIALOG_DIELECTRIC_MATERIAL_BASE: Minor fix 2019-09-13 11:35:27 +02:00
jean-pierre charras c10d30c1c8 PANEL_SETUP_NETCLASSES: fix not working (immediately closed) wxChoice widgets to select a filter
This happens with wxWidgets 3.0.4 on Windows and is a side effect of a call to Layout().
The fix just calls Layout() only when needed.

Fixes: lp:1843594
https://bugs.launchpad.net/kicad/+bug/1843594
2019-09-13 11:29:51 +02:00
Jeff Young f1790c24e5 Fix issue with Arc pad primitive dialog having center and start swapped.
Fixes: lp:1842199
* https://bugs.launchpad.net/kicad/+bug/1842199
2019-09-12 21:22:47 +01:00
Jeff Young 7ad98b8a7d Fix bug in JunctionNeeded and selection around adding/removing junctions.
When checking for 3 or more connections, at least one of them must be
a pin.  Otherwise we need to fall down to the next check which also
ensures that at least one of them is not parallel.

Fixes: lp:1841458
* https://bugs.launchpad.net/kicad/+bug/1841458
2019-09-12 20:10:47 +01:00
jean-pierre charras f204208667 Update demo kit-dev-coldfire-xilinx_5213 2019-09-12 18:40:03 +02:00
Jeff Young 67915b6a96 Add a warning message for attempting to current probe a subckt.
Fixes: lp:1843159
* https://bugs.launchpad.net/kicad/+bug/1843159
2019-09-12 14:45:01 +01:00
Jeff Young aeedbf87dd Tighten up the Pad Properties dialog a bit.
Fixes: lp:1843580
* https://bugs.launchpad.net/kicad/+bug/1843580
2019-09-12 14:45:01 +01:00
Jeff Young 0b981caef8 Don't clear the IS_MOVED flag right before looking at it.
Fixes: lp:1842355
* https://bugs.launchpad.net/kicad/+bug/1842355
2019-09-12 14:45:01 +01:00
Wayne Stambaugh 18667377f7 Eeschema: improve error message when writing cache library.
Remove duplicate missing symbol names from the extended error message.

Fixes lp:1842452

https://bugs.launchpad.net/kicad/+bug/1842452
2019-09-12 07:35:48 -04:00
Wayne Stambaugh 4bfb8ef457 Pcbnew: fix Eagle footprint library polygon pad sizes.
Eagle includes the width of the polygon line when generating polygon pad
sizes where KiCad does not.  This simple fix inflates polygon pads half
of the Eagle polygon line width.

Fixes lp:1833687

https://bugs.launchpad.net/kicad/+bug/1833687
2019-09-12 07:35:48 -04:00
jean-pierre charras f5692584f2 cleanup 2019-09-12 13:25:15 +02:00
jean-pierre charras 271465a644 Stackup manager: Add a dielectric manager to handle more easily user defined dielectric substrates
panel_board_stackup.cpp: material selection:
 replace wxChoice by a better widget (wxTextCtrl+wxButton) to call the dielectric manager dialog
Move dielectric material class to a specific file
2019-09-12 10:37:05 +02:00
jean-pierre charras 6ef4d7879e Fix incorrect comment in heler message 2019-09-12 08:16:39 +02:00
Seth Hillbrand f2bf9fa534 eeschema: Prevent crash on move/drag re-entry
Restarting a move/drag operation breaks the stack by starting the tool
without popping it on exit.

TODO: implement RAII for these stack push/pop
2019-09-11 17:01:16 -07:00