qTox  Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
Public Slots | Signals | Public Member Functions | Public Attributes | Protected Member Functions | Private Types | Private Slots | Private Member Functions | Private Attributes | List of all members
ChatWidget Class Reference

#include <chatwidget.h>

Inheritance diagram for ChatWidget:
Inheritance graph
Collaboration diagram for ChatWidget:
Collaboration graph

Public Slots

void forceRelayout ()
 
void reloadTheme ()
 
void startSearch (const QString &phrase, const ParameterSearch &parameter)
 
void onSearchUp (const QString &phrase, const ParameterSearch &parameter)
 
void onSearchDown (const QString &phrase, const ParameterSearch &parameter)
 
void handleSearchResult (SearchResult result, SearchDirection direction)
 
void removeSearchPhrase ()
 

Signals

void selectionChanged ()
 
void firstVisibleLineChanged (const ChatLine::Ptr &prevLine, const ChatLine::Ptr &firstLine)
 
void messageNotFoundShow (SearchDirection direction)
 
void renderFinished ()
 

Public Member Functions

 ChatWidget (IChatLog &chatLog, const Core &core, QWidget *parent=nullptr)
 
virtual ~ChatWidget ()
 
void insertChatlines (std::map< ChatLogIdx, ChatLine::Ptr > chatLines)
 
void clearSelection ()
 
void clear ()
 
void copySelectedText (bool toSelectionBuffer=false) const
 
void setTypingNotificationVisible (bool visible)
 
void setTypingNotificationName (const QString &displayName)
 
void scrollToLine (ChatLine::Ptr line)
 
void selectAll ()
 
void fontChanged (const QFont &font)
 
QString getSelectedText () const
 
bool isEmpty () const
 
bool hasTextToBeCopied () const
 
ChatLineContentgetContentFromGlobalPos (QPoint pos) const
 Finds the chat line object at a position on screen. More...
 
void setColorizedNames (bool enable)
 
void jumpToDate (QDate date)
 
void jumpToIdx (ChatLogIdx idx)
 

Public Attributes

const uint repNameAfter = 5 * 60
 

Protected Member Functions

QRectF calculateSceneRect () const
 
QRect getVisibleRect () const
 
ChatLineContentgetContentFromPos (QPointF scenePos) const
 
void layout (int start, int end, qreal width)
 
bool isOverSelection (QPointF scenePos) const
 
bool stickToBottom () const
 
qreal useableWidth () const
 
void updateSceneRect ()
 
void checkVisibility ()
 
void scrollToBottom ()
 
void startResizeWorker ()
 
void mouseDoubleClickEvent (QMouseEvent *ev) final
 
void mousePressEvent (QMouseEvent *ev) final
 
void mouseReleaseEvent (QMouseEvent *ev) final
 
void mouseMoveEvent (QMouseEvent *ev) final
 
void scrollContentsBy (int dx, int dy) final
 
void resizeEvent (QResizeEvent *ev) final
 
void showEvent (QShowEvent *) final
 
void hideEvent (QHideEvent *event) final
 
void focusInEvent (QFocusEvent *ev) final
 
void focusOutEvent (QFocusEvent *ev) final
 
void wheelEvent (QWheelEvent *event) final
 
void updateMultiSelectionRect ()
 
void updateTypingNotification ()
 
void updateBusyNotification ()
 
ChatLine::Ptr findLineByPosY (qreal yPos) const
 
void removeLines (ChatLogIdx being, ChatLogIdx end)
 

Private Types

enum  SelectionMode { SelectionMode::None, SelectionMode::Precise, SelectionMode::Multi }
 
enum  AutoScrollDirection { AutoScrollDirection::NoDirection, AutoScrollDirection::Up, AutoScrollDirection::Down }
 

Private Slots

void onSelectionTimerTimeout ()
 
void onWorkerTimeout ()
 
void onMultiClickTimeout ()
 
void onMessageUpdated (ChatLogIdx idx)
 
void renderMessage (ChatLogIdx idx)
 
void renderMessages (ChatLogIdx begin, ChatLogIdx end)
 
void setRenderedWindowStart (ChatLogIdx start)
 
void setRenderedWindowEnd (ChatLogIdx end)
 
void onRenderFinished ()
 
void onScrollValueChanged (int value)
 

Private Member Functions

void retranslateUi ()
 
bool isActiveFileTransfer (ChatLine::Ptr l)
 
void handleMultiClickEvent ()
 
void moveSelectionRectUpIfSelected (int offset)
 
void moveSelectionRectDownIfSelected (int offset)
 
void movePreciseSelectionDown (int offset)
 
void movePreciseSelectionUp (int offset)
 
void moveMultiSelectionUp (int offset)
 
void moveMultiSelectionDown (int offset)
 
void setTypingNotification ()
 
void renderItem (const ChatLogItem &item, bool hideName, bool colorizeNames, ChatLine::Ptr &chatMessage)
 
void renderFile (QString displayName, ToxFile file, bool isSelf, QDateTime timestamp, ChatLine::Ptr &chatMessage)
 
bool needsToHideName (ChatLogIdx idx, bool prevIdxRendered) const
 Determine if the name at the given idx needs to be hidden. More...
 
bool shouldRenderMessage (ChatLogIdx idx) const
 
void disableSearchText ()
 

Private Attributes

QAction * copyAction = nullptr
 
QAction * selectAllAction = nullptr
 
QGraphicsScene * scene = nullptr
 
QGraphicsScene * busyScene = nullptr
 
QList< ChatLine::PtrvisibleLines
 
ChatLine::Ptr typingNotification
 
ChatLine::Ptr busyNotification
 
ChatLine::Ptr selClickedRow
 
int selClickedCol = -1
 
ChatLine::Ptr selFirstRow
 
ChatLine::Ptr selLastRow
 
QColor selectionRectColor = Style::getColor(Style::SelectText)
 
SelectionMode selectionMode = SelectionMode::None
 
QPointF clickPos
 
QGraphicsRectItem * selGraphItem = nullptr
 
QTimer * selectionTimer = nullptr
 
QTimer * workerTimer = nullptr
 
QTimer * multiClickTimer = nullptr
 
AutoScrollDirection selectionScrollDir = AutoScrollDirection::NoDirection
 
int clickCount = 0
 
QPoint lastClickPos
 
Qt::MouseButton lastClickButton
 
size_t workerLastIndex = 0
 
bool workerStb = false
 
ChatLine::Ptr workerAnchorLine
 
QMargins margins = QMargins(10, 10, 10, 10)
 
qreal lineSpacing = 5.0f
 
IChatLogchatLog
 
bool colorizeNames = false
 
SearchPos searchPos
 
const Corecore
 
bool scrollMonitoringEnabled = true
 
std::unique_ptr< ChatLineStoragechatLineStorage
 
std::vector< std::function< void(void)> > renderCompletionFns
 

Detailed Description

Definition at line 41 of file chatwidget.h.

Member Enumeration Documentation

◆ AutoScrollDirection

enum ChatWidget::AutoScrollDirection
strongprivate
Enumerator
NoDirection 
Up 
Down 

Definition at line 160 of file chatwidget.h.

◆ SelectionMode

enum ChatWidget::SelectionMode
strongprivate
Enumerator
None 
Precise 
Multi 

Definition at line 153 of file chatwidget.h.

Constructor & Destructor Documentation

◆ ChatWidget()

ChatWidget::ChatWidget ( IChatLog chatLog,
const Core core,
QWidget *  parent = nullptr 
)
explicit

Definition at line 205 of file chatwidget.cpp.

Here is the call graph for this function:

◆ ~ChatWidget()

ChatWidget::~ChatWidget ( )
virtual

Definition at line 295 of file chatwidget.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ calculateSceneRect()

QRectF ChatWidget::calculateSceneRect ( ) const
protected

Definition at line 1034 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkVisibility()

void ChatWidget::checkVisibility ( )
protected

