feat(ui): complete Avalonia UI port with 7 main pages, tool settings & top MenuBar

This commit is contained in:
Richard
2026-08-10 10:48:34 +02:00
parent a0e18d2a57
commit b5bf97ae74
187 changed files with 20054 additions and 882 deletions
+39
View File
@@ -78,6 +78,45 @@ public sealed class InstanceSettingsViewModel
[ReadOnly(true)]
public int AgentCount => _config.Agents.Count;
// ─── WatchDog (Instanz-Heartbeat) ───
// Server-URL und Master-Token stehen app-weit in den Anwendungseinstellungen. Die
// Instanz registriert sich damit selbst; hier stehen nur Source/Gruppe/Intervall.
// Ein/Aus läuft über den Service „Instanz-Watchdog" im Worker-Tab. Änderungen greifen
// beim nächsten Start der Instanz.
[Category("WatchDog")]
[DisplayName("Source")]
[Description("Dienst-Kennung im WatchDog. Alle Instanzen teilen sich dieselbe Source.")]
public string WatchdogSource
{
get => _config.Watchdog.Source;
set => _config.Watchdog.Source = value;
}
[Category("WatchDog")]
[DisplayName("Gruppe")]
[Description("Gruppierung im WatchDog-Dashboard.")]
public string WatchdogGroup
{
get => _config.Watchdog.Group;
set => _config.Watchdog.Group = value;
}
[Category("WatchDog")]
[DisplayName("Intervall (Sek)")]
[Description("Sende-Takt der Heartbeats in Sekunden (mindestens 5).")]
public int WatchdogIntervalSeconds
{
get => _config.Watchdog.IntervalSeconds;
set => _config.Watchdog.IntervalSeconds = value;
}
[Category("WatchDog")]
[DisplayName("Token registriert")]
[Description("Ob diese Instanz bereits einen eigenen Agent-Token vom WatchDog erhalten hat.")]
[ReadOnly(true)]
public bool WatchdogTokenRegistered => _config.Watchdog.HasToken;
[Browsable(false)]
public InstanceConfig UnderlyingConfig => _config;