Allow moving connection configurations up and down

This commit is contained in:
Martchus 2017-09-07 16:42:24 +02:00
parent fe0688cb27
commit 408f77f844
7 changed files with 430 additions and 295 deletions

View File

@ -4,194 +4,194 @@
<context> <context>
<name>Data::SyncthingConnection</name> <name>Data::SyncthingConnection</name>
<message> <message>
<location filename="../syncthingconnection.cpp" line="109"/> <location filename="../syncthingconnection.cpp" line="110"/>
<source>disconnected</source> <source>disconnected</source>
<translation>Verbindung getrennt</translation> <translation>Verbindung getrennt</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="111"/> <location filename="../syncthingconnection.cpp" line="112"/>
<source>reconnecting</source> <source>reconnecting</source>
<translation>Verbindung wird hergestellt</translation> <translation>Verbindung wird hergestellt</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="113"/> <location filename="../syncthingconnection.cpp" line="114"/>
<source>connected</source> <source>connected</source>
<translation>verbunden</translation> <translation>verbunden</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="115"/> <location filename="../syncthingconnection.cpp" line="116"/>
<source>connected, scanning</source> <source>connected, scanning</source>
<translation>verbunden, scannt</translation> <translation>verbunden, scannt</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="117"/> <location filename="../syncthingconnection.cpp" line="118"/>
<source>connected, paused</source> <source>connected, paused</source>
<translation>verbunden, pausiert</translation> <translation>verbunden, pausiert</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="119"/> <location filename="../syncthingconnection.cpp" line="120"/>
<source>connected, synchronizing</source> <source>connected, synchronizing</source>
<translation>verbunden, am Synchronisieren</translation> <translation>verbunden, am Synchronisieren</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="121"/> <location filename="../syncthingconnection.cpp" line="122"/>
<source>connected, out of sync</source> <source>connected, out of sync</source>
<translation>verbunden, nicht synchronisiert</translation> <translation>verbunden, nicht synchronisiert</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="123"/> <location filename="../syncthingconnection.cpp" line="124"/>
<source>unknown</source> <source>unknown</source>
<translation>Verbindungsstatus unbekannt</translation> <translation>Verbindungsstatus unbekannt</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="153"/> <location filename="../syncthingconnection.cpp" line="154"/>
<location filename="../syncthingconnection.cpp" line="240"/> <location filename="../syncthingconnection.cpp" line="241"/>
<source>Connection configuration is insufficient.</source> <source>Connection configuration is insufficient.</source>
<translation>Verbindungskonfiguration is ungenügend</translation> <translation>Verbindungskonfiguration is ungenügend</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="449"/> <location filename="../syncthingconnection.cpp" line="450"/>
<source>Unable to pause/resume a devices when not connected</source> <source>Unable to pause/resume a devices when not connected</source>
<translation>Fehler beim Anfordern Verzeichnis zu Pausieren/Fortzusetzen</translation> <translation>Fehler beim Anfordern Verzeichnis zu Pausieren/Fortzusetzen</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="480"/> <location filename="../syncthingconnection.cpp" line="481"/>
<source>Unable to pause/resume a directories when not connected</source> <source>Unable to pause/resume a directories when not connected</source>
<translation>Fehler beim Anfordern Gerät zu Pausieren/Fortzusetzen</translation> <translation>Fehler beim Anfordern Gerät zu Pausieren/Fortzusetzen</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="759"/> <location filename="../syncthingconnection.cpp" line="760"/>
<source>Unable to request QR-Code: </source> <source>Unable to request QR-Code: </source>
<translation>Fehler beim Abfragen des QR-Codes: </translation> <translation>Fehler beim Abfragen des QR-Codes: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="779"/> <location filename="../syncthingconnection.cpp" line="780"/>
<source>Unable to parse Syncthing log: </source> <source>Unable to parse Syncthing log: </source>
<translation>Fehler beim Auslesen des Syncthing-Logs: </translation> <translation>Fehler beim Auslesen des Syncthing-Logs: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="794"/> <location filename="../syncthingconnection.cpp" line="795"/>
<source>Unable to request Syncthing log: </source> <source>Unable to request Syncthing log: </source>
<translation>Fehler beim Abfragen des Syncthing-Logs: </translation> <translation>Fehler beim Abfragen des Syncthing-Logs: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="828"/> <location filename="../syncthingconnection.cpp" line="829"/>
<source>Unable to locate certificate used by Syncthing.</source> <source>Unable to locate certificate used by Syncthing.</source>
<translation>Das SSL-Zertifikat von Syncthing kann nicht gefunden werden.</translation> <translation>Das SSL-Zertifikat von Syncthing kann nicht gefunden werden.</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="834"/> <location filename="../syncthingconnection.cpp" line="835"/>
<source>Unable to load certificate used by Syncthing.</source> <source>Unable to load certificate used by Syncthing.</source>
<translation>Das SSL-Zertifikat von Syncthing kann nicht ausgelesen werden.</translation> <translation>Das SSL-Zertifikat von Syncthing kann nicht ausgelesen werden.</translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="909"/> <location filename="../syncthingconnection.cpp" line="910"/>
<source>Unable to parse Syncthing config: </source> <source>Unable to parse Syncthing config: </source>
<translation>Fehler beim Auslesen der Syncthing-Konfiguration: </translation> <translation>Fehler beim Auslesen der Syncthing-Konfiguration: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="923"/> <location filename="../syncthingconnection.cpp" line="924"/>
<source>Unable to request Syncthing config: </source> <source>Unable to request Syncthing config: </source>
<translation>Fehler beim Abfragen der Syncthing-Konfiguration: </translation> <translation>Fehler beim Abfragen der Syncthing-Konfiguration: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1019"/> <location filename="../syncthingconnection.cpp" line="1020"/>
<source>Unable to parse Syncthing status: </source> <source>Unable to parse Syncthing status: </source>
<translation>Fehler beim Auslesen des Syncthing-Status: </translation> <translation>Fehler beim Auslesen des Syncthing-Status: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1033"/> <location filename="../syncthingconnection.cpp" line="1034"/>
<source>Unable to request Syncthing status: </source> <source>Unable to request Syncthing status: </source>
<translation>Fehler beim Abfragen des Syncthing-Status: </translation> <translation>Fehler beim Abfragen des Syncthing-Status: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1074"/> <location filename="../syncthingconnection.cpp" line="1075"/>
<source>Unable to parse connections: </source> <source>Unable to parse connections: </source>
<translation>Fehler beim Auslesen der Verbindungen: </translation> <translation>Fehler beim Auslesen der Verbindungen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1147"/> <location filename="../syncthingconnection.cpp" line="1148"/>
<source>Unable to request connections: </source> <source>Unable to request connections: </source>
<translation>Fehler beim Abfragen der Verbindungen: </translation> <translation>Fehler beim Abfragen der Verbindungen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1165"/> <location filename="../syncthingconnection.cpp" line="1166"/>
<source>Unable to parse directory statistics: </source> <source>Unable to parse directory statistics: </source>
<translation>Fehler beim Auslesen der Verzeichnisstatistiken: </translation> <translation>Fehler beim Auslesen der Verzeichnisstatistiken: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1211"/> <location filename="../syncthingconnection.cpp" line="1212"/>
<location filename="../syncthingconnection.cpp" line="1795"/> <location filename="../syncthingconnection.cpp" line="1796"/>
<source>Unable to request directory statistics: </source> <source>Unable to request directory statistics: </source>
<translation>Fehler beim Abfragen der Verzeichnisstatistiken: </translation> <translation>Fehler beim Abfragen der Verzeichnisstatistiken: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1229"/> <location filename="../syncthingconnection.cpp" line="1230"/>
<source>Unable to parse device statistics: </source> <source>Unable to parse device statistics: </source>
<translation>Fehler beim Auslesen der Gerätestatistiken: </translation> <translation>Fehler beim Auslesen der Gerätestatistiken: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1256"/> <location filename="../syncthingconnection.cpp" line="1257"/>
<source>Unable to request device statistics: </source> <source>Unable to request device statistics: </source>
<translation>Fehler beim Abfragen der Gerätestatistiken: </translation> <translation>Fehler beim Abfragen der Gerätestatistiken: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1282"/> <location filename="../syncthingconnection.cpp" line="1283"/>
<source>Unable to parse errors: </source> <source>Unable to parse errors: </source>
<translation>Fehler beim Auslesen der Syncthing-Fehlermeldungen: </translation> <translation>Fehler beim Auslesen der Syncthing-Fehlermeldungen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1309"/> <location filename="../syncthingconnection.cpp" line="1310"/>
<source>Unable to request errors: </source> <source>Unable to request errors: </source>
<translation>Fehler beim Abfragen der Syncthing-Fehlermeldungen: </translation> <translation>Fehler beim Abfragen der Syncthing-Fehlermeldungen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1325"/> <location filename="../syncthingconnection.cpp" line="1326"/>
<source>Unable to request clearing errors: </source> <source>Unable to request clearing errors: </source>
<translation>Fehler beim Löschen der Fehlermeldungen: </translation> <translation>Fehler beim Löschen der Fehlermeldungen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1346"/> <location filename="../syncthingconnection.cpp" line="1347"/>
<source>Unable to parse Syncthing events: </source> <source>Unable to parse Syncthing events: </source>
<translation>Fehler beim Auslesen der Syncthing-Ereignisse: </translation> <translation>Fehler beim Auslesen der Syncthing-Ereignisse: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1399"/> <location filename="../syncthingconnection.cpp" line="1400"/>
<source>Unable to request Syncthing events: </source> <source>Unable to request Syncthing events: </source>
<translation>Fehler beim Abfragen der Syncthing-Ereignisse: </translation> <translation>Fehler beim Abfragen der Syncthing-Ereignisse: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1681"/> <location filename="../syncthingconnection.cpp" line="1682"/>
<source>Unable to request rescan: </source> <source>Unable to request rescan: </source>
<translation>Fehler beim Anfordern eines Verzeichnis-Rescans: </translation> <translation>Fehler beim Anfordern eines Verzeichnis-Rescans: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1705"/> <location filename="../syncthingconnection.cpp" line="1706"/>
<source>Unable to request device pause/resume: </source> <source>Unable to request device pause/resume: </source>
<translation>Fehler beim Anfordern Gerät zu Pausieren/Fortzusetzen: </translation> <translation>Fehler beim Anfordern Gerät zu Pausieren/Fortzusetzen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1726"/> <location filename="../syncthingconnection.cpp" line="1727"/>
<source>Unable to request directory pause/resume: </source> <source>Unable to request directory pause/resume: </source>
<translation>Fehler beim Anfordern Verzeichnis zu Pausieren/Fortzusetzen: </translation> <translation>Fehler beim Anfordern Verzeichnis zu Pausieren/Fortzusetzen: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1742"/> <location filename="../syncthingconnection.cpp" line="1743"/>
<source>Unable to request restart: </source> <source>Unable to request restart: </source>
<translation>Fehler beim Anfordern eines Neustarts: </translation> <translation>Fehler beim Anfordern eines Neustarts: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1758"/> <location filename="../syncthingconnection.cpp" line="1759"/>
<source>Unable to request shutdown: </source> <source>Unable to request shutdown: </source>
<translation>Fehler beim Anfordern Syncthing zu beenden: </translation> <translation>Fehler beim Anfordern Syncthing zu beenden: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1785"/> <location filename="../syncthingconnection.cpp" line="1786"/>
<source>Unable to parse status for directory %1: </source> <source>Unable to parse status for directory %1: </source>
<translation>Fehler beim Anfordern des Status von Verzeichnis %1: </translation> <translation>Fehler beim Anfordern des Status von Verzeichnis %1: </translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1922"/> <location filename="../syncthingconnection.cpp" line="1923"/>
<source>at offset %1</source> <source>at offset %1</source>
<translation>bei Zeichen %1</translation> <translation>bei Zeichen %1</translation>
</message> </message>