Definition at line 899 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clear()

void ChatWidget::clear ( )

Definition at line 707 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clearSelection()

void ChatWidget::clearSelection ( )

Definition at line 310 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ copySelectedText()

void ChatWidget::copySelectedText ( bool  toSelectionBuffer = false) const

Definition at line 728 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ disableSearchText()

void ChatWidget::disableSearchText ( )
private

Definition at line 1494 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ findLineByPosY()

ChatLine::Ptr ChatWidget::findLineByPosY ( qreal  yPos) const
protected

Definition at line 999 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ firstVisibleLineChanged

void ChatWidget::firstVisibleLineChanged ( const ChatLine::Ptr prevLine,
const ChatLine::Ptr firstLine 
)
signal
Here is the caller graph for this function:

◆ focusInEvent()

void ChatWidget::focusInEvent ( QFocusEvent *  ev)
finalprotected

Definition at line 1325 of file chatwidget.cpp.

◆ focusOutEvent()

void ChatWidget::focusOutEvent ( QFocusEvent *  ev)
finalprotected

Definition at line 1344 of file chatwidget.cpp.

◆ fontChanged()

void ChatWidget::fontChanged ( const QFont &  font)

Definition at line 782 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ forceRelayout

void ChatWidget::forceRelayout ( )
slot

Definition at line 894 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getContentFromGlobalPos()

ChatLineContent * ChatWidget::getContentFromGlobalPos ( QPoint  pos) const

Finds the chat line object at a position on screen.

Parameters
posPosition on screen in global coordinates
See also
getContentFromPos()

Definition at line 702 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getContentFromPos()

ChatLineContent * ChatWidget::getContentFromPos ( QPointF  scenePos) const
protected

Definition at line 481 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSelectedText()

QString ChatWidget::getSelectedText ( ) const

Definition at line 659 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ getVisibleRect()

QRect ChatWidget::getVisibleRect ( ) const
protected

Definition at line 330 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ handleMultiClickEvent()

void ChatWidget::handleMultiClickEvent ( )
private

Definition at line 1274 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ handleSearchResult

void ChatWidget::handleSearchResult ( SearchResult  result,
SearchDirection  direction 
)
slot

Definition at line 855 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hasTextToBeCopied()

bool ChatWidget::hasTextToBeCopied ( ) const

Definition at line 692 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ hideEvent()

void ChatWidget::hideEvent ( QHideEvent *  event)
finalprotected

Definition at line 1307 of file chatwidget.cpp.

Here is the call graph for this function:

◆ insertChatlines()

void ChatWidget::insertChatlines ( std::map< ChatLogIdx, ChatLine::Ptr chatLines)

Definition at line 516 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isActiveFileTransfer()

bool ChatWidget::isActiveFileTransfer ( ChatLine::Ptr  l)
private

Definition at line 1375 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isEmpty()

bool ChatWidget::isEmpty ( ) const

Definition at line 687 of file chatwidget.cpp.

◆ isOverSelection()

bool ChatWidget::isOverSelection ( QPointF  scenePos) const
protected

Definition at line 496 of file chatwidget.cpp.

Here is the call graph for this function:

◆ jumpToDate()

void ChatWidget::jumpToDate ( QDate  date)

Definition at line 1510 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ jumpToIdx()

void ChatWidget::jumpToIdx ( ChatLogIdx  idx)

Definition at line 1515 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ layout()

void ChatWidget::layout ( int  start,
int  end,
qreal  width 
)
protected

Definition at line 340 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ messageNotFoundShow

void ChatWidget::messageNotFoundShow ( SearchDirection  direction)
signal
Here is the caller graph for this function:

◆ mouseDoubleClickEvent()

void ChatWidget::mouseDoubleClickEvent ( QMouseEvent *  ev)
finalprotected

Definition at line 628 of file chatwidget.cpp.

Here is the call graph for this function:

◆ mouseMoveEvent()

void ChatWidget::mouseMoveEvent ( QMouseEvent *  ev)
finalprotected

