Refresh GUI documentation and profile synchronization
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
|---|---|
|
||||
| `TrayApp` | `ApplicationContext`; hält Tray-Icon, öffnet ConfigForm, verarbeitet Board-Events |
|
||||
| `SerialManager` | Verbindungsverwaltung, WMI-Erkennung, Lese-Thread, Sende-Methoden |
|
||||
| `ConfigForm` | Hauptfenster (Grid + Encoder-Panel + Footer); öffnet ActionDialog |
|
||||
| `ConfigForm` | Hauptfenster (Profilauswahl, Grid, Encoder-Panel und Footer); öffnet ActionDialog |
|
||||
| `ActionDialog` | Modaler Dialog zum Bearbeiten einer Aktion + LED-Einstellungen |
|
||||
| `DeviceConfig` | C#-Spiegel von `SDeviceConfig`; Validierung und Serialisierung (740 B) |
|
||||
| `MacroTable` | C#-Spiegel von `SMacroTable`; Validierung und Serialisierung (512 B) |
|
||||
@@ -46,7 +46,7 @@ Benutzer → ConfigForm → ActionDialog
|
||||
UI-Thread : TrayApp, ConfigForm, ActionDialog, alle WinForms-Controls
|
||||
BG-Thread : SerialManager.ReadLoop() – blockiert auf ReadByte()
|
||||
Timer-Thread : SerialManager._reconnectTimer → TryConnect() alle 3 s
|
||||
Sende-Task : ConfigForm.OnSave() → Task.Run() (blockiert ~400 ms für Transfer)
|
||||
Sende-Task : ConfigForm.OnSave() → Task.Run() (blockiert bis ACK/NACK oder Timeout)
|
||||
```
|
||||
|
||||
Alle Board-Events werden per `SynchronizationContext.Post` auf den UI-Thread gepostet. Controls dürfen nie vom BG-Thread angefasst werden.
|
||||
@@ -75,3 +75,8 @@ Disconnect → ReadLoop bricht ab → Disconnected-Event → 5 s Backoff → Tim
|
||||
gemeinsamen Transfer-Lock; einzelne Pakete unter einem Write-Lock.
|
||||
- **Host-Commands**: Pakete sind vollständig definiert, die Ausführung einer
|
||||
Command-ID als Desktop-Aktion ist bewusst noch nicht implementiert.
|
||||
- **UI-Modell-Grenze**: Das Binärmodell kann alle sieben Firmware-Animationen
|
||||
lesen und schreiben. Der ActionDialog bietet aktuell vier davon zur Auswahl.
|
||||
|
||||
Bewusst offene Punkte stehen gesammelt in
|
||||
[`07_known_limitations.md`](07_known_limitations.md).
|
||||
|
||||
Reference in New Issue
Block a user