The tests for file existence and write status perform two file stats
which cause performance issues on slow network shares. Now the file
state is determined at load time and stored in the SCH_SCREEN object
so file access is no longer required.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9343
Escaping the document file (.dcm) alias names breaks the link between the
document file and the library (.lib) file. This causes the information in
the document file to be lost.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9130
- Update sch text help (~~ no longer gets converted to single ~)
- Update Eagle importer to correctly handle new overbar syntax
- Update CADSTAR importer to correctly handle new overbar syntax
For historical reasons they are stored in a string using spaces as separators.
So each fp filter is now escaped to remove spaces (replaced by {space})
Fixes#9009https://gitlab.com/kicad/code/kicad/issues/9009
This has actually been there since dot, but the old escaping method
just deleted chars it didn't like so you could run it as many times
as you wanted.
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8844 (power port text positioning, only use 0, 90deg for text)
Adjust text justification due to rotation on import
Set field position through SCH_FIELD::SetPosition
Honor hidden net names at power ports
Calculate start/end points for imported arcs in symbols
Found via `codespell -q 3 -S *.po,./thirdparty -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,dout,einstance,modul,ot,overide,serie,te,,tesselate,tesselator,tht`
1) Fix a couple of bugs in case processing
2) Make case processing more explicit to prevent more (1)
3) Move label processing to AltiumSpecialStringsToKiCadVariables
4) Strip double-quotes from special strings (and add test cases)
5) Change PROJECTNAME to just filename, not full path
6) PROJECTREV and REVISION are two different things
7) Add support for Altium's Application_BuildNumber
8) Fix some issues in trimming spaces around special strings
ADDED CURRENT_DATE titleblock token (to go with existing ISSUE_DATE)
ADDED PROJECTNAME schematic token (to go with FILENAME and SHEETNAME)
Converts other parameters to project text variables.
Note that there's still a bunch of stuff we don't support regarding
textframes such as wordwrap and background colours, but this at least
keeps the text from getting lost.
Fixes https://gitlab.com/kicad/code/kicad/issues/8741
Also fixes a bug where an empty window would get left when loading
a file from the KiCad manager window errored out.
Also fixes a bug where we were getting the wrong exception because
we were rethrowing the type-casted one (rather than just calling
throw).
Fixes https://gitlab.com/kicad/code/kicad/issues/8604
It's tempting to say that we don't need to exclude filename chars
from symbols, but we might regret that decision down the road. Better
to just escape them.
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
wxString::Format is redundant in a wxLogXXX call.
Error messages should generally be translatable.
Error messages should use generally consistent sentence forms.
You probably do want it in VALUE, but not REFERENCE, and certainly
not FOOTPRINT or DATASHEET. User fields are more likely to be
part numbers, etc. (and don't want conversion).
Fixes https://gitlab.com/kicad/code/kicad/issues/8617
1) Make sure we set an absolute path on the sheet.
2) Don't mix RTree iterators; wires get skipped between buses.
3) Implement a real ERC error so we don't assert.
Fixes https://gitlab.com/kicad/code/kicad/issues/7042
Simplify logic by adding quadrant-based BUS_ENTRY ctor.
Fix issue with bus entry size having been in mils rather than IU.
Fix issues with logic.
Fixes https://gitlab.com/kicad/code/kicad/issues/7042
The same logic block to resolve possible symlinks exists in 5 different
places now. This change moves this duplicated code to a static member
function of WX_FILENAME instead.
Use `realpath(3)` instead of `readlink(3)`, which offers support for
relative and absolute symlinks alike, since all symbolic links will be
resolved to the absolute path of the linked-to file.
Fixes#8082
This was leaking windows headers and partial wx headers to 1084 compilation units......
This also means math/util.h is leaking to 1084 compilation units which seems a bit high too.
In CADSTAR pins are single points. We can replicate the original look
of the schematic in most cases by searching the symbol for straight
segments that are coincident with the pin and use those to calculate
a suitable pin length and angle.