Seth Hillbrand
f2f4890342
Re-enforce ordering
...
Instances, pins and graphics have started to wander around the files.
Sorts instances before writing. Uses compare with std::set (not
std::multiset) to enfore lib item ordering
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17737
2024-04-12 10:08:46 -07:00
Seth Hillbrand
e14e956c1d
Fully order schematic saves
2024-04-11 16:54:30 -07:00
Seth Hillbrand
e538b98286
Incremental updates should not clear globals
...
Netclass assignments are stored in the project level but
CONNECTION_GRAPH updates would clear the assignments. This keeps
existing netname->netclass assignments but updates any netnames that
were changed by the incremental updates. Absolute updates are not
affected and fully recreate the net name to netclass map
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17720
2024-04-11 15:57:49 -07:00
Seth Hillbrand
ac5fab190e
Check for valid shared pointer before locking
...
We don't neccesarily have a valid pointer to the parent lib symbol when
checking if it is a power symbol, so fall back to the local flag if this
is the case
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17182
(cherry picked from commit 4481fcc75e
)
2024-04-11 14:43:27 -07:00
Mike Williams
cbef6d1cbf
BOM Export: default to ${PROJECTNAME}.csv for convenience
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17049
2024-04-11 15:46:50 -04:00
Mike Williams
9c058503d9
BOM Export: remember filename per project
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17704
2024-04-11 15:05:59 -04:00
Alex Shvartzkop
e7ac68d409
Support alternating table row colors in SCH_PIN_TABLE_DATA_MODEL.
...
See https://gitlab.com/kicad/code/kicad/-/issues/17482
2024-04-11 19:37:31 +03:00
Mike Williams
067ef9657e
net navigator: handle no-connects
2024-04-11 10:21:18 -04:00
Mike Williams
faca7ee05b
net navigator: show all nets when none are highlighted
2024-04-11 10:21:17 -04:00
Wayne Stambaugh
ec310ac3ed
Update hierarchy navigator when undoing or redoing sheet name changes.
...
Use new schematic commit object in the edit sheet properties dialog.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17721
2024-04-11 10:11:02 -04:00
Seth Hillbrand
a9f35ba42e
Fix incremental connectivity
...
The connectivity routine would consider symbols, overwriting unused
subgraphs for pins that were not in the change list. This is resolved
by updating the full connectivity to only use pins in the graph since
symbols are not connected independently.
In the process of adding QA tests for this change, additional issues
with the schematic QA were discovered. Specifically, we were not
properly setting the root sheet UUID. This was partially masked by a
const_cast setting of the RefDes in sch_symbol when called the RefDes
getter. This exposed the fact that our QA ERC numbers did not match the
schematic editor stand alone ERC numbers. So the test value for one
check needed to be updated
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17528
2024-04-10 17:25:58 -07:00
Jeff Young
3b66f64c19
Cleanup.
2024-04-10 10:26:59 +01:00
Jeff Young
0d6822be0d
Remove shadowed member variables.
2024-04-10 10:26:59 +01:00
afkiwers
d45911f54b
add support to update an already existing field
2024-04-09 23:37:20 +00:00
Jeff Young
1aa59b806c
Allow selection promotion when editing wrong field type.
...
Also fixes a bug where a CHT_MODIFY on a parent symbol with a
selected child doesn't trigger a selection modified event.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17696
2024-04-09 13:40:18 +01:00
Jeff Young
56f6f44b3d
Formatting, type-cast and auto cleanup.
2024-04-09 12:55:44 +01:00
Jeff Young
e7493c7851
Fix SCH_SYMBOL's operator=.
...
Also cleans up a few loose ends from LIB_ITEM collapse.
2024-04-08 21:24:32 +01:00
Jeff Young
6c7946012c
Turn off hidden pins/fields for plot jobs handler.
...
(We only have CLI settings for them when plotting symbols.)
2024-04-08 16:56:36 +01:00
Jeff Young
3ade857c7b
Honour parent symbol's transform when over-plotting pins.
2024-04-08 14:26:48 +01:00
Jeff Young
1d753e0850
Respect showHiddenPins and showHiddenFields flags when plotting.
2024-04-08 13:32:11 +01:00
Jeff Young
9c94967b52
Tidy renderSettings / jobsHandler APIs.
2024-04-08 12:26:56 +01:00
Jeff Young
5abc7145da
Fold LIB_ITEM into SCH_ITEM.
2024-04-08 10:24:50 +01:00
Jeff Young
494001ed4c
Harmonize more APIs.
2024-04-08 10:10:24 +01:00
Jeff Young
968ca7c5c3
SNR
2024-04-08 10:10:24 +01:00
JamesJ
13038038d9
Remove unused method declaration in SCH_LINE
...
This is a tidy-up following on from b01796cb
2024-04-07 15:41:54 +00:00
Jon Evans
ce846f5c22
Check for bus no-connects in ERC
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13285
2024-04-07 08:50:28 -04:00
Jeff Young
1028a76e4a
Harmonize print/plot APIs.
2024-04-06 09:34:56 +01:00
Jeff Young
5dd8747ecb
Harmonize mirroring APIs.
2024-04-06 09:34:56 +01:00
Jeff Young
c5ed80af52
Harmonize rotate APIs.
2024-04-06 09:34:56 +01:00
Jon Evans
7baccba01c
Coverity fixes
2024-04-05 08:16:29 -04:00
Mike Williams
e83a82594e
net navigator: check for removal from net as well
2024-04-04 15:25:54 -04:00
Mike Williams
e1548c0f9a
schematic: update highlighting when net changed
2024-04-04 14:10:18 -04:00
Jeff Young
92910d5d0f
Factor common parts of SCH_ & LIB_SYMBOL into SYMBOL.
2024-04-04 13:18:55 +01:00
Jeff Young
bf2b3b0b0f
Deconflict some LIB_TREE_ITEM APIs so they can remain non-const.
...
(The non-const is required by FOOTPRINT_INFO, which must load
footrpints to get some of the data.)
2024-04-04 13:18:55 +01:00
Jon Evans
1dbe78c68b
Add QA tests and expand serialization for API
2024-04-02 19:51:18 -04:00
Jon Evans
f613cd1cb4
ADDED: A new IPC API based on protobuf and nng
...
Details, documentation, and language bindings are works in
progress and will be evolving over the course of KiCad 9
development.
2024-04-02 19:34:36 -04:00
Ian McInerney
e67eae90e9
Check for read permissions before trying to import schematic file
...
This will display a better error message to the user, instead of saying
that no plugins to load the file are found (because the plugin tests
will also fail due to being unable to read the file).
2024-04-01 22:00:00 +01:00
Jeff Young
02f6d38fe3
Fix merge error.
2024-03-31 12:59:52 +01:00
JamesJ
b01796cb84
Auto-fill new net global / local label names from connectivity
...
Currently, new global or local net labels are auto-filled with the
net name if the wire is driven by a global or local label. This
currently happens recursively within SCH_LINE. This fix moves this
to determining the driver from the connectivity graph, and removes
the determination from the SCH_LINE code where it does not belong.
2024-03-30 14:33:51 +00:00
Jeff Young
3a430357bc
Cut/copy/paste for SCH tables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17335
2024-03-28 14:34:11 +00:00
JamesJ
7cc7f238d7
SCH_SHAPE destructor marked virtual
2024-03-26 22:20:09 +00:00
Ethan Chien
0a89236f19
CLI: Add allegro and pads netlist output format options
2024-03-26 19:58:22 +08:00
Jeff Young
f3ce3bc758
Close active cell editor when showing/hiding columns.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17425
2024-03-24 10:09:27 +00:00
Jeff Young
a6e2746a08
Rewrite intersheet refs resolution to be sheet-path aware.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17533
2024-03-23 16:50:21 +00:00
Alex Shvartzkop
1c7e3871b5
Fix warning due to unused angle in EasyEDA Pro schematic parser.
2024-03-23 17:51:19 +03:00
Jeff Young
1e6eb652aa
Don't show hidden text in symbol previews.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17526
2024-03-23 12:48:52 +00:00
Marek Roszko
490dbfdf83
Fix build warnings
2024-03-23 08:34:59 -04:00
aris-kimi
d7abed2d60
Footprint Chooser dialog: Allow toggle buttons to work simultaneously
2024-03-23 09:48:15 +00:00
Jeff Young
90566eb735
Setup default colors in the COLOR_SWATCHes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17517
2024-03-22 12:41:03 +00:00
dsa-t
db12f2af49
Disallow cross-probing when not on Symbol Fields Table Edit tab.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17531
2024-03-21 19:08:23 +00:00
Jeff Young
58df9c96f4
ADDED: Expose units and DeMorgan to properties system.
...
(Also fixes inheritance bug in LIB_PIN's properties.)
2024-03-21 16:19:55 +00:00
Jeff Young
c5c65f23a4
Internationalise pin info when language changes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17224
2024-03-21 12:31:04 +00:00
Jeff Young
913e6b47d7
Fix copy/pasta in tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17515
2024-03-21 12:31:04 +00:00
Marek Roszko
83ef5fd7d6
Move PGM_BASE to kicommon
2024-03-20 23:29:42 -04:00
Mark Roszko
7b904545e9
Fix explicit wxstring build breakage
2024-03-21 03:25:15 +00:00
Jon Evans
f00f47df13
wxWidgets 3.3 compatibility: explicit wxString conversion
2024-03-20 22:02:41 -04:00
Jon Evans
e7b6573717
wxWidgets 3.3 compatibility: properties API
2024-03-20 22:02:40 -04:00
Jon Evans
773d241863
wxWidgets 3.3 compatibility: update enum name
2024-03-20 21:50:44 -04:00
jean-pierre charras
3303c17c9b
fix minor compil warning (inused var)
2024-03-19 17:40:04 +01:00
jean-pierre charras
f3966371be
Simulation: add export current plot to clipboard and current schematic
...
These exports are in file menu.
2024-03-19 17:05:55 +01:00
Jeff Young
05cdd44404
Don't assume all glyphs are outline with an outline font.
...
Underline and overbar may be stroke glyphs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17478
2024-03-18 22:21:01 +00:00
JamesJ
2311eed08a
Add new ERC rule to check for global labels with only one entry in the schematic
...
By default this rule is set to ignore to provide continuity for those using
single global labels to name nets (e.g. in simulation)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13212
2024-03-17 23:24:43 +00:00
Wayne Stambaugh
797ab998cc
Maintain hierarchy navigator expansion state between edits.
...
Prevent the hierarchy navigator from being rebuilt unless there are actual
sheet changes that would cause a change to the tree.
Save the tree expansion state before rebuilding the tree and then restore
the expansion state to the previous state sans edits.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16635
2024-03-17 09:02:26 -04:00
Jeff Young
383dbd983a
Don't skip transitions from netclass to empty.
2024-03-16 19:46:48 +00:00
Jeff Young
a6e8370ddd
Pin names drive netnames.
2024-03-16 19:26:26 +00:00
Jeff Young
17a93adb30
Netclasses also must be computed in connectivity updates.
2024-03-16 19:24:25 +00:00
Jeff Young
116908c088
Formatting.
2024-03-16 12:00:15 +00:00
Jeff Young
e30b6398b7
ADDED: optional PDF metadata from AUTHOR and SUBJECT variables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17289
2024-03-14 17:40:04 +00:00
jean-pierre charras
c27eade01e
Symbol Editor: do not allow to select fully invisible pins and fields
...
Of course, invisible pins or fields shown by using option Show invisible
pins or Show invisible fields can be selected.
2024-03-14 10:01:58 +01:00
jean-pierre charras
4f4d9be8d1
Symbol Editor do not display bounding box of invisible pins and fields
2024-03-13 17:46:14 +01:00
Wayne Stambaugh
eddf4883b6
Minor dialog layout improvements.
2024-03-13 11:45:33 -04:00
Jeff Young
dac16a02cc
Default is a valid netclass, even if it's not in m_NetClasses.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17388
2024-03-13 15:30:07 +00:00
Wayne Stambaugh
33566f88a9
Clean up debugging output accidentally left in previous commit.
2024-03-13 10:48:44 -04:00
Wayne Stambaugh
0ff8d21459
Fix broken paste special keep existing symbol annotations.
...
This was only broken for symbols on the sheet where the symbols were
copied from. The symbol annotation for all sub-sheets was preserved.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17231
2024-03-13 09:39:41 -04:00
Jeff Young
7341d4bf37
Update m_LastLegendPosition after setting dirty bit.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17411
2024-03-13 10:39:03 +00:00
Jon Evans
b190f21b6c
Remove close buttons from schematic AUI
...
Harmonizes with PCB editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17415
2024-03-12 19:51:27 -04:00
Jeff Young
628ec858a6
Label netlist exporters.
...
(Particularly useful for those that have no other settings and
otherwise look blank.)
Also replaces "Generator" terminology as it's a bit confusing
(and will only get more confusing with PCBNew Generators).
2024-03-12 17:47:24 +00:00
Seth Hillbrand
0f57d76ecd
Clean and standardize cross-probing action
...
Between schematic and pcb editors, we want the following actions:
- Single click on ERC/DRC item should show the item in the ERC/DRC
window. But if the window is not visible, it should only update the
status bar
- Double click on ERC/DRC item should show and raid the ERC/DRC window
as well as select the line item
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17383
2024-03-11 17:50:44 -07:00
Jeff Young
d083593177
Table bug fixes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17399
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17398
2024-03-11 22:58:12 +00:00
Wayne Stambaugh
865225fcca
Use correct value field text when importing Eagle schematic symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17130
2024-03-11 15:19:32 -04:00
Jeff Young
ed61c5593f
Don't show normal cut/copy/paste items in Signals grid.
...
(Do allow a copy of signal names though.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17395
2024-03-11 18:14:38 +00:00
Jeff Young
73f94175de
Formatting.
2024-03-11 17:46:09 +00:00
Jeff Young
9281561938
Fix include paths and merge conflicts.
2024-03-11 12:11:00 +00:00
Michal Grzegorzek
25abba7432
Add XSPICE node/port modifiers: %d [ ~ ] etc.
2024-03-11 12:03:37 +00:00
jean-pierre charras
64812d3fe6
DIALOG_ERC: fix crash when set to ignore a an ERC violation.
...
If a ERC violation is set to ignore, all corresponding markers are deleted.
But if one of these markers is selected, a crash happens.
Now all selected objects are deselected before deleting markers.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17375
2024-03-11 10:17:11 +01:00
Jeff Young
fbc433deaa
Make sure to initialize cell start location.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17379
2024-03-10 21:49:54 +00:00
Jeff Young
9602151d6c
Fix typo in SelectRows().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17378
2024-03-10 21:06:43 +00:00
James J
bf7896a0e1
Add option to preserve custom power flag values in Update Symbols from Library dialog
2024-03-10 18:32:00 +00:00
ecorm
4dcd1fb8e2
Fix formatting from simulator X/Y zoom changes
2024-03-10 12:43:18 +00:00
ecorm
16de0a666c
Horizontal/vertical zoom for Simulator plots
...
ADDED: Horizontal/vertical zoom for simulator plots, via mouse wheel,
toolbar buttons, menu commands, and hotkeys.
ADDED: Simulator preferences panel, populated with mouse wheel
and trackpad settings that control pan and zoom of simulator plots.
ADDED: Zoom In/Out Horizontally/Vertically commands that can be bound
to hotkeys.
CHANGED: Simulator plot scroll wheel gestures are no longer hard-coded
and can now be configured via the new Simulator preferences panel.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16597
Other unreported bugs that were fixed:
- Fixed wierd, jumpy simulator plot view limiting behavior.
- Fixed Zoom In Center and Zoom Out Center commands not preserving
the simulator plot center point.
- Fixed simulator plot nudging when exported as PNGs.
- Fixed rectangular selection zoom being able to exceed simulator plot
view limits.
Notes:
- Provided new SIM_PREFERENCES struct to be used for future
simulator preferences set via the simulator preferences dialog.
- Bundled pre-existing EESCHEMA_SETTINGS::SIMULATOR settings into
EESCHEMA_SETTINGS::SIMULATOR::VIEW.
- Replaced mpWindow::EnableMouseWheelPan with more general
SetMouseWheelActions.
- Refactored and tidied up wxMathPlot's mpWindow code involved with
fitting, zooming, and panning.
- Consolidated long lists of duplicated member variable initializers to
a new mpWindow private delegated constructor.
- Provided provisional Zoom In/Out Horizontally/Vertically toolbar
icons that need improvement by a graphics designer.
- Provided gitignore entries for the Qt Creator IDE
2024-03-10 12:43:18 +00:00
Jeff Young
1bf24da385
Schematic editor Table Properties and commenting for QuasiModal usage.
2024-03-10 12:18:50 +00:00
Jeff Young
a12d79cd13
Performance improvements for multi-page dialogs.
2024-03-10 12:18:50 +00:00
Yon Uriarte
e824e5a267
Compiler warning: C4555 result of expression not used
2024-03-09 17:11:38 +00:00
Jeff Young
72ba31ba27
Pass symbol's netlist to footprint preview widget.
...
This allows us to show the pin functions on the corresponding
pads.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17349
2024-03-09 15:01:59 +00:00
Marek Roszko
cb01bca1f4
Add PADS netlist format export
2024-03-09 10:00:46 -05:00
Wayne Stambaugh
c5a02fc266
Do not update schematic connectivity for irrelevant property changes.
...
Prior to this change, the schematic connectivity was updated any time a
change was made to a connectable object. Now the connectivity is only
updated when an object change actually affects the connectivity. Other
properties like line width, fill type, custom fonts, etc. will not cause
the connectivity graph to be rebuilt.
The SCH_COMMIT flag SKIP_CONNECTIVITY has been removed. All schematic
objects can test if they are connectable and if there have been changes
to any connection properties that require a connectivity rebuild.
Remove duplicate rebuild connectivity calls from editor control tool.
This was causing the tangling end test to get called four times on every
undo and redo action because the dangling end test is already called in
the connectivity graph calculation code.
Update connectivity when changing label names which fixes an unreported
connectivity bug.
2024-03-09 08:50:26 -05:00
jean-pierre charras
5ac8449e1f
Minor compil and Coverity fixes
2024-03-06 13:05:21 +01:00
Jon Evans
4bc69183ab
Set description on Altium imported symbols
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16943
2024-03-05 23:08:11 -05:00
Jon Evans
1600d8bead
Prevent use-after-free of symbol screens
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17204
2024-03-05 22:53:51 -05:00
Jon Evans
c1ba07e6bc
SelectAll should use the filter
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17157
2024-03-05 18:27:51 -05:00
Jon Evans
1988aac2b3
Update a few more list/tree views for macOS
2024-03-05 08:38:46 -05:00
Ethan Chien
8cda72f8d5
Fix defects reported by Coverity scan introduced in !1765
...
Corrects lifetime performance issue where extra copies of SCH_SHEET_PATH objects were being passed on the stack.
2024-03-04 19:45:05 +00:00
Yon Uriarte
62c961b8ba
Performance Mitigate "Edit all symbol fields" dialog slow closing.
...
GetSymbols will return all symbols. Call it once and cache it.
2024-03-04 19:41:01 +00:00
Jeff Young
ff8ddae9bd
Convert OP text variables pin names/numbers to SPICE vectors.
...
Also fixes a wrap-around bug in SPICE_VALUE::Normalize() where
it would lose the run of itself if the value was already
normalized to either the largest or smallest UNIT_PREFIX.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17228
2024-03-04 14:25:29 +00:00
Alex Shvartzkop
c056ef407a
EasyEDA Std: support multiple schematic sheets.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17219
2024-03-04 15:09:31 +03:00
Alex Shvartzkop
cc181df916
EasyEDA Std: support Dot and Clock symbol pin styles.
2024-03-04 15:09:31 +03:00
Alex Shvartzkop
69b15e83c5
EasyEDA Std: hide invisible text in symbols.
2024-03-04 15:09:31 +03:00
Alex Shvartzkop
563278d0f6
EasyEDA Pro schematic: place items on root sheet when it's the only sheet.
2024-03-04 15:09:31 +03:00
Lucas Dumont
13c647ef6f
Fix resources leak reported by coverity
...
For unique_ptr, release only set the ownership to null, but don't free the resource behind. On the other hand, reset do.
Closes Coverity ID 483269
Closes Coverity ID 471974
Closes Coverity ID 471973
2024-03-03 16:23:49 +00:00
Petri Hodju
c76c4ba304
schematic: do not skip item repaint if item's parent type != SCHEMATIC_T
...
the item repaint was skipped when unhighlightning symbols after dragging
and unselecting.
Fixes https://gitlab.com/kicad/code/kicad/issues/17193
Fixes https://gitlab.com/kicad/code/kicad/issues/17206
2024-03-03 16:21:29 +00:00
Roberto Fernandez Bautista
4851b0f1ac
Database library cache: fix memory leak
2024-03-03 16:20:32 +00:00
Marek Roszko
0c8e08ed58
Move some language changes to a event on the frame
2024-03-03 11:02:26 -05:00
Wayne Stambaugh
66925ec2a2
Update net navigator when cross probing from board editor net highlight.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16838
2024-03-03 08:56:48 -05:00
Jon Evans
612c7015a7
REMOVED: Clicking on pin selects symbol setting
...
This is now redundant with the selection filter
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17114
2024-03-02 22:18:51 -05:00
Jon Evans
c51e9917ba
Fix ordering of selection filter and net navigator
2024-03-02 20:21:16 -05:00
Jeff Young
9c371e2ef5
Don't draw the selection if it's not from the current screen.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17132
2024-03-02 18:57:39 +00:00
jean-pierre charras
428f2087bd
Eeschema: fix crash when editing a old legacy schematic with missing libs,
...
and trying to edit a dummy symbol. (crash due to a null pointer due to missing lib)
Fixes #17232
https://gitlab.com/kicad/code/kicad/-/issues/17232
2024-03-02 15:23:23 +01:00
Jeff Young
c97c69a2f0
First alt-pin menu item must be fetched from the LIB_PIN.
...
(The SCH_PIN will return any alt function already assigned.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17221
2024-03-02 12:17:22 +00:00
Roberto Fernandez Bautista
70fe2a8f1e
kicad_cli: Allow upgrade of legacy and non-kicad symbol libraries
2024-03-02 13:06:23 +01:00
Seth Hillbrand
0d03f2febc
When failing to import, ensure extant screen
...
We need at least the root screen in order to handle any action in
Eeschema. Because this is destroyed by starting to load the new
schematic, when failing, we need to reset to null.
This is not as good as resetting to the previous state but that will
take refactoring our file load routines in schematic editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16993
2024-03-01 18:48:14 +00:00
Mike Williams
a902898522
schematic: legacy kicad schematic files don't have a default description field
...
Without this, we would parse a legacy schematic symbol field at the same
index as the new description field's index into description, instead of into
a user field.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17202
2024-03-01 10:40:03 -05:00
Alex Shvartzkop
defcb49ac8
Support Altium Schematic ASCII import
2024-02-29 20:49:20 +00:00
aris-kimi
24529e5242
ADDED: library tree context menu option to open sym/fp library files from the defined text editor.
...
Short description:
Works for Symbol and Footprint Editor behind an advanced config option.
For Symbol Editor it is shown for a single item selection (library or symbol).
For Footprint Editor it is shown for a footprint selection.
(fp editor allows a single tree item selection only).
Option stays hidden if current frame has been modified.
Also small fix(?) for similar action to the project manager.
(Call for the Execution has moved inside the file loop.)
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15736
2024-02-29 19:01:59 +00:00
Alex Shvartzkop
cd27f801f6
Allow .kicad_sym in Import Symbol filters.
2024-02-29 17:36:32 +03:00
Alex Shvartzkop
39a0a81832
EasyEDA Std import: support multiline text on PCB.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17171
(cherry picked from commit 0dab086f0c
)
2024-02-29 00:54:46 +00:00
Jeff Young
20ea299742
Cleanup.
2024-02-28 22:18:26 +00:00
Jeff Young
d08e0e9eaa
_() -> _HKI() for group names.
2024-02-28 17:50:51 +00:00
Wayne Stambaugh
141d03c266
Fix sheet pin align to grid issue.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16920
2024-02-28 11:57:49 -05:00
Alex Shvartzkop
0314540fdb
Keep schematic text upright (especially when opening v6 schematic).
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17082
(cherry picked from commit bec068324e
)
2024-02-28 15:25:39 +00:00
Wayne Stambaugh
9a9d6f2afb
Sheet synchronization dialog layout improvements.
2024-02-28 08:08:03 -05:00
jean-pierre charras
fe349be48b
Eeschema, DIALOG_CHANGE_SYMBOLS: fix incorrect initial lib link name when
...
changing symbols: the "old" displayed link was in fact the new link because
the link was updated before the report is created.
Fixes #17162
https://gitlab.com/kicad/code/kicad/-/issues/17162
2024-02-28 11:21:17 +01:00
Jon Evans
31fab831ad
Remove unnecessary assert
...
GetModifyHash can be called before a row is loaded
2024-02-27 19:03:06 -05:00
Jeff Young
2dce618f9f
Expose text size for SCH_FIELDs.
2024-02-27 17:48:09 +00:00
Jeff Young
a5fda819eb
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16991
2024-02-27 17:16:14 +00:00
Jeff Young
3079f7c742
Fix copy pasta.
2024-02-26 22:29:29 +00:00
Jeff Young
ac0758eca0
Only change pin assignments from user interaction.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16349
2024-02-26 19:02:00 +00:00
Jeff Young
d16b5fb810
Handle single-source DC analyses correctly.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17119
2024-02-26 19:02:00 +00:00
Wayne Stambaugh
23169ca1a7
Post merge request clean up.
2024-02-26 07:54:22 -05:00
Jon Evans
2f6c9d1f3a
ADDED: Selection filter for schematic editor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14988
2024-02-25 17:44:10 -05:00
Jeff Young
aef87b9796
Push thickness handling down into EDA_TEXT::SetBold().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17077
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14875
2024-02-25 17:28:52 +00:00
jean-pierre charras
7789dfcfdc
fix a compil issue (missing include and nullptr_t -> std::nullptr_t)
2024-02-25 16:26:05 +01:00
jean-pierre charras
f7721f385a
Symbol editor: add option (view menu+toolbar) to show/hide invisible pins and fields
...
Fixes #8020
https://gitlab.com/kicad/code/kicad/-/issues/8020
2024-02-25 16:09:50 +01:00
Ethan Chien
be81bce637
Add Feature: synchronize hierarchical labels and sheet pins
2024-02-25 14:23:59 +00:00
Jon Evans
d939004bbd
Fix use-after-free in Altium importer
...
If the library already contains a symbol with the same name,
SaveSymbol will replace the existing symbol,
which will invalidate a cached pointer.
2024-02-25 08:47:07 -05:00
Jeff Young
99948de45a
Support pin count and footprint filters in symbol editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17105
2024-02-25 13:14:31 +00:00
Jeff Young
dba2fdb6d3
Don't import invalid polygons.
...
If we *do* get a 2-point polygon in SVG, import it as a segment.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17091
2024-02-25 12:28:19 +00:00
Jeff Young
caa83ec9bd
Fix missing unit initialization.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17076
2024-02-24 22:34:41 +00:00
Jeff Young
9a02712c4f
Update VDMOS models to ngspice-41 (and later) defaults.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17073
2024-02-24 20:05:51 +00:00
Jeff Young
f77de66f4e
Generalize ERCItem inspections.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10539
2024-02-24 20:05:51 +00:00
Jeff Young
e7abeb3c38
Cleanup.
2024-02-24 20:05:51 +00:00
Jeff Young
fa0ead98d8
Split out table editing and table cell editing.
2024-02-24 20:05:51 +00:00
Jeff Young
3282e4bb66
Formatting.
2024-02-24 20:05:51 +00:00
Jeff Young
782af3a918
Clear text before replacing in ImportSettingsFrom.
2024-02-24 20:05:51 +00:00
Jeff Young
e760317af6
ADDED: Implement footprint link checking in ERC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16842
2024-02-24 20:05:51 +00:00
Jeff Young
d7e4a8cebd
ADDED: ERC/DRC exclusion comments.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16020
2024-02-24 20:05:51 +00:00
Jeff Young
c8d2a9340b
ADDED: ExpandAll/CollapseAll for hierarchy pane.
2024-02-24 20:05:51 +00:00
Jeff Young
4eefbc7815
ADDED: textbox and tablecell margins.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10672
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6806
2024-02-24 20:05:51 +00:00
Jeff Young
e445249720
ADDED: PCB tables.
2024-02-24 20:05:51 +00:00
Jeff Young
91df43c97a
ADDED: schematic tables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6806
2024-02-24 20:05:50 +00:00
Jeff Young
4a9df1e18e
ADDED: actions for left-, center-, and right-justifying text items.
...
(For both PCBNew and EESchema.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12375
2024-02-24 20:05:50 +00:00
Alex Shvartzkop
6347cb043e
Add bottom panel to have correct background in fp/sym chooser frames.
...
See https://gitlab.com/kicad/code/kicad/-/issues/15810
(cherry picked from commit 97ff48b426
)
2024-02-24 18:20:16 +03:00
Alex Shvartzkop
5578b2c954
Hide unused message panel in footprint/symbol chooser frames.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15810
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15889
(cherry picked from commit badc4e7411
)
2024-02-24 18:20:16 +03:00
Yon Uriarte
b7b64d959f
Performance UpdateDanglingState
...
Avoid O(N^2) by spatial sorting, don't run checks if the bounding boxes
don't overlap.
A second copy is ordered by type to help classes that only want to check
a few types having to walk the whole list.
2024-02-23 19:21:44 +00:00
Yon Uriarte
f3c2083018
Performance SCH_EDIT_FRAME::SchematicCleanUp
...
Avoid O(N^2) comparisonis by spatial presorting. If bounding boxes don't
overlap there's no need to run expensive checks.
2024-02-23 19:21:44 +00:00
Andrej Krpic
006f93773c
Fix collecting of signals for S-Parameters analysis
2024-02-23 18:34:21 +00:00
Alex Shvartzkop
cb25c8620e
Performance optimizations for database libraries.
...
(cherry picked from commit e68df8e1d1
)
2024-02-23 20:29:18 +03:00
Alex Shvartzkop
e5896374e3
Normalize SCH_PIN BBox to fix assert.
...
(cherry picked from commit 3e26e7b646
)
2024-02-23 20:29:18 +03:00
Alex Shvartzkop
72354ac033
Eeschema: select graphical shapes based on effective shapes.
...
(cherry picked from commit a13e4e7d9f
)
2024-02-23 20:29:18 +03:00
Jeff Young
12c21abdff
Don't use EQUALITY flag when doing a symbol diff with library.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16944
(cherry picked from commit adae4de438
)
2024-02-23 16:53:36 +01:00
Jeff Young
4a561b04bc
Code cleanup and compiler warnings.
...
(cherry picked from commit 51848a0b43
)
2024-02-23 16:53:35 +01:00
Jeff Young
98cd040952
Set up default netclass wire & bus widths.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17024
(cherry picked from commit 2d7f4faf72
)
2024-02-23 16:53:35 +01:00
Jeff Young
2c49ba4252
Formatting.
...
(cherry picked from commit c75bb5d01a
)
2024-02-23 16:53:35 +01:00
Jeff Young
19dedccd98
Improve layout of schematic colors preview.
...
Also, set pin name/number sizes. Don't use defaults (which
will get plucked out of the Symbol Editor's settings).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17043
(cherry picked from commit df8f043c16
)
2024-02-23 16:53:35 +01:00
Jeff Young
17a37a55f0
When updating RefDes only update the prefix.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16991
(cherry picked from commit b6036f368e
)
2024-02-23 16:53:34 +01:00
Jeff Young
2cd9fbab9d
Check known m_Desc field before m_Fields.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16971
(cherry picked from commit 25291d6e3a
)
2024-02-23 16:53:34 +01:00
Jeff Young
ca3cd706e5
Show friendly name in toolbar button tooltips.
...
(Don't require the same text to be put into the tooltip.
It's error-prone and also disallows us from having a separate
tooltip for toolbar buttons.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17009
(cherry picked from commit f4a085575a
)
2024-02-23 16:53:33 +01:00
Jeff Young
800bbd8841
Delete empty Netclass fields only if there are others.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16997
(cherry picked from commit a34b242f4e
)
2024-02-23 16:53:33 +01:00
Jeff Young
57dcf285c5
Various string issues held over from 8.0 string freeze.
...
(cherry picked from commit a610542a19
)
2024-02-23 16:53:31 +01:00
Jeff Young
23c2104ffa
Improve alignment tooltips.
...
(cherry picked from commit 2ab492474e
)
2024-02-23 16:53:31 +01:00
Jeff Young
f161a1eaac
Ignore duplicate/repeat when drawing an existing item.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16885
(cherry picked from commit 3caede3799
)
2024-02-23 16:53:30 +01:00
Jeff Young
9ff66d0e71
Don't capture references to local variables for CallAfter.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16934
(cherry picked from commit 9d40374baf
)
2024-02-23 16:53:30 +01:00
Roberto Fernandez Bautista
d464d7995b
Thread safety: replace ++m_modHash by IncrementModifyHash()
2024-02-23 14:59:10 +00:00
Roberto Fernandez Bautista
991ddfe6be
Add cache to SCH_IO_DATABASE to improve loading performance
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17031
2024-02-23 14:59:10 +00:00
Roberto Fernandez Bautista
07ab18a1e6
Legacy libraries: De-duplicate field names on load
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16902
2024-02-23 14:57:57 +00:00
Roberto Fernandez Bautista
420413969e
Altium: Don't create duplicate fields
2024-02-23 14:57:57 +00:00
Roberto Fernandez Bautista
1a6e6a06eb
Altium: Don't load library parameters with an owner for now
...
In Altium many objects can have parameters (including pins). For now
we will drop library parameters belonging to any sub-components of a
symbol.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17048
2024-02-23 14:57:57 +00:00
Wayne Stambaugh
27911d9b5a
Fix crash when changing sheet file name that contains a highlighted net.
...
Performing a full connectivity rebuild after changing a sheet file name
ensures that there are no stale connectivity object pointers laying around.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17011
2024-02-17 08:50:22 -05:00
Ian McInerney
206a631135
Ensure stream is valid before checking for Eagle XML tag
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16989
Fixes KICAD-7QQ
2024-02-16 11:14:10 +00:00
Marek Roszko
f894a41dc2
LIB_SYMBOL::IsMulti() seems to be wrong, use the iterate conditional as the multi-unit check instead
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16932
2024-02-16 00:18:05 -05:00
Marek Roszko
9e08e6e4f1
USe setactive in cli in the LoadSchematic helper too
2024-02-16 00:08:10 -05:00
Jon Evans
7b0bb59b37
Remove hard-coded versioned env vars in most places
2024-02-15 15:31:08 +00:00
Seth Hillbrand
0775d1364a
Add bezier icon
...
Fixes https://gitlab.com/kicad/code/kicad/issues/16830
2024-02-14 02:01:01 +01:00
Marek Roszko
f73d45b0cf
Add $schema prop to drc/erc
2024-02-13 19:08:55 -05:00
Mike Williams
c92728715d
Schematic: import schematic sheet content, allow move and undo
...
Otherwise, the schematic is just plopped on the screen, causing
connections and junctions to be missing that should be present.
2024-02-13 12:18:46 -05:00
Jeff Young
12c8f5b14d
Update compatibility mode and save flags in ngspice.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16955
2024-02-13 14:50:15 +00:00
Marek Roszko
2afe4db945
Add some missing newlines in cli output without changing strings
2024-02-11 21:12:21 -05:00
Marek Roszko
6a37f99e94
Fix crash if we exit lib table setup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16917
2024-02-11 21:05:23 -05:00
Marek Roszko
d694bb5960
Use file name rather than path for erc/drc json and text reports
2024-02-11 20:16:22 -05:00
Alex
b5982f7319
EasyEDA import: force close some line chains.
2024-02-11 23:52:56 +03:00
Alex
bf9d085c15
EasyEDA schematic import: fix nan center for elliptic arcs.
2024-02-11 23:52:56 +03:00