using BeWo.ServiceProxy; using BeWo.Services; using BeWo.ViewModel.ListViewModel; using BeWo.ViewModel.View.Dialogs; using DevExpress.Mvvm; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Windows.Input; namespace BeWo.ViewModel.View.AI { public class AiPromptbausteinSelectionViewModel : BaseDialogViewModel { public AiPromptbausteinSelectionViewModel() { Func isPrompt = () => SelectedNode is object && !SelectedNode.IsKategorie; SendCommand = new DelegateCommand(Send, isPrompt); if (BeWoApp.IsInDesignMode) { ListVM = new AiPromptbausteinTreeListVM(); } } public AiPromptbausteinSelectionViewModel(AiPromptbausteinTreeListVM viewModel) : this() { ListVM = viewModel; } public event EventHandler PromptAccepted; public AiPromptbausteinTreeVM SelectedNode { get; set; } public AiPromptbausteinTreeListVM ListVM { get; private set; } public ICommand SendCommand { get; set; } public void Send() { CloseDialogCommand.Execute(null); PromptAccepted?.Invoke(this, SelectedNode); } public void UpdateVMList(AiPromptbausteinTreeListVM new_list) { ListVM = new_list; FirePropertyChanged(nameof(ListVM)); } } }