Definition at line 395 of file chatwidget.cpp.

Here is the call graph for this function:

◆ mousePressEvent()

void ChatWidget::mousePressEvent ( QMouseEvent *  ev)
finalprotected

Definition at line 363 of file chatwidget.cpp.

Here is the call graph for this function:

◆ mouseReleaseEvent()

void ChatWidget::mouseReleaseEvent ( QMouseEvent *  ev)
finalprotected

Definition at line 386 of file chatwidget.cpp.

◆ moveMultiSelectionDown()

void ChatWidget::moveMultiSelectionDown ( int  offset)
private

◆ moveMultiSelectionUp()

void ChatWidget::moveMultiSelectionUp ( int  offset)
private

◆ movePreciseSelectionDown()

void ChatWidget::movePreciseSelectionDown ( int  offset)
private

◆ movePreciseSelectionUp()

void ChatWidget::movePreciseSelectionUp ( int  offset)
private

◆ moveSelectionRectDownIfSelected()

void ChatWidget::moveSelectionRectDownIfSelected ( int  offset)
private

◆ moveSelectionRectUpIfSelected()

void ChatWidget::moveSelectionRectUpIfSelected ( int  offset)
private

◆ needsToHideName()

bool ChatWidget::needsToHideName ( ChatLogIdx  idx,
bool  prevIdxRendered 
) const
private

Determine if the name at the given idx needs to be hidden.

Parameters
idxChatLogIdx of the message
prevIdxRenderedHint if the previous index is going to be rendered at all. If the previous line is not rendered we always show the name
Returns
True if the name should be hidden, false otherwise

Definition at line 1461 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onMessageUpdated

void ChatWidget::onMessageUpdated ( ChatLogIdx  idx)
privateslot

Definition at line 1104 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onMultiClickTimeout

void ChatWidget::onMultiClickTimeout ( )
privateslot

Definition at line 1099 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ onRenderFinished

void ChatWidget::onRenderFinished ( )
privateslot

Definition at line 1186 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onScrollValueChanged

void ChatWidget::onScrollValueChanged ( int  value)
privateslot

Definition at line 1214 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onSearchDown

void ChatWidget::onSearchDown ( const QString &  phrase,
const ParameterSearch parameter 
)
slot

Definition at line 849 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onSearchUp

void ChatWidget::onSearchUp ( const QString &  phrase,
const ParameterSearch parameter 
)
slot

Definition at line 843 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onSelectionTimerTimeout

void ChatWidget::onSelectionTimerTimeout ( )
privateslot

Definition at line 1045 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ onWorkerTimeout

void ChatWidget::onWorkerTimeout ( )
privateslot

Definition at line 1061 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reloadTheme

void ChatWidget::reloadTheme ( )
slot

Definition at line 789 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeLines()

void ChatWidget::removeLines ( ChatLogIdx  being,
ChatLogIdx  end 
)
protected

Definition at line 1009 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeSearchPhrase

void ChatWidget::removeSearchPhrase ( )
slot

Definition at line 1505 of file chatwidget.cpp.

Here is the call graph for this function:

◆ renderFile()

void ChatWidget::renderFile ( QString  displayName,
ToxFile  file,
bool  isSelf,
QDateTime  timestamp,
ChatLine::Ptr chatMessage 
)
private

Definition at line 1439 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ renderFinished

void ChatWidget::renderFinished ( )
signal
Here is the caller graph for this function:

◆ renderItem()

void ChatWidget::renderItem ( const ChatLogItem item,
bool  hideName,
bool  colorizeNames,
ChatLine::Ptr chatMessage 
)
private

Definition at line 1403 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ renderMessage

void ChatWidget::renderMessage ( ChatLogIdx  idx)
privateslot

Definition at line 1111 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ renderMessages

void ChatWidget::renderMessages ( ChatLogIdx  begin,
ChatLogIdx  end 
)
privateslot

Definition at line 1116 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resizeEvent()

void ChatWidget::resizeEvent ( QResizeEvent *  ev)
finalprotected

