--- a/MqttMonitor/i18n/mqttmonitor_en.ts Sun Sep 16 18:08:53 2018 +0200 +++ b/MqttMonitor/i18n/mqttmonitor_en.ts Sun Sep 16 19:02:12 2018 +0200 @@ -3,37 +3,37 @@ <context> <name>MqttConnackMessage</name> <message> - <location filename="../MqttClient.py" line="461"/> + <location filename="../MqttClient.py" line="467"/> <source>Connection Accepted.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="465"/> + <location filename="../MqttClient.py" line="471"/> <source>Connection Refused: unacceptable protocol version.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="469"/> + <location filename="../MqttClient.py" line="475"/> <source>Connection Refused: identifier rejected.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="473"/> + <location filename="../MqttClient.py" line="479"/> <source>Connection Refused: broker unavailable.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="477"/> + <location filename="../MqttClient.py" line="483"/> <source>Connection Refused: bad user name or password.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="481"/> + <location filename="../MqttClient.py" line="487"/> <source>Connection Refused: not authorised.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="485"/> + <location filename="../MqttClient.py" line="491"/> <source>Connection Refused: unknown reason.</source> <translation type="unfinished"></translation> </message> @@ -537,77 +537,77 @@ <context> <name>MqttErrorMessage</name> <message> - <location filename="../MqttClient.py" line="501"/> + <location filename="../MqttClient.py" line="507"/> <source>No error.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="505"/> + <location filename="../MqttClient.py" line="511"/> <source>Out of memory.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="509"/> + <location filename="../MqttClient.py" line="515"/> <source>A network protocol error occurred when communicating with the broker.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="514"/> + <location filename="../MqttClient.py" line="520"/> <source>Invalid function arguments provided.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="518"/> + <location filename="../MqttClient.py" line="524"/> <source>The client is not currently connected.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="522"/> + <location filename="../MqttClient.py" line="528"/> <source>The connection was refused.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="526"/> + <location filename="../MqttClient.py" line="532"/> <source>Message not found (internal error).</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="530"/> + <location filename="../MqttClient.py" line="536"/> <source>The connection was lost.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="534"/> + <location filename="../MqttClient.py" line="540"/> <source>A TLS error occurred.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="538"/> + <location filename="../MqttClient.py" line="544"/> <source>Payload too large.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="542"/> + <location filename="../MqttClient.py" line="548"/> <source>This feature is not supported.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="546"/> + <location filename="../MqttClient.py" line="552"/> <source>Authorisation failed.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="550"/> + <location filename="../MqttClient.py" line="556"/> <source>Access denied by ACL.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="562"/> + <location filename="../MqttClient.py" line="568"/> <source>Unknown error.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="558"/> + <location filename="../MqttClient.py" line="564"/> <source>Error defined by errno.</source> <translation type="unfinished"></translation> </message> @@ -615,80 +615,85 @@ <context> <name>MqttLogLevelString</name> <message> - <location filename="../MqttClient.py" line="598"/> + <location filename="../MqttClient.py" line="607"/> <source>Unknown</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="588"/> + <location filename="../MqttClient.py" line="594"/> <source>Info</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="590"/> + <location filename="../MqttClient.py" line="596"/> <source>Notice</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="592"/> + <location filename="../MqttClient.py" line="598"/> <source>Warning</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="594"/> + <location filename="../MqttClient.py" line="600"/> <source>Error</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttClient.py" line="596"/> + <location filename="../MqttClient.py" line="602"/> <source>Debug</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../MqttClient.py" line="604"/> + <source>Logging Disabled</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>MqttMonitorPlugin</name> <message> - <location filename="../../PluginMqttMonitor.py" line="59"/> + <location filename="../../PluginMqttMonitor.py" line="63"/> <source>package not available</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="64"/> + <location filename="../../PluginMqttMonitor.py" line="68"/> <source>MQTT</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="65"/> + <location filename="../../PluginMqttMonitor.py" line="69"/> <source>paho-mqtt</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="125"/> + <location filename="../../PluginMqttMonitor.py" line="129"/> <source>The 'paho-mqtt' package is not available.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="137"/> + <location filename="../../PluginMqttMonitor.py" line="141"/> <source>MQTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="137"/> + <location filename="../../PluginMqttMonitor.py" line="141"/> <source>M&QTT Monitor</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="137"/> + <location filename="../../PluginMqttMonitor.py" line="141"/> <source>Alt+Shift+Q</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="143"/> + <location filename="../../PluginMqttMonitor.py" line="147"/> <source>Switch the input focus to the MQTT Monitor window.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../../PluginMqttMonitor.py" line="145"/> + <location filename="../../PluginMqttMonitor.py" line="149"/> <source><b>Activate MQTT Monitor</b><p>This switches the input focus to the MQTT Monitor window.</p></source> <translation type="unfinished"></translation> </message> @@ -731,7 +736,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="574"/> + <location filename="../MqttMonitorWidget.py" line="760"/> <source>Subscribe</source> <translation type="unfinished"></translation> </message> @@ -761,7 +766,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="570"/> + <location filename="../MqttMonitorWidget.py" line="756"/> <source>Unsubscribe</source> <translation type="unfinished"></translation> </message> @@ -776,7 +781,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="353"/> + <location filename="../MqttMonitorWidget.ui" line="383"/> <source>Publish</source> <translation type="unfinished"></translation> </message> @@ -801,216 +806,211 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="330"/> + <location filename="../MqttMonitorWidget.ui" line="360"/> <source>Press to clear the publish data</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1266"/> + <location filename="../MqttMonitorWidget.ui" line="1355"/> <source>Clear</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="389"/> + <location filename="../MqttMonitorWidget.ui" line="419"/> <source>Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="439"/> + <location filename="../MqttMonitorWidget.ui" line="505"/> <source>Status</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="575"/> + <location filename="../MqttMonitorWidget.py" line="761"/> <source>Press to activate the status display</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="495"/> + <location filename="../MqttMonitorWidget.ui" line="561"/> <source><b>Broker</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="517"/> + <location filename="../MqttMonitorWidget.ui" line="583"/> <source>Version</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="986"/> + <location filename="../MqttMonitorWidget.ui" line="1052"/> <source>-</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="537"/> + <location filename="../MqttMonitorWidget.ui" line="603"/> <source>Timestamp</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="557"/> + <location filename="../MqttMonitorWidget.ui" line="623"/> <source>Uptime</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="577"/> + <location filename="../MqttMonitorWidget.ui" line="643"/> <source>Subscriptions</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="599"/> + <location filename="../MqttMonitorWidget.ui" line="665"/> <source><b>Clients</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="621"/> + <location filename="../MqttMonitorWidget.ui" line="687"/> <source>Connected</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="641"/> + <location filename="../MqttMonitorWidget.ui" line="707"/> <source>Disconnected</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="661"/> + <location filename="../MqttMonitorWidget.ui" line="727"/> <source>Expired</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="681"/> + <location filename="../MqttMonitorWidget.ui" line="747"/> <source>Maximum</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="701"/> + <location filename="../MqttMonitorWidget.ui" line="767"/> <source>Total</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="723"/> + <location filename="../MqttMonitorWidget.ui" line="789"/> <source><b>Messages</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="869"/> + <location filename="../MqttMonitorWidget.ui" line="935"/> <source>Sent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="889"/> + <location filename="../MqttMonitorWidget.ui" line="955"/> <source>Received</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="785"/> + <location filename="../MqttMonitorWidget.ui" line="851"/> <source>Stored</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="805"/> + <location filename="../MqttMonitorWidget.ui" line="871"/> <source>Inflight</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="825"/> + <location filename="../MqttMonitorWidget.ui" line="891"/> <source>Retained</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="847"/> + <location filename="../MqttMonitorWidget.ui" line="913"/> <source><b>PUBLISH Messages</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="909"/> + <location filename="../MqttMonitorWidget.ui" line="975"/> <source>Dropped</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="931"/> + <location filename="../MqttMonitorWidget.ui" line="997"/> <source><b>Traffic</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1017"/> + <location filename="../MqttMonitorWidget.ui" line="1083"/> <source>Bytes Sent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1037"/> + <location filename="../MqttMonitorWidget.ui" line="1103"/> <source>Bytes Received</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="995"/> + <location filename="../MqttMonitorWidget.ui" line="1061"/> <source><b>Load</b></source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1190"/> + <location filename="../MqttMonitorWidget.ui" line="1256"/> <source>- / - / -</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1057"/> + <location filename="../MqttMonitorWidget.ui" line="1123"/> <source>Messages Sent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1077"/> + <location filename="../MqttMonitorWidget.ui" line="1143"/> <source>Messages Received</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1097"/> + <location filename="../MqttMonitorWidget.ui" line="1163"/> <source>PUBLISH Sent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1117"/> + <location filename="../MqttMonitorWidget.ui" line="1183"/> <source>PUBLISH Received</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1137"/> + <location filename="../MqttMonitorWidget.ui" line="1203"/> <source>PUBLISH Dropped</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1157"/> + <location filename="../MqttMonitorWidget.ui" line="1223"/> <source>Connections</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1177"/> + <location filename="../MqttMonitorWidget.ui" line="1243"/> <source>Sockets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="236"/> + <location filename="../MqttMonitorWidget.py" line="261"/> <source>Connection to Broker shut down cleanly.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="467"/> + <location filename="../MqttMonitorWidget.py" line="509"/> <source>Subscribe to Topic</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="467"/> + <location filename="../MqttMonitorWidget.py" line="509"/> <source>Subscriptions to the Status topic '$SYS' shall be done on the 'Status' tab.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="571"/> + <location filename="../MqttMonitorWidget.py" line="757"/> <source>Press to deactivate the status display</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="680"/> - <source>{0} -> {1}</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="../MqttMonitorWidget.ui" line="46"/> <source>Press to switch the mode between profiles and direct connection</source> <translation type="unfinished"></translation> @@ -1021,54 +1021,150 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="362"/> + <location filename="../MqttMonitorWidget.ui" line="392"/> <source>Select to clear the publish data after the message was published</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="365"/> + <location filename="../MqttMonitorWidget.ui" line="395"/> <source>Clear when sent</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="426"/> + <location filename="../MqttMonitorWidget.ui" line="479"/> <source>Press to clear the list of received messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1202"/> + <location filename="../MqttMonitorWidget.ui" line="1268"/> <source>Log</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1210"/> + <location filename="../MqttMonitorWidget.ui" line="1276"/> <source>Max. Log Level:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1223"/> + <location filename="../MqttMonitorWidget.ui" line="1289"/> <source>Select the maximum log level to show</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.ui" line="1263"/> + <location filename="../MqttMonitorWidget.ui" line="1352"/> <source>Press to clear the list of received log messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="217"/> + <location filename="../MqttMonitorWidget.py" line="242"/> <source>Connection timed out</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="272"/> + <location filename="../MqttMonitorWidget.py" line="316"/> <source>{0}: {1}</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../MqttMonitorWidget.py" line="829"/> + <location filename="../MqttMonitorWidget.py" line="1050"/> <source>Connecting to {0}:{1} ...</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="333"/> + <source>Payload File:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="349"/> + <source>Enter the full path to a file containing the message payload</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="453"/> + <source>Press to save the received messages to a file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="1329"/> + <source>Save</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="491"/> + <source>Select to scroll to the most recently received message</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="494"/> + <source>Follow received messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="1326"/> + <source>Press to save the received log messages to a file</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="1364"/> + <source>Select to scroll to the most recently received log message</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.ui" line="1367"/> + <source>Follow received log messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="66"/> + <source>All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="565"/> + <source>Read Payload from File</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="565"/> + <source><p>The file <b>{0}</b> could not be read. Aborting...</p><p>Reason: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="678"/> + <source>Save Messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="645"/> + <source>Messages Files (*.txt);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="720"/> + <source><p>The file <b>{0}</b> already exists. Overwrite it?</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="735"/> + <source><p>The file <b>{0}</b> could not be written.</p><p>Reason: {1}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="735"/> + <source>Save Log Messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="702"/> + <source>Log Files (*.log);;All Files (*)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="../MqttMonitorWidget.py" line="897"/> + <source>QoS: {0} +</source> + <translation type="unfinished"></translation> + </message> </context> </TS>