diff --git a/provtool/__init__.py b/provtool/__init__.py index bcf3bc6..c9281e2 100644 --- a/provtool/__init__.py +++ b/provtool/__init__.py @@ -1,5 +1,5 @@ """Provisions-Manager 95 – Provisionsabrechnung für Unterhändler der Handy-Insel Miesbach.""" -__version__ = "1.8.0" +__version__ = "1.8.1" APP_NAME = "Provisions-Manager 95" APP_ORG = "Handy-Insel Miesbach" diff --git a/provtool/gui/app.py b/provtool/gui/app.py index 3b158a6..00f1290 100644 --- a/provtool/gui/app.py +++ b/provtool/gui/app.py @@ -260,7 +260,9 @@ class App: # ---------------- Seitenleiste: Abrechnungen und Händler # Win95: zwei eigene Flächen mit blauer Titelleiste auf dem Desktop - links = tk.Frame(pw, bg=w.FACE if m else w.BG) + # Eigener Pfeil-Zeiger für beide Bereiche: Sonst erben sie den Zeiger der Trennlinie, und der + # bleibt unter Windows hängen (Resize-Zeiger mitten im Inhalt, v. a. maximiert). + links = tk.Frame(pw, bg=w.FACE if m else w.BG, cursor="arrow") innen = tk.Frame(links, bg=w.FACE if m else w.BG) innen.pack(fill="both", expand=True, padx=12 if m else 0, pady=(16, 10) if m else 0) seite = dict(style="Seite.Treeview") if m else {} @@ -302,7 +304,8 @@ class App: pw.add(links, minsize=240, width=320) # ---------------- Inhalt: Kopf der Abrechnung, Kennzahlen, Positionen - rechts = tk.Frame(pw, bg=w.BG) + rechts = tk.Frame(pw, bg=w.BG, cursor="arrow") + self._bereiche = (links, rechts) innen = tk.Frame(rechts, bg=w.BG) innen.pack(fill="both", expand=True, padx=(16, 20) if m else 0, pady=(16, 0) if m else 0) @@ -749,7 +752,8 @@ class App: return bericht = [] importiert: list[tuple[int, int, list[str]]] = [] # (Zeile im Bericht, datei_id, Hinweise) - self.root.configure(cursor="watch") + for f in (self.root, *self._bereiche): + f.configure(cursor="watch") self.root.update() try: for f in dateien: @@ -774,6 +778,8 @@ class App: bericht.append((name, erg.format, n, sum(p.betrag_cent for p in erg.positionen), "")) finally: self.root.configure(cursor="") + for f in self._bereiche: + f.configure(cursor="arrow") self._aktualisieren() # Doppelte (schon abgerechnet oder schon offen vorhanden) je Datei zählen – einmal für alle Dateien doppelt: dict[int, int] = defaultdict(int) diff --git a/tests/test_gui.py b/tests/test_gui.py index d189efa..6a62cc6 100644 --- a/tests/test_gui.py +++ b/tests/test_gui.py @@ -1259,3 +1259,10 @@ def test_start_mit_unerreichbarer_datenbank_fragt(home, monkeypatch): with pytest.raises(SystemExit): A.App(root) assert not weg.exists() + + +def test_inhalt_erbt_nicht_den_zeiger_der_trennlinie(lauf_modern): + """Der Resize-Zeiger der Trennlinie blieb unter Windows im ganzen Inhalt hängen (Kinder erben den Zeiger + der Trennlinie). Beide Bereiche haben daher einen eigenen Zeiger.""" + app = lauf_modern.app + assert [str(app.root.nametowidget(str(p)).cget("cursor")) for p in app.pw.panes()] == ["arrow", "arrow"]