Seth Hillbrand
6c17e275fb
Revert "Re-enforce ordering"
...
This reverts commit b22fcf70cd
.
2024-04-12 14:14:06 -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
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
afkiwers
d45911f54b
add support to update an already existing field
2024-04-09 23:37:20 +00:00
Jeff Young
5abc7145da
Fold LIB_ITEM into SCH_ITEM.
2024-04-08 10:24:50 +01:00
Jeff Young
c5ed80af52
Harmonize rotate APIs.
2024-04-06 09:34:56 +01: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
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
Alex Shvartzkop
1c7e3871b5
Fix warning due to unused angle in EasyEDA Pro schematic parser.
2024-03-23 17:51:19 +03:00
Marek Roszko
490dbfdf83
Fix build warnings
2024-03-23 08:34:59 -04:00
Jon Evans
f00f47df13
wxWidgets 3.3 compatibility: explicit wxString conversion
2024-03-20 22:02:41 -04: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
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
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
Roberto Fernandez Bautista
4851b0f1ac
Database library cache: fix memory leak
2024-03-03 16:20:32 +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
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
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
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
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
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
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
Alex Shvartzkop
cb25c8620e
Performance optimizations for database libraries.
...
(cherry picked from commit e68df8e1d1
)
2024-02-23 20:29:18 +03: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
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
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
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
Jeff Young
aef6b2a66e
nullptr safety and a bit of wxT'ing.
2024-02-09 13:56:01 +00:00
Jeff Young
8efd90e6e8
Allow reading of 0 text sizes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16902
2024-02-07 16:46:42 +00:00
Alex
e55a803572
Altium schematic import: do not overwrite sheet name.
2024-02-07 05:06:49 +03:00
Alex
a32d5174a1
Altium schematic import: clear harness port list after parsing Additional.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16894
2024-02-07 05:06:49 +03:00
Alex Shvartzkop
0778a7d46d
Fix Windows build.
2024-02-06 00:38:21 +03:00
Alex Shvartzkop
be1bbda8ce
Altium: Fix bug when symbol uses multiple display modes on one sheet.
2024-02-05 22:36:30 +03:00
Alex Shvartzkop
d8c72e845c
Altium schematic: support component's DISPLAYMODE being a string.
2024-02-05 22:36:25 +03:00
Jeff Young
1ff36f23b8
Clean up stale TODOs.
2024-02-05 15:49:57 +00:00
Andre Iwers
a0c39715df
HTTP LIB - Fine tuning
2024-02-05 12:11:01 +00:00
Roberto Fernandez Bautista
079478f989
EDA_ANGLE: use constexpr for constant angles
...
Remove all statics in the class and instead use constexpr to
ensure correct ordering
2024-01-31 19:17:46 +03:00
Alex Shvartzkop
6ff3b0eb95
Altium schematic: remove border from symlib ellipse inner polygon.
2024-01-31 19:08:36 +03:00
Alex Shvartzkop
7f29ac39d8
Altium schematic: case-insensitive search for subsheet files.
...
Also fixes open polylines on sheet.
Also prevents adding polylines with less than 2 points.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16829
2024-01-31 17:57:10 +03:00
Alex Shvartzkop
1e5b68cb87
Altium schematic: add polygon inside filled ellipse.
2024-01-31 09:34:36 +03:00
Alex
6225ef69b6
Altium schematic import: fix power ports.
...
Use different symbol names for different port port styles.
Also fixes curved shapes construction.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16823
2024-01-31 08:22:27 +03:00
Alex
c64b74918f
Altium schematic import: put Template items on sheet.
...
So we can use variable resolution.
2024-01-31 07:00:02 +03:00
Alex
9ed735ef5d
Fixes for Altium/CircuitStudio schematic import
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16825
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16824
Adds support for Templates.
Also fixes symbols on schematic with multiple display modes.
2024-01-31 02:07:06 +03:00
Jeff Young
ae735d3eb4
Renaming: replace convert with body-style.
...
No functional changes.
2024-01-26 16:21:03 +00:00
Wayne Stambaugh
8975f26c26
Coding policy fixes.
2024-01-26 08:59:14 -05:00
afkiwers
c7475a16c8
implemented better caching for categories and parts overview to reduce processing time
2024-01-23 22:32:05 +00:00
Jeff Young
1bd8da41a7
Mutual Inductor isn't an inductor.
...
It's a statement about two other inductors.
2024-01-23 15:07:29 +00:00
Andre Iwers
4d1a016429
HTTP Libraries: Improved cache performance
2024-01-18 02:33:16 +00:00
Alex Shvartzkop
3bbf45dccb
EasyEDA Pro: resolve device attribute variables in schematic.
2024-01-16 23:40:00 +03:00
Alex Shvartzkop
42255f10c3
EasyEDA Pro: fix default netport orientations.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16620
2024-01-16 22:47:15 +03:00
Alex Shvartzkop
01e88d33aa
Fix Bezier reading in schematic as well.
2024-01-15 22:35:35 +03:00
Alex Shvartzkop
b7460f29b4
Altium schematic: fix properties parsing in old formats.
...
Leading "|" can be missing before "RECORD=28" in old formats.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16513
2024-01-14 13:12:47 +03:00
Wayne Stambaugh
38562db023
Coding policy fixes.
2024-01-04 13:30:02 -05:00
Jeff Young
2a0486845d
Restore legacy spin-style processing for text items.
...
Post-V5 we only use it on labels, but earlier versions also
used it for text.
Also process spinStyle for CADSTAR imports.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16488
2023-12-31 17:22:58 +00:00
Alex Shvartzkop
aa6fd88082
Default graphical line style in v6 and older was Dashed.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16479
2023-12-31 19:28:55 +05:00
Ian McInerney
f2702b223c
Introduce base IO_MGR class and unify RELEASER objects
...
The IO_RELEASER is a thin-wrapper around a std::unique_ptr, but done
this way to allow easier addition of a custom deleter in the future if
something needs to call back into the IO_MGR.
2023-12-29 00:37:38 +00:00
Wayne Stambaugh
04d15026c5
Rename SCH_SYMBOL::GetInstanceReferences() to GetInstances().
2023-12-28 18:25:56 -05:00
Marek Roszko
9a890cdba9
Kick the wildcards and file exts into a static class, export it from kicommon
2023-12-27 21:10:01 -05:00
Ian McInerney
4a67761d29
Push library reading check to IO_BASE
2023-12-27 16:44:45 +00:00
Ian McInerney
f8688a922d
Unify IO library descriptors
2023-12-27 16:34:59 +00:00
Ian McInerney
743e9d669a
Push library management into IO_BASE
2023-12-27 01:21:53 +00:00
Ian McInerney
cad91312aa
Introduce main base class for all IO loaders
2023-12-26 23:27:11 +00:00
Alex Shvartzkop
5bbe01b570
EasyEDA Pro: support .elibz format (device libraries)
2023-12-25 07:00:24 +03:00
Ian McInerney
85f62c1fde
Rename all schematic IO plugins
2023-12-24 01:22:21 +00:00
Ian McInerney
d8b47d18d3
Initial rename of file plugin infrastructure components to IO
2023-12-24 01:22:21 +00:00