View File

@ -4,194 +4,194 @@
<context> <context>
<name>Data::SyncthingConnection</name> <name>Data::SyncthingConnection</name>
<message> <message>
<location filename="../syncthingconnection.cpp" line="109"/> <location filename="../syncthingconnection.cpp" line="110"/>
<source>disconnected</source> <source>disconnected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="111"/> <location filename="../syncthingconnection.cpp" line="112"/>
<source>reconnecting</source> <source>reconnecting</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="113"/> <location filename="../syncthingconnection.cpp" line="114"/>
<source>connected</source> <source>connected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="115"/> <location filename="../syncthingconnection.cpp" line="116"/>
<source>connected, scanning</source> <source>connected, scanning</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="117"/> <location filename="../syncthingconnection.cpp" line="118"/>
<source>connected, paused</source> <source>connected, paused</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="119"/> <location filename="../syncthingconnection.cpp" line="120"/>
<source>connected, synchronizing</source> <source>connected, synchronizing</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="121"/> <location filename="../syncthingconnection.cpp" line="122"/>
<source>connected, out of sync</source> <source>connected, out of sync</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="123"/> <location filename="../syncthingconnection.cpp" line="124"/>
<source>unknown</source> <source>unknown</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="153"/> <location filename="../syncthingconnection.cpp" line="154"/>
<location filename="../syncthingconnection.cpp" line="240"/> <location filename="../syncthingconnection.cpp" line="241"/>
<source>Connection configuration is insufficient.</source> <source>Connection configuration is insufficient.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="449"/> <location filename="../syncthingconnection.cpp" line="450"/>
<source>Unable to pause/resume a devices when not connected</source> <source>Unable to pause/resume a devices when not connected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="480"/> <location filename="../syncthingconnection.cpp" line="481"/>
<source>Unable to pause/resume a directories when not connected</source> <source>Unable to pause/resume a directories when not connected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="759"/> <location filename="../syncthingconnection.cpp" line="760"/>
<source>Unable to request QR-Code: </source> <source>Unable to request QR-Code: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="779"/> <location filename="../syncthingconnection.cpp" line="780"/>
<source>Unable to parse Syncthing log: </source> <source>Unable to parse Syncthing log: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="794"/> <location filename="../syncthingconnection.cpp" line="795"/>
<source>Unable to request Syncthing log: </source> <source>Unable to request Syncthing log: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="828"/> <location filename="../syncthingconnection.cpp" line="829"/>
<source>Unable to locate certificate used by Syncthing.</source> <source>Unable to locate certificate used by Syncthing.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="834"/> <location filename="../syncthingconnection.cpp" line="835"/>
<source>Unable to load certificate used by Syncthing.</source> <source>Unable to load certificate used by Syncthing.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="909"/> <location filename="../syncthingconnection.cpp" line="910"/>
<source>Unable to parse Syncthing config: </source> <source>Unable to parse Syncthing config: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="923"/> <location filename="../syncthingconnection.cpp" line="924"/>
<source>Unable to request Syncthing config: </source> <source>Unable to request Syncthing config: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1019"/> <location filename="../syncthingconnection.cpp" line="1020"/>
<source>Unable to parse Syncthing status: </source> <source>Unable to parse Syncthing status: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1033"/> <location filename="../syncthingconnection.cpp" line="1034"/>
<source>Unable to request Syncthing status: </source> <source>Unable to request Syncthing status: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1074"/> <location filename="../syncthingconnection.cpp" line="1075"/>
<source>Unable to parse connections: </source> <source>Unable to parse connections: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1147"/> <location filename="../syncthingconnection.cpp" line="1148"/>
<source>Unable to request connections: </source> <source>Unable to request connections: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1165"/> <location filename="../syncthingconnection.cpp" line="1166"/>
<source>Unable to parse directory statistics: </source> <source>Unable to parse directory statistics: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1211"/> <location filename="../syncthingconnection.cpp" line="1212"/>
<location filename="../syncthingconnection.cpp" line="1795"/> <location filename="../syncthingconnection.cpp" line="1796"/>
<source>Unable to request directory statistics: </source> <source>Unable to request directory statistics: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1229"/> <location filename="../syncthingconnection.cpp" line="1230"/>
<source>Unable to parse device statistics: </source> <source>Unable to parse device statistics: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1256"/> <location filename="../syncthingconnection.cpp" line="1257"/>
<source>Unable to request device statistics: </source> <source>Unable to request device statistics: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1282"/> <location filename="../syncthingconnection.cpp" line="1283"/>
<source>Unable to parse errors: </source> <source>Unable to parse errors: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1309"/> <location filename="../syncthingconnection.cpp" line="1310"/>
<source>Unable to request errors: </source> <source>Unable to request errors: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1325"/> <location filename="../syncthingconnection.cpp" line="1326"/>
<source>Unable to request clearing errors: </source> <source>Unable to request clearing errors: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1346"/> <location filename="../syncthingconnection.cpp" line="1347"/>
<source>Unable to parse Syncthing events: </source> <source>Unable to parse Syncthing events: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1399"/> <location filename="../syncthingconnection.cpp" line="1400"/>
<source>Unable to request Syncthing events: </source> <source>Unable to request Syncthing events: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1681"/> <location filename="../syncthingconnection.cpp" line="1682"/>
<source>Unable to request rescan: </source> <source>Unable to request rescan: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1705"/> <location filename="../syncthingconnection.cpp" line="1706"/>
<source>Unable to request device pause/resume: </source> <source>Unable to request device pause/resume: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1726"/> <location filename="../syncthingconnection.cpp" line="1727"/>
<source>Unable to request directory pause/resume: </source> <source>Unable to request directory pause/resume: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1742"/> <location filename="../syncthingconnection.cpp" line="1743"/>
<source>Unable to request restart: </source> <source>Unable to request restart: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1758"/> <location filename="../syncthingconnection.cpp" line="1759"/>
<source>Unable to request shutdown: </source> <source>Unable to request shutdown: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1785"/> <location filename="../syncthingconnection.cpp" line="1786"/>
<source>Unable to parse status for directory %1: </source> <source>Unable to parse status for directory %1: </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../syncthingconnection.cpp" line="1922"/> <location filename="../syncthingconnection.cpp" line="1923"/>
<source>at offset %1</source> <source>at offset %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -63,6 +63,38 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QPushButton" name="downPushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Move currently selected configuration down</string>
</property>
<property name="icon">
<iconset theme="go-down"/>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="upPushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Move currently selected configuration up</string>
</property>
<property name="icon">
<iconset theme="go-up"/>
</property>
</widget>
</item>
<item> <item>
<widget class="QPushButton" name="addPushButton"> <widget class="QPushButton" name="addPushButton">
<property name="sizePolicy"> <property name="sizePolicy">
@ -119,7 +151,7 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="text"> <property name="text">
<string>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</string> <string>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device. The first configuration is the primary/default configuration.</string>
</property> </property>
<property name="wordWrap"> <property name="wordWrap">
<bool>true</bool> <bool>true</bool>

