Marek Roszko
96cdfc7fa7
Update equality overloads for C++20
...
C++20 added new reverse and rewritten candidates. This can confuse the compiler because it'll test both A==B and B==A for overloads.
Because we were defining parent class equality overloads, A==B and B==A was considered ambigious due to both being compatible in casting.
So we needed to add explicit child class equality operator overloads
2024-04-12 23:05:58 -04:00
Marek Roszko
e3777758d9
Silence enum operation warning
2024-04-12 22:54:42 -04:00
Marek Roszko
8fb4901d4b
Fix more utf8 comparisons
2024-04-12 22:53:25 -04:00
Marek Roszko
c042b51be9
Fix another deprecated lambda capture
2024-04-12 22:49:50 -04:00
Marek Roszko
161cfbacd4
constexpr the let user{} format string
2024-04-12 22:48:34 -04:00
Marek Roszko
0675c62a24
Update two more lambda capture
2024-04-12 22:42:31 -04:00
Marek Roszko
e6be29daa0
Fix another UTF8 to wxString comparison
2024-04-12 22:38:38 -04:00
Seth Hillbrand
6c17e275fb
Revert "Re-enforce ordering"
...
This reverts commit b22fcf70cd
.
2024-04-12 14:14:06 -07:00
Seth Hillbrand
531a8b9db9
Revert "Compare function should return int"
...
This reverts commit 7727982478
.
2024-04-12 14:13:55 -07:00
Seth Hillbrand
b22fcf70cd
Re-enforce ordering
...
Instances, pins and graphics have started to wander around the files.
Sorts instances before writing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17737
2024-04-12 11:58:30 -07:00
Seth Hillbrand
7727982478
Compare function should return int
...
Returning boolean is promoted to int and confuses false with '0'
indicating that the elements are identical
2024-04-12 11:30:16 -07:00
Seth Hillbrand
f08cacb30f
Revert "Re-enforce ordering"
...
Unexpected element loss after save. Reverting to fix
This reverts commit f2f4890342
.
2024-04-12 10:34:11 -07:00
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