Merge pull request #64 from Daenyth/issue-64
Allow `[[Cardname]]` as a synonym for `[card]cardname[/card]`
This commit is contained in:
commit
a4ae1bcd39
1 changed files with 22 additions and 4 deletions
|
@ -103,7 +103,7 @@ void ChatView::appendMessage(QString message, QString sender, UserLevelFlags use
|
||||||
message = message.mid(index);
|
message = message.mid(index);
|
||||||
if (message.isEmpty())
|
if (message.isEmpty())
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (message.startsWith("[card]")) {
|
if (message.startsWith("[card]")) {
|
||||||
message = message.mid(6);
|
message = message.mid(6);
|
||||||
int closeTagIndex = message.indexOf("[/card]");
|
int closeTagIndex = message.indexOf("[/card]");
|
||||||
|
@ -112,12 +112,30 @@ void ChatView::appendMessage(QString message, QString sender, UserLevelFlags use
|
||||||
message.clear();
|
message.clear();
|
||||||
else
|
else
|
||||||
message = message.mid(closeTagIndex + 7);
|
message = message.mid(closeTagIndex + 7);
|
||||||
|
|
||||||
QTextCharFormat tempFormat = messageFormat;
|
QTextCharFormat tempFormat = messageFormat;
|
||||||
tempFormat.setForeground(Qt::blue);
|
tempFormat.setForeground(Qt::blue);
|
||||||
tempFormat.setAnchor(true);
|
tempFormat.setAnchor(true);
|
||||||
tempFormat.setAnchorHref("card://" + cardName);
|
tempFormat.setAnchorHref("card://" + cardName);
|
||||||
|
|
||||||
|
cursor.setCharFormat(tempFormat);
|
||||||
|
cursor.insertText(cardName);
|
||||||
|
cursor.setCharFormat(messageFormat);
|
||||||
|
} else if (message.startsWith("[[")) {
|
||||||
|
message = message.mid(2);
|
||||||
|
int closeTagIndex = message.indexOf("]]");
|
||||||
|
QString cardName = message.left(closeTagIndex);
|
||||||
|
if (closeTagIndex == -1)
|
||||||
|
message.clear();
|
||||||
|
else
|
||||||
|
message = message.mid(closeTagIndex + 2);
|
||||||
|
|
||||||
|
// TODO: Factor out this duplicated code (vs [card] parsing)
|
||||||
|
QTextCharFormat tempFormat = messageFormat;
|
||||||
|
tempFormat.setForeground(Qt::blue);
|
||||||
|
tempFormat.setAnchor(true);
|
||||||
|
tempFormat.setAnchorHref("card://" + cardName);
|
||||||
|
|
||||||
cursor.setCharFormat(tempFormat);
|
cursor.setCharFormat(tempFormat);
|
||||||
cursor.insertText(cardName);
|
cursor.insertText(cardName);
|
||||||
cursor.setCharFormat(messageFormat);
|
cursor.setCharFormat(messageFormat);
|
||||||
|
@ -129,7 +147,7 @@ void ChatView::appendMessage(QString message, QString sender, UserLevelFlags use
|
||||||
message.clear();
|
message.clear();
|
||||||
else
|
else
|
||||||
message = message.mid(closeTagIndex + 6);
|
message = message.mid(closeTagIndex + 6);
|
||||||
|
|
||||||
if (!url.contains("://"))
|
if (!url.contains("://"))
|
||||||
url.prepend("http://");
|
url.prepend("http://");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue