summaryrefslogtreecommitdiff
path: root/plugins/NewStory
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2024-09-16 18:34:21 +0300
committerGeorge Hazan <george.hazan@gmail.com>2024-09-16 18:34:21 +0300
commit43adc502df6cac22b8857b57b85eab63d8fd4b99 (patch)
tree707a889f589d7e747a242fcae536ac62777cb687 /plugins/NewStory
parentb059dd52f5aa48b108eb33874194ab96e40785dc (diff)
NS: added parsing of [color=] BBCode
Diffstat (limited to 'plugins/NewStory')
-rw-r--r--plugins/NewStory/src/templates.cpp14
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;