private async Task OnLoadPluginCommandExecute() { _remotePluginInstance = _remoteVstService.GetInteractivePluginInstance(Plugin); if (!_remotePluginInstance.IsLoaded) { await _remotePluginInstance.LoadPlugin(); } _remotePluginInstance.PatchPluginToAudioOutput(_globalService.RuntimeConfiguration.AudioOutputDevice, _globalService.RuntimeConfiguration.AudioLatency); foreach (var dev in _globalService.RuntimeConfiguration.MidiInputDevices) { try { _remotePluginInstance.PatchPluginToMidiInput(dev); } catch (Exception e) { LogTo.Error(e.Message); } } ShowEditorCommand.RaiseCanExecuteChanged(); LoadPresetCommand.RaiseCanExecuteChanged(); }
protected override void OnPropertyChanged(AdvancedPropertyChangedEventArgs e) { if (e.PropertyName == nameof(SelectedTreeNode)) { ExternalFilter = o => PresetFilter(o as Preset); RenameBankCommand.RaiseCanExecuteChanged(); AddBankCommand.RaiseCanExecuteChanged(); DeleteBankCommand.RaiseCanExecuteChanged(); } if (e.PropertyName == nameof(SelectedPreset)) { HasSelectedPreset = SelectedPreset != null; LoadPresetCommand.RaiseCanExecuteChanged(); } }