73 Commits

Author SHA1 Message Date
Jeff Young c5f8737d20 Escape double-quotes in JS context.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/23180
2026-02-20 22:07:43 +00:00
Alex Shvartzkop 2141c6e28d Optimize StrNumCmp when loading symbol libs in Debug. 2026-02-20 10:09:30 +03:00
Damjan f23d3df3ca Fix accent (´) being converted to apostrophe in Scintilla text controls 2026-02-08 12:06:59 +00:00
Alex Shvartzkop 06acabad05 Fix eeschema qa. 2026-01-23 12:13:29 +03:00
Alex Shvartzkop 1492814659 Optimize symbol chooser opening slightly. 2026-01-22 23:54:22 +03:00
Mark Roszko 4de94b0776 update {fmt} to 12.1.0 2026-01-14 20:57:29 -05:00
jean-pierre charras 7f9f74e350 Fix compil issues (missing includes) on mingw/msys2 2026-01-01 09:37:48 +01:00
Seth Hillbrand 9b9899979b Stop showing popup for library load errors
Errors are stored to a vector for display after clicking the warning
icon in the toolbar.
2025-12-31 13:15:06 -08:00
Mark Roszko 6da131bdb0 Retire StrPrintf entirely, {fmt} is better than c-isms. 2025-12-04 23:23:38 -05:00
Mark Roszko 36641ca491 Replace another StrPrintf usage, add ReplaceIllegalFileNameChars unit tests 2025-12-04 23:10:13 -05:00
Jeff Young 0f607db232 More complete support for IEC60062 (infix notation).
(I've never seen 'L' used for milli-ohms, but it
claims to be a thing.  In any case, support for unity
'R' and 'F' is good.  And who knows, maybe the guy
digitizing the Apollo schematics has come across 'L'.)
2025-11-25 12:06:58 +00:00
Jeff Young 6ec7845be8 Infix notation for BOM sorting.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21270
2025-11-24 16:04:33 +00:00
Seth Hillbrand 677676f457 Speed up symbol loading
Loading symbols, we need pin counts but we don't need to generate a
bunch of strings to do that.  Provides a fast path for counting number
of pins represented by the stacked pin notation
2025-10-13 16:41:25 -07:00
Wayne Stambaugh 33ead34ea5 Work in progress variant code commit.
Please do not attempt to use this yet as it is a work in progress.  Given
large number of merge conflicts, I pushed this partial commit to save time
rebasing.

All of the user interface is hidden behind the "EnableVariantUI" advanced
configuration flag until variants are ready.
2025-09-26 08:54:08 -04:00
Seth Hillbrand f66cbaf43a ADDED: Stacked pin notation support
Implement bracket notation for stacked pins ([1,2,3], [1-4], [1,3,5-7]).
Automatic net naming proceeds based on the smallest logical pin number
in stacked groups.

Provide explode/reform commands in symbol editor for conversion.
Supports arbitrary ranges including BGA alphanum ranges like
[AA1-AA3,CD14-CD22]

Adds some additional QA and trace logging

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2004
2025-09-07 14:59:51 -07:00
Jeff Young 31c6c28882 Performance optimizations. 2025-06-06 18:25:20 +01:00
Jeff Young 9750f7690c Performance optimizations. 2025-06-05 18:01:44 +01:00
Jeff Young 96fa79cef2 Minor performance optimizations. 2025-06-03 11:41:27 +01:00
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 6ae334a751)
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 e68df8e1d1)
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