using ImageCatalog_2.Commands; using ImageCatalog_2.Services; using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Input; namespace ImageCatalog_2 { public class DataModel : ViewModelBase { public ICommand TestCommand { get; } public ICommand AsyncTestCommand { get; } public ICommand ProcessImagesCommand { get; } private readonly ITestService _service; public DataModel(ITestService testService) { _service = testService; TestCommand = new RelayCommand(Test); AsyncTestCommand = new AsyncCommand(TestAsync); ProcessImagesCommand = new AsyncCommand(ProcessImages); } private string _sourcePath; public string SourcePath { get => _sourcePath; set { _sourcePath = value; NotifyPropertyChanged(); } } private string _destinationPath; public string DestinationPath { get => _destinationPath; set { _destinationPath = value; NotifyPropertyChanged(); } } private string _horizontalText; public string HorizontalText { get => _horizontalText; set { _horizontalText = value; NotifyPropertyChanged(); } } private string _verticalText; public string VerticalText { get => _verticalText; set { _verticalText = value; NotifyPropertyChanged(); } } private bool _overwriteImages; public bool OverwriteImages { get => _overwriteImages; set { _overwriteImages = value; NotifyPropertyChanged(); } } private bool _uiEnabled = true; public bool UiEnabled { get => _uiEnabled; set { _uiEnabled = value; NotifyPropertyChanged(); } } private void Test(object parameter) { Debug.WriteLine("Yep"); this.UiEnabled = !this.UiEnabled; } private async Task TestAsync() { Debug.WriteLine("Yep c"); } private async Task ProcessImages() { } } }