using MaterialSkin; using MaterialSkin.Controls; using VisionBuilder.UI.Common.ViewModel; namespace VisionBuilder.UI.Windows.Test { public partial class Form1 : MaterialForm { private readonly MainWindowVM _mainWindowVm; public Form1(MainWindowVM mainWindowVm) { _mainWindowVm = mainWindowVm; MaterialSkin.MaterialSkinManager.ConfigureForInspectron(); InitializeComponent(); singleCameraControl1.SetViewModel(mainWindowVm.SingleCameraVms[0]); Load += Form1_Load; _mainWindowVm.PropertyChanged += _mainWindowVm_PropertyChanged; } private void _mainWindowVm_PropertyChanged(object? sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == nameof(_mainWindowVm.TestMode)) { if (_mainWindowVm.TestMode) { MaterialSkinManager.Instance.ColorScheme = new ColorScheme(Primary.Green800, Primary.Green800, Primary.Green400, Accent.Green200, TextShade.WHITE); } else { MaterialSkinManager.ConfigureForInspectron(); } Refresh(); } } private void Form1_Load(object sender, EventArgs e) { _mainWindowVm.OnProgramStarted(); } private void btnExit_Click(object sender, EventArgs e) { _mainWindowVm.OnProgramClosed(); Environment.Exit(0); } private void btnMinimize_Click(object sender, EventArgs e) { WindowState = FormWindowState.Minimized; } private void btnSettings_Click(object sender, EventArgs e) { _mainWindowVm.SettingsCommand.Execute(null); } private void btnTestMode_Click(object sender, EventArgs e) { _mainWindowVm.ToggleTestModeCommand.Execute(null); } } }