Commit Graph

9545 Commits

Author SHA1 Message Date
Jeff Young f942b4c657 Don't allow extra text in Sim.* fields.
(In particular, the field name.)

Fixes https://gitlab.com/kicad/code/kicad/issues/13996

(cherry picked from commit 71df3f9edb)
2023-02-24 20:47:22 +00:00
Jeff Young f5aeb5b068 More dead code removal and a bit of formatting and const& for strings.
(cherry picked from commit a126d961d8)
2023-02-24 20:47:22 +00:00
Jeff Young 7f6cb9b07b Remove most of SIM_VALUE in favour of good old wxString.
This allows us to save the user's intent, including units, formatting,
and crucially variable references.

(cherry picked from commit 68fe146861)
2023-02-24 20:47:22 +00:00
Jeff Young db3657d411 Terminology and more dead code.
(cherry picked from commit 29f21cdde6)
2023-02-24 20:47:22 +00:00
Jeff Young 38e5da724d Remove dead and redundant code.
(cherry picked from commit 90adc26b73)
2023-02-24 20:47:22 +00:00
Jeff Young 962b2d45ef Implement default levels for JFETs, MOSFETs and MESFETs.
(cherry picked from commit fe2679d965)
2023-02-22 18:04:23 +00:00
Jeff Young 7894b41277 Don't allow 0 field text size.
Fixes https://gitlab.com/kicad/code/kicad/issues/13987

(cherry picked from commit cb71ea872b)
2023-02-22 18:04:23 +00:00
Jeff Young 51d0b8d2b5 Don't allow SCH_LABEL_LOCATE_ANY_T to steal SCH_LABEL_LOCATE_WIRE_T's items.
Fixes https://gitlab.com/kicad/code/kicad/issues/13936

(cherry picked from commit 5967ab9a4d)
2023-02-22 18:04:23 +00:00
Jeff Young 7b992a1dc4 Correctly netlist a voltage source with both AC and DC values.
Fixes https://gitlab.com/kicad/code/kicad/issues/13912

(cherry picked from commit c618bb7046)
2023-02-22 18:04:21 +00:00
Jeff Young 2f8615c6c4 Don't use the just-in-time model resolver when updating the dialog.
If it changes in the middle it will leave you in a world of hurt.

Also don't update the library after a loss-of-focus unless the path
really changed.

Fixes https://gitlab.com/kicad/code/kicad/issues/13869

Fixes https://gitlab.com/kicad/code/kicad/issues/13854

(cherry picked from commit 64f1808d60)
2023-02-22 17:53:10 +00:00
Marek Roszko fd4a0dbedf Fix up handling of font names available in multiple names
ttf fonts can declare multiple language names. Many by default opt to just declare one and not tag it any particular language.
However, there are CJK languages that typically leverage this function the most. They'll tag both a "en" and a cjk lang family name in CJK characters.

To be as user friendly as possible, we need to display said fonts in the CJK languages if KiCad to set to such a locale.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14011


(cherry picked from commit 39e69a3d29)
2023-02-22 01:27:09 +00:00
Fabien Corona c00a98fed4 Revert "sim - Remember the option to save powers"
This reverts commit 74dcc1b9d5.
2023-02-20 20:59:52 +01:00
Fabien Corona 74dcc1b9d5 sim - Remember the option to save powers
Fixes #13978


(cherry picked from commit 2a3b70b7eb)
2023-02-20 19:38:19 +00:00
Fabien Corona 17241b3543 sim - missing assignment 2023-02-20 18:15:37 +01:00
Fabien Corona a4a859f47b sim - Check FindParam() results before using them 2023-02-20 18:14:48 +01:00
Fabien Corona b66ed8bc41 sim - don't write dc parameter twice 2023-02-20 18:13:44 +01:00
Fabien Corona 754feff5e7 sim - allow sources that are both AC and TRAN 2023-02-20 18:12:36 +01:00
Fabien Corona cd1b425a80 sim: VSIN - allow user to specify a phase
TD is not the same as PHASE.
TD is the delay before the source turns on.
PHASE is ... the phase

If only TD is set, the signal starts later, but the phase is still 0 when compared to the t=0 of the simulation.

