any_keycode_dialog: fix error processing
parent
be041808a2
commit
4f7cfb36e2
|
|
@ -27,14 +27,17 @@ class AnyKeycodeDialog(QDialog):
|
|||
self.setLayout(self.layout)
|
||||
|
||||
self.value = initial
|
||||
self.txt_entry.setText(Keycode.serialize(initial))
|
||||
ser = Keycode.serialize(initial)
|
||||
if isinstance(ser, int):
|
||||
ser = hex(ser)
|
||||
self.txt_entry.setText(ser)
|
||||
self.on_change()
|
||||
|
||||
def on_change(self):
|
||||
text = self.txt_entry.text()
|
||||
value = err = None
|
||||
try:
|
||||
value = Keycode.deserialize(text)
|
||||
value = Keycode.deserialize(text, reraise=True)
|
||||
except Exception as e:
|
||||
err = str(e)
|
||||
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ class Keycode:
|
|||
return code
|
||||
|
||||
@classmethod
|
||||
def deserialize(cls, val):
|
||||
def deserialize(cls, val, reraise=False):
|
||||
from any_keycode import AnyKeycode
|
||||
|
||||
if isinstance(val, int):
|
||||
|
|
@ -104,7 +104,8 @@ class Keycode:
|
|||
try:
|
||||
return anykc.decode(val)
|
||||
except Exception:
|
||||
pass
|
||||
if reraise:
|
||||
raise
|
||||
return 0
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue