11#include "../../interface/widgets/tabs/tab_supervisor.h"
16#include <QTextBrowser>
18#include <QTextFragment>
81 void appendCardTag(QTextCursor &cursor,
const QString &cardName);
88 void checkTag(QTextCursor &cursor, QString &message);
89 void checkMention(QTextCursor &cursor, QString &message,
const QString &userName, UserLevelFlags userLevel);
90 void checkWord(QTextCursor &cursor, QString &message);
111 bool optionalIsBold =
false,
112 QString optionalFontColor = QString());
114 RoomMessageTypeFlags messageType = {},
116 bool playerBold =
false);
Definition abstract_game.h:20
void appendCardTag(QTextCursor &cursor, const QString &cardName)
Definition chat_view.cpp:176
bool showTimestamps
Definition chat_view.h:69
bool evenNumber
Definition chat_view.h:68
HoveredItemType
Definition chat_view.h:52
@ HoveredNothing
Definition chat_view.h:53
@ HoveredUrl
Definition chat_view.h:54
@ HoveredCard
Definition chat_view.h:55
@ HoveredUser
Definition chat_view.h:56
ChatView(TabSupervisor *_tabSupervisor, AbstractGame *_game, bool _showTimestamps, QWidget *parent=nullptr)
Definition chat_view.cpp:31
void showSystemPopup(const QString &userName)
Definition chat_view.cpp:620
void checkWord(QTextCursor &cursor, QString &message)
Definition chat_view.cpp:532
void mousePressEvent(QMouseEvent *event) override
Definition chat_view.cpp:745
void scrollToBottom()
Definition chat_view.cpp:396
QList< ChatLogEntry > chatHistory
Definition chat_view.h:75
AbstractGame *const game
Definition chat_view.h:48
void onScrollBarValueChanged(int value)
Definition chat_view.cpp:412
QTextFragment getFragmentUnderMouse(const QPoint &pos) const
Definition chat_view.cpp:702
HoveredItemType hoveredItemType
Definition chat_view.h:71
QString ownUserName
Definition chat_view.h:61
bool stickToBottom
Definition chat_view.h:70
QAction * messageClicked
Definition chat_view.h:73
QString mention
Definition chat_view.h:62
void openMessageDialog(const QString &userName, bool focus)
void mouseReleaseEvent(QMouseEvent *event) override
Definition chat_view.cpp:784
void appendMessage(QString message, RoomMessageTypeFlags messageType={}, const ServerInfo_User &userInfo={}, bool playerBold=false)
Definition chat_view.cpp:258
void addMentionTag(QString mentionTag)
static QColor getCustomHighlightColor()
Definition chat_view.cpp:639
void showMentionPopup(const QString &userName)
QTextCursor prepareBlock(bool same=false)
Definition chat_view.cpp:117
QString getRecentChatLog(int maxMessages=50) const
Definition chat_view.cpp:658
TabSupervisor *const tabSupervisor
Definition chat_view.h:47
QString extractNextWord(QString &message, QString &rest)
Definition chat_view.cpp:579
UserContextMenu * userContextMenu
Definition chat_view.h:59
void retranslateUi()
Definition chat_view.cpp:112
void onScrollBarRangeChanged()
Definition chat_view.cpp:405
static QColor getCustomMentionColor()
Definition chat_view.cpp:628
QTextCharFormat mentionFormat
Definition chat_view.h:63
bool isModeratorSendingGlobal(QFlags< ServerInfo_User::UserLevelFlag > userLevelFlag, QString message)
Definition chat_view.cpp:604
virtual void appendHtmlServerMessage(const QString &html, bool optionalIsBold=false, QString optionalFontColor=QString())
Definition chat_view.cpp:158
void enterEvent(QEnterEvent *event) override
Definition chat_view.cpp:692
void appendGameLinkTag(QTextCursor &cursor, const QString &url)
Definition chat_view.cpp:218
void cockatriceLinkActivated(const QString &url)
void clearChat()
Definition chat_view.cpp:650
QTextCharFormat mentionFormatOtherUser
Definition chat_view.h:65
void adjustColorsToPalette()
Definition chat_view.cpp:62
void mouseMoveEvent(QMouseEvent *event) override
Definition chat_view.cpp:716
QStringList highlightedWords
Definition chat_view.h:67
const UserListProxy *const userListProxy
Definition chat_view.h:58
void deleteCardInfoPopup(QString cardName)
QColor unresolvedCardTagColor
Definition chat_view.h:96
static constexpr int MAX_CHAT_HISTORY
Definition chat_view.h:76
QMap< QString, QVector< UserMessagePosition > > userMessagePositions
Definition chat_view.h:74
void showCardInfoPopup(const QPoint &pos, const CardRef &cardRef)
QColor linkColor
Definition chat_view.h:95
QColor otherUserColor
Definition chat_view.h:93
void redactMessages(const QString &userName, int amount)
Definition chat_view.cpp:670
void cardNameHovered(QString cardName)
QString hoveredContent
Definition chat_view.h:72
void leaveEvent(QEvent *event) override
Definition chat_view.cpp:697
void checkMention(QTextCursor &cursor, QString &message, const QString &userName, UserLevelFlags userLevel)
Definition chat_view.cpp:467
void messageClickedSignal()
void checkTag(QTextCursor &cursor, QString &message)
Definition chat_view.cpp:419
void refreshBlockColors()
Definition chat_view.cpp:79
QString lastSender
Definition chat_view.h:60
void openLink(const QUrl &link)
Definition chat_view.cpp:793
QTextCharFormat defaultFormat
Definition chat_view.h:66
void appendUrlTag(QTextCursor &cursor, QString url)
Definition chat_view.cpp:199
void actMessageClicked()
Definition chat_view.cpp:615
QTextCharFormat highlightFormat
Definition chat_view.h:64
void appendHtml(const QString &html)
Definition chat_view.cpp:149
QColor serverMessageColor
Definition chat_view.h:94
Definition tab_supervisor.h:84
Definition user_list_proxy.h:19
int relativePosition
Definition chat_view.h:32
UserMessagePosition(QTextCursor &cursor)
Definition chat_view.cpp:25
QTextBlock block
Definition chat_view.h:33
Definition chat_view.h:37
QDateTime timestamp
Definition chat_view.h:40
QString message
Definition chat_view.h:39
QString userName
Definition chat_view.h:38
Definition serverinfo_user.proto:2