Use additional status text not only for devs

This commit is contained in:
Martchus 2018-07-30 21:37:26 +02:00
parent 7598fef709
commit 59924f431c
4 changed files with 82 additions and 60 deletions

View File

@ -6,6 +6,7 @@
#include "../../model/syncthingicons.h"
#include <QCoreApplication>
#include <QStringBuilder>
#include <QIcon>
using namespace Data;
@ -18,13 +19,28 @@ StatusInfo::StatusInfo()
{
}
void StatusInfo::recomputeAdditionalStatusText()
{
if (m_additionalStatusInfo.isEmpty()) {
m_additionalStatusText = m_additionalDeviceInfo;
} else if (m_additionalDeviceInfo.isEmpty()) {
m_additionalStatusText = m_additionalStatusInfo;
} else if (m_additionalStatusInfo.isEmpty() && m_additionalDeviceInfo.isEmpty()) {
m_additionalStatusText.clear();
} else {
m_additionalStatusText = m_additionalStatusInfo % QChar('\n') % m_additionalDeviceInfo;
}
}
void StatusInfo::updateConnectionStatus(const SyncthingConnection &connection)
{
m_additionalStatusText.clear();
switch (connection.status()) {
case SyncthingStatus::Disconnected:
if (connection.autoReconnectInterval() > 0) {
m_statusText = QCoreApplication::translate("QtGui::StatusInfo", "Not connected to Syncthing - trying to reconnect every %1 ms")
.arg(connection.autoReconnectInterval());
m_statusText = QCoreApplication::translate("QtGui::StatusInfo", "Not connected to Syncthing");
m_additionalStatusInfo = QCoreApplication::translate("QtGui::StatusInfo", "Trying to reconnect every %1 ms").arg(connection.autoReconnectInterval());
} else {
m_statusText = QCoreApplication::translate("QtGui::StatusInfo", "Not connected to Syncthing");
}
@ -39,7 +55,8 @@ void StatusInfo::updateConnectionStatus(const SyncthingConnection &connection)
switch (connection.status()) {
case SyncthingStatus::Synchronizing:
m_statusText
= QCoreApplication::translate("QtGui::StatusInfo", "Synchronization is ongoing but at least one directory is out of sync");
= QCoreApplication::translate("QtGui::StatusInfo", "Synchronization is ongoing");
m_additionalStatusInfo = QCoreApplication::translate("QtGui::StatusInfo", "At least one directory is out of sync");
m_statusIcon = &statusIcons().errorSync;
break;
default:
@ -73,11 +90,13 @@ void StatusInfo::updateConnectionStatus(const SyncthingConnection &connection)
}
}
}
recomputeAdditionalStatusText();
}
void StatusInfo::updateConnectedDevices(const SyncthingConnection &connection)
{
m_additionalStatusText.clear();
m_additionalDeviceInfo.clear();
switch (connection.status()) {
case SyncthingStatus::Idle:
@ -89,7 +108,7 @@ void StatusInfo::updateConnectedDevices(const SyncthingConnection &connection)
// handle case when not connected to other devices
if (connectedDevices.empty()) {
m_additionalStatusText = QCoreApplication::translate("QtGui::StatusInfo", "Not connected to other devices");
m_additionalDeviceInfo = QCoreApplication::translate("QtGui::StatusInfo", "Not connected to other devices");
return;
}
@ -112,22 +131,25 @@ void StatusInfo::updateConnectedDevices(const SyncthingConnection &connection)
// update status text
if (deviceNames.empty()) {
m_additionalStatusText
m_additionalDeviceInfo
= QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1 devices", nullptr, deviceCount).arg(deviceCount);
} else if (deviceNames.size() < deviceCount) {
m_additionalStatusText
m_additionalDeviceInfo
= QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1 and %2 other devices", nullptr, deviceCount - deviceNames.size())
.arg(deviceNames.join(QStringLiteral(", ")))
.arg(deviceCount - deviceNames.size());
} else if (deviceNames.size() == 2) {
m_additionalStatusText = QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1 and %2", nullptr, deviceCount)
m_additionalDeviceInfo = QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1 and %2", nullptr, deviceCount)
.arg(deviceNames[0], deviceNames[1]);
} else if (deviceNames.size() == 1) {
m_additionalStatusText = QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1", nullptr, deviceCount).arg(deviceNames[0]);
m_additionalDeviceInfo = QCoreApplication::translate("QtGui::StatusInfo", "Conntected to %1", nullptr, deviceCount).arg(deviceNames[0]);
}
return;
break;
}
default:;
}
recomputeAdditionalStatusText();
}
} // namespace QtGui

View File

@ -25,7 +25,11 @@ public:
void updateConnectedDevices(const Data::SyncthingConnection &connection);
private:
void recomputeAdditionalStatusText();
QString m_statusText;
QString m_additionalStatusInfo;
QString m_additionalDeviceInfo;
QString m_additionalStatusText;
const QIcon *m_statusIcon;
};

View File

