diff --git a/CMakeLists.txt b/CMakeLists.txt
index 345d19fb..f8e1ec52 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -92,6 +92,9 @@ IF(UNIX AND APPLE)
message(STATUS "RPATH: ${CMAKE_INSTALL_RPATH}")
ENDIF(UNIX AND APPLE)
+# Directory to install translations to
+SET(LOCALE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/share/locale/")
+
# Sources...
add_subdirectory(lib)
add_subdirectory(cli)
diff --git a/i18n/Makefile b/i18n/Makefile
index 63c5b450..5ad3f8a1 100644
--- a/i18n/Makefile
+++ b/i18n/Makefile
@@ -1,2 +1,2 @@
update:
- lupdate ../src/*.cc ../src/*.hh ../src/*.ui ../shared/ui/*.ui ../lib/*.cc -ts empty.ts
+ lupdate ../src/*.cc ../src/*.hh ../src/*.ui ../shared/ui/*.ui ../lib/*.cc -ts empty.ts en_US.ts de.ts
diff --git a/i18n/de.ts b/i18n/de.ts
new file mode 100644
index 00000000..e584431b
--- /dev/null
+++ b/i18n/de.ts
@@ -0,0 +1,3748 @@
+
+
+
+
+ APRSSystemDialog
+
+
+ Create APRS system
+ APRS System erzeugen
+
+
+
+ Edit APRS system
+ APRS System bearbeiten
+
+
+
+ AboutDialog
+
+
+
+ About qdrm
+ Über qdrm
+
+
+
+
+ About qdmr
+ Über qdmr
+
+
+
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html><head><meta name="qrichtext" content="1" /><title>About qdmr</title><style type="text/css">
+p, li { white-space: pre-wrap; }
+</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;">
+<p align="center" style=" margin-top:18px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span></p>
+<p align="center" style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Version %1</span></p>
+<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Hannes Matuschek, DM3MAT<br /> dm3mat@darc.de</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span><span style=" font-family:'.SF NS Text'; font-size:13pt;"> – A platform independent configuration and programming tool for codeplugs of cheap DMR radios.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">You should have received a copy of the GNU General Public License along with this program. If not, see </span><a href="https://www.gnu.org/licenses/"><span style=" font-family:'.SF NS Text'; font-size:13pt; text-decoration: underline; color:#0000ff;">https://www.gnu.org/licenses/</span></a><span style=" font-family:'.SF NS Text'; font-size:13pt;">.</span></p></body></html>
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html><head><meta name="qrichtext" content="1" /><title>Über qdmr</title><style type="text/css">
+p, li { white-space: pre-wrap; }
+</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;">
+<p align="center" style=" margin-top:18px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span></p>
+<p align="center" style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Version %1</span></p>
+<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Hannes Matuschek, DM3MAT<br /> dm3mat@darc.de</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span><span style=" font-family:'.SF NS Text'; font-size:13pt;"> – Ein plattformunabhängiges Tool zum konfigurieren und programmieren von billigen DMR Funkgeräten.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 3 der Lizenz oder (nach Ihrer Option) jeder späteren Version.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. Details finden Sie in der GNU General Public License.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls nicht, siehe </span><a href="https://www.gnu.org/licenses/"><span style=" font-family:'.SF NS Text'; font-size:13pt; text-decoration: underline; color:#0000ff;">https://www.gnu.org/licenses/</span></a><span style=" font-family:'.SF NS Text'; font-size:13pt;">.</span></p></body></html>
+
+
+
+ Supported Radios
+ Unterstützte Geräte
+
+
+
+ AnalogChannelDialog
+
+
+
+ [None]
+ [Kein]
+
+
+
+ Edit Analog Channel
+ Analog Kanal bearbeiten
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and CTCSS tones are filled in (if applicable).</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Hinweis:</span> qdmr bietet Autovervollständigung für Kanäle an, wenn Sie anfangen, das Rufzeichen eines Repeaters einzugeben. Nach drei eingegebenen Zeichen wird eine Anfrage an repeaterbook.com geschickt, um die Informationen der passenden Repeater abzurufen. Diese Anfragen können einen kurzen Moment dauern. Die erhaltenen Ergebnisse werden lokal zwischengespeichert.</p><p>Eine drop-down Liste wird erscheinen, die es Ihnen erlaubt, einen Repeater auszuwählen. Wenn Sie einen Repeater ausgewählt haben, werden die RX & TX Frequenzen sowie die CTCSS Subtoneinstellungen ausgefüllt, insofern vorhanden.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">ausblenden</span></a></p></body></html>
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Rx Frequency
+ RX Frequenz
+
+
+
+ Tx Frequency
+ TX Frequenz
+
+
+
+ Power
+ Leistung
+
+
+
+ Max
+ Maximum
+
+
+
+ High
+ Hoch
+
+
+
+ Mid
+ Mittel
+
+
+
+ Low
+ Niedrig
+
+
+
+ Min
+ Minimum
+
+
+
+
+
+
+ Default
+ Standard
+
+
+
+ Tx Timeout
+ TX Timeout
+
+
+
+
+ Off
+ Aus
+
+
+
+ s
+ Transmit time out (TOT) in seconds. A value of 0 means disabled.
+ s
+
+
+
+ VOX Level
+ VOX Sensitivität
+
+
+
+ Rx Only
+ Nur RX
+
+
+
+ Scan List
+ Scanliste
+
+
+
+ Tx Admit
+ TX Voraussetzung
+
+
+
+ Always
+ Immer
+
+
+
+ Channel Free
+ Kanal frei
+
+
+
+ Tone
+ Subton
+
+
+
+ Squelch
+ Rauschsperre
+
+
+
+ Rx Tone
+ RX Subton
+
+
+
+ Tx Tone
+ TX Subton
+
+
+
+ Bandwidth
+ Bandbreite
+
+
+
+ Narrow (12.5 kHz)
+ Schmal (12.5 kHz)
+
+
+
+ Wide (25 kHz)
+ Breit (25 kHz)
+
+
+
+ APRS
+ APRS
+
+
+
+ Open
+ Offen
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ AnytoneInterface
+
+
+ Unsupported AnyTone radio '%1', HW rev. '%2'.
+ Nicht unterstütztes AnyTone Gerät %1, HW Revision '%2'.
+
+
+
+ AnytoneLimits
+
+
+ You are likely using a newer radio reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible. Notify the developers of qdmr about the new reversion.
+ Wahrscheinlich verwenden Sie eine neuere Revision (%1) des Gerätes als jene, die von qdmr unterstützt wird (%2). Der erzeugte Codeplug könnte inkompatibel sein. Bitte informieren Sie die Entwickler über diese neue Revision.
+
+
+
+ You are likely using an older hardware reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible.
+ Wahrscheinlich verwenden Sie eine ältere Revision (%1) des Gerätes als jene, die von qdmr unterstützt wird (%2). Der Codeplug könnte inkompatibel sein.
+
+
+
+ Application
+
+
+ Settings
+ Einstellungen
+
+
+
+
+ Radio IDs
+ Radio IDs
+
+
+
+ Contacts
+ Kontakte
+
+
+
+ Group Lists
+ Empfangsgruppen
+
+
+
+ Channels
+ Kanäle
+
+
+
+ Zones
+ Zonen
+
+
+
+ Scan Lists
+ Scanlisten
+
+
+
+ GPS/APRS
+ GPS/APRS
+
+
+
+ Roaming
+ Roaming
+
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+
+
+
+ Unsaved changes to codeplug.
+ Nicht gespeicherte Änderungen am Codeplug.
+
+
+
+
+
+
+ There are unsaved changes to the current codeplug. These changes are lost if you proceed.
+ Es gibt nicht gespeicherte Änderungen am Codeplug. Diese gehen verloren, wenn Sie fortfahren.
+
+
+
+ Open codeplug
+ Codeplug öffnen
+
+
+
+ Codeplug Files (*.yaml);;Codeplug Files, old format (*.conf *.csv *.txt);;All Files (*)
+ Codeplug Dateien (*.yaml);;Codeplug Dateien, altes Format (*.conf *.csv *.txt);;Alle Dateien (*)
+
+
+
+
+ Cannot open file
+ Kann Datei nicht öffnen
+
+
+
+
+
+ Cannot read codeplug from file '%1': %2
+ Kann Codeplug nicht aus Datei '%1' lesen: %2
+
+
+
+
+ Cannot read codeplug.
+ Kann Codeplug nicht lesen.
+
+
+
+ Save codeplug
+ Codeplug speichern
+
+
+
+ Codeplug Files (*.yaml *.yml)
+ Codeplug Dateien (*.yaml *.yml)
+
+
+
+ Please use new YAML format.
+ Nutze bitte das neue YAML-Format.
+
+
+
+ Saving in the old table-based conf format was disabled with 0.9.0. Reading these files still works.
+ Das Speichern der Config im alten tabellenbasierten Format wurde mit Version 0.9.0 deaktiviert. Das Einlesen dieser Dateien funktioniert nach wie vor.
+
+
+
+ Cannot save codeplug to file '%1': %2
+ Kann Codeplug nicht in Datei '%1' speichern: %2
+
+
+
+ Cannot save codeplug
+ Kann Codeplug nicht speichern
+
+
+
+ Cannot save codeplug to file '%1'.
+ Kann Codeplug nicht in Datei '%1' speichern.
+
+
+
+ No matching devices found.
+ Kein passendes Gerät gefunden.
+
+
+
+ Cannot connect to radio
+ Verbindung zum Radio nicht möglich
+
+
+
+ Cannot connect to radio: %1
+ Kann keine Verbindung zum Gerät herstellen: %1
+
+
+
+ Radio found
+ Gerät gefunden
+
+
+
+ Found device '%1'.
+ Gerät '%1' gefunden.
+
+
+
+ Verification success
+ Verifizierung erfolgreich
+
+
+
+ The codeplug was successfully verified with the radio '%1'
+ Der aktuelle Codeplug passt zum Gerät '%1'.
+
+
+
+ Read ...
+ Lese …
+
+
+
+ Read error
+ Lesefehler
+
+
+
+ Read complete
+ Gelesen
+
+
+
+ Upload ...
+ Schreibe …
+
+
+
+
+
+ Cannot write call-sign DB.
+ Kann Rufzeichendatenbank nicht schreiben.
+
+
+
+ The detected radio '%1' does not support a call-sign DB.
+ Das Gerät '%1' unterstützt keine Rufzeichendatenbank.
+
+
+
+ The detected radio '%1' does support a call-sign DB. This feature, however, is not implemented yet.
+ Das Gerät '%1' unterstützt eine Rufzeichendatenbank. Diese Feature wurde jedoch noch nicht implementiert.
+
+
+
+ QDMR selects the call-signs to be written based on the default DMR ID of the radio. No default ID set.
+ qdmr kuratiert die Rufzeichendatenbank anhand Ihrer DMR ID. Es wurde keine Standard ID definiert.
+
+
+
+ Write call-sign DB ...
+ Schreibe Rufzeichendatenbank …
+
+
+
+ Write error
+ Schreibfehler
+
+
+
+ Write complete
+ Geschrieben
+
+
+
+ %1 (alias for %2 %3)
+ %1 (Alias für %2 %3)
+
+
+
+ CSVLexer
+
+
+ Lexer error %1,%2: Unexpected char '%3'.
+ Lexerfehler %1,%2: Unerwartetes Zeichen '%3'.
+
+
+
+ CSVReader
+
+
+
+The generic code-plug format might be changed with a new release of qdmr.
+Visit https://github.com/hmatuschek/qdmr/releases for further information.
+
+Das generische Codeplugformat kann sich mit einem neuen Release von qdmr ändern.
+Mehr Informationen finden Sie unter https://github.com/hmatuschek/qdmr/releases.
+
+
+
+ ChannelListView
+
+
+ Select a single channel first
+ Wählen sie zunächst einen Kanal aus.
+
+
+
+ To clone a channel, please select a single channel to clone.
+ Um einen Kanal zu klonen, wählen Sie zunächst einen Kanal aus.
+
+
+
+ Cannot delete channel
+ Kann Kanal nicht löschen
+
+
+
+ Cannot delete channel: You have to select a channel first.
+ Kann Kanal nicht löschen: Wählen Sie zunächst einen Kanal aus.
+
+
+
+
+ Delete channel?
+ Kanal löschen?
+
+
+
+ Delete channel %1?
+ Kanal '%1' löschen?
+
+
+
+ Delete %1 channels?
+ %1 Kanäle löschen?
+
+
+
+ Form
+
+
+
+
+ Add Analog Channel
+ Analogkanal hinzufügen
+
+
+
+ Alt+A
+ Alt+A
+
+
+
+ Add Digital Channel
+ Digitalkanal hinzufügen
+
+
+
+ Alt+D
+ Alt+D
+
+
+
+ Clone Channel
+ Kanal klonen
+
+
+
+ Alt+C
+ Alt+C
+
+
+
+ Delete Channel
+ Kanal löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ChannelListWrapper
+
+
+ Analog
+ Analog
+
+
+
+ Digital
+ Digital
+
+
+
+
+
+
+
+ [Default]
+ [Standard]
+
+
+
+ Max
+ Maximum
+
+
+
+ High
+ Hoch
+
+
+
+ Mid
+ Mittel
+
+
+
+ Low
+ Niedrig
+
+
+
+ Min
+ Minimum
+
+
+
+
+
+
+ Off
+ Aus
+
+
+
+ On
+ Ein
+
+
+
+
+ Always
+ Immer
+
+
+
+
+ Free
+ Frei
+
+
+
+ Color
+ Farbcode
+
+
+
+ Tone
+ Subton
+
+
+
+
+
+
+
+
+ -
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+ Open
+ Offen
+
+
+
+ Wide
+ Breit
+
+
+
+ Narrow
+ Schmal
+
+
+
+ Type
+ Typ
+
+
+
+ Name
+ Name
+
+
+
+ Rx Frequency
+ RX Frequenz
+
+
+
+ Tx Frequency
+ TX Frequenz
+
+
+
+ Power
+ Leistung
+
+
+
+ Timeout
+ Timeout
+
+
+
+ Rx Only
+ Nur RX
+
+
+
+ Admit
+ Sendevoraussetzung
+
+
+
+ Scanlist
+ Scanliste
+
+
+
+ CC
+ CC
+
+
+
+ TS
+ TS
+
+
+
+ RX Group List
+ Empfangsgruppe
+
+
+
+ TX Contact
+ TX Kontakt
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ GPS/APRS
+ GPS/APRS
+
+
+
+ Roaming
+ Roaming
+
+
+
+ Squelch
+ Rauschsperre
+
+
+
+ Rx Tone
+ RX Subton
+
+
+
+ Tx Tone
+ TX Subton
+
+
+
+ Bandwidth
+ Bandbreite
+
+
+
+ ChannelRefListWrapper
+
+
+ Channel
+ Kanal
+
+
+
+ ChannelSelectionDialog
+
+
+ Select a channel:
+ Wählen Sie einen Kanal aus:
+
+
+
+ ConfigObjectListView
+
+
+
+ Cannot move items.
+ Kann Elemente nicht verschieben.
+
+
+
+
+ Cannot move items: You have to select at least one item first.
+ Kann Elemente nicht verschieben: Wählen Sie zunächst mind. ein Element aus.
+
+
+
+ Form
+
+
+
+
+ ConfigObjectTableView
+
+
+
+ Cannot move items.
+ Kann Elemente nicht verschieben
+
+
+
+
+ Cannot move items: You have to select at least one item first.
+ Kann Elemente nicht verschieben: Wählen Sie zunächst mind. ein Element aus.
+
+
+
+ Form
+
+
+
+
+ ConfigObjectTypeSelectionDialog
+
+
+ An instance of %1.
+ Eine Instanz von '%1'.
+
+
+
+ <p>%1<p><p style="margin-left:10px;">%2</p>
+ <p>%1<p><p style="margin-left:10px;">%2</p>
+
+
+
+ Dialog
+
+
+
+
+ Select the class of object to create
+ Wählen Sie die Klasse des Objektes aus, das Sie erzeugen wollen.
+
+
+
+ ContactListView
+
+
+ Cannot delete contact
+ Kann Kontakt nicht löschen
+
+
+
+ Cannot delete contact: You have to select a contact first.
+ Kann Kontakt nicht löschen: Wählen Sie zunächst einen Kontakt aus.
+
+
+
+ Delete contact?
+ Kontakt löschen?
+
+
+
+ Delete contact %1?
+ Kontakt '%1' löschen?
+
+
+
+ Delete contacts?
+ Kontakte löschen?
+
+
+
+ Delete %1 contacts?
+ Sollen %1 Kontakte gelöscht werden?
+
+
+
+ Form
+
+
+
+
+ Adds a contact to the list.
+ Fügt einen Kontakt zu Liste hinzu.
+
+
+
+ Add contact button
+ Dieser Button fügt einen Kontakt zur Liste hinzu.
+
+
+
+ Add Digital Contact
+ Digitalkontakt hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Add DTMF Contact
+ DTMF-Kontakt hinzufügen
+
+
+
+ Delete contact button
+ Dieser Button löscht den ausgewählten Kontakt.
+
+
+
+ Delete Contact
+ Kontakt löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ContactListWrapper
+
+
+ DTMF
+ DTMF
+
+
+
+
+ On
+ An
+
+
+
+
+ Off
+ Aus
+
+
+
+ Private Call
+ Direktruf
+
+
+
+ Group Call
+ Gruppenruf
+
+
+
+ All Call
+ Rundruf
+
+
+
+ Type
+ Typ
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Nummer
+
+
+
+ RX Tone
+ RX Subton
+
+
+
+ D878UVCodeplug
+
+
+ APRS %1
+ ARPS '%1'
+
+
+
+ GPS Sys #%1
+ GPS Sys #%1
+
+
+
+ GPS #%1 Contact
+ GPS #%1 Kontakt
+
+
+
+ DFUFile
+
+
+ Cannot read DFU file '%1': Cannot read element prefix: %2
+ Kann DFU Datei '%1' nicht lesen: Kann Elementprefix nicht lesen: %2
+
+
+
+ Cannot read DFU file '%1': Cannot read element data: %2
+ Kann DFU Datei '%1' nicht lesen: Kann Elementdaten nicht lesen: %2
+
+
+
+ Cannot write element prefix to file '%1': %2
+ Kann Elementprefix nicht in die Datei '%1' schreiben: %2
+
+
+
+ Cannot write element data to file '%1': %2
+ Kann Elementdaten nicht in die Datei '%1' schreiben: %2
+
+
+
+ Cannot read DFU file '%1': Cannot read image: %2
+ Kann DFU Datei '%1' nicht lesen: Kann Abbild nicht lesen: %2
+
+
+
+ Cannot read DFU file '%1': Invalid image signature value.
+ Kann DFU Datei '%1' nicht lesen: Invalide Abbildsignatur.
+
+
+
+ Cannot read DFU file '%1': Invalid image size %2b specified, expected %3b.
+ Kann DFU Datei '%1' nicht lesen: Inkorrekte Abbildgröße %2b spezifiziert, erwartet %3b.
+
+
+
+ Cannot write image prefix to '%1': %2.
+ Kann Abbildprefix nicht in '%1' schreiben: %2
+
+
+
+ DMRContactDialog
+
+
+ Create DMR Contact
+ DMR Kontakt erstellen
+
+
+
+ Edit DMR Contact
+ DMR Kontakt bearbeiten
+
+
+
+ Private Call
+ Direktruf
+
+
+
+ Group Call
+ Gruppenruf
+
+
+
+ All Call
+ Rundruf
+
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+
+
+ Type
+ Typ
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Nummer
+
+
+
+ Ring
+ Klingelton
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ DMRIDDialog
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ DTMFContactDialog
+
+
+ Create DTMF Contact
+ DTMF Contakt erstellen
+
+
+
+ Edit DMR Contact
+ DTMF Kontakt bearbeiten
+
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Nummer
+
+
+
+ Ring
+ Klingelton
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ DefaultRadioID
+
+
+ [Default]
+ [Standard]
+
+
+
+ DefaultRoamingZone
+
+
+ [Default]
+ [Standard]
+
+
+
+ DeviceSelectionDialog
+
+
+ Select a device
+ Wählen Sie ein Gerät aus
+
+
+
+ <html><head/><body><p>There is either more than one device detected or the one found is not considered save to access. Either way, select the device to use.</p></body></html>
+ Es entweder es wurden mehrere Gräte gefunden oder eines dieser Geräte wird als unsicher betrachtet. Wie dem auch sei, wählen Sie ein Gerät aus.
+
+
+
+ DigitalChannelDialog
+
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+
+ [Default]
+ [Standard]
+
+
+
+ Edit Digital Channel
+ Digitalkanal bearbeiten
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and color-code are filled in.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Hinweis:</span> qdmr bietet Autovervollständigung für Kanäle an, wenn Sie anfangen, das Rufzeichen eines Repeaters einzugeben. Nach drei eingegebenen Zeichen wird eine Anfrage an repeaterbook.com geschickt, um die Informationen der passenden Repeater abzurufen. Diese Anfragen können einen kurzen Moment dauern. Die erhaltenen Ergebnisse werden lokal zwischengespeichert.</p><p>Eine drop-down Liste wird erscheinen, die es Ihnen erlaubt, einen Repeater auszuwählen. Wenn Sie einen Repeater ausgewählt haben, werden die RX & TX Frequenzen sowie die Farbcodeeinstellung ausgefüllt.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Rx Frequency
+ RX Frequenz
+
+
+
+ Tx Frequency
+ TX Frequenz
+
+
+
+ Power
+ Leistung
+
+
+
+ Tx Timeout
+ TX Timeout
+
+
+
+ Rx Only
+ Nur RX
+
+
+
+ Scan List
+ Scanliste
+
+
+
+ Max
+ Maximum
+
+
+
+ High
+ Hoch
+
+
+
+ Mid
+ Mittel
+
+
+
+ Low
+ Niedrig
+
+
+
+ Min
+ Minimum
+
+
+
+
+
+ Default
+ Standard
+
+
+
+ Specifies the transmit timeout in seconds. A value of 0 means that the transmit timeout is disabled.
+ Legt den Sendetimeout in Sekunden fest. Der Sendetimeout limitiert die Dauer einer einzelnen Aussendung. Ein Wert von 0 deaktiviert den Sendetimeout.
+
+
+
+
+ Off
+ Aus
+
+
+
+ s
+ s
+
+
+
+ VOX Level
+ VOX Empfindlichkeit
+
+
+
+ Tx Admit
+ Sendevoraussetzung
+
+
+
+ Always
+ Immer
+
+
+
+ Channel Free
+ Kanal frei
+
+
+
+
+ Color Code
+ Farbcode
+
+
+
+ Time Slot
+ Zeitschlitz
+
+
+
+ TS 1
+ TS 1
+
+
+
+ TS 2
+ TS 2
+
+
+
+ Rx Group List
+ Empfangsgruppe
+
+
+
+ Tx Contact
+ TX Kontakt
+
+
+
+ Positioning System
+ APRS System
+
+
+
+ Roaming Zone
+ Roamingzone
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Extended
+ Erweitert
+
+
+
+ Device specific settings
+ Gerätespezifische Einstellungen
+
+
+
+ ErrorMessageView
+
+
+ Error: Unknown.
+ Fehler: Unbekannt.
+
+
+
+ Error: %1
+ Fehler: %1
+
+
+
+ Dialog
+
+
+
+
+
+ TextLabel
+
+
+
+
+ Traceback:
+ Fehlerverfolgung:
+
+
+
+ ExtensionView
+
+
+ Cannot create extension.
+ Kann Erweiterung nicht erzeugen.
+
+
+
+ Cannot create extension, consider reporting a bug.
+ Kann Erweiterung nicht erzeugen. Bitte melden Sie diesen Fehler.
+
+
+
+ Cannot create list element.
+ Kann Listenelement nicht anlegen.
+
+
+
+ Cannot create list element, consider reporting a bug.
+ Kann Listenelement nicht anlegen. Bitte berichten Sie diesen Fehler.
+
+
+
+ Form
+
+
+
+
+ Create
+ Erzeugen
+
+
+
+ Remove
+ Entfernen
+
+
+
+ GPSSystemDialog
+
+
+ Create DMR APRS Sysmtem
+ DMR-APRS System erzeugen
+
+
+
+ Edit DMR APRS Sysmtem
+ DMR-APRS System bearbeiten
+
+
+
+ [Selected]
+ [Auswahl]
+
+
+
+ Edit GPS System
+ GPS System bearbeiten
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Destination
+ Ziel
+
+
+
+ Update period [s]
+ Updateperiode [s]
+
+
+
+ Revert Channel
+ Sendekanal
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ GeneralSettingsView
+
+
+ Form
+
+
+
+
+ DMR Radio ID
+ DMR Radio ID
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Radio Name
+ Radioname
+
+
+
+ Enter your name or callsign.
+ Geben Sie hier Ihren Namen oder Ihr Rufzeichen ein.
+
+
+
+ Name/Callsign
+ Name/Rufzeichen
+
+
+
+ Boot Settings
+ Boot-Einstellungen
+
+
+
+ Intro Line 1
+ Begrüßungszeile 1
+
+
+
+ First greeting line (if supported by the radio).
+ Erste Begrüßungszeile (insofern das Gerät dies unterstützt).
+
+
+
+ Intro line 1
+ Begrüßungszeile 1
+
+
+
+ Intro Line 2
+ Begrüßungszeile 2
+
+
+
+ Second greeting line (if supported by the radio).
+ Zweite Begrüßungszeile (insofern das Gerät dies unterstützt).
+
+
+
+ Intro line 2
+ Begrüßungszeile 2
+
+
+
+ Audio Settings
+ Audioeinstellungen
+
+
+
+ MIC Amp.
+ MIC Verstärkung
+
+
+
+ Speech Synthesis
+ Sprachsynthese
+
+
+
+ Channel Default Values
+ Kanal-Standardwerte
+
+
+
+ Power
+ Leistung
+
+
+
+ Max
+ Maximum
+
+
+
+ High
+ Hoch
+
+
+
+ Mid
+ Mittel
+
+
+
+ Low
+ Niedrig
+
+
+
+ Min
+ Minimum
+
+
+
+ Squelch
+ Rauschsperre
+
+
+
+ Open
+ Offen
+
+
+
+ Transmit Timeout
+ TX Timeout
+
+
+
+
+ Off
+ Aus
+
+
+
+ s
+ s
+
+
+
+ VOX Level
+ VOX Empfindlichkeit
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ GroupListWrapper
+
+
+ Contact
+ Kontakt
+
+
+
+ GroupListsView
+
+
+ Cannot delete RX group list
+ Kann Empfangsgruppe nicht löschen
+
+
+
+ Cannot delete RX group lists: You have to select a group list first.
+ Kann Empfangsgruppe nicht löschen: Wählen Sie zunächst eine Gruppe aus.
+
+
+
+
+ Delete RX group list?
+ Empfangsgruppe löschen?
+
+
+
+ Delete RX group list %1?
+ Empfangsgruppe '%1' löschen?
+
+
+
+ Delete %1 RX group lists?
+ %1 Empfangsgruppen löschen?
+
+
+
+ Form
+
+
+
+
+ Add RX Group
+ Empfangsgruppe hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete RX Group
+ Empfangsgruppe löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ GroupListsWrapper
+
+
+ RX Group Lists
+ Empfangsgruppen
+
+
+
+ MainWindow
+
+
+ qdmr [*]
+ qdmr [*]
+
+
+
+ Main window
+ Hauptfenster
+
+
+
+ Tablist
+
+
+
+
+ There are 6 tabs providing general settings, contact, Rx group, channel zone and scan lists.
+ Es gibt mehrere Reiter, über die Sie die Einstellungen, Kontakte, Empfangsgruppen, Kanäle, Zonen, Scanlisten etc. bearbeiten können.
+
+
+
+ File
+ Datei
+
+
+
+ Device
+ Gerät
+
+
+
+
+ Help
+ Hilfe
+
+
+
+ Databases
+ Datenbanken
+
+
+
+ toolBar
+
+
+
+
+ Toolbar
+ Werkzeugleiste
+
+
+
+ New
+ Neu
+
+
+
+ Creates a new Codeplug.
+ Erzeugt einen neuen Codeplug
+
+
+
+ Ctrl+N
+ Strg+N
+
+
+
+ Open ...
+ Öffnen …
+
+
+
+ <html><head/><body><p>Imports a codeplug from "conf" files.</p></body></html>
+ Importiert ein Codeplug von "conf" Dateien.
+
+
+
+ Ctrl+O
+ Strg+O
+
+
+
+ Save ...
+ Speichern …
+
+
+
+ <html><head/><body><p>Saves the codeplug in a "conf" file.</p></body></html>
+ Speichert den Codeplug in einer "conf" Datei.
+
+
+
+ Ctrl+S
+ Strg+S
+
+
+
+ Quit
+ Beenden
+
+
+
+ Quits the application.
+ Beendet qdmr.
+
+
+
+ Ctrl+Q
+ Strg+Q
+
+
+
+ Detect
+ Detektieren
+
+
+
+ Detect connected radios.
+ Detektiert angeschlossene Geräte.
+
+
+
+ Verify
+ Verifizieren
+
+
+
+ <html><head/><body><p>Verifies the current codeplug with connected radios.</p></body></html>
+ Verifiziert den aktuellen Codeplug für angeschlossene Geräte.
+
+
+
+ Ctrl+R
+ Strg+R
+
+
+
+ Read
+ Lesen
+
+
+
+ Reads a codeplug from connected radios.
+ Liest den Codeplug vom angeschlossenen Gerät.
+
+
+
+ Write
+ Schreiben
+
+
+
+ Writes the codeplug to the connected radio.
+ Schreibt den aktuellen Codeplug auf das angeschlossene Gerät.
+
+
+
+ About qdmr
+ Über qdmr
+
+
+
+ Read the handbook.
+ Lesen Sie das Handbuch.
+
+
+
+ F1
+ F1
+
+
+
+ Settings
+ Einstellungen
+
+
+
+ Shows settings dialog
+ Zeigt den Einstellungsdialog an.
+
+
+
+ Write Callsign DB
+ Rufzeichendatenbank schreiben
+
+
+
+ Writes call-sign DB to radio.
+ Schreibt die Rufzeichendatenbank auf das Gerät.
+
+
+
+ Refresh Callsign DB
+ Rufzeichendatenbank aktualisieren
+
+
+
+ Refreshes the downloaded callsign DB
+ Aktualisiert die lokale Rufzeichendatenbank im Hintergrund aus den Onlinequellen.
+
+
+
+ Refresh Talkgroup DB
+ Sprechgruppendatenbank aktualisieren
+
+
+
+ Refreshes the downloaded talkgroup DB
+ Aktualisiert die Sprechgruppendatenbank im Hintergrund aus den Onlinequellen.
+
+
+
+ MultiChannelSelectionDialog
+
+
+ [Selected]
+ [Auswahl]
+
+
+
+ Select a channel:
+ Wählen Sie einen Kanal:
+
+
+
+ MultiGroupCallSelectionDialog
+
+
+ Show private calls
+ Direktrufe anzeigen
+
+
+
+ Select a group call:
+ Wählen Sie einen Gruppenruf aus:
+
+
+
+ PositioningSystemListView
+
+
+ Cannot delete GPS system
+ Kann GPS System nicht löschen
+
+
+
+ Cannot delete GPS system: You have to select a GPS system first.
+ Kann GPS System nicht löschen: Wählen Sie zunächst ein GPS System aus.
+
+
+
+
+ Delete positioning system?
+ GPS System löschen?
+
+
+
+ Delete positioning system %1?
+ GPS System '%1' löschen?
+
+
+
+ Delete %1 positioning systems?
+ %1 GPS Systeme löschen?
+
+
+
+ Form
+
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support GPS or APRS. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Hinweis:</span> qdmr ist eine geräteunabhängige CPS. Jedoch unterstützen nicht alle Geräte GPS/APRS. Daher werden diese Einstellungen ignoriert, wenn der Codeplug auf Geräte geschrieben wird, die kein GPS/APRS unterstützen.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Verstecken</span></a></p></body></html>
+
+
+
+ Add GPS System
+ GPS System hinzufügen
+
+
+
+ Alt+G
+ Alt+G
+
+
+
+ Add APRS System
+ APRS System hinzufügen
+
+
+
+ Alt+A
+ Alt+A
+
+
+
+ Delete Position System
+ GPS/APRS System löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ PositioningSystemListWrapper
+
+
+ DMR
+ DMR
+
+
+
+ APRS
+ APRS
+
+
+
+ OOps!
+ Oops!
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+ %1-%2
+ %1-%2
+
+
+
+ [Selected]
+ [Auswahl]
+
+
+
+ OOPS!
+ Oops!
+
+
+
+ Type
+ Typ
+
+
+
+ Name
+ Name
+
+
+
+ Destination
+ Ziel
+
+
+
+ Period [s]
+ Periode [s]
+
+
+
+ Channel
+ Kanal
+
+
+
+ Message
+ Nachricht
+
+
+
+ PropertyDelegate
+
+
+ False
+ Falsch
+
+
+
+ True
+ Wahr
+
+
+
+ [None]
+ [Kein]
+
+
+
+ PropertyWrapper
+
+
+ new element
+ neues Element
+
+
+
+ Property
+ Eigenschaft
+
+
+
+ Value
+ Wert
+
+
+
+ Description
+ Beschreibung
+
+
+
+ true
+ wahr
+
+
+
+ false
+ falsch
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+ Instance of %1
+ Instanz von '%1'
+
+
+
+ List of %1 instances
+ Liste von Instanzen von '%1'
+
+
+
+ QObject
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+ Police station
+ Polizeiwache
+
+
+
+ Digipeater
+ Digipeater
+
+
+
+ Phone
+ Telefon
+
+
+
+ DX cluster
+ DX Cluster
+
+
+
+ HF gateway
+ HF-Gateway
+
+
+
+ Plane small
+ kleines Flugzeug
+
+
+
+ Mobile Satellite station
+ mobile Satellitenstation
+
+
+
+ Wheel Chair
+ Rollstuhl
+
+
+
+ Snowmobile
+ Scheemobil
+
+
+
+ Red cross
+ Rotes Kreuz
+
+
+
+ Boy scout
+ Pfadfinder
+
+
+
+ Home
+ zu Hause
+
+
+
+ X
+ X
+
+
+
+ Red dot
+ roter Punkt
+
+
+
+ Circle 0
+ Kreis 0
+
+
+
+ Circle 1
+ Kreis 1
+
+
+
+ Circle 2
+ Kreis 2
+
+
+
+ Circle 3
+ Kreis 3
+
+
+
+ Circle 4
+ Kreis 4
+
+
+
+ Circle 5
+ Kreis 5
+
+
+
+ Circle 6
+ Kreis 6
+
+
+
+ Circle 7
+ Kreis 7
+
+
+
+ Circle 8
+ Kreis 8
+
+
+
+ Circle 9
+ Kreis 9
+
+
+
+ Fire
+ Feuer
+
+
+
+ Campground
+ Campingplatz
+
+
+
+ Motorcycle
+ Motorrad
+
+
+
+ Rail engine
+ Lok
+
+
+
+ Car
+ Auto
+
+
+
+ File server
+ Dateiserver
+
+
+
+ HC Future
+ Hurrikan Vorhersage
+
+
+
+ Aid station
+ Erste Hilfe
+
+
+
+ BBS
+ Mailbox
+
+
+
+ Canoe
+ Kanu
+
+
+
+ Eyeball
+ Augapfel
+
+
+
+ Tractor
+ Traktor
+
+
+
+ Grid Square
+ Grid Square
+
+
+
+ Hotel
+ Hotel
+
+
+
+ TCP/IP
+ TCP/IP
+
+
+
+ School
+ Schule
+
+
+
+ Logon
+ Logon
+
+
+
+ MacOS
+ MacOS
+
+
+
+ NTS station
+ NTS-Station
+
+
+
+ Balloon
+ Ballon
+
+
+
+ Police car
+ Polizeiauto
+
+
+
+ TBD
+ TBD
+
+
+
+ RV
+ RV
+
+
+
+ Shuttle
+ Shuttle
+
+
+
+ SSTV
+ SSTV
+
+
+
+ Bus
+ Bus
+
+
+
+ ATV
+ ATV
+
+
+
+ Weather service
+ Wetterdienst
+
+
+
+ Helo
+ Helo
+
+
+
+ Yacht
+ Yacht
+
+
+
+ MS Windows
+ MS Windows
+
+
+
+ Jogger
+ Jogger
+
+
+
+ Triangle
+ Dreieck
+
+
+
+ PBBS
+ PBBS
+
+
+
+ Pane large
+ großes Flugzeug
+
+
+
+ Weather station
+ Wetterstation
+
+
+
+ Dish antenna
+ Parabolantenne
+
+
+
+ Ambulance
+ Krankenwagen
+
+
+
+ Bike
+ Fahrrad
+
+
+
+ ICP
+ ICP
+
+
+
+ Fire station
+ Feuerwache
+
+
+
+ Horse
+ Pferd
+
+
+
+ Fire truck
+ Löschzug
+
+
+
+ Glider
+ Gleiter
+
+
+
+ Hospital
+ Krankenhaus
+
+
+
+ IOTA
+ IOTA
+
+
+
+ Jeep
+ Jeep
+
+
+
+ Truck small
+ kleiner Truck
+
+
+
+ Laptop
+ Laptop
+
+
+
+ Mic-E
+ Mic-E
+
+
+
+ Node
+ Knoten
+
+
+
+ EOC
+ EOC
+
+
+
+ Rover
+ Rover
+
+
+
+ Grid
+ Grid
+
+
+
+ Antenna
+ Antenne
+
+
+
+ Power boat
+ Motorboot
+
+
+
+ Truck stop
+ Rastplatz
+
+
+
+ Truck large
+ großer Truck
+
+
+
+ Van
+ Van
+
+
+
+ Water
+ Wasser
+
+
+
+ XAPRS
+ XAPRS
+
+
+
+ Yagi
+ Yagi
+
+
+
+ Shelter
+ Schutzhütte
+
+
+
+ Cannot open file '%1': File does not exist.
+ Kann Datei '%1' nicht öffnen: Datei existiert nicht.
+
+
+
+ Cannot open file '%1': %2.
+ Kann Datei '%1' nicht öffnen: %2
+
+
+
+ Cannot read header from file '%1': %2.
+ Kann Header nicht aus Datei '%1' lesen: %2.
+
+
+
+ Malformed header in file '%1': Mismatching content size. Expected %2, got %3.
+ Invalider Hader in Datei '%1': Inhaltsgröße stimmt nicht überein: Erwarte %2, gelesen %3.
+
+
+
+ Cannot mmap file '%1': %2.
+ Kann Datei '%1' nicht per mmap laden: %2.
+
+
+
+ Cannot read codeplug file '%1': Unknown model '%2'.
+ Kann Codeplug nicht aus Datei '%1' lesen: Unbekanntes Modell '%2'.
+
+
+
+ Cannot read codeplug file '%1': Model '%2' not implemented yet.
+ Kann Codeplug nicht aus Datei '%1' lesen: Modell '%2' noch nicht implementiert.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cannot read codeplug file '%1': %2
+ Kann Codeplug nicht aus Datei '%1' lesen: %2
+
+
+
+ Invalid read response: Expected command 'W' got '%1'
+ Invalide Antwort auf Leseanfrage: Erwarte Kommando 'W', erhalten '%1'.
+
+
+
+ Invalid read response: Expected address '%1' got '%2'
+ Invalide Antwort auf Leseanfrage: Erwarte Adresse '%1', erhalten '%2'.
+
+
+
+ Invalid read response: Expected size 64 got %1
+ Invalide Antwort auf Leseanfrage: Erwarte Größe 64, erhalten %1.
+
+
+
+ Invalid read response: Expected check-sum %1 got %2
+ Invalide Antwort auf Leseanfrage: Erwarte Prüfsumme %1, erhalten %2.
+
+
+
+ Invalid read response: Expected ACK 6 got %1
+ Invalide Antwort auf Leseanfrage: Erwarte ACK 6, erhalten %1.
+
+
+
+ 0x%1: Cannot add zone to config.
+ 0x%1: Kann Zone nicht hinzufügen.
+
+
+
+ 0x%1: Cannot add channel %2 to zone '%3'.
+ 0x%1: Kann Kanal '%2' zur Zone '%3' hinzufügen.
+
+
+
+ 0x%1: Cannot add channel %2 to scan list '%3'.
+ 0x%1: Kann Kanal '%2' nicht zur Scanliste '%3' hinzufügen.
+
+
+
+
+
+
+
+
+ Cannot open file '%1': File does not exisist.
+ Kann Datei '%1' nicht öffnen: Datei existiert nicht.
+
+
+
+
+
+ Cannot read codeplug file '%1': File size is not 852533 bytes.
+ Kann Codeplug nicht aus Datei '%1' lesen: Dateigröße entspricht nicht 852533 Bytes.
+
+
+
+
+
+
+
+
+ Cannot open file '%1': %2
+ Kann Datei '%1' öffnen: %2
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cannot read codeplug file '%1': Cannot seek within file: %2
+ Kann Codeplug nicht aus Datei '%1' lesen: Kann nicht innerhalb der Datei suchen: %2
+
+
+
+
+ Cannot read codeplug file '%1': File size is not 131072 bytes.
+ Kann Codeplug nicht aus Datei '%1' lesen: Dateigröße entspricht nicht 131072 Bytes.
+
+
+
+ Cannot read codeplug file '%1': File size is not 262709 bytes.
+ Kann Codeplug nicht aus Datei '%1' lesen: Dateigröße entspricht nicht 262709 Bytes.
+
+
+
+ CTCSS %1Hz
+ CTCSS %1Hz
+
+
+
+ DCS %1 N
+ DCS %1 N
+
+
+
+ DCS %1 I
+ DCS %1 I
+
+
+
+ RXGroupListDialog
+
+
+ Create Group List
+ Empfangsgruppe erzeugen
+
+
+
+ Edit Group List
+ Empfangsgruppe bearbeiten
+
+
+
+ Cannot remove group call
+ Kann Empfangsgruppe nicht entfernen
+
+
+
+ Cannot remove group call: You have to select at least one group call first.
+ Kann Empfangsgruppe nicht löschen: Wählen Sie zunächst eine Gruppe aus.
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Add Contact
+ Kontakt hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Contact
+ Kontakt entfernen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ Radio
+
+
+ Unhandled device %1 '%2'. Device known but not implemented yet.
+ Gerät %1 '%2' nicht unterstützt. Das Gerät ist bekannt, jedoch noch nicht implementiert.
+
+
+
+ Unknown AnyTone (or similar) device.
+ Unbekanntes AnyTone (oder ähnliches) Gerät.
+
+
+
+ RadioIDListView
+
+
+ Cannot delete radio IDs
+ Kann Radio ID nicht löschen
+
+
+
+ Cannot delete radio IDs: You have to select a radio ID first.
+ Kann Radio ID nicht löschen: Wählen Sie zunächst eine ID aus.
+
+
+
+ Delete radio ID?
+ Radio ID löschen?
+
+
+
+ Delete radio ID %1?
+ Radio ID '%1' löschen?
+
+
+
+ Delete scan lists?
+ Scanliste löschen?
+
+
+
+ Delete %1 scan lists?
+ %1 Scanlisten löschen?
+
+
+
+ Form
+
+
+
+
+ Default Radio ID
+ Standard Radio ID
+
+
+
+ Add Radio ID
+ Radio ID hinzufügen
+
+
+
+ Delete Radio ID
+ Radio ID löschen
+
+
+
+ RadioIdListWrapper
+
+
+ Type
+ Typ
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Nummer
+
+
+
+ RadioLimitIgnored
+
+
+ Ignore %1 '%2'. Not applicable/supported by this radio.
+ Ignoriere %1 '%2'. Nicht anwendbar auf oder unterstützt durch dieses Gerät.
+
+
+
+ RadioLimitStringIgnored
+
+
+ Expected value of '%1' to be string.
+ Der Wert von '%1' muss eine Zeichekette sein.
+
+
+
+ Value of '%1' is ignored. Not applicable/supported by the radio.
+ Wert von '%1' wird ignoriert. Nicht anwendbar auf oder unterstützt durch das Gerät.
+
+
+
+ RadioLimits
+
+
+ The support for this radio is still under development. Some features may sill be missing or are not well tested.
+ Die Unterstützung für dieses Gerät ist aktuell noch in der Entwicklung. Einige Features können fehlen oder sind nicht gut getestet.
+
+
+
+ RadioSelectionDialog
+
+
+ Cannot auto-detect radio
+ Kann Gerät nicht automatisch detektieren
+
+
+
+ Select a specific radio
+ Wählen Sie Ihr Gerät aus
+
+
+
+ ReleaseNotes
+
+
+ Cannot download release notes from https://github.com/hmatuschek/qdmr
+ %1
+ Kann Releaseinformationen nicht von https://github.com/hmatuschek/qdmr laden
+ %1
+
+
+
+ Cannot read release notes from https://github.com/hmatuschek/qdmr
+ Release is not a JSON object!
+ Kann Releaseinformationen nicht von https://github.com/hmatuschek/qdmr laden
+ Informationen sind kein JSON Objekt!
+
+
+
+ Cannot read release notes from https://github.com/hmatuschek/qdmr
+ Release does not contain a release note.
+ Kann Releaseinformationen nicht von https://github.com/hmatuschek/qdmr laden
+ Release enthält keine Informationen.
+
+
+
+ qDMR was updated to version %1
+ Eine neue Version %1 von qdmr wurde freigegeben.
+
+
+
+ RepeaterBookList
+
+
+ %1 (%2, %3, %4)
+ %1 (%2, %3, %4)
+
+
+
+ RoamingListWrapper
+
+
+ %1 (containing %2 channels)
+ %1 (mit %2 Kanälen)
+
+
+
+ Roaming zone
+ Roamingzone
+
+
+
+ RoamingZoneDialog
+
+
+ Create Roaming Zone
+ Roamingzone erzeugen
+
+
+
+ Set Roaming Zone
+ Roamingzone bearbeiten
+
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+
+
+ Name:
+ Name:
+
+
+
+ Add Channel
+ Kanal hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Channel
+ Kanal entfernen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extension
+ Erweiterung
+
+
+
+ RoamingZoneListView
+
+
+ Generate roaming zone
+ Roamingzone erzeugen
+
+
+
+ Create a roaming zone by collecting all channels with these group calls.
+ Eine Roamingzone aus allen Kanälen mit diesen Gruppenrufen erzeugen.
+
+
+
+ Cannot delete roaming zone
+ Kann Roamingzone nicht löschen
+
+
+
+ Cannot delete roaming zone: You have to select a zone first.
+ Kann Roamingzone nicht löschen: Wählen Sie zunächst eine Zone aus.
+
+
+
+ Delete roaming zone?
+ Roamingzone löschen?
+
+
+
+ Delete roaming zone %1?
+ Roamingzone '%1' löschen?
+
+
+
+ Delete roaming zones?
+ Roamingzonen löschen?
+
+
+
+ Delete %1 roaming zones?
+ %1 Roamingzonen löschen?
+
+
+
+ Form
+
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support Roaming. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr ist eine geräteunabhängige CPS. Jedoch unterstützen nicht alle Geräte das Roaming, Diese Einstellungen werden ignoriert, wenn Sie den Codeplug auf solche Geräte schreiben. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Ausblenden</span></a></p></body></html>
+
+
+
+ Add Roaming Zone
+ Roamingzone hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Generate Roaming Zone
+ Roamingzone erzeugen
+
+
+
+ Delete Roaming Zone
+ Roamingzone löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ScanListDialog
+
+
+
+ Edit Scan List
+ Scanliste bearbeiten
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Primary Channel (50%)
+ Primärkanal (50%)
+
+
+
+ Secondary Channel (25%)
+ Sekundärer Kanal (25%)
+
+
+
+ Transmit Channel
+ Sendekanal
+
+
+
+ Add Channel
+ Kanal hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Channel
+ Kanal entfernen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ Create Scan List
+ Scanliste erstellen
+
+
+
+
+ [None]
+ [Kein]
+
+
+
+
+
+ [Selected]
+ [Auswahl]
+
+
+
+ [Last]
+ [Letzter]
+
+
+
+ ScanListsView
+
+
+ Cannot delete scanlist
+ Kann Scanliste nicht löschen
+
+
+
+ Cannot delete scanlist: You have to select a scanlist first.
+ Kann Scanliste nicht löschen: Wählen Sie zunächst eine Scanliste aus.
+
+
+
+ Delete scan list?
+ Scanliste löschen?
+
+
+
+ Delete scan list %1?
+ Scanliste '%1' löschen?
+
+
+
+ Delete scan lists?
+ Scanlisten löschen?
+
+
+
+ Delete %1 scan lists?
+ %1 Scanlisten löschen?
+
+
+
+ Form
+
+
+
+
+ Add Scan List
+ Scanliste hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete Scan List
+ Scanliste löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ScanListsWrapper
+
+
+ Scan-List
+ Scanliste
+
+
+
+ SearchPopup
+
+
+ Ctrl+F
+ Ctrl+F
+
+
+
+
+
+ %1/%2
+ %1/%2
+
+
+
+ SettingsDialog
+
+
+ Warning!
+ Warnung!
+
+
+
+ Settings
+ Einstellungen
+
+
+
+ Location
+ Position
+
+
+
+ System location
+ Systemposition
+
+
+
+ Locator
+ Locator
+
+
+
+ Radio Programming
+ Geräteprogrammierung
+
+
+
+ Update codeplug
+ Codeplug updaten
+
+
+
+ <html><head/><body><p>Update the codeplug on the radio. If not selected, the codeplug on the radio gets overridden with possibly incomplete default values.</p><p><br/></p><p>If selected, QDMR downloads the codeplug from the radio and updates only those settings specified. The remaining settings within the radio are not touched (recommended).</p></body></html>
+ <html><head/><body><p>Aktualisiert den Codeplug auf dem Gerät. Wenn nicht ausgewählt, wird der Codeplug auf dem Gerät überschrieben, mit mehr oder weniger guten Standardeinstellungen.</p><p><br/></p><p>Wenn ausgewählt, wird qdmr den Codeplug auf dem Gerät zunächst herunterladen, mit den Einstellungen aus diesem Codeplug aktualisieren und diesen aktualisierten Codeplug zurück auf das Gerät schreiben (empfohlen).</p></body></html>
+
+
+
+ Auto-enable GPS
+ GPS automatisch einschalten
+
+
+
+ When a GPS or APRS system is defined and used for any channel, the GPS module gets enabled automatically.
+ Wenn ein GPS/APRS System für irgendeinen Kanal gesetzt wurde, wird das GPS Modul (insofern vorhanden) automatisch eingeschaltet.
+
+
+
+ When a roaming zone is defined and used by any channel, the automatic roaming gets enabled.
+ Wenn eine Roamingzone definiert und mit einem Kanal assoziiert ist, wird automatisches Roaming aktiviert.
+
+
+
+ Auto-enable roaming
+ Roaming automatisch aktivieren
+
+
+
+ Ignore verification warnings
+ Verifikationswarnungen ignorieren
+
+
+
+ <html><head/><body><p>As the communication interface to the radio is kept open after verification, time-outs may occur and the code-plug upload may fail when the verification dialog pops up. To prevent this, verification warnings can be ignored, eliminating the time-gap between verification and upload. Verification errors still prevent the upload.</p></body></html>
+ <html><head/><body><p>Da die Schnittstelle zum Gerät nach der Verifikation offen gehalten wird, kann es zu Timeouts zwischen der Verifikation und dem eigentlichen Schreiben des Codeplugs kommen. In der Folge, kann der Schreibvorgang fehlschlagen. Um diese Zeitverzögerung zu verhindern, können Warnungen ignoriert werden und der Schreibvorgang startet sofort. Verifikationsfehler, werden weiterhin den Schreibvorgang verhindern.</p></body></html>
+
+
+
+ Ignore frequency limits
+ Frequenzbereiche ignorieren
+
+
+
+ Do not set this option unless you know what you are doing.
+ Bitte aktivieren Sie diese Option nicht, es sei denn, Sie wissen sehr genau, was Sie tun. Senden außerhalb der spezifizierten Frequenzbereiche kann das Gerät permanent beschädigen.
+
+
+
+ Call-Sign DB
+ Rufzeichendatenbank
+
+
+
+ Limit number of DB entries
+ Die Anzahl der Einträge beschränken
+
+
+
+ When enabled, the number of DB entries will be limited. Otherwise the maximum number of entries are generated (device dependent).
+ Ist diese Option ausgewählt, wird die Anzahl der Einträge in die Rufzeichendatenbank limitiert. Wenn nicht, wird immer die maximale Anzahl an möglichen Einträgen auf das Gerät geschrieben (abhängig vom Gerät).
+
+
+
+ Number of DB entries
+ Anzahl der Einträge der Rufzeichendatenbank
+
+
+
+ Specifies the number of DB entries (if enabled above).
+ Legt die Anzahl der Einträge in der Rufzeichendatenbank fest, die auf das Gerät geschrieben werden (wenn oben ausgewählt).
+
+
+
+ Select using my DMR ID
+ Auswahl anhand meiner DMR ID
+
+
+
+ If enabled, the entries are selected using the users DMR ID.
+ Wenn ausgewählt, werden die Einträge der Rufzeichendatenbank anhand der eigenen Standard DMR ID ausgewählt.
+
+
+
+ Select using prefixes
+ Auswahl anhand der Prefixe
+
+
+
+ If enabled, these comma separated DMR ID prefixes are used to select the call-sign DB entries.
+ Wenn ausgewählt, spezifizieren diese Komma-getrennten DMR ID prefixe jene Einträge der Rufzeichendatenbank, die auf das Gerät geschrieben werden.
+
+
+
+ Extended Features
+ Erweiterte Features
+
+
+
+ Show commercial features
+ Kommerzielle DMR Features anzeigen
+
+
+
+ Show device extensions
+ Gerätespezifische Einstellungen anzeigen
+
+
+
+ TalkGroupDatabase
+
+
+ %1 (%2)
+ %1 (%2)
+
+
+
+ UserDatabase
+
+
+ %1 (%2)
+ %1 (%2)
+
+
+
+ %1 (%2, %3)
+ %1 (%2, %3)
+
+
+
+ VerifyDialog
+
+
+ Verify Codeplug
+ Codeplug verifizieren
+
+
+
+ ZoneDialog
+
+
+
+ Edit Zone
+ Zone bearbeiten
+
+
+
+ Basic
+
+
+
+
+ <html><head/><body><p align="justify"><span style=" font-weight:600;">Note:</span> Zones are collections of channels that are usually valid for a specific region. I.e., a collection of channels for repeaters within a certain region. </p><p align="justify">QDMR manages zones by allowing for two independent channel lists for each VFO of the radio (if it has two). Many radios however, allow one to assign zones to each VFO individually. In these cases, QDMR will split the zone into two (A & B) and program them individually into the radio.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p align="justify"><span style=" font-weight:600;">Hinweis:</span> Zonen fassen Kanäle zusammen, die normalerweise für eine bestimmte Region gelten. D.h., alle Kanäle, für eine Sprechgruppe einer bestimmten Region. </p><p align="justify">qdmr verwaltet diese Kanäle in zwei Listen. Eine für jeden VFO des Gerätes (wenn es denn zwei hat). Viele Geräte erlauben es jedoch, eine Zone für jeden VFO festzulegen. In diesen Fällen wird qdrm die Zone in zwei Zonen (A & B) aufteilen und beide separat auf das Gerät schreiben.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Ausblenden</span></a></p></body></html>
+
+
+
+ Name
+ Name
+
+
+
+ Channels A
+ Kanäle A
+
+
+
+
+ add
+ hinzufügen
+
+
+
+
+ remove
+ entfernen
+
+
+
+ Channels B
+ Kanäle B
+
+
+
+ Extension
+ Erweiterungen
+
+
+
+ Create Zone
+ Zone anlegen
+
+
+
+ ZoneListView
+
+
+ Cannot delete zone
+ Kann Zone nicht löschen
+
+
+
+ Cannot delete zone: You have to select a zone first.
+ Kann Zone nicht löschen: Wählen Sie zunächst eine Zone aus.
+
+
+
+ Delete zone?
+ Zone löschen?
+
+
+
+ Delete zone %1?
+ Zone '%1' löschen?
+
+
+
+ Delete zones?
+ Zonen löschen?
+
+
+
+ Delete %1 zones?
+ %1 Zonen löschen?
+
+
+
+ Form
+
+
+
+
+ Add Zone
+ Zone hinzufügen
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete Zone
+ Zone löschen
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ZoneListWrapper
+
+
+ Zone
+ Zone
+
+
+
+ aprssystemdialog
+
+
+ Edit APRS System
+ APRS System bearbeiten
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Channel
+ Kanal
+
+
+
+ Source
+ Quelle
+
+
+
+
+ -
+ -
+
+
+
+ Destination
+ Ziel
+
+
+
+ WIDE3
+ WIDE3
+
+
+
+ Path
+ Pfad
+
+
+
+ Icon
+ Icon
+
+
+
+ Update period [s]
+ Periode [s]
+
+
+
+ Message
+ Nachricht
+
+
+
+ s
+ s
+
+
+
+ Extensions
+ Erweiterungen
+
+
+
+ pageStart
+
+
+ WizardPage
+
+
+
+
+ Welcome
+
+
+
+
+ Guided codeplug setup
+
+
+
+
diff --git a/i18n/empty.ts b/i18n/empty.ts
index 8c821887..be737085 100644
--- a/i18n/empty.ts
+++ b/i18n/empty.ts
@@ -52,8 +52,8 @@ p, li { white-space: pre-wrap; }
AnalogChannelDialog
-
-
+
+ [None]
@@ -63,161 +63,174 @@ p, li { white-space: pre-wrap; }
-
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and CTCSS tones are filled in (if applicable).</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+
+
+
+ Basic
-
+ Name
-
+ Rx Frequency
-
+ Tx Frequency
-
+ Power
-
+ Max
-
+ High
-
+ Mid
-
+ Low
-
+ Min
-
-
-
-
+
+
+
+ Default
-
+ Tx Timeout
-
-
+
+ Off
-
+ sTransmit time out (TOT) in seconds. A value of 0 means disabled.
-
+ VOX Level
-
+ Rx Only
-
+ Scan List
-
+ Tx Admit
-
+ Always
-
+ Channel Free
-
+ Tone
-
+ Squelch
-
+ Rx Tone
-
+ Tx Tone
-
+ Bandwidth
-
+ Narrow (12.5 kHz)
-
+ Wide (25 kHz)
-
+ APRS
-
+ Open
-
+ Extensions
+
+ AnytoneInterface
+
+
+ Unsupported AnyTone radio '%1', HW rev. '%2'.
+
+
+AnytoneLimits
@@ -234,231 +247,231 @@ p, li { white-space: pre-wrap; }
Application
-
+ Settings
-
-
+
+ Radio IDs
-
+ Contacts
-
+ Group Lists
-
+ Channels
-
+ Zones
-
+ Scan Lists
-
+ GPS/APRS
-
+ Roaming
-
-
+
+ Extensions
-
-
-
-
+
+
+
+ Unsaved changes to codeplug.
-
-
-
-
+
+
+
+ There are unsaved changes to the current codeplug. These changes are lost if you proceed.
-
+ Open codeplug
-
+ Codeplug Files (*.yaml);;Codeplug Files, old format (*.conf *.csv *.txt);;All Files (*)
-
-
+
+ Cannot open file
-
-
-
+
+
+ Cannot read codeplug from file '%1': %2
-
-
+
+ Cannot read codeplug.
-
+ Save codeplug
-
+ Codeplug Files (*.yaml *.yml)
-
+ Please use new YAML format.
-
+ Saving in the old table-based conf format was disabled with 0.9.0. Reading these files still works.
-
+ Cannot save codeplug to file '%1': %2
-
+ Cannot save codeplug
-
+ Cannot save codeplug to file '%1'.
-
+ No matching devices found.
-
+ Cannot connect to radio
-
+ Cannot connect to radio: %1
-
+ Radio found
-
+ Found device '%1'.
-
+ Verification success
-
+ The codeplug was successfully verified with the radio '%1'
-
+ Read ...
-
+ Read error
-
+ Read complete
-
+ Upload ...
-
-
-
+
+
+ Cannot write call-sign DB.
-
+ The detected radio '%1' does not support a call-sign DB.
-
+ The detected radio '%1' does support a call-sign DB. This feature, however, is not implemented yet.
-
+ QDMR selects the call-signs to be written based on the default DMR ID of the radio. No default ID set.
-
+ Write call-sign DB ...
-
+ Write error
-
+ Write complete
-
+ %1 (alias for %2 %3)
@@ -1225,16 +1238,16 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
DigitalChannelDialog
-
-
-
-
+
+
+
+ [None]
-
-
+
+ [Default]
@@ -1244,166 +1257,171 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
-
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and color-code are filled in.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+
+
+
+ Basic
-
+ Name
-
+ Rx Frequency
-
+ Tx Frequency
-
+ Power
-
+ Tx Timeout
-
+ Rx Only
-
+ Scan List
-
+ Max
-
+ High
-
+ Mid
-
+ Low
-
+ Min
-
-
-
+
+
+ Default
-
+ Specifies the transmit timeout in seconds. A value of 0 means that the transmit timeout is disabled.
-
-
+
+ Off
-
+ s
-
+ VOX Level
-
+ Tx Admit
-
+ Always
-
+ Channel Free
-
-
+
+ Color Code
-
+ Time Slot
-
+ TS 1
-
+ TS 2
-
+ Rx Group List
-
+ Tx Contact
-
+ Positioning System
-
+ Roaming Zone
-
+ DMR ID
-
+ Extended
-
+ Device specific settings
@@ -2859,6 +2877,19 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
+
+ Radio
+
+
+ Unhandled device %1 '%2'. Device known but not implemented yet.
+
+
+
+
+ Unknown AnyTone (or similar) device.
+
+
+RadioIDListView
@@ -3316,7 +3347,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
SettingsDialog
-
+ Warning!
diff --git a/i18n/en_US.ts b/i18n/en_US.ts
index defeeeae..8c31a373 100644
--- a/i18n/en_US.ts
+++ b/i18n/en_US.ts
@@ -1,31 +1,32 @@
-
+APRSSystemDialogCreate APRS system
-
+ Create APRS systemEdit APRS system
-
+ Edit APRS systemAboutDialog
+ About qdrm
-
+ About qdrmAbout qdmr
-
+ About qdmr
@@ -40,21 +41,204 @@ p, li { white-space: pre-wrap; }
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">You should have received a copy of the GNU General Public License along with this program. If not, see </span><a href="https://www.gnu.org/licenses/"><span style=" font-family:'.SF NS Text'; font-size:13pt; text-decoration: underline; color:#0000ff;">https://www.gnu.org/licenses/</span></a><span style=" font-family:'.SF NS Text'; font-size:13pt;">.</span></p></body></html>
-
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html><head><meta name="qrichtext" content="1" /><title>About qdmr</title><style type="text/css">
+p, li { white-space: pre-wrap; }
+</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;">
+<p align="center" style=" margin-top:18px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span></p>
+<p align="center" style=" margin-top:14px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Version %1</span></p>
+<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">Hannes Matuschek, DM3MAT<br /> dm3mat@darc.de</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt; font-weight:600;">qdmr</span><span style=" font-family:'.SF NS Text'; font-size:13pt;"> – A platform independent configuration and programming tool for codeplugs of cheap DMR radios.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</span></p>
+<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'.SF NS Text'; font-size:13pt;">You should have received a copy of the GNU General Public License along with this program. If not, see </span><a href="https://www.gnu.org/licenses/"><span style=" font-family:'.SF NS Text'; font-size:13pt; text-decoration: underline; color:#0000ff;">https://www.gnu.org/licenses/</span></a><span style=" font-family:'.SF NS Text'; font-size:13pt;">.</span></p></body></html>Supported Radios
-
+ Supported RadiosAnalogChannelDialog
-
-
+
+ [None]
-
+ [None]
+
+
+
+ Edit Analog Channel
+ Edit analog channel
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and CTCSS tones are filled in (if applicable).</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and CTCSS tones are filled in (if applicable).</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Rx Frequency
+ RX Frequency
+
+
+
+ Tx Frequency
+ TX Frequency
+
+
+
+ Power
+ Power
+
+
+
+ Max
+ Max
+
+
+
+ High
+ High
+
+
+
+ Mid
+ Mid
+
+
+
+ Low
+ Low
+
+
+
+ Min
+ Min
+
+
+
+
+
+
+ Default
+ Default
+
+
+
+ Tx Timeout
+ TX Timeout
+
+
+
+
+ Off
+ Off
+
+
+
+ s
+ Transmit time out (TOT) in seconds. A value of 0 means disabled.
+ s
+
+
+
+ VOX Level
+ VOX Level
+
+
+
+ Rx Only
+ RX Only
+
+
+
+ Scan List
+ Scan List
+
+
+
+ Tx Admit
+ TX Admit
+
+
+
+ Always
+ Always
+
+
+
+ Channel Free
+ Channel Free
+
+
+
+ Tone
+ Tone
+
+
+
+ Squelch
+ Squelch
+
+
+
+ Rx Tone
+ RX Tone
+
+
+
+ Tx Tone
+ TX Tone
+
+
+
+ Bandwidth
+ Bandwidth
+
+
+
+ Narrow (12.5 kHz)
+ Narrow (12.5 kHz)
+
+
+
+ Wide (25 kHz)
+ Wide (25 kHz)
+
+
+
+ APRS
+ APRS
+
+
+
+ Open
+ Open
+
+
+
+ Extensions
+ Extensions
+
+
+
+ AnytoneInterface
+
+
+ Unsupported AnyTone radio '%1', HW rev. '%2'.
+ Unsupported AnyTone radio '%1', HW rev. '%2'.
@@ -62,244 +246,244 @@ p, li { white-space: pre-wrap; }
You are likely using a newer radio reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible. Notify the developers of qdmr about the new reversion.
-
+ You are likely using a newer radio reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible. Notify the developers of qdmr about the new reversion.You are likely using an older hardware reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible.
-
+ You are likely using an older hardware reversion (%1) than supported (%2) by qdmr. The codeplug might be incompatible.Application
-
+ Settings
-
+ Settings
-
-
+
+ Radio IDs
-
+ Radio IDs
-
+ Contacts
-
+ Contacts
-
+ Group Lists
-
+ Group Lists
-
+ Channels
-
+ Channels
-
+ Zones
-
+ Zones
-
+ Scan Lists
-
+ Scan Lists
-
+ GPS/APRS
-
+ GPS/APRS
-
+ Roaming
-
+ Roaming
-
-
+
+ Extensions
-
+ Extensions
-
-
-
-
+
+
+
+ Unsaved changes to codeplug.
-
+ Unsaved changes to codeplug.
-
-
-
-
+
+
+
+ There are unsaved changes to the current codeplug. These changes are lost if you proceed.
-
+ There are unsaved changes to the current codeplug. These changes are lost if you proceed.
-
+ Open codeplug
-
+ Open codeplug
-
+ Codeplug Files (*.yaml);;Codeplug Files, old format (*.conf *.csv *.txt);;All Files (*)
-
+ Codeplug Files (*.yaml);;Codeplug Files, old format (*.conf *.csv *.txt);;All Files (*)
-
-
+
+ Cannot open file
-
+ Cannot open file
-
-
-
+
+
+ Cannot read codeplug from file '%1': %2
-
+ Cannot read codeplug from file '%1': %2
-
-
+
+ Cannot read codeplug.
-
+ Cannot read codeplug.
-
+ Save codeplug
-
+ Save codeplug
-
+ Codeplug Files (*.yaml *.yml)
-
+ Codeplug Files (*.yaml *.yml)
-
+ Please use new YAML format.
-
+ Please use new YAML format.
-
+ Saving in the old table-based conf format was disabled with 0.9.0. Reading these files still works.
-
+ Saving in the old table-based conf format was disabled with 0.9.0. Reading these files still works.
-
+ Cannot save codeplug to file '%1': %2
-
+ Cannot save codeplug to file '%1': %2
-
+ Cannot save codeplug
-
+ Cannot save codeplug
-
+ Cannot save codeplug to file '%1'.
-
+ Cannot save codeplug to file '%1'.
-
+ No matching devices found.
-
+ No matching devices found.
-
+ Cannot connect to radio
-
+ Cannot connect to radio
-
+ Cannot connect to radio: %1
-
+ Cannot connect to radio: %1
-
+ Radio found
-
+ Radio found
-
+ Found device '%1'.
-
+ Found device '%1'.
-
+ Verification success
-
+ Verification success
-
+ The codeplug was successfully verified with the radio '%1'
-
+ The codeplug was successfully verified with the radio '%1'.
-
+ Read ...
-
+ Read …
-
+ Read error
-
+ Read error
-
+ Read complete
-
+ Read complete
-
+ Upload ...
-
+ Write …
-
-
-
+
+
+ Cannot write call-sign DB.
-
+ Cannot write call-sign DB.
-
+ The detected radio '%1' does not support a call-sign DB.
-
+ The detected radio '%1' does not support a call-sign DB.
-
+ The detected radio '%1' does support a call-sign DB. This feature, however, is not implemented yet.
-
+ The detected radio '%1' does support a call-sign DB. This feature, however, is not implemented yet.
-
+ QDMR selects the call-signs to be written based on the default DMR ID of the radio. No default ID set.
-
+ QDMR selects the call-signs to be written based on the default DMR ID of the radio. No default ID set.
-
+ Write call-sign DB ...
-
+ Write call-sign DB …
-
+ Write error
-
+ Write error
-
+ Write complete
-
+ Write complete
-
+ %1 (alias for %2 %3)
-
+ %1 (alias for %2 %3)
@@ -307,7 +491,7 @@ p, li { white-space: pre-wrap; }
Lexer error %1,%2: Unexpected char '%3'.
-
+ Lexer error %1,%2: Unexpected char '%3'.
@@ -317,7 +501,9 @@ p, li { white-space: pre-wrap; }
The generic code-plug format might be changed with a new release of qdmr.
Visit https://github.com/hmatuschek/qdmr/releases for further information.
-
+
+The generic code-plug format might be changed with a new release of qdmr.
+Visit https://github.com/hmatuschek/qdmr/releases for further information.
@@ -325,38 +511,83 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Select a single channel first
-
+ Select a single channel firstTo clone a channel, please select a single channel to clone.
-
+ To clone a channel, please select a single channel to clone.Cannot delete channel
-
+ Cannot delete channelCannot delete channel: You have to select a channel first.
-
+ Cannot delete channel: You have to select a channel first.Delete channel?
-
+ Delete channel?Delete channel %1?
-
+ Delete channel '%1'?Delete %1 channels?
-
+ Delete %1 channels?
+
+
+
+ Form
+
+
+
+
+ Add Analog Channel
+ Add Analog Channel
+
+
+
+ Alt+A
+ Alt+A
+
+
+
+ Add Digital Channel
+ Add Digital Channel
+
+
+
+ Alt+D
+ Alt+D
+
+
+
+ Clone Channel
+ Clone Channel
+
+
+
+ Alt+C
+ Alt+C
+
+
+
+ Delete Channel
+ Delete Channel
+
+
+
+ Alt+-
+ Alt+-
@@ -364,12 +595,12 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Analog
-
+ AnalogDigital
-
+ Digital
@@ -378,32 +609,32 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
[Default]
-
+ [Default]Max
-
+ MaxHigh
-
+ HighMid
-
+ MidLow
-
+ LowMin
-
+ Min
@@ -411,34 +642,34 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Off
-
+ OffOn
-
+ OnAlways
-
+ AlwaysFree
-
+ FreeColor
-
+ ColorTone
-
+ Tone
@@ -448,7 +679,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
-
-
+ -
@@ -462,122 +693,122 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
[None]
-
+ [None]Open
-
+ OpenWide
-
+ WideNarrow
-
+ NarrowType
-
+ TypeName
-
+ NameRx Frequency
-
+ RX FrequencyTx Frequency
-
+ TX FrequencyPower
-
+ PowerTimeout
-
+ TimeoutRx Only
-
+ RX OnlyAdmit
-
+ AdmitScanlist
-
+ ScanlistCC
-
+ CCTS
-
+ TSRX Group List
-
+ Group ListTX Contact
-
+ TX ContactDMR ID
-
+ DMR IDGPS/APRS
-
+ GPS/APRSRoaming
-
+ RoamingSquelch
-
+ SquelchRx Tone
-
+ RX ToneTx Tone
-
+ TX ToneBandwidth
-
+ Bandwidth
@@ -585,7 +816,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Channel
-
+ Channel
@@ -593,7 +824,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Select a channel:
-
+ Select a channel:
@@ -602,13 +833,18 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot move items.
-
+ Cannot move items.Cannot move items: You have to select at least one item first.
-
+ Cannot move items: You have to select at least one item first.
+
+
+
+ Form
+
@@ -617,13 +853,18 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot move items.
-
+ Cannot move itemsCannot move items: You have to select at least one item first.
-
+ Cannot move items: You have to select at least one item first.
+
+
+
+ Form
+
@@ -631,12 +872,22 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
An instance of %1.
-
+ An instance of '%1'.<p>%1<p><p style="margin-left:10px;">%2</p>
-
+ <p>%1<p><p style="margin-left:10px;">%2</p>
+
+
+
+ Dialog
+
+
+
+
+ Select the class of object to create
+ Select the class of object to create
@@ -644,87 +895,132 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot delete contact
-
+ Cannot delete contactCannot delete contact: You have to select a contact first.
-
+ Cannot delete contact: You have to select a contact first.Delete contact?
-
+ Delete contact?Delete contact %1?
-
+ Delete contact '%1'?Delete contacts?
-
+ Delete contacts?Delete %1 contacts?
-
+ Delete %1 contacts?
-
-
- ContactListWrapper
-
- DTMF
-
+
+ Form
+
+
+
+
+ Adds a contact to the list.
+ Adds a contact to the list.
+
+
+
+ Add contact button
+ Add contact button
+
+
+
+ Add Digital Contact
+ Add Digital Contact
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Add DTMF Contact
+ Add DTMF Contact
+
+
+
+ Delete contact button
+ Delete contact button
+
+
+
+ Delete Contact
+ Delete Contact
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ ContactListWrapper
+
+
+ DTMF
+ DTMFOn
-
+ OnOff
-
+ OffPrivate Call
-
+ Private CallGroup Call
-
+ Group CallAll Call
-
+ All CallType
-
+ TypeName
-
+ NameNumber
-
+ NumberRX Tone
-
+ RX Tone
@@ -732,17 +1028,17 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
APRS %1
-
+ APRS %1GPS Sys #%1
-
+ GPS Sys #%1GPS #%1 Contact
-
+ GPS #%1 Contact
@@ -750,42 +1046,42 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot read DFU file '%1': Cannot read element prefix: %2
-
+ Cannot read DFU file '%1': Cannot read element prefix: %2Cannot read DFU file '%1': Cannot read element data: %2
-
+ Cannot read DFU file '%1': Cannot read element data: %2Cannot write element prefix to file '%1': %2
-
+ Cannot write element prefix to file '%1': %2Cannot write element data to file '%1': %2
-
+ Cannot write element data to file '%1': %2Cannot read DFU file '%1': Cannot read image: %2
-
+ Cannot read DFU file '%1': Cannot read image: %2Cannot read DFU file '%1': Invalid image signature value.
-
+ Cannot read DFU file '%1': Invalid image signature value.Cannot read DFU file '%1': Invalid image size %2b specified, expected %3b.
-
+ Cannot read DFU file '%1': Invalid image size %2b specified, expected %3b.Cannot write image prefix to '%1': %2.
-
+ Cannot write image prefix to '%1': %2.
@@ -793,48 +1089,141 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Create DMR Contact
-
+ Create DMR ContactEdit DMR Contact
-
+ Edit DMR ContactPrivate Call
-
+ Private CallGroup Call
-
+ Group CallAll Call
+ All Call
+
+
+
+ Dialog
+
+
+ Basic
+
+
+
+
+ Type
+ Type
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Number
+
+
+
+ Ring
+ Ring
+
+
+
+ Extensions
+ Extensions
+
+
+
+ DMRIDDialog
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Extensions
+ Extensions
+ DTMFContactDialogCreate DTMF Contact
-
+ Create DTMF ContactEdit DMR Contact
+ Edit DMR Contact
+
+
+
+ Dialog
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Number
+ Number
+
+
+
+ Ring
+ Ring
+
+
+
+ Extensions
+ Extensions
+ DefaultRadioID[Default]
-
+ [Default]
@@ -842,78 +1231,485 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
[Default]
-
+ [Default]
+
+
+
+ DeviceSelectionDialog
+
+
+ Select a device
+ Select a device
+
+
+
+ <html><head/><body><p>There is either more than one device detected or the one found is not considered save to access. Either way, select the device to use.</p></body></html>
+ <html><head/><body><p>There is either more than one device detected or the one found is not considered save to access. Either way, select the device to use.</p></body></html>DigitalChannelDialog
-
-
-
-
+
+
+
+ [None]
-
+ [None]
-
-
+
+ [Default]
+ [Default]
+
+
+
+ Edit Digital Channel
+ Edit digital channel
+
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and color-code are filled in.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> qdmr provides some auto-completion for channels. That is, start typing the call-sign of a repeater. After three chars are entered, a request is send to repeaterbook.com to retrieve matching repeaters. These requests may take some time. The results are stored locally in a cache.</p><p>A drop-down list will appear, allowing to select a repeater. Once one repeater is selected, the RX/TX frequencies and color-code are filled in.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">hide</span></a></p></body></html>
+
+
+
+ Basic
+
+
+ Name
+ Name
+
+
+
+ Rx Frequency
+ RX Frequency
+
+
+
+ Tx Frequency
+ TX Frequency
+
+
+
+ Power
+ Power
+
+
+
+ Tx Timeout
+ TX Timeout
+
+
+
+ Rx Only
+ RX Only
+
+
+
+ Scan List
+ Scan List
+
+
+
+ Max
+ Max
+
+
+
+ High
+ High
+
+
+
+ Mid
+ Mid
+
+
+
+ Low
+ Low
+
+
+
+ Min
+ Min
+
+
+
+
+
+ Default
+ Default
+
+
+
+ Specifies the transmit timeout in seconds. A value of 0 means that the transmit timeout is disabled.
+ Specifies the transmit timeout in seconds. A value of 0 means that the transmit timeout is disabled.
+
+
+
+
+ Off
+ Off
+
+
+
+ s
+ s
+
+
+
+ VOX Level
+ VOX Level
+
+
+
+ Tx Admit
+ TX Admit
+
+
+
+ Always
+ Always
+
+
+
+ Channel Free
+ Channel Free
+
+
+
+
+ Color Code
+ Color Code
+
+
+
+ Time Slot
+ Time Slot
+
+
+
+ TS 1
+ TS 1
+
+
+
+ TS 2
+ TS 2
+
+
+
+ Rx Group List
+ Group List
+
+
+
+ Tx Contact
+ TX Contact
+
+
+
+ Positioning System
+ Positioning System
+
+
+
+ Roaming Zone
+ Roaming Zone
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Extended
+ Extended
+
+
+
+ Device specific settings
+ Device specific settings
+ ErrorMessageViewError: Unknown.
-
+ Error: Unknown.Error: %1
+ Error: %1
+
+
+
+ Dialog
+
+
+
+
+
+ TextLabel
+
+
+ Traceback:
+ Traceback:
+ ExtensionViewCannot create extension.
-
+ Cannot create extension.Cannot create extension, consider reporting a bug.
-
+ Cannot create extension, consider reporting a bug.Cannot create list element.
-
+ Cannot create list element.Cannot create list element, consider reporting a bug.
+ Cannot create list element, consider reporting a bug.
+
+
+
+ Form
+
+
+ Create
+ Create
+
+
+
+ Remove
+ Remove
+ GPSSystemDialogCreate DMR APRS Sysmtem
+ Create DMR APRS Sysmtem
+
+
+
+ Edit DMR APRS Sysmtem
+ Edit DMR APRS Sysmtem
+
+
+
+ [Selected]
+ [Selected]
+
+
+
+ Edit GPS System
+ Edit GPS System
+
+
+
+ Basic
-
- Edit DMR APRS Sysmtem
-
+
+ Name
+ Name
+
+
+
+ Destination
+ Destination
+
+
+
+ Update period [s]
+ Update period [s]
+
+
+
+ Revert Channel
+ Revert Channel
+
+
+
+ Extensions
+ Extensions
+
+
+
+ GeneralSettingsView
+
+
+ Form
+
+
+
+
+ DMR Radio ID
+ DMR Radio ID
+
+
+
+ DMR ID
+ DMR ID
+
+
+
+ Radio Name
+ Radio Name
+
+
+
+ Enter your name or callsign.
+ Enter your name or call-sign.
+
+
+
+ Name/Callsign
+ Name/Call-sign
+
+
+
+ Boot Settings
+ Boot Settings
+
+
+
+ Intro Line 1
+ Intro Line 1
+
+
+
+ First greeting line (if supported by the radio).
+ First greeting line (if supported by the radio).
+
+
+
+ Intro line 1
+ Intro line 1
+
+
+
+ Intro Line 2
+ Intro Line 2
+
+
+
+ Second greeting line (if supported by the radio).
+ Second greeting line (if supported by the radio).
+
+
+
+ Intro line 2
+ Intro line 2
+
+
+
+ Audio Settings
+ Audio Settings
+
+
+
+ MIC Amp.
+ MIC Amp.
+
+
+
+ Speech Synthesis
+ Speech Synthesis
+
+
+
+ Channel Default Values
+ Channel Default Values
+
+
+
+ Power
+ Power
+
+
+
+ Max
+ Max
+
+
+
+ High
+ High
+
+
+
+ Mid
+ Mid
+
+
+
+ Low
+ Low
+
+
+
+ Min
+ Min
+
+
+
+ Squelch
+ Squelch
+
+
+
+ Open
+ Open
+
+
+
+ Transmit Timeout
+ Transmit Timeout
+
+
+
+
+ Off
+ Off
+
+
+
+ s
+ s
+
+
+
+ VOX Level
+ VOX Level
-
- [Selected]
-
+
+ Extensions
+ Extensions
@@ -921,7 +1717,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Contact
-
+ Contact
@@ -929,36 +1725,61 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot delete RX group list
-
+ Cannot delete group listCannot delete RX group lists: You have to select a group list first.
-
+ Cannot delete group lists: You have to select a group list first.Delete RX group list?
-
+ Delete group list?Delete RX group list %1?
-
+ Delete group list '%1'?Delete %1 RX group lists?
+ Delete %1 group lists?
+
+
+
+ Form
+
+
+ Add RX Group
+ Add Group List
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete RX Group
+ Delete Group List
+
+
+
+ Alt+-
+ Alt+-
+ GroupListsWrapperRX Group Lists
-
+ Group Lists
@@ -966,213 +1787,213 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
qdmr [*]
-
+ qdmr [*]Main window
-
+ Main windowTablist
-
+ TablistThere are 6 tabs providing general settings, contact, Rx group, channel zone and scan lists.
-
+ There are several tabs providing general settings, contact, Rx group, channel, zone and scan lists etc.File
-
+ FileDevice
-
+ DeviceHelp
-
+ HelpDatabases
-
+ DatabasestoolBar
-
+ Toolbar
-
+ New
-
+ NewCreates a new Codeplug.
-
+ Creates a new Codeplug.Ctrl+N
-
+ Ctrl+NOpen ...
-
+ Open …<html><head/><body><p>Imports a codeplug from "conf" files.</p></body></html>
-
+ <html><head/><body><p>Imports a codeplug from "conf" files.</p></body></html>Ctrl+O
-
+ Ctrl+OSave ...
-
+ Save …<html><head/><body><p>Saves the codeplug in a "conf" file.</p></body></html>
-
+ <html><head/><body><p>Saves the codeplug in a "conf" file.</p></body></html>Ctrl+S
-
+ Ctrl+SQuit
-
+ QuitQuits the application.
-
+ Quits the application.Ctrl+Q
-
+ Ctrl+QDetect
-
+ DetectDetect connected radios.
-
+ Detect connected radios.Verify
-
+ Verify<html><head/><body><p>Verifies the current codeplug with connected radios.</p></body></html>
-
+ Verifies the current codeplug with connected radios.Ctrl+R
-
+ Ctrl+RRead
-
+ ReadReads a codeplug from connected radios.
-
+ Reads a codeplug from connected radios.Write
-
+ WriteWrites the codeplug to the connected radio.
-
+ Writes the codeplug to the connected radio.About qdmr
-
+ About qdmrRead the handbook.
-
+ Read the handbook.F1
-
+ F1Settings
-
+ SettingsShows settings dialog
-
+ Shows settings dialog.Write Callsign DB
-
+ Write call-sign DBWrites call-sign DB to radio.
-
+ Writes call-sign DB to radio.Refresh Callsign DB
-
+ Refresh call-sign DBRefreshes the downloaded callsign DB
-
+ Refreshes the downloaded call-sign DBRefresh Talkgroup DB
-
+ Refresh talk-group DBRefreshes the downloaded talkgroup DB
-
+ Refreshes the downloaded talk-group DB
@@ -1180,12 +2001,12 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
[Selected]
-
+ [Selected]Select a channel:
-
+ Select a channel:
@@ -1193,12 +2014,12 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Show private calls
-
+ Show private callsSelect a group call:
-
+ Select a group call:
@@ -1206,97 +2027,137 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot delete GPS system
-
+ Cannot delete GPS systemCannot delete GPS system: You have to select a GPS system first.
-
+ Cannot delete GPS system: You have to select a GPS system first.Delete positioning system?
-
+ Delete positioning system?Delete positioning system %1?
-
+ Delete positioning system '%1'?Delete %1 positioning systems?
+ Delete %1 positioning systems?
+
+
+
+ Form
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support GPS or APRS. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support GPS or APRS. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+
+
+
+ Add GPS System
+ Add GPS System
+
+
+
+ Alt+G
+ Alt+G
+
+
+
+ Add APRS System
+ Add APRS System
+
+
+
+ Alt+A
+ Alt+A
+
+
+
+ Delete Position System
+ Delete Positioning System
+
+
+
+ Alt+-
+ Alt+-
+ PositioningSystemListWrapperDMR
-
+ DMRAPRS
-
+ APRSOOps!
-
+ Oops![None]
-
+ [None]%1-%2
-
+ %1-%2[Selected]
-
+ [Selected]OOPS!
-
+ Oops!Type
-
+ TypeName
-
+ NameDestination
-
+ DestinationPeriod [s]
-
+ Period [s]Channel
-
+ ChannelMessage
-
+ Message
@@ -1304,17 +2165,17 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
False
-
+ FalseTrue
-
+ True[None]
-
+ [None]
@@ -1322,48 +2183,48 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
new element
-
+ new elementProperty
-
+ PropertyValue
-
+ ValueDescription
-
+ Descriptiontrue
-
+ truefalse
-
+ false[None]
-
+ [None]Instance of %1
-
+ Instance of '%1'List of %1 instances
-
+ List of %1 instances
@@ -1373,477 +2234,477 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
[None]
-
+ [None]Police station
-
+ Police stationDigipeater
-
+ DigipeaterPhone
-
+ PhoneDX cluster
-
+ DX clusterHF gateway
-
+ HF gatewayPlane small
-
+ Plane smallMobile Satellite station
-
+ Mobile satellite stationWheel Chair
-
+ Wheel chairSnowmobile
-
+ SnowmobileRed cross
-
+ Red crossBoy scout
-
+ Boy scoutHome
-
+ HomeX
-
+ XRed dot
-
+ Red dotCircle 0
-
+ Circle 0Circle 1
-
+ Circle 1Circle 2
-
+ Circle 2Circle 3
-
+ Circle 3Circle 4
-
+ Circle 4Circle 5
-
+ Circle 5Circle 6
-
+ Circle 6Circle 7
-
+ Circle 7Circle 8
-
+ Circle 8Circle 9
-
+ Circle 9Fire
-
+ FireCampground
-
+ CampgroundMotorcycle
-
+ MotorcycleRail engine
-
+ Rail engineCar
-
+ CarFile server
-
+ File serverHC Future
-
+ HC FutureAid station
-
+ Aid stationBBS
-
+ BBSCanoe
-
+ CanoeEyeball
-
+ EyeballTractor
-
+ TractorGrid Square
-
+ Grid SquareHotel
-
+ HotelTCP/IP
-
+ TCP/IPSchool
-
+ SchoolLogon
-
+ LogonMacOS
-
+ MacOSNTS station
-
+ NTS stationBalloon
-
+ BalloonPolice car
-
+ Police carTBD
-
+ TBDRV
-
+ RVShuttle
-
+ ShuttleSSTV
-
+ SSTVBus
-
+ BusATV
-
+ ATVWeather service
-
+ Weather serviceHelo
-
+ HeloYacht
-
+ YachtMS Windows
-
+ MS WindowsJogger
-
+ JoggerTriangle
-
+ TrianglePBBS
-
+ PBBSPane large
-
+ Pane largeWeather station
-
+ Weather stationDish antenna
-
+ Dish antennaAmbulance
-
+ AmbulanceBike
-
+ BikeICP
-
+ ICPFire station
-
+ Fire stationHorse
-
+ HorseFire truck
-
+ Fire truckGlider
-
+ GliderHospital
-
+ HospitalIOTA
-
+ IOTAJeep
-
+ JeepTruck small
-
+ Truck smallLaptop
-
+ LaptopMic-E
-
+ Mic-ENode
-
+ NodeEOC
-
+ EOCRover
-
+ RoverGrid
-
+ GridAntenna
-
+ AntennaPower boat
-
+ Power boatTruck stop
-
+ Truck stopTruck large
-
+ Truck largeVan
-
+ VanWater
-
+ WaterXAPRS
-
+ XAPRSYagi
-
+ YagiShelter
-
+ ShelterCannot open file '%1': File does not exist.
-
+ Cannot open file '%1': File does not exist.Cannot open file '%1': %2.
-
+ Cannot open file '%1': %2.Cannot read header from file '%1': %2.
-
+ Cannot read header from file '%1': %2.Malformed header in file '%1': Mismatching content size. Expected %2, got %3.
-
+ Malformed header in file '%1': Mismatching content size. Expected %2, got %3.Cannot mmap file '%1': %2.
-
+ Cannot mmap file '%1': %2.Cannot read codeplug file '%1': Unknown model '%2'.
-
+ Cannot read codeplug file '%1': Unknown model '%2'.Cannot read codeplug file '%1': Model '%2' not implemented yet.
-
+ Cannot read codeplug file '%1': Model '%2' not implemented yet.
@@ -1859,47 +2720,47 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot read codeplug file '%1': %2
-
+ Cannot read codeplug file '%1': %2Invalid read response: Expected command 'W' got '%1'
-
+ Invalid read response: Expected command 'W' got '%1'.Invalid read response: Expected address '%1' got '%2'
-
+ Invalid read response: Expected address '%1' got '%2'.Invalid read response: Expected size 64 got %1
-
+ Invalid read response: Expected size 64 got %1.Invalid read response: Expected check-sum %1 got %2
-
+ Invalid read response: Expected check-sum %1 got %2.Invalid read response: Expected ACK 6 got %1
-
+ Invalid read response: Expected ACK 6 got %1.0x%1: Cannot add zone to config.
-
+ 0x%1: Cannot add zone to config.0x%1: Cannot add channel %2 to zone '%3'.
-
+ 0x%1: Cannot add channel '%2' to zone '%3'.0x%1: Cannot add channel %2 to scan list '%3'.
-
+ 0x%1: Cannot add channel '%2' to scan list '%3'.
@@ -1909,14 +2770,14 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot open file '%1': File does not exisist.
-
+ Cannot open file '%1': File does not exist.Cannot read codeplug file '%1': File size is not 852533 bytes.
-
+ Cannot read codeplug file '%1': File size is not 852533 bytes.
@@ -1926,7 +2787,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot open file '%1': %2
-
+ Cannot open file '%1': %2
@@ -1941,33 +2802,33 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot read codeplug file '%1': Cannot seek within file: %2
-
+ Cannot read codeplug file '%1': Cannot seek within file: %2Cannot read codeplug file '%1': File size is not 131072 bytes.
-
+ Cannot read codeplug file '%1': File size is not 131072 bytes.Cannot read codeplug file '%1': File size is not 262709 bytes.
-
+ Cannot read codeplug file '%1': File size is not 262709 bytes.CTCSS %1Hz
-
+ CTCSS %1HzDCS %1 N
-
+ DCS %1 NDCS %1 I
-
+ DCS %1 I
@@ -1975,73 +2836,141 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Create Group List
-
+ Create group listEdit Group List
-
+ Edit group listCannot remove group call
-
+ Cannot remove group callCannot remove group call: You have to select at least one group call first.
+ Cannot remove group call: You have to select at least one group call first.
+
+
+
+ Basic
+
+
+ Name
+ Name
+
+
+
+ Add Contact
+ Add Contact
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Contact
+ Remove Contact
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extensions
+ Extensions
+
+
+
+ Radio
+
+
+ Unhandled device %1 '%2'. Device known but not implemented yet.
+ Unhandled device %1 '%2'. Device known but not implemented yet.
+
+
+
+ Unknown AnyTone (or similar) device.
+ Unknown AnyTone (or similar) device.
+ RadioIDListViewCannot delete radio IDs
-
+ Cannot delete radio IDsCannot delete radio IDs: You have to select a radio ID first.
-
+ Cannot delete radio IDs: You have to select a radio ID first.Delete radio ID?
-
+ Delete radio ID?Delete radio ID %1?
-
+ Delete radio ID '%1'?Delete scan lists?
-
+ Delete scan lists?Delete %1 scan lists?
+ Delete %1 scan lists?
+
+
+
+ Form
+
+
+ Default Radio ID
+ Default Radio ID
+
+
+
+ Add Radio ID
+ Add Radio ID
+
+
+
+ Delete Radio ID
+ Delete Radio ID
+ RadioIdListWrapperType
-
+ TypeName
-
+ NameNumber
-
+ Number
@@ -2049,7 +2978,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Ignore %1 '%2'. Not applicable/supported by this radio.
-
+ Ignore %1 '%2'. Not applicable/supported by this radio.
@@ -2057,12 +2986,12 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Expected value of '%1' to be string.
-
+ Expected value of '%1' to be string.Value of '%1' is ignored. Not applicable/supported by the radio.
-
+ Value of '%1' is ignored. Not applicable/supported by the radio.
@@ -2070,7 +2999,20 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
The support for this radio is still under development. Some features may sill be missing or are not well tested.
-
+ The support for this radio is still under development. Some features may sill be missing or are not well tested.
+
+
+
+ RadioSelectionDialog
+
+
+ Cannot auto-detect radio
+ Cannot auto-detect radio
+
+
+
+ Select a specific radio
+ Select a specific radio
@@ -2079,24 +3021,27 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot download release notes from https://github.com/hmatuschek/qdmr
%1
-
+ Cannot download release notes from https://github.com/hmatuschek/qdmr
+ %1Cannot read release notes from https://github.com/hmatuschek/qdmr
Release is not a JSON object!
-
+ Cannot read release notes from https://github.com/hmatuschek/qdmr
+ Release is not a JSON object!Cannot read release notes from https://github.com/hmatuschek/qdmr
Release does not contain a release note.
-
+ Cannot read release notes from https://github.com/hmatuschek/qdmr
+ Release does not contain a release note.qDMR was updated to version %1
-
+ qdmr was updated to version %1
@@ -2104,7 +3049,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
%1 (%2, %3, %4)
-
+ %1 (%2, %3, %4)
@@ -2112,12 +3057,12 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
%1 (containing %2 channels)
-
+ %1 (containing %2 channels)Roaming zone
-
+ Roaming zone
@@ -2125,86 +3070,212 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Create Roaming Zone
-
+ Create roaming zoneSet Roaming Zone
+ Edit roaming zone
+
+
+
+ Dialog
+
+
+
+
+ Basic
+
+
+ Name:
+ Name:
+
+
+
+ Add Channel
+ Add Channel
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Channel
+ Remove Channel
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extension
+ Extension
+ RoamingZoneListViewGenerate roaming zone
-
+ Generate roaming zoneCreate a roaming zone by collecting all channels with these group calls.
-
+ Create a roaming zone by collecting all channels with these group calls.Cannot delete roaming zone
-
+ Cannot delete roaming zoneCannot delete roaming zone: You have to select a zone first.
-
+ Cannot delete roaming zone: You have to select a zone first.Delete roaming zone?
-
+ Delete roaming zone?Delete roaming zone %1?
-
+ Delete roaming zone '%1'?Delete roaming zones?
-
+ Delete roaming zones?Delete %1 roaming zones?
+ Delete %1 roaming zones?
+
+
+
+ Form
+
+
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support Roaming. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p><span style=" font-weight:600;">Note:</span> QDMR is a device independent CPS. However, not all radios support Roaming. Hence these settings might be ignored when programming the code-plug to the device. </p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+
+
+
+ Add Roaming Zone
+ Add Roaming Zone
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Generate Roaming Zone
+ Generate Roaming Zone
+
+
+
+ Delete Roaming Zone
+ Delete Roaming Zone
+
+
+
+ Alt+-
+ Alt+-
+ ScanListDialog
+ Edit Scan List
+ Edit scan list
+
+
+
+ Basic
+
+
+ Name
+ Name
+
+
+
+ Primary Channel (50%)
+ Primary Channel (50%)
+
+
+
+ Secondary Channel (25%)
+ Secondary Channel (25%)
+
+
+
+ Transmit Channel
+ Transmit Channel
+
+
+
+ Add Channel
+ Add Channel
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Remove Channel
+ Remove Channel
+
+
+
+ Alt+-
+ Alt+-
+
+
+
+ Extensions
+ Extensions
+ Create Scan List
-
+ Create scan list[None]
-
+ [None][Selected]
-
+ [Selected][Last]
-
+ [Last]
@@ -2212,40 +3283,65 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot delete scanlist
-
+ Cannot delete scanlistCannot delete scanlist: You have to select a scanlist first.
-
+ Cannot delete scanlist: You have to select a scanlist first.Delete scan list?
-
+ Delete scan list?Delete scan list %1?
-
+ Delete scan list '%1'?Delete scan lists?
-
+ Delete scan lists?Delete %1 scan lists?
+ Delete %1 scan lists?
+
+
+
+ Form
+
+
+ Add Scan List
+ Add Scan List
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete Scan List
+ Delete Scan List
+
+
+
+ Alt+-
+ Alt+-
+ ScanListsWrapperScan-List
-
+ Scanlist
@@ -2253,22 +3349,157 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Ctrl+F
-
+ Ctrl+F%1/%2
-
+ %1/%2SettingsDialog
-
+ Warning!
-
+ Warning!
+
+
+
+ Settings
+ Settings
+
+
+
+ Location
+ Location
+
+
+
+ System location
+ System location
+
+
+
+ Locator
+ Locator
+
+
+
+ Radio Programming
+ Radio Programming
+
+
+
+ Update codeplug
+ Update codeplug
+
+
+
+ <html><head/><body><p>Update the codeplug on the radio. If not selected, the codeplug on the radio gets overridden with possibly incomplete default values.</p><p><br/></p><p>If selected, QDMR downloads the codeplug from the radio and updates only those settings specified. The remaining settings within the radio are not touched (recommended).</p></body></html>
+ <html><head/><body><p>Update the codeplug on the radio. If not selected, the codeplug on the radio gets overridden with possibly incomplete default values.</p><p><br/></p><p>If selected, QDMR downloads the codeplug from the radio and updates only those settings specified. The remaining settings within the radio are not touched (recommended).</p></body></html>
+
+
+
+ Auto-enable GPS
+ Auto-enable GPS
+
+
+
+ When a GPS or APRS system is defined and used for any channel, the GPS module gets enabled automatically.
+ When a GPS or APRS system is defined and used for any channel, the GPS module gets enabled automatically.
+
+
+
+ When a roaming zone is defined and used by any channel, the automatic roaming gets enabled.
+ When a roaming zone is defined and used by any channel, the automatic roaming gets enabled.
+
+
+
+ Auto-enable roaming
+ Auto-enable roaming
+
+
+
+ Ignore verification warnings
+ Ignore verification warnings
+
+
+
+ <html><head/><body><p>As the communication interface to the radio is kept open after verification, time-outs may occur and the code-plug upload may fail when the verification dialog pops up. To prevent this, verification warnings can be ignored, eliminating the time-gap between verification and upload. Verification errors still prevent the upload.</p></body></html>
+ <html><head/><body><p>As the communication interface to the radio is kept open after verification, time-outs may occur and the code-plug upload may fail when the verification dialog pops up. To prevent this, verification warnings can be ignored, eliminating the time-gap between verification and upload. Verification errors still prevent the upload.</p></body></html>
+
+
+
+ Ignore frequency limits
+ Ignore frequency limits
+
+
+
+ Do not set this option unless you know what you are doing.
+ Do not set this option unless you know what you are doing.
+
+
+
+ Call-Sign DB
+ Call-Sign DB
+
+
+
+ Limit number of DB entries
+ Limit number of DB entries
+
+
+
+ When enabled, the number of DB entries will be limited. Otherwise the maximum number of entries are generated (device dependent).
+ When enabled, the number of DB entries will be limited. Otherwise the maximum number of entries are generated (device dependent).
+
+
+
+ Number of DB entries
+ Number of DB entries
+
+
+
+ Specifies the number of DB entries (if enabled above).
+ Specifies the number of DB entries (if enabled above).
+
+
+
+ Select using my DMR ID
+ Select using my DMR ID
+
+
+
+ If enabled, the entries are selected using the users DMR ID.
+ If enabled, the entries are selected using the users DMR ID.
+
+
+
+ Select using prefixes
+ Select using prefixes
+
+
+
+ If enabled, these comma separated DMR ID prefixes are used to select the call-sign DB entries.
+ If enabled, these comma separated DMR ID prefixes are used to select the call-sign DB entries.
+
+
+
+ Extended Features
+ Extended Features
+
+
+
+ Show commercial features
+ Show commercial features
+
+
+
+ Show device extensions
+ Show device extensions
@@ -2276,7 +3507,7 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
%1 (%2)
-
+ %1 (%2)
@@ -2284,25 +3515,76 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
%1 (%2)
-
+ %1 (%2)%1 (%2, %3)
-
+ %1 (%2, %3)
+
+
+
+ VerifyDialog
+
+
+ Verify Codeplug
+ Verify CodeplugZoneDialog
+ Edit Zone
+ Edit zone
+
+
+
+ Basic
+
+
+ <html><head/><body><p align="justify"><span style=" font-weight:600;">Note:</span> Zones are collections of channels that are usually valid for a specific region. I.e., a collection of channels for repeaters within a certain region. </p><p align="justify">QDMR manages zones by allowing for two independent channel lists for each VFO of the radio (if it has two). Many radios however, allow one to assign zones to each VFO individually. In these cases, QDMR will split the zone into two (A & B) and program them individually into the radio.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+ <html><head/><body><p align="justify"><span style=" font-weight:600;">Note:</span> Zones are collections of channels that are usually valid for a specific region. I.e., a collection of channels for repeaters within a certain region. </p><p align="justify">QDMR manages zones by allowing for two independent channel lists for each VFO of the radio (if it has two). Many radios however, allow one to assign zones to each VFO individually. In these cases, QDMR will split the zone into two (A & B) and program them individually into the radio.</p><p align="right"><a href="#hide"><span style=" text-decoration: underline; color:#0000ff;">Hide</span></a></p></body></html>
+
+
+
+ Name
+ Name
+
+
+
+ Channels A
+ Channels A
+
+
+
+
+ add
+ add
+
+
+
+
+ remove
+ remove
+
+
+
+ Channels B
+ Channels B
+
+
+
+ Extension
+ Extension
+ Create Zone
-
+ Create zone
@@ -2310,39 +3592,156 @@ Visit https://github.com/hmatuschek/qdmr/releases for further information.
Cannot delete zone
-
+ Cannot delete zoneCannot delete zone: You have to select a zone first.
-
+ Cannot delete zone: You have to select a zone first.Delete zone?
-
+ Delete zone?Delete zone %1?
-
+ Delete zone '%1'?Delete zones?
-
+ Delete zones?Delete %1 zones?
+ Delete %1 zones?
+
+
+
+ Form
+
+
+ Add Zone
+ Add Zone
+
+
+
+ Alt++
+ Alt++
+
+
+
+ Delete Zone
+ Delete Zone
+
+
+
+ Alt+-
+ Alt+-
+ ZoneListWrapperZone
+ Zone
+
+
+
+ aprssystemdialog
+
+
+ Edit APRS System
+ Edit APRS System
+
+
+
+ Basic
+
+
+
+
+ Name
+ Name
+
+
+
+ Channel
+ Channel
+
+
+
+ Source
+ Source
+
+
+
+
+ -
+ -
+
+
+
+ Destination
+ Destination
+
+
+
+ WIDE3
+ WIDE3
+
+
+
+ Path
+ Path
+
+
+
+ Icon
+ Icon
+
+
+
+ Update period [s]
+ Update period [s]
+
+
+
+ Message
+ Message
+
+
+
+ s
+ s
+
+
+
+ Extensions
+ Extensions
+
+
+
+ pageStart
+
+
+ WizardPage
+
+
+
+
+ Welcome
+
+
+
+
+ Guided codeplug setup
diff --git a/lib/config.h.in b/lib/config.h.in
index ad6b4f6b..5817c3ff 100644
--- a/lib/config.h.in
+++ b/lib/config.h.in
@@ -2,3 +2,4 @@
#define VERSION_MINOR @PROJECT_VERSION_MINOR@
#define VERSION_PATCH @PROJECT_VERSION_PATCH@
#define VERSION_STRING @PROJECT_VERSION_STRING@
+#define LOCALE_DIRECTORY "@LOCALE_DIRECTORY@"
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a99a1131..67f2db55 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -34,12 +34,17 @@ SET(qdmr_UI_FORMS dmrcontactdialog.ui dtmfcontactdialog.ui rxgrouplistdialog.ui
errormessageview.ui extensionview.ui
deviceselectiondialog.ui radioselectiondialog.ui dmriddialog.ui configobjecttypeselectiondialog.ui)
+set(qdmr_TS_FILES ../i18n/de.ts ../i18n/en_US.ts)
qt5_wrap_cpp(qdmr_MOC_SOURCES ${qdmr_MOC_HEADERS})
qt5_wrap_ui(qdmr_UI_SOURCES ${qdmr_UI_FORMS})
+
+qt5_add_translation(qdmr_QM_FILES ${qdmr_TS_FILES})
+message(STATUS "Translations at: ${qdmr_QM_FILES}")
+
qt5_add_resources(qdmr_RCC_SOURCES ../shared/resources.qrc)
add_executable(qdmr WIN32
- ${qdmr_SOURCES} ${qdmr_MOC_SOURCES} ${qdmr_RCC_SOURCES} ${qdmr_UI_SOURCES})
+ ${qdmr_SOURCES} ${qdmr_MOC_SOURCES} ${qdmr_RCC_SOURCES} ${qdmr_UI_SOURCES} ${qdmr_QM_FILES})
if (UNIX AND APPLE AND INSTALL_BUNDLE)
set_target_properties(qdmr PROPERTIES
@@ -50,7 +55,7 @@ if (UNIX AND APPLE AND INSTALL_BUNDLE)
MACOSX_BUNDLE_ICON_FILE "Resources/qdmr.icns"
MACOSX_BUNDLE_LONG_VERSION_STRING ${CMAKE_PROJECT_VERSION}
MACOSX_BUNDLE_SHORT_VERSION_STRING "${CMAKE_PROJECT_VERSION_MAJOR}.${CMAKE_PROJECT_VERSION_MINOR}"
- RESOURCE "${CMAKE_SOURCE_DIR}/dist/macosx/qdmr.icns")
+ RESOURCE "${CMAKE_SOURCE_DIR}/dist/macosx/qdmr.icns" ${qdmr_QM_FILES})
endif(UNIX AND APPLE AND INSTALL_BUNDLE)
target_link_libraries(qdmr ${LIBS} libdmrconf)
@@ -63,4 +68,10 @@ if (UNIX AND APPLE AND INSTALL_BUNDLE)
RESOURCE DESTINATION "${BUNDLE_PATH}/${CMAKE_PROJECT_NAME}.app/Contents/Resources")
else()
install(TARGETS qdmr DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
+ foreach(QM_FILE ${qdmr_QM_FILES})
+ get_filename_component(QM_LANGUAGE ${QM_FILE} NAME_WE)
+ install(FILES ${QM_FILE}
+ DESTINATION "${LOCALE_DIRECTORY}/${QM_LANGUAGE}/LC_MESSAGES/"
+ RENAME "qdmr_qt.qm")
+ endforeach()
endif(UNIX AND APPLE AND INSTALL_BUNDLE)
diff --git a/src/application.cc b/src/application.cc
index ac8cbe46..33f02138 100644
--- a/src/application.cc
+++ b/src/application.cc
@@ -2,6 +2,8 @@
#include
#include
#include
+#include
+#include
#include "logger.hh"
#include "radio.hh"
@@ -38,10 +40,21 @@
#include "deviceselectiondialog.hh"
#include "radioselectiondialog.hh"
+inline QStringList getLanguages() {
+ QStringList languages = {QLocale::system().name()};
+ if (languages.last().contains("_")) {
+ languages.append(languages.last().split("_").first());
+ }
+ return languages;
+}
+
+inline QString getLocalePath(const QString &language) {
+ return QDir(LOCALE_DIRECTORY "/" + language + "/LC_MESSAGES/").absolutePath();
+}
Application::Application(int &argc, char *argv[])
- : QApplication(argc, argv), _config(nullptr), _mainWindow(nullptr), _repeater(nullptr),
- _lastDevice()
+ : QApplication(argc, argv), _config(nullptr), _mainWindow(nullptr), _translator(nullptr),
+ _repeater(nullptr), _lastDevice()
{
setApplicationName("qdmr");
setOrganizationName("DM3MAT");
@@ -51,18 +64,33 @@ Application::Application(int &argc, char *argv[])
QString logdir = QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation);
Logger::get().addHandler(new FileLogHandler(logdir+"/qdmr.log"));
- // Register icon themes
+ // register icon themes
QStringList iconPaths = QIcon::themeSearchPaths();
iconPaths.prepend(":/icons");
QIcon::setThemeSearchPaths(iconPaths);
onPaletteChanged(palette());
+ // handle translations
+ _translator = new QTranslator(this);
+ foreach (QString language, getLanguages()) {
+ logDebug() << "Search for translation in '" << getLocalePath(language) << "'.";
+ if (_translator->load("qdmr", getLocalePath(language), "", "_qt.qm")) {
+ this->installTranslator(_translator);
+ logDebug() << "Installed translator for locale '" << QLocale::system().name() << "'.";
+ break;
+ }
+ }
+
+ // load settings
Settings settings;
+ // load databases
_repeater = new RepeaterBookList(this);
_users = new UserDatabase(30, this);
_talkgroups = new TalkGroupDatabase(30, this);
- _config = new Config(this);
+ // create empty codeplug
+ _config = new Config(this);
+ // Handle args (if there are some)
if (argc>1) {
QFileInfo info(argv[1]);
QFile file(argv[1]);
@@ -86,6 +114,7 @@ Application::Application(int &argc, char *argv[])
}
}
+ // load position
_currentPosition = settings.position();
_source = QGeoPositionInfoSource::createDefaultSource(this);
if (_source) {
diff --git a/src/application.hh b/src/application.hh
index 16d535c1..24aa22b3 100644
--- a/src/application.hh
+++ b/src/application.hh
@@ -10,6 +10,7 @@
#include "radio.hh"
class QMainWindow;
+class QTranslator;
class RepeaterBookList;
class UserDatabase;
class TalkGroupDatabase;
@@ -81,6 +82,7 @@ private slots:
protected:
Config *_config;
QMainWindow *_mainWindow;
+ QTranslator *_translator;
GeneralSettingsView *_generalSettings;
RadioIDListView *_radioIdTab;