Added "Chat settings..." shortcut to chat cog
This commit is contained in:
parent
9b7f488bd7
commit
b41d64615d
4 changed files with 24 additions and 0 deletions
|
@ -773,6 +773,13 @@ void DlgSettings::changePage(QListWidgetItem *current, QListWidgetItem *previous
|
||||||
pagesWidget->setCurrentIndex(contentsWidget->row(current));
|
pagesWidget->setCurrentIndex(contentsWidget->row(current));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DlgSettings::setTab(int index) {
|
||||||
|
if (index <= contentsWidget->count()-1 && index >= 0) {
|
||||||
|
changePage(contentsWidget->item(index), contentsWidget->currentItem());
|
||||||
|
contentsWidget->setCurrentRow(index);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void DlgSettings::updateLanguage()
|
void DlgSettings::updateLanguage()
|
||||||
{
|
{
|
||||||
qApp->removeTranslator(translator);
|
qApp->removeTranslator(translator);
|
||||||
|
|
|
@ -138,6 +138,7 @@ class DlgSettings : public QDialog {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
DlgSettings(QWidget *parent = 0);
|
DlgSettings(QWidget *parent = 0);
|
||||||
|
void setTab(int index);
|
||||||
private slots:
|
private slots:
|
||||||
void changePage(QListWidgetItem *current, QListWidgetItem *previous);
|
void changePage(QListWidgetItem *current, QListWidgetItem *previous);
|
||||||
void updateLanguage();
|
void updateLanguage();
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "pb/event_leave_room.pb.h"
|
#include "pb/event_leave_room.pb.h"
|
||||||
#include "pb/event_room_say.pb.h"
|
#include "pb/event_room_say.pb.h"
|
||||||
#include "pending_command.h"
|
#include "pending_command.h"
|
||||||
|
#include "dlg_settings.h"
|
||||||
|
|
||||||
TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerInfo_User *_ownUser, const ServerInfo_Room &info)
|
TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerInfo_User *_ownUser, const ServerInfo_Room &info)
|
||||||
: Tab(_tabSupervisor), client(_client), roomId(info.room_id()), roomName(QString::fromStdString(info.name())), ownUser(_ownUser)
|
: Tab(_tabSupervisor), client(_client), roomId(info.room_id()), roomName(QString::fromStdString(info.name())), ownUser(_ownUser)
|
||||||
|
@ -53,9 +54,15 @@ TabRoom::TabRoom(TabSupervisor *_tabSupervisor, AbstractClient *_client, ServerI
|
||||||
aIgnoreUnregisteredUsers = chatSettingsMenu->addAction(QString());
|
aIgnoreUnregisteredUsers = chatSettingsMenu->addAction(QString());
|
||||||
aIgnoreUnregisteredUsers->setCheckable(true);
|
aIgnoreUnregisteredUsers->setCheckable(true);
|
||||||
connect(aIgnoreUnregisteredUsers, SIGNAL(triggered()), this, SLOT(actIgnoreUnregisteredUsers()));
|
connect(aIgnoreUnregisteredUsers, SIGNAL(triggered()), this, SLOT(actIgnoreUnregisteredUsers()));
|
||||||
|
|
||||||
chatSettingsMenu->addSeparator();
|
chatSettingsMenu->addSeparator();
|
||||||
|
|
||||||
aClearChat = chatSettingsMenu->addAction(QString());
|
aClearChat = chatSettingsMenu->addAction(QString());
|
||||||
connect(aClearChat, SIGNAL(triggered()), this, SLOT(actClearChat()));
|
connect(aClearChat, SIGNAL(triggered()), this, SLOT(actClearChat()));
|
||||||
|
|
||||||
|
aOpenChatSettings = chatSettingsMenu->addAction(QString());
|
||||||
|
connect(aOpenChatSettings, SIGNAL(triggered()), this, SLOT(actOpenChatSettings()));
|
||||||
|
|
||||||
connect(settingsCache, SIGNAL(ignoreUnregisteredUsersChanged()), this, SLOT(ignoreUnregisteredUsersChanged()));
|
connect(settingsCache, SIGNAL(ignoreUnregisteredUsersChanged()), this, SLOT(ignoreUnregisteredUsersChanged()));
|
||||||
QToolButton *chatSettingsButton = new QToolButton;
|
QToolButton *chatSettingsButton = new QToolButton;
|
||||||
chatSettingsButton->setIcon(QIcon(":/resources/icon_settings.svg"));
|
chatSettingsButton->setIcon(QIcon(":/resources/icon_settings.svg"));
|
||||||
|
@ -118,6 +125,7 @@ void TabRoom::retranslateUi()
|
||||||
aLeaveRoom->setText(tr("&Leave room"));
|
aLeaveRoom->setText(tr("&Leave room"));
|
||||||
aIgnoreUnregisteredUsers->setText(tr("&Ignore unregistered users in chat"));
|
aIgnoreUnregisteredUsers->setText(tr("&Ignore unregistered users in chat"));
|
||||||
aClearChat->setText(tr("&Clear chat"));
|
aClearChat->setText(tr("&Clear chat"));
|
||||||
|
aOpenChatSettings->setText(tr("Chat Settings..."));
|
||||||
}
|
}
|
||||||
|
|
||||||
void TabRoom::closeRequest()
|
void TabRoom::closeRequest()
|
||||||
|
@ -180,6 +188,12 @@ void TabRoom::actClearChat() {
|
||||||
chatView->clearChat();
|
chatView->clearChat();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TabRoom::actOpenChatSettings() {
|
||||||
|
DlgSettings settings(this);
|
||||||
|
settings.setTab(4);
|
||||||
|
settings.exec();
|
||||||
|
}
|
||||||
|
|
||||||
void TabRoom::processRoomEvent(const RoomEvent &event)
|
void TabRoom::processRoomEvent(const RoomEvent &event)
|
||||||
{
|
{
|
||||||
switch (static_cast<RoomEvent::RoomEventType>(getPbExtension(event))) {
|
switch (static_cast<RoomEvent::RoomEventType>(getPbExtension(event))) {
|
||||||
|
|
|
@ -44,6 +44,7 @@ private:
|
||||||
QMenu *roomMenu;
|
QMenu *roomMenu;
|
||||||
QAction *aLeaveRoom;
|
QAction *aLeaveRoom;
|
||||||
QAction *aIgnoreUnregisteredUsers;
|
QAction *aIgnoreUnregisteredUsers;
|
||||||
|
QAction *aOpenChatSettings;
|
||||||
QAction * aClearChat;
|
QAction * aClearChat;
|
||||||
QString sanitizeHtml(QString dirty) const;
|
QString sanitizeHtml(QString dirty) const;
|
||||||
signals:
|
signals:
|
||||||
|
@ -55,6 +56,7 @@ private slots:
|
||||||
void actLeaveRoom();
|
void actLeaveRoom();
|
||||||
void actIgnoreUnregisteredUsers();
|
void actIgnoreUnregisteredUsers();
|
||||||
void actClearChat();
|
void actClearChat();
|
||||||
|
void actOpenChatSettings();
|
||||||
void ignoreUnregisteredUsersChanged();
|
void ignoreUnregisteredUsersChanged();
|
||||||
|
|
||||||
void processListGamesEvent(const Event_ListGames &event);
|
void processListGamesEvent(const Event_ListGames &event);
|
||||||
|
|
Loading…
Reference in a new issue