@ -614,67 +614,65 @@
<context>
<name>QtGui::StatusInfo</name>
<message>
<location filename="../misc/statusinfo.cpp" line="16"/>
<location filename="../misc/statusinfo.cpp" line="17"/>
<source>Initializing ...</source>
<translation>Initialisierung ...</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="26"/>
<source>Not connected to Syncthing - trying to reconnect every %1 ms</source>
<translation>Nicht mit Syncthing verbunden - versuche alle %1 ms zu verbinden</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="29"/>
<location filename="../misc/statusinfo.cpp" line="42"/>
<location filename="../misc/statusinfo.cpp" line="45"/>
<source>Not connected to Syncthing</source>
<translation>Nicht mit Syncthing verbunden</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="34"/>
<location filename="../misc/statusinfo.cpp" line="50"/>
<source>Reconnecting ...</source>
<translation>Neu verbinden ...</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="42"/>
<source>Synchronization is ongoing but at least one directory is out of sync</source>
<translation>Synchronisiert, aber mind. ein Verzeichnis hat Fehler</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="46"/>
<location filename="../misc/statusinfo.cpp" line="59"/>
<location filename="../misc/statusinfo.cpp" line="63"/>
<source>At least one directory is out of sync</source>
<translation>Mind. ein Verzeichnis hat Fehler</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="50"/>
<location filename="../misc/statusinfo.cpp" line="67"/>
<source>Notifications available</source>
<translation>Es gibt neue Benachrichtigungen</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="55"/>
<location filename="../misc/statusinfo.cpp" line="72"/>
<source>Syncthing is idling</source>
<translation>Syncthing ist im Leerlauf</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="59"/>
<location filename="../misc/statusinfo.cpp" line="76"/>
<source>Syncthing is scanning</source>
<translation>Syncthing scannt</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="63"/>
<location filename="../misc/statusinfo.cpp" line="80"/>
<source>At least one device is paused</source>
<translation>Mind. ein Gerät ist pausiert</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="67"/>
<location filename="../misc/statusinfo.cpp" line="58"/>
<location filename="../misc/statusinfo.cpp" line="84"/>
<source>Synchronization is ongoing</source>
<translation>Syncthing synchronisiert</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="71"/>
<location filename="../misc/statusinfo.cpp" line="43"/>
<source>Trying to reconnect every %1 ms</source>
<translation type="unfinished">Versuche alle %1 ms zu verbinden</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="88"/>
<source>Status is unknown</source>
<translation>Status ist unbekannt</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="116"/>
<location filename="../misc/statusinfo.cpp" line="135"/>
<source>Conntected to %1 devices</source>
<translation>
<numerusform>Mit %1 Gerät verbunden</numerusform>
@ -682,7 +680,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="119"/>
<location filename="../misc/statusinfo.cpp" line="138"/>
<source>Conntected to %1 and %2 other devices</source>
<translation>
<numerusform>Mit %1 und einem weiteren Gerät verbunden</numerusform>
@ -690,7 +688,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="123"/>
<location filename="../misc/statusinfo.cpp" line="142"/>
<source>Conntected to %1 and %2</source>
<translation>
<numerusform>Mit %1 und %2 verbunden</numerusform>
@ -698,7 +696,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="126"/>
<location filename="../misc/statusinfo.cpp" line="145"/>
<source>Conntected to %1</source>
<translation>
<numerusform>Mit %1 verbunden</numerusform>
@ -706,7 +704,7 @@
</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="92"/>
<location filename="../misc/statusinfo.cpp" line="111"/>
<source>Not connected to other devices</source>
<translation>Nicht mit anderen Geräten verbunden</translation>
</message>

View File

@ -612,67 +612,65 @@
<context>
<name>QtGui::StatusInfo</name>
<message>
<location filename="../misc/statusinfo.cpp" line="16"/>
<location filename="../misc/statusinfo.cpp" line="17"/>
<source>Initializing ...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="26"/>
<source>Not connected to Syncthing - trying to reconnect every %1 ms</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="29"/>
<location filename="../misc/statusinfo.cpp" line="42"/>
<location filename="../misc/statusinfo.cpp" line="45"/>
<source>Not connected to Syncthing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="34"/>
<location filename="../misc/statusinfo.cpp" line="50"/>
<source>Reconnecting ...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="42"/>
<source>Synchronization is ongoing but at least one directory is out of sync</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="46"/>
<location filename="../misc/statusinfo.cpp" line="59"/>
<location filename="../misc/statusinfo.cpp" line="63"/>
<source>At least one directory is out of sync</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="50"/>
<location filename="../misc/statusinfo.cpp" line="67"/>
<source>Notifications available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="55"/>
<location filename="../misc/statusinfo.cpp" line="72"/>
<source>Syncthing is idling</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="59"/>
<location filename="../misc/statusinfo.cpp" line="76"/>
<source>Syncthing is scanning</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="63"/>
<location filename="../misc/statusinfo.cpp" line="80"/>
<source>At least one device is paused</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="67"/>
<location filename="../misc/statusinfo.cpp" line="58"/>
<location filename="../misc/statusinfo.cpp" line="84"/>
<source>Synchronization is ongoing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="71"/>
<location filename="../misc/statusinfo.cpp" line="43"/>
<source>Trying to reconnect every %1 ms</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="88"/>
<source>Status is unknown</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="116"/>
<location filename="../misc/statusinfo.cpp" line="135"/>
<source>Conntected to %1 devices</source>
<translation>
<numerusform>Conntected to %1 device</numerusform>
@ -680,7 +678,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="119"/>
<location filename="../misc/statusinfo.cpp" line="138"/>
<source>Conntected to %1 and %2 other devices</source>
<translation>
<numerusform>Conntected to %1 and %2 other device</numerusform>
@ -688,7 +686,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="123"/>
<location filename="../misc/statusinfo.cpp" line="142"/>
<source>Conntected to %1 and %2</source>
<translation type="unfinished">
<numerusform></numerusform>
@ -696,7 +694,7 @@
</translation>
</message>
<message numerus="yes">
<location filename="../misc/statusinfo.cpp" line="126"/>
<location filename="../misc/statusinfo.cpp" line="145"/>
<source>Conntected to %1</source>
<translation type="unfinished">
<numerusform></numerusform>
@ -704,7 +702,7 @@
</translation>
</message>
<message>
<location filename="../misc/statusinfo.cpp" line="92"/>
<location filename="../misc/statusinfo.cpp" line="111"/>
<source>Not connected to other devices</source>
<translation type="unfinished"></translation>
</message>