Update translations & add hex validator (#20)

This commit is contained in:
Alex Spataru 2021-02-05 09:34:28 -05:00
parent 69a3d443a7
commit c0696d825a
31 changed files with 978 additions and 332 deletions

View File

@ -166,7 +166,7 @@ Window {
Layout.maximumWidth: root.gaugeSize
Layout.minimumHeight: root.gaugeSize
Layout.maximumHeight: root.gaugeSize
title: qsTr("G Units") + Cpp_Misc_Translator.dummy
title: qsTr("G Units")
}
//
@ -189,7 +189,7 @@ Window {
color: gauge.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignHCenter
text: qsTr("%1 G MAX").arg(root.max.toFixed(2)) + Cpp_Misc_Translator.dummy
text: qsTr("%1 G MAX").arg(root.max.toFixed(2))
}
Label {
@ -197,7 +197,7 @@ Window {
color: gauge.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignHCenter
text: qsTr("%1 G MIN").arg(root.min.toFixed(2)) + Cpp_Misc_Translator.dummy
text: qsTr("%1 G MIN").arg(root.min.toFixed(2))
}
Item {
@ -210,7 +210,7 @@ Window {
color: gauge.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignHCenter
text: qsTr("%1 G ACT").arg(root.meanGForce.toFixed(2)) + Cpp_Misc_Translator.dummy
text: qsTr("%1 G ACT").arg(root.meanGForce.toFixed(2))
Rectangle {
border.width: 1
@ -226,7 +226,7 @@ Window {
}
Button {
text: qsTr("Reset") + Cpp_Misc_Translator.dummy
text: qsTr("Reset")
Layout.alignment: Qt.AlignHCenter
onClicked: {

View File

@ -186,7 +186,7 @@ Window {
color: root.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignLeft
text: qsTr("%1° YAW").arg(controls.formatAngle(root.yawAngle)) + Cpp_Misc_Translator.dummy
text: qsTr("%1° YAW").arg(controls.formatAngle(root.yawAngle))
}
Label {
@ -194,7 +194,7 @@ Window {
color: root.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignLeft
text: qsTr("%1° ROLL").arg(controls.formatAngle(root.rollAngle)) + Cpp_Misc_Translator.dummy
text: qsTr("%1° ROLL").arg(controls.formatAngle(root.rollAngle))
}
Label {
@ -202,7 +202,7 @@ Window {
color: root.valueColor
font.family: app.monoFont
Layout.alignment: Qt.AlignLeft
text: qsTr("%1° PITCH").arg(controls.formatAngle(root.pitchAngle)) + Cpp_Misc_Translator.dummy
text: qsTr("%1° PITCH").arg(controls.formatAngle(root.pitchAngle))
}
}
}

View File

@ -125,7 +125,7 @@ Window {
checkable: true
Layout.leftMargin: -6
Layout.alignment: Qt.AlignHCenter
text: qsTr("Center on coordinate") + Cpp_Misc_Translator.dummy
text: qsTr("Center on coordinate")
onCheckedChanged: {
if (checked)
root.centerMap()

View File

@ -36,7 +36,7 @@ Window {
//
// Window options
//
title: qsTr("About") + Cpp_Misc_Translator.dummy
title: qsTr("About")
minimumWidth: column.implicitWidth + 4 * app.spacing
maximumWidth: column.implicitWidth + 4 * app.spacing
minimumHeight: column.implicitHeight + 4 * app.spacing
@ -88,7 +88,7 @@ Window {
Label {
opacity: 0.5
font.pixelSize: 16
text: qsTr("Version %1").arg(Cpp_AppVersion) + Cpp_Misc_Translator.dummy
text: qsTr("Version %1").arg(Cpp_AppVersion)
}
}
}
@ -98,7 +98,7 @@ Window {
Layout.fillWidth: true
Layout.maximumWidth: 288
wrapMode: Label.WrapAtWordBoundaryOrAnywhere
text: qsTr("Copyright © 2020-%1 %2, released under the MIT License.").arg(root.year).arg(Cpp_AppOrganization) + Cpp_Misc_Translator.dummy
text: qsTr("Copyright © 2020-%1 %2, released under the MIT License.").arg(root.year).arg(Cpp_AppOrganization)
}
Label {
@ -108,7 +108,7 @@ Window {
Layout.maximumWidth: 288
color: palette.highlightedText
wrapMode: Label.WrapAtWordBoundaryOrAnywhere
text: qsTr("The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.") + Cpp_Misc_Translator.dummy
text: qsTr("The program is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.")
}
Item {
@ -117,13 +117,13 @@ Window {
Button {
Layout.fillWidth: true
text: qsTr("Contact author") + Cpp_Misc_Translator.dummy
text: qsTr("Contact author")
onClicked: Qt.openUrlExternally("mailto:alex_spataru@outlook.com")
}
Button {
Layout.fillWidth: true
text: qsTr("Report bug") + Cpp_Misc_Translator.dummy
text: qsTr("Report bug")
onClicked: Qt.openUrlExternally("https://github.com/Serial-Studio/Serial-Studio/issues")
}
@ -131,7 +131,7 @@ Window {
Layout.fillWidth: true
visible: Cpp_UpdaterEnabled
enabled: Cpp_UpdaterEnabled
text: qsTr("Check for updates") + Cpp_Misc_Translator.dummy
text: qsTr("Check for updates")
onClicked: {
Cpp_Updater.setNotifyOnFinish(Cpp_AppUpdaterUrl, true)
Cpp_Updater.checkForUpdates(Cpp_AppUpdaterUrl)
@ -141,12 +141,12 @@ Window {
Button {
Layout.fillWidth: true
onClicked: Cpp_CSV_Export.openLogFile()
text: qsTr("Open log file") + Cpp_Misc_Translator.dummy
text: qsTr("Open log file")
}
Button {
Layout.fillWidth: true
text: qsTr("Documentation") + Cpp_Misc_Translator.dummy
text: qsTr("Documentation")
onClicked: Qt.openUrlExternally("https://github.com/Serial-Studio/Serial-Studio/wiki")
}
@ -157,7 +157,7 @@ Window {
Button {
Layout.fillWidth: true
onClicked: root.close()
text: qsTr("Close") + Cpp_Misc_Translator.dummy
text: qsTr("Close")
}
Item {

View File

@ -143,7 +143,11 @@ Control {
font.family: app.monoFont
opacity: enabled ? 1 : 0.5
enabled: Cpp_IO_Manager.readWrite
placeholderText: qsTr("Send data to device") + "..." + Cpp_Misc_Translator.dummy
placeholderText: qsTr("Send data to device") + "..."
validator: RegExpValidator {
regExp: hexCheckbox.checked ? /^[a-fA-F0-9]+$/ : /[\s\S]*/
}
Keys.onReturnPressed: root.sendData()

View File

@ -31,7 +31,7 @@ Window {
//
// Window options
//
title: qsTr("CSV Player") + Cpp_Misc_Translator.dummy
title: qsTr("CSV Player")
minimumWidth: column.implicitWidth + 4 * app.spacing
maximumWidth: column.implicitWidth + 4 * app.spacing
minimumHeight: column.implicitHeight + 4 * app.spacing

View File

@ -106,7 +106,7 @@ Control {
Layout.minimumWidth: 240
backgroundColor: "#121218"
icon.source: "qrc:/icons/visibility.svg"
title: qsTr("View") + Cpp_Misc_Translator.dummy
title: qsTr("View")
property var groups: []
property var graphs: []
@ -149,7 +149,7 @@ Control {
Label {
font.bold: true
text: qsTr("Horizontal Range") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Horizontal Range") + ":"
}
Item {
@ -211,7 +211,7 @@ Control {
Label {
font.bold: true
text: qsTr("Data Groups") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Data Groups") + ":"
}
Item {
@ -272,7 +272,7 @@ Control {
Label {
font.bold: true
text: qsTr("Data Plots") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Data Plots") + ":"
}
Item {
@ -318,7 +318,7 @@ Control {
Layout.minimumWidth: 240
backgroundColor: "#121218"
icon.source: "qrc:/icons/scatter-plot.svg"
title: qsTr("Data") + Cpp_Misc_Translator.dummy
title: qsTr("Data")
Rectangle {
z: 1

View File

@ -57,20 +57,14 @@ Control {
Connections {
target: Cpp_Misc_Translator
function onLanguageChanged() {
var portIndex = portSelector.currentIndex
var oldParityIndex = parity.currentIndex
var oldDisplayModeIndex = displayMode.currentIndex
var oldFlowControlIndex = flowControl.currentIndex
parity.model = Cpp_IO_Serial.parityList
portSelector.model = Cpp_IO_Serial.portList
flowControl.model = Cpp_IO_Serial.flowControlList
displayMode.model = Cpp_IO_Serial.consoleDisplayModes
parity.currentIndex = oldParityIndex
flowControl.currentIndex = oldFlowControlIndex
displayMode.currentIndex = oldDisplayModeIndex
portSelector.currentIndex = portIndex
}
}
@ -99,11 +93,11 @@ Control {
//
Label {
font.bold: true
text: qsTr("Communication Mode") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Communication Mode") + ":"
} RadioButton {
id: commAuto
checked: true
text: qsTr("Auto (JSON from serial device)") + Cpp_Misc_Translator.dummy
text: qsTr("Auto (JSON from serial device)")
onCheckedChanged: {
if (checked)
Cpp_JSON_Generator.setOperationMode(1)
@ -113,7 +107,7 @@ Control {
} RadioButton {
id: commManual
checked: false
text: qsTr("Manual (use JSON map file)") + Cpp_Misc_Translator.dummy
text: qsTr("Manual (use JSON map file)")
onCheckedChanged: {
if (checked)
Cpp_JSON_Generator.setOperationMode(0)
@ -131,8 +125,7 @@ Control {
enabled: commManual.checked
onClicked: Cpp_JSON_Generator.loadJsonMap()
Behavior on opacity {NumberAnimation{}}
text: Cpp_Misc_Translator.dummy +
(Cpp_JSON_Generator.jsonMapFilename.length ? qsTr("Change map file (%1)").arg(Cpp_JSON_Generator.jsonMapFilename) :
text: (Cpp_JSON_Generator.jsonMapFilename.length ? qsTr("Change map file (%1)").arg(Cpp_JSON_Generator.jsonMapFilename) :
qsTr("Select map file") + "...")
}
@ -149,13 +142,12 @@ Control {
RowLayout {
Layout.fillWidth: true
CheckBox {
Switch {
id: csvLogging
checked: true
palette.highlight: "#2e895c"
Layout.leftMargin: -app.spacing
text: qsTr("Create CSV file")
Layout.alignment: Qt.AlignVCenter
text: qsTr("Create CSV file") + Cpp_Misc_Translator.dummy
onCheckedChanged: Cpp_CSV_Export.exportEnabled = checked
}
@ -196,7 +188,7 @@ Control {
opacity: enabled ? 1 : 0.5
enabled: !Cpp_IO_Serial.connected
Behavior on opacity {NumberAnimation{}}
text: qsTr("COM Port") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("COM Port") + ":"
} ComboBox {
id: portSelector
Layout.fillWidth: true
@ -219,7 +211,7 @@ Control {
opacity: enabled ? 1 : 0.5
enabled: !Cpp_IO_Serial.connected
Behavior on opacity {NumberAnimation{}}
text: qsTr("Baud Rate") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Baud Rate") + ":"
} ComboBox {
id: baudRate
editable: true
@ -257,7 +249,7 @@ Control {
// Data bits selector
//
Label {
text: qsTr("Data Bits") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Data Bits") + ":"
} ComboBox {
id: dataBits
Layout.fillWidth: true
@ -273,7 +265,7 @@ Control {
// Parity selector
//
Label {
text: qsTr("Parity") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Parity") + ":"
} ComboBox {
id: parity
Layout.fillWidth: true
@ -289,7 +281,7 @@ Control {
// Stop bits selector
//
Label {
text: qsTr("Stop Bits") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Stop Bits") + ":"
} ComboBox {
id: stopBits
Layout.fillWidth: true
@ -305,7 +297,7 @@ Control {
// Flow control selector
//
Label {
text: qsTr("Flow Control") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Flow Control") + ":"
} ComboBox {
id: flowControl
Layout.fillWidth: true
@ -332,7 +324,7 @@ Control {
// Language selector
//
Label {
text: qsTr("Language") + ":" + Cpp_Misc_Translator.dummy
text: qsTr("Language") + ":"
} ComboBox {
id: languageCombo
Layout.fillWidth: true

View File

@ -88,7 +88,7 @@ Control {
icon.color: palette.text
onClicked: root.setupClicked()
icon.source: "qrc:/icons/settings.svg"
text: qsTr("Setup") + _btSpacer + Cpp_Misc_Translator.dummy
text: qsTr("Setup") + _btSpacer
}
Button {
@ -102,7 +102,7 @@ Control {
onClicked: root.consoleClicked()
icon.source: "qrc:/icons/code.svg"
enabled: dataBt.enabled || widgetsBt.enabled
text: qsTr("Console") + _btSpacer + Cpp_Misc_Translator.dummy
text: qsTr("Console") + _btSpacer
}
Button {
@ -116,7 +116,7 @@ Control {
onClicked: root.dataClicked()
enabled: Cpp_UI_Provider.groupCount > 0
icon.source: "qrc:/icons/equalizer.svg"
text: qsTr("Dashboard") + _btSpacer + Cpp_Misc_Translator.dummy
text: qsTr("Dashboard") + _btSpacer
opacity: enabled ? 1 : 0.5
Behavior on opacity {NumberAnimation{}}
@ -133,7 +133,7 @@ Control {
onClicked: root.widgetsClicked()
icon.source: "qrc:/icons/chart.svg"
enabled: Cpp_UI_WidgetProvider.totalWidgetCount > 0
text: qsTr("Widgets") + _btSpacer + Cpp_Misc_Translator.dummy
text: qsTr("Widgets") + _btSpacer
opacity: enabled ? 1 : 0.5
Behavior on opacity {NumberAnimation{}}
@ -149,7 +149,7 @@ Control {
icon.color: palette.text
onClicked: root.aboutClicked()
icon.source: "qrc:/icons/info.svg"
text: qsTr("About") + Cpp_Misc_Translator.dummy
text: qsTr("About")
}
Item {
@ -165,7 +165,7 @@ Control {
opacity: enabled ? 1 : 0.5
enabled: !Cpp_CSV_Player.isOpen
icon.source: "qrc:/icons/open.svg"
text: qsTr("Open CSV") + _btSpacer + Cpp_Misc_Translator.dummy
text: qsTr("Open CSV") + _btSpacer
onClicked: {
if (Cpp_CSV_Export.isOpen)

View File

@ -424,7 +424,7 @@ ApplicationWindow {
font.bold: true
font.pixelSize: 24
Layout.alignment: Qt.AlignHCenter
text: qsTr("Drop JSON and CSV files here") + Cpp_Misc_Translator.dummy
text: qsTr("Drop JSON and CSV files here")
}
}

Binary file not shown.

View File

@ -68,21 +68,33 @@
</message>
</context>
<context>
<name>Console</name>
<name>CSV::Export</name>
<message>
<source>No data received so far...</source>
<translation>Noch keine Daten verfügbar...</translation>
<source>CSV file not open</source>
<translation>CSV Datei nicht geöffnet</translation>
</message>
<message>
<source>Send data to device</source>
<translation>Daten an das Gerät senden</translation>
<source>Cannot find CSV export file!</source>
<translation>Konnte CSV exportierte Datei nicht finden!</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV Datei Fehler</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>Konnte nicht in CSV schreiben!</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<name>CSV::Player</name>
<message>
<source>CSV Player</source>
<translation></translation>
<source>Select CSV file</source>
<translation>CSV Datei auswählen</translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV Dateien</translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
@ -92,10 +104,6 @@
<source>You need to select a JSON map file in order to use this feature</source>
<translation>Sie müssen eine JSON-Modelldatei auswählen, um diese Funktion nutzen zu können</translation>
</message>
<message>
<source>Select CSV file</source>
<translation>CSV Datei auswählen</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation>Serielle Schnittstelle offen, wollen Sie fortfahren?</translation>
@ -124,9 +132,79 @@
<source>Replay of %1</source>
<translation>Wiederholen von %1</translation>
</message>
</context>
<context>
<name>Console</name>
<message>
<source>No data received so far...</source>
<translation type="vanished">Noch keine Daten verfügbar...</translation>
</message>
<message>
<source>Send data to device</source>
<translation>Daten an das Gerät senden</translation>
</message>
<message>
<source>Echo</source>
<translation>Echo</translation>
</message>
<message>
<source>Autoscroll</source>
<translation>Auto Scroll</translation>
</message>
<message>
<source>Show timestamp</source>
<translation>Zeitstempel anzeigen</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<message>
<source>CSV Player</source>
<translation></translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
<translation type="vanished">Konfiguration des CSV players ist ungültig</translation>
</message>
<message>
<source>You need to select a JSON map file in order to use this feature</source>
<translation type="vanished">Sie müssen eine JSON-Modelldatei auswählen, um diese Funktion nutzen zu können</translation>
</message>
<message>
<source>Select CSV file</source>
<translation type="vanished">CSV Datei auswählen</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation type="vanished">Serielle Schnittstelle offen, wollen Sie fortfahren?</translation>
</message>
<message>
<source>In order to use this feature, its necessary to disconnect from the serial port</source>
<translation type="vanished">Um diese Funktion zu nutzen, ist es notwendig, die Verbindung zur seriellen Schnittstelle zu trennen</translation>
</message>
<message>
<source>There is an error with the data in the CSV file</source>
<translation type="vanished">Es liegt ein Fehler in der CSV Datei vor</translation>
</message>
<message>
<source>Please verify that the CSV file was created with Serial Studio</source>
<translation type="vanished">Überprüfen Sie ob die CSV mit Serial Studio erstellt ist</translation>
</message>
<message>
<source>Cannot read CSV file</source>
<translation type="vanished">CSV-Datei kann nicht gelesen werden</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished">Prüfen Sie die Dateiberechtigungen und Dateipfade</translation>
</message>
<message>
<source>Replay of %1</source>
<translation type="vanished">Wiederholen von %1</translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV Dateien</translation>
<translation type="vanished">CSV Dateien</translation>
</message>
</context>
<context>
@ -310,26 +388,26 @@
<name>Export</name>
<message>
<source>CSV file not open</source>
<translation>CSV Datei nicht geöffnet</translation>
<translation type="vanished">CSV Datei nicht geöffnet</translation>
</message>
<message>
<source>Cannot find CSV export file!</source>
<translation>Konnte CSV exportierte Datei nicht finden!</translation>
<translation type="vanished">Konnte CSV exportierte Datei nicht finden!</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV Datei Fehler</translation>
<translation type="vanished">CSV Datei Fehler</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>Konnte nicht in CSV schreiben!</translation>
<translation type="vanished">Konnte nicht in CSV schreiben!</translation>
</message>
</context>
<context>
<name>Group</name>
<message>
<source>Invalid</source>
<translation>Ungültig</translation>
<translation type="vanished">Ungültig</translation>
</message>
</context>
<context>
@ -348,11 +426,104 @@
</message>
</context>
<context>
<name>JsonGenerator</name>
<name>IO::Console</name>
<message>
<source>ASCII</source>
<translation>ASCII</translation>
</message>
<message>
<source>HEX</source>
<translation>HEX</translation>
</message>
<message>
<source>No line ending</source>
<translation>Kein Zeilenende</translation>
</message>
<message>
<source>New line</source>
<translation>Neue zeile</translation>
</message>
<message>
<source>Carriage return</source>
<translation>Zeilenumbruch (CR)</translation>
</message>
<message>
<source>NL + CR</source>
<translation>Sowohl NL als auch CR</translation>
</message>
<message>
<source>Plain text</source>
<translation>Klartext</translation>
</message>
<message>
<source>Hexadecimal</source>
<translation>Hexadezimal</translation>
</message>
</context>
<context>
<name>IO::DataSources::Serial</name>
<message>
<source>None</source>
<translation>Keine</translation>
</message>
<message>
<source>No Device</source>
<translation>Kein Gerät</translation>
</message>
<message>
<source>Even</source>
<translation>Gerade</translation>
</message>
<message>
<source>Odd</source>
<translation>Ungerade</translation>
</message>
<message>
<source>Space</source>
<translation></translation>
</message>
<message>
<source>Mark</source>
<translation></translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation>Baudrate erfolgreich registriert</translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>Rate &quot;%1&quot; wurde zur Baudratenliste hinzugefügt</translation>
</message>
<message>
<source>Select Port</source>
<translation>Port auswählen</translation>
</message>
<message>
<source>Critical serial port error</source>
<translation>Kritischer Fehler an der seriellen Schnittstelle</translation>
</message>
</context>
<context>
<name>IO::Manager</name>
<message>
<source>Serial port</source>
<translation>Serielle Schnittstelle</translation>
</message>
<message>
<source>Network port</source>
<translation>Netzwerk Schnittstelle</translation>
</message>
</context>
<context>
<name>JSON::Generator</name>
<message>
<source>Select JSON map file</source>
<translation>JSON Modelldatei auswählen</translation>
</message>
<message>
<source>JSON files</source>
<translation>JSON Dateien</translation>
</message>
<message>
<source>JSON parse error</source>
<translation>JSON-Parsing-Fehler</translation>
@ -381,9 +552,44 @@
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation>Das Format der empfangenen Daten stimmt nicht mit der ausgewählten JSON Modelldatei überein.</translation>
</message>
</context>
<context>
<name>JsonGenerator</name>
<message>
<source>Select JSON map file</source>
<translation type="vanished">JSON Modelldatei auswählen</translation>
</message>
<message>
<source>JSON parse error</source>
<translation type="vanished">JSON-Parsing-Fehler</translation>
</message>
<message>
<source>JSON map file loaded successfully!</source>
<translation type="vanished">JSON Modelldatei erfolgreich geladen!</translation>
</message>
<message>
<source>File &quot;%1&quot; loaded into memory</source>
<translation type="vanished">Datei %1 geladen</translation>
</message>
<message>
<source>Cannot read JSON file</source>
<translation type="vanished">JSON-Datei kann nicht gelesen werden</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished">Prüfen Sie die Dateiberechtigungen und Dateipfade</translation>
</message>
<message>
<source>JSON/serial data format mismatch</source>
<translation type="vanished">JSON/serielles Datenformat stimmt nicht überein</translation>
</message>
<message>
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation type="vanished">Das Format der empfangenen Daten stimmt nicht mit der ausgewählten JSON Modelldatei überein.</translation>
</message>
<message>
<source>JSON files</source>
<translation>JSON Dateien</translation>
<translation type="vanished">JSON Dateien</translation>
</message>
</context>
<context>
@ -404,39 +610,31 @@
<name>SerialManager</name>
<message>
<source>No Device</source>
<translation>Kein Gerät</translation>
<translation type="vanished">Kein Gerät</translation>
</message>
<message>
<source>Received: %1 %2</source>
<translation>Empfangen: %1 %2</translation>
<translation type="vanished">Empfangen: %1 %2</translation>
</message>
<message>
<source>Select Port</source>
<translation>Port auswählen</translation>
<translation type="vanished">Port auswählen</translation>
</message>
<message>
<source>None</source>
<translation>Keine</translation>
<translation type="vanished">Keine</translation>
</message>
<message>
<source>Even</source>
<translation>Gerade</translation>
<translation type="vanished">Gerade</translation>
</message>
<message>
<source>Odd</source>
<translation>Ungerade</translation>
</message>
<message>
<source>Space</source>
<translation></translation>
</message>
<message>
<source>Mark</source>
<translation></translation>
<translation type="vanished">Ungerade</translation>
</message>
<message>
<source>Critical serial port error</source>
<translation>Kritischer Fehler an der seriellen Schnittstelle</translation>
<translation type="vanished">Kritischer Fehler an der seriellen Schnittstelle</translation>
</message>
<message>
<source>Plain text (as it comes)</source>
@ -452,23 +650,23 @@
</message>
<message>
<source>As it comes</source>
<translation>Wie es kommt</translation>
<translation type="vanished">Wie es kommt</translation>
</message>
<message>
<source>Remove control characters</source>
<translation>Steuerzeichen entfernen</translation>
<translation type="vanished">Steuerzeichen entfernen</translation>
</message>
<message>
<source>Hexadecimal</source>
<translation>Hexadezimal</translation>
<translation type="vanished">Hexadezimal</translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation>Baudrate erfolgreich registriert</translation>
<translation type="vanished">Baudrate erfolgreich registriert</translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>Rate &quot;%1&quot; wurde zur Baudratenliste hinzugefügt</translation>
<translation type="vanished">Rate &quot;%1&quot; wurde zur Baudratenliste hinzugefügt</translation>
</message>
</context>
<context>
@ -523,19 +721,19 @@
</message>
<message>
<source>Open mode</source>
<translation>Öffnungsmodus</translation>
<translation type="vanished">Öffnungsmodus</translation>
</message>
<message>
<source>Read-only</source>
<translation>Schreibgeschützt</translation>
<translation type="vanished">Schreibgeschützt</translation>
</message>
<message>
<source>Read/write</source>
<translation>Lesen/schreiben</translation>
<translation type="vanished">Lesen/schreiben</translation>
</message>
<message>
<source>Display mode</source>
<translation>Visualisierung</translation>
<translation type="vanished">Visualisierung</translation>
</message>
<message>
<source>Custom baud rate</source>
@ -543,11 +741,15 @@
</message>
<message>
<source>CSV Export</source>
<translation>CSV-Export</translation>
<translation type="vanished">CSV-Export</translation>
</message>
<message>
<source>CSV Player</source>
<translation>CSV Player</translation>
<translation type="vanished">CSV Player</translation>
</message>
<message>
<source>Create CSV file</source>
<translation>CSV-Datei erstellen</translation>
</message>
</context>
<context>

Binary file not shown.

View File

@ -68,22 +68,34 @@
</message>
</context>
<context>
<name>Console</name>
<name>CSV::Export</name>
<message>
<source>No data received so far...</source>
<source>CSV file not open</source>
<translation></translation>
</message>
<message>
<source>Send data to device</source>
<source>Cannot find CSV export file!</source>
<translation></translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV file error</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation></translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<name>CSV::Player</name>
<message>
<source>CSV Player</source>
<source>Select CSV file</source>
<translation></translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV files</translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
<translation></translation>
@ -92,10 +104,6 @@
<source>You need to select a JSON map file in order to use this feature</source>
<translation></translation>
</message>
<message>
<source>Select CSV file</source>
<translation></translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation></translation>
@ -124,9 +132,35 @@
<source>Replay of %1</source>
<translation></translation>
</message>
</context>
<context>
<name>Console</name>
<message>
<source>Send data to device</source>
<translation></translation>
</message>
<message>
<source>Echo</source>
<translation></translation>
</message>
<message>
<source>Autoscroll</source>
<translation></translation>
</message>
<message>
<source>Show timestamp</source>
<translation></translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<message>
<source>CSV Player</source>
<translation></translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV files</translation>
<translation type="vanished">CSV files</translation>
</message>
</context>
<context>
@ -308,28 +342,9 @@
</context>
<context>
<name>Export</name>
<message>
<source>CSV file not open</source>
<translation></translation>
</message>
<message>
<source>Cannot find CSV export file!</source>
<translation></translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV file error</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation></translation>
</message>
</context>
<context>
<name>Group</name>
<message>
<source>Invalid</source>
<translation></translation>
<translation type="vanished">CSV file error</translation>
</message>
</context>
<context>
@ -348,11 +363,104 @@
</message>
</context>
<context>
<name>JsonGenerator</name>
<name>IO::Console</name>
<message>
<source>ASCII</source>
<translation></translation>
</message>
<message>
<source>HEX</source>
<translation></translation>
</message>
<message>
<source>No line ending</source>
<translation></translation>
</message>
<message>
<source>New line</source>
<translation></translation>
</message>
<message>
<source>Carriage return</source>
<translation></translation>
</message>
<message>
<source>NL + CR</source>
<translation></translation>
</message>
<message>
<source>Plain text</source>
<translation></translation>
</message>
<message>
<source>Hexadecimal</source>
<translation></translation>
</message>
</context>
<context>
<name>IO::DataSources::Serial</name>
<message>
<source>None</source>
<translation></translation>
</message>
<message>
<source>No Device</source>
<translation>No device</translation>
</message>
<message>
<source>Even</source>
<translation></translation>
</message>
<message>
<source>Odd</source>
<translation></translation>
</message>
<message>
<source>Space</source>
<translation></translation>
</message>
<message>
<source>Mark</source>
<translation></translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation></translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation></translation>
</message>
<message>
<source>Select Port</source>
<translation>Select port</translation>
</message>
<message>
<source>Critical serial port error</source>
<translation></translation>
</message>
</context>
<context>
<name>IO::Manager</name>
<message>
<source>Serial port</source>
<translation></translation>
</message>
<message>
<source>Network port</source>
<translation></translation>
</message>
</context>
<context>
<name>JSON::Generator</name>
<message>
<source>Select JSON map file</source>
<translation></translation>
</message>
<message>
<source>JSON files</source>
<translation></translation>
</message>
<message>
<source>JSON parse error</source>
<translation></translation>
@ -381,10 +489,6 @@
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation></translation>
</message>
<message>
<source>JSON files</source>
<translation></translation>
</message>
</context>
<context>
<name>MapDelegate</name>
@ -404,59 +508,11 @@
<name>SerialManager</name>
<message>
<source>No Device</source>
<translation>No device</translation>
</message>
<message>
<source>Received: %1 %2</source>
<translation></translation>
<translation type="vanished">No device</translation>
</message>
<message>
<source>Select Port</source>
<translation>Select port</translation>
</message>
<message>
<source>None</source>
<translation></translation>
</message>
<message>
<source>Even</source>
<translation></translation>
</message>
<message>
<source>Odd</source>
<translation></translation>
</message>
<message>
<source>Space</source>
<translation></translation>
</message>
<message>
<source>Mark</source>
<translation></translation>
</message>
<message>
<source>Critical serial port error</source>
<translation></translation>
</message>
<message>
<source>As it comes</source>
<translation></translation>
</message>
<message>
<source>Remove control characters</source>
<translation></translation>
</message>
<message>
<source>Hexadecimal</source>
<translation></translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation></translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation></translation>
<translation type="vanished">Select port</translation>
</message>
</context>
<context>
@ -510,27 +566,7 @@
<translation></translation>
</message>
<message>
<source>Open mode</source>
<translation></translation>
</message>
<message>
<source>Read-only</source>
<translation></translation>
</message>
<message>
<source>Read/write</source>
<translation></translation>
</message>
<message>
<source>Display mode</source>
<translation></translation>
</message>
<message>
<source>CSV Export</source>
<translation></translation>
</message>
<message>
<source>CSV Player</source>
<source>Create CSV file</source>
<translation></translation>
</message>
</context>

Binary file not shown.

View File

@ -72,25 +72,33 @@
</message>
</context>
<context>
<name>Console</name>
<name>CSV::Export</name>
<message>
<source>No data received so far...</source>
<translation>No se han recibido datos hasta ahora ...</translation>
<source>CSV file not open</source>
<translation>Archivo CSV no abierto</translation>
</message>
<message>
<source>Autoscroll</source>
<translation type="vanished">Desplazamiento automático</translation>
<source>Cannot find CSV export file!</source>
<translation>¡No se puede encontrar el archivo de exportación CSV!</translation>
</message>
<message>
<source>Send data to device</source>
<translation>Enviar datos al dispositivo</translation>
<source>CSV File Error</source>
<translation>Error de archivo CSV</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>¡No se puede abrir el archivo CSV en modo de escritura!</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<name>CSV::Player</name>
<message>
<source>CSV Player</source>
<translation>Reproductor CSV</translation>
<source>Select CSV file</source>
<translation>Seleccionar archivo CSV</translation>
</message>
<message>
<source>CSV files</source>
<translation>Archivos CSV</translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
@ -100,14 +108,6 @@
<source>You need to select a JSON map file in order to use this feature</source>
<translation>Debe seleccionar un archivo de mapa JSON para utilizar esta función</translation>
</message>
<message>
<source>Select CSV file</source>
<translation>Seleccionar archivo CSV</translation>
</message>
<message>
<source>CSV files (*.csv)</source>
<translation type="vanished">Archivos CSV (* .csv)</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation>Puerto serie abierto, ¿quieres continuar?</translation>
@ -136,9 +136,83 @@
<source>Replay of %1</source>
<translation>Reproducción de %1</translation>
</message>
</context>
<context>
<name>Console</name>
<message>
<source>No data received so far...</source>
<translation type="vanished">No se han recibido datos hasta ahora ...</translation>
</message>
<message>
<source>Autoscroll</source>
<translation>Desplazamiento automático</translation>
</message>
<message>
<source>Send data to device</source>
<translation>Enviar datos al dispositivo</translation>
</message>
<message>
<source>Echo</source>
<translation>Eco</translation>
</message>
<message>
<source>Show timestamp</source>
<translation>Marca de tiempo</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<message>
<source>CSV Player</source>
<translation>Reproductor CSV</translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
<translation type="vanished">Configuración inválida para el reproductor CSV</translation>
</message>
<message>
<source>You need to select a JSON map file in order to use this feature</source>
<translation type="vanished">Debe seleccionar un archivo de mapa JSON para utilizar esta función</translation>
</message>
<message>
<source>Select CSV file</source>
<translation type="vanished">Seleccionar archivo CSV</translation>
</message>
<message>
<source>CSV files (*.csv)</source>
<translation type="vanished">Archivos CSV (* .csv)</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation type="vanished">Puerto serie abierto, ¿quieres continuar?</translation>
</message>
<message>
<source>In order to use this feature, its necessary to disconnect from the serial port</source>
<translation type="vanished">Para utilizar esta función, es necesario desconectarse del puerto serie</translation>
</message>
<message>
<source>There is an error with the data in the CSV file</source>
<translation type="vanished">Hay un error con los datos en el archivo CSV</translation>
</message>
<message>
<source>Please verify that the CSV file was created with Serial Studio</source>
<translation type="vanished">Verifique que el archivo CSV haya sido creado con Serial Studio</translation>
</message>
<message>
<source>Cannot read CSV file</source>
<translation type="vanished">No se puede leer el archivo CSV</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished">Verifique los permisos y la ubicación del archivo</translation>
</message>
<message>
<source>Replay of %1</source>
<translation type="vanished">Reproducción de %1</translation>
</message>
<message>
<source>CSV files</source>
<translation>Archivos CSV</translation>
<translation type="vanished">Archivos CSV</translation>
</message>
</context>
<context>
@ -346,26 +420,26 @@
<name>Export</name>
<message>
<source>CSV file not open</source>
<translation>Archivo CSV no abierto</translation>
<translation type="vanished">Archivo CSV no abierto</translation>
</message>
<message>
<source>Cannot find CSV export file!</source>
<translation>¡No se puede encontrar el archivo de exportación CSV!</translation>
<translation type="vanished">¡No se puede encontrar el archivo de exportación CSV!</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>Error de archivo CSV</translation>
<translation type="vanished">Error de archivo CSV</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>¡No se puede abrir el archivo CSV en modo de escritura!</translation>
<translation type="vanished">¡No se puede abrir el archivo CSV en modo de escritura!</translation>
</message>
</context>
<context>
<name>Group</name>
<message>
<source>Invalid</source>
<translation>Inválido</translation>
<translation type="vanished">Inválido</translation>
</message>
</context>
<context>
@ -384,14 +458,103 @@
</message>
</context>
<context>
<name>JsonGenerator</name>
<name>IO::Console</name>
<message>
<source>ASCII</source>
<translation>ASCII</translation>
</message>
<message>
<source>HEX</source>
<translation>HEX</translation>
</message>
<message>
<source>No line ending</source>
<translation>Sin ajuste de línea</translation>
</message>
<message>
<source>New line</source>
<translation>Nueva línea</translation>
</message>
<message>
<source>Carriage return</source>
<translation>Retorno de carro</translation>
</message>
<message>
<source>NL + CR</source>
<translation>Ambos NL &amp; CR</translation>
</message>
<message>
<source>Plain text</source>
<translation>Texto sin formato</translation>
</message>
<message>
<source>Hexadecimal</source>
<translation>Hexadecimal</translation>
</message>
</context>
<context>
<name>IO::DataSources::Serial</name>
<message>
<source>None</source>
<translation>Ninguno</translation>
</message>
<message>
<source>No Device</source>
<translation>Sin Dispositivo</translation>
</message>
<message>
<source>Even</source>
<translation>Par</translation>
</message>
<message>
<source>Odd</source>
<translation>Impar</translation>
</message>
<message>
<source>Space</source>
<translation>Espacio</translation>
</message>
<message>
<source>Mark</source>
<translation>Marca</translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation>Nueva tasa de baudios registrada correctamente</translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>Se ha añadido la velocidad &quot;%1&quot; a la lista de tasa de baudios</translation>
</message>
<message>
<source>Select Port</source>
<translation>Seleccionar Puerto</translation>
</message>
<message>
<source>Critical serial port error</source>
<translation>Error crítico del puerto serie</translation>
</message>
</context>
<context>
<name>IO::Manager</name>
<message>
<source>Serial port</source>
<translation>Puerto serial</translation>
</message>
<message>
<source>Network port</source>
<translation>Puerto de red</translation>
</message>
</context>
<context>
<name>JSON::Generator</name>
<message>
<source>Select JSON map file</source>
<translation>Seleccionar mapa JSON</translation>
</message>
<message>
<source>JSON files (*.json)</source>
<translation type="vanished">Archivos JSON (*.json)</translation>
<source>JSON files</source>
<translation>Archivos JSON</translation>
</message>
<message>
<source>JSON parse error</source>
@ -421,9 +584,48 @@
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation>El formato de los datos recibidos no se corresponde con el archivo de mapa JSON seleccionado.</translation>
</message>
</context>
<context>
<name>JsonGenerator</name>
<message>
<source>Select JSON map file</source>
<translation type="vanished">Seleccionar mapa JSON</translation>
</message>
<message>
<source>JSON files (*.json)</source>
<translation type="vanished">Archivos JSON (*.json)</translation>
</message>
<message>
<source>JSON parse error</source>
<translation type="vanished">Error de lectura de JSON</translation>
</message>
<message>
<source>JSON map file loaded successfully!</source>
<translation type="vanished">¡El archivo de mapa JSON se cargó correctamente!</translation>
</message>
<message>
<source>File &quot;%1&quot; loaded into memory</source>
<translation type="vanished">Archivo &quot;%1&quot; cargado en memoria</translation>
</message>
<message>
<source>Cannot read JSON file</source>
<translation type="vanished">Error de lectura del archivo JSON</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished">Verifique los permisos y la ubicación del archivo</translation>
</message>
<message>
<source>JSON/serial data format mismatch</source>
<translation type="vanished">El formato de los datos recibidos no coincide</translation>
</message>
<message>
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation type="vanished">El formato de los datos recibidos no se corresponde con el archivo de mapa JSON seleccionado.</translation>
</message>
<message>
<source>JSON files</source>
<translation>Archivos JSON</translation>
<translation type="vanished">Archivos JSON</translation>
</message>
</context>
<context>
@ -491,11 +693,11 @@
</message>
<message>
<source>No Device</source>
<translation>Sin Dispositivo</translation>
<translation type="vanished">Sin Dispositivo</translation>
</message>
<message>
<source>Received: %1 %2</source>
<translation>Recibido: %1 %2</translation>
<translation type="vanished">Recibido: %1 %2</translation>
</message>
<message>
<source>Even Parity</source>
@ -531,31 +733,31 @@
</message>
<message>
<source>Select Port</source>
<translation>Seleccionar Puerto</translation>
<translation type="vanished">Seleccionar Puerto</translation>
</message>
<message>
<source>None</source>
<translation>Ninguno</translation>
<translation type="vanished">Ninguno</translation>
</message>
<message>
<source>Even</source>
<translation>Par</translation>
<translation type="vanished">Par</translation>
</message>
<message>
<source>Odd</source>
<translation>Impar</translation>
<translation type="vanished">Impar</translation>
</message>
<message>
<source>Space</source>
<translation>Espacio</translation>
<translation type="vanished">Espacio</translation>
</message>
<message>
<source>Mark</source>
<translation>Marca</translation>
<translation type="vanished">Marca</translation>
</message>
<message>
<source>Critical serial port error</source>
<translation>Error crítico del puerto serie</translation>
<translation type="vanished">Error crítico del puerto serie</translation>
</message>
<message>
<source>Plain text (as it comes)</source>
@ -571,23 +773,23 @@
</message>
<message>
<source>As it comes</source>
<translation>Como viene</translation>
<translation type="vanished">Como viene</translation>
</message>
<message>
<source>Remove control characters</source>
<translation>Eliminar caracteres de control</translation>
<translation type="vanished">Eliminar caracteres de control</translation>
</message>
<message>
<source>Hexadecimal</source>
<translation>Hexadecimal</translation>
<translation type="vanished">Hexadecimal</translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation>Nueva tasa de baudios registrada correctamente</translation>
<translation type="vanished">Nueva tasa de baudios registrada correctamente</translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>Se ha añadido la velocidad &quot;%1&quot; a la lista de tasa de baudios</translation>
<translation type="vanished">Se ha añadido la velocidad &quot;%1&quot; a la lista de tasa de baudios</translation>
</message>
</context>
<context>
@ -642,19 +844,19 @@
</message>
<message>
<source>Open mode</source>
<translation>Modo de apertura</translation>
<translation type="vanished">Modo de apertura</translation>
</message>
<message>
<source>Read-only</source>
<translation>Solo lectura</translation>
<translation type="vanished">Solo lectura</translation>
</message>
<message>
<source>Read/write</source>
<translation>Lectura/escritura</translation>
<translation type="vanished">Lectura/escritura</translation>
</message>
<message>
<source>Display mode</source>
<translation>Visualización</translation>
<translation type="vanished">Visualización</translation>
</message>
<message>
<source>Custom baud rate</source>
@ -662,11 +864,15 @@
</message>
<message>
<source>CSV Export</source>
<translation>Exportación CSV</translation>
<translation type="vanished">Exportación CSV</translation>
</message>
<message>
<source>CSV Player</source>
<translation>Reproductor CSV</translation>
<translation type="vanished">Reproductor CSV</translation>
</message>
<message>
<source>Create CSV file</source>
<translation>Crear archivo CSV</translation>
</message>
</context>
<context>

Binary file not shown.

View File

@ -68,21 +68,33 @@
</message>
</context>
<context>
<name>Console</name>
<name>CSV::Export</name>
<message>
<source>No data received so far...</source>
<translation>...</translation>
<source>CSV file not open</source>
<translation>CSV文件未打开</translation>
</message>
<message>
<source>Send data to device</source>
<translation></translation>
<source>Cannot find CSV export file!</source>
<translation>CSV导出的文件</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV文件错误</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>CSV文件进行写入</translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<name>CSV::Player</name>
<message>
<source>CSV Player</source>
<translation>CSV </translation>
<source>Select CSV file</source>
<translation>CSV文件</translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV档案</translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
@ -92,14 +104,6 @@
<source>You need to select a JSON map file in order to use this feature</source>
<translation>JSON映射文件才能使用此功能</translation>
</message>
<message>
<source>Select CSV file</source>
<translation>CSV文件</translation>
</message>
<message>
<source>CSV files (*.csv)</source>
<translation type="vanished">CSV档案 (*.csv)</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation></translation>
@ -128,9 +132,83 @@
<source>Replay of %1</source>
<translation>%1</translation>
</message>
</context>
<context>
<name>Console</name>
<message>
<source>No data received so far...</source>
<translation type="vanished">...</translation>
</message>
<message>
<source>Send data to device</source>
<translation></translation>
</message>
<message>
<source>Echo</source>
<translation></translation>
</message>
<message>
<source>Autoscroll</source>
<translation></translation>
</message>
<message>
<source>Show timestamp</source>
<translation></translation>
</message>
</context>
<context>
<name>CsvPlayer</name>
<message>
<source>CSV Player</source>
<translation>CSV </translation>
</message>
<message>
<source>Invalid configuration for CSV player</source>
<translation type="vanished">CSV播放器的配置无效</translation>
</message>
<message>
<source>You need to select a JSON map file in order to use this feature</source>
<translation type="vanished">JSON映射文件才能使用此功能</translation>
</message>
<message>
<source>Select CSV file</source>
<translation type="vanished">CSV文件</translation>
</message>
<message>
<source>CSV files (*.csv)</source>
<translation type="vanished">CSV档案 (*.csv)</translation>
</message>
<message>
<source>Serial port open, do you want to continue?</source>
<translation type="vanished"></translation>
</message>
<message>
<source>In order to use this feature, its necessary to disconnect from the serial port</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>There is an error with the data in the CSV file</source>
<translation type="vanished">CSV文件中的数据有误</translation>
</message>
<message>
<source>Please verify that the CSV file was created with Serial Studio</source>
<translation type="vanished">CSV文件是使用Serial Studio创建的</translation>
</message>
<message>
<source>Cannot read CSV file</source>
<translation type="vanished">CSV文件</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished"></translation>
</message>
<message>
<source>Replay of %1</source>
<translation type="vanished">%1</translation>
</message>
<message>
<source>CSV files</source>
<translation>CSV档案</translation>
<translation type="vanished">CSV档案</translation>
</message>
</context>
<context>
@ -338,26 +416,26 @@
<name>Export</name>
<message>
<source>CSV file not open</source>
<translation>CSV文件未打开</translation>
<translation type="vanished">CSV文件未打开</translation>
</message>
<message>
<source>Cannot find CSV export file!</source>
<translation>CSV导出的文件</translation>
<translation type="vanished">CSV导出的文件</translation>
</message>
<message>
<source>CSV File Error</source>
<translation>CSV文件错误</translation>
<translation type="vanished">CSV文件错误</translation>
</message>
<message>
<source>Cannot open CSV file for writing!</source>
<translation>CSV文件进行写入</translation>
<translation type="vanished">CSV文件进行写入</translation>
</message>
</context>
<context>
<name>Group</name>
<message>
<source>Invalid</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
</context>
<context>
@ -376,14 +454,103 @@
</message>
</context>
<context>
<name>JsonGenerator</name>
<name>IO::Console</name>
<message>
<source>ASCII</source>
<translation>ASCII</translation>
</message>
<message>
<source>HEX</source>
<translation>HEX</translation>
</message>
<message>
<source>No line ending</source>
<translation></translation>
</message>
<message>
<source>New line</source>
<translation></translation>
</message>
<message>
<source>Carriage return</source>
<translation></translation>
</message>
<message>
<source>NL + CR</source>
<translation></translation>
</message>
<message>
<source>Plain text</source>
<translation></translation>
</message>
<message>
<source>Hexadecimal</source>
<translation></translation>
</message>
</context>
<context>
<name>IO::DataSources::Serial</name>
<message>
<source>None</source>
<translation>(None)</translation>
</message>
<message>
<source>No Device</source>
<translation></translation>
</message>
<message>
<source>Even</source>
<translation>(Even)</translation>
</message>
<message>
<source>Odd</source>
<translation>(Odd)</translation>
</message>
<message>
<source>Space</source>
<translation>0(Space)</translation>
</message>
<message>
<source>Mark</source>
<translation>1(Mark)</translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation></translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>&quot;%1&quot;</translation>
</message>
<message>
<source>Select Port</source>
<translation></translation>
</message>
<message>
<source>Critical serial port error</source>
<translation></translation>
</message>
</context>
<context>
<name>IO::Manager</name>
<message>
<source>Serial port</source>
<translation></translation>
</message>
<message>
<source>Network port</source>
<translation></translation>
</message>
</context>
<context>
<name>JSON::Generator</name>
<message>
<source>Select JSON map file</source>
<translation>JSON映射文件</translation>
</message>
<message>
<source>JSON files (*.json)</source>
<translation type="vanished">JSON文件 (*.json)</translation>
<source>JSON files</source>
<translation>JSON文件</translation>
</message>
<message>
<source>JSON parse error</source>
@ -403,7 +570,7 @@
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation></translation>
<translation></translation>
</message>
<message>
<source>JSON/serial data format mismatch</source>
@ -413,9 +580,48 @@
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation>JSON映射文件不对应</translation>
</message>
</context>
<context>
<name>JsonGenerator</name>
<message>
<source>Select JSON map file</source>
<translation type="vanished">JSON映射文件</translation>
</message>
<message>
<source>JSON files (*.json)</source>
<translation type="vanished">JSON文件 (*.json)</translation>
</message>
<message>
<source>JSON parse error</source>
<translation type="vanished">JSON解析错误</translation>
</message>
<message>
<source>JSON map file loaded successfully!</source>
<translation type="vanished">JSON映射文件已成功加载</translation>
</message>
<message>
<source>File &quot;%1&quot; loaded into memory</source>
<translation type="vanished">%1</translation>
</message>
<message>
<source>Cannot read JSON file</source>
<translation type="vanished">JSON文件</translation>
</message>
<message>
<source>Please check file permissions &amp; location</source>
<translation type="vanished"></translation>
</message>
<message>
<source>JSON/serial data format mismatch</source>
<translation type="vanished">JSON /</translation>
</message>
<message>
<source>The format of the received data does not correspond to the selected JSON map file.</source>
<translation type="vanished">JSON映射文件不对应</translation>
</message>
<message>
<source>JSON files</source>
<translation>JSON文件</translation>
<translation type="vanished">JSON文件</translation>
</message>
</context>
<context>
@ -436,39 +642,39 @@
<name>SerialManager</name>
<message>
<source>None</source>
<translation>(None)</translation>
<translation type="vanished">(None)</translation>
</message>
<message>
<source>No Device</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Received: %1 %2</source>
<translation> %1 %2</translation>
<translation type="vanished"> %1 %2</translation>
</message>
<message>
<source>Even</source>
<translation>(Even)</translation>
<translation type="vanished">(Even)</translation>
</message>
<message>
<source>Odd</source>
<translation>(Odd)</translation>
<translation type="vanished">(Odd)</translation>
</message>
<message>
<source>Space</source>
<translation>0(Space)</translation>
<translation type="vanished">0(Space)</translation>
</message>
<message>
<source>Mark</source>
<translation>1(Mark)</translation>
<translation type="vanished">1(Mark)</translation>
</message>
<message>
<source>Select Port</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Critical serial port error</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Plain text (as it comes)</source>
@ -484,23 +690,23 @@
</message>
<message>
<source>As it comes</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Remove control characters</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Hexadecimal</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Baud rate registered successfully</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Rate &quot;%1&quot; has been added to baud rate list</source>
<translation>&quot;%1&quot;</translation>
<translation type="vanished">&quot;%1&quot;</translation>
</message>
</context>
<context>
@ -555,19 +761,19 @@
</message>
<message>
<source>Open mode</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Read-only</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Read/write</source>
<translation>/</translation>
<translation type="vanished">/</translation>
</message>
<message>
<source>Display mode</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Custom baud rate</source>
@ -575,11 +781,15 @@
</message>
<message>
<source>CSV Export</source>
<translation>CSV</translation>
<translation type="vanished">CSV</translation>
</message>
<message>
<source>CSV Player</source>
<translation>CSV </translation>
<translation type="vanished">CSV </translation>
</message>
<message>
<source>Create CSV file</source>
<translation>CSV文件</translation>
</message>
</context>
<context>

View File

@ -27,7 +27,7 @@
#include <QString>
// clang-format off
#define APP_VERSION "1.0.12"
#define APP_VERSION "1.0.14"
#define APP_DEVELOPER "Alex Spataru"
#define APP_NAME "Serial Studio"
#define APP_ICON ":/images/icon.png"

View File

@ -56,6 +56,7 @@ Export::Export()
connect(io, SIGNAL(connectedChanged()), this, SLOT(closeFile()));
QTimer::singleShot(1000, this, SLOT(writeValues()));
LOG_INFO() << "Class initialized";
}
/**

View File

@ -56,7 +56,7 @@ Player::Player()
, m_timestamp("")
{
connect(this, SIGNAL(playerStateChanged()), this, SLOT(updateData()));
LOG_INFO() << "Initialized CSV Player module";
LOG_INFO() << "Class initialized";
}
/**

View File

@ -47,6 +47,7 @@ Console::Console()
{
auto m = Manager::getInstance();
connect(m, &Manager::dataReceived, this, &Console::onDataReceived);
LOG_INFO() << "Class initialized";
}
/**

View File

@ -54,6 +54,7 @@ Serial::Serial()
// Build serial devices list
refreshSerialDevices();
LOG_INFO() << "Class initialized";
}
/**
@ -345,10 +346,6 @@ void Serial::setBaudRate(const qint32 rate)
if (port())
port()->setBaudRate(baudRate());
// Update baud rate index
// if (baudRateList().contains(QString::number(rate)))
// setBaudRateIndex(baudRateList().indexOf(QString::number(rate)));
// Update user interface
emit baudRateChanged();

View File

@ -46,6 +46,7 @@ Manager::Manager()
, m_finishSequence("*/")
{
setWatchdogInterval(15);
LOG_INFO() << "Class initialized";
}
/**
@ -313,6 +314,9 @@ void Manager::disconnectDevice()
// Update UI
emit deviceChanged();
emit connectedChanged();
// Log changes
LOG_INFO() << "Device disconnected";
}
}
@ -495,4 +499,6 @@ void Manager::setDevice(QIODevice *device)
disconnectDevice();
m_device = device;
emit deviceChanged();
LOG_INFO() << "Device pointer set to" << m_device;
}

View File

@ -55,7 +55,7 @@ Generator::Generator()
connect(io, SIGNAL(deviceChanged()), this, SLOT(reset()));
connect(io, SIGNAL(frameReceived(QByteArray)), this, SLOT(readData(QByteArray)));
LOG_INFO() << "Initialized JSON::FrameGenerator module";
LOG_INFO() << "Class initialized";
}
/**

View File

@ -55,8 +55,7 @@
*/
ModuleManager::ModuleManager()
{
connect(engine(), SIGNAL(quit()), this, SLOT(stopOperations()));
LOG_INFO() << "Initialized module manager class";
connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(stopOperations()));
}
/**
@ -100,9 +99,11 @@ void ModuleManager::configureUpdater()
*/
void ModuleManager::registerQmlTypes()
{
LOG_INFO() << "Registering QML types...";
qmlRegisterType<JSON::Frame>("SerialStudio", 1, 0, "Frame");
qmlRegisterType<JSON::Group>("SerialStudio", 1, 0, "Group");
qmlRegisterType<JSON::Dataset>("SerialStudio", 1, 0, "Dataset");
LOG_INFO() << "QML types registered!";
}
/**
@ -143,8 +144,8 @@ void ModuleManager::initializeQmlInterface()
LOG_INFO() << "Finished initializing C++ modules";
// Retranslate the QML interface automagically
connect(translator, &Misc::Translator::languageChanged,
engine(), &QQmlEngine::retranslate);
LOG_INFO() << "Loading QML interface...";
connect(translator, SIGNAL(languageChanged()), engine(), SLOT(retranslate()));
// Register C++ modules with QML
auto c = engine()->rootContext();

View File

@ -38,7 +38,7 @@ static Translator *INSTANCE = nullptr;
Translator::Translator()
{
m_language = systemLanguage();
LOG_INFO() << "Initialized Translator module";
LOG_INFO() << "Class initialized";
LOG_INFO() << "System language" << systemLanguage();
}
@ -91,21 +91,6 @@ int Translator::systemLanguage() const
return lang;
}
/**
* Returns an empty string, this function should be used with QML to
* automatically update all the strings without the need of restarting the
* application. For example, the following QML code:
*
* text: qsTr("Text") + Cpp_Misc_Translator.dummyString
*
* Will force the QML interface to update the value of @a text when the language
* is changed.
*/
QString Translator::dummyString() const
{
return "";
}
/**
* Returns the welcome text displayed on the console
*/

View File

@ -41,9 +41,6 @@ class Translator : public QObject
READ language
WRITE setLanguage
NOTIFY languageChanged)
Q_PROPERTY(QString dummy
READ dummyString
NOTIFY languageChanged)
Q_PROPERTY(QStringList availableLanguages
READ availableLanguages
CONSTANT)
@ -60,7 +57,6 @@ public:
int language() const;
int systemLanguage() const;
QString dummyString() const;
QStringList availableLanguages() const;
Q_INVOKABLE QString welcomeConsoleText() const;

View File

@ -22,9 +22,11 @@
#include "DataProvider.h"
#include <Logger.h>
#include <IO/Manager.h>
#include <CSV/Player.h>
#include <JSON/Generator.h>
#include <ConsoleAppender.h>
using namespace UI;
@ -44,6 +46,7 @@ DataProvider::DataProvider()
connect(cp, SIGNAL(openChanged()), this, SLOT(resetData()));
connect(ge, SIGNAL(jsonChanged()), this, SIGNAL(updated()));
connect(sm, SIGNAL(connectedChanged()), this, SLOT(resetData()));
LOG_INFO() << "Class initialized";
}
/**

View File

@ -26,8 +26,10 @@
#include <QXYSeries>
#include <QMetaType>
#include <Logger.h>
#include <CSV/Player.h>
#include <JSON/Generator.h>
#include <ConsoleAppender.h>
using namespace UI;
@ -68,6 +70,7 @@ GraphProvider::GraphProvider()
this, SLOT(csvPlayerFixes()));
// clang-format on
LOG_INFO() << "Class initialized";
}
/**

View File

@ -24,7 +24,9 @@
#include <cfloat>
#include <climits>
#include <Logger.h>
#include <JSON/Generator.h>
#include <ConsoleAppender.h>
using namespace UI;
@ -40,6 +42,7 @@ WidgetProvider::WidgetProvider()
{
auto ge = JSON::Generator::getInstance();
connect(ge, SIGNAL(jsonChanged()), this, SLOT(updateModels()));
LOG_INFO() << "Class initialized";
}
/**