Definition at line 944 of file chatwidget.cpp.

Here is the call graph for this function:

◆ retranslateUi()

void ChatWidget::retranslateUi ( )
private

Definition at line 1369 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ scrollContentsBy()

void ChatWidget::scrollContentsBy ( int  dx,
int  dy 
)
finalprotected

Definition at line 938 of file chatwidget.cpp.

Here is the call graph for this function:

◆ scrollToBottom()

void ChatWidget::scrollToBottom ( )
protected

Definition at line 590 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scrollToLine()

void ChatWidget::scrollToLine ( ChatLine::Ptr  line)

Definition at line 758 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectAll()

void ChatWidget::selectAll ( )

Definition at line 767 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ selectionChanged

void ChatWidget::selectionChanged ( )
signal
Here is the caller graph for this function:

◆ setColorizedNames()

void ChatWidget::setColorizedNames ( bool  enable)
inline

Definition at line 65 of file chatwidget.h.

Here is the caller graph for this function:

◆ setRenderedWindowEnd

void ChatWidget::setRenderedWindowEnd ( ChatLogIdx  end)
privateslot

Definition at line 1178 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setRenderedWindowStart

void ChatWidget::setRenderedWindowStart ( ChatLogIdx  start)
privateslot

Definition at line 1135 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTypingNotification()

void ChatWidget::setTypingNotification ( )
private

Definition at line 1393 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTypingNotificationName()

void ChatWidget::setTypingNotificationName ( const QString &  displayName)

Definition at line 745 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTypingNotificationVisible()

void ChatWidget::setTypingNotificationVisible ( bool  visible)

Definition at line 737 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ shouldRenderMessage()

bool ChatWidget::shouldRenderMessage ( ChatLogIdx  idx) const
private

Definition at line 1486 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ showEvent()

void ChatWidget::showEvent ( QShowEvent *  )
finalprotected

Definition at line 1300 of file chatwidget.cpp.

◆ startResizeWorker()

void ChatWidget::startResizeWorker ( )
protected

Definition at line 596 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ startSearch

void ChatWidget::startSearch ( const QString &  phrase,
const ParameterSearch parameter 
)
slot

Definition at line 803 of file chatwidget.cpp.

Here is the call graph for this function:

◆ stickToBottom()

bool ChatWidget::stickToBottom ( ) const
protected

Definition at line 585 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ updateBusyNotification()

void ChatWidget::updateBusyNotification ( )
protected

Definition at line 992 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateMultiSelectionRect()

void ChatWidget::updateMultiSelectionRect ( )
protected

Definition at line 961 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ updateSceneRect()

void ChatWidget::updateSceneRect ( )
protected

Definition at line 335 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateTypingNotification()

void ChatWidget::updateTypingNotification ( )
protected

Definition at line 978 of file chatwidget.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ useableWidth()

qreal ChatWidget::useableWidth ( ) const
protected

Definition at line 511 of file chatwidget.cpp.

Here is the caller graph for this function:

◆ wheelEvent()

void ChatWidget::wheelEvent ( QWheelEvent *  event)
finalprotected

Definition at line 1363 of file chatwidget.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ busyNotification

ChatLine::Ptr ChatWidget::busyNotification
private

Definition at line 173 of file chatwidget.h.

◆ busyScene

QGraphicsScene* ChatWidget::busyScene = nullptr
private

Definition at line 170 of file chatwidget.h.

◆ chatLineStorage

std::unique_ptr<ChatLineStorage> ChatWidget::chatLineStorage
private

Definition at line 214 of file chatwidget.h.

◆ chatLog

IChatLog& ChatWidget::chatLog
private

Definition at line 208 of file chatwidget.h.

◆ clickCount

int ChatWidget::clickCount = 0
private

Definition at line 195 of file chatwidget.h.

◆ clickPos

QPointF ChatWidget::clickPos
private

Definition at line 189 of file chatwidget.h.

◆ colorizeNames

