mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2025-12-24 03:57:21 -08:00
Add client UI setting for idleclientdisconnect (#2244)
* Add client UI setting for idleclientdisconnect Added disabled option in client UI for client disconnect. * Updated settings text Updated settings text for clarity. * Updated descripton text (again) Per request for clarity
This commit is contained in:
@@ -398,12 +398,16 @@ UserInterfaceSettingsPage::UserInterfaceSettingsPage()
|
||||
annotateTokensCheckBox.setChecked(settingsCache->getAnnotateTokens());
|
||||
connect(&annotateTokensCheckBox, SIGNAL(stateChanged(int)), settingsCache, SLOT(setAnnotateTokens(int)));
|
||||
|
||||
idleClientTimeOutCheckBox.setChecked(settingsCache->getIdleClientTimeOutEnabled());
|
||||
connect(&idleClientTimeOutCheckBox, SIGNAL(stateChanged(int)), settingsCache, SLOT(setIdleClientTimeOutEnabled(int)));
|
||||
|
||||
QGridLayout *generalGrid = new QGridLayout;
|
||||
generalGrid->addWidget(¬ificationsEnabledCheckBox, 0, 0);
|
||||
generalGrid->addWidget(&specNotificationsEnabledCheckBox, 1, 0);
|
||||
generalGrid->addWidget(&doubleClickToPlayCheckBox, 2, 0);
|
||||
generalGrid->addWidget(&playToStackCheckBox, 3, 0);
|
||||
generalGrid->addWidget(&annotateTokensCheckBox, 4, 0);
|
||||
generalGrid->addWidget(&idleClientTimeOutCheckBox, 5, 0);
|
||||
|
||||
generalGroupBox = new QGroupBox;
|
||||
generalGroupBox->setLayout(generalGrid);
|
||||
@@ -438,6 +442,7 @@ void UserInterfaceSettingsPage::retranslateUi()
|
||||
annotateTokensCheckBox.setText(tr("Annotate card text on tokens"));
|
||||
animationGroupBox->setTitle(tr("Animation settings"));
|
||||
tapAnimationCheckBox.setText(tr("&Tap/untap animation"));
|
||||
idleClientTimeOutCheckBox.setText(tr("Disconnect from server if idle for 1 hour"));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -112,6 +112,7 @@ private:
|
||||
QCheckBox playToStackCheckBox;
|
||||
QCheckBox annotateTokensCheckBox;
|
||||
QCheckBox tapAnimationCheckBox;
|
||||
QCheckBox idleClientTimeOutCheckBox;
|
||||
QGroupBox *generalGroupBox;
|
||||
QGroupBox *animationGroupBox;
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ RemoteClient::RemoteClient(QObject *parent)
|
||||
idleTimer->setInterval(idlekeepalive * 1000);
|
||||
connect(idleTimer, SIGNAL(timeout()), this, SLOT(doIdleTimeOut()));
|
||||
connect(this, SIGNAL(resetIdleTimerClock()), idleTimer, SLOT(start()));
|
||||
|
||||
|
||||
socket = new QTcpSocket(this);
|
||||
socket->setSocketOption(QAbstractSocket::LowDelayOption, 1);
|
||||
connect(socket, SIGNAL(connected()), this, SLOT(slotConnected()));
|
||||
@@ -390,8 +390,11 @@ QString RemoteClient::getSrvClientID(const QString _hostname)
|
||||
|
||||
void RemoteClient::doIdleTimeOut()
|
||||
{
|
||||
doDisconnectFromServer();
|
||||
emit idleTimeout();
|
||||
if (settingsCache->getIdleClientTimeOutEnabled()) {
|
||||
doDisconnectFromServer();
|
||||
emit idleTimeout();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void RemoteClient::resetIdleTimer()
|
||||
|
||||
@@ -250,6 +250,7 @@ SettingsCache::SettingsCache()
|
||||
spectatorsCanSeeEverything = settings->value("game/spectatorscanseeeverything", false).toBool();
|
||||
rememberGameSettings = settings->value("game/remembergamesettings", true).toBool();
|
||||
clientID = settings->value("personal/clientid", "notset").toString();
|
||||
idleClientTimeOutEnabled = settings->value("interface/idleClientTimeOutEnabled", true).toBool();
|
||||
}
|
||||
|
||||
void SettingsCache::setCardInfoViewMode(const int _viewMode) {
|
||||
@@ -391,6 +392,12 @@ void SettingsCache::setAnnotateTokens(int _annotateTokens)
|
||||
settings->setValue("interface/annotatetokens", annotateTokens);
|
||||
}
|
||||
|
||||
void SettingsCache::setIdleClientTimeOutEnabled(int _idleClientTimeOutEnabled)
|
||||
{
|
||||
idleClientTimeOutEnabled = _idleClientTimeOutEnabled;
|
||||
settings->setValue("interface/idleClientTimeOutEnabled", idleClientTimeOutEnabled);
|
||||
}
|
||||
|
||||
void SettingsCache::setTabGameSplitterSizes(const QByteArray &_tabGameSplitterSizes)
|
||||
{
|
||||
tabGameSplitterSizes = _tabGameSplitterSizes;
|
||||
|
||||
@@ -64,6 +64,7 @@ private:
|
||||
bool doubleClickToPlay;
|
||||
bool playToStack;
|
||||
bool annotateTokens;
|
||||
bool idleClientTimeOutEnabled;
|
||||
QByteArray tabGameSplitterSizes;
|
||||
bool displayCardNames;
|
||||
bool horizontalHand;
|
||||
@@ -131,6 +132,7 @@ public:
|
||||
bool getNotificationsEnabled() const { return notificationsEnabled; }
|
||||
bool getSpectatorNotificationsEnabled() const { return spectatorNotificationsEnabled; }
|
||||
bool getNotifyAboutUpdates() const { return notifyAboutUpdates; }
|
||||
bool getIdleClientTimeOutEnabled() const { return idleClientTimeOutEnabled; }
|
||||
|
||||
bool getDoubleClickToPlay() const { return doubleClickToPlay; }
|
||||
bool getPlayToStack() const { return playToStack; }
|
||||
@@ -207,6 +209,7 @@ public slots:
|
||||
void setDoubleClickToPlay(int _doubleClickToPlay);
|
||||
void setPlayToStack(int _playToStack);
|
||||
void setAnnotateTokens(int _annotateTokens);
|
||||
void setIdleClientTimeOutEnabled(int _idleClientTimeOutEnabled);
|
||||
void setTabGameSplitterSizes(const QByteArray &_tabGameSplitterSizes);
|
||||
void setDisplayCardNames(int _displayCardNames);
|
||||
void setHorizontalHand(int _horizontalHand);
|
||||
|
||||
Reference in New Issue
Block a user