55 Commits

Author SHA1 Message Date
Alex Shvartzkop
d59ffdcaa3 Use ToCDouble in ValueStringCompare. 2025-05-16 04:09:43 +03:00
wh201906
6d2b728fb1 Exclude brackets at the end of a URL in LinkifyHTML()
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/20347
2025-04-15 09:37:23 -07:00
Jeff Young
159302063a Move board characteristics and stackup to PCB_TABLEs. 2025-04-12 20:41:01 +01:00
Jeff Young
072d8d55fe ADDED: support naked hyperlinks in tablecells and textboxes.
Also fix flickering due to IS_ROLLOVER flag getting
nuked.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18832
2025-02-19 23:43:53 +00:00
Wayne Stambaugh
e09b095533 Common folder housekeeping part 3. 2025-01-16 11:50:08 -05:00
Seth Hillbrand
0b2d4d4879 Revise Copyright statement to align with TLF
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo.  Avoids needing to
repeatly update.

Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08:00
Wayne Stambaugh
6cc5d89838 Another attempt to fix Windows file URLs for PDF links.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14250
2024-11-10 10:13:56 -05:00
Wayne Stambaugh
930407fac8 Fix PDF plotter URI issues.
Add 'file:' URI JavaScript handlers.

Properly convert Windows file paths to valid URI syntax.

Use expanded variables for URI menu names.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14250
2024-11-04 20:05:42 -05:00
Alex Shvartzkop
19af37a143 Fix/improve HTML unescape function.
Also adds some tests.

(cherry picked from commit 6ae334a7517f41498f395004444b8fbb5423ce17)
2024-10-30 08:24:43 +03:00
jean-pierre charras
82ff2c0e0f eeschema, DIALOG_SHEET_PROPERTIES: add test for valid sheet filename
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18981
2024-10-25 11:44:29 +02:00
Wayne Stambaugh
aace2271df Add '?' to list of forbidden file name characters. 2024-08-11 07:09:28 -04:00
jean-pierre charras
ffe6abb836 string_utils.cpp: add missing char * in illegalFileNameChars list. 2024-08-11 09:33:12 +02:00
Jeff Young
513e68a04a Trim punctuation from end of URLs. 2024-05-27 17:06:09 +01:00
Jeff Young
17308e821f Formatting. 2024-05-25 12:05:13 +01:00
Jeff Young
26fe4c05e1 CmpNoCase() returns 0 for a match (which evals to false as a bool).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18087
2024-05-25 12:05:13 +01:00
Alex Shvartzkop
cb25c8620e Performance optimizations for database libraries.
(cherry picked from commit e68df8e1d1261547fe14222386e518a2b77282d5)
2024-02-23 20:29:18 +03:00
Jeff Young
196e05bc51 Borrow parts of simulator's separator-detection algorithm.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15248
2023-11-20 13:47:24 +00:00
Alex Shvartzkop
f48a248db4 EasyEDA Std: Handle HTML escape characters in text. 2023-10-31 02:21:32 +03:00
Alex Shvartzkop
9ed19192de Improve editing values with {return} in text fields; Add hyperlink detection. 2023-10-15 01:45:39 +03:00
Marek Roszko
11de95778b Unwrap the FROM_UTF8 macro in favor of direct function
The extern just gets annoying to try to export the func later. We also yeet TO_UTF8 to string_utils.h for parity.
2023-09-09 00:10:57 -04:00
Alex Shvartzkop
21ee65aa9c ADDED: Importers for EasyEDA (JLCEDA) Standard / Professional. 2023-09-07 11:02:40 +03:00
jean-pierre charras
df11673f86 GetISO8601CurrentDateTime(): use %z format on msys2 build ucrt64
(however ucrt64 on msys2 has an issue (crash) with json validator and
can be used only for tests)
2023-07-18 11:23:09 +02:00
jean-pierre charras
0741471092 GetISO8601CurrentDateTime(): workaround on msys2 to fix a format issue.
on msys2 the format %z is seen as %Z, which is not acceptable here.
so %z format is removed on msys2
2023-07-16 09:31:28 +02:00
jean-pierre charras
0ecf5033e2 string_utils: Add From_UTF8( const char* cstring ) and From_UTF8( const std::string aString ),
mainly because we now use std::string in a lot of function using previously char*
FROM_UTF8(const char* cstring) now calls From_UTF8(const char* cstring)
2023-07-16 08:21:43 +02:00
Marek Roszko
76cef27014 Remove needless utf8 conversion due to sleepyness 2023-07-15 13:34:34 -04:00
Marek Roszko
3233bbe0ba Make exported date time strings use ISO8601 format
Also rename the function to be explicit on its result format

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15185
2023-07-14 23:24:12 -04:00
Alex Shvartzkop
afe176abe2 Optimize PDF plot data size for property popups; fix unicode escape.
Adds a document-level action JSInit, which defines ShM function,
allowing more compact data representation. Also reduces whitespaces.
2023-07-04 08:57:29 +03:00
jean-pierre charras
1406341d2d Fix a few doxygen errors (no actual code change) 2023-04-19 16:20:24 +02:00
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