bool ChatWidget::colorizeNames = false
private

Definition at line 209 of file chatwidget.h.

◆ copyAction

QAction* ChatWidget::copyAction = nullptr
private

Definition at line 167 of file chatwidget.h.

◆ core

const Core& ChatWidget::core
private

Definition at line 211 of file chatwidget.h.

◆ lastClickButton

Qt::MouseButton ChatWidget::lastClickButton
private

Definition at line 197 of file chatwidget.h.

◆ lastClickPos

QPoint ChatWidget::lastClickPos
private

Definition at line 196 of file chatwidget.h.

◆ lineSpacing

qreal ChatWidget::lineSpacing = 5.0f
private

Definition at line 206 of file chatwidget.h.

◆ margins

QMargins ChatWidget::margins = QMargins(10, 10, 10, 10)
private

Definition at line 205 of file chatwidget.h.

◆ multiClickTimer

QTimer* ChatWidget::multiClickTimer = nullptr
private

Definition at line 193 of file chatwidget.h.

◆ renderCompletionFns

std::vector<std::function<void(void)> > ChatWidget::renderCompletionFns
private

Definition at line 216 of file chatwidget.h.

◆ repNameAfter

const uint ChatWidget::repNameAfter = 5 * 60

Definition at line 63 of file chatwidget.h.

◆ scene

QGraphicsScene* ChatWidget::scene = nullptr
private

Definition at line 169 of file chatwidget.h.

◆ scrollMonitoringEnabled

bool ChatWidget::scrollMonitoringEnabled = true
private

Definition at line 212 of file chatwidget.h.

◆ searchPos

SearchPos ChatWidget::searchPos
private

Definition at line 210 of file chatwidget.h.

◆ selClickedCol

int ChatWidget::selClickedCol = -1
private

Definition at line 184 of file chatwidget.h.

◆ selClickedRow

ChatLine::Ptr ChatWidget::selClickedRow
private

Definition at line 183 of file chatwidget.h.

◆ selectAllAction

QAction* ChatWidget::selectAllAction = nullptr
private

Definition at line 168 of file chatwidget.h.

◆ selectionMode

SelectionMode ChatWidget::selectionMode = SelectionMode::None
private

Definition at line 188 of file chatwidget.h.

◆ selectionRectColor

QColor ChatWidget::selectionRectColor = Style::getColor(Style::SelectText)
private

Definition at line 187 of file chatwidget.h.

◆ selectionScrollDir

AutoScrollDirection ChatWidget::selectionScrollDir = AutoScrollDirection::NoDirection
private

Definition at line 194 of file chatwidget.h.

◆ selectionTimer

QTimer* ChatWidget::selectionTimer = nullptr
private

Definition at line 191 of file chatwidget.h.

◆ selFirstRow

ChatLine::Ptr ChatWidget::selFirstRow
private

Definition at line 185 of file chatwidget.h.

◆ selGraphItem

QGraphicsRectItem* ChatWidget::selGraphItem = nullptr
private

Definition at line 190 of file chatwidget.h.

◆ selLastRow

ChatLine::Ptr ChatWidget::selLastRow
private

Definition at line 186 of file chatwidget.h.

◆ typingNotification

ChatLine::Ptr ChatWidget::typingNotification
private

Definition at line 172 of file chatwidget.h.

◆ visibleLines

QList<ChatLine::Ptr> ChatWidget::visibleLines
private

Definition at line 171 of file chatwidget.h.

◆ workerAnchorLine

ChatLine::Ptr ChatWidget::workerAnchorLine
private

Definition at line 202 of file chatwidget.h.

◆ workerLastIndex

size_t ChatWidget::workerLastIndex = 0
private

Definition at line 200 of file chatwidget.h.

◆ workerStb

bool ChatWidget::workerStb = false
private

Definition at line 201 of file chatwidget.h.

◆ workerTimer

QTimer* ChatWidget::workerTimer = nullptr
private

Definition at line 192 of file chatwidget.h.


The documentation for this class was generated from the following files: