11#include "libcockatrice/protocol/pb/serverinfo_user.pb.h"
20#include <QTextBrowser>
21#include <QTextCharFormat>
23#include <QTextFragment>
27#include <qtmetamacros.h>
38template <
typename Enum>
class QFlags;
93 void appendCardTag(QTextCursor &cursor,
const QString &cardName);
100 void checkTag(QTextCursor &cursor, QString &message);
101 void checkMention(QTextCursor &cursor, QString &message,
const QString &userName, UserLevelFlags userLevel);
102 void checkWord(QTextCursor &cursor, QString &message);
123 appendHtmlServerMessage(
const QString &html,
bool optionalIsBold =
false, QString optionalFontColor = QString());
125 RoomMessageTypeFlags messageType = {},
127 bool playerBold =
false);
Definition abstract_game.h:23
void appendCardTag(QTextCursor &cursor, const QString &cardName)
Definition chat_view.cpp:207
bool showTimestamps
Definition chat_view.h:81
bool evenNumber
Definition chat_view.h:80
HoveredItemType
Definition chat_view.h:64
@ HoveredNothing
Definition chat_view.h:65
@ HoveredUrl
Definition chat_view.h:66
@ HoveredCard
Definition chat_view.h:67
@ HoveredUser
Definition chat_view.h:68
ChatView(TabSupervisor *_tabSupervisor, AbstractGame *_game, bool _showTimestamps, QWidget *parent=nullptr)
Definition chat_view.cpp:57
void showSystemPopup(const QString &userName)
Definition chat_view.cpp:665
void checkWord(QTextCursor &cursor, QString &message)
Definition chat_view.cpp:577
void mousePressEvent(QMouseEvent *event) override
Definition chat_view.cpp:790
void scrollToBottom()
Definition chat_view.cpp:441
QList< ChatLogEntry > chatHistory
Definition chat_view.h:87
AbstractGame *const game
Definition chat_view.h:60
void onScrollBarValueChanged(int value)
Definition chat_view.cpp:457
QTextFragment getFragmentUnderMouse(const QPoint &pos) const
Definition chat_view.cpp:747
HoveredItemType hoveredItemType
Definition chat_view.h:83
QString ownUserName
Definition chat_view.h:73
bool stickToBottom
Definition chat_view.h:82
QAction * messageClicked
Definition chat_view.h:85
QString mention
Definition chat_view.h:74
void openMessageDialog(const QString &userName, bool focus)
void mouseReleaseEvent(QMouseEvent *event) override
Definition chat_view.cpp:829
void appendMessage(QString message, RoomMessageTypeFlags messageType={}, const ServerInfo_User &userInfo={}, bool playerBold=false)
Definition chat_view.cpp:292
void addMentionTag(QString mentionTag)
static QColor getCustomHighlightColor()
Definition chat_view.cpp:684
void showMentionPopup(const QString &userName)
QTextCursor prepareBlock(bool same=false)
Definition chat_view.cpp:143
QString getRecentChatLog(int maxMessages=50) const
Definition chat_view.cpp:703
TabSupervisor *const tabSupervisor
Definition chat_view.h:59
QString extractNextWord(QString &message, QString &rest)
Definition chat_view.cpp:624
UserContextMenu * userContextMenu
Definition chat_view.h:71
void retranslateUi()
Definition chat_view.cpp:138
void onScrollBarRangeChanged()
Definition chat_view.cpp:450
static QColor getCustomMentionColor()
Definition chat_view.cpp:673
QTextCharFormat mentionFormat
Definition chat_view.h:75
bool isModeratorSendingGlobal(QFlags< ServerInfo_User::UserLevelFlag > userLevelFlag, QString message)
Definition chat_view.cpp:649
virtual void appendHtmlServerMessage(const QString &html, bool optionalIsBold=false, QString optionalFontColor=QString())
Definition chat_view.cpp:184
void enterEvent(QEnterEvent *event) override
Definition chat_view.cpp:737
void appendGameLinkTag(QTextCursor &cursor, const QString &url)
Definition chat_view.cpp:252
void cockatriceLinkActivated(const QString &url)
void clearChat()
Definition chat_view.cpp:695
QTextCharFormat mentionFormatOtherUser
Definition chat_view.h:77
void adjustColorsToPalette()
Definition chat_view.cpp:88
void mouseMoveEvent(QMouseEvent *event) override
Definition chat_view.cpp:761
QStringList highlightedWords
Definition chat_view.h:79
const UserListProxy *const userListProxy
Definition chat_view.h:70
void deleteCardInfoPopup(QString cardName)
QColor unresolvedCardTagColor
Definition chat_view.h:108
static constexpr int MAX_CHAT_HISTORY
Definition chat_view.h:88
QMap< QString, QVector< UserMessagePosition > > userMessagePositions
Definition chat_view.h:86
void showCardInfoPopup(const QPoint &pos, const CardRef &cardRef)
QColor linkColor
Definition chat_view.h:107
QColor otherUserColor
Definition chat_view.h:105
void redactMessages(const QString &userName, int amount)
Definition chat_view.cpp:715
void cardNameHovered(QString cardName)
QString hoveredContent
Definition chat_view.h:84
virtual QString getCurrentTime() const
Definition chat_view.cpp:202
void leaveEvent(QEvent *event) override
Definition chat_view.cpp:742
void checkMention(QTextCursor &cursor, QString &message, const QString &userName, UserLevelFlags userLevel)
Definition chat_view.cpp:512
void messageClickedSignal()
void checkTag(QTextCursor &cursor, QString &message)
Definition chat_view.cpp:464
void refreshBlockColors()
Definition chat_view.cpp:105
QString lastSender
Definition chat_view.h:72
void openLink(const QUrl &link)
Definition chat_view.cpp:838
QTextCharFormat defaultFormat
Definition chat_view.h:78
void appendUrlTag(QTextCursor &cursor, QString url)
Definition chat_view.cpp:233
void actMessageClicked()
Definition chat_view.cpp:660
QTextCharFormat highlightFormat
Definition chat_view.h:76
void appendHtml(const QString &html)
Definition chat_view.cpp:175
QColor serverMessageColor
Definition chat_view.h:106
Definition chat_view.h:38
Definition remote_connection_controller.h:20
Definition tab_supervisor.h:92
Definition user_list_proxy.h:19
int relativePosition
Definition chat_view.h:44
UserMessagePosition(QTextCursor &cursor)
Definition chat_view.cpp:51
QTextBlock block
Definition chat_view.h:45
Definition chat_view.h:49
QDateTime timestamp
Definition chat_view.h:52
QString message
Definition chat_view.h:51
QString userName
Definition chat_view.h:50
Definition serverinfo_user.proto:2