View File

@ -84,49 +84,52 @@ QWidget *ConnectionOptionPage::setupWidget()
QObject::connect(ui()->selectionComboBox, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), QObject::connect(ui()->selectionComboBox, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged),
bind(&ConnectionOptionPage::showConnectionSettings, this, _1)); bind(&ConnectionOptionPage::showConnectionSettings, this, _1));
QObject::connect(ui()->selectionComboBox, static_cast<void (QComboBox::*)(const QString &)>(&QComboBox::editTextChanged), QObject::connect(ui()->selectionComboBox, static_cast<void (QComboBox::*)(const QString &)>(&QComboBox::editTextChanged),
bind(&ConnectionOptionPage::saveCurrentConnectionName, this, _1)); bind(&ConnectionOptionPage::saveCurrentConfigName, this, _1));
QObject::connect(ui()->addPushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::addConnectionSettings, this)); QObject::connect(ui()->downPushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::moveSelectedConfigDown, this));
QObject::connect(ui()->removePushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::removeConnectionSettings, this)); QObject::connect(ui()->upPushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::moveSelectedConfigUp, this));
QObject::connect(ui()->addPushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::addNewConfig, this));
QObject::connect(ui()->removePushButton, &QPushButton::clicked, bind(&ConnectionOptionPage::removeSelectedConfig, this));
return w; return w;
} }
void ConnectionOptionPage::insertFromConfigFile() void ConnectionOptionPage::insertFromConfigFile()
{ {
if (hasBeenShown()) { if (!hasBeenShown()) {
QString configFile = SyncthingConfig::locateConfigFile(); return;
if (configFile.isEmpty()) { }
// allow user to select config file manually if it could not be located QString configFile = SyncthingConfig::locateConfigFile();
configFile = QFileDialog::getOpenFileName(widget(), if (configFile.isEmpty()) {
QCoreApplication::translate("QtGui::ConnectionOptionPage", "Select Syncthing config file") + QStringLiteral(" - " APP_NAME)); // allow user to select config file manually if it could not be located
} configFile = QFileDialog::getOpenFileName(
if (configFile.isEmpty()) { widget(), QCoreApplication::translate("QtGui::ConnectionOptionPage", "Select Syncthing config file") + QStringLiteral(" - " APP_NAME));
return; }
} if (configFile.isEmpty()) {
SyncthingConfig config; return;
if (!config.restore(configFile)) { }
QMessageBox::critical(widget(), widget()->windowTitle() + QStringLiteral(" - " APP_NAME), SyncthingConfig config;
QCoreApplication::translate("QtGui::ConnectionOptionPage", "Unable to parse the Syncthing config file.")); if (!config.restore(configFile)) {
return; QMessageBox::critical(widget(), widget()->windowTitle() + QStringLiteral(" - " APP_NAME),
} QCoreApplication::translate("QtGui::ConnectionOptionPage", "Unable to parse the Syncthing config file."));
if (!config.guiAddress.isEmpty()) { return;
ui()->urlLineEdit->selectAll(); }
ui()->urlLineEdit->insert( if (!config.guiAddress.isEmpty()) {
((config.guiEnforcesSecureConnection || !QHostAddress(config.guiAddress.mid(0, config.guiAddress.indexOf(QChar(':')))).isLoopback()) ui()->urlLineEdit->selectAll();
? QStringLiteral("https://") ui()->urlLineEdit->insert(
: QStringLiteral("http://")) ((config.guiEnforcesSecureConnection || !QHostAddress(config.guiAddress.mid(0, config.guiAddress.indexOf(QChar(':')))).isLoopback())
+ config.guiAddress); ? QStringLiteral("https://")
} : QStringLiteral("http://"))
if (!config.guiUser.isEmpty() || !config.guiPasswordHash.isEmpty()) { + config.guiAddress);
ui()->authCheckBox->setChecked(true); }
ui()->userNameLineEdit->selectAll(); if (!config.guiUser.isEmpty() || !config.guiPasswordHash.isEmpty()) {
ui()->userNameLineEdit->insert(config.guiUser); ui()->authCheckBox->setChecked(true);
} else { ui()->userNameLineEdit->selectAll();
ui()->authCheckBox->setChecked(false); ui()->userNameLineEdit->insert(config.guiUser);
} } else {
if (!config.guiApiKey.isEmpty()) { ui()->authCheckBox->setChecked(false);
ui()->apiKeyLineEdit->selectAll(); }
ui()->apiKeyLineEdit->insert(config.guiApiKey); if (!config.guiApiKey.isEmpty()) {
} ui()->apiKeyLineEdit->selectAll();
ui()->apiKeyLineEdit->insert(config.guiApiKey);
} }
} }
@ -139,62 +142,61 @@ void ConnectionOptionPage::updateConnectionStatus()
bool ConnectionOptionPage::showConnectionSettings(int index) bool ConnectionOptionPage::showConnectionSettings(int index)
{ {
bool ok = true; if (index == m_currentIndex) {
if (index != m_currentIndex) { return true;
if ((ok = cacheCurrentSettings(false))) {
const SyncthingConnectionSettings &connectionSettings
= (index == 0 ? m_primarySettings : m_secondarySettings[static_cast<size_t>(index - 1)]);
ui()->urlLineEdit->setText(connectionSettings.syncthingUrl);
ui()->authCheckBox->setChecked(connectionSettings.authEnabled);
ui()->userNameLineEdit->setText(connectionSettings.userName);
ui()->passwordLineEdit->setText(connectionSettings.password);
ui()->apiKeyLineEdit->setText(connectionSettings.apiKey);
ui()->certPathSelection->lineEdit()->setText(connectionSettings.httpsCertPath);
ui()->pollTrafficSpinBox->setValue(connectionSettings.trafficPollInterval);
ui()->pollDevStatsSpinBox->setValue(connectionSettings.devStatsPollInterval);
ui()->pollErrorsSpinBox->setValue(connectionSettings.errorsPollInterval);
ui()->reconnectSpinBox->setValue(connectionSettings.reconnectInterval);
m_currentIndex = index;
} else {
ui()->selectionComboBox->setCurrentIndex(m_currentIndex);
}
} }
ui()->removePushButton->setEnabled(index); if (!cacheCurrentSettings(false)) {
return ok; ui()->selectionComboBox->setCurrentIndex(m_currentIndex);
return false;
}
const SyncthingConnectionSettings &connectionSettings = (index == 0 ? m_primarySettings : m_secondarySettings[static_cast<size_t>(index - 1)]);
ui()->urlLineEdit->setText(connectionSettings.syncthingUrl);
ui()->authCheckBox->setChecked(connectionSettings.authEnabled);
ui()->userNameLineEdit->setText(connectionSettings.userName);
ui()->passwordLineEdit->setText(connectionSettings.password);
ui()->apiKeyLineEdit->setText(connectionSettings.apiKey);
ui()->certPathSelection->lineEdit()->setText(connectionSettings.httpsCertPath);
ui()->pollTrafficSpinBox->setValue(connectionSettings.trafficPollInterval);
ui()->pollDevStatsSpinBox->setValue(connectionSettings.devStatsPollInterval);
ui()->pollErrorsSpinBox->setValue(connectionSettings.errorsPollInterval);
ui()->reconnectSpinBox->setValue(connectionSettings.reconnectInterval);
setCurrentIndex(index);
return true;
} }
bool ConnectionOptionPage::cacheCurrentSettings(bool applying) bool ConnectionOptionPage::cacheCurrentSettings(bool applying)
{ {
bool ok = true; if (m_currentIndex < 0) {
if (m_currentIndex >= 0) { return true;
SyncthingConnectionSettings &connectionSettings
= (m_currentIndex == 0 ? m_primarySettings : m_secondarySettings[static_cast<size_t>(m_currentIndex - 1)]);
connectionSettings.syncthingUrl = ui()->urlLineEdit->text();
connectionSettings.authEnabled = ui()->authCheckBox->isChecked();
connectionSettings.userName = ui()->userNameLineEdit->text();
connectionSettings.password = ui()->passwordLineEdit->text();
connectionSettings.apiKey = ui()->apiKeyLineEdit->text().toUtf8();
connectionSettings.expectedSslErrors.clear();
connectionSettings.httpsCertPath = ui()->certPathSelection->lineEdit()->text();
connectionSettings.trafficPollInterval = ui()->pollTrafficSpinBox->value();
connectionSettings.devStatsPollInterval = ui()->pollDevStatsSpinBox->value();
connectionSettings.errorsPollInterval = ui()->pollErrorsSpinBox->value();
connectionSettings.reconnectInterval = ui()->reconnectSpinBox->value();
if (!connectionSettings.loadHttpsCert()) {
const QString errorMessage = QCoreApplication::translate("QtGui::ConnectionOptionPage", "Unable to load specified certificate \"%1\".")
.arg(connectionSettings.httpsCertPath);
if (!applying) {
QMessageBox::critical(widget(), QCoreApplication::applicationName(), errorMessage);
} else {
errors() << errorMessage;
}
ok = false;
}
} }
return ok;
SyncthingConnectionSettings &connectionSettings
= (m_currentIndex == 0 ? m_primarySettings : m_secondarySettings[static_cast<size_t>(m_currentIndex - 1)]);
connectionSettings.syncthingUrl = ui()->urlLineEdit->text();
connectionSettings.authEnabled = ui()->authCheckBox->isChecked();
connectionSettings.userName = ui()->userNameLineEdit->text();
connectionSettings.password = ui()->passwordLineEdit->text();
connectionSettings.apiKey = ui()->apiKeyLineEdit->text().toUtf8();
connectionSettings.expectedSslErrors.clear();
connectionSettings.httpsCertPath = ui()->certPathSelection->lineEdit()->text();
connectionSettings.trafficPollInterval = ui()->pollTrafficSpinBox->value();
connectionSettings.devStatsPollInterval = ui()->pollDevStatsSpinBox->value();
connectionSettings.errorsPollInterval = ui()->pollErrorsSpinBox->value();
connectionSettings.reconnectInterval = ui()->reconnectSpinBox->value();
if (!connectionSettings.loadHttpsCert()) {
const QString errorMessage = QCoreApplication::translate("QtGui::ConnectionOptionPage", "Unable to load specified certificate \"%1\".")
.arg(connectionSettings.httpsCertPath);
if (!applying) {
QMessageBox::critical(widget(), QCoreApplication::applicationName(), errorMessage);
} else {
errors() << errorMessage;
}
return false;
}
return true;
} }
void ConnectionOptionPage::saveCurrentConnectionName(const QString &name) void ConnectionOptionPage::saveCurrentConfigName(const QString &name)
{ {
const int index = ui()->selectionComboBox->currentIndex(); const int index = ui()->selectionComboBox->currentIndex();
if (index == m_currentIndex && index >= 0) { if (index == m_currentIndex && index >= 0) {
@ -203,55 +205,129 @@ void ConnectionOptionPage::saveCurrentConnectionName(const QString &name)
} }
} }
void ConnectionOptionPage::addConnectionSettings() void ConnectionOptionPage::addNewConfig()
{ {
m_secondarySettings.emplace_back(); m_secondarySettings.emplace_back();
m_secondarySettings.back().label m_secondarySettings.back().label
= QCoreApplication::translate("QtGui::ConnectionOptionPage", "Instance %1").arg(ui()->selectionComboBox->count() + 1); = QCoreApplication::translate("QtGui::ConnectionOptionPage", "Instance %1").arg(ui()->selectionComboBox->count() + 1);
ui()->selectionComboBox->addItem(m_secondarySettings.back().label); ui()->selectionComboBox->addItem(m_secondarySettings.back().label);
ui()->selectionComboBox->setCurrentIndex(ui()->selectionComboBox->count() - 1); ui()->selectionComboBox->setCurrentIndex(ui()->selectionComboBox->count() - 1);
ui()->removePushButton->setEnabled(true);
} }
void ConnectionOptionPage::removeConnectionSettings() void ConnectionOptionPage::removeSelectedConfig()
{ {
int index = ui()->selectionComboBox->currentIndex(); if (m_secondarySettings.empty()) {
if (index > 0) { return;
m_secondarySettings.erase(m_secondarySettings.begin() + (index - 1));
m_currentIndex = -1;
ui()->selectionComboBox->removeItem(index);
} }
const int index = ui()->selectionComboBox->currentIndex();
if (index < 0 || static_cast<unsigned>(index) >= m_secondarySettings.size()) {
return;
}
if (index == 0) {
m_primarySettings = move(m_secondarySettings.front());
m_secondarySettings.erase(m_secondarySettings.begin());
} else {
m_secondarySettings.erase(m_secondarySettings.begin() + (index - 1));
}
m_currentIndex = -1;
ui()->selectionComboBox->removeItem(index);
ui()->removePushButton->setEnabled(!m_secondarySettings.empty());
}
void ConnectionOptionPage::moveSelectedConfigDown()
{
if (m_secondarySettings.empty()) {
return;
}
const int index = ui()->selectionComboBox->currentIndex();
if (index < 0) {
return;
}
if (index == 0) {
swap(m_primarySettings, m_secondarySettings.front());
ui()->selectionComboBox->setItemText(0, m_primarySettings.label);
ui()->selectionComboBox->setItemText(1, m_secondarySettings.front().label);
setCurrentIndex(1);
} else if (static_cast<unsigned>(index) < m_secondarySettings.size()) {
SyncthingConnectionSettings &current = m_secondarySettings[static_cast<unsigned>(index) - 1];
SyncthingConnectionSettings &exchange = m_secondarySettings[static_cast<unsigned>(index)];
swap(current, exchange);
ui()->selectionComboBox->setItemText(index, current.label);
ui()->selectionComboBox->setItemText(index + 1, exchange.label);
setCurrentIndex(index + 1);
}
ui()->selectionComboBox->setCurrentIndex(m_currentIndex);
}
void ConnectionOptionPage::moveSelectedConfigUp()
{
if (m_secondarySettings.empty()) {
return;
}
const int index = ui()->selectionComboBox->currentIndex();
if (index <= 0) {
return;
}
if (index == 1) {
swap(m_primarySettings, m_secondarySettings.front());
ui()->selectionComboBox->setItemText(0, m_primarySettings.label);
ui()->selectionComboBox->setItemText(1, m_secondarySettings.front().label);
setCurrentIndex(0);
} else if (static_cast<unsigned>(index) - 1 < m_secondarySettings.size()) {
SyncthingConnectionSettings &current = m_secondarySettings[static_cast<unsigned>(index) - 1];
SyncthingConnectionSettings &exchange = m_secondarySettings[static_cast<unsigned>(index) - 2];
swap(current, exchange);
ui()->selectionComboBox->setItemText(index, current.label);
ui()->selectionComboBox->setItemText(index - 1, exchange.label);
setCurrentIndex(index - 1);
}
ui()->selectionComboBox->setCurrentIndex(m_currentIndex);
}
void ConnectionOptionPage::setCurrentIndex(int currentIndex)
{
m_currentIndex = currentIndex;
ui()->downPushButton->setEnabled(currentIndex >= 0 && static_cast<unsigned>(currentIndex) < m_secondarySettings.size());
ui()->upPushButton->setEnabled(currentIndex > 0 && static_cast<unsigned>(currentIndex) - 1 < m_secondarySettings.size());
} }
bool ConnectionOptionPage::apply() bool ConnectionOptionPage::apply()
{ {
bool ok = true; if (!hasBeenShown()) {
if (hasBeenShown()) { return true;
ok = cacheCurrentSettings(true);
values().connection.primary = m_primarySettings;
values().connection.secondary = m_secondarySettings;
} }
return ok; if (!cacheCurrentSettings(true)) {
return false;
}
values().connection.primary = m_primarySettings;
values().connection.secondary = m_secondarySettings;
return true;
} }
void ConnectionOptionPage::reset() void ConnectionOptionPage::reset()
{ {
if (hasBeenShown()) { if (!hasBeenShown()) {
m_primarySettings = values().connection.primary; return;
m_secondarySettings = values().connection.secondary;
m_currentIndex = -1;
QStringList itemTexts;
itemTexts.reserve(1 + static_cast<int>(m_secondarySettings.size()));
itemTexts << m_primarySettings.label;
for (const SyncthingConnectionSettings &settings : m_secondarySettings) {
itemTexts << settings.label;
}
ui()->selectionComboBox->clear();
ui()->selectionComboBox->addItems(itemTexts);
ui()->selectionComboBox->setCurrentIndex(0);
updateConnectionStatus();
} }
m_primarySettings = values().connection.primary;
m_secondarySettings = values().connection.secondary;
m_currentIndex = -1;
QStringList itemTexts;
itemTexts.reserve(1 + static_cast<int>(m_secondarySettings.size()));
itemTexts << m_primarySettings.label;
for (const SyncthingConnectionSettings &settings : m_secondarySettings) {
itemTexts << settings.label;
}
ui()->selectionComboBox->clear();
ui()->selectionComboBox->addItems(itemTexts);
ui()->selectionComboBox->setCurrentIndex(0);
updateConnectionStatus();
} }
void ConnectionOptionPage::applyAndReconnect() void ConnectionOptionPage::applyAndReconnect()

View File

@ -33,9 +33,12 @@ void updateConnectionStatus();
void applyAndReconnect(); void applyAndReconnect();
bool showConnectionSettings(int index); bool showConnectionSettings(int index);
bool cacheCurrentSettings(bool applying); bool cacheCurrentSettings(bool applying);
void saveCurrentConnectionName(const QString &name); void saveCurrentConfigName(const QString &name);
void addConnectionSettings(); void addNewConfig();
void removeConnectionSettings(); void removeSelectedConfig();
void moveSelectedConfigDown();
void moveSelectedConfigUp();
void setCurrentIndex(int currentIndex);
Data::SyncthingConnection *m_connection; Data::SyncthingConnection *m_connection;
Data::SyncthingConnectionSettings m_primarySettings; Data::SyncthingConnectionSettings m_primarySettings;
std::vector<Data::SyncthingConnectionSettings> m_secondarySettings; std::vector<Data::SyncthingConnectionSettings> m_secondarySettings;

View File

@ -127,22 +127,22 @@
<translation>Tray-Icon beim Starten der Desktopumgebung automatisch starten</translation> <translation>Tray-Icon beim Starten der Desktopumgebung automatisch starten</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="414"/> <location filename="../settings/settingsdialog.cpp" line="490"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source> <source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation>Durch das Hinzufügen einer *.desktop-Datei unter &lt;i&gt;~/.config/autostart&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation> <translation>Durch das Hinzufügen einer *.desktop-Datei unter &lt;i&gt;~/.config/autostart&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="417"/> <location filename="../settings/settingsdialog.cpp" line="493"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source> <source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation>Durch das Hinzufügen eines Registry-Schlüssels unter &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation> <translation>Durch das Hinzufügen eines Registry-Schlüssels unter &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="422"/> <location filename="../settings/settingsdialog.cpp" line="498"/>
<source>This feature has not been implemented for your platform (yet).</source> <source>This feature has not been implemented for your platform (yet).</source>
<translation>Diese Funktion wurde für die aktuelle Plattform nicht nicht implementiert.</translation> <translation>Diese Funktion wurde für die aktuelle Plattform nicht nicht implementiert.</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="509"/> <location filename="../settings/settingsdialog.cpp" line="585"/>
<source>unable to modify startup entry</source> <source>unable to modify startup entry</source>
<translation>Fehler beim aktualisieren des Auto-Start-Eintrags</translation> <translation>Fehler beim aktualisieren des Auto-Start-Eintrags</translation>
</message> </message>
@ -161,104 +161,118 @@
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="75"/> <location filename="../settings/connectionoptionpage.ui" line="75"/>
<source>Move currently selected configuration down</source>
<translation>Aktuelle Konfiguration in der Liste noch unten schieben</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="107"/>
<source>Add secondary instance</source> <source>Add secondary instance</source>
<translation>Sekundäre Konfiguration hinzufügen</translation> <translation>Sekundäre Konfiguration hinzufügen</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="92"/> <location filename="../settings/connectionoptionpage.ui" line="124"/>
<source>Remove currently selected secondary instance</source> <source>Remove currently selected secondary instance</source>
<translation>Sekundäre Konfiguration löschen</translation> <translation>Sekundäre Konfiguration löschen</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="122"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source> <source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source>
<translation>Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen.</translation> <translation type="vanished">Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen.</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="145"/> <location filename="../settings/connectionoptionpage.ui" line="177"/>
<source>Syncthing URL</source> <source>Syncthing URL</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="155"/> <location filename="../settings/connectionoptionpage.ui" line="187"/>
<source>Authentication</source> <source>Authentication</source>
<translation>Authentifizierung</translation> <translation>Authentifizierung</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="168"/> <location filename="../settings/connectionoptionpage.ui" line="200"/>
<source>User</source> <source>User</source>
<translation>Benutzername</translation> <translation>Benutzername</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="185"/> <location filename="../settings/connectionoptionpage.ui" line="217"/>
<source>Password</source> <source>Password</source>
<translation>Passwort</translation> <translation>Passwort</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="202"/> <location filename="../settings/connectionoptionpage.ui" line="234"/>
<source>API key</source> <source>API key</source>
<translation>API-Schlüssel</translation> <translation>API-Schlüssel</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="212"/> <location filename="../settings/connectionoptionpage.ui" line="244"/>
<source>HTTPS certificate</source> <source>HTTPS certificate</source>
<translation>HTTPS-Zertifikat</translation> <translation>HTTPS-Zertifikat</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="232"/> <location filename="../settings/connectionoptionpage.ui" line="264"/>
<source>Insert values from local Syncthing configuration</source> <source>Insert values from local Syncthing configuration</source>
<translation>Werte aus lokaler Syncthing-Konfiguration einfügen</translation> <translation>Werte aus lokaler Syncthing-Konfiguration einfügen</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="333"/> <location filename="../settings/connectionoptionpage.ui" line="365"/>
<source>Errors</source> <source>Errors</source>
<translation>Fehler</translation> <translation>Fehler</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="394"/> <location filename="../settings/connectionoptionpage.ui" line="426"/>
<source>Status</source> <source>Status</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="401"/> <location filename="../settings/connectionoptionpage.ui" line="433"/>
<source>disconnected</source> <source>disconnected</source>
<translation>getrennt</translation> <translation>getrennt</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="408"/> <location filename="../settings/connectionoptionpage.ui" line="440"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source> <source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation>Verbindungseinstellungen übernehmen und mit neuen Einstellungen verbinden</translation> <translation>Verbindungseinstellungen übernehmen und mit neuen Einstellungen verbinden</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="256"/> <location filename="../settings/connectionoptionpage.ui" line="288"/>
<source>Poll interval</source> <source>Poll interval</source>
<translation>Abfrageintervall</translation> <translation>Abfrageintervall</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="293"/> <location filename="../settings/connectionoptionpage.ui" line="325"/>
<source>Traffic</source> <source>Traffic</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="280"/> <location filename="../settings/connectionoptionpage.ui" line="312"/>
<location filename="../settings/connectionoptionpage.ui" line="320"/> <location filename="../settings/connectionoptionpage.ui" line="352"/>
<location filename="../settings/connectionoptionpage.ui" line="346"/> <location filename="../settings/connectionoptionpage.ui" line="378"/>
<location filename="../settings/connectionoptionpage.ui" line="375"/> <location filename="../settings/connectionoptionpage.ui" line="407"/>
<source> ms</source> <source> ms</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="300"/> <location filename="../settings/connectionoptionpage.ui" line="91"/>
<source>Move currently selected configuration up</source>
<translation>Aktuelle Konfiguration in der Liste noch oben schieben</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="154"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device. The first configuration is the primary/default configuration.</source>
<translation>Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen. Die erste Konfiguration in der Liste ist die Standardkonfiguration.</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="332"/>
<source>Device statistics</source> <source>Device statistics</source>
<translation>Gerätestatistiken</translation> <translation>Gerätestatistiken</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="359"/> <location filename="../settings/connectionoptionpage.ui" line="391"/>
<source>Reconnect</source> <source>Reconnect</source>
<translation>Verbindungsveruch</translation> <translation>Verbindungsveruch</translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="372"/> <location filename="../settings/connectionoptionpage.ui" line="404"/>
<source>no</source> <source>no</source>
<translation>nicht neu verbinden</translation> <translation>nicht neu verbinden</translation>
</message> </message>
@ -268,22 +282,22 @@
<translation>Kann für lokale Instanz automatisch ermittelt werden</translation> <translation>Kann für lokale Instanz automatisch ermittelt werden</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="100"/> <location filename="../settings/settingsdialog.cpp" line="104"/>
<source>Select Syncthing config file</source> <source>Select Syncthing config file</source>
<translation>Wähle die Syncthing-Konfigurationsdatei</translation> <translation>Wähle die Syncthing-Konfigurationsdatei</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="108"/> <location filename="../settings/settingsdialog.cpp" line="112"/>
<source>Unable to parse the Syncthing config file.</source> <source>Unable to parse the Syncthing config file.</source>
<translation>Fehler beim Auslesen der Syncthing-Konfigurationsdatei.</translation> <translation>Fehler beim Auslesen der Syncthing-Konfigurationsdatei.</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="184"/> <location filename="../settings/settingsdialog.cpp" line="187"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source> <source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation>Fehler beim Auslesen des angegebenen Zertifikats: %1</translation> <translation>Fehler beim Auslesen des angegebenen Zertifikats: %1</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="210"/> <location filename="../settings/settingsdialog.cpp" line="212"/>
<source>Instance %1</source> <source>Instance %1</source>
<translation>Instanz %1</translation> <translation>Instanz %1</translation>
</message> </message>
@ -405,33 +419,33 @@
<translation>Log folgen</translation> <translation>Log folgen</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="551"/> <location filename="../settings/settingsdialog.cpp" line="627"/>
<source>%1-launcher</source> <source>%1-launcher</source>
<translation>%1-Starter</translation> <translation>%1-Starter</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="552"/> <location filename="../settings/settingsdialog.cpp" line="628"/>
<source>Launch %1 when starting the tray icon</source> <source>Launch %1 when starting the tray icon</source>
<translation>Starte %1 beim Starten des Tray-Icons</translation> <translation>Starte %1 beim Starten des Tray-Icons</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="553"/> <location filename="../settings/settingsdialog.cpp" line="629"/>
<source>%1 executable</source> <source>%1 executable</source>
<translation>Ausführbare Datei von %1</translation> <translation>Ausführbare Datei von %1</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="554"/> <location filename="../settings/settingsdialog.cpp" line="630"/>
<source>%1 log (interleaved stdout/stderr)</source> <source>%1 log (interleaved stdout/stderr)</source>
<translation>%1-Log (stdout/stderr)</translation> <translation>%1-Log (stdout/stderr)</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="626"/> <location filename="../settings/settingsdialog.cpp" line="702"/>
<source>%1 exited with exit code %2 <source>%1 exited with exit code %2
</source> </source>
<translation>%1 wurde mit dem Statuscode %2 beendet</translation> <translation>%1 wurde mit dem Statuscode %2 beendet</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="630"/> <location filename="../settings/settingsdialog.cpp" line="706"/>
<source>%1 crashed with exit code %2 <source>%1 crashed with exit code %2
</source> </source>
<translation>%1 ist mit dem Statuscode %2 abgestürzt</translation> <translation>%1 ist mit dem Statuscode %2 abgestürzt</translation>
@ -505,7 +519,7 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="284"/> <location filename="../settings/settingsdialog.cpp" line="360"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source> <source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation>Benachrichtigungen via D-Bus wurden eingestellt, aber es scheint kein Daemon zu laufen der den Dienst bereitstellt.</translation> <translation>Benachrichtigungen via D-Bus wurden eingestellt, aber es scheint kein Daemon zu laufen der den Dienst bereitstellt.</translation>
</message> </message>
@ -531,22 +545,22 @@
<context> <context>
<name>QtGui::SettingsDialog</name> <name>QtGui::SettingsDialog</name>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="826"/> <location filename="../settings/settingsdialog.cpp" line="902"/>
<source>Tray</source> <source>Tray</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="833"/> <location filename="../settings/settingsdialog.cpp" line="909"/>
<source>Web view</source> <source>Web view</source>
<translation>Weboberfläche</translation> <translation>Weboberfläche</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="840"/> <location filename="../settings/settingsdialog.cpp" line="916"/>
<source>Startup</source> <source>Startup</source>
<translation>Starten</translation> <translation>Starten</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="855"/> <location filename="../settings/settingsdialog.cpp" line="931"/>
<source>Settings</source> <source>Settings</source>
<translation>Einstellungen</translation> <translation>Einstellungen</translation>
</message> </message>
@ -663,8 +677,8 @@
<location filename="../settings/systemdoptionpage.ui" line="99"/> <location filename="../settings/systemdoptionpage.ui" line="99"/>
<location filename="../settings/systemdoptionpage.ui" line="154"/> <location filename="../settings/systemdoptionpage.ui" line="154"/>
<location filename="../settings/systemdoptionpage.ui" line="231"/> <location filename="../settings/systemdoptionpage.ui" line="231"/>
<location filename="../settings/settingsdialog.cpp" line="750"/> <location filename="../settings/settingsdialog.cpp" line="826"/>
<location filename="../settings/settingsdialog.cpp" line="762"/> <location filename="../settings/settingsdialog.cpp" line="838"/>
<source>unknown</source> <source>unknown</source>
<translation>unbekannt</translation> <translation>unbekannt</translation>
</message> </message>
@ -698,12 +712,12 @@
<translation>Stoppen</translation> <translation>Stoppen</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="723"/> <location filename="../settings/settingsdialog.cpp" line="799"/>
<source>specified unit is either inactive or doesn&apos;t exist</source> <source>specified unit is either inactive or doesn&apos;t exist</source>
<translation>angegebene Unit ist entweder nicht geladen oder existiert nicht</translation> <translation>angegebene Unit ist entweder nicht geladen oder existiert nicht</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="745"/> <location filename="../settings/settingsdialog.cpp" line="821"/>
<source>since </source> <source>since </source>
<translation>seit </translation> <translation>seit </translation>
</message> </message>
@ -761,7 +775,7 @@
<name>QtGui::WebViewOptionPage</name> <name>QtGui::WebViewOptionPage</name>
<message> <message>
<location filename="../settings/webviewoptionpage.ui" line="6"/> <location filename="../settings/webviewoptionpage.ui" line="6"/>
<location filename="../settings/settingsdialog.cpp" line="784"/> <location filename="../settings/settingsdialog.cpp" line="860"/>
<source>General</source> <source>General</source>
<translation>Allgemein</translation> <translation>Allgemein</translation>
</message> </message>
@ -791,7 +805,7 @@
<translation>Lasse Weboberfläche im Hintgergrund weiter offen, wenn Fenster nicht offen</translation> <translation>Lasse Weboberfläche im Hintgergrund weiter offen, wenn Fenster nicht offen</translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="787"/> <location filename="../settings/settingsdialog.cpp" line="863"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine. <source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source> The Web UI will be opened in the default web browser instead.</source>
<translation>Syncthing Tray wurde nicht mit Unterstützung für die eingebaute Anzeige der Weboberfläche unter Verwendung von Qt WebKit oder Qt WebEngine gebaut. <translation>Syncthing Tray wurde nicht mit Unterstützung für die eingebaute Anzeige der Weboberfläche unter Verwendung von Qt WebKit oder Qt WebEngine gebaut.

