Merge pull request #854 from ctrlaltca/pvtmsg_tab_name

Private Chat Tab Update
This commit is contained in:
Gavin Bisesi 2015-03-21 08:54:59 -04:00
commit b96604d85d
5 changed files with 181 additions and 148 deletions

View file

@ -51,7 +51,7 @@ void TabMessage::addMentionTag(QString mentionTag) {
void TabMessage::retranslateUi() void TabMessage::retranslateUi()
{ {
messageMenu->setTitle(tr("Personal &talk")); messageMenu->setTitle(tr("Private &chat"));
aLeave->setText(tr("&Leave")); aLeave->setText(tr("&Leave"));
} }
@ -68,7 +68,7 @@ QString TabMessage::getUserName() const
QString TabMessage::getTabText() const QString TabMessage::getTabText() const
{ {
return tr("Talking to %1").arg(QString::fromStdString(otherUserInfo->name())); return tr("%1 - Private chat").arg(QString::fromStdString(otherUserInfo->name()));
} }
void TabMessage::closeRequest() void TabMessage::closeRequest()

View file

@ -126,7 +126,10 @@ void TabSupervisor::retranslateUi()
for (int i = 0; i < tabs.size(); ++i) for (int i = 0; i < tabs.size(); ++i)
if (tabs[i]) { if (tabs[i]) {
setTabText(indexOf(tabs[i]), sanitizeTabName(tabs[i]->getTabText())); int idx = indexOf(tabs[i]);
QString tabText = tabs[i]->getTabText();
setTabText(idx, sanitizeTabName(tabText));
setTabToolTip(idx, sanitizeHtml(tabText));
tabs[i]->retranslateUi(); tabs[i]->retranslateUi();
} }
} }
@ -158,11 +161,25 @@ QString TabSupervisor::sanitizeTabName(QString dirty) const
return dirty.replace("&", "&&"); return dirty.replace("&", "&&");
} }
QString TabSupervisor::sanitizeHtml(QString dirty) const
{
return dirty
.replace("&", "&amp;")
.replace("<", "&lt;")
.replace(">", "&gt;")
.replace("\"", "&quot;");
}
int TabSupervisor::myAddTab(Tab *tab) int TabSupervisor::myAddTab(Tab *tab)
{ {
connect(tab, SIGNAL(userEvent(bool)), this, SLOT(tabUserEvent(bool))); connect(tab, SIGNAL(userEvent(bool)), this, SLOT(tabUserEvent(bool)));
connect(tab, SIGNAL(tabTextChanged(Tab *, QString)), this, SLOT(updateTabText(Tab *, QString))); connect(tab, SIGNAL(tabTextChanged(Tab *, QString)), this, SLOT(updateTabText(Tab *, QString)));
return addTab(tab, sanitizeTabName(tab->getTabText()));
QString tabText = tab->getTabText();
int idx = addTab(tab, sanitizeTabName(tabText));
setTabToolTip(idx, sanitizeHtml(tabText));
return idx;
} }
void TabSupervisor::start(const ServerInfo_User &_userInfo) void TabSupervisor::start(const ServerInfo_User &_userInfo)
@ -457,7 +474,9 @@ void TabSupervisor::tabUserEvent(bool globalEvent)
void TabSupervisor::updateTabText(Tab *tab, const QString &newTabText) void TabSupervisor::updateTabText(Tab *tab, const QString &newTabText)
{ {
setTabText(indexOf(tab), newTabText); int idx = indexOf(tab);
setTabText(idx, sanitizeTabName(newTabText));
setTabToolTip(idx, sanitizeHtml(newTabText));
} }
void TabSupervisor::processRoomEvent(const RoomEvent &event) void TabSupervisor::processRoomEvent(const RoomEvent &event)

View file

@ -59,6 +59,7 @@ private:
int myAddTab(Tab *tab); int myAddTab(Tab *tab);
void addCloseButtonToTab(Tab *tab, int tabIndex); void addCloseButtonToTab(Tab *tab, int tabIndex);
QString sanitizeTabName(QString dirty) const; QString sanitizeTabName(QString dirty) const;
QString sanitizeHtml(QString dirty) const;
public: public:
TabSupervisor(AbstractClient *_client, QWidget *parent = 0); TabSupervisor(AbstractClient *_client, QWidget *parent = 0);
~TabSupervisor(); ~TabSupervisor();

View file

