Alle Eingabefelder heben sich vom Grund ab, nicht nur die in der Liste

Sein Fund: "in rechnung an kunden finde ich die felder auch zu dunkel". Der
Grund war derselbe wie in der Leistungsliste - das Feld lag fast auf der Farbe
der Kachel, man sah nicht, wo etwas einzutragen ist.

Jetzt gilt fuer JEDES Eingabefeld und die Auswahlliste derselbe Satz Farben
(#2c2e32 Grund, #57585b Rahmen, beim Tippen Akzent) - aus einer Quelle
gerechnet, nicht zweimal gepflegt. Liste.TEntry liest dieselben Werte.

Alle 14 Pruefstaende gruen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V4t48uxDok5rJXhC9bX1Ax
This commit is contained in:
TheMockTv 2026-09-05 19:41:39 +02:00
parent 5c9e9c2627
commit 2ec41fb4e4

View file

@ -235,17 +235,25 @@ class ThemeMixin:
style.map("Menu.TMenubutton", background=[("active", sel)], foreground=[("active", fg)])
style.configure("TCheckbutton", background=bg, foreground=fg)
style.map("TCheckbutton", background=[("active", bg)], foreground=[("active", fg)])
style.configure("TEntry", fieldbackground=field, foreground=fg, insertcolor=fg,
bordercolor=self.col_line, padding=4)
style.map("TEntry", bordercolor=[("focus", accent)])
# Eingabefelder heben sich vom Grund ab - sonst sieht man nicht, wo etwas
# einzutragen ist. Heller Grund, deutlicher Rahmen, beim Tippen Akzent.
feld_hell = mischen("#ffffff", self.col_card, 0.10) if dark else field
feld_rand = mischen("#ffffff", self.col_card, 0.28) if dark else self.col_line
self.col_field = feld_hell
style.configure("TEntry", fieldbackground=feld_hell, foreground=fg,
insertcolor=fg, bordercolor=feld_rand,
lightcolor=feld_rand, darkcolor=feld_rand,
relief="solid", borderwidth=1, padding=5)
style.map("TEntry",
bordercolor=[("focus", accent)], lightcolor=[("focus", accent)],
darkcolor=[("focus", accent)],
fieldbackground=[("focus", mischen(accent, self.col_card, 0.10))])
# Die Felder IN der Leistungsliste stehen auf den Zeilenstreifen und
# gingen darin unter - man sah nicht, wo man tippt. Sie bekommen einen
# helleren Grund und einen deutlichen Rahmen, beim Tippen den Akzent.
listenfeld = mischen("#ffffff", self.col_card, 0.10)
listenrand = mischen("#ffffff", self.col_card, 0.28)
style.configure("Liste.TEntry", fieldbackground=listenfeld, foreground=fg,
insertcolor=fg, bordercolor=listenrand,
lightcolor=listenrand, darkcolor=listenrand,
style.configure("Liste.TEntry", fieldbackground=feld_hell, foreground=fg,
insertcolor=fg, bordercolor=feld_rand,
lightcolor=feld_rand, darkcolor=feld_rand,
relief="solid", borderwidth=1, padding=4)
style.map("Liste.TEntry",
bordercolor=[("focus", accent)], lightcolor=[("focus", accent)],
@ -254,14 +262,17 @@ class ThemeMixin:
# Bei state="readonly" zeichnet die Combobox ihren Text als MARKIERUNG,
# sobald sie den Fokus hat - ohne diese beiden Farben steht der Wert
# unsichtbar im Feld.
style.configure("TCombobox", fieldbackground=field, foreground=fg,
background=field, arrowcolor=fg,
selectbackground=field, selectforeground=fg)
style.map("TCombobox", fieldbackground=[("readonly", field)],
foreground=[("readonly", fg)], background=[("readonly", field)],
selectbackground=[("readonly", field)], selectforeground=[("readonly", fg)])
style.configure("TCombobox", fieldbackground=feld_hell, foreground=fg,
background=feld_hell, arrowcolor=fg,
bordercolor=feld_rand, lightcolor=feld_rand, darkcolor=feld_rand,
selectbackground=feld_hell, selectforeground=fg, padding=3)
style.map("TCombobox", fieldbackground=[("readonly", feld_hell)],
foreground=[("readonly", fg)], background=[("readonly", feld_hell)],
bordercolor=[("focus", accent)],
selectbackground=[("readonly", feld_hell)],
selectforeground=[("readonly", fg)])
# Die aufgeklappte Liste ist ein klassisches tk-Listbox-Widget
self.option_add("*TCombobox*Listbox.background", field)
self.option_add("*TCombobox*Listbox.background", feld_hell)
self.option_add("*TCombobox*Listbox.foreground", fg)
self.option_add("*TCombobox*Listbox.selectBackground", sel)
self.option_add("*TCombobox*Listbox.selectForeground", fg)