| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using System.Reactive.Linq;
- using System.Windows.Input;
- using Avalonia;
- using qmonlib.ui.ViewModels.Logs;
- using qmonlib.ui.ViewModels.Navigator;
- using qmonlib.ui.ViewModels.Settings;
- using ReactiveUI;
- namespace qmonlib.ui.ViewModels;
- public class MainViewModel : ReceiverViewModelBase
- {
- #region *** Sub-ViewModels ***
- public NavSearchViewModel NavSearch { get; private set; } = new();
- public LogViewModel Log { get; private set; } = new();
- #endregion;
- #region *** Commands ***
- public ICommand CommandShowSettings { get; }
- public Interaction<SettingsViewModel, MainViewModel?> SettingsShowDialog { get; }
- #endregion;
- #region *** Constructor ***
- public MainViewModel()
- {
- SettingsShowDialog = new Interaction<SettingsViewModel, MainViewModel?>();
- CommandShowSettings = ReactiveCommand.CreateFromTask(async () =>
- {
- var settings = new SettingsViewModel();
- var result = await SettingsShowDialog.Handle(settings);
- Application.Current.Resources["Settings"] = settings;
- });
- }
- #endregion
- }
|