_progressValue(-1)
{
qRegisterMetaType<ConnectionState>("CoreConnection::ConnectionState");
+}
+
+void CoreConnection::init() {
+ Client::signalProxy()->setHeartBeatInterval(30);
+ connect(Client::signalProxy(), SIGNAL(disconnected()), SLOT(coreSocketDisconnected()));
+ connect(Client::signalProxy(), SIGNAL(lagUpdated(int)), SIGNAL(lagUpdated(int)));
_reconnectTimer.setSingleShot(true);
connect(&_reconnectTimer, SIGNAL(timeout()), SLOT(reconnectTimeout()));
connect(Solid::Networking::notifier(), SIGNAL(statusChanged(Solid::Networking::Status)),
SLOT(solidNetworkStatusChanged(Solid::Networking::Status)));
#endif
-}
-
-void CoreConnection::init() {
- Client::signalProxy()->setHeartBeatInterval(30);
- connect(Client::signalProxy(), SIGNAL(disconnected()), SLOT(coreSocketDisconnected()));
CoreConnectionSettings s;
s.initAndNotify("PingTimeoutInterval", this, SLOT(pingTimeoutIntervalChanged(QVariant)), 60);
setProgressMaximum(-1); // disable
setState(Disconnected);
+ emit lagUpdated(-1);
emit connectionMsg(tr("Disconnected from core."));
emit encrypted(false);
void stateChanged(CoreConnection::ConnectionState);
void encrypted(bool isEncrypted = true);
void synchronized();
+ void lagUpdated(int msecs);
void connectionError(const QString &errorMsg);
void connectionErrorPopup(const QString &errorMsg);
connect(coreConnection(), SIGNAL(stateChanged(CoreConnection::ConnectionState)), SLOT(connectionStateChanged(CoreConnection::ConnectionState)));
connect(coreConnection(), SIGNAL(connectionError(QString)), ui.messageLabel, SLOT(setText(QString)));
- connect(Client::signalProxy(), SIGNAL(lagUpdated(int)), SLOT(updateLag(int)));
+ connect(coreConnection(), SIGNAL(lagUpdated(int)), SLOT(updateLag(int)));
}
void CoreConnectionStatusWidget::update() {
void CoreConnectionStatusWidget::updateLag(int msecs) {
if(msecs >= 0) {
- ui.lagLabel->setText(tr("(Lag: %1 ms)").arg(msecs));
+ QString unit = msecs >= 100 ? tr("s", "seconds") : tr("ms", "milliseconds");
+ ui.lagLabel->setText(tr("(Lag: %1 %2)").arg(msecs >= 100 ? msecs / 1000. : msecs, 0, 'f', (int)(msecs >= 100)).arg(unit));
if(!ui.lagLabel->isVisible())
ui.lagLabel->show();
} else {