1
0
mirror of https://github.com/naruxde/revpipycontrol.git synced 2025-11-08 15:43:52 +01:00

Fehlerabfang f?r Watch-Mode verbessert

This commit is contained in:
2018-08-14 08:53:56 +02:00
parent 6c2578f84c
commit 7d3957a9d1
2 changed files with 20 additions and 4 deletions

View File

@@ -318,9 +318,21 @@ class RevPiCheckClient(tkinter.Frame):
self.err_workvalues = self.max_errors
if self.err_workvalues >= self.max_errors:
# Fenster zerstören bei zu vielen Fehlern
self.hideallwindows()
if self.autorw.get():
self.autorw.set(False)
self.toggleauto()
self.dowrite.set(False)
self.pack_forget()
tkmsg.showerror(
_("Error"),
_("To many errors while reading IO data. "
"Can not show the Watch-Mode."),
parent=self.master
)
return None
# Multicall zum Schreiben vorbereiten
@@ -438,8 +450,9 @@ class RevPiCheckClient(tkinter.Frame):
str_errmsg += _(
"Error set value of device '{}' Output '{}': {} \n"
).format(devicename, lst_result[1], lst_result[3])
if str_errmsg != "":
tkmsg.showerror(_("Error"), str_errmsg)
tkmsg.showerror(_("Error"), str_errmsg, parent=self.master)
def writevalues(self):
u"""Schreibt geänderte Outputs auf den RevPi."""

View File

@@ -251,9 +251,7 @@ class RevPiPyControl(tkinter.Frame):
)
else:
# Debugfenster laden
if self.debugframe is None \
or self.debugframe.err_workvalues >= \
self.debugframe.max_errors:
if self.debugframe is None:
try:
self.debugframe = revpicheckclient.RevPiCheckClient(
self, self.cli, self.xmlmode
@@ -269,6 +267,11 @@ class RevPiPyControl(tkinter.Frame):
self.btn_debug["state"] = "normal"
return None
# Fehler prüfen
if self.debugframe.err_workvalues >= self.debugframe.max_errors:
self.debugframe = None
return None
# Show/Hide wechseln
if self.debugframe.winfo_viewable():
self.debugframe.hideallwindows()