(cherry picked from commit 39a1b14a0f)
2023-02-20 08:45:09 +00:00
Marek Roszko 5d793193e0 Fix crash by using a shared_mutex to read/write lock the nickIndex
Fixes sentry kicad-ax
2023-02-18 13:02:25 -05:00
Alex b63d0a3138 Keep image sizes when loading/saving 7.0- schematic file formats.
Previously, images were assumed to have 300 PPI density when loading from
schematic, but not after initial placement.


(cherry picked from commit bd4758e4df)
2023-02-17 01:50:01 +00:00
Alex 7949c09183 Prevent ghost image after canceling bitmap placement.
(cherry picked from commit ecb28ddf1c)
2023-02-17 01:49:47 +00:00
Jon Evans 9f44809164 Revert "Handle another case where schematic view was being cleared"
This reverts commit 245ce7259c.
2023-02-16 16:44:30 -05:00
Jon Evans f7ccb18af5 Revert "Symbol editor: stop removing overlay from view"
This reverts commit f36cd60fdb.
2023-02-16 16:44:20 -05:00
Jon Evans cca9945867 Revert "Fix handling of selection overlay in schematic editor"
This reverts commit e2711a6121.

This ended up being too complex for 7.0
2023-02-16 16:43:57 -05:00
Jon Evans 245ce7259c Handle another case where schematic view was being cleared
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13944


(cherry picked from commit ec2fc161e1)
2023-02-16 13:25:44 +00:00
Jon Evans f36cd60fdb Symbol editor: stop removing overlay from view
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13944


(cherry picked from commit 955a5a13eb)
2023-02-16 13:17:34 +00:00
Jon Evans e2711a6121 Fix handling of selection overlay in schematic editor
We weren't actually using the overlay group at all

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11142


(cherry picked from commit 0f18a36f8f)
2023-02-16 02:17:36 +00:00
Jon Evans 08c6d9ce96 Set PPI properly in schematic bitmaps, too
(cherry picked from commit e8a88411ea)
2023-02-15 02:37:22 +00:00
Jon Evans 37091df142 Symbol chooser: save UI settings even when canceled
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13903

(cherry picked from commit 29c4482bc8)
2023-02-14 18:27:31 -05:00
Jon Evans 21081cf80f Handle custom columns in symbol tree synchronizing adapter
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13907

(cherry picked from commit 0913552f84)
2023-02-14 18:27:21 -05:00
Seth Hillbrand d1ca84aa43 Don't desaturate the selection shadow
Selection shadows are helpful when showing which elements are selected
and there is no benefit (and some downside) to having their color
removed.

Fixes https://gitlab.com/kicad/code/kicad/issues/13878

(cherry picked from commit 9f8b25a0b0)
2023-02-14 10:22:49 -08:00
Jeff Young f4b2b1b03f Workaround wxWidgets enforced min pen width by using transparent pen.
Also fixes some bugs in our shape printing code when a border is not
specified but a fill is.

Fixes https://gitlab.com/kicad/code/kicad/issues/13891

(cherry picked from commit 03484aedbc)
2023-02-14 14:45:24 +00:00
Jeff Young 7816652078 Account for border when calculating text margin for text boxes.
Also fixes some unnoticed issues with the textbox dialogs (probably
dating from the move to wxWidgets 3.2).

Fixes https://gitlab.com/kicad/code/kicad/issues/13877
2023-02-13 17:07:42 +00:00
Jeff Young 20aacc7026 Don't confuse .OP with .OPTIONS.
Fixes https://gitlab.com/kicad/code/kicad/issues/13849

(cherry picked from commit d6bef19811)
2023-02-13 13:34:40 +00:00
Jeff Young 49938cfd09 Fix layout issue in IBIS fields. 2023-02-13 12:42:42 +00:00
Jeff Young 53a4ed6b24 ReadDataFields must be a separate step from Create.
Create() is done without execption processing, while ReadDataFields
should have exception processing.

(This also fixes a case where exception processing on ReadDataFields
was missing.)

Also fixes a bug where the pinSelect menu wasn't checked for -1 before
fetching.

Fixes https://gitlab.com/kicad/code/kicad/issues/13856
2023-02-13 12:42:42 +00:00
Jeff Young 7e2ccbf909 Prepend correct SPICE prefix when necessary for plotting currents.
Fixes https://gitlab.com/kicad/code/kicad/issues/13850

