Better integration with themes

This commit is contained in:
CMDR-Kiel42 2019-08-15 00:49:52 +02:00
parent 871ae75273
commit 333855af0d
3 changed files with 15 additions and 5 deletions

View File

@ -75,6 +75,7 @@ class AutoCompleter(Entry, PlaceHolder):
event.widget.event_generate('<<SelectAll>>')
def changed(self, name, index, mode):
self.set_default_style()
if self.var.get().__len__() < 3 and self.lb_up or self.has_selected:
self.hide_list()
self.has_selected = False

View File

@ -5,7 +5,6 @@ class PlaceHolder():
def __init__(self, placeholder, **kw):
self.placeholder = placeholder
self.placeholder_color = "grey"
self.default_fg_color = config.get('dark_text')
self.bind("<FocusIn>", self.foc_in)
self.bind("<FocusOut>", self.foc_out)
@ -21,9 +20,19 @@ class PlaceHolder():
def force_placeholder_color(self):
self['fg'] = self.placeholder_color
def set_default_style(self):
theme = config.getint('theme')
self['fg'] = config.get('dark_text') if theme else "black"
def set_error_style(self, error=True):
if error:
self['fg'] = "red"
else:
self.set_default_style()
def foc_in(self, *args):
if self['fg'] == "red" or self['fg'] == self.placeholder_color:
self['fg'] = self.default_fg_color
self.set_default_style()
if self.get() == self.placeholder:
self.delete('0', 'end')

View File

@ -162,7 +162,7 @@ class SpanshRouter():
def set_source_ac(self, text):
self.source_ac.delete(0, tk.END)
self.source_ac.insert(0, text)
self.source_ac["fg"] = self.source_ac.default_fg_color
self.source_ac.set_default_style()
def show_route_gui(self, show):
self.hide_error()
@ -460,11 +460,11 @@ class SpanshRouter():
if value.__len__() > 0 and value != self.range_entry.placeholder:
try:
float(value)
self.range_entry['fg'] = self.range_entry.default_fg_color
self.range_entry.set_error_style(False)
self.hide_error()
except ValueError:
self.show_error("Invalid range")
self.range_entry['fg'] = "red"
self.range_entry.set_error_style()
def cleanup_old_version(self):
try: