Clear chat

Users can now clear the chat in the main lobby. This removes unwanted
text and clears up memory when the client has been open a long time.
This commit is contained in:
Matt Lowe 2015-01-13 00:33:27 +01:00
parent 7476667b69
commit 2e342361a5
4 changed files with 15 additions and 0 deletions

View file

@ -53,6 +53,9 @@ TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerI
aIgnoreUnregisteredUsers = chatSettingsMenu->addAction(QString());
aIgnoreUnregisteredUsers->setCheckable(true);
connect(aIgnoreUnregisteredUsers, SIGNAL(triggered()), this, SLOT(actIgnoreUnregisteredUsers()));
chatSettingsMenu->addSeparator();
aClearChat = chatSettingsMenu->addAction(QString());
connect(aClearChat, SIGNAL(triggered()), this, SLOT(actClearChat()));
connect(settingsCache, SIGNAL(ignoreUnregisteredUsersChanged()), this, SLOT(ignoreUnregisteredUsersChanged()));
QToolButton *chatSettingsButton = new QToolButton;
chatSettingsButton->setIcon(QIcon(":/resources/icon_settings.svg"));
@ -114,6 +117,7 @@ void TabRoom::retranslateUi()
roomMenu->setTitle(tr("&Room"));
aLeaveRoom->setText(tr("&Leave room"));
aIgnoreUnregisteredUsers->setText(tr("&Ignore unregistered users in chat"));
aClearChat->setText(tr("&Clear chat"));
}
void TabRoom::closeRequest()
@ -172,6 +176,10 @@ void TabRoom::ignoreUnregisteredUsersChanged()
aIgnoreUnregisteredUsers->setChecked(settingsCache->getIgnoreUnregisteredUsers());
}
void TabRoom::actClearChat() {
chatView->clearChat();
}
void TabRoom::processRoomEvent(const RoomEvent &event)
{
switch (static_cast<RoomEvent::RoomEventType>(getPbExtension(event))) {