diff options
author | George Hazan <george.hazan@gmail.com> | 2024-09-16 18:34:21 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2024-09-16 18:34:21 +0300 |
commit | 43adc502df6cac22b8857b57b85eab63d8fd4b99 (patch) | |
tree | 707a889f589d7e747a242fcae536ac62777cb687 /plugins/NewStory | |
parent | b059dd52f5aa48b108eb33874194ab96e40785dc (diff) |
NS: added parsing of [color=] BBCode
Diffstat (limited to 'plugins/NewStory')
-rw-r--r-- | plugins/NewStory/src/templates.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/plugins/NewStory/src/templates.cpp b/plugins/NewStory/src/templates.cpp index 7c3e091057..7707e742b0 100644 --- a/plugins/NewStory/src/templates.cpp +++ b/plugins/NewStory/src/templates.cpp @@ -189,6 +189,20 @@ static void AppendString(CMStringW &buf, const wchar_t *p, ItemData *pItem) }
else p--;
}
+ else if (!wcsncmp(p, L"color=", 6)) {
+ p += 6;
+
+ if (auto *p1 = wcschr(p, ']')) {
+ CMStringW wszColor(p, int(p1 - p));
+ buf.AppendFormat(L"<font color=#%06X>", color2html(wcstoul(wszColor, 0, 16)));
+ p = p1;
+ }
+ else p--;
+ }
+ else if (!wcsncmp(p, L"color]", 6)) {
+ p += 5;
+ buf.AppendFormat(L"</font>");
+ }
else if (!wcsncmp(p, L"code]", 5)) {
p += 5;
|