Commit Graph

39538 Commits

Author SHA1 Message Date
Jeff Young 0f94b467ba Fix arg parsing in ExecuteFile.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15326
2023-09-23 14:34:54 +01:00
Jeff Young 1fd3f4e375 Handle read-only libraries when saving symbol from canvas.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15519
2023-09-23 14:34:54 +01:00
jean-pierre charras e7233a8dc6 DIALOG_CREATE_ARRAY, minor changes: better look, and added a few tool tips. 2023-09-23 10:08:37 +02:00
Bartek Wacławik ac9a863496 Implement new resistor substitution algorithm
Significantly improves performance of the tool.  Also corrects an mistake in the formula for computing relative errors
2023-09-22 21:43:09 +00:00
Jeff Young 463e7c3b30 Improve performance & responsiveness of sim updates.
The x-axis only needs to be fetched once per update.  Same for
redrawing the screen.  And there's no reason to fetch more y data
than we have x data for (which happens to subsequent traces as
the sim is still running as we're updating).

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-22 21:40:52 +01:00
Jeff Young da1405ec6a Draw off-board pads when drawing off-board silk. 2023-09-22 20:57:31 +01:00
Seth Hillbrand bdb7b99fc8 Don't destroy the pin cache in symbols
SCH_PIN pointers are used through KiCad and removing them without a
global refresh risks crashes.  A safer approach is to simply reuse the
SCH_PIN structures, updating the data to the revised library

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15715
2023-09-22 11:28:30 -07:00
Jeff Young c1a988e3ff Handle plated vs non-plated copper for copper other than pads.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5569
2023-09-22 18:48:29 +01:00
Jeff Young cce366bc1d Tidy up 3D renderer display options. 2023-09-22 18:48:29 +01:00
Jeff Young 78f70b45e6 Minor readability improvements. 2023-09-22 18:48:29 +01:00
Jeff Young 4bfebb4744 Use standard names. 2023-09-22 18:48:29 +01:00
Jeff Young a954c1d93c Conversion safety. 2023-09-22 18:48:29 +01:00
Jeff Young 17df55951d Beautify Manage Footprint Association Files dialog. 2023-09-22 18:48:29 +01:00
Jeff Young 722a90213c Correct path of pcb drawing sheet file on saveAs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15551
2023-09-22 18:48:29 +01:00
jean-pierre charras 1f99a5caa6 3D viewer: do not rebuild the board 3D shape when footprint 3D models visibility
has changed: the 3D models visibility does not change the board shape.
2023-09-22 18:32:20 +02:00
Seth Hillbrand b837aa823c Disable non-KiCad import for project-mode
Adds warning if project schematic contains data

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15570
2023-09-22 09:21:56 -07:00
Alex Shvartzkop 3ee2086f95 Don't freak out when can't warp the pointer. 2023-09-22 05:10:42 +03:00
afkiwers a1708637fc fixed missing desciption in symbol chooser 2023-09-22 01:15:32 +00:00
Seth Hillbrand 4cd26ab6bc Ensure NC nets are not connected in board
Even when a pin connects to multiple pads, placing an NC indicator on
the pin type or the connected net means that all pads for that pin
should be independent and not ratsnest with each other

We accomplish this by assigning a unique id "unconnected-(REFDES-PAD#_#)" to each
pad with the pintype "no_connect".  The pad numbers and uniquely
incremented per footprint based on UUID ordering

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15692
2023-09-21 21:36:19 +00:00
Clément Saccoccio a3bc3e138b Fixed frozen pointer for some GNOME/Wayland installation. 2023-09-21 17:09:50 +00:00
Seth Hillbrand c497abd8ee Fix MSW registry key for 3dconnection
See discussion at 7af5037ad7 (note_1568602292)
2023-09-21 09:55:11 -07:00
jean-pierre charras a6e883327a Fix typos (paste issue?) in SCH_TEXT::FlipHJustify() and SCH_TEXT::Rotate90().
Fixes #15708
https://gitlab.com/kicad/code/kicad/-/issues/15708
2023-09-21 16:12:36 +02:00
Jeff Young 9e2fc9b07c Footprint item positions are relative.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15477
2023-09-21 14:28:25 +01:00
Jeff Young 8d06a794f4 Simplify code.
DrawAllCameraCulled() can handle up to 4 knockout lists, and any
of them can be null, so don't dance around how we call it.
2023-09-21 14:02:23 +01:00
jean-pierre charras e152f97f35 Fix minor Coverity warnings. Small code cleaning in pcb_parser.cpp 2023-09-21 11:33:29 +02:00
jean-pierre charras b1ed0529d7 3D viewer: Simplify polygons before triangulation.
It reduce the risk to create bad triangulation.
Fixes #15706
https://gitlab.com/kicad/code/kicad/-/issues/15706
2023-09-21 11:32:32 +02:00
Seth Hillbrand f4afd7e363 Thread testTrackClearances
We are frequently testing thousands of track segments.  They can each be
uniquely tested in parallel with reporting and marking guarded by
mutexes.  This speeds up the DRC tests substantially

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15466
2023-09-20 19:51:33 -07:00
Seth Hillbrand b2ef620ea6 Focus back to the main window after dialog
Mouse actions would focus the window but we explicitly set it here to
allow keyboard shortcuts

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15603
2023-09-20 17:38:06 -07:00
Jeff Young f97af9f254 Experimental feature to render off-board-footprint's pads to silk. 2023-09-20 23:28:50 +01:00
Jeff Young 87af115ee0 Make better use of method overrides. 2023-09-20 23:28:50 +01:00
Jeff Young 0126841c44 ADDED: 3D appearance setting for off-board silk. 2023-09-20 23:28:50 +01:00
Seth Hillbrand 88cbbbcdae Add error message when we cannot form a polygon
Explains to the user why the polygon creation failed

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15704
2023-09-20 13:42:31 -07:00
Jon Evans 0cf09fe374 macOS: fix errant rpath 2023-09-20 14:37:44 -04:00
Seth Hillbrand 16324facaf Use kicad_algo when possible 2023-09-20 10:32:37 -07:00
Jeff Young 2f475d99dd Don't update signals and measurements for each refresh.
We only need to do them on the final refresh.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-20 17:34:34 +01:00
Jeff Young 1ff279bf72 Don't auto-adjust time axis while sim is running.
Just use start and end time.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-20 17:34:34 +01:00
Jon Evans d781d70a09 PNS fix dragging a single footprint
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15693
2023-09-20 11:53:43 -04:00
Mike Williams 398a336d91 BOM Generator: redirect BOM buttons to new exporter
Also add legacy generator menu item.
2023-09-20 11:12:03 -04:00
Mike Williams 9541e45502 BOM Exporter: allow using presets from the command line 2023-09-20 10:57:43 -04:00
Jon Evans 9989886517 Fix accidentally backed-out change to idftools for macOS 2023-09-20 09:52:25 -04:00
Mike Williams 6425c5cc1a Symbol Fields Table: fix issues with selecting row of starting selection
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15684
2023-09-20 09:42:52 -04:00
Mike Williams dd0743d766 Symbol Fields Table: add fixes around preset modifications 2023-09-20 09:42:52 -04:00
Jeff Young c0ce543464 Use standard KiCad abbreviations for TH and NPTH. 2023-09-20 14:27:57 +01:00
Jeff Young 7e70ceaa03 Don't trim non-physical layers to board-outline.
If the user wants a realistic render, then they'll turn off
non-physical layers entirely.
2023-09-20 13:43:23 +01:00
Marek Roszko ee91b550d8 gl_context_mgr and gl_util belong in the gal folder 2023-09-19 23:06:44 -04:00
John Beard fb12db5f2c Add regression test for arc winding
While the bug has been fixes, the winding handling in the
SetArcGeometry() function isn't tested. This adds a regression
test on EDA_SHAPE, which is where the logic now lives.

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/15694
2023-09-20 02:27:46 +01:00
Marek Roszko 43a59275c3 Remove unused header 2023-09-19 21:14:26 -04:00
Jon Evans 9973dd3e5d Fix sentry compile issues on macOS 2023-09-19 20:31:14 -04:00
Marek Roszko 9deff07ca6 Save 470KB by not re-initializing lineTypeNames over a thousand cpp files it leaks into
I saved a bunch of money on my car insurance by switching to Extern
2023-09-19 20:05:55 -04:00
Seth Hillbrand 7d12e1c4f5 Fix crash in incremental update and bus conn
We store our connectivity dirty flag with the SCH_ITEM but we generate
SCH_CONNECTION based on the SCH_ITEM and the SCH_SHEET_PATH.  For this
reason, we need to avoid clearing the connectivity dirty flag until
we've finished processing all instances of the SCH_ITEM in the graph

This also means that we need to allow getting the SCH_CONNECTION pointer
even when the connectivity is still dirty (getting SCH_CONNECTION
happens based on SCH_ITEM and SCH_SHEET_PATH, not just SCH_ITEM)
2023-09-19 15:55:19 -07:00