View File

@ -127,22 +127,22 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="414"/> <location filename="../settings/settingsdialog.cpp" line="490"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source> <source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="417"/> <location filename="../settings/settingsdialog.cpp" line="493"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source> <source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="422"/> <location filename="../settings/settingsdialog.cpp" line="498"/>
<source>This feature has not been implemented for your platform (yet).</source> <source>This feature has not been implemented for your platform (yet).</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="509"/> <location filename="../settings/settingsdialog.cpp" line="585"/>
<source>unable to modify startup entry</source> <source>unable to modify startup entry</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -161,104 +161,114 @@
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="75"/> <location filename="../settings/connectionoptionpage.ui" line="75"/>
<source>Move currently selected configuration down</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="107"/>
<source>Add secondary instance</source> <source>Add secondary instance</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="92"/> <location filename="../settings/connectionoptionpage.ui" line="124"/>
<source>Remove currently selected secondary instance</source> <source>Remove currently selected secondary instance</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="122"/> <location filename="../settings/connectionoptionpage.ui" line="91"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source> <source>Move currently selected configuration up</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="145"/> <location filename="../settings/connectionoptionpage.ui" line="154"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device. The first configuration is the primary/default configuration.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="177"/>
<source>Syncthing URL</source> <source>Syncthing URL</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="155"/> <location filename="../settings/connectionoptionpage.ui" line="187"/>
<source>Authentication</source> <source>Authentication</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="168"/> <location filename="../settings/connectionoptionpage.ui" line="200"/>
<source>User</source> <source>User</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="185"/> <location filename="../settings/connectionoptionpage.ui" line="217"/>
<source>Password</source> <source>Password</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="202"/> <location filename="../settings/connectionoptionpage.ui" line="234"/>
<source>API key</source> <source>API key</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="212"/> <location filename="../settings/connectionoptionpage.ui" line="244"/>
<source>HTTPS certificate</source> <source>HTTPS certificate</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="232"/> <location filename="../settings/connectionoptionpage.ui" line="264"/>
<source>Insert values from local Syncthing configuration</source> <source>Insert values from local Syncthing configuration</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="256"/> <location filename="../settings/connectionoptionpage.ui" line="288"/>
<source>Poll interval</source> <source>Poll interval</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="280"/> <location filename="../settings/connectionoptionpage.ui" line="312"/>
<location filename="../settings/connectionoptionpage.ui" line="320"/> <location filename="../settings/connectionoptionpage.ui" line="352"/>
<location filename="../settings/connectionoptionpage.ui" line="346"/> <location filename="../settings/connectionoptionpage.ui" line="378"/>
<location filename="../settings/connectionoptionpage.ui" line="375"/> <location filename="../settings/connectionoptionpage.ui" line="407"/>
<source> ms</source> <source> ms</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="293"/> <location filename="../settings/connectionoptionpage.ui" line="325"/>
<source>Traffic</source> <source>Traffic</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="300"/> <location filename="../settings/connectionoptionpage.ui" line="332"/>
<source>Device statistics</source> <source>Device statistics</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="333"/> <location filename="../settings/connectionoptionpage.ui" line="365"/>
<source>Errors</source> <source>Errors</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="359"/> <location filename="../settings/connectionoptionpage.ui" line="391"/>
<source>Reconnect</source> <source>Reconnect</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="372"/> <location filename="../settings/connectionoptionpage.ui" line="404"/>
<source>no</source> <source>no</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="394"/> <location filename="../settings/connectionoptionpage.ui" line="426"/>
<source>Status</source> <source>Status</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="401"/> <location filename="../settings/connectionoptionpage.ui" line="433"/>
<source>disconnected</source> <source>disconnected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/connectionoptionpage.ui" line="408"/> <location filename="../settings/connectionoptionpage.ui" line="440"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source> <source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -268,22 +278,22 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="100"/> <location filename="../settings/settingsdialog.cpp" line="104"/>
<source>Select Syncthing config file</source> <source>Select Syncthing config file</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="108"/> <location filename="../settings/settingsdialog.cpp" line="112"/>
<source>Unable to parse the Syncthing config file.</source> <source>Unable to parse the Syncthing config file.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="184"/> <location filename="../settings/settingsdialog.cpp" line="187"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source> <source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="210"/> <location filename="../settings/settingsdialog.cpp" line="212"/>
<source>Instance %1</source> <source>Instance %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -405,33 +415,33 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="551"/> <location filename="../settings/settingsdialog.cpp" line="627"/>
<source>%1-launcher</source> <source>%1-launcher</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="552"/> <location filename="../settings/settingsdialog.cpp" line="628"/>
<source>Launch %1 when starting the tray icon</source> <source>Launch %1 when starting the tray icon</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="553"/> <location filename="../settings/settingsdialog.cpp" line="629"/>
<source>%1 executable</source> <source>%1 executable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="554"/> <location filename="../settings/settingsdialog.cpp" line="630"/>
<source>%1 log (interleaved stdout/stderr)</source> <source>%1 log (interleaved stdout/stderr)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="626"/> <location filename="../settings/settingsdialog.cpp" line="702"/>
<source>%1 exited with exit code %2 <source>%1 exited with exit code %2
</source> </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="630"/> <location filename="../settings/settingsdialog.cpp" line="706"/>
<source>%1 crashed with exit code %2 <source>%1 crashed with exit code %2
</source> </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
@ -505,7 +515,7 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="284"/> <location filename="../settings/settingsdialog.cpp" line="360"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source> <source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -531,22 +541,22 @@
<context> <context>
<name>QtGui::SettingsDialog</name> <name>QtGui::SettingsDialog</name>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="826"/> <location filename="../settings/settingsdialog.cpp" line="902"/>
<source>Tray</source> <source>Tray</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="833"/> <location filename="../settings/settingsdialog.cpp" line="909"/>
<source>Web view</source> <source>Web view</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="840"/> <location filename="../settings/settingsdialog.cpp" line="916"/>
<source>Startup</source> <source>Startup</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="855"/> <location filename="../settings/settingsdialog.cpp" line="931"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -660,8 +670,8 @@
<location filename="../settings/systemdoptionpage.ui" line="99"/> <location filename="../settings/systemdoptionpage.ui" line="99"/>
<location filename="../settings/systemdoptionpage.ui" line="154"/> <location filename="../settings/systemdoptionpage.ui" line="154"/>
<location filename="../settings/systemdoptionpage.ui" line="231"/> <location filename="../settings/systemdoptionpage.ui" line="231"/>
<location filename="../settings/settingsdialog.cpp" line="750"/> <location filename="../settings/settingsdialog.cpp" line="826"/>
<location filename="../settings/settingsdialog.cpp" line="762"/> <location filename="../settings/settingsdialog.cpp" line="838"/>
<source>unknown</source> <source>unknown</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -696,12 +706,12 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="723"/> <location filename="../settings/settingsdialog.cpp" line="799"/>
<source>specified unit is either inactive or doesn&apos;t exist</source> <source>specified unit is either inactive or doesn&apos;t exist</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="745"/> <location filename="../settings/settingsdialog.cpp" line="821"/>
<source>since </source> <source>since </source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -759,7 +769,7 @@
<name>QtGui::WebViewOptionPage</name> <name>QtGui::WebViewOptionPage</name>
<message> <message>
<location filename="../settings/webviewoptionpage.ui" line="6"/> <location filename="../settings/webviewoptionpage.ui" line="6"/>
<location filename="../settings/settingsdialog.cpp" line="784"/> <location filename="../settings/settingsdialog.cpp" line="860"/>
<source>General</source> <source>General</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -789,7 +799,7 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settings/settingsdialog.cpp" line="787"/> <location filename="../settings/settingsdialog.cpp" line="863"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine. <source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source> The Web UI will be opened in the default web browser instead.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>