Seth Hillbrand
24d3df5416
ADDED: Altium SchLib Support
2023-09-06 19:15:35 +00:00
Seth Hillbrand
f9b745f3d2
Allow multiple format image saving
...
- Keep original image data. When loading JPEG, this avoid recompression
that changes file data and decreases image quality
- Allow schematic and page layout editors to store non-PNG data as well
- Move page layout editor to store base64 instead of hex-coded data
2023-09-06 12:12:32 -07:00
Jeff Young
c2057ba1bc
Don't use Clone() for duplicating. It returns the same UUID.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14162
2023-09-03 19:06:20 +01:00
Wayne Stambaugh
f8cb239f40
Fix symbol library save issue.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15561
2023-09-03 09:11:06 -04:00
Alex Shvartzkop
e128896ba6
Schematic plugins refactoring, fixes for PCB plugins.
...
- Move PLUGIN_FILE_DESC to common.
- SCH_PLUGIN: rename Load -> LoadSchematicFile, Save -> SaveSchematicFile.
- Use PLUGIN_FILE_DESC and CanRead* in schematic plugins.
- Return none/unknown types from Find/GuessPluginType functions.
- Iterate over file types for file wildcards.
- Clean-up header checking in IO plugins.
- Use PCB plugin list in IO_MGR::GuessPluginTypeFromLibPath.
2023-08-31 05:08:03 +03:00
Jeff Young
86f96d544b
{slash}-to-/ comparison special-cases need to run both ways.
...
(The library may be legacy format, or the document may be.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15540
2023-08-29 18:29:49 +01:00
Roberto Fernandez Bautista
18e6fa6a53
Fix nullptr exception in cadstar sch plugin
...
Fixes KICAD-30E
2023-08-28 20:49:42 +02:00
jean-pierre charras
f4bf3bf611
Do not use the deprecated wxWidgets wxPATH_NORM_ALL flag.
...
Replaced by our equivalent FN_NORMALIZE_FLAGS flag.
Fix also a typo in a string.
2023-08-28 14:37:15 +02:00
Roberto Fernandez Bautista
0e1baa6fef
CADSTAR Parts Libraries: Correctly handle relative paths to .csa file
2023-08-27 20:52:46 +02:00
jean-pierre charras
15f5a14217
Fix minor compil warnings
2023-08-27 11:11:08 +02:00
Wayne Stambaugh
1026596964
Allow symbols to be derived from other derived symbols.
...
[CHANGED] Symbols can now be derived from other derived symbols removing
the requirement to derive from root symbols.
2023-08-24 07:59:32 -04:00
Jon Evans
e118d2fca0
DbLib: Map multiple footprints to footprint filter list
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13587
2023-08-23 19:16:49 -04:00
Marek Roszko
93fa3a17aa
Remove plotter.h from one file
2023-08-19 19:01:29 -04:00
Alex Shvartzkop
9b2ac10002
LTspice spelling.
2023-08-10 00:31:21 +03:00
Mike Williams
bdecdce1b4
Exclude from Sim: move from field to attribute
2023-08-08 12:36:36 -04:00
Alex Shvartzkop
717ee350c8
Support >180 deg arcs in schematic.
2023-08-07 14:18:38 +03:00
jean-pierre charras
3a82374719
sim/sim_model: fix an annoying issue when adding new fields: their ID was
...
set in undefined, that create an issue (the canonical name was returned as
"Field-1", breaking the schematic file).
Now, new field IDs are not set to -1, and the saved file uses the field name
(if exist) when saving fields with undefined ID.
2023-08-01 13:37:53 +02:00
Jon Evans
148e111579
Refactor pin orientation to be an enum class
...
Add various LIB_PIN properties
2023-07-26 23:46:15 -04:00
jean-pierre charras
a16ab0aae1
Replace SHAPE_T::RECT by SHAPE_T::RECTANGLE: RECT creates a collision name
...
issue with a Windows header on msys2.
Change very similar to the commit 9a47b344
about class PAD_SHAPE.
No actual code change
2023-07-25 09:11:55 +02:00
Roberto Fernandez Bautista
cf0b719a4a
Fix some unreachable code msvc warnings
2023-07-16 15:41:05 +02:00
Alex Shvartzkop
89a9eee174
LTspice import: fix Mac path variable shadowing.
2023-07-12 18:07:26 +05:00
Alex Shvartzkop
f8f7b84f13
LTspice import: add LTspice 17.1 Windows library path.
2023-07-12 10:57:30 +05:00
Alex Shvartzkop
c652abecff
LTspice import: don't scan input file directory recursively.
2023-07-12 09:58:51 +05:00
Alex Shvartzkop
2266ba78c5
LTspice import: much faster library path scanning.
2023-07-12 08:38:18 +05:00
Alex Shvartzkop
32fdb231b2
LTspice import: fill symbol rectangles with body color when needed.
2023-07-12 08:38:18 +05:00
Alex Shvartzkop
568a461080
LTspice import: Fix multiline text alignment.
2023-07-12 08:38:18 +05:00
Alex Shvartzkop
0bc546fa62
LTspice import: fixes for graphical items.
2023-07-11 16:03:29 +05:00
Alex Shvartzkop
a5ba9ccce2
LTspice import: don't try loading .asc files for non-subsheets.
...
Subsheets don't have "Prefix" attribute, components do.
2023-07-11 16:03:29 +05:00
Alex Shvartzkop
ef1a2ff050
LTspice import: text and pin justification, polarity fixes.
2023-07-11 13:00:43 +05:00
Alex Shvartzkop
e80e4ff410
LTspice import: hide pin names with None justification, hide pin numbers
2023-07-11 12:57:56 +05:00
Alex Shvartzkop
b957c1ad17
LTspice import: Support VCenter text justification
2023-07-11 04:09:16 +05:00
Alex Shvartzkop
1e149704b8
LTspice import: Fix M270 symbol orientation.
2023-07-11 04:09:16 +05:00
Jeff Young
3ba7e7e993
A few baby steps in trying to straighten out LTSPICE_SCHEMATIC::Load().
2023-07-10 11:34:06 +01:00
Jeff Young
229dcde948
Fix a memory leak.
...
There are likely *many* more in this routine, but I can't quite
understand what it's trying to do.
2023-07-10 11:34:06 +01:00
Roberto Fernandez Bautista
dfe7051171
LTspice importer fixes
...
- Correctly find the library paths for new and old LTspice versions
- Use case insensitive comparison (store element names as lower case in the map)
- Better search paths
- Allow user to copy contents of LTspice "lib" folder to the same folder as file being imported
Partially addresses https://gitlab.com/kicad/code/kicad/-/issues/15061
2023-07-09 22:53:23 +02:00
Roberto Fernandez Bautista
6539171459
LTspice importer - remove dead code
2023-07-09 22:51:21 +02:00
Alex Shvartzkop
37772ac29e
Altium schematic: import net label justification.
2023-07-04 10:27:46 +03:00
Marek Roszko
b5e420c33c
Fix EDA_TEXT creation that worked due to implicit cast
...
A leftover from the units object rework and I forgot to double back. The DEFAULT_SIZE_TEXT is set inside the constructor now
2023-07-03 11:23:30 -04:00
Jeff Young
aa8dbc03a2
Error reporting for missing ltspice symbol (.asy) files.
2023-06-26 21:59:57 +01:00
Jeff Young
4f52c69724
Better path handling for importing LTspice files.
2023-06-26 20:51:16 +01:00
Jon Evans
d4b7144448
Properties: expose symbol attributes
...
Flip polarity of exclude-from-BOM and -board for symbols
to match that of footprints and match the GUI display.
2023-06-24 22:03:06 -04:00
Jon Evans
bf2e9f8261
Properties for SCH_LINE
...
Also rename an incongruous setter
2023-06-24 20:08:42 -04:00
Jon Evans
39a5929f33
Database libraries performance improvements
...
Rework caching system and optimize queries
2023-06-22 18:49:37 -04:00
Mike Williams
043ed0b148
Schematic: fix up more field ID parsing to fix QA
2023-06-21 10:51:28 -04:00
Mike Williams
5b4ddaba89
Schematic: fix field parsing when some mandatory fields are missing
2023-06-20 22:05:03 -04:00
Mike Williams
85f889bc19
Fields: Description now mandatory
...
Propagate from symbols to footprints, footprints keep a library
description, too. (GetLibDescription())
2023-06-20 18:34:52 +00:00
Ian McInerney
4761815f36
Fix reversed arguments in ltspice importer
2023-06-15 23:01:39 +01:00
Ian McInerney
d96580c651
Properly handle improper symbols when pasting in symbol editor
...
Before, an improper symbol (one without the starting toekn) weren't
detected and reported to the user properly and would instead assert. Now
properly detect these and pass the error up the stack to the tool.
(Sentry issue KICAD-21J).
2023-06-12 23:14:56 +01:00
Jeff Young
96073402ce
Don't accidentally add NULL ptrs to the LibSymbols cache.
...
Operator[] will add a blank element if it isn't found in the map.
Probably Sentry KICAD-23Y.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14927
2023-06-11 15:50:24 +01:00
Wayne Stambaugh
bdee545841
Coverity warning fixes.
2023-06-03 07:28:17 -04:00
Roberto Fernandez Bautista
8493cc4c89
CADSTAR SCH LIB: Add plugin options + improve symbol caching
2023-05-28 23:56:42 +02:00
Marek Roszko
ded099c07d
Unreachable code warning
2023-05-20 08:08:22 -04:00
jean-pierre charras
3be8bfe193
Fix a few Coverity warnings (not initialized vars)
2023-05-14 10:11:38 +02:00
jean-pierre charras
31d613c746
Fix a few Coverity warnings (not initialized vars)
...
It also fixes a potential crash when closing Kicad.
2023-05-10 09:21:39 +02:00
Jon Evans
7a7a23c83a
Fix crash when database lib config is not valid
2023-05-07 09:06:37 -04:00
Jeff Young
8fe02ee83c
Handle Eagle user-defined attributes.
...
(We map these to text variables.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13798
2023-05-06 21:10:34 +01:00
Jeff Young
b41d446f58
Fix a bunch more issues with sheetpaths and allowExtraText.
...
A sheetpath is required to correctly resolve text variables.
Depending on currentSheet is rife with bugs.
There are many places where we do *not* want to be prepending
field names to the field values, such as netlisting,
building PDF hypertext menus, etc.
Also, Find/Replace needs to work on unresolved text, as
that's what we're going to display (and if replace nuked
your variable references you wouldn't be happy).
2023-05-05 17:23:52 +01:00
Jeff Young
df7d62fdd3
Added a sort-order dropdown to lib-tree filters.
...
Also simplifies the scoring algorithm so that it only
differentiates between exact-match, match-at-start and
any-match. The rest of the position-based matching
stuff is gone, as is the knowledge of the name vs the
keywords vs the description. All that is left to the
provider of the weighted search terms array.
2023-05-01 21:26:43 +01:00
Jon Evans
dc847db19d
Add initial support for database library settings UI
...
For now, just for diagnostic purposes (settings changes are not preserved)
2023-04-29 18:15:00 -04:00
Jeff Young
be657d947c
Import pin-names from LTSPice models.
2023-04-28 12:52:37 +01:00
Jeff Young
9d2824ec5e
Pass correct sheetpath to SCH_SYMBOL().
2023-04-26 17:25:27 +01:00
Jeff Young
dd6e3c0432
Finish two-step rename of ltspice folder.
...
(CLion didn't want to do a capitalization-only change in a
single step.)
2023-04-25 15:27:46 +01:00
Jeff Young
744dec65d7
Add (limited) support for LTSpice DATAFLAGs.
...
Even though we can't evaluate the expressions, we should at
least show the text so users can decide what to do with them.
2023-04-25 15:27:46 +01:00
Jeff Young
69500bfcaa
LTSpice schematic import based on the work of Chetan Shinde.
2023-04-24 13:52:52 +01:00
Seth Hillbrand
7eb728ca12
Don't consider saving SCH_MARKERs
...
These are ephemeral, view-only elements, so don't include them in our
save map
Fixes https://gitlab.com/kicad/code/kicad/issues/11405
2023-04-19 17:00:50 -07:00
Jeff Young
b74d964bff
Handle legacy libraries with escaped symbol names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14057
2023-04-15 17:47:32 +01:00
qu1ck
0c049eccc7
Fix a bunch of compiler warnings
2023-04-11 17:01:30 +00:00
jean-pierre charras
f01e083f7c
fix 2 issues related to SCH_GLOBALLABEL items:
...
- Ensure the first field in m_fields has id = 0 to be seen has hypertext
(it was not the case after reading a .kicad_sch file)
- when converting this item to another label/text, remove this special Field
from the copied field list to the converted label.
2023-04-10 09:58:27 +02:00
Jeff Young
ea59d583d5
ADDED exclude-from-simulation property to text items and textboxes.
2023-04-09 19:03:36 +01:00
Stefan
c2686d881e
add include
2023-04-04 17:31:46 +01:00
Stefan
992f38a6ce
fix used functions
2023-04-04 17:31:46 +01:00
Stefan
34700c00f6
fix error string
2023-04-04 17:31:44 +01:00
Stefan
fb593bd0c0
check Eagle schematic to be in xml format before parsing
2023-04-04 17:30:10 +01:00
Stefan
e6fd70777b
do not allow import of legacy kicad schematic via importer
2023-04-04 13:21:05 +00:00
Wayne Stambaugh
28776f5745
Text attributes object improvements.
...
* Add compare method to COLOR4D object.
* Add unit test to validate COLOR4D comparison method.
* Add missing color test in text attribute comparison method.
* Add unit test for text attribute object.
* Remove unnecessary headers from text attribute header.
* Move text attribute code into separate source file.
2023-03-29 12:53:45 -04:00
Jon Evans
c35cefe1d5
DbLib: Get rid of some GCC warnings
2023-03-26 19:43:33 -04:00
Roberto Fernandez Bautista
fc04f5135f
CADSTAR Sch: TERMATTR may have more than one attribute subnode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13526
2023-03-26 15:54:21 +01:00
Wayne Stambaugh
a0d02fbab1
Make multivector.h header order independent.
...
Attempt to clean up all redundant headers that multivector.h touches.
2023-03-23 13:26:32 -04:00
Jon Evans
dd8b52af93
Be more flexible about extracting booleans from database
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14376
2023-03-22 21:24:24 -04:00
Roberto Fernandez Bautista
3d661585dd
Fix build errors and warnings from CADSTAR
2023-03-16 21:17:40 +01:00
Roberto Fernandez Bautista
9d5672464e
CADSTAR Sch: Apply default text code to fields when none is specified
2023-03-16 21:07:08 +01:00
Roberto Fernandez Bautista
7534c56723
CADSTAR: Improve loading performance (cache symdef name/alternates)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
b70fe88145
CADSTAR Parts: Fix parsing of hidden pins (possible for several pins per net!)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
6ab2112135
ADDED: CADSTAR Parts Libraries (.lib)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
8f83f27336
CADSTAR SCH: Refactor loading of symbols out of loading part info
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
c34207b726
CADSTAR: Remove wxPoint + improve formatting
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
738b36cf7d
CADSTAR csa / cpa ignore Hierarchy
...
This node doesn't have any equivalent in KiCad so for now we ignore it. In future, we could parse it in detail, to obtain the tree-structure of symbols/footprints in a cadstar library
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
e8ead30baf
WIP: CADSTAR Parts now shows up in library tables and is handled correctly (todo: read cadstar header)
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
2da13a9e07
CADSTAR SCH: Separate out saving loaded lib symbols to library
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
7a6b64d371
Special case cadstar libraries when error reporting.
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
e2a4d58e8f
Extract CADSTAR PIN_TYPE and PIN::POSITION into a separate header
2023-03-16 21:07:04 +01:00
Stefan
90b5dba5ac
Altium Importer: add note that Parameter Set import is not yet supported
2023-03-06 02:13:40 +00:00
Alex
bfc3e2d29b
Fix bitmap scaling when reading legacy schematic as well.
2023-03-04 00:11:09 +03:00
Roberto Fernandez Bautista
b03366c9e8
Fix CADSTAR importer memory leaks
...
We were leaking the xml tree when throwing exceptions
2023-02-27 23:57:39 +01:00
Roberto Fernandez Bautista
bcdb979128
CADSTAR SCH: Use screen grid instead of working grid when centering the design
2023-02-26 19:50:18 +01:00
Roberto Fernandez Bautista
698d0b7e92
CADSTAR Sch: Fix loading of graphical arc shapes
...
Correctly load arc shapes as real arcs instead of approximating now that
v7 supports graphical arcs in the schematic.
Also fix calculation of arc geometry for ccw arcs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14101
2023-02-26 19:46:34 +01:00
Stefan
04165b22d1
Altium Schematic Import: add note that blanket's are not yet supported
2023-02-22 23:10:40 +00:00
Mike Williams
5995e0e516
Power Symbols: make value editable, use as netname
...
QA: update tests for editable power symbol values
2023-02-22 18:01:47 +00:00
Mike Williams
dd461d6ad6
Power Symbols: drop requirement for invisible pins
2023-02-22 18:01:47 +00:00
Marek Roszko
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05:00