+ auto addRow = [&](const QString& key, const QString& value, bool condition = true) {
+ if (condition)
+ {
+ tooltip << "<tr><td class='bold' align='right'>" << key << "</td><td>" << value << "</td></tr>";
+ }
+ };
+
+ tooltip << "<table cellspacing='5' cellpadding='0'>";
+ if (_ircUser->isAway()) {
+ QString awayMessage(tr("(unknown)"));
+ if(!_ircUser->awayMessage().isEmpty()) {
+ awayMessage = _ircUser->awayMessage();
+ }
+ addRow(tr("Away Message"), awayMessage);
+ }
+ addRow(tr("Realname"), _ircUser->realName(), !_ircUser->realName().isEmpty());
+ addRow(tr("Operator"), _ircUser->ircOperator(), !_ircUser->ircOperator().isEmpty());
+ addRow(tr("Suser Host"), _ircUser->suserHost(),!_ircUser->suserHost().isEmpty());
+ addRow(tr("Whois Service Reply"), _ircUser->whoisServiceReply(), !_ircUser->whoisServiceReply().isEmpty());
+ addRow(tr("Hostmask"), _ircUser->hostmask().remove(0, _ircUser->hostmask().indexOf("!")+1));
+ addRow(tr("Operator"), _ircUser->ircOperator(), !_ircUser->ircOperator().isEmpty());