27 Commits

Author SHA1 Message Date
Jeff Young
7e5fedef6a Markup fixes.
1) allow escape sequences inside markup sequences
2) keep overbar when inside nested markup
3) always place overbar at full height, not sub/superscript height

Fixes https://gitlab.com/kicad/code/kicad/issues/14553

Fixes https://gitlab.com/kicad/code/kicad/issues/13449
2023-04-17 17:56:54 +01: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
jean-pierre charras
412368b7f9 PDF plotter: encode the letters ( and ) in strings with context CTX_JS_STR
They are separators and cannot be used in user strings.
Fixes #14302
https://gitlab.com/kicad/code/kicad/issues/14302
2023-03-15 09:31:49 +01:00
Marek Roszko
b2421c7d9f Fix tiny bug in double 2 string formatting
- I forgot to handle the trailing dots when I added the fmt variant
- UIDouble2Str (the original) lacked the comma check
- Add unit test lol
2023-01-21 13:54:52 -05:00
Chris Morgan
2b128c79f2 sprintf -> snprintf to silence some compiler warnings 2023-01-21 18:39:51 +00:00
Jeff Young
76ce580bd0 Don't use KiCad escape sequences for JS text.
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 15:21:38 +00:00
Jeff Young
be142af4d0 Another attempt at string encoding for JS inside a PDF.
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 14:34:54 +00:00
jean-pierre charras
9dba54190e PDF plotter: Encode '\' as "{backslash}" for CTX_JS_STR context.
This is a poor hack (similar to hack for the ' char), but it allows displaying
context menu when '\' is inserted in a property.
2022-11-04 07:31:23 +01:00
Marek Roszko
ece23d434b Split up Double2Str to a format function to make its use case clear 2022-09-17 00:10:22 -04:00
Mark Roszko
75ae0d8e5e Revert "Use {fmt} for double -> string conversions"
This reverts commit 03fff6e58dcff3e6027fca12a38390238b42a851
2022-09-14 10:56:50 +00:00
Marek Roszko
03fff6e58d Use {fmt} for double -> string conversions
Faster at printing floats than sprintf due to the modern algos
2022-09-13 23:17:15 -04:00
Jeff Young
d95847ae79 Add missing format specifier to UnescapeString.
Fixes https://gitlab.com/kicad/code/kicad/issues/9542
2022-09-12 01:48:23 +01:00
Jon Evans
b4e71de89f LIB_IDs can have forward slashes 2022-09-11 10:11:25 -04:00
Jeff Young
8afc1db7a6 Property popups for symbols, labels, sheets, and footprints in PDF.
Fixes https://gitlab.com/kicad/code/kicad/issues/5521
2022-09-06 13:59:52 +01:00
Jeff Young
71724bea0c Remove curly brace from string encoding.
It causes issues with formatting constructs and text variable refs,
and it's not a reserved character even in filenames.

Fixes https://gitlab.com/kicad/code/kicad/issues/12351
2022-09-04 10:34:32 +01:00
Marek Roszko
e4ba1d4879 Remove unused string helper 2022-08-15 19:12:45 -04:00
Jeff Young
582c133835 CSV escaping. 2022-07-24 23:41:41 +01:00
Jeff Young
3fddf0414b A bit of wxT(). 2022-03-11 20:52:11 +00:00
Jeff Young
a9eb7a0e28 Make sure LIB_ID escape context allows for formatting constructs.
Also make sure that value field is updated from name changes when the
symbol is a power symbol (even if it's from the schematic instead of
the library).

Fixes https://gitlab.com/kicad/code/kicad/issues/11093
2022-03-10 13:46:42 +00:00
Marek Roszko
2df80c6473 Add some more reserves for string funcs 2022-03-08 20:07:55 -05:00
Marek Roszko
ca5049b6bc Try and reduce memory allocs when (un)escaping strings 2022-03-08 19:36:08 -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
dsa-t
bc1ff6756f Cross-probing/selection for multiple items (SCH->PCB) 2022-01-16 20:29:03 +00:00
Jon Evans
0458afe20a Fix escaping of double quotes in LIB_IDs 2021-09-28 20:38:36 -04:00
Jeff Young
59c15842f8 Exclude formatting chars from text width approximation.
Fixes https://gitlab.com/kicad/code/kicad/issues/9080
2021-09-04 22:09:32 +01:00
jean-pierre charras
4ac2aa675a lib symbols: make fp filter tolerant to spaces in names.
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 #9009
https://gitlab.com/kicad/code/kicad/issues/9009
2021-08-23 18:01:31 +02:00
Jeff Young
6aaf4413b3 Fix kicad_string.h / string.cpp mismatch.
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.
2021-07-29 16:03:25 +01:00