Seth Hillbrand
c29dfe026e
Force recursing annotation when set to auto
...
Automatic annotation should always annotate new elements regardless of
where in the hierarchy they are
Fixes https://gitlab.com/kicad/code/kicad/issues/13378
2023-01-05 15:03:38 -08:00
Jeff Young
933a5d45e1
Be more aggressive about clearing edit flags after operations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13173
Fixes https://gitlab.com/kicad/code/kicad/issues/13385
2023-01-05 18:08:22 +00:00
Jeff Young
7af718f1a5
Don't use std::string for things with wxString APIs.
...
It's too bug-prone.
Fixes https://gitlab.com/kicad/code/kicad/issues/13380
2023-01-05 14:16:39 +00:00
Jeff Young
3b021d98be
Completely remove reading SCH grid sizes from config files.
...
It messes up too many things if you put metric grids in there.
Fixes https://gitlab.com/kicad/code/kicad/issues/13345
2023-01-05 12:25:43 +00:00
Stefan
c5d7e447c7
Bugfix: remove trailing comma after last ref
2023-01-05 08:29:01 +00:00
Jeff Young
985414fef9
Collapse pin-conflicts-map generator back to (mostly) a single path.
2023-01-05 00:02:44 +00:00
Wayne Stambaugh
6f7af062ff
Rename file component_reference_lister.cpp to sch_reference_list.cpp.
...
This matches the naming of the header file.
2023-01-04 16:31:17 -05:00
Seth Hillbrand
0e2943d781
Fix pinmap flat style on GTK
2023-01-04 12:48:15 -08:00
Wayne Stambaugh
d99e09014b
Rename SYMBOL_INSTANCE_REFERENCE to SCH_SYMBOL_INSTANCE.
2023-01-04 15:39:50 -05:00
Seth Hillbrand
fc86998bf6
Ensure duplicate pin names get unique nets
...
Same pin name != same net name unless the pins are explicitly connected
Also add pin number to all unconnected pads ensuring they have unique
nets
Fixes https://gitlab.com/kicad/code/kicad/issues/13236
2023-01-04 11:32:15 -08:00
Jeff Young
7c0b6c1e87
Restore old pin-conflicts-map algo for MSW and GTK.
2023-01-04 18:32:06 +00:00
Mike Williams
bd5d10cd7b
Schematic: remove more extraneous dangling symbols
2023-01-04 11:07:23 -05:00
Graham Keeth
fb9a388bce
Fix icon spacing in Annotation dialog/panel
2023-01-04 13:52:19 +00:00
Jeff Young
33d31be9b5
Fix last commit.
2023-01-04 13:38:28 +00:00
Jeff Young
b38370adae
Test for viability of using fontsize for pin conflicts map positioning.
2023-01-04 13:16:15 +00:00
Wayne Stambaugh
f5c5b00e40
Fix schematic annotation dialog bitmap layout issue.
2023-01-04 07:36:00 -05:00
Wayne Stambaugh
73b7dcbc35
Attempt to unify symbol annotation behavior between place and paste.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13330
2023-01-04 07:36:00 -05:00
jean-pierre charras
575a84f76c
Fix a compil issue on GTK
2023-01-04 13:15:56 +01:00
jean-pierre charras
d0f9ce897e
Do not use #elifdef , only available in C++23
...
replaced by #elif defined
2023-01-04 11:59:33 +01:00
Jeff Young
a8d2f7f71d
Round 2 for GTK.
2023-01-04 01:41:07 +00:00
Jeff Young
b9f1106781
Adjustments for GTK.
2023-01-04 01:18:02 +00:00
Jeff Young
c47de5a55d
Another round of adjustments for MSW pin conflicts map.
2023-01-04 00:33:58 +00:00
Jon Evans
ac3ed02283
Rework bitmap cache and enable it
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12405
2023-01-04 00:26:45 +00:00
Marek Roszko
8ab9934143
Use our own cmake module path variable to avoid conflicting with the main ones listy functional
2023-01-03 19:18:16 -05:00
Jeff Young
7d84d323a6
Pin conflicts map adjustments for MSW.
2023-01-04 00:12:16 +00:00
Jeff Young
13d196c509
Fix some issue in the pin conflicts map with button alignment on Mac.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13333
2023-01-03 23:39:48 +00:00
Graham Keeth
77ee82459e
add ERCE_NETCLASS_CONFLICT and ERCE_ENDPOINT_OFF_GRID to schematic setup
2023-01-03 23:23:46 +00:00
Mike Williams
1ba9a6abe3
Rotate/Mirror: unbreak immediate mode actions
2023-01-03 16:05:52 -05:00
Seth Hillbrand
cbe6cd3048
Don't move local vars
...
Copy ellision allows optimization if we don't explicitly move a local
variable in the return
2023-01-03 10:20:18 -08:00
Jeff Young
baa13b885f
Don't add Sim.Params unless it contains data, and update sallen key demo.
2023-01-03 17:20:23 +00:00
Jeff Young
9583b28063
Fix store-in-value bugs.
...
1) Always honour the dialog checkbox value.
2) Don't expect the absence of the primary parameter in Sim.Params to
mean that Value stores it. It might be the default parameter value.
3) Update spiceTypeInfo when matching legacy data to an internal model.
4) Initialize the store-in-value checkbox depending on whether or not
we found the primary parameter in the Value field.
2023-01-03 17:20:23 +00:00
Jeff Young
9b9795a87d
Reduce reliance on exception processing -- it's waay too bugy at present.
...
This moves some stuff to REPORTER APIs. Moving more stuff would be good,
but it probably too high-risk at present. We'll wait for 8.0 for that....
Fixes https://gitlab.com/kicad/code/kicad/issues/13359
2023-01-03 17:20:23 +00:00
Mike Williams
d1c2ab957b
Schematic: set current sheet after initializing screens
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13238
2023-01-03 12:11:31 -05:00
Jeff Young
fdc8f9c59d
Fix accidental deletion in "TEXT_ATTRIBUTES" commit.
2023-01-03 01:23:18 +00:00
Jeff Young
7f35323416
Re-enable sim model ERC testing.
2023-01-03 00:59:14 +00:00
Jeff Young
056349e5ea
Units for footprint preview widgets.
2023-01-02 22:12:26 +00:00
Jeff Young
c5948de2af
Update find status when switching sheets.
...
(Not just when switching sheet during find.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13351
2023-01-02 18:49:28 +00:00
Jeff Young
277cd73204
TEXT_ATTRIBUTES doesn't hold the position.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13350
2023-01-02 17:36:21 +00:00
Jeff Young
fc346ea794
Iterator safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13341
2023-01-02 11:36:54 +00:00
jean-pierre charras
e8114dc49a
Minor compil and Coverity warnings fixes.
2023-01-02 10:21:42 +01:00
Jeff Young
6f16678d2d
Typo fix courtesy or aris-kimi.
2023-01-01 23:40:18 +00:00
jean-pierre charras
447d0d71d3
EEschema, Error/Info messages: do not add the unit id to single unit symbol ref
2023-01-01 11:21:05 +01:00
Gary Kim
8e8a3c7bdc
Do not translate name in version info
...
Leave the application name in version info untranslated when
viewed, copied, or used in a bug report.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13298
2022-12-31 20:28:45 -05:00
Jeff Young
62f0843579
Fix grammar error in warning string.
2022-12-31 18:54:36 +00:00
Jeff Young
55b8f0bc00
Gracefully fall back to raw spice when we can't parse the data.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13329
2022-12-31 18:52:26 +00:00
Jeff Young
77b361a077
Add reference material to SPICE model pin assignment tab.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13309
2022-12-31 18:52:26 +00:00
jean-pierre charras
9f56771611
Fix a typo
2022-12-31 11:41:04 +01:00
Jeff Young
5deee405da
Fill in built-in-model-type (which might not be the same as initial spice type).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13324
2022-12-31 01:07:46 +00:00
Jeff Young
62bec69d8c
Migrate field text attrs from legacy fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13323
2022-12-30 23:41:46 +00:00
Jeff Young
e9ed56e9a4
Fix small alignment issue in field properties dialog.
2022-12-30 15:29:36 +00:00
Jeff Young
c0e0cbceb0
Move eseries helper class to common.
...
Also improves some terminology for english-speakers.
Also substitues [] vector access (which creates empty elements) over
at() (which throws if the item is not found).
2022-12-29 18:05:57 +00:00
Jeff Young
4c63b4e061
Class name <-> file name sync.
2022-12-29 18:05:57 +00:00
Mike Williams
068b714908
Schematic: merge dual import sheet pin actions
...
I believe I have managed to keep the slightly distinct functionality of
both implementations: the action will now use the selected sheet or find
one under the cursor if it's there.
It will also keep placing pins while they exist, which was inconsistent
in the behavior of the single click version before (other single click
commands keep placing until you cancel, e.g. no-connects )
Also, it will automatically end the tool when it runs out of sheet pins.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13296
2022-12-29 09:36:29 -05:00
Mike Williams
e65de51fc7
Schematic: label auto orientation needs to respect move/drag/change
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13226
2022-12-28 14:30:57 -05:00
Mike Williams
495f337fa5
Schematic: remove unused variable
2022-12-28 12:27:57 -05:00
Mike Williams
6816ee937a
Flags: remove unused IS_DRAGGING
2022-12-28 12:27:57 -05:00
Mike Williams
6cc17e4a16
Schematic: new flag IS_BROKEN for trimming BreakSegment danglers
2022-12-28 12:27:57 -05:00
Mike Williams
f03fd5ad2d
Schematic: remove IS_RESIZING
...
Is unused/redundant with IS_MOVING
2022-12-28 12:27:57 -05:00
Mike Williams
13f67aa7ce
Schematic: remove unnecessary drag mirror/rotate control disabling
...
The whole edit dialog is blocked while dragging if anything else is drag
selected, and if nothing is drag selected the rotations/mirroring will
be fine. Also, we already allow mirror and rotate while dragging, using
the keyboard shortcuts and menu items, and it works fine.
2022-12-28 12:27:57 -05:00
Mike Williams
b5b65e1455
Schematic: update dragged lines dangling state in realtime
...
Makes the visuals a little nicer as we add bend lines
2022-12-28 12:27:57 -05:00
Jeff Young
e7300ffb5c
Improved column sizing in library setup dialogs.
2022-12-28 16:27:03 +00:00
Jeff Young
e927328ecf
Don't rely on field ID for intersheetrefs.
...
It will be -1, for instance, after a duplicate.
2022-12-28 15:15:54 +00:00
Jeff Young
a3fcc8bbf7
Move Exclude from Simulation to Symbol Properties.
...
Also brings the layout of Symbol Properties for Symbol Editor more in
line with Symbol Properties for Schematic Editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/13299
2022-12-28 13:44:13 +00:00
Jeff Young
87448e0c55
Include sim command when running external SPICE.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13295
2022-12-28 12:28:22 +00:00
Jeff Young
d50b3550af
Signals header is repetitive.
2022-12-28 10:40:23 +00:00
Jeff Young
ef6001bfe6
Use consistent terminology: opposite of Add is Remove.
...
Note: violating string freeze because this change should ease translation,
not make it harder.
2022-12-28 10:40:23 +00:00
Jeff Young
e11d39b0f2
If magnitude or phase is specified, don't add both.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13202
2022-12-28 10:40:23 +00:00
Jeff Young
508b9e21a8
Put simulation in with other life-cycle tools.
2022-12-28 10:40:23 +00:00
Jeff Young
3767716f20
Menu IDs of 0 don't work on Mac.
2022-12-28 10:40:23 +00:00
Jeff Young
987eb4b46a
Handle language changes for Schematic Hierarchy Navigator.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13291
2022-12-28 00:11:28 +00:00
Mike Williams
f1fab140a1
Schematic: make menu bar rotation items conditional
...
Also fix some items not getting a context menu rotate action.
2022-12-27 14:18:47 -05:00
Jeff Young
0b50e7fa37
A wee little hack for intersheet refs in legacy files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13108
2022-12-27 18:46:58 +00:00
Mike Williams
8ca8f83a18
Schematic: sheet pin dragging special case needs to check endpoints
...
Otherwise we'll force the wrong end of a line to be special-cased
2022-12-27 12:15:49 -05:00
Mike Williams
33b774685b
Schematic: fix inconsistent selected-by-drag behavior of mid-line labels
...
Two issues here:
Selected labels would half of the time add junctions splitting lines
when the lines would have been selected-by-drag (removing the need for a
junction).
Split lines aren't selected by drag by default, and we need to test
labels against lines that are selected by drag.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13224
2022-12-27 12:15:49 -05:00
Mike Williams
b82833200a
Schematic: correct bus entry shadows size and selections
2022-12-27 10:09:45 -05:00
Jeff Young
e64b356d93
Fix broken if/then/else logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13192
2022-12-27 14:58:10 +00:00
Mike Williams
1ad373f2b2
Schematic: don't show unselected ends on bus entries
2022-12-27 09:37:21 -05:00
Jeff Young
572c10b2c4
If we don't recognize a var then it's an error, not 0.0.
2022-12-27 13:50:44 +00:00
Jeff Young
39a23fa9bc
Only eval numeric properties.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13201
2022-12-27 13:50:44 +00:00
Wayne Stambaugh
e68bb16a28
Fix Eagle schematic import debug assertion.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13215
2022-12-27 08:31:56 -05:00
Jon Evans
314c813aca
Don't try to save hierarchical sheets with empty filenames
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11236
2022-12-26 21:47:17 -05:00
Jeff Young
80f3abe082
Event safety.
...
Sentry crash probably happens when an update title event fires either
too early or too late to have a simulator or simulator settings.
Sentry issue https://sentry.io/organizations/kicad/issues/3669444623/events/fce0179f7d5e4ff3a7dbb0d90a0570b4/
2022-12-26 20:33:04 +00:00
Jeff Young
424cdf6699
Overflow safety.
...
Sentry issue https://sentry.io/organizations/kicad/issues/3419671947/events/11212297e66c47c7af7144b5f075e88c/
2022-12-26 20:33:04 +00:00
Wayne Stambaugh
78e2f0fd4d
Sheet instance handling improvements.
2022-12-26 08:30:03 -05:00
Jeff Young
b070ecf0c7
Don't run simulation while dragging tuning slider.
...
It has all manner of issues with wxWidgets event processing. The
primary one that Kicad stumbles over is that there is no kill-focus
when the mouse leaves the thumb if the sim is running, so subsequent
mouse-up events (even if in another window) generate thumb scrolls.
Another one that gets us is scroll events being generated when the
window is fronted, but this may be debugger-specific.
Fixes https://gitlab.com/kicad/code/kicad/issues/11366
2022-12-26 10:51:30 +00:00
Jeff Young
90edcc8c42
Clarity and Clang-tidy warnings.
2022-12-26 10:51:30 +00:00
Jeff Young
13b73ed6b4
Remember dialog sizes for dialogs that might have lots of fields.
...
This is mainly for simulation testing where the dialog has to be
grown every time you restart the app, but it might as well be applied
to the similar dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/12887
2022-12-24 22:20:03 +00:00
Jeff Young
833e76a0bc
KiCad standard is left-aligned checkboxes.
2022-12-24 21:01:35 +00:00
Jeff Young
ba4a7a979a
Don't respond to Duplicate events while placing multiple copies of a symbol.
...
It doesn't really make any sense as clicking will just create another copy
as well.
Fixes https://gitlab.com/kicad/code/kicad/issues/13253
2022-12-24 19:40:39 +00:00
Jeff Young
bf1c4e7bcd
Allow translation of simulation error messages.
2022-12-24 11:30:56 +00:00
Jeff Young
f00ec339fd
Don't set IS_NEW flags during clean-up operations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13252
2022-12-24 11:17:13 +00:00
Jon Evans
5657ca5a04
No-connects might not be connected to a pin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13256
2022-12-23 20:50:49 -05:00
Jeff Young
6f44468385
Fix more lifetime issues in simulator tuning.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13257
2022-12-23 22:03:24 +00:00
Jeff Young
981254543a
Allow line-continuations in name=value parameters.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13255
2022-12-23 20:05:16 +00:00
Jeff Young
00fe8f0f70
Minor tuner panel layout fixes.
2022-12-23 20:04:26 +00:00
Jeff Young
8069e5d5d6
Fix sim bug running a command the first time when no command in doc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11366
2022-12-23 18:21:26 +00:00
Jeff Young
bfd3b40672
Bug fixes for tuning.
...
1) Don't save SCH_ITEM pointers in long-lived structures. Use KIIDs
instead.
2) Use the correct sheet for the referenced item, not the current sheet.
2022-12-23 17:40:36 +00:00
Jeff Young
604d7a72d6
Fix bug in tuning when value is stored in Value field.
2022-12-23 17:40:36 +00:00
Jeff Young
e2f2f3518b
Minor improvements to tuner panel look & feel.
2022-12-23 17:40:36 +00:00
jean-pierre charras
e5363d164c
Lib symbol editor, export SVG: fix incorrect position of the drawings.
...
Fixes #13249
https://gitlab.com/kicad/code/kicad/issues/13249
2022-12-23 16:31:35 +01:00
Jeff Young
66eafc56bb
Don't suggest we're going to cancel already-added signals.
2022-12-23 12:46:18 +00:00
Jeff Young
3f49fa5361
Don't write sim.params for library model unless we actually have overrides.
2022-12-23 12:46:18 +00:00
Jeff Young
cd7be966c0
Fix typo when un-escaping parameter name.
2022-12-23 12:46:18 +00:00
Jeff Young
7f60b87d1d
Implement fallback models for SPICE .lib models that we can't parse.
2022-12-22 22:35:09 +00:00
Jeff Young
d0d6dc6ce0
Clang-tidy warnings reduction.
2022-12-22 22:35:09 +00:00
Mike Williams
9b782fa827
Schematic: don't deselect line ends when right clicking off-selection
2022-12-22 14:16:38 -05:00
Mike Williams
8b7d0d71fb
Schematic: show update/change symbols for multiple symbol selection
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13231
2022-12-22 14:00:51 -05:00
Jon Evans
66799b60f8
DbLib: Reconnect if connection is lost
2022-12-22 12:15:04 -05:00
Mike Williams
3037f2b444
Schematic: don't require cursor on selected net to assign netclass
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13199
2022-12-22 10:15:48 -05:00
Jeff Young
7abfa46531
Inferred sim value improvements, and a unit test for them.
2022-12-21 17:03:49 +00:00
Jeff Young
e64852c833
Clearer naming.
2022-12-21 17:03:46 +00:00
Jeff Young
e7e3f3bced
SIM_MODEL code simplification.
...
1) Reduce API surface.
2) Prefer for(int) loops when what we're looking for is the index of
the item to be found
3) Move "_" escape processing to SIM_MODEL_NGSPICE (which is the only
model which uses the escape mechanism)
2022-12-21 17:01:58 +00:00
jean-pierre charras
8e4911bba2
Simulation: make a few errors thrown from PEGTL a bit more understandable.
2022-12-20 18:54:14 +01:00
Mike Williams
093c0c2c98
Schematic: add simulation button to toolbar
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/2331
2022-12-20 08:56:36 -05:00
Mike Williams
fc054bda8e
Schematic: fix edit symbol assert
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13197
2022-12-20 08:23:02 -05:00
Jeff Young
97010b598d
Update all units when a schematic symbol is edited in the Symbol Editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13208
2022-12-19 23:09:13 +00:00
Mike Williams
389f0655cd
Schematic: re-enable old break wire functionality, add slice
...
Also fix break/slice wires for multiple wires. The shortcut and code
always allowed it, the context menu just didn't appear.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13163
2022-12-19 15:55:59 -05:00
Jeff Young
8db015bc0f
Accept thousands separators in inferred values.
2022-12-19 20:05:54 +00:00
Jeff Young
58ce0bb804
Simulation bug fixes.
...
1) Use C-locale when converting output of parsers to strings.
2) InferSimModel() must run on local copy of fields, not the fields in
the symbol (which might be different if they've already been edited in
the Symbol Properties Dialog, for instance).
3) InferSimModel() should accept a deviceType already set to RLC.
4) Don't output trailing decimal separators if there's no fraction.
2022-12-19 18:14:13 +00:00
Jeff Young
cbb70f0da1
Formatting and CLang-Tidy warning reduction.
2022-12-19 13:51:49 +00:00
Jeff Young
113fd83fdd
Fix Clang-tidy warnings.
2022-12-19 13:19:21 +00:00
Jeff Young
ebcc1ac062
Use current cursorPos when creating sheet pins.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13206
2022-12-19 12:27:55 +00:00
Jeff Young
a3a2e2e5b1
Update demos and legacy qa files SpiceMapping -> Spice_Node_Sequence.
...
Also removes migration in the code as it will no longer be needed.
2022-12-19 12:04:53 +00:00
Jeff Young
04f50ce687
Generate default pinMap from symbol's pins when we don't know SIM_MODEL's pins.
2022-12-19 11:40:52 +00:00
Jeff Young
df8eb59854
Don't use SPICE_MODEL_SUBCKT::CreatePins to crate a default pinMap.
...
(It creates a fully-unconnected map on the premise that it's easier
to add a pinMap than to edit one. This is probably no longer true
now that you don't have to un-assign a pin before re-assigning it.)
2022-12-19 11:40:52 +00:00
Jeff Young
1ce6cd6d4d
Naming clarity.
2022-12-19 01:51:24 +00:00
Jeff Young
7433322778
Handle a couple more legacy formats found in legacy_sallen_key demo.
2022-12-19 01:47:23 +00:00
Jeff Young
b06c245b8f
Don't double-add DC parameters.
...
(Remember that DC's inlineTypeString used to be "".)
2022-12-19 01:19:55 +00:00
Jeff Young
7192c565b8
Add simple VI model inference.
2022-12-18 22:54:12 +00:00
jean-pierre charras
a9acb2e215
Fix incorrect format in a wxString::Format()
2022-12-18 20:30:15 +01:00
Ian McInerney
618347ef50
Regenerate ibis dialog to remove unused sizer from header
...
It appears the dialog had already been updated to remove it from the
formbuilder project and the cpp file, but the header wasn't checked in
at the same time.
2022-12-17 23:37:24 +00:00
Ian McInerney
2f8cc194c1
Initialize variables inside file dialog customizer classes
2022-12-17 23:37:24 +00:00
Ian McInerney
0bd39516c4
Cleanup eeschema save as extra control creation to match pcbnew
2022-12-17 23:37:24 +00:00
Jeff Young
8324c0b0cc
Fix event order bugs in Sim Model Editor dialog.
...
onParamGridChanged was firing before CommitPendingChanges which meant
the edited value didn't get saved if the editor was still open when
OK was clicked.
2022-12-17 22:33:00 +00:00
Jeff Young
321de57d7c
Bug fixes for simulator.
...
1) Finish removing pin-count based APIs. We need to know the pin names
as well, not just the count.
2) Fix a bug in the regexp for SPICE functions to allow both lowercase
and uppercase function names
3) Move CreatePins() overrides to the new API so that we get pins on
raw SPICE models.
Fixes https://gitlab.com/kicad/code/kicad/issues/13190
2022-12-17 20:29:24 +00:00
Jeff Young
6b70c679cf
Migrate more V6 SPICE syntax to V7.
...
Also fixes various bugs if symbols contained non-indexed pin numbers.
We really need to know the actual pin names when creating models, rather
than just assuming 1, 2... etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/13183
2022-12-17 15:23:51 +00:00
Jeff Young
09302296f4
Use SCH_SHEET_PATH interface to get page numbers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13021
2022-12-16 22:49:42 +00:00
Jon Evans
5abf73e3c9
Never call ReCreateMenuBar inside a menu event handler
...
As of wxWidgets 3.2, the wxWidgets event handler runs code after the
the client event handler that depends on the menu still existing.
Because there are potentially many paths to call ReCreateMenuBar from
within a menu event handler, let's just wrap this action in a CallAfter
to make sure it happens after the wx handler call completes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13149
2022-12-16 16:37:51 -05:00
Jeff Young
65552df6ce
Quite Coverity.
2022-12-16 19:11:34 +00:00
Jeff Young
dba3c589d0
More bug fixes for escaped model parameters.
...
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....More bug fixes for escaped model parameters.
Note that this whole escaping thing seems like a bad idea to me, but
I don't fully understand the difference between model parameters and
instance parameters so I don't know if there's a better way to handle
it or not....
Fixes https://gitlab.com/kicad/code/kicad/issues/13179
2022-12-16 16:34:41 +00:00
Jeff Young
08a8a20794
Sort pins in numeric order before attempting to match to SPICE model.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13164
2022-12-16 14:18:44 +00:00
Jeff Young
24786fe0e9
Fix multi-unit symbol bugs.
...
1) SPICE pins need to include all units
2) Already-seen-unit-x needs to be reset when getting netlist again.
Fixes https://gitlab.com/kicad/code/kicad/issues/13164
2022-12-16 13:57:46 +00:00
jean-pierre charras
89153ca75a
Eeschema: fix incorrect calculation of unit id in reference: U1.A was shown as U1A.
...
Fixes #13178
https://gitlab.com/kicad/code/kicad/issues/13178
2022-12-16 11:48:26 +01:00
Seth Hillbrand
6d5a9153ab
Move resolve function to general usage
...
Libraries are created multiple times, so we need to resolve the library
locations each time
Fixes https://gitlab.com/kicad/code/kicad/issues/13083
2022-12-15 15:34:48 -08:00
Seth Hillbrand
e91c039ed3
Prevent event stackup when init pages
...
The paged book initialization (and others) can generate events,
re-laying out the whole dialog multiple times during initialization.
This halts events during the layout period
Fixes https://gitlab.com/kicad/code/kicad/issues/13158
2022-12-15 11:39:03 -08:00
Jeff Young
a41f27a022
Silence Coverity.
2022-12-15 18:14:19 +00:00
Seth Hillbrand
bb7682f913
Resolve using env/project if lib isn't found
...
Relative include commands resolve in the following order:
1. local to the file from which they are included
2. local to the project
3. local to the SPICE_LIB_DIR directory
Fixes https://gitlab.com/kicad/code/kicad/issues/13083
2022-12-15 09:41:25 -08:00
Wayne Stambaugh
84f927d057
Schematic import bug fix.
...
Check for already loaded schematics in the current sheet path as well
as the current project root sheet path to prevent multiple loads of
shared schematic. This bug was causing shared sheets to be loaded more
than once which caused instance data to get separated by each copy rather
than saved in one copy of the schematic which would result in all instance
data being lost except the last saved copy of the schematic. This bug has
been around forever and may be the cause of some unexplained schematic
instance data corruption issues. This bug does not apply when opening
the full project.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11076
2022-12-15 09:58:39 -05:00
Jeff Young
1e812b8b69
Remove selection from grid before deleting rows.
2022-12-15 14:40:57 +00:00
Jeff Young
a8e73cf92c
Check for model existence in library.
2022-12-15 14:25:25 +00:00
Jeff Young
5ef9fbdd19
Fix broken loop logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13168
2022-12-15 14:22:03 +00:00
Jeff Young
af71c2d877
Clear hover selections after command.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13073
2022-12-15 13:47:56 +00:00
Jeff Young
00a5fddda4
Simplify library model name from combobox to choice.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13168
2022-12-15 12:13:16 +00:00
Graham Keeth
ba585e9b3a
Fix BOM script description
...
script name aside, bom_csv_grouped_by_value.py also sorts by sym name
and footprint
2022-12-15 07:08:53 +00:00
Seth Hillbrand
f0a8182532
Update for wx3.0 compatibility
2022-12-14 16:41:52 -08:00
Seth Hillbrand
c86688d280
Ensure we have a subgraph
2022-12-14 16:41:52 -08:00
Jeff Young
b2e512bfab
We must infer a pinMap when inferring other fields for RLC passives.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13162
2022-12-14 23:23:41 +00:00
Jeff Young
93879532f7
More wxTextCtrl minimum widths.
2022-12-14 23:23:41 +00:00
Jeff Young
a2ba9137b8
Use only first letter of prefix for RLC primary value name.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13162
2022-12-14 23:23:41 +00:00
Seth Hillbrand
10a3d57193
Add sim_lib callback to resolve embeded libs
...
Also teach parser to look for include directives in libraries
We get KiCad variable resolution in include pathnames for free.
Fixes https://gitlab.com/kicad/code/kicad/issues/13083
2022-12-14 13:31:41 -08:00
jean-pierre charras
cdcf875ec0
sim_model: Fix another not handled exception that fully freeze Eeschema.
...
Can happens with schematics with old sim parameter syntax.
Fix also another crash in sim_model.
2022-12-14 17:47:20 +01:00
Jeff Young
ce6378fed3
Use symbol pin names for left-hand-side of auto-generated pinMaps.
2022-12-14 15:13:29 +00:00
Jeff Young
5984a6dddd
Fixup a few more collapsing textEditCtrls on Mac.
2022-12-14 15:13:29 +00:00
Jeff Young
6abdfc76da
Replace 1:1 pin map on legacy conversion now that we can accept indexes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13152
2022-12-14 14:22:35 +00:00
Jeff Young
77998d7c51
Better fix for not selecting all of netlist.
2022-12-14 14:13:25 +00:00
Jeff Young
13d9b061ee
Don't select all of netlist when showing it in simulator.
2022-12-14 13:36:29 +00:00
Jeff Young
e41b0775db
Fix a bug with underscores being appended to spice param names.
2022-12-14 13:36:29 +00:00
Jeff Young
50ccc4e6da
Fix issue converting legacy SPICE models.
...
1) if a legacy model references a library then we need to see if said
libraray exists and read model from it if so
2) legacy node ordering is by index, not pin name
3) we can't auto-generate a pin map when we don't know the pin names,
so don't try
2022-12-14 13:36:28 +00:00
Jeff Young
c0872364d4
Get rid of bloated bitmap buttons on wxWidgets 3.2.
2022-12-13 20:48:02 +00:00
Mike Williams
af4e9968fc
Schematic: remove internal Change Sheet action from hotkeys
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13157
2022-12-13 13:55:23 -05:00
Mike Williams
5e72a1008b
Schematic: don't trim unchanged segments that are connected
...
Previously if you had a wire with two unconnected ends and dragged the
end of another wire to connect with one end, it would delete the first
wire.
2022-12-13 09:03:23 -05:00
jean-pierre charras
bbdb30135e
sim_model: Fix a not handled exception that fully freeze Eeschema.
...
Can happens with schematics with old sim parameter syntax.
2022-12-13 11:15:02 +01:00
Marek Roszko
6eedbe4a14
Allow taking hidden fields into account for symbol unit bounding box
...
Even the GUI export of svg wasn't taking fields into account which rendered the fields regardless of status
2022-12-12 22:47:56 -05:00
Marek Roszko
f1f5fff072
Add cli export of symbols from kicad libraries
2022-12-12 22:44:26 -05:00
Seth Hillbrand
bc8366cd95
Don't report a pin if the pin is null
...
The pins can exist on a different sheet from the no-connect. In this
case, we do not set the ERC for the current sheet to the remote pins,
instead only link the NC
2022-12-12 19:29:15 -08:00
Jeff Young
f24372bc18
Layout adjustments for wxWidgets 3.2.
2022-12-13 00:47:19 +00:00
Seth Hillbrand
413637b732
Add missing translation string
2022-12-12 13:07:53 -08:00
Mike Williams
243727428a
Selection: non-greedy box selection of wires ends only when dangling
...
See discussion:
https://gitlab.com/kicad/code/kicad/-/issues/13022#note_1205902448
2022-12-12 15:04:33 -05:00
Mike Williams
d824b7f506
Schematic: move wires always moves the whole line
...
Discussion here:
https://gitlab.com/kicad/code/kicad/-/issues/13022#note_1205922621
2022-12-12 14:45:06 -05:00
Mike Williams
fe01c65794
Schematic Lines: add marker for unselected, connected line ends
...
Smaller, subtler version of the marking used for unconnected line ends.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13126
2022-12-12 14:45:06 -05:00
Mike Williams
5ce0fe5998
Selection: drop non-greedy full line selection from middle
...
It's too inconsistent to have greedy and non-greedy mode, and also have
tweaks to the non-greedy mode that make it greedier.
2022-12-12 14:45:06 -05:00
aris-kimi
43d4dd0b7b
Fix some eeschema textbox tooltips
2022-12-12 19:41:26 +00:00
Seth Hillbrand
15c8e87549
Allow passive pins in stacking def
2022-12-12 11:15:38 -08:00
jean-pierre charras
96a9ec4a0c
Enhance compatibility with V6.0 for Intersheetrefs fields associated to GLOBAL labels.
...
In V6.0, the identifier is "Intersheet References" and was not immediately
seen as Intersheetrefs field.
2022-12-12 16:38:04 +01:00
Jeff Young
ccbbd2ddd9
Clear seleciton so wxWidgets doesn't go looking for deleted row.
2022-12-12 14:43:37 +00:00
Jeff Young
ca5c0e2ac5
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13137
2022-12-12 14:42:45 +00:00
Jeff Young
2459b61aa6
Don't add second half of line and new juction to screen twice.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13129
2022-12-12 13:44:47 +00:00
Jeff Young
45eae3e594
Don't Simplify() polys with arcs in them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13134
2022-12-12 12:54:34 +00:00
Jeff Young
c7603372b5
Use consistent naming.
2022-12-12 12:54:34 +00:00
Jeff Young
f75d18c7c8
Slight improvement to schematic editor title bar.
...
Also improves some other clients of PathHumanReadable(), such as the
set page number dialog.
2022-12-12 12:54:34 +00:00
Jeff Young
346530a5b1
Nullptr safety to attempt to prevent Sentry crash.
...
https://sentry.io/organizations/kicad/issues/3712084175
2022-12-12 12:54:34 +00:00
Jeff Young
e890986e01
Fix crash when grid tries to access deleted field.
2022-12-11 23:12:55 +00:00
Jeff Young
419fe236ad
Fix logic error in parsing sim command, and DC source types in dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9064
2022-12-11 23:12:55 +00:00
Jeff Young
b2498f5673
Coding standards & formatting.
2022-12-11 23:12:55 +00:00
jean-pierre charras
bdf13ade7a
Fix a compil issue on linux, round 2
2022-12-11 20:43:10 +01:00
jean-pierre charras
32995a31c6
Fix a compil issue
2022-12-11 20:19:56 +01:00
Jeff Young
5c53daadb0
Mostly coding standards, but also quote codemodel names before passing to spice.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12687
2022-12-11 18:42:57 +00:00
Jeff Young
65538ccad4
Rename files and classes to match dialog name.
...
Also a bit of formatting cleanup.
2022-12-11 18:42:57 +00:00
jean-pierre charras
a57ca559aa
sch_field named Intersheetref in global labels: fix incorrect behavior when loading a sch file.
...
This is a special field, always existing, that cannot be handled like other fields.
Also avoid using translated names when initializing the field name.
Translated names can be used only in UI, not in internal data.
fixes #13113
fixes #13125
2022-12-11 18:56:14 +01:00
Jeff Young
fbd2d66a75
Convert formatting constructs for SPICE consumption.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11383
2022-12-11 15:53:26 +00:00
Jeff Young
9c129ed03f
More dialog adjustments for wx 3.2. Also renames files to match dialog.
2022-12-11 15:49:29 +00:00
Jeff Young
56aae7a147
Reduce compiler warnings.
2022-12-11 13:39:59 +00:00
Jeff Young
3581a9773f
Move simulator settings disposal earlier so it happens before parent.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12370
2022-12-11 01:32:20 +00:00
Jon Evans
2b94b7df77
DbLibs: Support empty virtual table names
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12902
2022-12-10 16:35:11 -05:00
Jon Evans
39a8ab8738
Make sure to set the lib table for a plugin before it gets used
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12847
2022-12-10 16:04:54 -05:00
Jon Evans
966dee6730
A screen must always be generated for a new sheet
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13104
2022-12-10 14:32:24 -05:00
Mike Williams
f4fb70e04c
Schematic: re-allow partial selection of line ends
...
Also fix some XOR selecting issues.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13022
2022-12-10 13:17:42 -05:00
jean-pierre charras
be8f99e8fe
Another fix to avoid conflict names issues with mingw + pegtl.
...
Fixes #13118
https://gitlab.com/kicad/code/kicad/issues/13118
2022-12-10 14:28:05 +01:00
jean-pierre charras
e74654a20f
Minor fix to avoid conflict names issues with mingw + pegtl.
2022-12-10 08:21:35 +01:00
Alexander Dewing
91290e8f75
vsrious cleanup, seeing if we dont need to ignore_item for python
2022-12-09 23:48:31 +00:00
Alexander Dewing
02325130fa
Initial arm64 work
2022-12-09 23:48:31 +00:00
Jeff Young
1599490197
Formatting.
2022-12-09 22:25:14 +00:00
Jeff Young
1baec20cf6
Handle SPICE <-> SI conversions in inferred models.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13112
2022-12-09 22:02:52 +00:00
Jeff Young
60c937186a
When migrating simulation models update value to a reference.
2022-12-09 20:24:25 +00:00
Jeff Young
05b9836f60
Remove ugly hack of passing SCH_SYMBOL as parent of LIB_FIELD array.
...
Also adds simulation model inference to Symbol Editor's Simulation Model
Editor, and adds write-back from both Simulation Model Editors to their
parent Symbol Fields Editor dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/12505
2022-12-09 20:24:25 +00:00
Jeff Young
3ae404f764
Move model inference to SIM_MODEL so it can also be used for behavioral models.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12505
2022-12-09 20:24:25 +00:00
Wayne Stambaugh
945361ca65
Fix schematic editor crash when saving shared schematics.
...
Shared schematics can have a root sheet instance when opened with the
schematic editor in stand alone mode. This would cause a crash when
opening the shared schematic in a project where it was shared because
the root instance was trying to be saved in the normal sheet instance
data which is not valid.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13102
2022-12-09 10:02:16 -05:00
jean-pierre charras
9a2d8e6b6b
Fix a collision name with a windows header (msys2)
...
LoadLibrary is changed to LoadSymbolLibrary, due to a header included by pegtl
having a #define LoadLibrary ...
2022-12-09 09:36:58 +01:00
Seth Hillbrand
eaf56bc05a
Fix NC and label connection logic
...
label has 0 pins -> unconnected label warning
label has 1 pin -> OK only if also has a NC marker, otherwise unconnected pin warning
label has >1 pins -> OK only if has no NC marker, otherwise "NC is connected" warning
Thanks @craftyjon for helping work out the details
2022-12-09 02:14:05 +00:00
Jeff Young
8931e55dd2
Templatize MigrateSimModel() so it can be used on LIB_SYMBOLs as well.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13080
2022-12-08 23:57:43 +00:00
Jeff Young
cfbf14ebfd
Attempt to fix build issue with NGSPICE off.
2022-12-08 23:57:42 +00:00
Jeff Young
107025322c
Better column width handling for sim params grid.
2022-12-08 23:57:42 +00:00
Jeff Young
6535f407a6
Remove version guard from sim migration, and add migration to paste.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13080
2022-12-08 23:57:42 +00:00
Jeff Young
e8980e9024
Centralize SPICE lib path resolution and support SPICE_LIB_DIR.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13081
2022-12-08 23:57:42 +00:00
Jeff Young
bb6544914e
Bring simulator file menu commands more in line with rest of Kicad.
2022-12-08 23:57:42 +00:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Mike Williams
78b5dbead6
Schematic: show partial selection of graphic lines
...
Use the same inverted-dangling-shadow as regular wires
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13095
2022-12-08 14:12:12 -05:00
Mike Williams
4b02e5efb4
Schematic: allowing ctrl/shift-clicking point editor points
2022-12-08 14:12:12 -05:00
Barabas Raffai
add082548d
Move timer used by SCH_EDITOR_CONTROL to member variable
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2430
2022-12-08 17:33:19 +00:00
jean-pierre charras
0098dfa6dc
Ensure exported spice netlist contains all spice directives found in schematic
2022-12-08 14:03:47 +01:00
Stefan
1fcdd94caf
add missing whitespace
2022-12-08 07:36:59 +00:00
Marek Roszko
2fc0cd68ed
Avoid crashing due to empty lib tables in cli
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13097
2022-12-07 23:56:03 -05:00
Jon Evans
5251ea6f27
Prevent crash on exit due to simulator settings being double freed
2022-12-07 21:04:49 -05:00
Seth Hillbrand
9a5df73060
ERC: don't flag hierarchically connected NCs
...
NCs require no more than one pin on the full net. They may also have
multiple labels connecting them.
2022-12-07 13:48:25 -08:00
Wayne Stambaugh
b95ce69054
Disconnect event handlers in symbol properties dialog dtor.
...
This is probably a good rule of thumb to prevent any event ordering
issues between platforms or unhandled events being trigger during
inherited object destruction.
2022-12-07 14:27:36 -05:00
Jeff Young
b15913bd53
Support env variables in spice library paths.
...
Also removes a bunch of std::string stuff from the file handling in the
simulator. All our file handling, env variable expansion, project path,
etc. stuff is wxString based, and jumping through std::string in between
just makes it more complex and increases the potential bug surface.
Also fixes a bug where you'd get two error messages when a spice model
library wasn't found.
Also fixes a bug where you'd get a spice model library not found error
when the text field was empty.
Also fixes a bug where we'd try to absolutize a path starting with an
unresolved text or environment variable. If the path starts with a
variable it's probably absolute, and tacking on the project path in the
error message just obfuscates things.
Fixes https://gitlab.com/kicad/code/kicad/issues/13082
2022-12-07 15:07:25 +00:00
jean-pierre charras
6130ce5d66
symbol_editor_control: fix incorrect bounding in SVG export.
...
Fixes #13093
https://gitlab.com/kicad/code/kicad/issues/13093
2022-12-07 13:13:35 +01:00
Jeff Young
4872dd7238
Don't put empty lines in the workbook.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12299
2022-12-07 11:39:47 +00:00
Marek Roszko
c0b5fe58c3
Implement output targeting of symlib/fplib upgrade per request
2022-12-06 21:20:27 -05:00
Jeff Young
b9287968d6
Update symbol default prefixes after updating instance data.
...
Also moves the sim model fixups after the instance data updating as
it uses the prefixes.
2022-12-07 01:34:56 +00:00
Jeff Young
69448afb47
Don't run simulation twice when the sim command is overridden.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12731
2022-12-07 01:34:56 +00:00
Wayne Stambaugh
da0624286c
Fix spelling error in schematic import exception handler.
2022-12-06 18:04:38 -05:00
Jeff Young
3836ec481f
Add fixups for legacy syntax used during 7.0 development.
2022-12-06 16:01:18 +00:00
Jeff Young
39ad7c8205
Formatting and Kicad naming conventions.
2022-12-06 16:01:18 +00:00
Jeff Young
38906397d2
Move V6->V7 sim model migration from sheets to screens.
...
Also moves passive RLC inference out from migration to just-in-time
creation for the simulator or netlisting.
Also fixes a version guard mismatch because the spice migration was
done inside UpdateSymbolInstances (which has its own version guard).
Also changed UpdateSymbolInstances to UpdateSymbolInstanceData so
someone else in the future doesn't think it's a general-purpose symbol
instance updater.
2022-12-06 16:01:18 +00:00
Jeff Young
f8e0a272c0
Remove a bunch of 'auto'.
2022-12-06 16:01:18 +00:00
Wayne Stambaugh
5001555f0e
Fix crash in Altium schematic importer.
...
The crash was caused by an unhandled exception. The uncaught exception
caused a cacophony of null configuration setting pointers so guards were
added to prevent crashes should other exceptions occur that do not get
handled correctly.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13046
2022-12-05 20:20:01 -05:00
Fabien Corona
4c76082f77
"Sim Params/Settings" -> "Sim Command"
...
The window only really sets the simulation command.
In the future, we might want a simulation setting window with things such as SPICE optimizations.
2022-12-05 23:12:04 +00:00
Jeff Young
8e4cd1e1a6
Check for sheet directive changes when running simulations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10486
2022-12-05 20:03:42 +00:00
Jeff Young
7e1fecaf2e
Formatting.
2022-12-05 20:03:42 +00:00
Fabien Corona
e861606871
sim: string change
2022-12-05 19:45:57 +00:00
Jeff Young
b7d41e0e56
Update simulator with NUMERIC_EVAL, decimal separator processing, etc.
...
Also includes fixes for instance data and resolving of textvar
references.
Also includes virtual d'tors for IBIS parser to get rid of all the
compile warnings on CLang.
Fixes https://gitlab.com/kicad/code/kicad/issues/12357
2022-12-05 12:40:29 +00:00
Jeff Young
f50b9799a6
Remove old code that was only needed when we auto-added netclasses...
...
... to netclass flags. They're now directive labels and the netclass
field isn't auto-added anymore. However, we *do* auto-add an intersheet
refs field, and that's required.
2022-12-04 21:06:35 +00:00
Jeff Young
1855885d1e
Gracefully handle spice models not recognized by KiCad.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12689
2022-12-04 21:06:35 +00:00
Jeff Young
f29f0c5c0a
Don't push a model that didn't load.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12689
2022-12-04 21:06:35 +00:00
Jeff Young
672927e183
Clearer error message.
2022-12-04 21:06:35 +00:00
Jeff Young
bed22272e5
Supply default values for random uniform voltage sources.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12861
2022-12-04 21:06:35 +00:00
Jeff Young
49abd2682a
Simulation model properties dialog improvements.
...
1) Fix <TAB> processing
2) Don't hide/show controls where possible
3) Use a more concrete reference to primary parameter in Save to Value
checkbox
4) Move Save to Value checkbox into model section
2022-12-04 21:06:35 +00:00
jean-pierre charras
6b9c82c975
eeschema: fix a crash when converting a old .sch file containing global labels.
2022-12-04 21:06:16 +01:00
jean-pierre charras
0562eaa7b1
Eeschema plot: fix some (minor) issues with page size option set to a fixed page-size
...
Fixes #13062
Fixes #13056
Fixes #13057
However, DXF and HPGL is not perfect, but OTOH this is not an usual format for schematic.
PS format is not tested for now.
2022-12-04 16:55:20 +01:00
Graham Keeth
ef83d01455
Minor string changes: "eeschema" / "pcbnew" in tooltips, and power port terminology
2022-12-04 14:29:57 +00:00
Jeff Young
adc5c9eb20
OpenGL render order appears to be the inverse of the drawing order.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13070
2022-12-04 11:51:44 +00:00
Jeff Young
294a4804ed
Minor dialog layout adjustments.
2022-12-04 11:51:44 +00:00
Jeff Young
f805fd267f
Divorce UNIT_BINDER from wxFrame.
...
This allows us to supply Pcbnew or Eeschema as the unitsProvider when
called from the main frame.
Fixes https://gitlab.com/kicad/code/kicad/issues/13066
2022-12-04 11:51:44 +00:00
Jeff Young
f9b3f14dfa
Bring intersheet refs in line with schematic setting when changing sheets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13061
2022-12-04 11:51:44 +00:00
Jeff Young
96819f6c01
Better cache invalidation for text objects with references.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13059
2022-12-04 11:51:44 +00:00
jean-pierre charras
8ab8a48657
fix order of includes to avoid conflicts with a Windows header.
2022-12-03 10:59:46 +01:00
Fabien Corona
bd235048f9
sim GUI: remove "Adjust value" checkbox.
...
We had a change in notation and this checkbox became useless.
2022-12-03 08:28:43 +00:00
Seth Hillbrand
f9a36b9c91
Update thread_pool to 3.3
...
Fixes an issue with `wait_for_tasks()` and adds a lower-overhead
`push_loop` helper. We replace our usage of `parallelize_loop` with
`push_loop` as we didn't use the multi-future vector return and don't
need the extra overhead.
2022-12-02 12:01:34 -08:00
Fabien Corona
6e45987005
fix build warning
2022-12-01 20:33:51 +00:00
Mike Williams
8f646fa9fb
Schematic: fix XOR unselecting one end of fully selected line
2022-12-01 15:00:06 -05:00
Mike Williams
5b2020daf5
Schematic: only delete dangling lines not created directly by the user
2022-12-01 13:13:45 -05:00
Mikolaj Wielgus
f38c5d8cd0
Sim: Add virtual destructor to SIM_SERDE
2022-12-01 17:18:55 +01:00
Mikolaj Wielgus
4ec7ea376e
Sim Ibis: Minor code style changes
2022-12-01 17:13:37 +01:00
kliment
0f09172902
Eeschema: ibis_parser - Fix undefined behavior due to pointer aliasing in isNumberNA
2022-12-01 15:44:38 +00:00
Mikolaj Wielgus
d2adcdfde0
Sim: Add "number of bits" parameter to KIBIS PRBS model and some more fixes
...
The other fixes:
- PRBS's `m_bits` should be an integer.
- Fix some references to outdated parameter names.
2022-12-01 09:19:41 +01:00
Marek Roszko
bae8cb55c0
Rename the bom cli to pythonbom since we'll have a real bom system later
2022-11-30 19:56:59 -05:00
Seth Hillbrand
d23f285f8c
Avoid ngspice segfault
...
When simulating an empty netlist, calling the `.save all` and `.probe
alli` commands gives a segfault in ngspice. We can avoid this by
skipping these commands in KiCad.
Fixes https://gitlab.com/kicad/code/kicad/issues/12938
2022-11-30 15:22:17 -08:00
Seth Hillbrand
01cf6d76d8
Remove newly dangling lines when dragging
...
These lines are remnants from drag operations that should be cleaned
after commiting the new line positions
Fixes https://gitlab.com/kicad/code/kicad/issues/12870
2022-11-30 13:46:38 -08:00
Wayne Stambaugh
e517cad12b
Fix broken hierarchical sheet file paths when adding nest sheets.
...
The file path for each sheet must always be relative to it's parent sheet
or absolute if using a relative path is not possible.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10868
2022-11-30 15:44:59 -05:00
Seth Hillbrand
ce63c37bfd
Handle possible null in dynamic_cast
2022-11-30 12:30:49 -08:00
Wayne Stambaugh
0a62c17040
Remove schematic symbol value and footprint field instance data.
...
https://gitlab.com/kicad/code/kicad/-/issues/12933
2022-11-30 11:47:13 -05:00
Mikolaj Wielgus
7d207c5d2f
Sim Ibis: Change some strings for consistency
2022-11-30 17:38:09 +01:00
Mikolaj Wielgus
e39c0b20ea
Sim: Universally initialize enum parameters with their default values
2022-11-30 12:45:59 +01:00
Mikolaj Wielgus
39cd9f8980
Sim: Fix Sim.Params field generation logic
...
Don't generate the first parameter (e.g. for KIBIS it was 'vcc=""') when
it is empty in models without primary value.
2022-11-30 12:45:58 +01:00
Seth Hillbrand
09cc6decaf
ADDED: ERC for missing units
...
Reports a warning (by default) for missing units
Reports an error for missing units with power input pins
Reports a warning for missing units with input pins
Reports a warning for missing units with bidi pins
Fixes https://gitlab.com/kicad/code/kicad/issues/1922
2022-11-29 23:49:55 +00:00
Seth Hillbrand
4f4e355ce5
Reset existingRefs on cancel
...
When placing, we need to keep our static pointer map valid. If we
cancel the placement after annotation, we need to remove the annotated
symbol. The safer way is to just recreate the map
Fixes https://gitlab.com/kicad/code/kicad/issues/12983
2022-11-29 13:37:23 -08:00
Jeff Young
193e8715f9
Replace wxASSERT with wxCHECK2.
2022-11-29 21:12:53 +00:00
jean-pierre charras
f3aff63726
Fix minor compil warnings
2022-11-29 20:05:58 +01:00
Jeff Young
b2177718a1
Tighten up refresh logic for net & netclass references.
...
Also tightens it up a bit for text variables which can reference things
like netnames and netclasses, but also board settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/13032
2022-11-29 15:18:36 +00:00
Jeff Young
a105f6c297
Add asserting checking.
2022-11-29 14:24:20 +00:00
Mikolaj Wielgus
ab6caca384
Sim: Remove duplicate parameters
2022-11-29 15:02:45 +01:00
Mikolaj Wielgus
b025b103de
Sim Model Editor: Make the VBIC model the first BJT model to select
2022-11-29 10:13:20 +01:00
Mikolaj Wielgus
8143522371
Sim: Fix VDMOS model parsing
2022-11-29 09:48:01 +01:00
Marek Roszko
21fed9fc8c
Hotglue a symbol upgrade function in cli
2022-11-29 00:00:45 -05:00
Fabien Corona
6510afe699
Ibis: Show the parser log if the parser fails
2022-11-28 17:46:42 +00:00
jean-pierre charras
ef6348606a
altium schematic import: convert ports to hierarchical labels instead of global labels
2022-11-28 17:56:46 +01:00
jean-pierre charras
149ddf9ddb
PANEL_SETUP_BUSES: make delete a bus member working.
...
the member list was not updated when deleting a member.
Fixes #13024
https://gitlab.com/kicad/code/kicad/issues/13024
2022-11-28 17:55:04 +01:00
Jeff Young
9a25464337
Prevent nullptr dereference.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12516
2022-11-28 13:38:41 +00:00
Mikolaj Wielgus
20ea191f66
Sim: Fix model param vs. instance param duplicates in diode model
2022-11-28 08:00:49 +01:00
Mikolaj Wielgus
7b1a460649
Sim: Fix unhandled MODEL_TYPE in SIM_MODEL_NGSPICE
2022-11-28 07:59:24 +01:00
Mikolaj Wielgus
d836fbaaaa
Sim: Add VBIC model support
...
Update generate_sim_model_ngspice_data.bash a little, but it's still
outdated.
2022-11-28 04:45:36 +01:00
Wayne Stambaugh
ef624199cd
Fix Altium schematic import bug.
2022-11-27 19:34:46 -05:00
Mikolaj Wielgus
bbcb0c04fc
Sim: Don't crash when parsing unknown model in a Spice file
2022-11-27 08:59:54 +01:00
Mikolaj Wielgus
71d194071b
Sim: Allow Numparam expressions in models inside subckts
...
Global-level numparam expressions are not properly supported yet.
Fixes https://gitlab.com/kicad/code/kicad/issues/12953
2022-11-27 06:32:17 +01:00
Seth Hillbrand
f1556ed801
Prevent mirror of text elements
...
While we never allow the creation of mirrored text elements in the
schematic and symbol library editors, external generation of symbols may
cause the property to be set, which can then never be changed. This
leaves the property unset for all elements
Fixes https://gitlab.com/kicad/code/kicad/issues/13007
2022-11-26 10:48:44 -08:00
Alex
754e82535a
Symbol Fields Table: Highlight the first unit in multi-unit symbols.
2022-11-26 17:30:30 +05:00
Mikolaj Wielgus
0b5814f98f
Sim: Allow .subckt parameter lists without "params:"
...
And fix .subckt parameter list parsing, because it was broken.
Fixes https://gitlab.com/kicad/code/kicad/issues/12779
2022-11-26 10:24:11 +01:00
Mikolaj Wielgus
6f630f7054
Sim: Make library path textbox editable
...
Load the library from the path if enter is pressed or focus is lost if
the library exists. If a library under the same path as previously is
to be loaded this way, don't do anything.
Fixes https://gitlab.com/kicad/code/kicad/issues/12970
2022-11-26 03:55:20 +01:00
Wayne Stambaugh
a89102fdfc
Fix Altium schematic import library symbol bug.
2022-11-25 19:38:13 -05:00
Mikolaj Wielgus
acc760dc25
Sim: Fix generation of Sim.Pins field in multipart models
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12372
2022-11-26 01:34:10 +01:00
Mikolaj Wielgus
6d5cc9e606
Sim: Sort the generated Sim.Pins by symbol pin numbers
...
They were sorted by model pin numbers, which weren't the keys in the
key=value pairs generated into Sim.Pins.
2022-11-26 01:34:10 +01:00
jean-pierre charras
a48d06c40d
Better fix than commit f2efb9c6
for issue #13003 .
2022-11-25 17:29:03 +01:00
jean-pierre charras
f2efb9c601
Make symbol highlighting from Symbol Fields Table working again.
...
Fixes #13003
https://gitlab.com/kicad/code/kicad/issues/13003
2022-11-25 16:17:34 +01:00
Jeff Young
7e0ba42f0e
Bug fixes for dragging labels attached to wires in orthogonal mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12677
2022-11-25 15:05:15 +00:00
Simon Richter
6d1ab81261
Mark unused parameter
2022-11-25 14:10:30 +01:00
jean-pierre charras
6f438b6cad
altium export: add messages about skipped items (IEEE_SYMBOL and PIECHART)
2022-11-25 09:51:13 +01:00
jean-pierre charras
e5877e0840
netlist_exporter_xml: ensure the list of parts is included in netlist.
...
This is obviously mandatory to build a BOM
DIALOG_BOM: generate a full xml netlis. We don't know what is needed by scripts
Fixes #12918
https://gitlab.com/kicad/code/kicad/issues/12918
2022-11-25 08:55:21 +01:00
Mikolaj Wielgus
a65b35107d
Sim: Make Sim.Pins have key-value pairs instead of a sequence
...
Moreover, upgrade models on schematic load instead of on model load
2022-11-25 05:38:21 +01:00
Mikolaj Wielgus
f5ebd6fb47
Remove unused SCH_SYMBOL::GetAllPins()
2022-11-25 05:38:21 +01:00
jean-pierre charras
a71c669543
Altium importer: try to import elliptical arcs rather to skip them.
...
Some schematics use elliptical arcs to describe usual arcs.
2022-11-24 19:43:00 +01:00
jean-pierre charras
199743e8b0
altium/sch_altium_plugin: do not initialize unit to -1 for common to units items.
...
-1 as unit id is illegal and breaks the lib file. So ensure id >= 0
(id = 0 for common to units items)
2022-11-23 14:47:55 +01:00
jean-pierre charras
b1ec694905
Add string change (see commit 7aac53c6
) to dialogs/dialog_sim_model_base.fbp
2022-11-23 14:46:18 +01:00
Jeff Young
651b3f1349
SCH_FIELDs are in parent's coord system.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12979
2022-11-23 13:22:50 +00:00
Wayne Stambaugh
f5707eeca7
Fix assertion in schematic copy formatter.
2022-11-22 16:45:38 -05:00
Wayne Stambaugh
4a27d856f7
Move schematic sheet instance information into file sheet definition.
...
This will make it possible to maintain sheet instance information when
copying and pasting from any sheet other that the root sheet of a
project.
Setting and getting sheet page numbers must now be performed using a
sheet path. This was done to ensure that the instance paths were not
getting changed unexpectedly from different code paths.
2022-11-22 16:45:38 -05:00
Fabien Corona
226dc9de78
Ibis: Don't create unnecessary B source
2022-11-22 21:09:08 +00:00
Fabien Corona
5d4b323009
Ibis : correct net name for device generation
2022-11-22 21:08:26 +00:00
Fabien Corona
7aac53c611
String change: add *.ibs to spice model editor
2022-11-22 21:07:40 +00:00
Mike Williams
60d42a7b1e
Spelling: fix various suppress misspellings
2022-11-22 13:47:10 -05:00
Simon Schaak
bd74489b00
Clean up autosave file handling edge cases
2022-11-22 15:21:26 +00:00
Seth Hillbrand
6625afabb7
Restore subgraph removal behavior
...
Commit 938645b29d
had lines commented out
for debugging purposes. This commit restores the original lines
Fixes https://gitlab.com/kicad/code/kicad/issues/12165
Fixes https://gitlab.com/kicad/code/kicad/issues/12814
2022-11-22 05:43:53 -08:00
jean-pierre charras
b0b8a8dd67
Fix the order of some includes to avoid a conflict with a Windows header
2022-11-22 07:33:14 +01:00
Mikolaj Wielgus
23480cdee3
Sim: Make empty Sim.Params mean storing primary value in Value
2022-11-22 07:09:52 +01:00
Mikolaj Wielgus
1550a1e3a4
Sim Model Editor: Add "Save {} in Value field as "{}"" checkbox
2022-11-22 07:09:52 +01:00
Seth Hillbrand
938645b29d
Add terrible hack to get subgraph netname
...
In certain cases, the subgraph does not receive the proper netname,
preventing us from checking for correct pin counts. This is a backwards
iteration of the net name <-> subgraph map to extract the proper name
and sibling subgraphs
Fixes https://gitlab.com/kicad/code/kicad/issues/12165
Fixes https://gitlab.com/kicad/code/kicad/issues/12814
2022-11-21 15:19:45 -08:00
Seth Hillbrand
e3cc0a5bc7
Prevent crashes when pasting symbols
...
When pasting a symbol that originates in a non-standard library, the
symbol may _only_ have an instance in the sheet and so adding it to the
sheet updates the instance data and needs to be refreshed before
annotating
2022-11-21 13:30:06 -08:00
Mikolaj Wielgus
d63eac9778
Sim: s/SIM_MODEL_MUTUAL_INDUCTOR/SIM_MODEL_L_MUTUAL/
2022-11-21 05:01:12 +01:00
Mikolaj Wielgus
e9fe59a28c
Sim: Rename the missed Sim_* fields to Sim.*
2022-11-21 03:33:11 +01:00
Mikolaj Wielgus
48f97bfec3
Sim Model Editor: Enable type dropdown on load when it should be
2022-11-20 22:56:01 +01:00
Mikolaj Wielgus
6969362813
Sim Model Editor: Don't provide library-only models as builtins
2022-11-20 22:07:39 +01:00
Wayne Stambaugh
6f90a63381
Fix legacy schematic symbol instance data bug.
2022-11-20 14:57:37 -05:00
Alex
12a55f20d3
Fix a mistake in grip margin.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12952
2022-11-21 00:25:19 +05:00
Fabien Corona
8498630876
Ibis: correctly load QA files up to v2.1
2022-11-20 19:10:46 +00:00
Jeff Young
2919490e92
Use hash (not page no) to determine when we've found the current sheet.
...
Also enforces strict ordering in another page number sorter, although
this has nothing to do with the bug below.
Fixes https://gitlab.com/kicad/code/kicad/issues/12043
2022-11-20 13:12:44 +00:00
Jeff Young
3747cae7dc
Reinstate marker searching.
2022-11-20 13:12:44 +00:00
Kevin Lannen
9e5d96b9d3
Pin Table Dialog: Set the pin parent when creating pins
...
Removes the possibility of a pin getting created without a parent.
This fixes a bug where the first pin is created without a parent and then trying to reference the parent later causes a segfault.
2022-11-20 11:13:27 +00:00
Kevin Lannen
83ecd466ae
Pin Table Dialog: Rename m_part to m_symbol to match LIB_SYMBOL naming
...
LIB_PART was previously renamed to LIB_SYMBOL, this renames the member
variable on DIALOG_LIB_EDIT_PIN_TABLE
2022-11-20 11:13:27 +00:00
Mikolaj Wielgus
59501dfa15
Sim: Rename Ibis_* fields to Sim.Ibis.*
2022-11-20 03:53:10 +01:00
Mikolaj Wielgus
059ca8fc48
Sim: Rename Sim_* fields to Sim.*
2022-11-20 03:37:54 +01:00