Projekt

Allgemein

Profil

Feature #168

Von Julius Haman vor 14 Tagen aktualisiert

## Ziel 

 Benutzer und Einstellungen behandeln Speichern und Abbrechen bisher unterschiedlich: Die Einstellungen speichern bzw. verwerfen und verlassen die Seite, die Benutzerverwaltung bleibt in der Maske, ihre Buttons sind aber immer aktiv. Die Geräteverwaltung speichert sofort und bleibt davon unberührt. 

 ## Neues Verhalten (beide Masken) 

 - **Speichern** und **Abbrechen** sind nur aktiv, wenn es ungespeicherte Änderungen gibt, und werden nach Speichern/Abbrechen wieder deaktiviert. 
 - Beide verlassen die Ansicht nicht: Benutzer bleibt beim gewählten Benutzer, Einstellungen in der aktuellen Ansicht. 
 - Bei Wer mit ungespeicherten Änderungen fragt die Anwendung (Speichern / Verwerfen / Abbrechen), wenn der Nutzer den Benutzer wechselt, wechselt oder einen neuen anlegt, die Seite über die Navigation verlässt, sich neu anmeldet oder die Anwendung mit X schließt. wird gefragt (Speichern / Verwerfen / Abbrechen). 

 ## Benutzer (umgesetzt) 

 - Änderungsstatus über den EF-Change-Tracker, Felder übernehmen Eingaben sofort (Pulszonen aktualisieren sich beim Tippen); ein Zurückändern auf den Ausgangswert zählt nicht mehr als Änderung. Tippen). 
 - Neuer Drei-Wege-Dialog mit eigenem Verwerfen-Icon (weißer Pfeil nach links auf rotem Grund). 
 - Gemeinsamer Mechanismus `IUnsavedChangesGuard` für das Verlassen einer Seite und das Schließen des Hauptfensters. (Ja/Nein/Abbrechen). 

 ## Einstellungen (offen) (folgt) 

 - Alle Felder laufen über Speichern/Abbrechen, auch die bisher sofort wirkenden (Automatisch anmelden, Log-Stufe, Seriell-Log, Werteleiste, Strava-Felder); sie werden dafür zwischengespeichert. 
 - Aktionen (Strava verbinden/trennen, Logordner öffnen, Werte zurücksetzen) wirken weiterhin sofort. *Verbinden* speichert nur die Strava-Zugangsdaten, übrige Änderungen bleiben offen. 
 - Nach Abbrechen müssen alle Felder (auch das Client-Secret) auf den gespeicherten Stand zurückgesetzt werden. 
 - Die Seite nutzt `IUnsavedChangesGuard` für die Rückfrage beim Verlassen.

Zurück