Wayne Stambaugh
5638122d3d
Fix build warnings introduced by recent ERC changes.
2023-01-24 10:42:41 -05:00
JamesJCode
fef3274e8e
Eeschema: ERC checks handle connections between a common sub-circuit
...
Fixes #10926
Contains the following changes:
- Adds a new ERC_SCH_PIN_CONTEXT class which is used to provide deterministic
comparison between items causing ERC violations (e.g. pins) when associated
with a SCH_SHEET_PATH context.
- Adds association of SCH_SHEET_PATHs for ERC_ITEMs and the sub-schematic items
which caused an ERC violation. This allows correct display of markers on the
sheets of interest only, and allows correct naming resolution and cross-probing
from the ERC dialog.
- Adds a new ERC_TREE_MODEL class, derived from RC_TREE_MODEL, which correctly
resolves component references across heirarchical sheets using the associated
SCH_SHEET_PATHs. This allows sheet-specific component references to be displayed
correctly in the ERC results tree.
- Updates SCH_MARKER to only draw sheet-specific markers on the sheet causing
an ERC violation.
- Increments the schematic file version.
- When loading a schematic with legacy ERC exclusions, discards those of type
ERCE_PIN_TO_PIN_WARNING, ERCE_PIN_TO_PIN_ERROR, ERCE_HIERACHICAL_LABEL, and
ERCE_DIFFERENT_UNIT_NET as there is no safe way to automatically infer the
information which is now stored with these exclusions (sheet paths for error
location and related items). Requiring users to (once) re-add exclusions is
preferable to silently incorrectly matching new ERC issues to legacy exclusions.
2023-01-24 14:11:01 +00:00
Jeff Young
7a113a6a44
Fix misleading label (it filters label fields and other sheet fields as well).
2023-01-24 00:07:40 +00:00
Jeff Young
220c5a259b
Refresh schematic's copy of template fieldnames after preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13203
2023-01-24 00:07:40 +00:00
Jeff Young
4de64b607a
Finish implementation of export_current_sheet_as_root.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13643
2023-01-24 00:07:40 +00:00
Jeff Young
25783f3b7e
Add label fields to Edit Text and Graphics Properties dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13632
2023-01-24 00:07:40 +00:00
Jeff Young
4e50c5313d
More safety for array access.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13583
2023-01-24 00:07:40 +00:00
Graham Keeth
e4a8b9e76d
subckt export: add missing tristate pintype
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13644
2023-01-23 23:26:48 +00:00
Seth Hillbrand
00f93db2ff
Convert wide chars before reading model
...
The PEGTL parser used by KiCad for SPICE models only handles ASCII
characters. Despite the docs stating that you can, in theory, parse a
UTF-8 character by reading the base string, in pratice this does not
work as the UTF-8 string is represented by unsigned chars and the PEGTL
string is based on signed char.
To work around this, we need to convert micro and mu to the ASCII 'u'
equivalent
Fixes https://gitlab.com/kicad/code/kicad/issues/13642
2023-01-23 15:23:41 -08:00
Seth Hillbrand
442ee52905
Add versioning to lib tables
...
Sets lib table version to allow easier migration between versions
2023-01-23 22:21:12 +00:00
Seth Hillbrand
efe12f2da5
Cleanup variable naming
...
Also remove ancient/unused code for lazy resolving
2023-01-23 22:21:12 +00:00
Seth Hillbrand
a9ed47f06c
Update KICAD6->KICAD7
2023-01-23 22:21:12 +00:00
Mike Williams
b39aae6a93
Annotation: don't select hover item
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13352
2023-01-23 16:50:45 -05:00
Seth Hillbrand
9861ed1a5f
Don't special case power symbol re-annotation
...
When the designer asks to reset annotations, we reset all annotations
including power symbols. This may create additional churn in the files
but only when requested and is useful to fix schematic errors
Fixes https://gitlab.com/kicad/code/kicad/issues/13138
2023-01-23 13:19:01 -08:00
Seth Hillbrand
67c703e9e2
Fix LIB_TEXT plotting alignment
...
LIB_TEXT is not all aligned to the center, so place the proper flags
when calling Plot. This requires handling alignment offsets properly
when rotated as well
2023-01-23 12:23:14 -08:00
jean-pierre charras
2443d91265
SCH_FIELD: fix issue when try to clear its color from a previous color,
...
the old color was still used to display the field
Fixes #13631
https://gitlab.com/kicad/code/kicad/issues/13631
2023-01-23 10:22:42 +01:00
jean-pierre charras
e0111f709b
Fix minor cosmetic issues in Print dialogs
...
Fixes #13629
https://gitlab.com/kicad/code/kicad/issues/13629
2023-01-23 09:21:23 +01:00
Jon Evans
1bc3f77d2e
Coverity fixes
2023-01-22 22:48:31 -05:00
Jon Evans
e7a4d6d4da
Exclude database libraries from the symbol library editor
...
These libraries are metadata libraries and it does not make sense
to have them be shown in the symbol editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12842
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12878
2023-01-22 20:49:41 -05:00
Jon Evans
e419b0bfe8
Support sub-libraries in symbol library browser
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12842
2023-01-22 19:25:15 -05:00
Marek Roszko
0ff32d20cd
wxS more things
2023-01-22 09:41:42 -05:00
jean-pierre charras
9c12a6ee1d
Eeschema, eeschema_config.cpp: fix incorrect *.wks file path when trying to save it.
...
And add tests to see if the file can be saved
Fix also an issue in sch_editor_control.cpp: The page setup dlg must generate changes
only if the OK button is clicked.
Fixes #13599
https://gitlab.com/kicad/code/kicad/issues/13599
2023-01-22 13:17:05 +01:00
jean-pierre charras
e900e472ce
Fix compil and Coverity warnings
2023-01-22 09:40:09 +01:00
Jeff Young
542719c753
Add "all" mode to HSPICE emulation.
2023-01-21 19:32:25 +00:00
Wayne Stambaugh
0a7bd85cd6
Fix library symbol rescue issues.
...
https://gitlab.com/kicad/code/kicad/-/issues/13494
2023-01-21 10:35:14 -05:00
jean-pierre charras
4eb3a99bb5
SYMBOL_VIEWER_FRAME: fix some (minor) issues related to the symbol to display
...
Fixes #13274
https://gitlab.com/kicad/code/kicad/issues/13274
2023-01-21 11:29:01 +01:00
Seth Hillbrand
ed0d57ddf6
Handle the forced propagation to subgraphs
2023-01-20 15:20:03 -08:00
Seth Hillbrand
e6dbca051c
Force realtime connectivity on
...
The pressure relief valve was not useful for common work patterns as it
forced the recalculation on many common actions such as bus expansion.
This caused it to actually feel slower than with the pressure relief
valve off.
For most schematics, realtime is now fast enough to not need the valve
and for those that are extremely complex, removing the valve helps this
run more predictably
2023-01-20 15:17:57 -08:00
Seth Hillbrand
6fa2eedb4b
Avoid the obsolete GetNextPin() call
...
This iterated over all pins to find the pin after a given item. Because
out pattern is consistently to iterate in the outer loop, this means
that we were an O(n^2) loop for the pins just to find their names. This
affected very large parts (e.g. FPGAs) when switching sheets to display
2023-01-20 14:12:15 -08:00
Seth Hillbrand
b8ee588a76
Don't do a full connection database reset on redraw
...
All we need here is an updated intersheet reference, the connectivity
database remains valid and shouldn't be touched
2023-01-20 14:11:23 -08:00
Seth Hillbrand
08c2828bd3
Remove extra call to RecalculatedConnections()
...
This shouldn't happen when re-drawing, only on specific actions as it
will clog up our pipeline for other actions
2023-01-20 13:26:23 -08:00
Seth Hillbrand
4d7ddf619a
Remove unused var and cleanup
2023-01-20 13:26:11 -08:00
Jeff Young
3e55719831
May need to convert to UNIX style paths twice (before & after resolving).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13591
2023-01-20 18:06:17 +00:00
Jeff Young
f7ebaf1bab
Add compatibility mode for netlist code.
...
(The non-A compatibility modes only run on included files.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13589
2023-01-20 18:06:17 +00:00
Jeff Young
d9a90519f9
Flatten (and fix layout) of library table managers.
2023-01-20 14:19:58 +00:00
Marek Roszko
a9cb8e9a8d
Fix worksheets not loading in cli
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13489
2023-01-19 23:47:41 -05:00
Jon Evans
dee4f80680
DbLib: Load source symbol in editor when edit action is taken
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12840
2023-01-19 22:45:46 -05:00
Jon Evans
6cce99e0d0
Support showing Value field in symbol chooser
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13527
2023-01-19 22:14:10 -05:00
Jeff Young
27109bfc8a
MRU path for simulation model libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13581
2023-01-20 00:18:55 +00:00
Mike Williams
5a2f4c445b
Global Label Dialog: add power nets to dropdrown
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9118
2023-01-19 12:47:32 -05:00
Jeff Young
49f3b21f5c
Handle windows filepaths in SPICE include statements.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13591
2023-01-19 14:55:34 +00:00
jean-pierre charras
87975b2833
SYMBOL_EDIT_FRAME: make UpdateMsgPanel() working.
...
This is a virtual method, and the default method do nothing.
Now is calls SYMBOL_EDIT_FRAME::UpdateSymbolMsgPanelInfo()
Fixes #13586
https://gitlab.com/kicad/code/kicad/issues/13586
2023-01-19 15:52:23 +01:00
Wayne Stambaugh
ee3e285393
Correctly parent simulator netlist error dialogs.
2023-01-19 07:59:30 -05:00
Jeff Young
0e778f17db
Add context menu for simulation cursors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13580
2023-01-19 12:50:21 +00:00
Jeff Young
715340b129
Fix erroneous early return.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13592
2023-01-19 12:19:49 +00:00
Jeff Young
959e20f52c
A fall-back model for FOO should supply FOO's pin names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13589
2023-01-19 12:14:50 +00:00
Seth Hillbrand
7e5a2450b8
Move multiple wxMessageBox to DisplayErrorMessage
...
Also provide protection for headless running in multiple callsites
Fixes https://gitlab.com/kicad/code/kicad/issues/13575
2023-01-18 16:54:01 -08:00
Mike Williams
171cffec28
Schematic: actually check for hover on duplicate
2023-01-18 13:52:49 -05:00
Mike Williams
144cd0b7f2
Schematic: duplicate on hover: grabs symbol instead of field
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13495
2023-01-18 13:35:52 -05:00
Jeff Young
87377d1aac
Stop stepping on user's data.
...
Just because we can't find the file doesn't mean the path to it has
no value. Don't delete it. And don't crash afterwards either.
Fixes https://gitlab.com/kicad/code/kicad/issues/13578
2023-01-18 13:50:40 +00:00
Dag Lem
cff0560088
Eagle schematic import: Handling of escaped text
2023-01-18 12:33:36 +00:00
Jeff Young
3af9c658e6
Don't specify fonts in wxFormBuilder. It only leads to pain.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13547
2023-01-18 12:28:07 +00:00
Jeff Young
47d88c5647
Nullptr safety. (Sentry KICAD-71)
2023-01-18 00:52:19 +00:00
Jeff Young
26c821962f
Simplify and regularize text variable substitution architecture.
...
EDA_ITEMs are responsible for giving their parent a crack at it if
they failed to resolve it. This recurses all the way up to the schematic/
board, and then to the project.
Cross-reference handling is also move to the EDA_ITEMs. It must be done
before bubbling up so that we don't end up in loops. (The aDepth parameter
will break the loop, but without having done anything useful.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-17 17:05:41 +00:00
Mike Williams
369c0efade
Bitmaps: respect source DPI
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13565
2023-01-17 11:20:17 -05:00
Wayne Stambaugh
f81642bbb3
Fix broken graphics import file filters.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13570
2023-01-17 11:19:53 -05:00
Jeff Young
8d28cccfe2
Rework >NAME and >VALUE special processing a bit.
...
Earlier commit moved variable substition earlier (in loadSymbolText())
so we didn't have the correct info later when we tried to do the
special processing on it.
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-17 12:48:39 +00:00
Marek Roszko
d2c0f5fc2a
More wxSing
2023-01-16 23:14:38 -05:00
Jeff Young
6de25e2284
Lifecycle safety for highlight net items.
...
This possibly fixes Sentry issue KICAD-6E.
2023-01-16 18:11:16 +00:00
aris-kimi
3defb7679a
Schematic editor: move Update Schematic from PCB to the bottom
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13535
2023-01-16 17:18:21 +00:00
Jeff Young
a3a01a87e8
Resolve text variable references in LIB_TEXT and LIB_TEXTBOX.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13558
2023-01-16 16:01:45 +00:00
Jeff Young
9315e885ee
Substitute variables in imported symbol text.
...
Also allows mulit-line text items to be imported.
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-16 16:01:45 +00:00
Jeff Young
62649b868c
Ensure good fonts in grid headers.
...
Also moves rendering to a flat look for headers (instead of a beveled
border).
Fixes https://gitlab.com/kicad/code/kicad/issues/13547
2023-01-16 02:47:14 +00:00
Marek Roszko
789db0cecb
Some more wxS
2023-01-15 21:32:23 -05:00
Marek Roszko
57c66a50ac
Add some missing wxS wraps
2023-01-15 20:24:29 -05:00
Jeff Young
addaad4a96
Move notes foreground in front of device foreground and wires.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13098
2023-01-15 22:57:01 +00:00
Jeff Young
ca1fb732c8
Share Eagle var substitution between board and schematic importers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-15 22:27:19 +00:00
James Jackson
661eed7fed
Eeschema: ensure wire / bus auto-start respects bus labels
...
Fixes #13506 and further ensures correct behaviour for heirarchical labels and sheet pins
2023-01-15 19:25:28 +00:00
jean-pierre charras
e9da3e5ae9
Fix compatibility with wxWidgets version < 3.1.6
2023-01-15 20:19:53 +01:00
Roberto Fernandez Bautista
355e817302
Move DefaultTransform definition to transform.cpp, so it can be shared
2023-01-15 19:17:51 +01:00
Roberto Fernandez Bautista
ff717fec3f
Wait to save non-KiCad imported drawing sheet until user requests a save
2023-01-15 19:17:50 +01:00
Roberto Fernandez Bautista
d063eb431b
Move FixupJunctions to SCHEMATIC
2023-01-15 19:17:50 +01:00
Roberto Fernandez Bautista
c4bde9c7e8
Extract SCH_LINE::BreakAt( aP ) from SCH_EDIT_FRAME::BreakSegment
2023-01-15 19:17:40 +01:00
Roberto Fernandez Bautista
c7f33e21f8
Extract SCH_SCREEN::GetNeededJunctions from AddJunctionsIfNeeded
2023-01-15 19:17:39 +01:00
Roberto Fernandez Bautista
22cc861c9b
Remove dead code in AddJunctionsIfNeeded
2023-01-15 19:17:39 +01:00
Roberto Fernandez Bautista
7332c0c54d
Move SCH_EDIT_FRAME::GetSchematicConnections into SCH_SCREEN::GetConnections
2023-01-15 19:17:38 +01:00
Roberto Fernandez Bautista
64105dcf84
Extract GetBusesAndWires function out of SCH_EDIT_FRAME::BreakSegments
...
This function is called by SCH_EDIT_FRAME::AddJunction
2023-01-15 19:17:38 +01:00
Stefan Brüns
1df81b10e6
Explicitly convert std::string to wxString
...
In wxWidgets STL builds the compiler has multiple, ambigous choices
for converting - both arguments to std::string first, or just the
first to wxString.
Fixes #13432 .
2023-01-14 22:58:54 +00:00
Jeff Young
06a2e950fd
Add sheet field layers to SCH_LAYER_ORDER.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13518
2023-01-14 20:38:12 +00:00
Marek Roszko
4b0b9a36bf
Load custom drawing sheets in the cli export
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13489
2023-01-14 14:07:58 -05:00
Dag Lem
b3d1384896
Eagle schematic import: Corrected handling of plain/frame
2023-01-14 14:49:48 +00:00
Dag Lem
54f67cd6f5
Eagle schematic import: Corrected visibility for >NAME and >VALUE
2023-01-14 14:40:35 +00:00
Jeff Young
4c5a344629
Allow editing of raw SPICE models through code tab.
2023-01-14 02:43:34 +00:00
Jeff Young
f1aee2fa18
Minor dialog tweaks.
2023-01-14 01:45:30 +00:00
Jeff Young
098d2b30a2
Support for simulation options in workbook and simulation command dlg.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13524
Fixes https://gitlab.com/kicad/code/kicad/issues/13523
Fixes https://gitlab.com/kicad/code/kicad/issues/13431
2023-01-14 00:21:45 +00:00
Jeff Young
e7e2085b2a
Allow vector param values.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13431
2023-01-13 21:59:06 +00:00
Jeff Young
453f1f393e
Add scanning for coupled inductor declarations to SPICE directives.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13431
2023-01-13 19:10:49 +00:00
Jeff Young
7fbad183db
Gracefully handle Quit when simulator window is open.
2023-01-13 16:35:45 +00:00
Jeff Young
4391fc7a7a
Don't be annoying about refusing to create traces when there's no data.
2023-01-13 16:35:45 +00:00
Jeff Young
d8867b7a66
Remove attempting to parse SPICE text items when generating netlists.
...
We don't do anything with the parse tree, and we have to check it for
directives again afterwards to account for when our parsing failed, so
there's not much point in parsing it to begin with.
2023-01-13 16:35:45 +00:00
Seth Hillbrand
bd6d0b6cb6
Ensure that all subgraphs are processed
...
Don't skip subgraphs just because they do not have off-sheet connections
on their hierarchical ports
2023-01-12 17:01:09 -08:00
Seth Hillbrand
b222e4fd07
Remove unused file
2023-01-12 14:08:44 -08:00
Jeff Young
cbfbd3a0de
Don't attempt to recognize SPICE directives line-by-line.
...
.model and .subckt can be multi-line without requiring the continuation-
line syntax.
2023-01-12 16:49:09 +00:00
Jeff Young
6dc7c30174
Still have to write out includes from internal models...
...
... even if we're no longer parsing included libraries.
2023-01-12 16:36:00 +00:00
Jeff Young
52163c7b31
Hold off on one-library-per-SIM_LIB_MGR. It's too risky for 7.0.
2023-01-12 16:29:51 +00:00
Jeff Young
cb58cb8cd3
Put new lines and junctions on the right layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13505
2023-01-12 15:17:45 +00:00
Jeff Young
d839f11d49
Rip out parsing of SPICE libraries for netlisting.
...
We only need to parse the libraries for the Sim Model Editor dialog
(so that we can determine the models to put in the popup). Doing it
for netlisting just opens us up to incorrectly parsing the SPICE, and
returns no value.
This also means that a SIM_LIB_MGR manages a single library, and
never multiple libraries.
This also allows the tidying-up of some error reporting structures to
better inform the user what went wrong.
Fixes https://gitlab.com/kicad/code/kicad/issues/13431
2023-01-12 14:51:03 +00:00
Seth Hillbrand
d07da51390
Fix copy-paste error
2023-01-11 20:37:42 -08:00
Jon Evans
c530bdb5a1
Rename GetSelectMenuText to GetItemDescription
...
This descriptive text is used for many more things than
just the select menu these days.
2023-01-11 22:27:44 -05:00
Seth Hillbrand
f4ac4be701
Fix naming of `updateTitle()`
...
This is a private function so should be lowercased to avoid confusion
2023-01-11 16:06:20 -08:00