(cherry picked from commit a22964a977)
2023-02-13 10:59:32 +00:00
Jeff Young 77fa61e6fc Make sure screen RTrees are updated when changing bounding boxes.
(cherry picked from commit 7bc79c17d4)
2023-02-13 10:54:59 +00:00
Jeff Young 94c450ad16 Bug fixes for LIB_PIN boundbox generation.
(cherry picked from commit 9ce5978c3d)
2023-02-13 10:54:55 +00:00
Jeff Young a292bf7c83 Don't dirty connectivity when moving non-reference SCH_FIELD.
(cherry picked from commit 2e9ed67e05)
2023-02-13 10:54:49 +00:00
Marek Roszko b24ee1c44f Prevent a crash when a spice SW_I lacks two pin net names
Fixes KICAD-5D


(cherry picked from commit 2cc3d8e9bc)
2023-02-13 03:32:07 +00:00
Jon Evans a6776edc26 Try to resolve worksheet filename before saving it
The new code was added to handle saving imported worksheets,
but it is possible to specify relative paths to worksheets
not only to the project folder but also to the global
templates directories.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/13834
2023-02-11 10:33:23 -05:00
Alex 93020cf78f Set select_pin_selects_symbol to false by default. 2023-02-11 16:51:55 +03:00
Alex 81a55c42a1 Fix unintentional string change in IBIS parser. 2023-02-11 02:19:06 +03:00
Paweł Płóciennik 06e3e63b96 Eeschema: text properties: reference field autocomplete ignores first char. 2023-02-10 21:56:03 +00:00
Marek Roszko c22fb390ec Set the text proeprties grid bag to avoid reserving space for hidden cells 2023-02-09 23:04:51 -05:00
Jeff Young d4ca54a798 Handle global label offset when plotting.
Fixes https://gitlab.com/kicad/code/kicad/issues/13301
2023-02-09 18:02:21 +00:00
jean-pierre charras 3d23d0e16a Fix compatibility with wxWidgets 3.0.5
Fixes #13808
https://gitlab.com/kicad/code/kicad/issues/13808
2023-02-07 21:09:03 +01:00
Jeff Young 77d4704b45 Don't return a lib-tree symbol if the lib-tree is hidden. 2023-02-07 15:53:14 +00:00
Chris Morgan e14f0848fa SCH_EDITOR_CONTROL::Paste() - Adjust refdes behavior to match when creating new symbols
Pass 'false' as aStartAtCurrent to ReannotateByOptions(). Causes Pasing() symbols to start at the first available refdes after the currently
configured annotate start number, m_annotateStartNum.

Fixes #13342
2023-02-06 14:05:04 +00:00
jean-pierre charras 4065e413ea Ibis parser: do not report activity when there are no errors.
The dialog to add a library expects no message when there are no error.
Fixes #13794
https://gitlab.com/kicad/code/kicad/issues/13794
2023-02-06 12:55:52 +01:00
jean-pierre charras 92724ff09f Coding style fix. 2023-02-06 07:59:17 +01:00
Jeff Young 3ecd6ec186 Fix variable updating in SCH_FIELDs (which are not directly in the view). 2023-02-05 20:51:03 +00:00
jean-pierre charras fb225acefc Eeschema, ExportSymbolsToLibrary(): fix not working replace library.
When exporting symbols of the schematic to a new library, if this library
exists the dialog ask for overwriting it, but it did not work.
Fixed now.
2023-02-05 18:41:58 +01:00
Wayne Stambaugh baeeeec492 Fix broken update symbol from library.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13782
2023-02-05 10:36:18 -05:00
Jeff Young d1f6ba77e8 Better error reporting, and don't infer models with library references. 2023-02-04 20:55:52 +00:00
Jeff Young 9be872a85a Better bounds checking for DIALOG_SIM_MODEL::curModel().
Fixes https://gitlab.com/kicad/code/kicad/issues/13767
2023-02-04 20:16:50 +00:00
Jeff Young 56a1cdb4dc Allow a limited set of un-braced expressions in SPICE model values.
Fixes https://gitlab.com/kicad/code/kicad/issues/13768
2023-02-04 19:49:48 +00:00
Jeff Young f588da2bef Bounds checking for DIALOG_SIM_MODEL::curModel(). 2023-02-04 19:17:13 +00:00
Wayne Stambaugh 52b07b8bac Fix duplicate symbol value fields when importing Eagle schematic.
Don't use the value field when adding Eagle part attributes to a symbol.
This issue was cause by using a mandatory symbol field ID instead of
using the next available field ID when adding new fields to as symbol.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/13468
2023-02-04 12:37:41 -05:00
jean-pierre charras 6b5eeeb861 Preferences dialog: try to reduce its width, in non English languages.
Remove some useless spacers, and do not force some widgets to have a to
large size (by removing empty areas).
Work in progress: one panel is still too big.
2023-02-04 14:36:14 +01:00
Jeff Young e8397a33bb Refrain from copying SPICE_INFO. 2023-02-04 00:05:50 +00:00
Graham Keeth a51dc8c9de HiSIM_HV MOSFET models are *not* the default type
The ngspice manual does not indicate that there is any default
model type. This change ensures we get a `level=xy` written out to the
.model line when we select a HiSIM_HV model.
2023-02-04 00:03:25 +00:00
Graham Keeth 5abe1a201b spice: generate .model lines for all device types
- generate .model lines in spice netlist for all device types that need
  one
