Jeff Young
e8a543f1ea
Colors for text in PL_Editor and Eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1952
2022-03-31 19:43:56 +01:00
Jeff Young
47f4503564
SCH textboxes start/end -> at/size.
...
The at token can handle an angle; start/end does not.
Fixes https://gitlab.com/kicad/code/kicad/issues/11252
2022-03-28 11:16:39 +01:00
jean-pierre charras
cfe0003ca4
Eeschema: fix misplaced nullptr test that prevent saving SCH_TEXT items.
...
Fixes #11250
https://gitlab.com/kicad/code/kicad/issues/11250
2022-03-27 18:48:55 +02:00
jean-pierre charras
38bd612c01
sch_sexpr_parser.cpp: allows reading a polyline descr with more than 2 points
...
In symbols, a polyline descr is already a true polyline / polygon descr.
In schematic, a polyline descr was restricted to only 2 points (a line).
A true polyline / polygon descr is now allowed in schematic that support already
polygons.
For compatibility reason, a 2 points polygon (SCH_SHAPE) is converted to a SCH_LINE.
2022-03-27 10:31:21 +02:00
Wayne Stambaugh
7da7864f5e
Fix some Coverity issues.
2022-03-25 15:51:05 -04:00
Jeff Young
8eb10c41d8
Name any unnamed fields so they don't clobber each other.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10039
2022-03-22 18:08:05 +00:00
jean-pierre charras
21144481d2
PLOTTER: do not clamp coordinates to an arbitrary value.
...
Previously, coordinates were clamped to +- 60 inches. It makes no sense to
clamp them at plotter level: max cooed depends on the editor (schematic/board...)
Rename MAX_PAGE_SIZE_MILS to MAX_PAGE_SIZE_EESCHEMA_MILS and use it only for Eeschema.
Fixes #11196
https://gitlab.com/kicad/code/kicad/issues/11196
2022-03-22 10:32:36 +01:00
Jeff Young
4f62960334
Update message panel from PCB point editor and SCH drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11186
2022-03-21 10:32:36 +00:00
jean-pierre charras
1f5ec30566
Fix and issue about 180 deg arcs in symbols from "old" libraries.
...
Can be seen with lib version 20201005, not with latest version.
The fix is similar to commit 8a17fb8d
, but for arcs defined by start, end, angles
(modify 180 deg arcs)
Fixes #11130
https://gitlab.com/kicad/code/kicad/issues/11130
2022-03-15 11:31:58 +01:00
Wayne Stambaugh
dd1dbb81f6
Improve shared schematic file churn heuristics.
...
The previous solution cleared all of the fields and force the unit setting
to unit one which would have less than desirable effects when reusing a
schematic in another project. This solution forces all of the instance
settings to the first sheet instance of the current project to prevent file
change churn when changing shared sheets in the current project.
This will not prevent shared schematic file changes when the first sheet
instance data differs between projects.
2022-03-11 12:37:30 -05:00
Wayne Stambaugh
bf5d585e24
Reduce shared schematic file change churn.
2022-03-11 00:32:34 +00:00
Seth Hillbrand
cd7141fd10
Cache read arc data for stability
...
Arcs can be altered by the process of changing from on-disk
representation to in-memory representation. Saving back to disk without
modifying the arc should not modify the calculated values.
This stores a copy of the on-disk representation that is only used to
save back to disk in the event that the arc is not modified during
editing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10442
2022-03-04 15:20:31 -08:00
Jeff Young
c025b4c73d
Save all stroke parameters of sch & lib shapes.
...
We were failing to save the line style, which caused ERC errors when
DEFAULT != SOLID.
2022-03-03 14:37:04 +00:00
Seth Hillbrand
8c36ba3653
Explicitly give unit values
...
Removes the ability to hide symbol units in file formats. This was
mostly the case for a while but there remained corner cases where we
left a default/hidden option
Fixes https://gitlab.com/kicad/code/kicad/issues/10888
2022-03-02 16:01:08 -08:00
Steffen Mauch
78620347c8
Fixing Eagle refs that do not work with KiCad
...
KiCad has stricter requirements for what consititutes an annotated
symbol. This checks for and corrects annotations that begin with '#',
do not begin with a non-numeric character or do not end with a number
2022-02-25 23:42:47 +00:00
Thomas Pointhuber
8ef7252330
altium: Don't use string concatenation for paths pointing in the compound file
...
* std::vector do not need to be split apart again
* supports backslash in footprint names
2022-02-19 16:46:20 +01:00
Jeff Young
bc7742cb2e
Various text object defaults don't necessarily match file defaults.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10862
2022-02-15 23:25:59 +00:00
Jeff Young
940e03e567
Remove arc end swapping when parsing.
...
See: 2366b06e77 (note_839061664)
2022-02-11 13:10:52 +00:00
Jeff Young
2366b06e77
Don't parse multiple items in a single c'tor or function call.
...
The C++ optimizer is not always your friend and may do them in the
reverse order.
2022-02-10 17:54:13 +00:00
Jeff Young
d33d092e8e
Add a second fix for backwards arcs.
...
This one *should* also be good when we support larger-than-180
degree arcs.
2022-02-10 15:46:02 +00:00
Jeff Young
cb8e803788
Formatting.
2022-02-10 13:04:29 +00:00
jean-pierre charras
b9843a23eb
Eeschema, legacy *lib files: fix issues with 180 deg arcs.
...
180 deg arcs are a limit, so when importing them convert them to slightly
smaller arc (arc angle = 179.5 deg)
Fixes #10455
https://gitlab.com/kicad/code/kicad/issues/10455
2022-02-10 12:45:54 +01:00
Wayne Stambaugh
3f8f90db9f
Factor out common s-expression library cache source code.
2022-02-09 11:20:14 -05:00
Wayne Stambaugh
7181f0b40b
Fix clang broken build.
2022-02-09 07:55:50 -05:00
Wayne Stambaugh
fe82f2dd40
Factor out common schematic s-expression source code.
2022-02-08 14:44:38 -05:00
Wayne Stambaugh
fc3cad0b54
Hash symbol libraries per library rather than statically per cache type.
2022-02-07 15:40:21 -05:00
Jeff Young
b57ac3d517
Handle SCH_TEXTBOX in SCH_SEXPR_PLUGIN::Format.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10771
2022-02-06 19:43:25 +00:00
Marek Roszko
d9c04da407
Sprinkle in some make_unique
2022-02-05 21:26:36 -05:00
Marek Roszko
ca7840334c
Mark some limits as constexpr
...
gcc doesn't need it and computes during compile regardless, but experimenting in godbolt, both clang and MSVC actually do need it or else it's partially computed at runtime
2022-02-04 07:50:13 -05:00
Marek Roszko
fa1d316d84
Fix windows build error
2022-02-02 17:43:47 -05:00
Wayne Stambaugh
e590d07224
Fix clang build error.
2022-02-02 07:44:11 -05:00
Wayne Stambaugh
9260431fe4
Abstract out symbol library parser object.
2022-02-02 07:07:39 -05:00
Wayne Stambaugh
6fcc6f7c9d
Factor out common legacy schematic and symbol library parser code.
2022-02-01 16:30:15 -05:00
Jeff Young
f3cd36d1d7
Bring EEschema textboxes in line with PCBNew's.
...
Also adds Border checkboxes and fixes a bunch of bugs.
2022-01-31 21:46:40 +00:00
Wayne Stambaugh
b36e31c49f
Factor out common and remove dead legacy symbol library code.
2022-01-29 14:13:00 -05:00
Jeff Young
c6a8100d46
Schematic and symbol text boxes.
...
Also fixes some plot bugs with arcs.
Also moves polygonization of arcs (when required) in plotting code
from 5 degrees to calculated based on ARC_HIGH_DEF.
Fixes https://gitlab.com/kicad/code/kicad/issues/5017
2022-01-28 21:38:15 +00:00
Jeff Young
3409783d9f
Break sch_text.h/.cpp into sch_text and sch_label.
...
Also moves SCH_NETCLASS_FLAG to SCH_DIRECTIVE_LABEL, and remaps Altium
harnesses from SCH_TEXT to SCH_DIRECTIVE_LABEL.
2022-01-28 21:38:15 +00:00
Franck
a6203617d9
Fix Altium schematic port component import assertion.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10322
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10401
2022-01-28 15:52:30 +00:00
jean-pierre charras
8a17fb8d19
SCH_SEXPR_PARSER::parseArc(): fix a very annoying issue: each time the lib or
...
sch files are saved and reopened, 180 deg arcs were flipped.
This fix is a workaround, but avoid flipped arcs after saving/reopening these files.
2022-01-26 18:19:52 +01:00
jean-pierre charras
694ae59664
fix a minor compil warning (shadowed vars)
2022-01-21 14:09:42 +01:00
Jeff Young
c8a50d9b50
Remove unit-less angles from VECTOR2I/D APIs.
2022-01-20 23:58:20 +00:00
Jeff Young
3ba89f50ef
Maybe, just maybe, fix LibEdit arc parsing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-19 22:22:18 +00:00
Jeff Young
8445783216
Fix backwards arcs in legacy LIB_ARCs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-18 14:08:47 +00:00
Jeff Young
de31b813f3
Angle cleanup in the Cadstar importer.
2022-01-18 02:31:37 +00:00
Jeff Young
622f94e7b9
Angle cleanup in Altium importer.
2022-01-18 02:31:37 +00:00
Jeff Young
0218b782f4
Angle cleanup in Eagle importer.
2022-01-18 02:31:37 +00:00
Thomas Pointhuber
0129e49b79
altium: Introduce new ALTIUM_COMPOUND_FILE object to handle file opening and searching for streams at a central place
2022-01-17 19:54:26 +01:00
Jeff Young
e61144d45a
Finish with EDA_ANGLE.
2022-01-16 21:15:40 +00:00
Jeff Young
e84c574830
Some more EDA_ANGLE cleanup.
2022-01-16 19:16:18 +00:00
jean-pierre charras
516d038bdf
Eeschema: fix incorrect stored rotation value in file of the global and hierarch. labels.
...
The stored value was the rotation of the text (always 0 or 90 deg), but these labels can also
be rotated by -90 or 180 deg
Fixes #10450
https://gitlab.com/kicad/code/kicad/issues/10450
Fixes #10457
https://gitlab.com/kicad/code/kicad/issues/10457
2022-01-16 17:19:36 +01:00