Files
Mikrotik-Installer/src/MikrotikInstaller.App/ViewModels/Steps/ModeSelectionStepViewModel.cs
T
adminandClaude Opus 5.5 2a32034b63
Build / build (push) Canceled after 0s
Einstellungen-Fenster: Erscheinungsbild, Update-Pruefung, Professioneller Netzwerker, Testumgebung, Backup-Ordner/-Passwort (#48)
- AppSettings/AppSettingsStore (JSON unter %AppData%), Backup-Passwort im
  Anmeldeinformationsspeicher; Speicherfehler wird angezeigt statt still ignoriert
- Hell/Dunkel/Wie System, System-Watcher nur bei 'Wie System'
- Experten-Modus im Assistenten nur mit 'Professioneller Netzwerker' (Mac v1.3.0)
- Update-Pruefung beim Verbinden abschaltbar

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 06:43:05 +02:00

38 lines
1.6 KiB
C#

using CommunityToolkit.Mvvm.ComponentModel;
namespace MikrotikInstaller.App.ViewModels.Steps;
/// <summary>
/// Wahl zwischen dem geführten Assistenten (Standard, für die meisten Nutzer passend) und dem
/// Experten-Modus, der in den folgenden Schritten zusätzliche, technischere RouterOS-Optionen einblendet.
/// Die Wahl blockiert nie das Weitergehen — der geführte Assistent ist vorausgewählt. Bei
/// "Backup verwalten" (<see cref="AppArea.BackupManagement"/>) nicht relevant und übersprungen.
/// </summary>
public partial class ModeSelectionStepViewModel : WizardStepViewModelBase
{
private readonly WizardSession _session;
public ModeSelectionStepViewModel(WizardSession session)
: base(
title: "Modus wählen",
description: "Der geführte Assistent passt für die meisten Haushalte. Kennst du dich mit RouterOS aus, kannst du den Experten-Modus wählen — die folgenden Schritte zeigen dann zusätzliche, technischere Einstellungen.")
{
_session = session;
_isExpertMode = session.IsExpertMode;
}
[ObservableProperty]
private bool _isExpertMode;
/// <summary>Ohne „Professioneller Netzwerker" gibt es nichts zu wählen — dann immer der geführte Assistent.</summary>
public override bool ShouldSkip => _session.SelectedArea == AppArea.BackupManagement || !UserSettings.Current.ProfessionalMode;
public override Task OnActivatedAsync()
{
IsExpertMode = _session.IsExpertMode;
return Task.CompletedTask;
}
partial void OnIsExpertModeChanged(bool value) => _session.IsExpertMode = value;
}