@ -38,7 +38,7 @@ UserContextMenu::UserContextMenu(const TabSupervisor *_tabSupervisor, QWidget *p
void UserContextMenu::retranslateUi() void UserContextMenu::retranslateUi()
{ {
aDetails->setText(tr("User &details")); aDetails->setText(tr("User &details"));
aChat->setText(tr("Direct &chat")); aChat->setText(tr("Private &chat"));
aShowGames->setText(tr("Show this user's &games")); aShowGames->setText(tr("Show this user's &games"));
aAddToBuddyList->setText(tr("Add to &buddy list")); aAddToBuddyList->setText(tr("Add to &buddy list"));
aRemoveFromBuddyList->setText(tr("Remove from &buddy list")); aRemoveFromBuddyList->setText(tr("Remove from &buddy list"));

View file

@ -37,76 +37,81 @@
<context> <context>
<name>AppearanceSettingsPage</name> <name>AppearanceSettingsPage</name>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="345"/> <location filename="../src/dlg_settings.cpp" line="349"/>
<source>Zone background pictures</source> <source>Zone background pictures</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="346"/> <location filename="../src/dlg_settings.cpp" line="350"/>
<source>Hand background:</source> <source>Hand background:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="347"/> <location filename="../src/dlg_settings.cpp" line="351"/>
<source>Stack background:</source> <source>Stack background:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="348"/> <location filename="../src/dlg_settings.cpp" line="352"/>
<source>Table background:</source> <source>Table background:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="349"/> <location filename="../src/dlg_settings.cpp" line="353"/>
<source>Player info background:</source> <source>Player info background:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="350"/> <location filename="../src/dlg_settings.cpp" line="354"/>
<source>Card back:</source> <source>Card back:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="352"/> <location filename="../src/dlg_settings.cpp" line="356"/>
<source>Card rendering</source> <source>Card rendering</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="353"/> <location filename="../src/dlg_settings.cpp" line="357"/>
<source>Display card names on cards having a picture</source> <source>Display card names on cards having a picture</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/dlg_settings.cpp" line="355"/>
<source>Hand layout</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="356"/>
<source>Display hand horizontally (wastes space)</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="358"/> <location filename="../src/dlg_settings.cpp" line="358"/>
<source>Table grid layout</source> <source>Scale cards on mouse over</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="359"/>
<source>Invert vertical coordinate</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="360"/> <location filename="../src/dlg_settings.cpp" line="360"/>
<source>Hand layout</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="361"/>
<source>Display hand horizontally (wastes space)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="363"/>
<source>Table grid layout</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="364"/>
<source>Invert vertical coordinate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/dlg_settings.cpp" line="365"/>
<source>Minimum player count for multi-column layout:</source> <source>Minimum player count for multi-column layout:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="371"/> <location filename="../src/dlg_settings.cpp" line="376"/>
<location filename="../src/dlg_settings.cpp" line="387"/> <location filename="../src/dlg_settings.cpp" line="392"/>
<location filename="../src/dlg_settings.cpp" line="403"/> <location filename="../src/dlg_settings.cpp" line="408"/>
<location filename="../src/dlg_settings.cpp" line="419"/> <location filename="../src/dlg_settings.cpp" line="424"/>
<location filename="../src/dlg_settings.cpp" line="435"/> <location filename="../src/dlg_settings.cpp" line="440"/>
<source>Choose path</source> <source>Choose path</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -574,12 +579,12 @@ This is only saved for moderators and cannot be seen by the banned person.</sour
<context> <context>
<name>DeckEditorSettingsPage</name> <name>DeckEditorSettingsPage</name>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="565"/> <location filename="../src/dlg_settings.cpp" line="570"/>
<source>Enable &amp;price tag feature from deckbrew.com</source> <source>Enable &amp;price tag feature from deckbrew.com</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="566"/> <location filename="../src/dlg_settings.cpp" line="571"/>
<source>General</source> <source>General</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -1087,19 +1092,19 @@ This is only saved for moderators and cannot be seen by the banned person.</sour
<context> <context>
<name>DlgSettings</name> <name>DlgSettings</name>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="848"/> <location filename="../src/dlg_settings.cpp" line="853"/>
<location filename="../src/dlg_settings.cpp" line="854"/> <location filename="../src/dlg_settings.cpp" line="859"/>
<location filename="../src/dlg_settings.cpp" line="860"/> <location filename="../src/dlg_settings.cpp" line="865"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="802"/> <location filename="../src/dlg_settings.cpp" line="807"/>
<source>Unknown Error loading card database</source> <source>Unknown Error loading card database</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="811"/> <location filename="../src/dlg_settings.cpp" line="816"/>
<source>Your card database is invalid. <source>Your card database is invalid.
Cockatrice may not function correctly with an invalid database Cockatrice may not function correctly with an invalid database
@ -1110,7 +1115,7 @@ Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="818"/> <location filename="../src/dlg_settings.cpp" line="823"/>
<source>Your card database version is too old. <source>Your card database version is too old.
This can cause problems loading card information or images This can cause problems loading card information or images
@ -1121,7 +1126,7 @@ Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="825"/> <location filename="../src/dlg_settings.cpp" line="830"/>
<source>Your card database did not finish loading <source>Your card database did not finish loading
Please file a ticket at http://github.com/Daenyth/Cockatrice/issues with your cards.xml attached Please file a ticket at http://github.com/Daenyth/Cockatrice/issues with your cards.xml attached
@ -1130,21 +1135,21 @@ Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="831"/> <location filename="../src/dlg_settings.cpp" line="836"/>
<source>File Error loading your card database. <source>File Error loading your card database.
Would you like to change your database location setting?</source> Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="836"/> <location filename="../src/dlg_settings.cpp" line="841"/>
<source>Your card database was loaded but contains no cards. <source>Your card database was loaded but contains no cards.
Would you like to change your database location setting?</source> Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="841"/> <location filename="../src/dlg_settings.cpp" line="846"/>
<source>Unknown card database load status <source>Unknown card database load status
Please file a ticket at http://github.com/Daenyth/Cockatrice/issues Please file a ticket at http://github.com/Daenyth/Cockatrice/issues
@ -1153,42 +1158,42 @@ Would you like to change your database location setting?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="854"/> <location filename="../src/dlg_settings.cpp" line="859"/>
<source>The path to your deck directory is invalid. Would you like to go back and set the correct path?</source> <source>The path to your deck directory is invalid. Would you like to go back and set the correct path?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="860"/> <location filename="../src/dlg_settings.cpp" line="865"/>
<source>The path to your card pictures directory is invalid. Would you like to go back and set the correct path?</source> <source>The path to your card pictures directory is invalid. Would you like to go back and set the correct path?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="869"/> <location filename="../src/dlg_settings.cpp" line="874"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="871"/> <location filename="../src/dlg_settings.cpp" line="876"/>
<source>General</source> <source>General</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="872"/> <location filename="../src/dlg_settings.cpp" line="877"/>
<source>Appearance</source> <source>Appearance</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="873"/> <location filename="../src/dlg_settings.cpp" line="878"/>
<source>User interface</source> <source>User interface</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="874"/> <location filename="../src/dlg_settings.cpp" line="879"/>
<source>Deck editor</source> <source>Deck editor</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="875"/> <location filename="../src/dlg_settings.cpp" line="880"/>
<source>Chat Settings</source> <source>Chat Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -1196,100 +1201,100 @@ Would you like to change your database location setting?</source>
<context> <context>
<name>GameSelector</name> <name>GameSelector</name>
<message> <message>
<location filename="../src/gameselector.cpp" line="193"/> <location filename="../src/gameselector.cpp" line="203"/>
<source>C&amp;reate</source> <source>C&amp;reate</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="194"/> <location filename="../src/gameselector.cpp" line="204"/>
<source>&amp;Join</source> <source>&amp;Join</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="136"/> <location filename="../src/gameselector.cpp" line="146"/>
<location filename="../src/gameselector.cpp" line="137"/> <location filename="../src/gameselector.cpp" line="147"/>
<location filename="../src/gameselector.cpp" line="138"/> <location filename="../src/gameselector.cpp" line="148"/>
<location filename="../src/gameselector.cpp" line="139"/> <location filename="../src/gameselector.cpp" line="149"/>
<location filename="../src/gameselector.cpp" line="140"/> <location filename="../src/gameselector.cpp" line="150"/>
<location filename="../src/gameselector.cpp" line="141"/> <location filename="../src/gameselector.cpp" line="151"/>
<location filename="../src/gameselector.cpp" line="142"/> <location filename="../src/gameselector.cpp" line="152"/>
<location filename="../src/gameselector.cpp" line="143"/> <location filename="../src/gameselector.cpp" line="153"/>
<location filename="../src/gameselector.cpp" line="173"/> <location filename="../src/gameselector.cpp" line="183"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="136"/> <location filename="../src/gameselector.cpp" line="146"/>
<source>Please join the appropriate room first.</source> <source>Please join the appropriate room first.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="137"/> <location filename="../src/gameselector.cpp" line="147"/>
<source>Wrong password.</source> <source>Wrong password.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="138"/> <location filename="../src/gameselector.cpp" line="148"/>
<source>Spectators are not allowed in this game.</source> <source>Spectators are not allowed in this game.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="139"/> <location filename="../src/gameselector.cpp" line="149"/>
<source>The game is already full.</source> <source>The game is already full.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="140"/> <location filename="../src/gameselector.cpp" line="150"/>
<source>The game does not exist any more.</source> <source>The game does not exist any more.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="141"/> <location filename="../src/gameselector.cpp" line="151"/>
<source>This game is only open to registered users.</source> <source>This game is only open to registered users.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="142"/> <location filename="../src/gameselector.cpp" line="152"/>
<source>This game is only open to its creator&apos;s buddies.</source> <source>This game is only open to its creator&apos;s buddies.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="143"/> <location filename="../src/gameselector.cpp" line="153"/>
<source>You are being ignored by the creator of this game.</source> <source>You are being ignored by the creator of this game.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="160"/> <location filename="../src/gameselector.cpp" line="170"/>
<source>Join game</source> <source>Join game</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="160"/> <location filename="../src/gameselector.cpp" line="170"/>
<source>Password:</source> <source>Password:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="173"/> <location filename="../src/gameselector.cpp" line="183"/>
<source>Please join the respective room first.</source> <source>Please join the respective room first.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="189"/> <location filename="../src/gameselector.cpp" line="199"/>
<source>Games</source> <source>Games</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="190"/> <location filename="../src/gameselector.cpp" line="200"/>
<source>&amp;Filter games</source> <source>&amp;Filter games</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="191"/> <location filename="../src/gameselector.cpp" line="201"/>
<source>C&amp;lear filter</source> <source>C&amp;lear filter</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/gameselector.cpp" line="195"/> <location filename="../src/gameselector.cpp" line="205"/>
<source>J&amp;oin as spectator</source> <source>J&amp;oin as spectator</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -1776,16 +1781,6 @@ Local version is %1, remote version is %2.</source>
<source>&amp;Help</source> <source>&amp;Help</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/window_main.cpp" line="427"/>
<source>Are you sure?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/window_main.cpp" line="427"/>
<source>There are still open games. Are you sure you want to quit?</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>MessageLogWidget</name> <name>MessageLogWidget</name>
@ -2995,62 +2990,62 @@ Local version is %1, remote version is %2.</source>
<context> <context>
<name>MessagesSettingsPage</name> <name>MessagesSettingsPage</name>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="688"/> <location filename="../src/dlg_settings.cpp" line="693"/>
<source>&amp;Add</source> <source>&amp;Add</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="689"/> <location filename="../src/dlg_settings.cpp" line="694"/>
<source>&amp;Remove</source> <source>&amp;Remove</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="690"/> <location filename="../src/dlg_settings.cpp" line="695"/>
<source>Chat settings</source> <source>Chat settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="691"/> <location filename="../src/dlg_settings.cpp" line="696"/>
<source>Enable chat mentions</source> <source>Enable chat mentions</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="692"/> <location filename="../src/dlg_settings.cpp" line="697"/>
<source>In-game message macros</source> <source>In-game message macros</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="693"/> <location filename="../src/dlg_settings.cpp" line="698"/>
<source>Ignore unregistered users in main chat</source> <source>Ignore unregistered users in main chat</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="694"/> <location filename="../src/dlg_settings.cpp" line="699"/>
<source>Ignore chat room messages sent by unregistered users.</source> <source>Ignore chat room messages sent by unregistered users.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="695"/> <location filename="../src/dlg_settings.cpp" line="700"/>
<source>Ignore private messages sent by unregistered users.</source> <source>Ignore private messages sent by unregistered users.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="696"/> <location filename="../src/dlg_settings.cpp" line="701"/>
<source>Invert text color</source> <source>Invert text color</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="697"/> <location filename="../src/dlg_settings.cpp" line="702"/>
<source>(Color is hexadecimal)</source> <source>(Color is hexadecimal)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="671"/> <location filename="../src/dlg_settings.cpp" line="676"/>
<source>Add message</source> <source>Add message</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="671"/> <location filename="../src/dlg_settings.cpp" line="676"/>
<source>Message:</source> <source>Message:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -3609,7 +3604,7 @@ Local version is %1, remote version is %2.</source>
<location filename="../src/player.cpp" line="861"/> <location filename="../src/player.cpp" line="861"/>
<location filename="../src/player.cpp" line="882"/> <location filename="../src/player.cpp" line="882"/>
<location filename="../src/player.cpp" line="911"/> <location filename="../src/player.cpp" line="911"/>
<location filename="../src/player.cpp" line="2113"/> <location filename="../src/player.cpp" line="2114"/>
<source>Number:</source> <source>Number:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -3634,27 +3629,27 @@ Local version is %1, remote version is %2.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/player.cpp" line="1959"/> <location filename="../src/player.cpp" line="1960"/>
<source>Set power/toughness</source> <source>Set power/toughness</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/player.cpp" line="1959"/> <location filename="../src/player.cpp" line="1960"/>
<source>Please enter the new PT:</source> <source>Please enter the new PT:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/player.cpp" line="2031"/> <location filename="../src/player.cpp" line="2032"/>
<source>Set annotation</source> <source>Set annotation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/player.cpp" line="2031"/> <location filename="../src/player.cpp" line="2032"/>
<source>Please enter the new annotation:</source> <source>Please enter the new annotation:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/player.cpp" line="2113"/> <location filename="../src/player.cpp" line="2114"/>
<source>Set counters</source> <source>Set counters</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -4074,42 +4069,42 @@ Local version is %1, remote version is %2.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="382"/> <location filename="../src/tab_deck_editor.cpp" line="383"/>
<source>Are you sure?</source> <source>Are you sure?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="383"/> <location filename="../src/tab_deck_editor.cpp" line="384"/>
<source>The decklist has been modified. <source>The decklist has been modified.
Do you want to save the changes?</source> Do you want to save the changes?</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="416"/> <location filename="../src/tab_deck_editor.cpp" line="417"/>
<source>Load deck</source> <source>Load deck</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="435"/> <location filename="../src/tab_deck_editor.cpp" line="436"/>
<location filename="../src/tab_deck_editor.cpp" line="459"/> <location filename="../src/tab_deck_editor.cpp" line="460"/>
<location filename="../src/tab_deck_editor.cpp" line="479"/> <location filename="../src/tab_deck_editor.cpp" line="480"/>
<source>Error</source> <source>Error</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="435"/> <location filename="../src/tab_deck_editor.cpp" line="436"/>
<source>The deck could not be saved.</source> <source>The deck could not be saved.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="459"/> <location filename="../src/tab_deck_editor.cpp" line="460"/>
<location filename="../src/tab_deck_editor.cpp" line="479"/> <location filename="../src/tab_deck_editor.cpp" line="480"/>
<source>The deck could not be saved. <source>The deck could not be saved.
Please check that the directory is writable and try again.</source> Please check that the directory is writable and try again.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_deck_editor.cpp" line="465"/> <location filename="../src/tab_deck_editor.cpp" line="466"/>
<source>Save deck</source> <source>Save deck</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -4342,17 +4337,17 @@ Please enter a name:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_game.cpp" line="1096"/> <location filename="../src/tab_game.cpp" line="1095"/>
<source>You have been kicked out of the game.</source> <source>You have been kicked out of the game.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_game.cpp" line="1190"/> <location filename="../src/tab_game.cpp" line="1189"/>
<source>Replay %1: %2</source> <source>Replay %1: %2</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_game.cpp" line="1192"/> <location filename="../src/tab_game.cpp" line="1191"/>
<source>Game %1: %2</source> <source>Game %1: %2</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -4361,7 +4356,7 @@ Please enter a name:</source>
<name>TabMessage</name> <name>TabMessage</name>
<message> <message>
<location filename="../src/tab_message.cpp" line="54"/> <location filename="../src/tab_message.cpp" line="54"/>
<source>Personal &amp;talk</source> <source>Private &amp;chat</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
@ -4369,6 +4364,11 @@ Please enter a name:</source>
<source>&amp;Leave</source> <source>&amp;Leave</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/tab_message.cpp" line="71"/>
<source>%1 - Private chat</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../src/tab_message.cpp" line="98"/> <location filename="../src/tab_message.cpp" line="98"/>
<source>This user is ignoring you.</source> <source>This user is ignoring you.</source>
@ -4384,11 +4384,6 @@ Please enter a name:</source>
<source>%1 has joined the server.</source> <source>%1 has joined the server.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../src/tab_message.cpp" line="71"/>
<source>Talking to %1</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>TabReplays</name> <name>TabReplays</name>
@ -4453,37 +4448,42 @@ Please enter a name:</source>
<context> <context>
<name>TabRoom</name> <name>TabRoom</name>
<message> <message>
<location filename="../src/tab_room.cpp" line="119"/> <location filename="../src/tab_room.cpp" line="57"/>
<source>&amp;Say:</source> <source>F12</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="120"/> <location filename="../src/tab_room.cpp" line="120"/>
<source>Chat</source> <source>&amp;Say:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="121"/> <location filename="../src/tab_room.cpp" line="121"/>
<source>&amp;Room</source> <source>Chat</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="122"/> <location filename="../src/tab_room.cpp" line="122"/>
<source>&amp;Leave room</source> <source>&amp;Room</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="123"/> <location filename="../src/tab_room.cpp" line="123"/>
<source>&amp;Clear chat</source> <source>&amp;Leave room</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="124"/> <location filename="../src/tab_room.cpp" line="124"/>
<source>&amp;Clear chat</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/tab_room.cpp" line="125"/>
<source>Chat Settings...</source> <source>Chat Settings...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/tab_room.cpp" line="163"/> <location filename="../src/tab_room.cpp" line="164"/>
<source>You are flooding the chat. Please wait a couple of seconds.</source> <source>You are flooding the chat. Please wait a couple of seconds.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -4496,6 +4496,19 @@ Please enter a name:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>TabSupervisor</name>
<message>
<location filename="../src/tab_supervisor.cpp" line="140"/>
<source>Are you sure?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/tab_supervisor.cpp" line="140"/>
<source>There are still open games. Are you sure you want to quit?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>TabUserLists</name> <name>TabUserLists</name>
<message> <message>
@ -4523,7 +4536,7 @@ Please enter a name:</source>
</message> </message>
<message> <message>
<location filename="../src/user_context_menu.cpp" line="41"/> <location filename="../src/user_context_menu.cpp" line="41"/>
<source>Direct &amp;chat</source> <source>Private &amp;chat</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
@ -4649,62 +4662,62 @@ Please enter a name:</source>
<context> <context>
<name>UserInterfaceSettingsPage</name> <name>UserInterfaceSettingsPage</name>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="515"/> <location filename="../src/dlg_settings.cpp" line="520"/>
<source>General interface settings</source> <source>General interface settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="516"/> <location filename="../src/dlg_settings.cpp" line="521"/>
<source>Enable notifications in taskbar</source> <source>Enable notifications in taskbar</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="517"/> <location filename="../src/dlg_settings.cpp" line="522"/>
<source>Notify in the taskbar for game events while you are spectating</source> <source>Notify in the taskbar for game events while you are spectating</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="518"/> <location filename="../src/dlg_settings.cpp" line="523"/>
<source>&amp;Double-click cards to play them (instead of single-click)</source> <source>&amp;Double-click cards to play them (instead of single-click)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="519"/> <location filename="../src/dlg_settings.cpp" line="524"/>
<source>&amp;Play all nonlands onto the stack (not the battlefield) by default</source> <source>&amp;Play all nonlands onto the stack (not the battlefield) by default</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="520"/> <location filename="../src/dlg_settings.cpp" line="525"/>
<source>Animation settings</source> <source>Animation settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="521"/> <location filename="../src/dlg_settings.cpp" line="526"/>
<source>&amp;Tap/untap animation</source> <source>&amp;Tap/untap animation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="522"/> <location filename="../src/dlg_settings.cpp" line="527"/>
<source>Enable &amp;sounds</source> <source>Enable &amp;sounds</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="523"/> <location filename="../src/dlg_settings.cpp" line="528"/>
<source>Path to sounds directory:</source> <source>Path to sounds directory:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="524"/> <location filename="../src/dlg_settings.cpp" line="529"/>
<source>Test system sound engine</source> <source>Test system sound engine</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="525"/> <location filename="../src/dlg_settings.cpp" line="530"/>
<source>Sound settings</source> <source>Sound settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/dlg_settings.cpp" line="536"/> <location filename="../src/dlg_settings.cpp" line="541"/>
<source>Choose path</source> <source>Choose path</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>