summaryrefslogtreecommitdiff
path: root/src/bbcode.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2014-11-11 21:42:18 +0100
committerTannin <devnull@localhost>2014-11-11 21:42:18 +0100
commit9494938534e3dc251cd1d462bb5b40b8d98103ef (patch)
tree6fe937eab4886dc17c7b9e7d44f7d778c27f72a8 /src/bbcode.cpp
parent7c1273b246117740dd17fb70ad712346421224d7 (diff)
parent9ab7bada1c81eb82d97df23da64a56a0eba0bf42 (diff)
Merge
Diffstat (limited to 'src/bbcode.cpp')
-rw-r--r--src/bbcode.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/bbcode.cpp b/src/bbcode.cpp
index 92eb427f..2e22859d 100644
--- a/src/bbcode.cpp
+++ b/src/bbcode.cpp
@@ -80,11 +80,15 @@ public:
if (tagName == "color") {
QString color = tagIter->second.first.cap(1);
QString content = tagIter->second.first.cap(2);
- auto colIter = m_ColorMap.find(color.toLower());
- if (colIter != m_ColorMap.end()) {
- color = colIter->second;
+ if (color.at(0) == "#") {
+ return temp.replace(tagIter->second.first, QString("<font style=\"color: %1;\">%2</font>").arg(color, content));
+ } else {
+ auto colIter = m_ColorMap.find(color.toLower());
+ if (colIter != m_ColorMap.end()) {
+ color = colIter->second;
+ }
+ return temp.replace(tagIter->second.first, QString("<font style=\"color: #%1;\">%2</font>").arg(color, content));
}
- return temp.replace(tagIter->second.first, QString("<font style=\"color: #%1;\">%2</font>").arg(color, content));
} else {
qWarning("don't know how to deal with tag %s", qPrintable(tagName));
}
@@ -131,7 +135,7 @@ private:
m_TagMap["color="] = std::make_pair(QRegExp("\\[color=([^\\]]*)\\](.*)\\[/color\\]"),
"");
m_TagMap["font="] = std::make_pair(QRegExp("\\[font=([^\\]]*)\\](.*)\\[/font\\]"),
- "<font face=\\1>\\2</font>");
+ "<font style=\"font-family: \\1;\">\\2</font>");
m_TagMap["center"] = std::make_pair(QRegExp("\\[center\\](.*)\\[/center\\]"),
"<div align=\"center\">\\1</div>");
m_TagMap["quote"] = std::make_pair(QRegExp("\\[quote\\](.*)\\[/quote\\]"),
@@ -231,7 +235,6 @@ QString convertToHTML(const QString &inputParam)
QString input = inputParam.mid(0).replace("\r\n", "<br/>");
input.replace("\\\"", "\"").replace("\\'", "'");
-
QString result;
int lastBlock = 0;
int pos = 0;