Jeff Young
bda0a73c63
Set swatch background colors.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17564
2024-05-24 21:26:20 +01:00
Mike Williams
3f4c82b39b
annotate: cleanup Annote event name to match button
2024-05-23 09:47:30 -04:00
Mike Williams
8d8fa155f7
annotate: remove dead code
...
Never gets called as we will always have a message.
2024-05-23 09:47:30 -04:00
Mike Williams
39f355e71d
annotation: also report cleared annotations
2024-05-23 09:47:30 -04:00
Wayne Stambaugh
795a9eea60
Coding policy fixes.
...
This is primarily to change all instances of wxLogDebug with wxLogTrace
so developers do not have to sift through debugging output that is always
dumped. The only exception is for code blocks built in debug builds and
called on demand for dumping object states.
2024-05-23 07:59:45 -04:00
Jeff Young
edae328ca6
Push multi-sweep traces down into MathPlot.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17215
2024-05-23 12:24:56 +01:00
John Beard
0bcd5e5795
Eeschema: Also make 'note' backgrounds translucent on selection
...
For the same reason as device backgrounds - it obscures everything
else while moving a filled shape.
2024-05-23 16:51:06 +08:00
John Beard
5a69b163a3
Fix translucency when selecting a filled shape in the symbol editor
...
Overriding the color in draw() throws away the alpha that was set
due to aItem->IsSelected() in getRenderColor().
Instead, get the layer BG fill color in getRenderColor() before
the translucency is applied.
2024-05-23 16:51:06 +08:00
John Beard
fd4c15517f
Eeschema: Fix selection of items inside filled shapes
...
The selection heuristic broke down when one item was a filled
shape. Because all hit tests would succeed with distance 0 for
these shapes, they would always be considered the closest item
to the exclusion of all else, which made it very hard to
click on a graphic inside a filled shape.
Now, recognise when an item would be "dominating" and
decline to promote it to the "closet" spot. It will still
be selectable if there are no other items nearby, or if
there are multiple shapes.
2024-05-23 12:53:09 +08:00
Jeff Young
856d03dbe2
Create signals from .save directives (as well as .probe directives).
...
(Also fixes a bug where we only looked for a single
token after .probe.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18057
2024-05-22 22:37:57 +01:00
JamesJCode
76cb7cf54a
Clear all dirty connectivity flags on symbols
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17984
When moving / deleting a power symbol, in some instances the
symbol is marked dirty, and sometimes the pin (depending on
whether the symbol is the primary edited item, or whether
the pin is identified through an edited item subgraph). If
the pin and the symbol are marked dirty, the pin dirty flag
was not being cleared.
Additionally, not all extracted items were being deleted
from subgraphs correctly.
Both resulted in dirty state and duplicated items in the
subgraphs during incremental connectivity, which resulted
in essentially corrupted subgraph states.
2024-05-22 21:51:02 +01:00
Roberto Fernandez Bautista
ee3533baeb
kicad-cli sym export svg: Ensure bounding box is correctly calculated
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18062
(cherry picked from commit 3e5ceaa319
)
Co-authored-by: Roberto Fernandez Bautista <roberto.fer.bau@gmail.com>
2024-05-21 20:00:35 +00:00
Jeff Young
cb76ad3206
Add unit & body style property access.
...
(It had gotten lost in SCH_ITEM/LIB_ITEM collapse, but
then again the old version didn't work right
anyway.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18049
2024-05-20 23:37:59 +01:00
Mike Williams
52f9060b3b
Symbol Fields Table: make sure power symbols don't get added by commits
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17544
2024-05-20 14:11:38 -04:00
Mike Williams
a81891053e
Schematic: add Power tab to searcher
2024-05-20 13:59:42 -04:00
Mike Williams
21022b4fa4
Symbol Fields Table: better handle variable fields with attributes
...
Attributes need to be checked first since we do some internally hackery
to make the checkboxes work.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18005
2024-05-20 08:52:00 -04:00
John Beard
6992afeb38
Consider a bus entry hitting a wire corner or tee to be dot-worthy
...
This doesn't change the connectivity, it just makes putting the
dot more closely match what the connectivity already does.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18046
2024-05-20 12:40:29 +08:00
John Beard
6313b58ad6
Break out junction analysis so it can be tested in isolation
...
There are some corner cases with bus entries that could do with
care and it's a bit tricky to keep all the cases in mind at once!
2024-05-20 12:40:29 +08:00
John Beard
d3e03c51bf
Bus unfold: snap the entry to the bus, even if the cursor isn't right on the bus
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18011
2024-05-20 12:40:06 +08:00
Alex Shvartzkop
6dd5c7d733
Make IBIS errors visible / more obvious.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18041
(cherry picked from commit 6dfd417767
)
2024-05-19 01:44:56 +03:00
Jeff Young
c5162f5483
Fix PEGTL flagParam grammar.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16393
2024-05-17 11:15:44 +01:00
John Beard
7e02f1254e
Remember the bus unfold label orientation between invocations
2024-05-17 09:55:40 +08:00
Jon Evans
2836025402
Clear field listener when quitting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18016
2024-05-16 20:49:27 -04:00
Seth Hillbrand
9fbda137cb
Free item memory when closing schematic window
...
This fires the dtor for each item on the screen, allowing us to properly
close and remove them from the connection graph
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17961
2024-05-16 09:59:10 -07:00
Seth Hillbrand
f61ee3ff4b
Remove unused code generation path
...
After 11 years, I doubt we're making this file format
2024-05-16 09:19:06 -07:00
Jeff Young
f7bef5e09b
Generalize EnhanceAttr() function.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17735
2024-05-16 16:28:13 +01:00
jean-pierre charras
87d3d38552
Eeschema, Pin helpers: fix wrong label orientation if the symbol is rotated
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18012
2024-05-16 17:15:06 +02:00
Jeff Young
ea013f3ca3
Fill device colour on foreground layer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18002
2024-05-16 15:24:11 +01:00
jean-pierre charras
f17b13655b
DIALOG_SYMBOL_FIELDS_TABLE::syncBomPresetSelection(): fix not working comparison
...
for non English languages.
The main issue was the function compared a English string to a translated string.
However, even with this fix, the code, although working, is not very good:
It compare 2 members (BOM_PRESET .sortField string) that are not very significant
and can be or not translated.
2024-05-15 16:25:05 +02:00
Wayne Stambaugh
c3360d8c43
Fix Eagle schematic arc orientation and field visibility issues.
...
This does not fix all field visibility and position issues. This is due
to LIB_SYMBOL objects not supporting per unit field properties. The
current Eagle importer sets multiple unit symbol field properties to the
last unit parsed in the Eagle schematic file. The upcoming two pass
importer will resolve this issue.
2024-05-14 10:13:08 -04:00
Jeff Young
8aaca0509c
More PEGTL tomfoolery.
2024-05-13 21:41:58 +01:00
Petri Hodju
4920c6b00b
remove item from schematic's connection graph on destruction
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17961
2024-05-13 20:41:31 +00:00
Jeff Young
086e609c3d
Reimplement bracedExpr and token lists for CPL models only.
...
This prevents the incompatibility between token lists
and single-token param-value pairs.
2024-05-13 21:28:24 +01:00
Jeff Young
2921d47fb3
Tighter control over braced-expression list separators.
2024-05-13 21:19:23 +01:00
Jeff Young
8bb807f170
Remove support for multiple token values for CPL models.
...
It breaks param lists which contain single-token params
(ie: those without the "=<value>" part).
2024-05-13 21:10:02 +01:00
Jeff Young
255a7d6f06
ADDED: ability to remove ignored tests from ERC/DRC list.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17681
2024-05-13 17:09:54 +01:00
Jeff Young
b934914c59
Allow .ends to be preceeded by whitespace.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16560
2024-05-13 13:36:35 +01:00
jean-pierre charras
cae3be6bac
Fix minor compil warnings
2024-05-13 11:50:35 +02:00
Jeff Young
d9a6b2aec2
Use display titles for axes in CSV output.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17324
2024-05-13 00:36:18 +01:00
Jeff Young
667fedd9a9
Formatting; include cleanup.
2024-05-12 23:56:59 +01:00
Jeff Young
c8d1c1f1a4
Repair variable resolution recursion guard.
2024-05-12 23:47:44 +01:00
Jeff Young
662a6d24e7
Improve robustness.
2024-05-12 23:30:29 +01:00
Jeff Young
6cc534182a
Simplify rotation code.
2024-05-12 23:22:13 +01:00
Jeff Young
20cde51b43
Fix numerous bugs in schematic item rotation.
...
(This will probably introduce some new ones too, but
it was so broken it's hard to know where to start.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17921
2024-05-12 20:43:08 +01:00
Jeff Young
e73d2a32dc
ADDED checkbox for saving SPICE digital event data.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17828
2024-05-12 18:24:53 +01:00
Jeff Young
0008991f02
Support multiple brace-expressions for CPL model lines.
...
(Nested brace-expressions, on the other hand, are *not*
an ngspice thing.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17824
2024-05-12 18:24:53 +01:00
Jeff Young
d9ff3c4485
Maintain selection when sorting.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17983
2024-05-11 16:20:34 +01:00
jean-pierre charras
814e54af9b
Fix minor compil warnings
2024-05-11 08:07:11 +02:00
Jeff Young
29360b1aef
Raw spice models don't have pin names.
2024-05-10 20:58:13 +01:00
Jeff Young
d9f0c8e1f3
Remove accidentally committed lines.
2024-05-10 15:58:48 +01:00
Jeff Young
55b2c4dbf4
Update signals & measurements when netlist might have changed.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17616
2024-05-10 12:02:56 +01:00
Jeff Young
737a4ce925
Don't double up ac and ph params.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17970
2024-05-10 11:35:49 +01:00
Jeff Young
a20a6e0787
Don't add duplicate SIM fields.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17970
2024-05-10 11:35:49 +01:00
Seth Hillbrand
42ebf0eca5
Limit FSWatcher
...
Library watches only need a single directory or immediate children. The
project watcher should have a sensible limit to the total number of
files it tries to track.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15717
2024-05-09 15:42:25 -07:00
Wayne Stambaugh
7acd057c86
Fix broken library symbol links when importing CADSTAR schematics.
...
Under certain circumstances, the library symbol links were missing
the library nickname causing the schematic symbols to appear as if
the library symbol was missing.
Added a helper function to create the symbol library name to avoid
code duplication.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17143
2024-05-09 10:23:28 -04:00
Alex Shvartzkop
81281f7e74
Send project path to ngspice for code model input files.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16527
(cherry picked from commit eb7e781bec
)
2024-05-08 23:41:05 +03:00
Jeff Young
a99377c1ec
The user can cancel the opening of many editors.
...
Don't play dice with the devil.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17989
2024-05-08 18:21:42 +01:00
Alex Shvartzkop
0f06d9c9e8
Fix arcs in legacy symbol libs.
2024-05-08 19:39:02 +03:00
Alex Shvartzkop
8d13e0ea78
Fix arcs in legacy symbol libs.
2024-05-08 18:25:54 +03:00
Alex Shvartzkop
1bde100ff7
Fix symbol field positions in legacy schematics.
2024-05-08 18:06:05 +03:00
Alex Shvartzkop
d22d32697f
Some fixes for legacy schematic/symbol import after symbol Y inversion.
2024-05-08 15:57:58 +03:00
Alex Shvartzkop
546b2e3b91
Fix text justification in Altium schematic importer.
2024-05-08 15:13:15 +03:00
Jeff Young
20bb82a011
Remove vestigial coord flip code.
2024-05-08 11:27:57 +01:00
Seth Hillbrand
72eee002aa
Add effective display for fields
2024-05-07 17:59:13 -07:00
JamesJCode
9e1a5eb1bd
Eeschema: Only assign nets with resolved netclasses to the label map
...
Also fixes a bug where the pattern assignment cache was not cleared
if all pattern assignments were deleted in the setup netclasses
panel.
2024-05-07 20:16:17 +01:00
Maciej Suminski
67f717b56a
Fix pin rotation parsing in the legacy symbol library plugin
...
Commit 352463df
removes char values for PIN_ORIENTATION, so
magic_enum::enum_cast can no longer do its magic.
2024-05-07 15:39:43 +00:00
Jeff Young
8aab764c33
Handle m_alternates in operator= and copy c'tor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17966
2024-05-07 15:07:33 +01:00
Seth Hillbrand
24f02e72d0
Fallback to scientific notation when fixed-point is long
...
Fixed point output can create arbitrarily long string representations of
floating points. When this happens, we would like to just represent the
scientific notation to a limited precision
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17890
2024-05-06 13:00:27 -07:00
Seth Hillbrand
3620887a22
Optionally use electrical type when shown.
...
We also need to consider electrical type as an exact hit when we are
showing it. Otherwise, we get the pin added to our consideration list
but not selected without hitting close neighbors
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16183
2024-05-06 10:37:23 -07:00
Mike Williams
1db236c7fd
Legacy Libraries: fix Description field clobbering user field
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17943
2024-05-06 12:54:31 -04:00
Jeff Young
39835fe82a
Formatting.
2024-05-06 10:58:32 +01:00
Alex Shvartzkop
5475359d00
More build time optimizations.
2024-05-06 04:39:28 +03:00
Jeff Young
2ad05e34ea
Fix symbol editor drawing tool coord system.
2024-05-05 22:21:12 +01:00
JamesJCode
658eb1d338
Assert if NESTED_SETTINGS migration is missing for an intermediate version
...
- Fixes early load during NESTED_SETTINGS construction within
SCHEMATIC_SETTINGS, now failing due to missing migrations at that
object construction point
- Adds missing (NOOP) migration for NET_SETTINGS schema versions 1 -> 2
2024-05-05 19:12:01 +01:00
Seth Hillbrand
5bd94f118d
ADDED: Handle PIECHART in Altium import
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16895
2024-05-05 08:39:30 -07:00
Jeff Young
0e0432d194
Don't abort on failure to backup file if it was never saved.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17810
2024-05-05 14:58:23 +01:00
Jeff Young
10aec91075
lint reduction
2024-05-05 12:55:38 +01:00
Jeff Young
afcdfd85a7
Fix power symbol value field placement.
2024-05-04 23:49:43 +01:00
Jeff Young
c2fae3768c
Fix knock-on effects from b7f035964f
.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17924
2024-05-04 23:49:43 +01:00
John Beard
4dd049ee8f
Add action to focus tree searches
...
The default hotkey is Ctrl+L, as this is not bound by
default in the FP or symbol editor, and it is the hotkey
that is used to focus the address bar in web browsers,
which is a similar kind of action.
2024-05-05 04:18:36 +08:00
Jon Evans
6b145b2830
Add optional reporting of non-KiCad design issues
...
Also add HTML reporter to PCB side to match schematic
(cherry picked from commit b8fa10ab2b
)
Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-04 15:27:52 +00:00
Jeff Young
2d1bcbd222
Repair import of Altium arcs.
2024-05-04 15:47:43 +01:00
Jeff Young
8ec1016ccf
Repair Altium importer for coord system change.
2024-05-04 14:19:12 +01:00
Jeff Young
691c492d1e
Revert attempted Altium import fix.
...
(Like Eagle, Altium's coord system is "upside down" to
start with.)
2024-05-04 11:16:44 +01:00
Seth Hillbrand
ba4974749c
Fix renaming sheet check
...
If we are renaming a sheet that exists only once in the schematic, then
we don't need to warn about case sensitivity. If the sheet exists
multiple times, we do. We can't check this using SCREENS because the
screens don't maintain full state information about where they are used.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17901
2024-05-03 13:23:03 -07:00
Jeff Young
44717f927c
Fix rotation of selection in schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17921
2024-05-03 21:14:26 +01:00
Seth Hillbrand
8463bd59b7
ADDED: Optional check for four way junctions
...
Defaults to off because this is likely contentious
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17870
2024-05-03 12:06:24 -07:00
Seth Hillbrand
2139789c4c
Move ERC items to their own directory
2024-05-03 12:06:24 -07:00
Seth Hillbrand
b8ccaae403
Respect schematic settings for hidden pins
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17941
2024-05-03 09:58:33 -07:00
Jeff Young
053a764cf2
Adjust LTSPICE parser for inverted coords.
2024-05-03 17:48:22 +01:00
Jeff Young
fd44ee6aa6
Adjust CADSTAR importer for coord system flip.
2024-05-03 17:43:11 +01:00
Jeff Young
893d178439
Formatting and minor const& performance enhancements.
2024-05-03 17:43:11 +01:00
Jon Evans
eb0708d48d
Fix broken cherry-pick
2024-05-03 11:49:58 -04:00
Jon Evans
ac8bd587dc
Fix deduplication of already-placed symbols
...
The comparison function was failing to properly
de-duplicate by LIB_ID, especially for parts
from database libraries, causing the list to grow
with the size of the design.
(cherry picked from commit 2ef18ad4ca
)
2024-05-03 11:47:21 -04:00
Jon Evans
639f59839e
Make sure database library has updated pointer to library table
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17903
(cherry picked from commit 1a76fce255
)
Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-03 15:39:33 +00:00
Jeff Young
09c5b9df1d
Fix some breakage in Altium parser due to Symbol Editor Y-axis inversion.
2024-05-03 14:52:50 +01:00
Jeff Young
e7f4e29dd1
Eagle's coord system matched the old Symbol Editor.
...
So now we need to invert the Y axis for symbol items
(as well as all the schematic items which we have always done).
2024-05-03 14:48:06 +01:00
Jeff Young
3781682a89
We don't need to flip Y of fields anymore.
2024-05-03 13:31:15 +01:00
Jeff Young
ce1404df79
Formatting and performance.
...
(wxString construction is surprisingly expensive.)
2024-05-03 13:31:15 +01:00
Alex Shvartzkop
b5b65d0846
Fix some breakage due to symbol Y axis inversion in EasyEDA parsers.
2024-05-03 01:44:50 +03:00