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
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
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
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
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
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
5984a6dddd
Fixup a few more collapsing textEditCtrls on Mac.
2022-12-14 15:13: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
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
aris-kimi
43d4dd0b7b
Fix some eeschema textbox tooltips
2022-12-12 19:41:26 +00: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
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
65538ccad4
Rename files and classes to match dialog name.
...
Also a bit of formatting cleanup.
2022-12-11 18:42:57 +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
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
107025322c
Better column width handling for sim params grid.
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
jean-pierre charras
0098dfa6dc
Ensure exported spice netlist contains all spice directives found in schematic
2022-12-08 14:03:47 +01: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
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
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
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
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
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
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
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
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
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
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
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
Fabien Corona
6510afe699
Ibis: Show the parser log if the parser fails
2022-11-28 17:46:42 +00: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
Alex
754e82535a
Symbol Fields Table: Highlight the first unit in multi-unit symbols.
2022-11-26 17:30:30 +05: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
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
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
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
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
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
7aac53c611
String change: add *.ibs to spice model editor
2022-11-22 21:07:40 +00:00
Mikolaj Wielgus
1550a1e3a4
Sim Model Editor: Add "Save {} in Value field as "{}"" checkbox
2022-11-22 07:09:52 +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
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
0bdb601d8e
Sim Model Editor: Make IBIS widgets hidden by default
2022-11-20 00:37:17 +01:00
Mikolaj Wielgus
9b6f7d5db7
Sim Model Editor: Use SIM_LIB_MGR class to manage library models
2022-11-19 01:55:38 +01:00
Mikolaj Wielgus
21ae2dd1c0
Sim Model Editor: Initialize all IBIS models as IBIS devices
2022-11-19 01:55:38 +01:00
Jeff Young
e09e521162
Remove GUI calls from netlisting.
2022-11-18 15:29:16 +00:00
Mikolaj Wielgus
28e978ccc9
Sim Model Editor: Fix switching to NONE model in the SME
2022-11-18 09:03:41 +01:00
Mikolaj Wielgus
e7c43ca20a
Sim: Remove inference from Reference and Value
2022-11-18 08:39:15 +01:00
Jeff Young
a61ac363c2
Excise the remaining occurrences of "Alias" for derived symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12895
2022-11-16 18:37:40 +00:00
Jeff Young
1b3f03a800
Don't feed wxWidgets negative column widths.
2022-11-16 13:33:55 +00:00
Jeff Young
bc0a753238
Slight improvement to overly-wide checkbox columns.
2022-11-14 20:01:37 +00:00
Marek Roszko
e109b5883f
Replace string with extension variable
2022-11-12 21:27:10 -05:00
Mikolaj Wielgus
b288e162d2
Sim Model Editor: Remove Override checkbox
2022-11-13 02:13:44 +01:00
Mikolaj Wielgus
d66d810edc
Sim Model Editor: Use SIM_LIB_MGR to store instance models
2022-11-12 23:27:22 +01:00
Fabien Corona
0d78ca8b1a
Ibis: GUI fixes
2022-11-12 14:39:36 +00:00
Mikolaj Wielgus
4caa65d100
Sim Model Editor: Don't use shared_ptr
2022-11-12 04:29:07 +01:00
Mikolaj Wielgus
fef6eaa8ba
Sim Model Editor: Don't use shared_ptr to hack around lifetimes
2022-11-12 03:15:27 +01:00
Marek Roszko
43f039ef5f
Add netlist export cli
2022-11-09 22:37:55 -05:00
Jon Evans
7c71f65869
Add new field attributes to Update from Libraries
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12839
2022-11-08 22:32:47 -05:00
jean-pierre charras
05336798ac
try to fix a wx3.0/wx3.1 compatibility
2022-11-07 20:28:00 +01:00
Mikolaj Wielgus
e8762da4f4
Revert "Support for variable references in SPICE models."
...
This reverts commit 95ebfeeed1
.
This reverts commit 672ce650a9
.
2022-11-07 19:37:40 +01:00
Jeff Young
095f02e6ef
Fix encoding issues in Simulation Model dialog's property grid.
2022-11-07 15:03:18 +00:00
Jeff Young
8fc08b9185
Erc for simulation models.
2022-11-07 12:28:11 +00:00
Jeff Young
95ebfeeed1
Support for variable references in SPICE models.
...
Also fixes a couple of bugs where sheet instance data wasn't being
handled correctly.
2022-11-07 10:57:34 +00:00
Jeff Young
2899ee1eb4
Restore labelling and layout changes lost in revert.
2022-11-05 16:50:54 +00:00
Bevan Weiss
8444339681
Prevent Pin Properties Alternate Pin pane closing on subsequent dialog open
2022-11-04 12:04:32 +00:00
Graham Keeth
6f3e969529
Update BOM dialog help
2022-11-03 22:49:20 +00:00
Sylwester Kocjan
a234d5a2c8
common,eeschema,pcbnew: path cleanup
2022-11-02 13:29:52 +00:00
Marek Roszko
b60c42ea41
Add schematic cli plotting
2022-11-01 23:34:49 -04:00
Jeff Young
1737a3b94e
Fix bugs where values didn't get commited to param grid.
...
This would happen if you click on another grid cell after changing
a value, or clicking OK in the dialog. The old value would get
saved and the new value lost.
2022-10-31 14:09:30 +00:00
Jeff Young
6390c28737
Don't conflate instance and ibis widgets.
2022-10-31 14:09:30 +00:00
Jeff Young
20a4d76635
Reduce line-breaking.
2022-10-31 14:09:30 +00:00
Mikolaj Wielgus
355d5014f5
Revert changing inference checkbox to radio button
...
Reverts 5e1561fc22
and 6c84e0c2f0
.
2022-10-31 07:29:38 +01:00
Jeff Young
5e1561fc22
Some bug fixes for inferred models.
2022-10-29 18:44:49 +01:00
Jeff Young
6c84e0c2f0
Dialog changes for inferred models.
2022-10-29 17:08:06 +01:00
Jeff Young
fb8493d0bc
Move model pin editor to GRID_CELL_ICON_TEXT_POPUP.
...
wxChoice is hopeless on Mac (it still doesn't highlight on rollover),
and using a char for the "assigned" graphic isn't great.
2022-10-28 15:27:00 +01:00
Jeff Young
a42c60d493
Less repetition in pin numbers.
2022-10-28 15:27:00 +01:00
Jeff Young
f3ba10ac67
Usability improvements to Pin Assignments in Sim Model dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12720
Fixes https://gitlab.com/kicad/code/kicad/issues/12721
2022-10-28 00:34:24 +01:00
Jeff Young
a9a2cc3e84
Enhance readability of Simulation Model dialog.
2022-10-27 00:01:38 +01:00
Jeff Young
1240a3dd9f
Minor dialog layout improvements.
2022-10-26 00:49:18 +01:00
Fabien Corona
20b63f305e
Sim: Ibis improvements and fixes
...
Follow-up after the KIBIS and KIBIS GUI merge requests.
- Move KIBIS from Pcbnew to Eeschema space,
- Make KIBIS obtain the Ku/Kd coefficients via the `SPICE_SIMULATOR` class instead of calling the `ngspice` executable via `system()`,
- Allow to toggle between differential and single-ended model in the GUI,
- Various GUI fixes and improvements.
2022-10-25 09:45:40 +00:00
Jeff Young
cef7cd8f7c
Move default font to RENDER_SETTINGS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12723
2022-10-22 21:32:42 +01:00
Mikolaj Wielgus
958bd1897d
Sim: Add potentiometer model
2022-10-22 04:33:52 +02:00
Wayne Stambaugh
598b09821a
Coverity fixes.
2022-10-17 15:30:20 -04:00
jean-pierre charras
aa36e15d66
Eeschema, Print preview: fix a incorrect initial size on wx 3.1.7 (and later)
...
Due to internal changes in wxWidgets, the initial size of the frame was not taken in account.
2022-10-17 10:49:28 +02:00
Mikolaj Wielgus
2475a703d6
Sim Model Editor: Checkbox for toggling inference
2022-10-16 05:10:57 +02:00
Mikolaj Wielgus
c8e13813d9
Sim: Rename Sim_Disabled field to Sim_Enable
2022-10-16 00:49:44 +02:00
Jeff Young
668180f96a
Add "show field names" to Global Edit Text & Graphics Properties.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12641
2022-10-14 23:04:09 +01:00
Jeff Young
7ffdfb1067
Clear Scintilla undo history after setting initial text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12650
2022-10-14 22:01:20 +01:00
Wayne Stambaugh
41461f7a69
Improve symbol rescue dialog.
...
* Fix some minor layout issues on Linux.
* Use button labels to clarify rescue actions.
2022-10-13 10:37:04 -04:00
Jeff Young
bd1114d94d
Move footprint properties dialogs to symbol properties grid resizing strategy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9883
2022-10-12 00:38:44 +01:00
Jeff Young
e02c05d38f
Add unit and eval support to WX_GRIDs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1871
Fixes https://gitlab.com/kicad/code/kicad/issues/4285
2022-10-11 23:40:58 +01:00
Jeff Young
3967435f94
Tighter control of busy cursor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11648
2022-10-11 11:22:26 +01:00
Jeff Young
d3797dd183
Code clarity. (No functional changes.)
...
Also some more error message cleanup for consistency.
2022-10-11 11:22:26 +01:00
Jeff Young
8a9e92bc01
More consistency in error messages.
2022-10-11 11:22:26 +01:00
Mikolaj Wielgus
d9eb76eae0
Sim: Refactor SPICE_GENERATOR methods to accept a single SPICE_ITEM
2022-10-11 02:22:59 +02:00
Mikolaj Wielgus
6d958c5a3b
Sim: Remove some superfluous class members
2022-10-10 13:49:43 +02:00
jean-pierre charras
79c301800a
Eeschema printing: fix some issues.
...
The offset setting was incorrect when using wxAffineMatrix2D.
It was especially visible when printing more than one sheet.
Note also when not using wxAffineMatrix2D, all pages must have the same orientation
(PORTRAIT/LANDSCAPE is not managed)
Fixes #12211
https://gitlab.com/kicad/code/kicad/issues/12211
2022-10-09 18:20:19 +02:00
Jeff Young
19d270fe74
Text size sanity checking for TEXT_ITEMS_GRID.
...
Oh dear, there was a bunch going on here. Firstly the move from int
to long long int for ValueFromString() means that we were no longer
catching overflows (as we were C-style casting it back to int in many
places). But even when the overflow is caught, it would run in to
wxWidgets' empty string bug while trying to log it.
Fixes https://gitlab.com/kicad/code/kicad/issues/12577
2022-10-06 13:19:08 +01:00
Mikolaj Wielgus
6f2b2d7e19
Sim: Minor SIM_LIBRARY cleanup
2022-10-06 14:08:01 +02:00
Wayne Stambaugh
0336cff8d6
Allow schematic symbol value and footprint fields to be instantiated.
2022-10-05 11:12:21 -04:00
Mikolaj Wielgus
8e34dae347
Sim Model Editor: Fix exclude symbol checkbox
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12344
2022-10-05 11:24:46 +02:00
Mikolaj Wielgus
2f756d9d23
Sim Model Editor: Fix Model panel sizing
2022-10-04 23:47:52 +02:00
Wayne Stambaugh
a11c40197f
Expunge default symbol instance from schematic file format.
...
Now that importing hierarchical sheets "properly" imports instance data,
the default symbol instance setting doesn't have any meaning.
2022-10-04 15:42:41 -04:00
Mikolaj Wielgus
c2765f40ca
Sim Model Dialog: Fix nullptr dereference
2022-10-04 17:48:10 +02:00
jean-pierre charras
efdb67aa64
Minor fixes.
2022-10-01 18:42:02 +02:00
Mikolaj Wielgus
0d369f700f
Sim: Basic cleanup after KIBIS merge
...
- Some preliminary refactoring,
- Use multiple types for IBIS drivers instead of a wftype variable,
- Remove the m_requiresUIUpdate variable and its accessors.
2022-09-30 16:17:00 +02:00
Mikolaj Wielgus
62f89ba0d6
Sim GUI: Remove irrelevant references to Spice
2022-09-30 14:32:57 +02:00
Jeff Young
67caebe4c4
When the sash button is right next to the fp dropdown they look related.
2022-09-30 13:02:08 +01:00
Fabien Corona
7e486327d9
Ibis differential and PRBS models
2022-09-29 08:35:01 +00:00
jean-pierre charras
dcc325b3b2
More about fix compil issues and warnings, especially in ibis code.
...
A few are msys2 specific and due to include files order.
2022-09-28 11:26:07 +02:00
Fabien Corona
528fe4d371
Add Ibis to spice model editor
...
ADDED: IBIS models are now supported in Sim Model Editor
2022-09-27 20:47:00 +00:00
Jeff Young
fb80f83335
Formatting.
2022-09-27 11:12:58 +01:00
Jeff Young
838bd7292c
Default intersheet ref field visibility to off, and show warning
...
when user tries to edit via Symbol Properties or Field Propeties.
2022-09-26 21:00:46 +01:00
Jeff Young
58874a591b
Improve tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12510
2022-09-26 17:44:52 +01:00
Ian McInerney
40ff7cb9bd
Fix some UI element spacing in settings panels
2022-09-25 15:41:39 +01:00
Ian McInerney
b363e0f300
Simplify lib shape properties dialog code
...
Since 34e706bcbc
it is assumed that the
shape passed in exists, so testing for a null pointer is pointless
(it will always be non-null). Also hardcode the assumption the shape is
non-null in the constructor using an assert.
2022-09-25 15:41:39 +01:00
Marek Roszko
209e1b2086
Add naming of the outline page entries
2022-09-24 22:54:38 -04:00
Ian McInerney
44c2782d39
Fix more for loops making copies of iterates
2022-09-25 00:48:38 +01:00
Ian McInerney
1683e552f7
Add/fix some variable initializations
2022-09-25 00:48:38 +01:00
Jeff Young
659a6e5b04
Replace macHack as its requirement sadly never went away.
2022-09-24 23:50:45 +01:00
Ian McInerney
d9846a006a
Get lib shape fill color from settings if not specified by shape
2022-09-24 03:46:06 +01:00
Ian McInerney
fdb97a46c1
Don't copy items in for loops when not needed
2022-09-24 03:46:06 +01:00
Jon Evans
35520c78e4
Fix missing virtual dtor
2022-09-23 21:44:15 -04:00
Jon Evans
2089374f53
ADDED: Export symbols from schematic to library
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11433
2022-09-23 21:23:01 -04:00
Ian McInerney
c71c192372
Fix warning generated by sim string changes
2022-09-24 01:37:57 +01:00
Mikolaj Wielgus
e4865ce543
Excise wxString from simulation
2022-09-22 07:41:52 +02:00
Jeff Young
fc10db25ba
Netclass directive and label conversion improvements.
...
1) Copy label fields when converting.
2) Don't assume netclass directive should be net name -- this is very
unlikely.
3) Don't show font controls in Netclass Directive Properties dialog --
there's no basic text associated witha Directive Label.
2022-09-22 01:22:19 +01:00
jean-pierre charras
78087597cd
Avoid including plotters/plotter.h in many files.
...
It avoid a large rebuild when modifying the plot code.
2022-09-21 08:52:34 +02:00
Jeff Young
7f34586c7e
Allow text variable resolution through properties in drawing sheet text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12473
2022-09-20 15:28:05 +01:00
Jeff Young
64a6fc0fd4
Push UNITS_PROVIDER down into a low-level mixin.
...
This allows us to also construct cheap UNIT_PROVIDERs for specific
tasks when necessary.
2022-09-19 17:10:59 +01:00
Jeff Young
45d6b4a9fc
Readability improvements.
2022-09-19 11:18:20 +01:00
Marek Roszko
63295cfb9e
Remove unused vars
2022-09-18 08:49:07 -04:00
Mikolaj Wielgus
a8d7a845b6
Sim: Rename SIM_MODEL_SPICE to SIM_MODEL_RAW_SPICE
2022-09-18 07:25:56 +02:00
Marek Roszko
66e8931405
Remove IU_PER_MM thats standalone
2022-09-16 21:09:27 -04:00
Marek Roszko
7a5829f8d6
Move IU2Mils
2022-09-16 21:09:27 -04:00
Marek Roszko
61e11d6896
Strip out Mils2Iu
2022-09-16 21:09:27 -04:00
Marek Roszko
e6ed275c25
Repoint IU_PER_MILS
2022-09-16 21:09:26 -04:00
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
2022-09-16 21:09:26 -04:00
Seth Hillbrand
e0a6ff3f14
Don't hold on to the background print color option
...
When printing b/w we need to set the print background to off otherwise
we can inadvertently get backgrounds printing
2022-09-16 17:23:06 -07:00
Seth Hillbrand
524b129c64
ADDED: Support for explicit DNP field
...
Dims elements shown as DNP. Adds property `dnp` to explicitly denote
parts that should not be populated. These parts are not included in X/Y
files
2022-09-16 22:26:16 +00:00
Jeff Young
2aa8facacd
Reconcile SPIN_STYLE and text alignment/rotation controls.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12443
2022-09-16 20:01:18 +01:00
Mark Roszko
b00178adb3
Nuke base_units from orbit
2022-09-16 04:38:10 +00:00
Jeff Young
1e64db779c
Fix some issues in ERC error messages.
...
1) use consistent punctuation
2) make sure all are translated
Fixes https://gitlab.com/kicad/code/kicad/issues/12432
2022-09-15 23:43:46 +01:00
jean-pierre charras
fb793d9a62
Recreate panel_eeschema_editing_options_base.cpp: there were strange tooltips.
...
Looks like the file was edited by hand.
2022-09-15 16:13:51 +02:00
Jeff Young
a21d24a4c8
Experiment with loading recent searches into the search menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-15 14:44:02 +01:00
jean-pierre charras
83fb06ff75
Fix compil and Coverity warnings.
2022-09-15 10:50:14 +02:00
Mikolaj Wielgus
907ad27e7f
Sim: Move SPICE_GENERATOR class to a new file
2022-09-15 05:26:23 +02:00
Jon Evans
da9be1a812
ADDED: Multi-selection cut/copy/paste in symbol editor library tree
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11505
2022-09-14 22:20:38 -04:00
kliment
b97f9ea329
Add support for symbol unit display names in eeschema and symbol editor
2022-09-14 22:11:37 +00:00
Mikolaj Wielgus
e4c5bc6c66
Sim: Refactor Spice code generation to a new SPICE_GENERATOR class
2022-09-14 09:36:49 +02:00
aris-kimi
7cc14100fe
Modify some sizers in Preferences, Symbol Editor
...
Display and Editing Options
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11721
2022-09-13 22:05:32 +03:00
Jeff Young
d3d5d0f46e
Distinguish between user added fields and those found in symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11511
Fixes https://gitlab.com/kicad/code/kicad/issues/8999
2022-09-12 23:39:33 +01:00
Jeff Young
45fb0107a0
Copy field properly.
...
Offset for new parent, and set parent property.
Fixes https://gitlab.com/kicad/code/kicad/issues/12376
2022-09-11 23:16:34 +01:00
Jeff Young
fb48bef49f
Formatting.
2022-09-11 23:13:37 +01:00
Jeff Young
536561f7b3
Move bus aliases to std::set.
...
This is mostly to output the aliases sorted (for ease of VCS integration),
but also because a btree will be faster than hashing on a small dataset.
Fixes https://gitlab.com/kicad/code/kicad/issues/11890
2022-09-11 19:48:08 +01:00
Jon Evans
371985b3e2
Autoplace fields if enabled after changing symbol
2022-09-11 10:11:25 -04:00
Mikolaj Wielgus
91358dfcac
Sim Model Editor: Fix Enable/Disable of parameters
...
Only SIM_STRING_PROPERTY-based parameters were updated.
2022-09-11 15:24:16 +02:00
WhiteChairFromIkea
50716ed8f2
Simplify "Remove fields"
2022-09-11 12:28:53 +00:00
Jeff Young
fdc00ed22d
Fix uninitialized variable.
2022-09-10 10:25:52 +01:00
Jeff Young
bcaca947b9
Don't display busy cursor over remap symbols dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11648
2022-09-10 09:31:27 +01:00
Jeff Young
f87bf3c46d
Special case up-key so it can get past headers in paged dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10078
2022-09-10 09:31:27 +01:00
Seth Hillbrand
f2e3329617
Add ERC QA tests
2022-09-09 17:21:57 -07:00
jean-pierre charras
aeb7447102
Fix a compil issue on wxWidgets version < 3.1.6
...
wxSpinCtrl::SetIncrement() exists only in version >= 3.1.6
2022-09-09 20:14:38 +02:00
Jeff Young
6507a4165e
Work around odd issue with wxWidgets initializing control wrong.
2022-09-09 18:09:09 +01:00
Mikolaj Wielgus
300a1c4144
Add a new schematic exporter to Spice .subckt model
...
An option to use the current sheet as root is added to both the original
and new (.subckt model) exporters.
2022-09-09 16:18:48 +02:00
Jeff Young
f179754118
Implement add-new-on-return for some of our grids.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12335
2022-09-09 13:41:13 +01:00
WhiteChairFromIkea
77046e9506
Add "Open file after plot" to Plot dialog
2022-09-08 11:11:20 +00:00
Jeff Young
f4de7bfc48
Improve dialog layout.
2022-09-08 00:28:30 +01:00
Jeff Young
9e8e241924
Fix some missing swatch background colours in EEschema dialogs.
2022-09-06 13:59:52 +01:00
jean-pierre charras
95f0c863b8
Remove a log message used in debug and left in code by mistake.
2022-09-05 18:33:18 +02:00
jean-pierre charras
fd94a3b532
DIALOG_SYMBOL_PROPERTIES: fix an issue about symbol flags:
...
It prevent saving changes in undo/redo stack.
2022-09-05 12:57:07 +02:00
jean-pierre charras
92edee5a08
Fix issues related to m_unit SYMBOL member:
...
- ensure it is updated in DIALOG_SYMBOL_PROPERTIES
- ensure it is restored after changes in CONNECTION_GRAPH::Recalculate
2022-09-04 20:59:06 +02:00
Jon Evans
04f65c6c5c
ADDED: Option to disable autoplacement for particular fields
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5767
2022-09-04 13:01:31 -04:00
Jon Evans
4ea0a80df0
CHANGED: Fields may now optionally display their name before their value
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11457
2022-09-03 17:03:37 -04:00
Jeff Young
c30a557810
ADDED netclass assignment from PCB canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
Mikolaj Wielgus
f6b1ff821b
Sim Model Editor: Improve raw model code preview
...
- Show whole file below the item line for reference
- Fix pin sequence in item line (was not displayed)
2022-09-03 16:20:41 +02:00
Wayne Stambaugh
4c096fee15
Eeschema: fix crash when attempting to edit missing library symbol.
...
Disable the edit symbol buttons in the symbol properties dialog when
there is no library symbol to edit.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11318
(cherry picked from commit 5afeb45a84
)
2022-09-02 16:25:34 -04:00
Jeff Young
20eca94fca
ADDED vertical alignment for text boxes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12340
2022-09-02 19:16:38 +01:00
Jeff Young
6850dd5482
Sort row references before sorting rows.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12275
2022-09-01 18:17:41 +01:00
Jeff Young
ec414c88a2
Don't leave space for auto rotate checkbox when its hidden.
2022-09-01 14:27:16 +01:00
Jeff Young
ebe9617e77
More EDA_RECT expungification, and an attempt to fix the python test.
2022-08-31 17:19:48 +01:00
Jeff Young
63386ba64d
Pointer safety for ERC/DRC dialogs.
...
Also makes the "Edit ingored violations" easier to find.
Fixes https://gitlab.com/kicad/code/kicad/issues/12308
2022-08-30 12:07:19 +01:00
Mikolaj Wielgus
bd6c153ad9
Sim: Implement "enum" model parameters for switches
...
Displayed in Sim Model Dialog parameter grid as a dropdown
(wxEnumProperty).
2022-08-30 09:45:49 +02:00
Marek Roszko
03aa63bd50
Move 5 helpers to EDA_UNIT_UTILS since they aren't iu specific
2022-08-29 20:11:03 -04:00
Mikolaj Wielgus
3b3131ad74
Create class for voltage and current -controlled switches
...
Unfortunately, along the way it turned out that Ngspice's .probe alli
breaks current-controlled switches. So they won't work in that case for
now.
2022-08-29 03:49:41 +02:00
Jeff Young
48f77973da
Another try at getting the Link combobox working on MSW.
2022-08-28 23:25:01 +01:00
Jeff Young
95fd7cb80a
Move wxComboBox to wxBitmapComboBox in hopes it will work better.
...
(Not sure if it solves the MSW issues yet, but at least it highlights
the items in the dropdown on rollover on OSX.)
Also added some text to the dropdown menu for intersheet references in
the PDF.
2022-08-28 12:05:27 +01:00
Roberto Fernandez Bautista
a76d1a791d
Hyperlinks: Don't forget about file:// protocol
2022-08-27 23:16:28 +01:00
Jeff Young
122a6d7f46
Move hypertext linking to user-page-numbers.
...
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
2022-08-27 19:17:43 +01:00
Roberto Fernandez Bautista
72e39fc865
Get it working for SCH_TEXT with infobar error message
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
e7920bdda4
wip - fixes
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
840bcffefb
ADDED: Hyperlinks on text items in Schematic Editor
2022-08-27 19:17:42 +01:00
Marek Roszko
bf964d8678
Commonize page_info by simply making the Iu scale a parameter on call.
2022-08-27 13:36:00 -04:00
Jon Evans
300d92438c
Allow hiding symbol library tables from symbol chooser
...
Hidden but loaded libraries are useful when using database libraries
2022-08-26 20:18:40 -04:00
Jeff Young
a90f223644
Take a stab at fixing some likely-event-ordering issues on MSW.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12289
2022-08-26 17:05:25 +01:00
Jon Evans
ae6a2a6443
ADDED: Database libraries MVP
...
Allows placing parts from an external database that reference symbols from another loaded library.
Includes:
- nanodbc wrapper
- database schematic library plugin
- basic tests
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7436
2022-08-26 10:51:13 -04:00
Mikolaj Wielgus
963900ab83
Sort sim model pins by symbol pin number in sim model dialog
2022-08-26 04:36:48 +02:00
jean-pierre charras
a306246558
Fix a few (minor) compil and Coverity warnings.
2022-08-25 20:21:00 +02:00
Marek Roszko
e0f28fc4e1
Replace wxFindReplaceData with our own container
...
By dropping the flags, we can be strict with options.
Also it makes future usage of search functionality a little more "UI" framework independent
2022-08-23 22:16:51 -04:00
Jeff Young
638198251a
Coverity fixes.
2022-08-22 17:52:58 +01:00
Mikolaj Wielgus
6fad25f8ed
Allow mapping sim model pins to arbitrary string symbol pin numbers
...
This change removes the incorrect assumption that symbol pin numbers are
integers and are the same as indexes in the vector storing the symbol
pins.
"~" is now used to denote a floating sim model pin.
2022-08-22 08:13:26 +02:00
Jeff Young
88c9177ff6
Move bus members from wxArray to std::vector and fix some bugs in dialog.
2022-08-21 20:54:41 +01:00
Jeff Young
b2a2d66005
Move Bus Definitions to common GUI paradigm in Schematic Setup.
...
Also includes a change to the std::initializer_list stuff to try and
fix a crash.
2022-08-21 12:29:51 +01:00
jean-pierre charras
a75b537a52
Avoid using a single word in dialog, not really translatable.
...
Single word string having many meanings is not translatable.
2022-08-21 10:16:29 +02:00
Jon Evans
afab26d554
Don't paint hidden fields without a schematic context
2022-08-20 17:56:53 -04:00
Jon Evans
8694c37376
Remove requirement that non-power symbols share a name and value
...
There is no technical reason for this restriction for non-power symbols, so let's remove it.
This will allow more flexibility and compatibility with other tools.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9389
2022-08-20 17:43:43 -04:00
Jeff Young
942732057b
Add bus aliases to pre-canned labels in the label combobox.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12248
2022-08-20 16:07:59 +01:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
Marek Roszko
d4e4071be3
Avoid netlist export dialog crash from trying to delete a non-custom format
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12229
2022-08-15 19:12:46 -04:00
Wayne Stambaugh
898ec0d094
Fix wxWidgets 3.1 and later deprecated build warnings.
...
wxWidgets 3.1 has deprecated wxPATH_NORM_ALL when normalizing file
paths when calling wxFileName::Normalize(). This change keeps the
existing behavior except in places where our own internal
ExpandEnvVarSubstitutions() to expand environment variables.
2022-08-15 08:00:40 -04:00
Jeff Young
a9536b5de9
CHANGED netclass assignments now done via canvas or via patterns.
2022-08-14 22:56:29 +01:00
jean-pierre charras
4270c6d676
DIALOG_SYMBOL_PROPERTIES: rebuild the pin list when selecting another unit.
2022-08-13 11:00:00 +02:00
Seth Hillbrand
d142cf239e
Avoid null pin assertions
...
When changing units, we might not have the original pins
available to set the Alt assignments. Instead, we search
by number and skip the pin if it doesn't exist in the
new unit
Fixes https://gitlab.com/kicad/code/kicad/issues/12218
2022-08-12 18:25:49 -07:00
jean-pierre charras
488a53e71b
Fix a few minor Coverity warnings
2022-08-12 10:51:36 +02:00
Jeff Young
a11f48ef10
Markers provider is no longer responsible for all markers.
...
Unconnected items and schematic partity violations are also now
represented by markers, so the ERC/DRC window itself needs to do
the deep-delete.
Fixes https://gitlab.com/kicad/code/kicad/issues/12182
2022-08-08 22:02:20 +01:00
Mikolaj Wielgus
5d64fc12a1
Attempt to fix GCC MSYS2 build crash
...
Initialize ngspice_models.cpp structures at runtime on demand. Use
a sequence of std::vector::emplace_back() instead of
brace-initialization.
2022-08-02 14:47:28 +02:00
jean-pierre charras
c815847b1e
DIALOG_SIM_MODEL: fix some issues (not all)
...
* internationalize
* fix min size
* show lib filename in a not editable wxTextCtrl instead of a wxStatic Text
2022-08-02 12:52:22 +02:00
Jeff Young
6f49b57f9b
Cleanup & performance enhancements.
2022-08-01 13:09:51 +01:00
Seth Hillbrand
4074409890
Fix broken compile on Linux/Mac
...
Template instantiations need to follow the template definitions or you
don't get all of the template members, just the ones called from within
the file
2022-07-31 19:49:28 -07:00
jean-pierre charras
4915f6ca20
Fix a few compil warnings
2022-07-30 14:06:51 +02:00
Mikolaj Wielgus
7cf5138c63
Sim: Bugfixes, mostly for MS Windows compilation errors
...
Unfortunately, Windows headers define a lot of macros for common words,
so we had to rename some enums to not collide.
We also fix some of the many bugs related to the new simulation
architecture and the Spice Model Editor dialog.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
739b9255d9
Sim Model Editor improvements
...
- Tab-switching,
- Automatic expansion of categories on tab-switch,
- Various minor simulation improvements,
- Various new simulation-related bugfixes.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
6984f63af8
Sim: Transmission line models
...
Implement transmission line models and perform some adjustments to
the current models. Add some QA tests.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
fe38c622a9
Sim: Improvements to model serialization
...
Don't serialize parameters in certain models for default values. Infer
models from Value field for some kinds of models. Resolve synonyms when
loading models from Spice libraries.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
6450ec6b85
Sim: Spice netlist exporter rewrite
...
Rewrite the spice exporter to work with the new simulation model
architecture and data model, with many bugfixes related to the latter
two along the way.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
ce84a48037
Sim: Implement loading Spice library files
...
Implement parsing and loading Spice libraries into KiCad. This is done
without any involvement of Ngspice -- we create our own in-tree parser
using PEGTL -- because Ngspice doesn't offer any intermediate output we
could plug ourselves into. We don't parse everything -- just the library
content, so this won't be that much effort.
We implement some basic Spice code preview to give the user a hint what
Spice code eir model will correspond to.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
978f01553b
Sim Model Editor: Serialize models in fields
...
Implemented serialization and deserialization of models in symbol fields
through the SIM_VALUE class. We don't carry the Spice legacy of
case-insensitive suffixes, instead we conform to the SI standard (i.e. M
is Mega, not milli, P is peta, p is pico).
Parameter grid value validation is implemented by simply not allowing
any characters that will make the value invalid (instead of highlighting
the field in a red color). This will likely be changed at some point in
the future.
2022-07-30 02:25:34 +00:00