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

#include <groupchatform.h>

Inheritance diagram for GroupChatForm:
Inheritance graph
Collaboration diagram for GroupChatForm:
Collaboration graph

Public Member Functions

 GroupChatForm (Core &_core, Group *chatGroup, IChatLog &chatLog, IMessageDispatcher &messageDispatcher, IGroupSettings &_settings)
 
 ~GroupChatForm ()
 
void peerAudioPlaying (ToxPk peerPk)
 
- Public Member Functions inherited from GenericChatForm
 GenericChatForm (const Core &_core, const Contact *contact, IChatLog &chatLog, IMessageDispatcher &messageDispatcher, QWidget *parent=nullptr)
 
 ~GenericChatForm () override
 
void setName (const QString &newName)
 
virtual void show (ContentLayout *contentLayout)
 
void addSystemInfoMessage (const QDateTime &datetime, SystemMessageType messageType, SystemMessage::Args messageArgs)
 
QDateTime getLatestTime () const
 

Protected Member Functions

void keyPressEvent (QKeyEvent *ev) final
 
void keyReleaseEvent (QKeyEvent *ev) final
 
void dragEnterEvent (QDragEnterEvent *ev) final
 
void dropEvent (QDropEvent *ev) final
 
- Protected Member Functions inherited from GenericChatForm
ChatMessage::Ptr createMessage (const ToxPk &author, const QString &message, const QDateTime &datetime, bool isAction, bool isSent, bool colorizeName=false)
 
void adjustFileMenuPosition ()
 
void hideEvent (QHideEvent *event) override
 
void showEvent (QShowEvent *) override
 
bool event (QEvent *) final
 
void resizeEvent (QResizeEvent *event) final
 
bool eventFilter (QObject *object, QEvent *event) final
 
bool searchInText (const QString &phrase, const ParameterSearch &parameter, SearchDirection direction)
 
std::pair< int, int > indexForSearchInLine (const QString &txt, const QString &phrase, const ParameterSearch &parameter, SearchDirection direction)
 

Private Slots

void onScreenshotClicked () override
 
void onAttachClicked () override
 
void onMicMuteToggle ()
 
void onVolMuteToggle ()
 
void onCallClicked ()
 
void onUserJoined (const ToxPk &user, const QString &name)
 
void onUserLeft (const ToxPk &user, const QString &name)
 
void onPeerNameChanged (const ToxPk &peer, const QString &oldName, const QString &newName)
 
void onTitleChanged (const QString &author, const QString &title)
 
void onLabelContextMenuRequested (const QPoint &localPos)
 

Private Member Functions

void retranslateUi ()
 
void updateUserCount (int numPeers)
 Updates users' count label text. More...
 
void updateUserNames ()
 Updates user names' labels at the top of group chat. More...
 
void joinGroupCall ()
 
void leaveGroupCall ()
 

Private Attributes

Corecore
 
Groupgroup
 
QMap< ToxPk, QLabel * > peerLabels
 Maps peernumbers to the QLabels in namesListLayout. More...
 
QMap< ToxPk, QTimer * > peerAudioTimers
 Timeout = peer stopped sending audio. More...
 
FlowLayoutnamesListLayout
 
QLabel * nusersLabel
 
TabCompletertabber
 
bool inCall
 
IGroupSettingssettings
 

Additional Inherited Members

- Public Slots inherited from GenericChatForm
void focusInput ()
 
void onChatMessageFontChanged (const QFont &font)
 
void setColorizedNames (bool enable)
 
virtual void reloadTheme ()
 
- Signals inherited from GenericChatForm
void messageInserted ()
 
- Static Public Member Functions inherited from GenericChatForm
static QString resolveToxPk (const ToxPk &pk)
 Searches for name (possibly alias) of someone with specified public key among all of your friends or groups you are participated. More...
 
- Protected Slots inherited from GenericChatForm
void onChatContextMenuRequested (QPoint pos)
 
virtual void onScreenshotClicked ()=0
 
void onSendTriggered ()
 
virtual void onAttachClicked ()=0
 
void onEmoteButtonClicked ()
 
void onEmoteInsertRequested (QString str)
 
void onCopyLogClicked ()
 
void clearChatArea ()
 
void clearChatArea (bool confirm, bool inform)
 
void onSelectAllClicked ()
 
void showFileMenu ()
 
void hideFileMenu ()
 
void quoteSelectedText ()
 
void copyLink ()
 Callback of GenericChatForm::copyLinkAction. More...
 
void onLoadHistory ()
 
void onExportChat ()
 
void searchFormShow ()
 
void updateShowDateInfo (const ChatLine::Ptr &prevLine, const ChatLine::Ptr &topLine)
 
void goToCurrentDate ()
 
- Protected Attributes inherited from GenericChatForm
const Corecore
 
bool audioInputFlag
 
bool audioOutputFlag
 
int curRow
 
QAction * clearAction
 
QAction * quoteAction
 
QAction * copyLinkAction
 
QAction * searchAction
 
QAction * goToCurrentDateAction
 
QAction * loadHistoryAction
 
QAction * exportChatAction
 
QMenu menu
 
QVBoxLayout * contentLayout
 
QPushButton * emoteButton
 
QPushButton * fileButton
 
QPushButton * screenshotButton
 
QPushButton * sendButton
 
QSplitter * bodySplitter
 
ChatFormHeaderheadWidget
 
SearchFormsearchForm
 
QLabel * dateInfo
 
ChatWidgetchatWidget
 
ChatTextEditmsgEdit
 
FlyoutOverlayWidgetfileFlyout
 
Widgetparent
 
IChatLogchatLog
 
IMessageDispatchermessageDispatcher
 

Detailed Description

Definition at line 39 of file groupchatform.h.

Constructor & Destructor Documentation

◆ GroupChatForm()

GroupChatForm::GroupChatForm ( Core _core,
Group chatGroup,
IChatLog chatLog,
IMessageDispatcher messageDispatcher,
IGroupSettings _settings 
)
explicit

Definition at line 85 of file groupchatform.cpp.

◆ ~GroupChatForm()

GroupChatForm::~GroupChatForm ( )

Definition at line 141 of file groupchatform.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ dragEnterEvent()

void GroupChatForm::dragEnterEvent ( QDragEnterEvent *  ev)
finalprotected

Definition at line 280 of file groupchatform.cpp.

Here is the call graph for this function:

◆ dropEvent()

void GroupChatForm::dropEvent ( QDropEvent *  ev)
finalprotected

Definition at line 291 of file groupchatform.cpp.

Here is the call graph for this function:

◆ joinGroupCall()

void GroupChatForm::joinGroupCall ( )
private

Definition at line 441 of file groupchatform.cpp.

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

◆ keyPressEvent()

void GroupChatForm::keyPressEvent ( QKeyEvent *  ev)
finalprotected

Definition at line 349 of file groupchatform.cpp.

Here is the call graph for this function:

◆ keyReleaseEvent()

void GroupChatForm::keyReleaseEvent ( QKeyEvent *  ev)
finalprotected

Definition at line 360 of file groupchatform.cpp.

Here is the call graph for this function:

◆ leaveGroupCall()

void GroupChatForm::leaveGroupCall ( )
private

Definition at line 450 of file groupchatform.cpp.

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

◆ onAttachClicked

void GroupChatForm::onAttachClicked ( )
overrideprivateslot

Definition at line 161 of file groupchatform.cpp.

◆ onCallClicked

void GroupChatForm::onCallClicked ( )
privateslot

Definition at line 330 of file groupchatform.cpp.

Here is the call graph for this function:

◆ onLabelContextMenuRequested

void GroupChatForm::onLabelContextMenuRequested ( const QPoint &  localPos)
privateslot

Definition at line 385 of file groupchatform.cpp.

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

◆ onMicMuteToggle

void GroupChatForm::onMicMuteToggle ( )
privateslot

Definition at line 308 of file groupchatform.cpp.

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

◆ onPeerNameChanged

void GroupChatForm::onPeerNameChanged ( const ToxPk peer,
const QString &  oldName,
const QString &  newName 
)
privateslot

Definition at line 248 of file groupchatform.cpp.

Here is the call graph for this function:

◆ onScreenshotClicked

void GroupChatForm::onScreenshotClicked ( )
overrideprivateslot

Definition at line 156 of file groupchatform.cpp.

◆ onTitleChanged

void GroupChatForm::onTitleChanged ( const QString &  author,
const QString &  title 
)
privateslot

Definition at line 146 of file groupchatform.cpp.

Here is the call graph for this function:

◆ onUserJoined

void GroupChatForm::onUserJoined ( const ToxPk user,
const QString &  name 
)
privateslot

Definition at line 232 of file groupchatform.cpp.

Here is the call graph for this function:

◆ onUserLeft

void GroupChatForm::onUserLeft ( const ToxPk user,
const QString &  name 
)
privateslot

Definition at line 240 of file groupchatform.cpp.

Here is the call graph for this function:

◆ onVolMuteToggle

void GroupChatForm::onVolMuteToggle ( )
privateslot

Definition at line 319 of file groupchatform.cpp.

Here is the call graph for this function:

◆ peerAudioPlaying()

void GroupChatForm::peerAudioPlaying ( ToxPk  peerPk)

Definition at line 255 of file groupchatform.cpp.

Here is the call graph for this function:

◆ retranslateUi()

void GroupChatForm::retranslateUi ( )
private

Definition at line 380 of file groupchatform.cpp.

Here is the call graph for this function:

◆ updateUserCount()

void GroupChatForm::updateUserCount ( int  numPeers)
private

Updates users' count label text.

Definition at line 374 of file groupchatform.cpp.

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

◆ updateUserNames()

void GroupChatForm::updateUserNames ( )
private

Updates user names' labels at the top of group chat.

Definition at line 169 of file groupchatform.cpp.

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

Member Data Documentation

◆ core

Core& GroupChatForm::core
private

Definition at line 75 of file groupchatform.h.

◆ group

Group* GroupChatForm::group
private

Definition at line 76 of file groupchatform.h.

◆ inCall

bool GroupChatForm::inCall
private

Definition at line 82 of file groupchatform.h.

◆ namesListLayout

FlowLayout* GroupChatForm::namesListLayout
private

Definition at line 79 of file groupchatform.h.

◆ nusersLabel

QLabel* GroupChatForm::nusersLabel
private

Definition at line 80 of file groupchatform.h.

◆ peerAudioTimers

QMap< int, QTimer * > GroupChatForm::peerAudioTimers
private

Timeout = peer stopped sending audio.

Definition at line 78 of file groupchatform.h.

◆ peerLabels

QList< QLabel * > GroupChatForm::peerLabels
private

Maps peernumbers to the QLabels in namesListLayout.

Definition at line 77 of file groupchatform.h.

◆ settings

IGroupSettings& GroupChatForm::settings
private

Definition at line 83 of file groupchatform.h.

◆ tabber

TabCompleter* GroupChatForm::tabber
private

Definition at line 81 of file groupchatform.h.


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