return _formatCache.value(formatType | ((quint64)messageLabel << 32), QTextCharFormat());
}
-void UiStyle::setCachedFormat(const QTextCharFormat &format, quint32 formatType, quint32 messageLabel) {
+void UiStyle::setCachedFormat(const QTextCharFormat &format, quint32 formatType, quint32 messageLabel) const {
_formatCache[formatType | ((quint64)messageLabel << 32)] = format;
}
-QFontMetricsF *UiStyle::fontMetrics(quint32 ftype, quint32 label) {
+QFontMetricsF *UiStyle::fontMetrics(quint32 ftype, quint32 label) const {
// QFontMetricsF is not assignable, so we need to store pointers :/
quint64 key = ftype | ((quint64)label << 32);
// NOTE: This and the following functions are intimately tied to the values in FormatType. Don't change this
// until you _really_ know what you do!
-QTextCharFormat UiStyle::format(quint32 ftype, quint32 label_) {
+QTextCharFormat UiStyle::format(quint32 ftype, quint32 label_) const {
if(ftype == Invalid)
return QTextCharFormat();
return fmt;
}
-void UiStyle::mergeFormat(QTextCharFormat &fmt, quint32 ftype, quint64 label) {
+void UiStyle::mergeFormat(QTextCharFormat &fmt, quint32 ftype, quint64 label) const {
mergeSubElementFormat(fmt, ftype & 0x00ff, label);
// TODO: allow combinations for mirc formats and colors (each), e.g. setting a special format for "bold and italic"
}
// Merge a subelement format into an existing message format
-void UiStyle::mergeSubElementFormat(QTextCharFormat& fmt, quint32 ftype, quint64 label) {
+void UiStyle::mergeSubElementFormat(QTextCharFormat& fmt, quint32 ftype, quint64 label) const {
quint64 key = ftype | label;
fmt.merge(format(key & Q_UINT64_C(0x0000ffffffffff00))); // label + subelement
fmt.merge(format(key & Q_UINT64_C(0x0000ffffffffffff))); // label + subelement + msgtype
return NetsplitJoinMsg;
case Message::NetsplitQuit:
return NetsplitQuitMsg;
+ case Message::Invite:
+ return InviteMsg;
}
//Q_ASSERT(false); // we need to handle all message types
qWarning() << Q_FUNC_INFO << "Unknown message type:" << msgType;
return _formatCodes.key(ftype);
}
-QList<QTextLayout::FormatRange> UiStyle::toTextLayoutList(const FormatList &formatList, int textLength, quint32 messageLabel) {
+QList<QTextLayout::FormatRange> UiStyle::toTextLayoutList(const FormatList &formatList, int textLength, quint32 messageLabel) const {
QList<QTextLayout::FormatRange> formatRanges;
QTextLayout::FormatRange range;
int i = 0;
t.append(tr("%DN%1%DN (%2 more)").arg(static_cast<QStringList>(users.mid(0, maxNetsplitNicks)).join(", ")).arg(users.count() - maxNetsplitNicks));
}
break;
+ case Message::Invite:
+ //: Invite Message
+ t = tr("%1").arg(txt); break;
default:
t = tr("[%1]").arg(txt);
}
case Message::Notice:
return tr("[%1]").arg(plainSender()); break;
case Message::Action:
- return tr("-*-"); break;
+ return "-*-"; break;
case Message::Nick:
- return tr("<->"); break;
+ return "<->"; break;
case Message::Mode:
- return tr("***"); break;
+ return "***"; break;
case Message::Join:
- return tr("-->"); break;
+ return "-->"; break;
case Message::Part:
- return tr("<--"); break;
+ return "<--"; break;
case Message::Quit:
- return tr("<--"); break;
+ return "<--"; break;
case Message::Kick:
- return tr("<-*"); break;
+ return "<-*"; break;
case Message::Kill:
- return tr("<-x"); break;
+ return "<-x"; break;
case Message::Server:
- return tr("*"); break;
+ return "*"; break;
case Message::Info:
- return tr("*"); break;
+ return "*"; break;
case Message::Error:
- return tr("*"); break;
+ return "*"; break;
case Message::DayChange:
- return tr("-"); break;
+ return "-"; break;
case Message::Topic:
- return tr("*"); break;
+ return "*"; break;
case Message::NetsplitJoin:
- return tr("=>"); break;
+ return "=>"; break;
case Message::NetsplitQuit:
- return tr("<="); break;
+ return "<="; break;
+ case Message::Invite:
+ return "->"; break;
default:
- return tr("%1").arg(plainSender());
+ return QString("%1").arg(plainSender());
}
}