diff --git a/SpanshRouter/PlaceHolderEntry.py b/SpanshRouter/PlaceHolderEntry.py index fb58798..8fd1bc3 100644 --- a/SpanshRouter/PlaceHolderEntry.py +++ b/SpanshRouter/PlaceHolderEntry.py @@ -6,4 +6,5 @@ from PlaceHolder import PlaceHolder class PlaceHolderEntry(Entry, PlaceHolder): def __init__(self, parent, placeholder, **kw): Entry.__init__(self, parent, **kw) + self.var = self["textvariable"] = StringVar() PlaceHolder.__init__(self, placeholder) \ No newline at end of file diff --git a/SpanshRouter/SpanshRouter.py b/SpanshRouter/SpanshRouter.py index 7285f74..ccd3b50 100755 --- a/SpanshRouter/SpanshRouter.py +++ b/SpanshRouter/SpanshRouter.py @@ -91,6 +91,9 @@ class SpanshRouter(): self.error_lbl.grid_remove() row += 1 + # Check if we're having a valid range on the fly + self.range_entry.var.trace('w', self.check_range) + self.show_plot_gui(False) if not self.route.__len__() > 0: @@ -420,6 +423,17 @@ class SpanshRouter(): except: print("No route to delete") + def check_range(self, name, index, mode): + value = self.range_entry.var.get() + if value.__len__() > 0 and value != self.range_entry.placeholder: + try: + float(value) + self.range_entry['fg'] = self.range_entry.default_fg_color + self.hide_error() + except ValueError: + self.show_error("Invalid range") + self.range_entry['fg'] = "red" + def cleanup_old_version(self): try: if (os.path.exists(os.path.join(self.plugin_dir, "AutoCompleter.py"))