- add "level=<n>" to .model line for non-default model levels. This is
  necessary to allow more sophisticated models to be used, and some
  devices *always* need a level specified (e.g. JFETs)
- add "version=<n>" to .model line for models that have multiple
  versions available (AFAIK only affects HiSIM_HV MOSFET models)

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13775
2023-02-04 00:03:25 +00:00
Graham Keeth 41c4ee2245 ngspice requires J prefix for JFETs in netlist
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13774
2023-02-04 00:03:25 +00:00
Jeff Young ed5fb2769f Allow more characters (in particular '_') in code model names.
Fixes https://gitlab.com/kicad/code/kicad/issues/13769
2023-02-03 23:49:53 +00:00
Jeff Young 71b8a2112c Coverty fixes. 2023-02-03 15:09:24 +00:00
Wayne Stambaugh a94d8a7e78 Use references instead of copies in map pair for loops. 2023-02-03 10:00:09 -05:00
Wayne Stambaugh 9e03a71b44 Fix broken value and footprint field text values.
Only update value and footprint fields from instance data if it's not
empty.  These fields were not always stored in the instance data so
loading them from instance data that does not contain them will clear
the fields.

https://gitlab.com/kicad/code/kicad/-/issues/13735
2023-02-03 09:48:18 -05:00
jean-pierre charras 8ce0a84ca7 Fix compatibility with older wxWidgets versions.
Fix also a compil warning
2023-02-03 08:24:38 +01:00
Graham Keeth 9b9ebebb2d Add missing autocomplete for FILENAME, PROJECTNAME 2023-02-03 00:10:55 +00:00
Wayne Stambaugh c88c4e1200 Fix schematic update library symbols issues.
Rather than update library symbols one at a time, queue them up by
schematic symbol to prevent multiple updates to the same symbol in
complex hierarchies.  This also removes all of the library symbols
first which will clear out all of the library symbol variants that
were created by modifying library symbols in place and/or changes to
the symbol in the library.

Don't add new variant library symbol if an equivalent variant already
exists in the schematic local cache.  This prevents duplicate library
symbols from being added to the local cache when the first variant in
the cache does not match that of the symbol being added.
2023-02-02 15:54:24 -05:00
Jeff Young 8b03c093f9 Move potentiometer pin model to r0, wiper, r1, and remove flipping code.
Fixes https://gitlab.com/kicad/code/kicad/issues/13741
2023-02-02 16:22:13 +00:00
Jeff Young ab0c4dd292 Must do pin swap in model pins, not item pins.
Item pins might not be in the same order.

Fixes https://gitlab.com/kicad/code/kicad/issues/13741
2023-02-02 12:44:55 +00:00
JamesJCode 71002dce28 Eeschema: Fix export symbols to new library
Exporting symbols to new library now saves the library and forces
update of symbol links

Fixes #13494
2023-02-02 11:31:18 +00:00
Graham Keeth 4a0a5f2265 Fix backwards display of ${DNP}
${DNP} displayed "DNP" when DNP was cleared, and "" when DNP was set
2023-02-01 22:40:58 +00:00
vinsfortunato 5b9b555fdf eeschema: fix sheet symbol pins changing side when resizing
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13719
2023-02-01 15:53:59 +00:00
Mike Williams ab954456ee Symbol Fields Table: don't leave Qty editable on error 2023-02-01 10:19:23 -05:00
Jeff Young 4c18dfebb9 Add Show Name column to FormBuilder files. 2023-02-01 12:36:27 +00:00
Jeff Young b4a75cd1d5 Write out a diode .model for built-in diodes. 2023-02-01 12:36:27 +00:00
jean-pierre charras 29fd1b45d6 Ensure the DATASHEET field value only is used to know the datasheet URL.
previously, if the field option "show name" is set, the field name was
added to the URL, that broke it.
Fixes #13729
https://gitlab.com/kicad/code/kicad/issues/13729
2023-02-01 11:37:07 +01:00
Alex 56f900b14f Remove errant wxTextCtrl style flags. 2023-02-01 06:22:32 +03:00
Mike Williams 29a4e2c7fe Schematic: fix reversed tooltips for navigation buttons
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13707
2023-01-31 13:05:37 -05:00
JamesJCode 8590745e9c Allow simulation probe of junctions
Fixes https://gitlab.com/kicad/code/kicad/issues/13712
2023-01-30 23:15:55 +00:00
Seth Hillbrand 418f8e6f14 Re-add outline shadows to stroke fonts
If we draw using stroke fonts, we can still use the legacy shadow
routine to show nice highlights
2023-01-30 22:42:26 +00:00
Jeff Young 123467c8dd Don't throw up debug message when signal is deleted.
Fixes https://gitlab.com/kicad/code/kicad/issues/13711
2023-01-30 21:32:18 +00:00
Jeff Young c939b1ef76 Followed-by-3-digits doesn't guarantee a thousands separator.
Fixes https://gitlab.com/kicad/code/kicad/issues/13708
2023-01-30 21:22:48 +00:00
vinsfortunato 3d52115ae7 eeschema: focus eeschema on symbol when its row is selected in the symbol fields table 2023-01-30 15:12:57 +00:00
Mike Williams 207b8d3273 Symbol Fields Table: fix duplicated fields
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13687
2023-01-30 09:29:47 -05:00
Marek Roszko f28339ded8 Hookup the skip drawingsheet arg
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13703
2023-01-30 07:50:16 -05:00
jean-pierre charras 241a283b03 DIALOG_TEXT_PROPERTIES_BASE: reduce the window min width. 2023-01-30 13:21:38 +01:00
Marek Roszko fb57eac5f9 Add \n to report for cli
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13704
2023-01-30 07:11:36 -05:00
vinsfortunato 12101b6cad eeschema: use correct sheet title block for plotting
Fixes: https://gitlab.com/kicad/code/kicad/issues/13690
2023-01-29 21:21:31 +00:00
vinsfortunato 586f22c2f7 eeschema: Focus eeschema on symbol when symbol fields table cell is selected with keyboard
Fixes: https://gitlab.com/kicad/code/kicad/issues/13688
2023-01-29 19:42:28 +00:00
JamesJCode 413169782a Add SIM_ENABLE_FIELD column name when excluding symbol from simulation
Fixes #13691
2023-01-29 09:48:05 +00:00
Wayne Stambaugh 68decdd4f2 Fix static event table derived object definitions. 2023-01-28 14:10:06 -05:00
Ian McInerney 51c8f2c119 Fix library sort order in library viewers
The lib table returns a properly sorted list of libraries already, which
we just iterate through. A std::set is a sorted collection, but uses a
different sorting function than the lib table, so appending to a
std::set breaks the initial sorting that was done already.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13530
2023-01-27 23:39:50 +00:00
Ian McInerney a78e5b0141 Hide empty sizer in directive label dialog
Possibly fixes: https://gitlab.com/kicad/code/kicad/-/issues/13675
2023-01-27 22:25:33 +00:00
Ian McInerney a91d2c21b8 Fix missing quotation mark in BOM plugin
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13685
2023-01-27 21:46:53 +00:00
Vincenzo Fortunato f4e22cdcdb altium: import component image only if part id matches 2023-01-27 16:28:38 +00:00