Jeff Young
593b77be8c
Fix typo.
2023-07-14 19:47:15 +01:00
Jeff Young
cbf685ad76
Clear owner of old watcher before resetting std::unique_ptr.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15173
2023-07-14 19:32:20 +01:00
Jeff Young
054252ccbe
Move sim workbook to json.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15197
2023-07-14 17:46:06 +01:00
Jeff Young
ff044cd0cf
Mostly a terminology update...
...
... but also makes DIALOG_SIM_COMMAND and SIMULATOR_REPORTER a bit
more simulator-agnostic.
2023-07-14 17:46:06 +01:00
Jeff Young
8d2c744349
More error messages for reading workbook files.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15197
2023-07-13 23:54:00 +01:00
Jeff Young
c4179cb996
Correctly initialize New Simulation Command dialog.
2023-07-13 23:37:48 +01:00
Jeff Young
5f8583cd25
Try both ends to see if one is a wire.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15178
2023-07-13 18:20:28 +01:00
Jeff Young
964e42a611
ADDED text-based pole-zero analyses.
2023-07-13 16:18:25 +01:00
Jeff Young
841b693c91
Add pole-zero command parsing and printing.
2023-07-13 16:04:29 +01:00
Jeff Young
2e89c735c0
Fix buffer overrun.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15187
2023-07-13 16:04:29 +01:00
Josue Huaroto
4cad021ef4
Add Open preferences folder button in Preferences Dialog
2023-07-13 14:10:31 +00:00
Sergio Costas
181ae7f450
Change all bare isnan calls into std::isnan
2023-07-13 12:55:58 +00:00
Mike Williams
cfa0d4bfb7
Symbol Fields Table: handle missing fields better
...
Treat missing ones as empty, unless they are a named variable field and
then resolve the field.
2023-07-12 16:40:08 -04:00
Mike Williams
e26dcbece4
Symbol Fields Table: add item number support
2023-07-12 15:08:50 -04:00
Mike Williams
265720ec65
BOM Export: add DNP to Group By * defaults
...
Closer to the BOM export scripts we are trying to replace, and gives the
user a clue that fields with variables names are way to export other
data.
2023-07-12 12:16:14 -04:00
Mike Williams
7cb8d3d1c9
Schematic fields: implement fields with variables as names
...
Special case that always fills in the value with the value of the
variable
2023-07-12 12:16:14 -04:00
Alex Shvartzkop
89a9eee174
LTspice import: fix Mac path variable shadowing.
2023-07-12 18:07:26 +05:00
Jeff Young
0a28956cf8
Replace misssing "if" stmt and make outer "if" catch all cases of log scales.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15174
2023-07-12 10:41:46 +01:00
Alex Shvartzkop
f8f7b84f13
LTspice import: add LTspice 17.1 Windows library path.
2023-07-12 10:57:30 +05:00
Alex Shvartzkop
c652abecff
LTspice import: don't scan input file directory recursively.
2023-07-12 09:58:51 +05:00
Alex Shvartzkop
2266ba78c5
LTspice import: much faster library path scanning.
2023-07-12 08:38:18 +05:00
Alex Shvartzkop
32fdb231b2
LTspice import: fill symbol rectangles with body color when needed.
2023-07-12 08:38:18 +05:00
Alex Shvartzkop
568a461080
LTspice import: Fix multiline text alignment.
2023-07-12 08:38:18 +05:00
Jeff Young
f8f29b55cb
Don't promote to sheet parent when the item itself is a sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15167
2023-07-11 14:52:05 +01:00
Jeff Young
c3d10084b9
ADDED footprint associations dialog.
2023-07-11 14:52:05 +01:00
Alex Shvartzkop
0bc546fa62
LTspice import: fixes for graphical items.
2023-07-11 16:03:29 +05:00
Alex Shvartzkop
a5ba9ccce2
LTspice import: don't try loading .asc files for non-subsheets.
...
Subsheets don't have "Prefix" attribute, components do.
2023-07-11 16:03:29 +05:00
Alex Shvartzkop
ef1a2ff050
LTspice import: text and pin justification, polarity fixes.
2023-07-11 13:00:43 +05:00
Alex Shvartzkop
e80e4ff410
LTspice import: hide pin names with None justification, hide pin numbers
2023-07-11 12:57:56 +05:00
Wayne Stambaugh
929a6a2b99
Coding policy fixes.
2023-07-10 19:24:59 -04:00
Alex Shvartzkop
b957c1ad17
LTspice import: Support VCenter text justification
2023-07-11 04:09:16 +05:00
Alex Shvartzkop
1e149704b8
LTspice import: Fix M270 symbol orientation.
2023-07-11 04:09:16 +05:00
Alex Shvartzkop
cab0db76f8
Clear view before resetting schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15159
2023-07-11 03:00:42 +05:00
Wayne Stambaugh
415dcf82c4
Coverity issue fixes.
...
CIDs 462497, 462496, 462495, 462494
2023-07-10 17:48:27 -04:00
Wayne Stambaugh
aeed542202
Net navigator fixes and improvements.
...
Remove wires, junctions, and bus entries from tree. These objects make
the net tree noisy for complex nets. Until a sane way to group these
objects can be, remove them for now.
Fix tree expansion and debug assertion issues.
2023-07-10 15:34:00 -04:00
Jeff Young
eedf319ba4
Don't double-offset effective text shapes.
...
Also fixes several bugs with intersheet ref fields. (It's possible for
other fields to have an ID of 0.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15165
2023-07-10 19:32:00 +01:00
Jeff Young
d2f9994fc5
SCH_SHEET::GetContextualTextVars() will return Project text vars.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15123
2023-07-10 12:40:04 +01:00
jean-pierre charras
6a47fe1e3c
simulator: shows the wxCURSOR_ARROWWAIT cursor only when the sim is running.
...
Reset the mouse cursor to its default shape when the simulation is finished.
2023-07-10 13:30:14 +02:00
Jeff Young
3ba7e7e993
A few baby steps in trying to straighten out LTSPICE_SCHEMATIC::Load().
2023-07-10 11:34:06 +01:00
Jeff Young
229dcde948
Fix a memory leak.
...
There are likely *many* more in this routine, but I can't quite
understand what it's trying to do.
2023-07-10 11:34:06 +01:00
Jeff Young
8f9a67063a
Straighten out some really confusing terminology in simulator GUI.
2023-07-09 23:07:54 +01:00
Jeff Young
7608350bdc
Iron out NewPlot vs EditSimCommand.
...
Also don't confuse SIM_PLOT_PANEL_BASE with SIM_PLOT_PANEL.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15157
2023-07-09 22:38:48 +01:00
Roberto Fernandez Bautista
dfe7051171
LTspice importer fixes
...
- Correctly find the library paths for new and old LTspice versions
- Use case insensitive comparison (store element names as lower case in the map)
- Better search paths
- Allow user to copy contents of LTspice "lib" folder to the same folder as file being imported
Partially addresses https://gitlab.com/kicad/code/kicad/-/issues/15061
2023-07-09 22:53:23 +02:00
Roberto Fernandez Bautista
6539171459
LTspice importer - remove dead code
2023-07-09 22:51:21 +02:00
Jeff Young
5aed30ac79
Handle RepeatLastItem for TwoClickPlace items.
...
(Note that we've always excluded sheet pins from RepeatLastItem.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15108
2023-07-09 20:33:33 +01:00
Jeff Young
6182ff4834
Handle delete of sheet pins.
...
SCH_COMMIT::Stage() can handle promoting the parent, but then the pin
needs to be removed first. I think it's probably clearer if we just
do the promotion in the delete routine.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15129
2023-07-09 13:40:27 +01:00
Jeff Young
a66360525a
Broaden "Style footprint fields" to cover graphics as well.
...
Also cleans up the layout of the symbol & fp properties dialogs.
Also fixes the background colour of the link textEdit controls on Mac.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8161
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15152
2023-07-09 12:45:55 +01:00
Mike Williams
cb01ac53fa
Schematic: allowing swapping sheet pins on same sheet
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15122
2023-07-08 20:26:26 -04:00
Jeff Young
25445d9fe0
Make sure all items managed by their parent get correct handling in SCH_COMMIT.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15129
2023-07-08 20:40:30 +01:00
Jeff Young
d48e7f159c
Re-install tool view items after clearing the view.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15149
2023-07-08 20:40:30 +01:00
jean-pierre charras
9ee21e4eeb
simulator: do not show a message saying a command directive has changed
...
when there is no old command directive.
2023-07-08 20:30:57 +02:00
Jeff Young
12ed015174
Fix selection highlighting of heirarchical labels and sheet pins.
2023-07-08 18:50:04 +01:00
Jeff Young
5bca002567
Swap non-temp and non-edit flags for SCH_ITEMs.
...
This is required to keep selected and brightened state across undo.
It's also probably required for things like IS_SHOWN_AS_BITMAP and
possibly ENTERED. FWIW, most BOARD_ITEMs do a straight swap, including
the temp and edit flags. But that seems like a risky change....
Also removes SyncView() call from Undo/Redo as that does a MODEL_RELOAD
which clears the selection.
2023-07-08 18:37:47 +01:00
Jeff Young
c8e8b71198
TestDanglingEnds needs to test sheet pins as well.
...
Also fixes a bug where zooming doesn't get a redraw until mouse moves.
Also fixes a couple of bugs where dangling markers on SCH_SHEET_PINs
and SCH_HIERLABELs weren't getting drawn.
Also simplifies drawing algorithm by removing aesthetic offset (which
wasn't implemented when pin is drawn as part of selection VIEW_GROUP).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15129
2023-07-08 12:55:45 +01:00
jean-pierre charras
70ffd971e3
Fix a bug found by Coverity.
2023-07-08 12:51:21 +02:00
Jeff Young
30c2049977
Handle inference of V7 symbol lib DC voltage/current sources.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15127
2023-07-07 16:25:05 +01:00
Jeff Young
534a3efce1
Add a couple of TODOs for SCH_COMMIT.
2023-07-07 15:40:15 +01:00
Jeff Young
922f7128a9
Move item updating and view refresh to SCH_COMMIT::Push().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15132
2023-07-07 15:40:01 +01:00
Jeff Young
bde9c2cbc5
ADDED FFT analyses.
...
CHANGED abandon the unpredictable behaviour of the Simulation Command
dialog. You now separately add simulation tabs (which have invariant
command types once created), and the dialog edits the current tab.
Also a bunch of bug fixes to make multiple simulation plots actually
work.
2023-07-07 12:33:50 +01:00
Jeff Young
d5d2800b03
Sort out terminology issues between vectors and plots.
2023-07-07 12:33:50 +01:00
Jeff Young
443a5dc3bb
Syntax help for SPICE functions.
2023-07-07 12:33:49 +01:00
jean-pierre charras
27072e52f7
Fix a compil and Coverity warnings
2023-07-07 10:28:01 +02:00
Ian McInerney
0fd2efa283
Give unfold bus a default parameter for hotkey invocation
...
Fixes KICAD-2JN
2023-07-06 23:07:24 +01:00
jean-pierre charras
bc8cc826cc
Eeschema, PlotInteractiveLayer(): do not print useless info in a PDF plot.
...
It makes this info more easily readable.
- Remove duplicate properties/fields
- Do not plot empty properties/fields
2023-07-05 11:08:25 +02:00
Jeff Young
e494017b54
Fix merge error.
2023-07-04 18:53:15 +01:00
Fabien Corona
886a7c2c04
ADDED: S-parameters simulation
2023-07-04 16:01:12 +00:00
Jeff Young
d563d66b86
ADDED Fourier analyses of .tran data.
2023-07-04 16:54:38 +01:00
Jeff Young
492ef62053
ADDED support to save contributions from all noise generators.
...
You must first check the checkbox in the Simulation Command dialog,
after which the signals will appear in the User Defined Signals
autocomplete lists.
2023-07-04 11:05:10 +01:00
Alex Shvartzkop
37772ac29e
Altium schematic: import net label justification.
2023-07-04 10:27:46 +03:00
Jeff Young
7d3fa8fb4e
Plotting for noise simulations.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2369
2023-07-03 23:12:28 +01:00
Jeff Young
80340c607c
ADDED noise simulation GUI.
2023-07-03 16:26:20 +01:00
Marek Roszko
b5e420c33c
Fix EDA_TEXT creation that worked due to implicit cast
...
A leftover from the units object rework and I forgot to double back. The DEFAULT_SIZE_TEXT is set inside the constructor now
2023-07-03 11:23:30 -04:00
Ian McInerney
247fda80ef
Give schematic editor's placeImage action a default parameter
2023-07-03 11:38:51 +01:00
jean-pierre charras
c00c0cf581
SCH_PLOTTER: fix an issue after plotting a hierarchy (at least 2 sheets)
...
SCH_EDIT_FRAME::SetCurrentSheet( xxx ) was used to switch to a sheet, but
SCH_EDIT_FRAME::SetCurrentSheet() has side effects to the current VIEW
(clear some data used to show the sheet on screen) and does not fully
restore the "old" screen
SCHEMATIC::SetCurrentSheet( xxx ) is now used to switch to a sheet
2023-07-03 10:33:05 +02:00
Alex Shvartzkop
36901bda62
Eeschema: don't plot hiererchical sheet fill when color is transparent.
2023-07-03 02:15:05 +03:00
Alex Shvartzkop
86458ae582
Eeschema printing: fix bg fill when paper orientation or size differs.
2023-07-03 02:15:05 +03:00
Alex Shvartzkop
b242779f3b
Put background color behind transparent bitmaps in eeschema printing.
...
Most virtual printers don't support alpha blending via AlphaBlend (MSW)
properly, nor masks.
2023-07-03 02:15:05 +03:00
Alex Shvartzkop
55b31030c0
Perf: don't search for niluuid items when moving cursor in eeschema.
...
Reduces CPU usage by 60% in some cases.
2023-07-03 02:15:05 +03:00
jean-pierre charras
f5d7edaa73
PANEL_SYM_EDITING_OPTIONS: Fix a focus event issue (perhaps platform specific)
2023-07-02 19:46:56 +02:00
Jeff Young
ec9b2919ba
Allow user-entered repeat pin spacing, but force to grid multiples.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14207
2023-07-02 17:23:01 +01:00
Jeff Young
03fd9c2086
Fix refresh bug after a symbol reload from the file watcher.
...
Also moves EE_POINT_EDITOR to SCH_COMMIT. (There was another refresh
bug in RollbackSymbolFromUndo() -- whose only caller was the
EE_POINT_EDITOR's old undo code).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14274
2023-07-02 10:37:50 +01:00
Jeff Young
4cbf512461
Support synchronous move in symbol editor.
...
Also removes duplicate-during-move. It's not really compatibile with
a passed-in SCH_COMMIT, and it was never clear it was worth the code.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14274
2023-07-02 10:37:50 +01:00
Jon Evans
632e94ef81
Add a few more schematic properties
2023-07-01 22:24:25 -04:00
Jeff Young
efac777f28
Don't DisplayCurrentSheet() if we're already on it.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14305
2023-07-01 21:57:40 +01:00
jean-pierre charras
f3a0c2b658
netlist_exporter_allegro: fix a compil warning, clearly created by a bug in code.
...
I am not sure the first author wanted to do, but at least the strange
and broken code (clearly due to a too zealous copy/paste) is fixed.
2023-06-30 20:08:13 +02:00
Jeff Young
773e1a1ab6
Actions with a COMMIT must be run synchronously.
...
Note that "immediate" doesn't mean quite the same thing: while it will
enter the tool immediately, it won't necessarily finish the tool during
the call if the tool has an event loop. So for something like Rotate
"immediate" and "synchronous" have the same behaviour, but for something
like Move they do not.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15085
2023-06-30 18:57:37 +01:00
Jon Evans
59495971ee
Properties: fixes to color swatches
2023-06-29 22:53:06 -04:00
Ian McInerney
bb4fb9088f
Gracefully handle no symbols found in change symbols dialog
...
Fixes KICAD-2BJ
2023-06-29 23:21:15 +01:00
Seth Hillbrand
7779a01d48
SIM_VALUE stores significants in 64-bit
...
stol isn't neccesarily 64-bit though, so we use stoll and catch the
overflow if we have bad input data
Fixes KICAD-2EF
2023-06-29 09:50:27 -07:00
jean-pierre charras
3ef757e3b9
EEschema: hide the splash screen before reading a file, to avoid obfuscate
...
a info dialog, if any.
Fixes #15076
https://gitlab.com/kicad/code/kicad/-/issues/15076
2023-06-29 12:34:04 +02:00
Jon Evans
3487124a4a
Properties: Improve color picker UX
2023-06-28 23:54:27 -04:00
Jon Evans
200316d869
Remove duplicate fields block from netlist exporter
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15055
2023-06-28 20:38:10 -04:00
Ian McInerney
c3674e6858
Fix incorrect parameter passing in symbol editor drawing
...
The text box used a different enum than the shapes, so this leads to a
possibility of clashing. The new action framework flagged this problem,
so modify the tool to handle the shape types properly.
Fixes KICAD-2CJ
2023-06-29 00:17:12 +01:00
Youbao
4cb993d872
ADDED: Cadence Allegro PCB Designer netlist exporter
2023-06-28 22:47:30 +00:00
Roberto Fernandez Bautista
6d3f512e15
Ensure symbols in subsheets are added to multi-unit map before re-annotating
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14918
2023-06-28 23:30:10 +02:00
Fabien Corona
8abb701727
IBIS: model type should not be case sensitive
...
Fixes #15068
2023-06-28 22:49:41 +02:00
Jeff Young
2278f5dbca
Don't try to be smart about enabling the Clear Annotation button.
...
(At a minimum it would need to also handle when the scope changes, but
it's not clear we're adding anything by enabling/disabling it to start
with.)
2023-06-28 14:56:50 +01:00
Ian McInerney
2a940a5f70
Add COMMIT to TOOL_EVENTs instead of passing as a parameter
2023-06-27 00:57:59 +01:00
Ian McInerney
2fb6f19a84
Separate immediate and delayed action dispatch
...
Using a boolean argument just leads to a lot of trailing booleans in the
function calls and is not user friendly. Instead, introduce PostAction()
to send an action that runs after the coroutine (equivalent to passing
false or the default argument), and leave RunAction as the immediate
execution function.
2023-06-27 00:57:59 +01:00
Jeff Young
aa8dbc03a2
Error reporting for missing ltspice symbol (.asy) files.
2023-06-26 21:59:57 +01:00
Jeff Young
29d2265c01
Clean up dead code.
2023-06-26 20:51:58 +01:00
Jeff Young
4f52c69724
Better path handling for importing LTspice files.
2023-06-26 20:51:16 +01:00
Jeff Young
ed6487da1e
Disallow sheet pins from changing sides when edited by point editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15057
2023-06-25 19:55:13 +01:00
Jeff Young
40fcfe891d
Move pinnumber above pins if pinnames aren't shown.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14998
2023-06-25 16:01:35 +01:00
Jeff Young
3a301e50ae
Clear all edit flags when pushing SCH_COMMIT.
2023-06-25 16:01:35 +01:00
Jeff Young
e7ee6e1f26
Modified flags are handled by SCH_COMMIT.
2023-06-25 16:01:35 +01:00
Jeff Young
9854acd9e6
Don't set IS_CHANGED on symbol when modifying LIB_PINs for painting.
2023-06-25 16:01:35 +01:00
Ian McInerney
118b815824
Get proper LINE_MODE type from tool event.
...
Properly fix https://gitlab.com/kicad/code/kicad/-/issues/15053
2023-06-25 13:43:32 +01:00
Ian McInerney
b00361d136
Revert "Don't use TOOL_EVENT parameters for line modes."
...
This reverts commit 84a63f7daa
.
2023-06-25 13:37:58 +01:00
Jeff Young
84a63f7daa
Don't use TOOL_EVENT parameters for line modes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15053
2023-06-25 11:10:07 +01:00
Jeff Young
493828cc6b
Eradicate a bunch of calls to dyn_cast.
...
Also deletes PAD::GetParent() which fails to look for parent footprint
through groups.
2023-06-25 11:10:07 +01:00
Jeff Young
300a60e88e
Eradicate a bunch of calls to dyn_cast.
2023-06-25 11:10:05 +01:00
Jon Evans
d4b7144448
Properties: expose symbol attributes
...
Flip polarity of exclude-from-BOM and -board for symbols
to match that of footprints and match the GUI display.
2023-06-24 22:03:06 -04:00
Jon Evans
f0d8edae1e
Move sch properties panel to using default AUI pane info struct
2023-06-24 20:09:07 -04:00
Jon Evans
bf2e9f8261
Properties for SCH_LINE
...
Also rename an incongruous setter
2023-06-24 20:08:42 -04:00
Jeff Young
1c1849ec1a
Clear IS_MOVING (as well as IS_NEW) in SCH_COMMIT::Push().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15051
2023-06-24 17:15:43 +01:00
jean-pierre charras
1094cc5331
Fix issues related to the splash screen when no config file found:
...
- do not show it before the application is actually started.
- hide the splash screen before displaying dialogs.
Fixes #15047
https://gitlab.com/kicad/code/kicad/-/issues/15047
2023-06-24 18:09:43 +02:00
Alex Shvartzkop
bce643feae
Don't draw LIB_PIN and SCH_LINE on OP layers when OP is empty.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15041
2023-06-24 16:01:58 +03:00
Jeff Young
4764606a9d
Sheet pins are owned by their parents, so the parent must go in the SCH_COMMIT.
...
Also collapses a bunch of duplicated code.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15044
2023-06-24 12:35:48 +01:00
jean-pierre charras
830b67ead7
Eeschema: SaveSettings() : save visibility of Properties Panel in config.
2023-06-24 08:44:34 +02:00
Jeff Young
a901247cbd
Rebuilding connectivity must be done after changes are committed.
...
It also needs to be done after undo and redo.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15028
2023-06-23 22:10:17 +01:00
Jeff Young
237cc7eee1
Move TestDanglingEnds() to SCH_COMMIT.
...
Also fixes a bug where Convert Symbol wasn't undoable.
Also cleans up some SetModified() call no longer needed with SCH_COMMIT.
Also fixes bug where revert of a modification didn't update the screen's
RTree.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15030
2023-06-23 19:59:46 +01:00
jean-pierre charras
db8201717d
SCH_FIELD::GetCanonicalName() : the name must be the not translated name,
...
previously, it returned the translated string, by definition not the
canonical name
2023-06-23 17:48:19 +02:00
Jeff Young
aa6d9ad69a
Clear IS_NEW flags on commit.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15037
2023-06-23 15:30:09 +01:00
Jeff Young
1c13f5a0db
Fix selection shadown drawing for global labels.
...
(The border should get shadowed, and the shape should get filled if
m_Selection.fill_shapes is set.)
2023-06-23 15:30:09 +01:00
Jon Evans
7804c2177c
Do not force focus on dataview in RC dialogs
...
On GTK, this causes the first item to be selected, firing the
selection handler and causing unwanted side effects.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11925
2023-06-23 08:09:53 -04:00
jean-pierre charras
1698fb6608
Refinement of commit 355575e4
(drawing shadow texts of RULER_ITEM and pin names)
...
Also handle non Kicad fonts (that do not use shadow texts)
Fixes #15019
https://gitlab.com/kicad/code/kicad/-/issues/15019
2023-06-23 10:32:23 +02:00
Jon Evans
3a0f8214fa
ADDED: Properties panel for schematic editor
...
Initial infrastructure work; follow-ons will add more
properties for schematic items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6351
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14105
2023-06-22 22:32:24 -04:00
Jon Evans
39a5929f33
Database libraries performance improvements
...
Rework caching system and optimize queries
2023-06-22 18:49:37 -04:00
Erik Agsjö
bc0da92703
Fixes after merge request feedback
2023-06-22 16:20:05 +00:00
Erik Agsjö
2651d7ff5b
Fixes crash in wire property dialog
...
Fixes crash when changes are applied with the style combo in the
indeterminate state.
2023-06-22 16:20:05 +00:00
Jeff Young
f892194be4
Don't reset page unless we have to.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15033
2023-06-22 16:56:52 +01:00
jean-pierre charras
355575e477
Fix some (minor) issues when drawing shadow texts of RULER_ITEM and pin names.
...
Fixes #15019
https://gitlab.com/kicad/code/kicad/-/issues/15019
2023-06-22 13:28:43 +02:00
Jeff Young
7138e8a62e
Don't double-create pins when migrating old models.
2023-06-21 16:34:35 +01:00
Mike Williams
043ed0b148
Schematic: fix up more field ID parsing to fix QA
2023-06-21 10:51:28 -04:00
Ian McInerney
19f5c16708
Ensure const-ness matches across draw wire event parameters
2023-06-21 14:06:25 +01:00
Ian McInerney
a2bd7192c0
Add default empty symbol to place symbols/power actions
2023-06-21 13:42:21 +01:00
Mike Williams
5b4ddaba89
Schematic: fix field parsing when some mandatory fields are missing
2023-06-20 22:05:03 -04:00
Ian McInerney
480223f67c
More RunAction specialization
2023-06-20 21:52:50 +01:00
Ian McInerney
b04e54dbea
Switch TOOL_EVENT and TOOL_ACTION to have a std::any parameter
...
Using std::any from C++17 allows for proper type handling in the
parameter field, removing the need for casting to void* and then casting
the void* to the desired type.
2023-06-20 21:52:50 +01:00
Mike Williams
1d26b454f4
SCH -> PCB Fields: bump file versions
2023-06-20 18:34:52 +00:00
Mike Williams
a24c55affe
PCB Fields: fix up python, API
...
Remove SetFields from both symbol and footprint, it doesn't handle
mandatory fields and is unlikely to ever be safe.
2023-06-20 18:34:52 +00:00
Mike Williams
85f889bc19
Fields: Description now mandatory
...
Propagate from symbols to footprints, footprints keep a library
description, too. (GetLibDescription())
2023-06-20 18:34:52 +00:00
Mike Williams
7d84fa2a9d
Validators: drop unused is m_isLibEditor
2023-06-20 18:34:52 +00:00
Mike Williams
ddafa2e75d
Common: move SCH_FIELD_VALIDATORS to FIELD_VALIDATORS
...
Fields are now common across PCB/SCH
2023-06-20 18:34:52 +00:00
Mike Williams
941d9c957d
Netlist: export fields in its own section
2023-06-20 18:34:52 +00:00
jean-pierre charras
a9fff82664
spice_library_parser: catch an exception thrown when a spice model cannot be built.
...
Fixes #15012
https://gitlab.com/kicad/code/kicad/-/issues/15012
2023-06-20 10:26:42 +02:00
Jeff Young
b1cdcca9e6
Use hypertext link for Edit Ingored Tests in both ERC and DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15010
2023-06-19 23:53:42 +01:00
Jeff Young
5b12b5d031
Cleanup.
2023-06-19 23:03:01 +01:00
Jeff Young
0b58fdb910
Use KIUI to specify the simulation plot axis fonts.
...
Also fixes a bug in generating the x-axis for the first trace.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14997
2023-06-19 22:53:08 +01:00
Jeff Young
30336b2fe3
Unify go-back-one-step processing for drawing tools (and router).
...
Also warps mouse on all go-back-one-step operations for better feedback.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9985
2023-06-19 17:14:32 +01:00
Jeff Young
e9046076a6
Fine-tune SCH_COMMIT handling of child objects.
...
While a SCH_SHEET does indeed have a SCH_SHEET parent, it's not one of
the children that gets added as a CHT_MODIFY of its parent.
Also fixes a bug where the newly drawn sheet gets removed from the
preview before running the dialog.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14976
2023-06-18 16:52:11 +01:00
Jeff Young
9199d7a781
Update simulation results as the sim runs.
...
Also adds a time axis which grows by 2X at a time rather than to the
size of the current data.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11255
2023-06-18 16:52:11 +01:00
jean-pierre charras
9447c3d455
symbol editor: fix issue after loading a symbol from a library.
...
Selected items become invisible.
(similar to the issue fixed by commit b622e3a3f7
)
Fixes #14151
https://gitlab.com/kicad/code/kicad/issues/14151
2023-06-18 17:17:16 +02:00
Jon Evans
fc69939190
ADDED: GUI feedback when grid setting is changed by hotkey
...
Can be extended to other cyclical hotkey settings
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14756
2023-06-17 23:18:50 -04:00
Jeff Young
b1d5da3da3
Allow ngspice to run in the background.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14085
2023-06-17 23:54:33 +01:00
Jeff Young
e3eb0abc5f
Recompute intersheet refs while printing.
...
Also fixes a bug where the schematic offset wasn't being added to
intersheet refs when printing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14978
2023-06-17 18:12:13 +01:00
Mike Williams
f9d4b75726
Symbol Fields Table: performance optimizations
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14972
2023-06-17 12:56:00 -04:00
Jeff Young
cf4f0723f8
Select first unassigned symbol when running CvPCB.
...
Also cleans up some dead code, and makes more use of sharing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9938
2023-06-17 12:44:59 +01:00
Jeff Young
ef6866757e
Treat undo as backspace and/or escape when drawing. Ignore redo.
...
Undo == backspace when drawing a polygon or chained lines. Otherwise
it's an escape.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14961
2023-06-16 22:08:21 +01:00
Alex Shvartzkop
d3be62f644
Adapt panels to PAGED_DIALOG sizing algorithm.
...
Also some cosmetic fixes (GTK).
2023-06-16 19:12:37 +03:00
Alex Shvartzkop
caf0bb6baa
Cosmetic fixes in schematic formatting panel (GTK)
2023-06-16 19:12:37 +03:00
Alex Shvartzkop
f5da58e17d
PAGED_DIALOG: allow setting initial size in ctor.
2023-06-16 18:53:00 +03:00
Jeff Young
b44c547aa6
Don't let selection VIEW_GROUP get lost from VIEW.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14969
2023-06-16 16:03:37 +01:00
Jeff Young
8259091ca1
Fix typo in new SCH_COMMIT architecture for shape drawing.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14976
2023-06-16 15:50:51 +01:00
Jeff Young
75e78f9088
Move bitmap2cmp and pcb_calculator to tool framework.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1939
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7561
2023-06-16 15:37:58 +01:00
Ian McInerney
4761815f36
Fix reversed arguments in ltspice importer
2023-06-15 23:01:39 +01:00
Ian McInerney
b73cc7db4a
Fix a few accidental copies in loop iterators
2023-06-15 22:57:05 +01:00
Jeff Young
150e2b8a19
Separate BITMAP2CMP_PANEL from BITMAP2CMP_FRAME.
...
This is primarily to allow wxFormBuilder to create the panel without
the dangerous hack of passing a wxWindow ID into KIWAY_PLAYER's ctor.
2023-06-15 17:39:10 +01:00
Jeff Young
abc0c19d64
Separate SIMULATOR_PANEL from SIMULATOR_FRAME.
...
This is primarily to allow wxFormBuilder to create the panel without
the dangerous hack of passing a wxWindow ID into KIWAY_PLAYER's ctor.
2023-06-15 17:39:10 +01:00
Jeff Young
5c4ca9f092
Renaming to support potential future usage of SIMULATOR_PANEL as a panel within SIMULATOR_FRAME.
2023-06-15 17:39:10 +01:00
Wayne Stambaugh
fc1d540036
Fix a Coverity issue in the net navigator code.
2023-06-15 08:00:08 -04:00
Ian McInerney
1f5719ef3a
Pass proper parent to symbol viewer frame when changing symbols
...
Fixes sentry KICAD-1Z9
Fixes sentry KICAD-22J
2023-06-14 21:25:06 +01:00
Wayne Stambaugh
4ccbbde54a
Net navigator bug fixes and improvements.
...
Note: This changes the net highlight tool behavior. When clicking on an
already highlighted net, the net highlighting is no longer toggled
off. This prevents the net navigator panel from being cleared.
2023-06-14 09:57:55 -04:00
Jeff Young
46564055f4
More protection around an exceedingly dangerous hack.
...
The API is needed for wxFormBuilder, and I couldn't figure out any
way around it, but we can at least reduce the risk of someone calling
it accidentally (again).
2023-06-14 12:52:49 +01:00
Kuba Sunderland-Ober
e852d04043
Ensure the bitmap exported to the clipboard is valid.
...
Fixes #14808
https://gitlab.com/kicad/code/kicad/-/issues/14808
2023-06-13 20:47:06 +00:00
Wayne Stambaugh
5a7f95e8da
Allow for library symbols to derived from derived symbols.
...
This change allows for infinite inheritance depth so internally there is
no limit to deriving library symbols from other derived symbols. Please
note that the Flatten() method now recurses until a symbol with no parent
is found. The user interface is not hooked up at this time.
2023-06-13 15:52:42 -04:00
Jeff Young
20d2568f0c
Move where we fire EDA_EVT_SCHEMATIC_CHANGED again.
...
The location in HARD_REDRAW got called everytime we change schematic
pages, which is not what we want.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14945
2023-06-13 16:36:05 +01:00
Jeff Young
4f39cb0789
Fix SCH_COMMIT handling in TwoClickPlace.
2023-06-13 13:21:11 +01:00
Marek Roszko
a87fada9e5
Minor tweaks to support wx3.3
2023-06-12 20:52:47 -04:00
Ian McInerney
d96580c651
Properly handle improper symbols when pasting in symbol editor
...
Before, an improper symbol (one without the starting toekn) weren't
detected and reported to the user properly and would instead assert. Now
properly detect these and pass the error up the stack to the tool.
(Sentry issue KICAD-21J).
2023-06-12 23:14:56 +01:00
Jeff Young
28075e6efe
Don't crash on empty selection in search list.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14931
2023-06-12 23:07:27 +01:00
Jeff Young
782c73300b
Move drawing sheet datastructures to EDA_IU_SCALE.
...
Or mostly, at least. Plotters still define their own mils-to-iu scale.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14934
2023-06-12 22:34:25 +01:00
Seth Hillbrand
62f24aca1e
Fix Connectivity Asserts in new COMMIT structure
...
The connection graph should only be updated within the commit structure
because this is the only time the connectivity should be changed. We
want any connectivity changes to be included in the commit as well, so
this should be stored prior to the undo/redo list mods
2023-06-12 13:35:06 -07:00
Jeff Young
286716a1ff
Retire AddItemToCommitAndScreen()
...
It duplicates a bunch of stuff in SCH_COMMIT and isn't really
compatible with it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14933
2023-06-12 19:34:23 +01:00
jean-pierre charras
a29f261d31
dialog_sim_model: ensure the Model panel is always correctly built.
...
Fixes #14904
https://gitlab.com/kicad/code/kicad/-/issues/14904
2023-06-12 16:41:21 +02:00
Jeff Young
451b9e20a1
Tighten up layer handling for LIB_SYMBOL.
...
We have to draw the parent symbol on the union of all layers that
its children might reside on, but we only want to draw each child
on its layers.
And we need to make sure LAYER_PRIVATE_NOTES gets into the layers
order list.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13943
2023-06-12 15:38:56 +01:00
Jeff Young
a3f62cc8de
Don't presume a sheet-path while reading files.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14920
2023-06-12 13:42:15 +01:00
Jeff Young
b7f0aae006
Nullptr safety for UI Conditions.
...
We don't really control when these are called, so best not to assume
we've finished initialization of the frame/screen/document/whatever.
Possible fix for KICAD-KY.
2023-06-12 12:38:50 +01:00
Jeff Young
6502787c7a
Formatting.
...
It's annoying to keep searching for "LIB_FIELD*" and come up empty....
2023-06-12 10:48:39 +01:00
CraftedNightmare
aa667bea0f
eeschema: Fix Search pane not remembering docking sizes and positions
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14120 for eeschema
Fixes that Show Search Panel Checkbox can get out of sync when restarting
eeschema while the search pane is active
2023-06-11 20:23:24 +00:00
Jeff Young
96073402ce
Don't accidentally add NULL ptrs to the LibSymbols cache.
...
Operator[] will add a blank element if it isn't found in the map.
Probably Sentry KICAD-23Y.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14927
2023-06-11 15:50:24 +01:00
Roberto Fernandez Bautista
3d1b96d6ca
Cleanup jobs handlers (+Fix build)
2023-06-11 00:12:53 +02:00
Jeff Young
61493b8489
Return all results with an empty search pane filter.
...
Also moves the EDA_EVT_SCHEMATIC_CHANGED event so it fires after the
schematic has been loaded.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14871
2023-06-10 23:05:57 +01:00
Roberto Fernandez Bautista
3f758711fd
Use external REPORTER for EESCHEMA_JOBS_HANDLER / PCB_JOBS_HANDLER
2023-06-10 23:35:32 +02:00
Jeff Young
180c820678
More changes for SCH_COMMIT independence from frames.
...
Also fixes some bugs in Symbol Editor SCH_COMMIT::Revert().
2023-06-10 20:53:44 +01:00
Wayne Stambaugh
a46657d802
Remove net navigator debugging code.
2023-06-10 14:04:02 -04:00
Jeff Young
5aa51bc967
Allow SCH_COMMIT to operate without a frame.
...
We'll want this at some point (presumably) for plugins.
2023-06-10 18:35:59 +01:00
Jeff Young
f66b9f75a3
Allow EDA_COMBINED_MATCHER use in KiCad find architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12532
2023-06-10 14:50:06 +01:00
Jeff Young
53be16f409
Stop confusing Covertiy.
2023-06-10 13:36:17 +01:00
Jeff Young
8f1b9119bf
Upgrade some symbol editor stuff to SCHEMATIC_COMMIT.
...
Also renames SCHEMATIC_COMMIT to SCH_COMMIT since it's not schematic-specifc.
2023-06-09 22:41:47 +01:00
Jeff Young
e698156975
Upgrade many editing actions to SCHEMATIC_COMMIT.
2023-06-09 22:41:47 +01:00
Jeff Young
73b653c276
Upgrade more dialogs to SCHEMATIC_COMMIT.
2023-06-09 22:41:47 +01:00
Jeff Young
dcfd426333
Upgrade some dialogs to SCHEMATIC_COMMIT.
2023-06-09 22:41:47 +01:00
Wayne Stambaugh
e9dc00cda3
Minor schematic net navigator improvements.
...
- Expand tree and highlight object selected with net highlight tool.
- Expand tree and highlight object that are currently highlighted with the
selection tool.
- Use more descriptive object text rather than menu entry text for tree
strings.
- Rebuild tree on unit changes.
2023-06-09 14:34:54 -04:00
jean-pierre charras
639da0eb5a
Fix a wxWidgets alert when deleting the last entry in a lib table.
2023-06-09 08:09:22 +02:00
Jeff Young
90c14ecdf7
Upgrade a couple of schematic actions to SCHEMATIC_COMMIT.
2023-06-07 15:30:56 +01:00
Jeff Young
d5b5a3eaf4
Add action info to Undo/Redo menus.
...
Note that this only works where a BOARD_COMMIT or SCHEMATIC_COMMIT is used.
(BOARD_COMMIT is used almost universally in PCBNew, but SCHEMATIC_COMMIT
has very little adoption in EEschema so far.)
2023-06-07 14:37:34 +01:00
Jeff Young
30cbfc794f
Cross-probing from Pin Table to Symbol Editor canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8301
2023-06-07 14:37:34 +01:00
Seth Hillbrand
c33d1ab244
Don't dirty the item connectivity prematurely
...
Item connectivity changes once the elements are commited, not during the
process of moving.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14884
2023-06-05 09:12:20 -07:00
Mike Williams
6e2bea8128
Symbol Fields Table: fix grid tricks show/hide column corruption
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14874
2023-06-05 08:27:26 -04:00
Mike Williams
fb7925806c
Symbol Fields: allow hiding reference column
2023-06-05 08:27:26 -04:00
Alex
26c25c5475
Move bitmap setup to ctor in eeschema annotation options.
2023-06-05 15:03:03 +03:00
Jeff Young
f3d3ade1dc
Increased mutex safety.
...
Don't even query the size() without having at least a shared_lock.
*May* prevent KICAD-4S, but seems unlikely.
2023-06-05 11:01:10 +01:00
Jeff Young
1528f4700c
Treat canvas item as current when tree view contains no selection.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12702
2023-06-04 20:52:12 +01:00
Mike Williams
039f23eba8
Symbol Fields Table: check against data model col for grouping
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14870
2023-06-04 14:42:55 -04:00
Mike Williams
bb6555ff36
Symbol Fields Table: remember export filename
...
https://gitlab.com/kicad/code/kicad/-/issues/14872
2023-06-04 13:45:07 -04:00
jean-pierre charras
9e6c56525a
EEschema, DIALOG_SYMBOL_FIELDS_TABLE: minor cosmetic fix
...
Fixes #14868
https://gitlab.com/kicad/code/kicad/-/issues/14868
2023-06-04 17:24:07 +02:00
jean-pierre charras
92018f0066
Fix minor compil warnings
2023-06-04 16:24:28 +02:00
Jeff Young
95d104ab65
Implement UI condition for search panel visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14826
2023-06-04 15:13:39 +01:00
Jeff Young
2ffeca9f36
Formatting (no functional changes)
2023-06-04 15:13:39 +01:00
Jeff Young
5875f89531
Centralize text size clamping.
...
Also introduces alg::clamp to improve readability of
std::max( min, std::max( value, max ) )
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14876
2023-06-03 20:29:51 +01:00
Wayne Stambaugh
bdee545841
Coverity warning fixes.
2023-06-03 07:28:17 -04:00
Seth Hillbrand
5756a7a0af
Prevent makeup events from contaminating the system
2023-06-02 16:04:08 -07:00
Seth Hillbrand
4bc0822733
Connectivity: Correct alias-based bus resolution
...
Aliases in bus resolution were being resolved without a path, making
them effectively global nets. This applies the corrected path to the
bus members and adds a QA to catch this error
2023-06-02 14:25:51 -07:00
Mike Williams
04532a61f4
Symbol Fields Dialog: don't change sheets on load
...
Late bind the range selection event so we don't lose our selection as a
result of loading data into the table, then jumping to the selected
value.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14186
2023-06-02 08:22:10 -04:00
Mike Williams
0eb45a7f27
Schematic: symbol fields dialog: restore size, not min size
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14861
2023-06-01 18:02:57 -04:00
Wayne Stambaugh
d854e2bfe8
Schematic net navigator improvements.
...
Arrange connectivity items by sheet. Complex nets which span many
sheets make finding objects difficult. It also provides a higher
level of sheet view granularity.
2023-06-01 12:49:51 -04:00
Jeff Young
2300b0d2a3
Don't dim SCH_FIELDs when selecting them.
...
(They were only getting drawn on top of the selection shadow when
drawn by their parent symbol because LIB_FIELD was correctly
setting the view layers but SCH_FIELD was not.)
2023-06-01 15:07:29 +01:00
Marek Roszko
c2d56eefb9
Fix blank symbol svg export file names
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14857
2023-05-31 20:56:20 -04:00
Seth Hillbrand
14f6e32c74
ADDED: Change watcher for libraries
...
When editing or viewing library symbols, the files are watched for
underlying changes. If any occur, the user is either prompted to reload
(if reloading would overwrite their current edits) or the file is
silently updated to the current version on disk.
This also sets a custom assertion handler to avoid unneeded crashes when
recieving invalid SAMBA packets and turns off assertions entirely when
running in release (non-debug) mode
2023-05-31 13:46:00 -07:00
Seth Hillbrand
5370fdc718
Fix override lock behavior
...
We don't need to lock in import because we are creating a new file. We
should, however, show the locking user/machine when opening in schematic
editor and take over the lock if they want to proceed.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9347
2023-05-31 13:43:58 -07:00
Wayne Stambaugh
f950354f99
Fix connectivity assertion in schematic editor.
...
https://gitlab.com/kicad/code/kicad/-/issues/14835
2023-05-31 13:29:47 -04:00
Jeff Young
cfb45be71e
Improved tooltips for all-unit-interchangeable and De Morgan.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14583
2023-05-31 17:54:19 +01:00
Jeff Young
d3edad3c92
Formatting.
2023-05-31 17:26:54 +01:00
Jeff Young
421d6b2ef8
Retire LIB_ID_VALIDATOR as it prevents usage of text variables.
...
(We perform more complete checks in ERC anyway.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14764
2023-05-31 17:26:54 +01:00
Jeff Young
47bba3cbeb
Correct logic errors in pin bounding box calculation.
...
The name and number are both centred, and either one can be long
enough to be the determining factor for either side of the bounding
box.
2023-05-31 12:51:56 +01:00
Jeff Young
d827bb8a1f
Leave back/forward/up nav buttons enabled so the action doesn't change.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14783
2023-05-31 11:13:35 +01:00
jean-pierre charras
6b845b9054
Fix compil warnings and a wxWidgets alert.
2023-05-30 09:00:46 +02:00
Mike Williams
7f250870fe
schematic: fix crash in search pane when hit list is empty
...
std::all_of also returns true for an empty set
2023-05-29 09:50:09 -04:00
Jeff Young
a4f16423c8
Push reference and value special cases down into LIB_FIELD::compare().
...
Use COMPARE_FLAGS::EQUALITY and COMPARE_FLAGS::ERC when doing
library diffs.
Also fixes a few more cases where we weren't checking for -1 when
doing a fieldID < MANDATORY_FIELDS.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14830
2023-05-29 12:40:20 +01:00
Roberto Fernandez Bautista
8493cc4c89
CADSTAR SCH LIB: Add plugin options + improve symbol caching
2023-05-28 23:56:42 +02:00
Roberto Fernandez Bautista
688a61df63
Add options editor to symbol library table + cleanup unused options
2023-05-28 23:56:42 +02:00
Roberto Fernandez Bautista
a119bd604d
Refactor: Move DIALOG_PLUGIN_OPTIONS to common and use enum for event ID
2023-05-28 23:56:41 +02:00
Jeff Young
d526362d31
No sheet path has to be interpreted as the current sheet.
...
There's currently waaaay too much stuff that depends on it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14834
2023-05-28 20:46:50 +01:00
Jeff Young
8820df2187
Fix missing "else".
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14831
2023-05-28 19:49:19 +01:00
Jeff Young
b8986709bf
Every time I search for SCH_TEXT* it doesn't work....
2023-05-27 21:25:36 +01:00
Jeff Young
81d7428fd2
Don't call OnPageSettingsChanges on Undo/Redo.
...
It's incredibly expensive (multiple seconds on a document with
lots of text in an outline font).
2023-05-27 20:35:05 +01:00
Jeff Young
f35a88ce0b
Cache LIB_PIN text extents for performance.
...
Also fixes a bug where we didn't triangulate at all when the char
count didn't warrant the likely overhead of spinning up a
thread_pool.
And fix another bug where EDA_TEXT::GetRenderCache() wasn't using
the given font.
Also reverts using the cache for drawing-sheet text. The text
items are created from scratch from the data items each time
they're drawn, so there's never an existing cache to make use of.
Instead, we now check that the item is in the view, using a very
approximate bounding box generator (because even generating a
real bounding box shows up large in profiles).
And, lastly, fixes a bug where EndPos was never considered in
DS_DATA_ITEM::IsInsidePage().
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14822
2023-05-27 16:32:11 +01:00
jean-pierre charras
f2f014a27c
Symbol editor: ensure a new derived symbol has the correct DeMorgan option displayed.
...
Derived symbols use the same graphics as their parent, so ensure the parent is
used to enable/disable the DeMorgan option and tool in toolbar
Fixes #13739
https://gitlab.com/kicad/code/kicad/-/issues/13739
2023-05-27 10:13:43 +02:00
Jeff Young
4ed267394a
Outline font performance improvements.
...
1) Don't fracture font glyphs when generating them; we're going
to fracture during triangulation anyway.
2) Don't check for self-intersection when deciding to fracture.
It costs nearly as much as the fracture does.
3) Cache drawing sheet text.
4) Use the current font when checking for cache validity.
5) Parallelize glyph triangulation.
6) Don't invalidate bounding box caches when offset by {0,0}
7) Use the glyph cache when generating text effective shape.
8) Short-circuit NormalizeJustification() if its center/center.
9) Don't triangulate for GuessSelectionCandidates()
10) Avoid sqrt whenever possible.
11) Pre-allocate bezier and SHAPE_LINE_CHAIN buffers.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14303
2023-05-27 01:35:40 +01:00
Jeff Young
6e127829f8
Cleanup formating and includes.
2023-05-26 18:44:33 +01:00
jean-pierre charras
68464a1993
Simulator: add missing ngspice models.
...
Fixes #14813
https://gitlab.com/kicad/code/kicad/-/issues/14813
2023-05-26 14:46:51 +02:00
Jeff Young
5114d3b8c3
Don't use GetValueFieldText from within text var resolution.
...
(It resets the recursion checker.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14815
2023-05-25 14:34:20 +01:00
Steve Bollinger
28b37ad020
Someone accidentally exchanged the x and y coordinates when flipping
...
components horizontally and vertically in
SCH_DRAWING_TOOLS::SingleClickPlace()
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14725
2023-05-25 12:11:48 +00:00
Jeff Young
1518ddde74
Push much of text var autocomplete down into SCINTILLA_TRICKS.
...
Shared code == fewer bugs. Well, in theory anyway....
2023-05-25 10:24:50 +01:00
Jeff Young
14f004d2a5
Hook up text variable auto-complete for PCBNew.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14777
2023-05-25 10:24:50 +01:00
Jeff Young
5a9ed66cfd
Go back to using QuasiModal for TextBox Properties.
...
Also removes auto-closing of blocking dialogs when inserting
symbols from the Symbol Editor or Chooser, preventing the bug
that QuasiModel was removed for earlier.
Also fixes a non-initialized parent pointer when the TextBox
Properties dialog was called from DrawShape().
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14777
2023-05-25 10:24:50 +01:00
Seth Hillbrand
48ecd742eb
Maintain file permissions when renaming
...
Temporary and autosave files do not neccessarily have the correct
permissions set to replace existing project files. This updates the
permissions to match the existing values where possible
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13574
2023-05-24 17:09:38 -07:00
Seth Hillbrand
122be418bb
Upgrade file locking
...
wxSingleInstanceChecker is meant for running programs, not file locking.
This implements an RAII class for file locking that stores the lock
files next to the file being locked, allowing it to be easily found and
removed. Also includes the ability to override the lock, with
information about the original owner
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14734
2023-05-24 13:51:54 -07:00
jean-pierre charras
03e846d8ea
Eeschema: fix block mirroring of fields attached to labels (all types)
...
Fix incorrect orientation of the graphic shape of SCH_DIRECTIVE_LABEL items
after mirroring the item.
Similar to commit 898d88cc
, but for block mirroring.
Fixes #14758
https://gitlab.com/kicad/code/kicad/-/issues/14758
2023-05-23 09:42:24 +02:00
Jeff Young
03486443c7
Fix more SPICE case-insensitivity bugs.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14793
2023-05-22 11:46:28 +01:00
Mark Visser
0d235ac64b
fix bug whereby spice params with capital letters no longer cause an error and data loss
...
Spice parameters were converted to lower-case before comparison. This is incorrect, as it
is legal and common for spice parameters to contain capital letters (e.g. potentiometers
typically use Rt and SET as their parameters).
Spice parameters are not case sensitive, so the correct behaviour is to instead do a
case-insensitive comparison on the parameter name.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14793
2023-05-21 17:50:35 -04:00
jean-pierre charras
c08f482ed4
Eeschema, panel color settings: minor fix: ensure color swatches are show/hidden
...
according to the option Override Colors state.
2023-05-21 14:16:11 +02:00
Jeff Young
502da2d03c
Performance improvements.
2023-05-21 11:23:56 +01:00
Jeff Young
d4c9d9d60a
Fix issue with colours in the new lazy-loaded preference panels.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14784
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14782
2023-05-21 10:56:21 +01:00
Jon Evans
c1d7fcf587
Remove very small grid sizes from schematic editor
...
See https://gitlab.com/kicad/code/kicad/-/issues/14756
2023-05-20 21:36:09 -04:00
Marek Roszko
aa230b4e08
Breakup sim_model_ngspice_data.cpp into multiple files to avoid unreasonable compiler link times
2023-05-20 19:58:46 -04:00
Jeff Young
102d61ed39
Terminology cleanup.
2023-05-20 21:04:39 +01:00
Jeff Young
58f4943597
ADDED voltage- & current-controlled voltage & current sources
...
Added GUI support for ngspice VCVS, VCCS, CCVS and CCCS.
2023-05-20 21:04:39 +01:00
Wayne Stambaugh
24b04795fd
Add net navigator panel to schematic editor.
...
[ADDED]: A panel to the schematic editor that allows quick access to all
of the items connected to the currently highlighted net.
This is an initial swag at implementing a full net navigator feature. For
now it only shows the currently highlighted net nodes. The incremental
net list advanced setting must be enabled in order to use this feature due
to performance reasons. There are still some issues with saving the panel
position which will be addressed in the future.
Initial code for serializing wxAuiPaneInfo settings to and from JSON have
be implemented.
2023-05-20 13:48:03 -04:00
Marek Roszko
ded099c07d
Unreachable code warning
2023-05-20 08:08:22 -04:00
Jeff Young
8b1fd62d35
Make pad & via teardrops 1st-class citizens (props of the pad/via)
...
Change teardrop generation to rely more heavily on BOARD_CONNECTIVITY
for improved performance.
Add updating of teardrops on BOARD_COMMIT::Push().
Also converts m_CopperItemRTreeCache to std::shared_ptr.
We don't copy it around anyway, and having to create a new set
of std::unique_ptr's for each operation is likely to be more
expensive than std::shared_ptr's overhead.
2023-05-19 18:02:03 +01:00
Marek Roszko
7774b75172
Another set of C5266 warning fixes
2023-05-18 22:46:57 -04:00
Marek Roszko
573b66d243
Fix a bunch of C5266 warnings (pointless const on bool/int returns)
...
warning C5266: 'const' qualifier on return type has no effect
Microsoft doesn't even document C5266
2023-05-18 21:35:06 -04:00
jean-pierre charras
898d88cc11
Eeschema, directive labels: fix some issues:
...
- honor mirroring of fields attached to labels (all types)
- fix incorrect orientation of the graphic shape of SCH_DIRECTIVE_LABEL items
after mirroring the item.
Fixes #14758
https://gitlab.com/kicad/code/kicad/issues/14758
2023-05-18 10:28:27 +02:00
Seth Hillbrand
0de24bfd59
Cleanup text alignment between version 6 and 7
...
Version 7 text alignment changed subtly for stroke fonts from version 6.
Additionally, the output has been different between screen and plotting,
leading to offset text in plotted output relative to the text shown on
screen.
This introduces a fudge factor in FONT::getLinePositions to correct the
offset in the plotting output relative to v6.
This also changes the SCH_PAINTER and PCB_PAINTER to correct the
relative offsets between GAL and PLOTTER classes. The source of these
offsets is atm unclear.
Fixes https://gitlab.com/kicad/code/kicad/issues/14755
2023-05-17 13:33:49 -07:00
Marek Roszko
aeadd49a33
Fix windows builder broken by 831a6d5
2023-05-16 21:49:55 -04:00
Wayne Stambaugh
831a6d55fc
Fix potential stale pointer bug in schematic highlight connection code.
...
SCH_CONNECTION objects are temporary and can become stale any time the
connectivity is updated. Keeping them around to reference later is a
bad idea. Even if the object pointer is still valid in an SCH_ITEM in
the undo/redo buffers, comparing the pointer against another pointer as
a test to see if they are the same connection is not valid. Saving the
connection name is safe and ensures the connection is the same even if
the pointers differ.
2023-05-16 20:06:21 -04:00
jean-pierre charras
be59e7d67f
NETLIST_EXPORTER_SPICE: add space to the not allowed chars in netnames
...
Not allowed chars are replaced by '_'
Fixes #14724
https://gitlab.com/kicad/code/kicad/issues/14724
2023-05-16 17:59:01 +02:00
Marek Roszko
1adcb86e0b
Initial schematic search pane
2023-05-14 22:41:56 -04:00
Marek Roszko
34ba343754
Add SCHEMATIC_LISTENER equivalent to BOARD_LISTENER
2023-05-14 21:35:51 -04:00
jean-pierre charras
3be8bfe193
Fix a few Coverity warnings (not initialized vars)
2023-05-14 10:11:38 +02:00
jean-pierre charras
94bd1c6025
Fix a few Coverity warnings.
2023-05-12 18:53:55 +02:00
Seth Hillbrand
2ffb58a7e2
Test for schematic type when changing
...
The schematic editor undo list may hold page layout types as well
2023-05-12 08:43:58 -07:00
Jeff Young
ddc6ecf7be
Lazy loading of Schematic Setup panels.
2023-05-11 11:43:10 +01:00
Jon Evans
3686c5b371
Use the right path for recursing in text var resolution
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14720
2023-05-10 21:46:05 -04:00
Graham Keeth
df3560ab8e
sim: fixup some diode parameter units
2023-05-10 23:09:13 +00:00
Graham Keeth
2970d97bf2
sim: fix diode model default breakdown voltage
2023-05-10 23:09:13 +00:00
Jeff Young
9ae8255202
Insta-prefs.
2023-05-10 18:14:14 +01:00
jean-pierre charras
31d613c746
Fix a few Coverity warnings (not initialized vars)
...
It also fixes a potential crash when closing Kicad.
2023-05-10 09:21:39 +02:00
Seth Hillbrand
6e4de18e15
Ensure _changed_ netlist is propagated
...
The propagation is currently (maybe not needed) limited to the global
name that is the source of the change. We also need to propagate the
global name that is changed in case the global is set in a tree leaf and
not the root
Fixes https://gitlab.com/kicad/code/kicad/issues/14657
2023-05-09 12:13:06 -07:00
Jeff Young
e7d4b4aefc
Simplify previous fix to not include new strings.
2023-05-09 18:22:29 +01:00
Jeff Young
fdcc97e604
De Morgan conversions are equivalences, not additional items to simulate.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14230
2023-05-09 18:09:15 +01:00
jean-pierre charras
1d5158dbaf
Try to fix a compil issue.
2023-05-09 17:44:33 +02:00
jean-pierre charras
7b36e5f755
Do not mark empty strings for translation: empty strings are not allowed.
2023-05-09 17:10:59 +02:00
Jeff Young
8cd1f8d905
Support for De Morgan variants in symbol plotting CLI.
2023-05-09 13:09:12 +01:00
Jeff Young
4e420f3cf6
Formatting.
2023-05-09 12:22:17 +01:00
Mike Williams
9f62e88477
Symbol Fields Table / BOM Export: handle variable resolution
2023-05-08 10:59:13 -04:00
Jeff Young
031c46c887
Fix nullptr crash in undo.
2023-05-07 22:24:40 +01:00
Jeff Young
02b380da96
Field bounding boxes no longer contain interline spacing.
...
That's entirely done through FIELD_PADDING now.
Fixes https://gitlab.com/kicad/code/kicad/issues/14127
2023-05-07 22:24:40 +01:00
Jeff Young
4a62cc6edd
Separate symbol editor polyline and polygon tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14695
2023-05-07 14:58:44 +01:00
Jon Evans
7a7a23c83a
Fix crash when database lib config is not valid
2023-05-07 09:06:37 -04:00
Jeff Young
8fe02ee83c
Handle Eagle user-defined attributes.
...
(We map these to text variables.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13798
2023-05-06 21:10:34 +01:00
Mike Williams
5d116245c6
sch_symbol: always require sheet path for text variable resolution
2023-05-06 14:30:06 -04:00
Jeff Young
49655ae742
Defense in depth for "mouse stuck in canvas".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12653
2023-05-06 11:28:14 +01:00
Jeff Young
c016bea020
Make sure mouse isn't captured when dialog is raised.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14685
2023-05-06 11:28:14 +01:00
Wayne Stambaugh
51fd7ca5ed
Verify parent symbol shared pointer is still valid in symbol editor.
2023-05-05 12:32:00 -04:00
Jeff Young
b41d446f58
Fix a bunch more issues with sheetpaths and allowExtraText.
...
A sheetpath is required to correctly resolve text variables.
Depending on currentSheet is rife with bugs.
There are many places where we do *not* want to be prepending
field names to the field values, such as netlisting,
building PDF hypertext menus, etc.
Also, Find/Replace needs to work on unresolved text, as
that's what we're going to display (and if replace nuked
your variable references you wouldn't be happy).
2023-05-05 17:23:52 +01:00
Wayne Stambaugh
fb6b8eaeea
Don't include power symbol pin when exporting netlist.
...
The netlist exporter was never updated to exclude symbols that are
tagged as power symbols. Only the legacy power symbol name prefix
('#') was used as the power symbol check. Power symbols no longer
require the '#' name prefix.
2023-05-05 08:53:29 -04:00
Seth Hillbrand
2cac992801
Fix a28d590b9b
...
Needs to be static, so keep the reference from the associated symbol and
not the SCH_SYMBOL instance. Both will likely have the same prefix,
which is all we care about here
2023-05-04 12:06:19 -07:00
Seth Hillbrand
1e03c84918
Add ability to toggle attributes
...
Adds actions and context menu options to adjust attributes.
2023-05-04 11:51:21 -07:00
Seth Hillbrand
a28d590b9b
Force not-on-board symbols to NONE priority
...
Symbols that are not on the board should not affect the arbitrary names
assigned to unlabeled nets.
2023-05-04 11:51:21 -07:00
Jeff Young
c20ef06f56
Use correct sheetpath when exporting netlist.
2023-05-04 14:27:04 +01:00
Jeff Young
384f65c45e
Be careful of infobar outliving symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14680
2023-05-04 11:51:47 +01:00
jean-pierre charras
8a52941624
bom_csv_grouped_by_value_with_fp.py: fix compatibility with python < 3.9
2023-05-04 08:48:39 +02:00
Jeff Young
c4668c1d3a
Don't store resolved values in symbol fields table editor dataStore.
...
We're going to use the dataStore to update the symbol, so
if we store resolved values it will nuke any text variables
even if the field wasn't edited.
Not sure if the BOM generator has a separate resolve-variables
step or not. But it will need one as the code removed here
only worked for Values and Footprint fields anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/14423
2023-05-04 00:06:44 +01:00
Seth Hillbrand
8b73b0549f
Remove matching parents/neighbors in subgraphs
...
This ensures that when bus elements or labels matching bus elements are
removed that the stale neighbor/parent references are similarly removed
Matching 7.0 commit 4cdf75dc72
2023-05-03 13:37:11 -07:00
jean-pierre charras
2aa9ea87eb
Simulator: when using Incremental Connectivity, ensure the netlist is up to date
2023-05-03 18:59:18 +02:00
Jeff Young
4c2fcb6614
Line width in Plot dialog is minimum, not default.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14367
2023-05-03 17:34:36 +01:00
Jeff Young
b53f337938
More accurate terminology for cross-probe settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13088
2023-05-03 10:50:31 +01:00
Seth Hillbrand
cb85412b85
Cleanup Undo ordering
...
The undo command has accreted a number of things over the years. This
prunes back the changes to the minimum required number and correctly
orders the actions
Fixes https://gitlab.com/kicad/code/kicad/issues/14661
2023-05-01 19:29:48 -07:00
Jeff Young
df7d62fdd3
Added a sort-order dropdown to lib-tree filters.
...
Also simplifies the scoring algorithm so that it only
differentiates between exact-match, match-at-start and
any-match. The rest of the position-based matching
stuff is gone, as is the knowledge of the name vs the
keywords vs the description. All that is left to the
provider of the weighted search terms array.
2023-05-01 21:26:43 +01:00
Mike Williams
04a53ea40d
Picker Tools: make sure we know what tool we are
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14621
2023-05-01 12:43:09 -04:00
Mike Williams
39cc686dc4
Back Annotation: add support for DNP and Exclude from BOM attributes
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14584
2023-05-01 08:54:14 -04:00
jean-pierre charras
096af19d9a
Minor fix and cosmetic change:
...
- SCH_SYMBOL::GetMsgPanelInfo(): slighly change the displayed lines to allow
longer strings in Description and Keywords
- panel_setup_rules_help.md: fix incorrect html link (URI), creating ERR 404
2023-04-30 17:37:30 +02:00
Mike Williams
c1bebf6490
Symbol Fields Table: fix crash
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14532
2023-04-30 10:53:46 -04:00
Jon Evans
dc847db19d
Add initial support for database library settings UI
...
For now, just for diagnostic purposes (settings changes are not preserved)
2023-04-29 18:15:00 -04:00
Seth Hillbrand
f4b43617e7
Add COMMIT structure to Schematic and Symbol editors
...
Provides a single-point access for modifying the schematic and symbol
elements that allows chaining updates and reverting partial changes.
Standardizes the undo hierarchy between pcb and schematic editors
As this is another layer on the existing undo/redo structure, the
initial commit does not replace all undo/redo calls currently existing.
These will be handled in a series of follow-on commits
2023-04-28 17:05:47 -07:00
Jeff Young
d5cb100f72
Fix sheetPath handling in SPICE model generation.
2023-04-28 16:19:14 +01:00
Jeff Young
be657d947c
Import pin-names from LTSPice models.
2023-04-28 12:52:37 +01:00
Jeff Young
e1b39946fe
ADDED: show/hide controls for directive labels.
2023-04-28 00:32:49 +01:00
Jeff Young
4b0027a5d7
Implement better sheet-path awareness for label text var resolution.
2023-04-28 00:32:49 +01:00
Jeff Young
37c441a189
Minor performance improvement.
2023-04-28 00:32:49 +01:00
Jeff Young
1a7e99ed07
Formatting.
2023-04-28 00:32:49 +01:00
jean-pierre charras
ae7456e055
SYMBOL_LIB_TABLE and PANEL_SYM_LIB_TABLE: fix some issues:
...
- Ensure a change in plugin type is detected
- do not force automatic plugin type selection for *.lib files that need
an access to these libraries: they can be not always available.
2023-04-27 12:54:18 +02:00
Jeff Young
5e21e94478
Set currentSheet when exporting netlist.
...
Patch courtesy of Fernando Gomez.
2023-04-26 18:19:15 +01:00
Jeff Young
9d2824ec5e
Pass correct sheetpath to SCH_SYMBOL().
2023-04-26 17:25:27 +01:00
jean-pierre charras
a06c4cac73
SCH_IO_MGR::GuessPluginTypeFromLibPath() Ensure env vars are expanded in filename.
...
For legacy libs ans cadstar libs the extension is .lib.
So we need to read the header of the file, and therefore expand the env var inside
the filename, if used.
2023-04-26 18:14:55 +02:00
Jeff Young
d816fb071f
Use fileds from flattened lib symbol when updating.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14577
2023-04-26 12:47:55 +01:00
Jeff Young
dd6e3c0432
Finish two-step rename of ltspice folder.
...
(CLion didn't want to do a capitalization-only change in a
single step.)
2023-04-25 15:27:46 +01:00
Jeff Young
744dec65d7
Add (limited) support for LTSpice DATAFLAGs.
...
Even though we can't evaluate the expressions, we should at
least show the text so users can decide what to do with them.
2023-04-25 15:27:46 +01:00
jean-pierre charras
fd6fb4a87b
netlist exporter: export only the field value, even if field name is shown.
...
Previously, when the field name was visible, the exported field value was
prefixed by the field name, and this is incorrect.
Fixes #14611
https://gitlab.com/kicad/code/kicad/issues/14611
2023-04-25 12:43:15 +02:00
jean-pierre charras
b9ed84b7db
Fix minor compil warnings
2023-04-25 12:43:15 +02:00
Jeff Young
20ab268abf
Improve sheet-handling of ERC item description generation.
...
(In particular, stop crashing.)
2023-04-24 15:09:08 +01:00
Jeff Young
69500bfcaa
LTSpice schematic import based on the work of Chetan Shinde.
2023-04-24 13:52:52 +01:00
Jeff Young
60b019591d
Simulator fixes.
...
1) Don't read libraries multiple times
2) VDMOS default is nchan if not specified
3) In the absence of a workbook default to LTSpice compatability
4) Don't attempt to write out a model line for a subckt; it never has
a baseModel
2023-04-24 13:52:52 +01:00
Jeff Young
c2cc27c25c
Formatting.
2023-04-24 13:52:52 +01:00
Jeff Young
c381b6d024
More robust file reading for simulator files.
2023-04-24 13:52:52 +01:00
jean-pierre charras
afc6b325b2
Eeschema: minor enhancement: add SCH_JUNCTION::GetMsgPanelInfo() and show info.
2023-04-24 12:25:10 +02:00
jean-pierre charras
c617abe8e9
SCH_BITMAP and PCB_BITMAP: rename m_image to m_bitmapBase. Add more info
...
in GetMsgPanelInfo() (PPI, scale).
m_image name was confusing: it is not a wxImage, but a BITMAP_BASE item,
and m_image name was already in use in BITMAP_BASE, used inside SCH_IMAGE.
Bitmap properties dialog: show PPI value and add Title to dialog.
2023-04-22 17:28:06 +02:00
Seth Hillbrand
6e8a5acc66
Bug Fixes for new incremental connectivity
...
- Ensure that critical paths (ERC/netlister) are fully-rechecked
- Handle symbol/pin distinction in change markers
- Fully connect hierarchical pins in one pass descending
2023-04-21 13:35:18 -07:00
Seth Hillbrand
7eb728ca12
Don't consider saving SCH_MARKERs
...
These are ephemeral, view-only elements, so don't include them in our
save map
Fixes https://gitlab.com/kicad/code/kicad/issues/11405
2023-04-19 17:00:50 -07:00
Seth Hillbrand
a154571438
Add ability to update subgraphs based on changeset
...
Previously, almost all connectivity updates were full updates, meaning
that the entire connectivity graph would be rebuilt each time a change
was made to the schematic. This update modifies the update to only
correct the subgraphs that are directly affected by the change.
It uses the existing connection graph to find all affected subgraphs as
well as connections to the changes based on the visible schematic.
These elements are removed from the existing connectivity graph and
marked dirty. They then have a new connectivity graph built only around
their changes. The resulting graph is merged into the original.
Currently, this ability is behind an advanced config flag
`IncrementalConnectivity` while testing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10846
Fixes https://gitlab.com/kicad/code/kicad/issues/1794
2023-04-19 16:14:35 -07:00
jean-pierre charras
1406341d2d
Fix a few doxygen errors (no actual code change)
2023-04-19 16:20:24 +02:00
Mike Williams
09d7e24b6d
Symbol Fields Editor: drop some settings dynamic_casts
...
Not needed, and confusing.
2023-04-19 09:52:31 -04:00
Jeff Young
cc6fc4790d
Copy RC_ITEM fix to ERC_ITEM (where it's actually needed).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14569
2023-04-19 14:09:33 +01:00
Marek Roszko
ea077bc34d
Banish ignore.h to core
2023-04-18 22:44:04 -04:00
Seth Hillbrand
32d17547e5
Fixup settings loading
...
Settings loading needs to account for potential chaining, so each
instance should be created before being Load()ed. Additionally, add the
settings loading to QA
2023-04-18 16:00:31 -07:00
Jeff Young
51b6ec0dce
Don't exit KiCad when simulator window is closed.
2023-04-18 23:55:56 +01:00
Jeff Young
f7a552a2b3
Ensure item is gridded if there was no motion between clicks.
2023-04-18 23:55:56 +01:00
Seth Hillbrand
2cd861dbd5
Remove extraneous symbol editor settings
2023-04-18 13:46:33 -07:00
Seth Hillbrand
892e4536b0
Remove extraneous includes
2023-04-18 13:45:32 -07:00
Seth Hillbrand
e6ab9a88ce
Remove locks from settings
...
Settings should be initialized on start-up. This removes the option of
lazily loading the settings from file and instead requires all settings
needed to be loaded on KiFACE start before requesting data from the
settings object
2023-04-18 13:40:25 -07:00
Jeff Young
2c34a08bf1
Ignore empty field-name-templates.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14552
2023-04-18 17:31:25 +01:00
Jeff Young
7e5fedef6a
Markup fixes.
...
1) allow escape sequences inside markup sequences
2) keep overbar when inside nested markup
3) always place overbar at full height, not sub/superscript height
Fixes https://gitlab.com/kicad/code/kicad/issues/14553
Fixes https://gitlab.com/kicad/code/kicad/issues/13449
2023-04-17 17:56:54 +01:00
Jeff Young
02c5a31b99
Fix close button on simulator frame.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14551
2023-04-16 23:45:18 +01:00
Jeff Young
a540c01c61
Double double-add items to the view.
2023-04-16 23:04:47 +01:00
Jeff Young
6fb8916798
The symbol viewer handles its own message panel.
2023-04-16 18:47:04 +01:00
Jeff Young
6f59740953
Tighten up the lifecycle management of VIEW_ITEMs in
...
general, and the SYMBOL_VIEWER_FRAME's m_previewItem in
particular.
(Attempted fix for Sentry KICAD-G1.)
2023-04-16 14:21:23 +01:00
Jeff Young
b74d964bff
Handle legacy libraries with escaped symbol names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14057
2023-04-15 17:47:32 +01:00
Jeff Young
d4b4abd001
Apply symbol attributes from base symbol, not derived symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13740
2023-04-15 17:47:32 +01:00
Jeff Young
d01c023d5a
Retire the lib-tree scoring algorithm.
...
It appears to cause more confusion than help.
Fixes https://gitlab.com/kicad/code/kicad/issues/13905
2023-04-14 23:35:27 +01:00
Jeff Young
d64cb7f81b
More uniform handling of power symbols and exclude-from-simulation.
2023-04-14 19:42:13 +01:00
Jeff Young
9f56b75f01
Clean up atrophied code.
2023-04-14 19:42:13 +01:00
Jeff Young
05185ec81a
Save library when it's selected in lib tree.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14220
2023-04-14 17:35:37 +01:00
jean-pierre charras
77fb7b1182
ERC: set default setting ERCE_SIMULATION_MODEL to ignore
...
Most of projects do not manage spice settings.
2023-04-14 17:21:09 +02:00
Jeff Young
4eb0ccffe5
Bring Sim Command dialog layout in line with Kicad std dialog layout.
2023-04-14 13:00:31 +01:00
Okan Demir
75267a7366
Fixes issues pointed in the reviews
...
Wraps string literals with 'wxS', form is generated by wxFormBuilder
2023-04-14 11:01:01 +00:00
Okan Demir
82e8198fee
Adds missing transient simulation settings
...
Adds maximum step size setting used by transient analysis solver,
and 'use initial conditions (uic)' setting. Enabling uic disables
DC operating point analysis and may introduce singularities. It requires
a careful selection of initial conditions of circuit elements.
Fixes https://gitlab.com/kicad/code/kicad/issues/2515
2023-04-14 11:01:01 +00:00
Jeff Young
8e29a054f3
Performance improvement for GetShownColumns.
...
(This needs to be fast as it's called from OnUpdateUI events.)
2023-04-13 13:45:22 +01:00
aris-kimi
18cebe3779
Don't assume an EDA_ITEM is a SCH_ITEM. v2
...
In the same way as cec4109176
did
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14528
2023-04-13 11:12:02 +01:00
Jeff Young
a24a63e416
Search in label fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14075
2023-04-12 23:21:53 +01:00
Jeff Young
1f140953d6
Manual cherry-pick of 912bd4458f
2023-04-12 23:21:53 +01:00
Jeff Young
b876af55df
Don't exit symbol compare early when reporting.
2023-04-12 23:21:53 +01:00
Ian McInerney
6c05801d9e
Make the property grid compatible with wx 3.3
2023-04-12 18:57:12 +01:00
Ian McInerney
18e573d5e9
Remove stray wx include
...
There is no reason to include the actual string implementation header
here.
2023-04-12 18:57:12 +01:00
Jeff Young
66f48d56ae
Separate sheet reloads (MODEL_RELOAD) and schematic reloads (SUPERMODEL_RELOAD).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14523
2023-04-12 11:51:09 +01:00
jean-pierre charras
de579af352
SCH_LABEL_BASE::SetPosition(): ensure field positions are also handled.
...
Fixes #14520
https://gitlab.com/kicad/code/kicad/issues/14520
2023-04-12 11:15:17 +02:00
jean-pierre charras
f56e569a25
Ensure we do not use a non existing pin in SIM_MODEL::MigrateSimModel()
...
Fixes #14522
https://gitlab.com/kicad/code/kicad/issues/14522
2023-04-12 09:37:59 +02:00
Jeff Young
eef3492fc0
Make symbol/footprint trees sensitive to language change.
2023-04-11 23:51:58 +01:00
qu1ck
0c049eccc7
Fix a bunch of compiler warnings
2023-04-11 17:01:30 +00:00
Jeff Young
cec4109176
Don't assume an EDA_ITEM is a SCH_ITEM.
...
(It might in fact be a LIB_ITEM, which we don't put in
the RTree anyway.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14516
2023-04-11 15:26:39 +01:00
jean-pierre charras
f01e083f7c
fix 2 issues related to SCH_GLOBALLABEL items:
...
- Ensure the first field in m_fields has id = 0 to be seen has hypertext
(it was not the case after reading a .kicad_sch file)
- when converting this item to another label/text, remove this special Field
from the copied field list to the converted label.
2023-04-10 09:58:27 +02:00
Jeff Young
ea59d583d5
ADDED exclude-from-simulation property to text items and textboxes.
2023-04-09 19:03:36 +01:00
Jeff Young
a226f7fc14
Don't delete default intersheetrefs field from global labels.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14493
2023-04-09 19:03:36 +01:00
Marek Roszko
2025923ef4
Prevent crash during schematic window close
2023-04-08 20:31:52 -04:00
Wayne Stambaugh
d962b062ca
Fix crash when duplicating symbol unit with alternate body style.
...
* Add check for valid symbol library link in annotation code to prevent
crash even if the symbol was not defined correctly. This will assert
in debug builds.
* Fix broken pin comparisons when library symbols have units with alternate
body style defined.
* Remove some macros from LIB_SYMBOL comparison function which made
debugging painful.
* Exit LIB_SYMBOL comparison function as soon as non-equivalent comparison
occurs.
* Fix broken library symbol comparison due to name differences when
checking for existing variants of the library symbol.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14491
2023-04-08 15:29:01 -04:00
jean-pierre charras
c6bcfda84c
DIALOG_IMAGE_PROPERTIES: fix some issues:
...
- add missing dialog_image_properties_base.fpb file
- fix not displayed image.
2023-04-08 16:41:55 +02:00
Seth Hillbrand
2cd854af14
Move Spacemouse to advanced config
...
The spacemouse driver, particularly on Mac, is extremely unstable and
causes crashes even when not being used. This places the interface
behind an advanced config flag to ensure that users can affirmatively
opt-in to the potential for crashes
2023-04-07 10:08:43 -07:00
Seth Hillbrand
012737593b
Handle nested netclass assignments
...
Netclass directives should not be overriden, instead hold our error
checking for actually missing nets
Fixes https://gitlab.com/kicad/code/kicad/issues/14494
2023-04-06 17:38:13 -07:00
Ian McInerney
18ea3be3f2
Revert "Reintroduce constexpr to COLOR4D"
...
This reverts commit 33da9b2327
and the
following commit dc08c48f33
.
C++17 changed the behavior of static class member variables that are
constexpr defined. Previously this definition/declaration split was
valid for constexpr members, but after C++17 the static constexpr member
variables are automatically inlined, so the declaration is no longer
exported in some compilers (GCC 9/10/11 seem to have problems).
An alternate way of constexpr member variables is putting the
initialization in the class definition, but we can't init a COLOR4D
object when defining the COLOR4D class.
For now, revert this change until we can figure out the proper way of
architecting these colors.
2023-04-06 20:18:31 +01:00
Ian McInerney
dc08c48f33
Try to fix linking after constexpr change
...
Somehow, GCC 10 and 11 were unable to locate the prebuild colors when
they were constexpr in gal, so give them on the link line again.
2023-04-06 15:20:16 +01:00
Ian McInerney
ea62b145ff
Introduce core interface library
...
This library is meant to move non-EDA items (language extensions,
library extensions, etc.) into the lowest-level of our dependency chain.
This library should never depend on anyother non-thirdparty code in the
kicad codebase.
2023-04-06 15:01:18 +01:00
jean-pierre charras
7eb13c3d33
Symbol editor: clear the edit flags of a pasted pin after place it.
...
When pasting a single pin, its edit flags were not cleared, and create
issues when trying to edit the pasted pin.
Fixes #14188
https://gitlab.com/kicad/code/kicad/issues/14188
2023-04-06 11:08:01 +02:00
Seth Hillbrand
16b4ec3c7e
Allow bus elements to connect
...
Previously, bus elements that were not instantiated as individual nets
could not connect to each other. This caused issues for complex
schematics where busses needed to connect to other busses with elements
that resolved to the same net names. Functionally, this means mixing
bus elements, which we will replace with first-class elements in version
8 but currently can only be accomplished either by using bus aliases and
this patch or by individually instantiating each bus element as a
local label
Fixes https://gitlab.com/kicad/code/kicad/issues/14300
2023-04-04 15:23:29 -07:00
Jeff Young
8dfe8e595c
Merge MR 1433 from Stefan <stifisax@gmx.ch>.
2023-04-04 17:39:18 +01:00
Stefan
c2686d881e
add include
2023-04-04 17:31:46 +01:00
Stefan
992f38a6ce
fix used functions
2023-04-04 17:31:46 +01:00
Stefan
34700c00f6
fix error string
2023-04-04 17:31:44 +01:00
Stefan
fb593bd0c0
check Eagle schematic to be in xml format before parsing
2023-04-04 17:30:10 +01:00
Jeff Young
a9b2234f4e
Use a softer Reset for grid settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14458
2023-04-04 17:05:21 +01:00
Mike Williams
247c2edbed
Symbol Fields Table: various bug and coverity fixes
2023-04-04 11:27:09 -04:00
Mike Williams
791a9e6c78
Symbol Fields Table: fix up Rename field function
2023-04-04 11:27:09 -04:00
Stefan
e6fd70777b
do not allow import of legacy kicad schematic via importer
2023-04-04 13:21:05 +00:00
Jeff Young
7e5cd01079
Improve scoping control of connetion members.
...
(The real bug here is that CONNECTION_GRAPH::assignNetCodesToBus() was
growing the bus aliases members list because it used a non-const
reference to it as a local storage list. The const scoping of it will
prevent this type of error in future.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14269
2023-04-04 12:03:06 +01:00
Jeff Young
bd60f38569
Possible protection from acessing deleted window data.
...
(Long shot for Sentry KICAD-MM.)
2023-04-03 23:44:40 +01:00
Mike Williams
68353e99d1
Symbol Fields Table: more MSVC fixes
2023-04-03 13:12:13 -04:00
Mike Williams
310d26620e
Symbol Fields Table: more MSVC build fixes
2023-04-03 12:27:48 -04:00
Jeff Young
9b4627e782
Don't pass a FRAME-based UNITS_PROVIDER to a modeless dialog.
...
(The dialog may outlive said frame.)
Should fix Sentry KICAD-3A.
2023-04-03 17:18:33 +01:00
Mike Williams
b7b7dc6558
Symbol Fields Table: general settings saving cleanup
2023-04-03 09:07:52 -04:00
Mike Williams
9c3d93eb34
BOM Generator: wire up forced exclusion, optional DNP exclusion
2023-04-03 09:07:52 -04:00
Mike Williams
79a829395d
BOM Generator: minor bug fixes and string changes
2023-04-03 09:07:52 -04:00
Mike Williams
c5cc313da9
Symbol Fields Table: BOM presets saved in JSON settings
2023-04-03 09:07:52 -04:00
Mike Williams
753ae21fd4
BOM Generator: wire up to kicad-cli
2023-04-03 09:07:52 -04:00
Mike Williams
8433f94886
Symbol Fields: move more strings to template field names usage
2023-04-03 09:07:52 -04:00
Mike Williams
6a726709b5
Symbol Fields Table: wire up BOM format presets
2023-04-03 09:07:51 -04:00
Mike Williams
bb7d55e5a4
Symbol Fields Table: fix Qty column
...
Really need to refactor these strings out of everything...
2023-04-03 09:07:51 -04:00
Mike Williams
106747a03b
Symbol Fields Table: file chooser + working export
2023-04-03 09:07:51 -04:00
Mike Williams
b59fd76c15
Symbol Fields Table: export formatting options started
...
Also move export into the data model and out of the dialog so we can
eventually do this without a GUI.
2023-04-03 09:07:51 -04:00
Mike Williams
97eed8c8a2
Fields Data Model: pull more UI controls interaction out of class
2023-04-03 09:07:51 -04:00
Mike Williams
cccd708860
Symbol Fields Table: move data model into its own file
2023-04-03 09:07:51 -04:00
Mike Williams
21c81b19fa
Symbol Fields Table: upgrade dialog in prep for exporter
2023-04-03 09:07:51 -04:00
Mike Williams
a39ce5bf9e
Dialog Symbol Fields Table: allow re-labeling columns
2023-04-03 09:07:51 -04:00
Mike Williams
d117d4e8f5
Symbol Fields Table: Add Presets
...
No backing store in JSON settings yet.
2023-04-03 09:07:51 -04:00
Mike Williams
f98e36efa9
Symbol Fields Table: allow hiding references
...
If that's what the user wants, let them.
2023-04-03 09:07:51 -04:00
Mike Williams
9b942ee8f3
Symbol Fields Table: fix up some display/field/canonical name confusion
2023-04-03 09:07:51 -04:00
Mike Williams
d8df792c6a
Fields Symbol Table: really move columns when the user moves them
...
Move the internal columns and rebuild the table when a user moves the
columns. This is the only way to fix selection issues across reordered
columns.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12295
2023-04-03 09:07:51 -04:00
Mike Williams
79b20812d0
Symbol Fields Table: move towards field names instead of fixed indices
...
Qty column can now be hidden.
We eventually need to get to the point that we are able to rearrange the
columns in the internal data model to work around wxGrid selection
issues.
2023-04-03 09:07:51 -04:00
Mike Williams
1982c1af80
Symbol Fields Table: save current table properties
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/5006
2023-04-03 09:07:51 -04:00
Mike Williams
e53ee9df4b
Symbol Fields Table: add rename column functionality
2023-04-03 09:07:51 -04:00
Jeff Young
7252c7471c
Use enums for column ids.
...
(The nickname, in particular, is no longer column 1.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14291
2023-04-02 15:10:06 +01:00
Jeff Young
3a8d6dffba
Don't close ERC window when changing sheets.
...
This Reset() override was originally added to fix a bug when opening
a new schematic in stand-alone. However, we now do that sort of
cleanup in SCH_EDIT_FRAME::doCloseWindow().
Fixes https://gitlab.com/kicad/code/kicad/issues/14470
2023-04-02 11:48:23 +01:00
jean-pierre charras
aaae50f2aa
ERC do not test power symbols for simulation model.
...
Fix also a minor cosmetic issue with ERCE_SIMULATION_MODEL messages.
Fixes #14463
https://gitlab.com/kicad/code/kicad/issues/14463
2023-04-01 10:16:44 +02:00
Jeff Young
bbd6c80507
Collapse FP_* down into their PCB_* equivalents.
2023-03-31 22:57:46 +01:00
jean-pierre charras
1aa0ef05c0
Fix missing include.
2023-03-30 08:49:36 +02:00
Wayne Stambaugh
28776f5745
Text attributes object improvements.
...
* Add compare method to COLOR4D object.
* Add unit test to validate COLOR4D comparison method.
* Add missing color test in text attribute comparison method.
* Add unit test for text attribute object.
* Remove unnecessary headers from text attribute header.
* Move text attribute code into separate source file.
2023-03-29 12:53:45 -04:00
Jon Evans
c35cefe1d5
DbLib: Get rid of some GCC warnings
2023-03-26 19:43:33 -04:00
Roberto Fernandez Bautista
fc04f5135f
CADSTAR Sch: TERMATTR may have more than one attribute subnode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13526
2023-03-26 15:54:21 +01:00
Jeff Young
1788db53e5
Don't complain about no sim model when running Sim Model Editor dialog.
...
Also removes some atrophied code, and makes sure changes to the parameter
grid for raw spice models gets saved.
2023-03-25 20:22:04 +00:00
Jeff Young
60aadfee40
Move separation of model name from params earlier in the process.
...
We need just the model name when we look for a match in the library file.
2023-03-25 12:45:36 +00:00
jean-pierre charras
1b4f905f4c
Plot symbol graphic texts: fix incorrect position of texts in some rotations.
...
The plot code is now similar to the one for symbol fields
Fixes #14327
https://gitlab.com/kicad/code/kicad/issues/14327
2023-03-25 12:45:09 +01:00
Marek Roszko
8a8589b9db
Fix cli crash due to dialogs buried in the pcb parser...
...
Fixes sentry KICAD-Q2
2023-03-24 19:52:48 -04:00
Seth Hillbrand
0984599624
Pins are case-sensitive
...
Cleanup should remove mis-matched cases
Fixes https://gitlab.com/kicad/code/kicad/issues/14415
2023-03-24 11:21:35 -07:00
Wayne Stambaugh
244c37298f
Fix Doxygen commenting issues.
2023-03-24 11:57:52 -04:00
jean-pierre charras
b622e3a3f7
SYMBOL_EDIT_FRAME: fix issue after loading a symbol from schematic editor.
...
Selected items become invisible.
Fixes #14151
https://gitlab.com/kicad/code/kicad/issues/14151
2023-03-23 18:36:59 +01:00
Wayne Stambaugh
a0d02fbab1
Make multivector.h header order independent.
...
Attempt to clean up all redundant headers that multivector.h touches.
2023-03-23 13:26:32 -04:00
Jon Evans
dd8b52af93
Be more flexible about extracting booleans from database
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14376
2023-03-22 21:24:24 -04:00
Jeff Young
b8cf7cc080
Split name from additional params only when model is a library reference.
2023-03-22 13:52:17 +00:00
Jeff Young
5bda3b99f9
Handle single-token flag parameters.
...
Also fixes a bug where all VDMOS instance parameters weren't marked as
instance parameters.
Also fixes a bug where VDMOS thermal models weren't supported (they
have two extra pins: Tj and Tcase).
2023-03-22 13:52:17 +00:00
Jeff Young
9dc16eb014
Don't include non-overridden parameters in Sim.Params.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14369
2023-03-22 13:52:17 +00:00
Salvador E. Tropea
7e3f1b1a00
Adds the missing plot formats to `kicad-cli sch export`
2023-03-22 02:14:50 +00:00
Jeff Young
39a801423e
Separate legacy model name from parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13988
2023-03-21 13:29:17 +00:00
Ian McInerney
8038b3a3e1
Reorganize eeschema cmake after ngspice changes
2023-03-20 16:54:32 +00:00
Ian McInerney
016c958021
Always build spice simulator support
...
The simulator has advanced considerably, and it is seeing lots of active
development, so make it a required part of KiCad. Additionally, the
build without the simulator has actually been broken for a while, so no
one clearly is building without ngspice right now.
2023-03-20 16:54:32 +00:00
Jeff Young
5798b586f0
Ignore extraneous LTSpice parameters for VDMOS models.
...
Also adds special case handling of VDMOS syntax to allow parens (or extra
spaces, linebreaks, etc.) between "VDMOS" and "NCHAN"/"PCHAN".
Fixes https://gitlab.com/kicad/code/kicad/issues/14299
2023-03-20 16:16:44 +00:00
Jeff Young
a14c017def
Save location of legend in worksheet.
...
Also provides a different cursor when over a legend (to make it clearer
that you can drag it).
2023-03-20 09:51:41 +00:00
Jeff Young
ec6d709929
Make sure legend reflects gain/phase for AC small signal analyses.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14301
2023-03-19 23:02:58 +00:00
Jeff Young
ef0d561a5c
Less nagging. (If we need a field name, then create one.)
...
Also cleans up empty fields when exiting the dialog.
2023-03-19 20:43:18 +00:00
Alex
10c4b948cb
Support canceling initial global library table setup.
2023-03-19 14:30:53 +03:00
Jeff Young
afe813cae5
Remove accelerator keys from schematic find/replace dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14304
2023-03-18 23:33:23 +00:00
jean-pierre charras
d62d775115
Remove non existing OnSize event in SYMBOL_EDIT_FRAME EVENT_TABLE
2023-03-18 07:30:05 +01:00
Jeff Young
607622e8f8
Make the two Create() methods more parallel.
2023-03-17 15:58:28 +00:00
jean-pierre charras
5bd491bd74
Avoid schematic editor frame to go on top when selecting a symbol.
...
It was s side effect of a CrossProbe called on a symbol selection.
This also replace commit e51594cdf5
.
Fixes #14316
https://gitlab.com/kicad/code/kicad/issues/14316
2023-03-17 16:37:49 +01:00
Jeff Young
222cd4d009
Handle underscore in parameter names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14308
2023-03-16 23:40:52 +00:00
Roberto Fernandez Bautista
3d661585dd
Fix build errors and warnings from CADSTAR
2023-03-16 21:17:40 +01:00
Roberto Fernandez Bautista
9d5672464e
CADSTAR Sch: Apply default text code to fields when none is specified
2023-03-16 21:07:08 +01:00
Roberto Fernandez Bautista
7534c56723
CADSTAR: Improve loading performance (cache symdef name/alternates)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
b70fe88145
CADSTAR Parts: Fix parsing of hidden pins (possible for several pins per net!)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
6ab2112135
ADDED: CADSTAR Parts Libraries (.lib)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
8f83f27336
CADSTAR SCH: Refactor loading of symbols out of loading part info
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
c34207b726
CADSTAR: Remove wxPoint + improve formatting
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
738b36cf7d
CADSTAR csa / cpa ignore Hierarchy
...
This node doesn't have any equivalent in KiCad so for now we ignore it. In future, we could parse it in detail, to obtain the tree-structure of symbols/footprints in a cadstar library
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
e8ead30baf
WIP: CADSTAR Parts now shows up in library tables and is handled correctly (todo: read cadstar header)
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
2da13a9e07
CADSTAR SCH: Separate out saving loaded lib symbols to library
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
7a6b64d371
Special case cadstar libraries when error reporting.
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
e2a4d58e8f
Extract CADSTAR PIN_TYPE and PIN::POSITION into a separate header
2023-03-16 21:07:04 +01:00
Wayne Stambaugh
e51594cdf5
Fix broken window Z order when editing a symbol from the schematic.
2023-03-16 15:18:41 -04:00
Jeff Young
6d296038f3
Improve simulation error reporting.
...
1) More REPORTER, less exception processing
2) Remove UI calls from SPICE_MODEL
3) Don't replace netlist with errors; show both
4) Don't bail out of netlist generation after single error
Fixes https://gitlab.com/kicad/code/kicad/issues/14295
2023-03-16 16:12:29 +00:00
jean-pierre charras
8b144539e8
DIALOG_LABEL_PROPERTIES, add global label: better filtering of candidates.
...
The list of candidates (names) must be restricted to existing global labels
and symbols creating a global net name: power symbols having only one power
input pin (a power output does not create net name).
Fixes #14319
https://gitlab.com/kicad/code/kicad/issues/14319
2023-03-16 15:31:39 +01:00
jean-pierre charras
893a362d9e
Minor Coverity and compil warnings fix.
2023-03-15 20:09:04 +01:00
jean-pierre charras
5ce22d9673
Symbol editor: fix incorrect position of fields when loading a symbol from schematic.
...
In symbol editor, symbols are always shown not mirrored, not rotated.
So if the loaded symbol from schematic was rotated/mirrored, the position
of fields must be recalculated for the rotation 0, no mirror.
2023-03-15 17:55:18 +01:00
Jeff Young
c266913ec7
Swap pins for undo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14100
2023-03-14 11:52:23 +00:00
Jeff Young
37b0a5a504
Add quick DRC action for Diff Footprints.
...
Also makes the strings match the GUI better so people will know where
to find them later.
And fixes a couple of ERC items that referred to Board Setup (oops).
2023-03-14 11:52:23 +00:00
Wayne Stambaugh
66f6168163
Fix mode-less dialog issues.
...
Don't assume the dialog is mode-less and call Destroy() from within a
dialog method. This will most assuredly crash if the dialog is shown
modally or quasi-modally.
Don't leak memory for mode-less dialogs created on the stack. Make sure
when the parent frame window is closed that all mode-less dialog memory
is cleaned up. Dialogs are not child windows like controls and toolbars
so their memory does not automatically get cleaned up when the parent
window is destroyed.
Do not directly access frame parent window's pointer in dialog destructors.
Apparently the tear down order when destroying mode-less dialogs is not
guaranteed so the parent window may get deleted before the dialog causing
a crash when accessing the parent window pointer from the dialog dtor.
Do not close mode-less dialogs in the parent frame's destructor. This
doesn't guarantee that the dialog(s) will be destroyed before the parent
but it may reduce some careless mode-less dialog event handling in the
future.
2023-03-13 12:04:01 -04:00
Jeff Young
dc78797274
Support SHEET_PATH when printing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14233
2023-03-12 22:24:06 +00:00
Jeff Young
c4ef08bead
Exercise more caution with user filenames.
...
In particular, don't assume "1" is an extension in "Schematic_1.1".
Fixes https://gitlab.com/kicad/code/kicad/issues/14263
2023-03-12 15:52:45 +00:00
Jeff Young
74f064d3aa
Don't keep smart pointers to wxWindows, particularly modeless ones.
...
wxWindows have their own lifecycle management.
2023-03-11 19:36:01 +00:00
Jeff Young
c9351dfd67
Drawing improvements for symbol & footprint diffs.
...
Moves forced-transparency setting down into VIEW_ITEM so that it can
be used to place forced-transparent objects in a different target.
This keeps EnableDepthTest() from equalizing the alpha values between
the two symbols (or two footprints).
2023-03-11 12:45:16 +00:00
Jeff Young
5041bddc3b
Union workbook sim commands with any defined on schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14215
2023-03-10 21:33:06 +00:00
Jeff Young
6d29088668
Add missing command to SPICE directives list.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14215
2023-03-10 21:33:06 +00:00
Jeff Young
3bc5e3dd8a
Added PSPICE/LTSPICE JFET model parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12425
2023-03-10 21:33:06 +00:00
Jeff Young
9546a40662
Correct usage of elipses after menu items.
...
(They should only be used when we collect more info before performing
the command. If the command is something like showing the simulator,
then there should be no elipsis as we don't collect more info before
showing the window.)
Also improves a few of the menu tooltips.
2023-03-10 21:33:06 +00:00
Mike Williams
b32ba16da4
UI: Add Numpad Enter as "Return" equivalent in missing places
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14244
2023-03-10 16:25:17 -05:00
Jeff Young
357427d803
Graphical diff for board vs library footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-10 17:16:40 +00:00
Ian McInerney
56b7d570f9
Remove uses of climits header/defines
...
2 of the 3 includes never used it, and the other could be switched to
the C++ numeric_limits class.
2023-03-10 17:08:56 +00:00
Ian McInerney
a6ebd60c3b
CMake: Modernize Boost import to use imported targets
2023-03-10 16:38:35 +00:00
Mike Williams
ade29c8577
Schematic Sheet Variables: more SCH_SHEET_PATH plumbing
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14239
2023-03-10 09:16:53 -05:00
Jeff Young
bc0d59801a
Graphical diff for schematic vs library symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-09 18:04:52 +00:00
Jeff Young
2d6ab62da4
ADDED: schematic/library diff for symbols.
2023-03-09 18:04:52 +00:00
jean-pierre charras
b96f3d085c
Eeschema: save worksheet filename in project file.
...
The call to saveProjectSettings() was missing.
Fixes #14219
https://gitlab.com/kicad/code/kicad/issues/14219
2023-03-09 15:56:19 +01:00
Mike Williams
e738750dff
Schematic: sheet pins need to use their parent to resolve text variables
...
Otherwise the current sheet will be searched, which is one layer too far
down the hierarchy.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13998
2023-03-08 11:52:43 -05:00
Mike Williams
1bc4fc256a
Sheets: check for duplicates using shown names
...
Otherwise sheet names using sheet variables may collide
2023-03-08 11:52:43 -05:00
Mike Williams
bf59f1246b
Schematic: correctly resolve label nets using sheet variables
2023-03-08 11:52:43 -05:00
Mike Williams
c8fdac7abe
Schematic: correctly resolve global power nets using sheet variables
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/7445
2023-03-08 11:52:43 -05:00
jean-pierre charras
6343147bb3
Fix Coverity warnings.
2023-03-08 11:37:56 +01:00
Salvador E. Tropea
13de3c0656
Use constants for the names of the built-in colors
...
- Avoid repetition and errors from typos
- Allow simple changes
- Simpler data type handling, the constants are wxString
(Cherry-picked from f135881bd6
in 7.0)
2023-03-07 10:34:42 +00:00
James J
39e56485fc
Consolidated ERC fixes
...
- Consistent calculation of IsStacked() for pins across ERC checks
- Correct placement of ERC marker for unresolved field variables
- Add sheet-specific paths to two ERC check results
2023-03-07 00:37:33 +00:00
Jeff Young
6838de962b
Make SPICE netlist title explicit.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14183
2023-03-06 22:50:17 +00:00
Jeff Young
98d7b14dbc
A better solution to keep SPICE netlist from being entirely selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14177
2023-03-06 18:46:01 +00:00
Jeff Young
b5060d2951
Support both wxWidgets APIs for excluded characters.
...
(Sadly they're mutually incompatible.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14153
2023-03-06 14:14:16 +00:00
Wayne Stambaugh
a1fb8e1b1d
Coverity fixes and code cleaning.
2023-03-06 07:12:18 -05:00
Jeff Young
7547e550aa
Use name (even for fallback models) *if* it's specified in dropdown.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12425
2023-03-06 11:17:39 +00:00
Jeff Young
630ff02369
Fix bone-headed logic.
...
(Else clause never gets called because 3 is always > 2.)
2023-03-06 10:26:59 +00:00
Stefan
90b5dba5ac
Altium Importer: add note that Parameter Set import is not yet supported
2023-03-06 02:13:40 +00:00
Jon Evans
7b3fd2113c
Improve sheet rendering performance
...
- Cache font markup parsing
- Cache SCH_SYMBOL::GetOrientation
- Don't construct new strings each time in GetDefaultFieldName
2023-03-05 17:41:46 -05:00
aris-kimi
5b43dc4e7b
Simulator: Fix diode ibv unit
2023-03-05 19:23:33 +02:00
Alex
d2bd7e33b9
Remove extra canvas redraws when changing sheets.
2023-03-05 04:33:07 +03:00
Alex
c1f4911d7e
bom_csv_grouped_extra: use field-specific methods for data.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14129
2023-03-05 03:23:51 +03:00
Jon Evans
610e787ada
Move to requiring explicit action to save project settings
2023-03-04 14:25:07 -05:00
Wayne Stambaugh
4e99812145
Coverity fixes and code cleaning.
2023-03-04 13:02:05 -05:00
Jeff Young
d714ff8549
Don't commit changes on paint events or updateUI events.
...
Also use std::numeric_limits::epsilon for comparing doubles.
Fixes https://gitlab.com/kicad/code/kicad/issues/13851
2023-03-04 00:10:01 +00:00
Jeff Young
d1b7fa6b0f
Slight improvement to property grid col widths in SME.
2023-03-04 00:10:01 +00:00
Jeff Young
b6d0b65261
Naming conventions and commenting. No functional changes.
2023-03-04 00:10:01 +00:00
Seth Hillbrand
48740dd3f8
Clean exposure of CONNECTION_SUBGRAPH
...
Removes internals from public consumption.
2023-03-03 14:07:17 -08:00
Jeff Young
d545216432
Prefer Clamp() to std::min( std::max() ).
2023-03-03 21:29:37 +00:00
Alex
bfc3e2d29b
Fix bitmap scaling when reading legacy schematic as well.
2023-03-04 00:11:09 +03:00
Seth Hillbrand
59fc62e898
Correct parent symbol for lib_text
...
The edited symbol should be pulled from the parent window when there is
not an existing text object
2023-03-03 12:39:07 -08:00
Jeff Young
14f1f3ec79
Convert inline models in Sim.Params fields to SPICE syntax.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14157
2023-03-03 18:18:03 +00:00
Jeff Young
2fb24347ad
Use resolved fields when generating LIB_TREE info.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13737
2023-03-03 17:22:50 +00:00
Jeff Young
be18413a90
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14073
2023-03-03 17:05:07 +00:00
Jeff Young
2973d292d9
Handle alternate pin definitions when printing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14122
2023-03-03 10:57:37 +00:00
Jeff Young
5849458476
The screen for undo is the screen that *owns* the SCH_SHEET...
...
... not the screen the SCH_SHEET owns.
Fixes https://gitlab.com/kicad/code/kicad/issues/14099
2023-03-03 00:23:06 +00:00
Jeff Young
f41f04b301
Hook up AddField handler to GRID_TRICKS for SCH dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/git/14153
2023-03-02 18:17:41 +00:00
Wayne Stambaugh
789bf6455a
Coverity fixes and code cleaning.
2023-03-02 09:04:47 -05:00
Jeff Young
dcba555d44
Make SME prop-grid hack Mac-only.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13852
2023-03-02 10:42:13 +00:00
Jeff Young
63a545ebfd
We don't need "(gain)" or "(phase)" in names any more.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14140
2023-03-02 00:38:39 +00:00
Jeff Young
190ee58ccf
Don't deliver pedantic error messages to user.
2023-03-02 00:38:39 +00:00
aris-kimi
db2780090c
Simulator: Fix RLGC c unit
2023-03-01 23:03:54 +00:00
Jeff Young
9c68d4792f
Fix bungle from earlier merge.
2023-03-01 13:43:46 +00:00
Jeff Young
f5edcf82f2
Move only-write-model-if-it-contains-overrides up to base class.
...
It's necessary to keep us from writing out model lines for included
models and fall-backs of included models.
2023-03-01 13:31:57 +00:00
aris-kimi
4a761179d0
Simulator: Fix some cases with initial conditions
2023-02-28 21:31:04 +00:00
Seth Hillbrand
3207d1386e
Avoid forcing all units
...
When the enduser is not allowed to change the status of "common to all
units", then it should be disabled
Fixes https://gitlab.com/kicad/code/kicad/issues/14084
2023-02-28 13:25:32 -08:00
Graham Keeth
cc110399ea
Fix column offset in BOM script
...
Debugged by @svk28
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14128
2023-02-28 19:10:56 +00:00
Jeff Young
a1ceb585c7
Always highlight children when they're selected on their own.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13876
2023-02-28 13:39:07 +00:00
Jeff Young
281fde71b9
Make SIM_MODEL_SPICE_FALLBACK act more like the model it's a fallback for.
...
In particular, install/show the parameters, and keep the existing name
field.
Fixes https://gitlab.com/kicad/code/kicad/issues/14102
2023-02-28 12:26:04 +00:00
Roberto Fernandez Bautista
b03366c9e8
Fix CADSTAR importer memory leaks
...
We were leaking the xml tree when throwing exceptions
2023-02-27 23:57:39 +01:00
Jeff Young
766b1a1ca8
Continue rationalisation of vector, trace and signal names.
...
Also add a little bit more code so user-defined signals can be edited
without resetting their properties.
Fixes https://gitlab.com/kicad/code/kicad/issues/14072
2023-02-27 21:11:31 +00:00
Mike Williams
45e67950fd
Schematic: fix global labels overriding wrong power symbols
...
Need to check pin netname now that we support changing the value of the
power symbol.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14076
2023-02-27 09:25:05 -05:00
Fabien Corona
5b2784f418
sim - switches: open <-> closed in description
2023-02-27 09:54:14 +00:00
Jeff Young
79f13ea9c7
Don't eval empty string.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13756
2023-02-26 23:14:09 +00:00
Roberto Fernandez Bautista
bcdb979128
CADSTAR SCH: Use screen grid instead of working grid when centering the design
2023-02-26 19:50:18 +01:00
Roberto Fernandez Bautista
698d0b7e92
CADSTAR Sch: Fix loading of graphical arc shapes
...
Correctly load arc shapes as real arcs instead of approximating now that
v7 supports graphical arcs in the schematic.
Also fix calculation of arc geometry for ccw arcs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14101
2023-02-26 19:46:34 +01:00
Jeff Young
beb177fa79
Try and sort out the mess that is trace names and trace titles.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14016
2023-02-26 18:08:42 +00:00
jean-pierre charras
51d46c0e73
plotters rework: add plot fct to use TEXT_ATTRIBUTES class to pass text settings
...
Old PLOTTER::Text is not (yet) removed, but it use negative text size
to mirrored text, which is not really compatible with some plotters (especially PDF).
Using TEXT_ATTRIBUTES is much easy and much better,
so PLOTTER::PlotText() is added.
Note: "old" PLOTTER::Text() is not removed yet.
2023-02-26 14:44:53 +01:00
Jeff Young
551773bf17
Save plot prefs (legend, grid, and dotted-secondary).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13940
2023-02-26 11:57:49 +00:00
Jeff Young
c06cea2fe9
Fix units for ":power" operating points.
2023-02-25 23:30:01 +00:00
Jeff Young
23c1a23faf
Provide power axis for DC-sweep analyses.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14087
2023-02-25 23:11:29 +00:00
Jeff Young
8c8c5e1824
Provide a default xaxis for DC-sweep so we can add traces before sim is run.
2023-02-25 22:42:52 +00:00
Jeff Young
1fdc81e68d
Make substrate and thermal junction nodes optional.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14083
2023-02-25 20:36:30 +00:00
Jeff Young
2a79a453ec
Get rid of m_sortedSymbolPinList in favour of a properly scoped variable.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14083
2023-02-25 20:36:11 +00:00
Jeff Young
77ed53ab25
Nullptr safety.
2023-02-25 18:33:32 +00:00
jean-pierre charras
49a9fe38a0
Fix a compil warning
2023-02-25 19:06:46 +01:00
Jeff Young
4b427b2d0c
Add second instance of "don't mess up user formatting" fix.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13989
2023-02-25 16:31:16 +00:00
Jeff Young
2e5bf0210a
Clear model name when switching to internal model.
...
Also fixes a bug to ensure that a modelLine gets written when using
an internal model.
Fixes https://gitlab.com/kicad/code/kicad/issues/14083
2023-02-25 15:22:20 +00:00
Jeff Young
9a0aeb4344
Adjust AC-small-signal plot names when saving placeholders.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14016
2023-02-25 13:26:33 +00:00
Jeff Young
ee956673b1
Respect readOnly cells in GRID_TRICKS.
...
Also fixes setting colors in the signals grid as it allows us to make
it editable again.
Fixes https://gitlab.com/kicad/code/kicad/issues/14079
2023-02-25 11:02:12 +00:00
JamesJCode
9dca70a773
Eeschema netlist output: Propagate NC across hierarchical schematics
...
Fixes #12580
Additionally does not export no_connect netlist annotation on pins
which are both connected to another pin and a NC item, unless all
connected pins are stacked at the symbol level.
Adds testing of pin types to netlist QA unit tests.
2023-02-25 00:02:46 +00:00
Jeff Young
2b96161d0e
Log new undo record at the start of Change Symbols.
...
Also fixes a bug where the "screen" variable was used with stale
data.
Fixes https://gitlab.com/kicad/code/kicad/issues/14061
2023-02-24 22:41:46 +00:00
Jeff Young
5a12e5ee76
Only write included models if they have overridden parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13953
2023-02-24 20:31:35 +00:00
Jeff Young
c188318174
Change strategy for committing values from SIM_MODEL propGrid.
...
Note that the PCB editor's propGrid doesn't seem to need this workaround,
but I haven't yet figured out what's different between it and the sim model
propGrid.
Fixes https://gitlab.com/kicad/code/kicad/issues/13852
2023-02-24 14:22:00 +00:00
Jeff Young
200a06a677
Cleanup some dead code, and add a potentially needed fix for non-Mac.
...
(The Mac bug is fixed in 4e5b1da81fce7cd9ffedaec878ed07bfcfff4fe2 in
our wxWidgets fork.)
2023-02-24 12:44:55 +00:00
Jeff Young
8059edff0e
Don't mess up user formatting if eval'ing didn't actually change value.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13989
2023-02-24 12:44:55 +00:00
Jeff Young
71df3f9edb
Don't allow extra text in Sim.* fields.
...
(In particular, the field name.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13996
2023-02-24 12:44:55 +00:00
Jeff Young
be54ab396e
Move selection shadows to overlay.
...
This change doesn't appear to have any effect, but I think it's
correct.
2023-02-24 12:44:55 +00:00
Jeff Young
ddf8d115c4
Handle de-highlighting items outside selection when selection changes.
...
Also adds selection cleared event to handled events.
And a small performance boost to not scan items for selection changes
when find is not seleciton-based.
2023-02-24 12:44:55 +00:00
jean-pierre charras
2b3eb0b522
fix minor compil warnings
2023-02-23 09:50:28 +01:00
Jeff Young
4917abe655
Make sure whitespace at end of command doesn't mess up detection.
...
(Fixes the failing test case.)
2023-02-22 23:29:13 +00:00
aris-kimi
22bca5c2a0
Disable link maps by default and fix compile issue with lld linker
...
The link maps were actually disabled by default before
912f1d5cec
, and required KICAD_MAKE_LINK_MAPS
to be provided to enable them. So switch back to disabling them by
default.
Also, The lld linker is unable to accept a single dash cref option, while
ld and gold can. Instead, use the double dash version that is supported
by all three.
xref: https://github.com/llvm/llvm-project/issues/60932
Co-authored-by: aris-kimi <aris_kimi@hotmail.com>
Co-authored-by: Ian McInerney <ian.s.mcinerney@ieee.org>
2023-02-22 23:18:36 +00:00
Stefan
04165b22d1
Altium Schematic Import: add note that blanket's are not yet supported
2023-02-22 23:10:40 +00:00
Fabien Corona
cdbb868198
sim - allow users to delete several measurements at once
2023-02-22 19:27:20 +01:00
Fabien Corona
9006f38e70
sim - Don't allow user to delete the type-in measure entry
2023-02-22 19:27:20 +01:00
Fabien Corona
1170fb2e18
sim - don't create measurement duplicates
2023-02-22 19:27:20 +01:00
Fabien Corona
aa006e9b91
sim - allow to add several measurements at once.
2023-02-22 19:27:20 +01:00
Mike Williams
959a19a461
Power Symbols: automatically fix mismatched legacy symbols, add tests
...
Has netlist generation test for legacy power symbols, and test for
fixing legacy mismatched power symbol text fields and invisible pin names.
2023-02-22 18:01:47 +00:00
Mike Williams
5995e0e516
Power Symbols: make value editable, use as netname
...
QA: update tests for editable power symbol values
2023-02-22 18:01:47 +00:00
Mike Williams
ca5004b1d2
Power Symbols: rename IsPowerConnection to IsGlobalPower
...
It's kind of confusing because we have power type pins, and pins that
make global power nets as part of power symbols.
2023-02-22 18:01:47 +00:00
Mike Williams
dd461d6ad6
Power Symbols: drop requirement for invisible pins
2023-02-22 18:01:47 +00:00
Jeff Young
6fcae34f6b
Clear operating points on all sim types.
...
(We'll fill them back in if we have data.)
Also improves handling when a plot tab is closed.
Also fixes dirtying of the view for op changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/13990
2023-02-22 15:54:18 +00:00
Jeff Young
fe2679d965
Implement default levels for JFETs, MOSFETs and MESFETs.
2023-02-22 15:54:18 +00:00
Fabien Corona
ae3a5c1c5f
sim - set the dialog list as read only
2023-02-22 15:54:49 +01:00
Fabien Corona
f2419e9e9b
sim - Fix power graphs
2023-02-22 13:18:12 +01:00
Jeff Young
cb71ea872b
Don't allow 0 field text size.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13987
2023-02-22 11:40:49 +00:00
Fabien Corona
e24ddd0be4
ADDED: Measurement on power signals and integrals
...
Fixes #14028
2023-02-22 12:11:09 +01:00
Jeff Young
f828d50cb0
Better processing of single-empty-row rule for measurements grid.
2023-02-22 10:45:27 +00:00
Jeff Young
5fa7be0320
Update signals after running a sim.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14016
2023-02-22 10:45:27 +00:00
Jeff Young
a126d961d8
More dead code removal and a bit of formatting and const& for strings.
2023-02-22 10:45:27 +00:00
Jeff Young
68fe146861
Remove most of SIM_VALUE in favour of good old wxString.
...
This allows us to save the user's intent, including units, formatting,
and crucially variable references.
2023-02-22 10:45:27 +00:00
Jeff Young
29f21cdde6
Terminology and more dead code.
2023-02-22 10:45:27 +00:00
Jeff Young
90adc26b73
Remove dead and redundant code.
2023-02-22 10:45:27 +00:00
Chris Morgan
80b55f5980
Symbol editor: simpler creation of a new derived symbol
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13407
2023-02-22 01:49:46 +00:00
Ian McInerney
912f1d5cec
Modernize setting link map linker flags
2023-02-22 01:44:06 +00:00
Ian McInerney
bcb93e9aa7
Modernize setting of compiler definitions in CMake
...
add_compile_definitions was added in 3.12, and our minimum is now
greater than that.
2023-02-22 01:44:06 +00:00
Marek Roszko
39e69a3d29
Fix up handling of font names available in multiple names
...
ttf fonts can declare multiple language names. Many by default opt to just declare one and not tag it any particular language.
However, there are CJK languages that typically leverage this function the most. They'll tag both a "en" and a cjk lang family name in CJK characters.
To be as user friendly as possible, we need to display said fonts in the CJK languages if KiCad to set to such a locale.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14011
2023-02-21 20:26:41 -05:00
aris-kimi
543a3317b4
Fix typo
2023-02-21 18:01:13 +00:00
Jeff Young
761b59da90
Read and write user-defined signals and measurements to workbook file.
2023-02-21 13:32:01 +00:00
Jeff Young
7fd707952b
Easier editing of new sim measurements.
2023-02-21 13:32:01 +00:00
Jeff Young
6fcb95b24e
ADDED user-defined signals.
2023-02-21 13:32:01 +00:00
Jeff Young
f6fcae479c
Don't generate error messages fetching sim data we know isn't there.
2023-02-21 13:32:01 +00:00
jean-pierre charras
b05b33a9ff
Fix a compil issue with gcc12.2 and Coverity warnings.
2023-02-21 11:54:38 +01:00
Fabien Corona
3751b250c6
sim - fix a QA case for XSPICE
2023-02-20 19:40:59 +01:00
Fabien Corona
869447fedd
sim - ngspice does not support .probe p(Adevice)
...
Fixes #13979
2023-02-20 19:30:45 +01:00
Fabien Corona
2a3b70b7eb
sim - Remember the option to save powers
...
Fixes #13978
2023-02-20 19:30:45 +01:00
jean-pierre charras
31be74b8b3
Fix a few Coverity warnings
2023-02-20 09:25:01 +01:00
Marek Roszko
d55e2049e5
Silence some warnings with static_casts
2023-02-18 23:36:50 -05:00
Marek Roszko
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05:00
Marek Roszko
dffd2da8c8
Fix the shared_lock added and micro-opt the reindex
2023-02-18 11:28:19 -05:00
Fabien Corona
facd50f4fd
sim - missing assignment
2023-02-18 15:36:47 +00:00
jean-pierre charras
07f79208b9
Minor fixes: Coverity and compil minor warnings.
2023-02-18 13:04:43 +01:00
Fabien Corona
5482bc2905
sim - Check FindParam() results before using them
2023-02-18 12:54:55 +01:00
Fabien Corona
f5902dad28
sim - don't write dc parameter twice
2023-02-18 10:07:29 +00:00
Fabien Corona
fa0cc09917
sim - allow sources that are both AC and TRAN
2023-02-18 02:17:48 +00:00
Fabien Corona
39a1b14a0f
sim: VSIN - allow user to specify a phase
...
TD is not the same as PHASE.
TD is the delay before the source turns on.
PHASE is ... the phase
If only TD is set, the signal starts later, but the phase is still 0 when compared to the t=0 of the simulation.
2023-02-18 00:38:46 +00:00
qu1ck
2975f53647
PCM: auto reload global libs after dialog is run
...
This adds Reset() method to KIFACE to reload global libs stored in
global static vars.
Also refactors some lib reload code in various frames to have
common MAIL_RELOAD_LIB handler.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12500
2023-02-17 17:24:32 +00:00
Jon Evans
fc68b8d71a
Make selected background layers translucent
...
We can't render them underneath other objects, but we can at least
make it possible to see other objects through them.
2023-02-16 22:45:29 -05:00
Alex
bd4758e4df
Keep image sizes when loading/saving 7.0- schematic file formats.
...
Previously, images were assumed to have 300 PPI density when loading from
schematic, but not after initial placement.
2023-02-17 03:53:44 +03:00
Alex
ecb28ddf1c
Prevent ghost image after canceling bitmap placement.
2023-02-17 03:53:44 +03:00
Jeff Young
8b1318c92f
Update associated data structures after changing trace colour.
...
Also removes likely benign but never-the-less useless grid even processing
during rebuilding of the grids.
Fixes https://gitlab.com/kicad/code/kicad/issues/13956
2023-02-17 00:47:01 +00:00
Paweł Płóciennik
614755f24e
Dialogs autocompletion with backspace support.
2023-02-16 23:28:27 +00:00
Jon Evans
053d20e13d
Fix selection overlay being wiped when changing sheets
2023-02-16 17:14:08 -05:00
Jeff Young
d5e50b70bb
Display a generic "Value" column label when there are no cursors.
2023-02-16 16:55:26 +00:00
Jeff Young
f50d114b27
Push gain & phase for .probe statements in AC analysis.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13941
2023-02-16 16:14:25 +00:00
Jon Evans
ec2fc161e1
Handle another case where schematic view was being cleared
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13944
2023-02-16 08:25:18 -05:00
Jeff Young
5967ab9a4d
Don't allow SCH_LABEL_LOCATE_ANY_T to steal SCH_LABEL_LOCATE_WIRE_T's items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13936
2023-02-16 13:21:00 +00:00
Jon Evans
955a5a13eb
Symbol editor: stop removing overlay from view
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13944
2023-02-16 08:17:12 -05:00
Jeff Young
95232edd0d
Do a better job of looking for .probe commands in directives.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13941
2023-02-16 12:42:54 +00:00
Jeff Young
d8a4f9821e
Smarten regex to accept ':' in signal names.
...
(In fact, just accept anything up to the closing paren.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13942
2023-02-16 12:20:55 +00:00
Jon Evans
0f18a36f8f
Fix handling of selection overlay in schematic editor
...
We weren't actually using the overlay group at all
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11142
2023-02-15 21:16:58 -05:00
Seth Hillbrand
a761b0e860
Force DNP X to foreground
2023-02-15 11:35:24 -08:00
Jeff Young
c618bb7046
Correctly netlist a voltage source with both AC and DC values.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13912
2023-02-15 14:50:31 +00:00
Jon Evans
e8a88411ea
Set PPI properly in schematic bitmaps, too
2023-02-14 21:37:00 -05:00
Jeff Young
64f1808d60
Don't use the just-in-time model resolver when updating the dialog.
...
If it changes in the middle it will leave you in a world of hurt.
Also don't update the library after a loss-of-focus unless the path
really changed.
Fixes https://gitlab.com/kicad/code/kicad/issues/13869
Fixes https://gitlab.com/kicad/code/kicad/issues/13854
2023-02-15 00:31:04 +00:00
Jon Evans
29c4482bc8
Symbol chooser: save UI settings even when canceled
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13903
2023-02-14 18:26:29 -05:00
Jon Evans
0913552f84
Handle custom columns in symbol tree synchronizing adapter
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13907
2023-02-14 18:26:29 -05:00
aris-kimi
dca1281263
Fix some typos
2023-02-14 23:47:05 +02:00
Mike Williams
18df4442bc
Schematic: Find and Replace on Selection
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9293
2023-02-14 14:04:59 -05:00
Seth Hillbrand
9f8b25a0b0
Don't desaturate the selection shadow
...
Selection shadows are helpful when showing which elements are selected
and there is no benefit (and some downside) to having their color
removed.
Fixes https://gitlab.com/kicad/code/kicad/issues/13878
2023-02-14 10:22:05 -08:00
Jeff Young
50eaba4211
Performance fix for switching pages.
2023-02-14 17:14:31 +00:00
Jeff Young
03484aedbc
Workaround wxWidgets enforced min pen width by using transparent pen.
...
Also fixes some bugs in our shape printing code when a border is not
specified but a fill is.
Fixes https://gitlab.com/kicad/code/kicad/issues/13891
2023-02-14 14:44:04 +00:00
Mike Williams
76fb598ac2
Annotate: cleanup to use enum values instead of numbers
2023-02-14 08:21:43 -05:00
Mike Williams
4b07e3e413
Common Actions: Find Previous
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8968
2023-02-14 08:21:37 -05:00
Mike Williams
3e715c99c8
Swap: take S key now that it's available
2023-02-14 07:42:06 -05:00
Jeff Young
9ce18dffdd
Better startup experience for simulator.
...
Pre-load signals list (and plot panel if there is an schText simulation
command).
Also fixes a bug where the workbook was getting dirtied on open because
the events would fire after the dirty flag had been cleared.
2023-02-14 11:59:17 +00:00
Jeff Young
be0a9e2738
Handle SPICE prefixes for operating point data.
...
Also adjusts the min-pin lenght as some symbols have very short pins.
2023-02-13 18:38:43 +00:00
Jeff Young
b53e0a85b8
Don't display OP overlay when we have no data.
...
Also fixes a copy-pasta bug with settings (and adds a fixup for those
already bitten by it).
Fixes https://gitlab.com/kicad/code/kicad/issues/13881
2023-02-13 18:08:53 +00:00
Jeff Young
8bab429c7d
Account for border when calculating text margin for text boxes.
...
Also fixes some unnoticed issues with the textbox dialogs (probably
dating from the move to wxWidgets 3.2).
Fixes https://gitlab.com/kicad/code/kicad/issues/13877
2023-02-13 17:08:29 +00:00
Jeff Young
d6bef19811
Don't confuse .OP with .OPTIONS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13849
2023-02-13 13:33:26 +00:00
Jeff Young
e6d45e27e8
Fix layout issue in IBIS fields.
2023-02-13 12:43:32 +00:00
Jeff Young
df00585a55
ReadDataFields must be a separate step from Create.
...
Create() is done without execption processing, while ReadDataFields
should have exception processing.
(This also fixes a case where exception processing on ReadDataFields
was missing.)
Also fixes a bug where the pinSelect menu wasn't checked for -1 before
fetching.
Fixes https://gitlab.com/kicad/code/kicad/issues/13856
2023-02-13 12:43:25 +00:00
Marek Roszko
2cc3d8e9bc
Prevent a crash when a spice SW_I lacks two pin net names
...
Fixes KICAD-5D
2023-02-12 22:26:19 -05:00
Jeff Young
74eb587291
Better sorting within sections (voltage, current, power).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13846
2023-02-12 23:16:45 +00:00
Marek Roszko
4665823089
Turn on and fix MSVC compliance mode issues
...
We want /permissive- to enable debug performance improvements in MSVC 17.5+.
This flag is also default under C++20 so we'll have to deal with these compile issues anyway at some point in the future.
In particular, MSVC becomes pedantic about ternary types.
See https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170#ambiguous-conditional-operator-arguments
MSFT cites https://cplusplus.github.io/CWG/issues/1805.html
2023-02-12 16:30:37 -05:00
Graham Keeth
6af3dadaee
Fix SPICE pins for BJTs and MESFETs
...
- MESFETs don't have a substrate/bulk pin
- BJTs have a substrate pin, and HICUM/VBIC have TJ
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13848
2023-02-12 21:20:02 +00:00
Jeff Young
a22964a977
Prepend correct SPICE prefix when necessary for plotting currents.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13850
2023-02-12 21:17:45 +00:00
Jeff Young
1e756dbdd8
Save cursor positions in sim workbook.
2023-02-12 20:40:23 +00:00
Jeff Young
83dd06e5d1
Allow opening of workbook when simulation frame is opened.
...
This involved splitting creation of traces from setting of trace
data.
Also renamed SIM_WORKBOOK to SIM_NOTEBOOK. This class is a subclass
of wxAiuNotebook and represents the collection of simulation plot tabs.
It is NOT the same thing as a simulation workbook, which contains other
stuff such as measurements, plotted signals, colours, etc.
This also removes a bunch of "friend" declarations.
2023-02-12 20:40:23 +00:00
Jeff Young
78746b77c6
Save trace colors and cursor value formatting in sim workbook.
2023-02-12 20:40:23 +00:00
Jeff Young
84c72b087c
Simplify (and fix) logic for starting new simulations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13853
2023-02-12 20:40:23 +00:00
jean-pierre charras
1fb2d138b4
Fix a compil issue.
2023-02-12 09:16:42 +01:00
Jeff Young
9d3a3d705d
ADDED simulation measurements.
2023-02-11 21:11:07 +00:00
Jeff Young
e5176ff4d6
ADDED power dissipation plotting and cursors.
...
Also fixes a bug so that voltages, currents and power dissipations are
only probed if the flag is set -- this keeps ngspice from throwing an
error if you probe something twice (for instance, if you have .probe
commands in text and turn off the auto-probing).
2023-02-11 21:11:07 +00:00
Jeff Young
bc108023b3
ADDED operating point overlay for SCH_EDIT_FRAME.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11253
2023-02-11 21:11:07 +00:00
Jeff Young
2a5bb71fbd
ADDED operating point text variables for labels and symbols.
...
ADDED formatting for cursors and operationg points
Also fixes a bunch of bugs to make the new cursors work with .ac sims.
Fixes https://gitlab.com/kicad/code/kicad/issues/11253
Fixes https://gitlab.com/kicad/code/kicad/issues/6965
2023-02-11 21:11:07 +00:00
Jeff Young
b3ffbd6258
Don't include unconnected nets in signals list.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4961
2023-02-11 21:11:07 +00:00
Jeff Young
7e6c68b1d1
Remove (probably) redundant code.
2023-02-11 21:11:07 +00:00
Jeff Young
39d35a8bec
Better cursor feedback for plot window.
2023-02-11 21:11:07 +00:00
Jeff Young
9a99106981
Cleanup.
2023-02-11 21:11:07 +00:00
Jeff Young
f0bd25b397
ADDED use-settable simulation trace colors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2536
2023-02-11 21:11:07 +00:00
Jeff Young
09822c7f18
ADDED direct access to signals & cursors.
...
ADDED differential cursors.
Fixes https://gitlab.com/kicad/code/kicad/issues/4447
Fixes https://gitlab.com/kicad/code/kicad/issues/6221
2023-02-11 21:11:07 +00:00
Jeff Young
95fb3825bd
Fix some strings from V7's string freeze.
2023-02-11 21:11:07 +00:00
Jeff Young
6bc89ee180
Don't disable run when there's no command: just ask for a command.
2023-02-11 21:11:07 +00:00
Jeff Young
7d7a48070e
Separate error messages when sim model and project paths are the same.
2023-02-11 21:11:07 +00:00
Jeff Young
a1a1a49729
On-the-fly language updates for simulator window.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13357
2023-02-11 21:11:07 +00:00
Jeff Young
b000d68def
Move simulator to tool framework.
2023-02-11 21:11:07 +00:00
Jeff Young
02e14b45ee
Better predictability and error reporting for running external SPICE.
2023-02-11 21:11:07 +00:00
Jeff Young
946e0a4b98
ADDED support for e-series based tuning.
2023-02-11 21:11:07 +00:00
Jeff Young
7bc79c17d4
Make sure screen RTrees are updated when changing bounding boxes.
2023-02-11 20:43:00 +00:00
Jeff Young
9ce5978c3d
Bug fixes for LIB_PIN boundbox generation.
2023-02-11 20:43:00 +00:00
Jeff Young
2e9ed67e05
Don't dirty connectivity when moving non-reference SCH_FIELD.
2023-02-11 20:43:00 +00:00
Jon Evans
a6776edc26
Try to resolve worksheet filename before saving it
...
The new code was added to handle saving imported worksheets,
but it is possible to specify relative paths to worksheets
not only to the project folder but also to the global
templates directories.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13834
2023-02-11 10:33:23 -05:00
Alex
93020cf78f
Set select_pin_selects_symbol to false by default.
2023-02-11 16:51:55 +03:00
Alex
81a55c42a1
Fix unintentional string change in IBIS parser.
2023-02-11 02:19:06 +03:00
Paweł Płóciennik
06e3e63b96
Eeschema: text properties: reference field autocomplete ignores first char.
2023-02-10 21:56:03 +00:00
Marek Roszko
c22fb390ec
Set the text proeprties grid bag to avoid reserving space for hidden cells
2023-02-09 23:04:51 -05:00
Jeff Young
d4ca54a798
Handle global label offset when plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13301
2023-02-09 18:02:21 +00:00
jean-pierre charras
3d23d0e16a
Fix compatibility with wxWidgets 3.0.5
...
Fixes #13808
https://gitlab.com/kicad/code/kicad/issues/13808
2023-02-07 21:09:03 +01:00
Jeff Young
77d4704b45
Don't return a lib-tree symbol if the lib-tree is hidden.
2023-02-07 15:53:14 +00:00
Chris Morgan
e14f0848fa
SCH_EDITOR_CONTROL::Paste() - Adjust refdes behavior to match when creating new symbols
...
Pass 'false' as aStartAtCurrent to ReannotateByOptions(). Causes Pasing() symbols to start at the first available refdes after the currently
configured annotate start number, m_annotateStartNum.
Fixes #13342
2023-02-06 14:05:04 +00:00
jean-pierre charras
4065e413ea
Ibis parser: do not report activity when there are no errors.
...
The dialog to add a library expects no message when there are no error.
Fixes #13794
https://gitlab.com/kicad/code/kicad/issues/13794
2023-02-06 12:55:52 +01:00
jean-pierre charras
92724ff09f
Coding style fix.
2023-02-06 07:59:17 +01:00
Jeff Young
3ecd6ec186
Fix variable updating in SCH_FIELDs (which are not directly in the view).
2023-02-05 20:51:03 +00:00
jean-pierre charras
fb225acefc
Eeschema, ExportSymbolsToLibrary(): fix not working replace library.
...
When exporting symbols of the schematic to a new library, if this library
exists the dialog ask for overwriting it, but it did not work.
Fixed now.
2023-02-05 18:41:58 +01:00
Wayne Stambaugh
baeeeec492
Fix broken update symbol from library.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13782
2023-02-05 10:36:18 -05:00
Jeff Young
d1f6ba77e8
Better error reporting, and don't infer models with library references.
2023-02-04 20:55:52 +00:00
Jeff Young
9be872a85a
Better bounds checking for DIALOG_SIM_MODEL::curModel().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13767
2023-02-04 20:16:50 +00:00
Jeff Young
56a1cdb4dc
Allow a limited set of un-braced expressions in SPICE model values.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13768
2023-02-04 19:49:48 +00:00
Jeff Young
f588da2bef
Bounds checking for DIALOG_SIM_MODEL::curModel().
2023-02-04 19:17:13 +00:00
Wayne Stambaugh
52b07b8bac
Fix duplicate symbol value fields when importing Eagle schematic.
...
Don't use the value field when adding Eagle part attributes to a symbol.
This issue was cause by using a mandatory symbol field ID instead of
using the next available field ID when adding new fields to as symbol.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13468
2023-02-04 12:37:41 -05:00
jean-pierre charras
6b5eeeb861
Preferences dialog: try to reduce its width, in non English languages.
...
Remove some useless spacers, and do not force some widgets to have a to
large size (by removing empty areas).
Work in progress: one panel is still too big.
2023-02-04 14:36:14 +01:00
Jeff Young
e8397a33bb
Refrain from copying SPICE_INFO.
2023-02-04 00:05:50 +00:00
Graham Keeth
a51dc8c9de
HiSIM_HV MOSFET models are *not* the default type
...
The ngspice manual does not indicate that there is any default
model type. This change ensures we get a `level=xy` written out to the
.model line when we select a HiSIM_HV model.
2023-02-04 00:03:25 +00:00
Graham Keeth
5abe1a201b
spice: generate .model lines for all device types
...
- generate .model lines in spice netlist for all device types that need
one
- add "level=<n>" to .model line for non-default model levels. This is
necessary to allow more sophisticated models to be used, and some
devices *always* need a level specified (e.g. JFETs)
- add "version=<n>" to .model line for models that have multiple
versions available (AFAIK only affects HiSIM_HV MOSFET models)
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13775
2023-02-04 00:03:25 +00:00
Graham Keeth
41c4ee2245
ngspice requires J prefix for JFETs in netlist
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13774
2023-02-04 00:03:25 +00:00
Jeff Young
ed5fb2769f
Allow more characters (in particular '_') in code model names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13769
2023-02-03 23:49:53 +00:00
Jeff Young
71b8a2112c
Coverty fixes.
2023-02-03 15:09:24 +00:00
Wayne Stambaugh
a94d8a7e78
Use references instead of copies in map pair for loops.
2023-02-03 10:00:09 -05:00
Wayne Stambaugh
9e03a71b44
Fix broken value and footprint field text values.
...
Only update value and footprint fields from instance data if it's not
empty. These fields were not always stored in the instance data so
loading them from instance data that does not contain them will clear
the fields.
https://gitlab.com/kicad/code/kicad/-/issues/13735
2023-02-03 09:48:18 -05:00
jean-pierre charras
8ce0a84ca7
Fix compatibility with older wxWidgets versions.
...
Fix also a compil warning
2023-02-03 08:24:38 +01:00
Graham Keeth
9b9ebebb2d
Add missing autocomplete for FILENAME, PROJECTNAME
2023-02-03 00:10:55 +00:00
Wayne Stambaugh
c88c4e1200
Fix schematic update library symbols issues.
...
Rather than update library symbols one at a time, queue them up by
schematic symbol to prevent multiple updates to the same symbol in
complex hierarchies. This also removes all of the library symbols
first which will clear out all of the library symbol variants that
were created by modifying library symbols in place and/or changes to
the symbol in the library.
Don't add new variant library symbol if an equivalent variant already
exists in the schematic local cache. This prevents duplicate library
symbols from being added to the local cache when the first variant in
the cache does not match that of the symbol being added.
2023-02-02 15:54:24 -05:00
Jeff Young
8b03c093f9
Move potentiometer pin model to r0, wiper, r1, and remove flipping code.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13741
2023-02-02 16:22:13 +00:00
Jeff Young
ab0c4dd292
Must do pin swap in model pins, not item pins.
...
Item pins might not be in the same order.
Fixes https://gitlab.com/kicad/code/kicad/issues/13741
2023-02-02 12:44:55 +00:00
JamesJCode
71002dce28
Eeschema: Fix export symbols to new library
...
Exporting symbols to new library now saves the library and forces
update of symbol links
Fixes #13494
2023-02-02 11:31:18 +00:00
Graham Keeth
4a0a5f2265
Fix backwards display of ${DNP}
...
${DNP} displayed "DNP" when DNP was cleared, and "" when DNP was set
2023-02-01 22:40:58 +00:00
vinsfortunato
5b9b555fdf
eeschema: fix sheet symbol pins changing side when resizing
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13719
2023-02-01 15:53:59 +00:00
Mike Williams
ab954456ee
Symbol Fields Table: don't leave Qty editable on error
2023-02-01 10:19:23 -05:00
Jeff Young
4c18dfebb9
Add Show Name column to FormBuilder files.
2023-02-01 12:36:27 +00:00
Jeff Young
b4a75cd1d5
Write out a diode .model for built-in diodes.
2023-02-01 12:36:27 +00:00
jean-pierre charras
29fd1b45d6
Ensure the DATASHEET field value only is used to know the datasheet URL.
...
previously, if the field option "show name" is set, the field name was
added to the URL, that broke it.
Fixes #13729
https://gitlab.com/kicad/code/kicad/issues/13729
2023-02-01 11:37:07 +01:00
Alex
56f900b14f
Remove errant wxTextCtrl style flags.
2023-02-01 06:22:32 +03:00
Mike Williams
29a4e2c7fe
Schematic: fix reversed tooltips for navigation buttons
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13707
2023-01-31 13:05:37 -05:00
JamesJCode
8590745e9c
Allow simulation probe of junctions
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13712
2023-01-30 23:15:55 +00:00
Seth Hillbrand
418f8e6f14
Re-add outline shadows to stroke fonts
...
If we draw using stroke fonts, we can still use the legacy shadow
routine to show nice highlights
2023-01-30 22:42:26 +00:00
Jeff Young
123467c8dd
Don't throw up debug message when signal is deleted.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13711
2023-01-30 21:32:18 +00:00
Jeff Young
c939b1ef76
Followed-by-3-digits doesn't guarantee a thousands separator.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13708
2023-01-30 21:22:48 +00:00
vinsfortunato
3d52115ae7
eeschema: focus eeschema on symbol when its row is selected in the symbol fields table
2023-01-30 15:12:57 +00:00
Mike Williams
207b8d3273
Symbol Fields Table: fix duplicated fields
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13687
2023-01-30 09:29:47 -05:00
Marek Roszko
f28339ded8
Hookup the skip drawingsheet arg
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13703
2023-01-30 07:50:16 -05:00
jean-pierre charras
241a283b03
DIALOG_TEXT_PROPERTIES_BASE: reduce the window min width.
2023-01-30 13:21:38 +01:00
Marek Roszko
fb57eac5f9
Add \n to report for cli
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13704
2023-01-30 07:11:36 -05:00
vinsfortunato
12101b6cad
eeschema: use correct sheet title block for plotting
...
Fixes: https://gitlab.com/kicad/code/kicad/issues/13690
2023-01-29 21:21:31 +00:00
vinsfortunato
586f22c2f7
eeschema: Focus eeschema on symbol when symbol fields table cell is selected with keyboard
...
Fixes: https://gitlab.com/kicad/code/kicad/issues/13688
2023-01-29 19:42:28 +00:00
JamesJCode
413169782a
Add SIM_ENABLE_FIELD column name when excluding symbol from simulation
...
Fixes #13691
2023-01-29 09:48:05 +00:00
Wayne Stambaugh
68decdd4f2
Fix static event table derived object definitions.
2023-01-28 14:10:06 -05:00
Ian McInerney
51c8f2c119
Fix library sort order in library viewers
...
The lib table returns a properly sorted list of libraries already, which
we just iterate through. A std::set is a sorted collection, but uses a
different sorting function than the lib table, so appending to a
std::set breaks the initial sorting that was done already.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13530
2023-01-27 23:39:50 +00:00
Ian McInerney
a78e5b0141
Hide empty sizer in directive label dialog
...
Possibly fixes: https://gitlab.com/kicad/code/kicad/-/issues/13675
2023-01-27 22:25:33 +00:00
Ian McInerney
a91d2c21b8
Fix missing quotation mark in BOM plugin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13685
2023-01-27 21:46:53 +00:00
Vincenzo Fortunato
f4e22cdcdb
altium: import component image only if part id matches
2023-01-27 16:28:38 +00:00
aris-kimi
b72cc23a00
Change one translatable "eeschema" string to "Schematic Editor"
2023-01-27 16:14:09 +00:00
Jeff Young
e5749d0cda
Position intersheet refs in imported Eagle schematics.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13667
2023-01-27 13:59:11 +00:00
Alex
a872ed11bf
Fix paths for Copy default global library table.
2023-01-27 09:24:52 +03:00
vinsfortunato
39e85015c2
Preserve pins positions when resizing sheet
2023-01-26 20:56:37 +01:00
vinsfortunato
cf1d17b566
Fix unexpected resizing behaviour when using top left edit corner
2023-01-26 20:54:51 +01:00
vinsfortunato
843600cb7e
Fix erratical sheet pins behavior when resizing
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13658
2023-01-26 20:54:51 +01:00
Gary Kim
0e939993bc
Only expand when opening alternate pin definitions
...
When opening alternate pin definitions collapsible
pane, only increase the window size to accommodate
the pane.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13596
2023-01-26 17:30:38 +00:00
Mike Williams
96e9cd6ecc
Schematic: added drag wires should copy stroke
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13666
2023-01-25 12:34:40 -05:00
Jeff Young
51293858b3
Allow empty lib tables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13653
2023-01-24 23:45:55 +00:00
JamesJCode
f683df0d1f
Minor fix to ERC dialog
...
Correctly displays ERC aux item description when tied to specific
sheet context
2023-01-24 18:44:47 +00:00
Seth Hillbrand
43e4797d4d
Don't double-tap Connectivity Recalculate
...
SCH_EDIT_FRAME::RecalculateConnections() calls SchematicCleanup and then
resets the connectivity graph and recalculates it. OnModify() also
calls RecalculateConnections(). For long calculation schematics, this
can impact usability
2023-01-24 10:30:52 -08:00
Seth Hillbrand
420eceecbb
Simplify name caching
...
We don't need two functions to get driver names. The map should be
mutable to allow updates when needed. C++17 gives some extra syntactic
sugar for map manipulation
2023-01-24 10:30:52 -08:00
Wayne Stambaugh
a83313c4ab
Fix another build warning introduced by recent ERC changes.
2023-01-24 12:21:52 -05:00
Wayne Stambaugh
5638122d3d
Fix build warnings introduced by recent ERC changes.
2023-01-24 10:42:41 -05:00
JamesJCode
fef3274e8e
Eeschema: ERC checks handle connections between a common sub-circuit
...
Fixes #10926
Contains the following changes:
- Adds a new ERC_SCH_PIN_CONTEXT class which is used to provide deterministic
comparison between items causing ERC violations (e.g. pins) when associated
with a SCH_SHEET_PATH context.
- Adds association of SCH_SHEET_PATHs for ERC_ITEMs and the sub-schematic items
which caused an ERC violation. This allows correct display of markers on the
sheets of interest only, and allows correct naming resolution and cross-probing
from the ERC dialog.
- Adds a new ERC_TREE_MODEL class, derived from RC_TREE_MODEL, which correctly
resolves component references across heirarchical sheets using the associated
SCH_SHEET_PATHs. This allows sheet-specific component references to be displayed
correctly in the ERC results tree.
- Updates SCH_MARKER to only draw sheet-specific markers on the sheet causing
an ERC violation.
- Increments the schematic file version.
- When loading a schematic with legacy ERC exclusions, discards those of type
ERCE_PIN_TO_PIN_WARNING, ERCE_PIN_TO_PIN_ERROR, ERCE_HIERACHICAL_LABEL, and
ERCE_DIFFERENT_UNIT_NET as there is no safe way to automatically infer the
information which is now stored with these exclusions (sheet paths for error
location and related items). Requiring users to (once) re-add exclusions is
preferable to silently incorrectly matching new ERC issues to legacy exclusions.
2023-01-24 14:11:01 +00:00
Jeff Young
7a113a6a44
Fix misleading label (it filters label fields and other sheet fields as well).
2023-01-24 00:07:40 +00:00
Jeff Young
220c5a259b
Refresh schematic's copy of template fieldnames after preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13203
2023-01-24 00:07:40 +00:00
Jeff Young
4de64b607a
Finish implementation of export_current_sheet_as_root.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13643
2023-01-24 00:07:40 +00:00
Jeff Young
25783f3b7e
Add label fields to Edit Text and Graphics Properties dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13632
2023-01-24 00:07:40 +00:00
Jeff Young
4e50c5313d
More safety for array access.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13583
2023-01-24 00:07:40 +00:00
Graham Keeth
e4a8b9e76d
subckt export: add missing tristate pintype
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13644
2023-01-23 23:26:48 +00:00
Seth Hillbrand
00f93db2ff
Convert wide chars before reading model
...
The PEGTL parser used by KiCad for SPICE models only handles ASCII
characters. Despite the docs stating that you can, in theory, parse a
UTF-8 character by reading the base string, in pratice this does not
work as the UTF-8 string is represented by unsigned chars and the PEGTL
string is based on signed char.
To work around this, we need to convert micro and mu to the ASCII 'u'
equivalent
Fixes https://gitlab.com/kicad/code/kicad/issues/13642
2023-01-23 15:23:41 -08:00
Seth Hillbrand
442ee52905
Add versioning to lib tables
...
Sets lib table version to allow easier migration between versions
2023-01-23 22:21:12 +00:00
Seth Hillbrand
efe12f2da5
Cleanup variable naming
...
Also remove ancient/unused code for lazy resolving
2023-01-23 22:21:12 +00:00
Seth Hillbrand
a9ed47f06c
Update KICAD6->KICAD7
2023-01-23 22:21:12 +00:00
Mike Williams
b39aae6a93
Annotation: don't select hover item
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13352
2023-01-23 16:50:45 -05:00
Seth Hillbrand
9861ed1a5f
Don't special case power symbol re-annotation
...
When the designer asks to reset annotations, we reset all annotations
including power symbols. This may create additional churn in the files
but only when requested and is useful to fix schematic errors
Fixes https://gitlab.com/kicad/code/kicad/issues/13138
2023-01-23 13:19:01 -08:00
Seth Hillbrand
67c703e9e2
Fix LIB_TEXT plotting alignment
...
LIB_TEXT is not all aligned to the center, so place the proper flags
when calling Plot. This requires handling alignment offsets properly
when rotated as well
2023-01-23 12:23:14 -08:00
jean-pierre charras
2443d91265
SCH_FIELD: fix issue when try to clear its color from a previous color,
...
the old color was still used to display the field
Fixes #13631
https://gitlab.com/kicad/code/kicad/issues/13631
2023-01-23 10:22:42 +01:00
jean-pierre charras
e0111f709b
Fix minor cosmetic issues in Print dialogs
...
Fixes #13629
https://gitlab.com/kicad/code/kicad/issues/13629
2023-01-23 09:21:23 +01:00
Jon Evans
1bc3f77d2e
Coverity fixes
2023-01-22 22:48:31 -05:00
Jon Evans
e7a4d6d4da
Exclude database libraries from the symbol library editor
...
These libraries are metadata libraries and it does not make sense
to have them be shown in the symbol editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12842
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12878
2023-01-22 20:49:41 -05:00
Jon Evans
e419b0bfe8
Support sub-libraries in symbol library browser
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12842
2023-01-22 19:25:15 -05:00
Marek Roszko
0ff32d20cd
wxS more things
2023-01-22 09:41:42 -05:00
jean-pierre charras
9c12a6ee1d
Eeschema, eeschema_config.cpp: fix incorrect *.wks file path when trying to save it.
...
And add tests to see if the file can be saved
Fix also an issue in sch_editor_control.cpp: The page setup dlg must generate changes
only if the OK button is clicked.
Fixes #13599
https://gitlab.com/kicad/code/kicad/issues/13599
2023-01-22 13:17:05 +01:00
jean-pierre charras
e900e472ce
Fix compil and Coverity warnings
2023-01-22 09:40:09 +01:00
Jeff Young
542719c753
Add "all" mode to HSPICE emulation.
2023-01-21 19:32:25 +00:00
Wayne Stambaugh
0a7bd85cd6
Fix library symbol rescue issues.
...
https://gitlab.com/kicad/code/kicad/-/issues/13494
2023-01-21 10:35:14 -05:00
jean-pierre charras
4eb3a99bb5
SYMBOL_VIEWER_FRAME: fix some (minor) issues related to the symbol to display
...
Fixes #13274
https://gitlab.com/kicad/code/kicad/issues/13274
2023-01-21 11:29:01 +01:00
Seth Hillbrand
ed0d57ddf6
Handle the forced propagation to subgraphs
2023-01-20 15:20:03 -08:00
Seth Hillbrand
e6dbca051c
Force realtime connectivity on
...
The pressure relief valve was not useful for common work patterns as it
forced the recalculation on many common actions such as bus expansion.
This caused it to actually feel slower than with the pressure relief
valve off.
For most schematics, realtime is now fast enough to not need the valve
and for those that are extremely complex, removing the valve helps this
run more predictably
2023-01-20 15:17:57 -08:00
Seth Hillbrand
6fa2eedb4b
Avoid the obsolete GetNextPin() call
...
This iterated over all pins to find the pin after a given item. Because
out pattern is consistently to iterate in the outer loop, this means
that we were an O(n^2) loop for the pins just to find their names. This
affected very large parts (e.g. FPGAs) when switching sheets to display
2023-01-20 14:12:15 -08:00