Geteilter Aufruf -> Nur ein Server Request
This commit is contained in:
@@ -166,25 +166,27 @@ namespace BeWo.View.Controls.AI
|
||||
}
|
||||
private void InitPromptbausteine(AiActionType actionType, List<AiPromptbausteinFolderDC> folders)
|
||||
{
|
||||
var viewmodel = new AiPromptbausteinSelectionComplexViewModel(actionType);
|
||||
viewmodel.PromptAccepted += PromptAccepted;
|
||||
viewmodel.InitVMList();
|
||||
var view = new AiPromptbausteinComplexSelectionView(viewmodel);
|
||||
view.Padding = new Thickness(3);
|
||||
view.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
|
||||
border_promptbaustein_al.Child = view;
|
||||
VMFactory.CreateAiPromptbausteinFolderListVM(folders, (listvm) =>
|
||||
{
|
||||
var viewmodel = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm);
|
||||
viewmodel.PromptAccepted += PromptAccepted;
|
||||
var view = new AiPromptbausteinComplexSelectionView(viewmodel);
|
||||
view.Padding = new Thickness(3);
|
||||
view.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
|
||||
border_promptbaustein_al.Child = view;
|
||||
|
||||
var viewmodel2 = new AiPromptbausteinSelectionComplexViewModel(actionType, viewmodel.Folders);
|
||||
viewmodel2.PromptAccepted += PromptAccepted;
|
||||
viewmodel2.InitVMList();
|
||||
var view2 = new AiPromptbausteinComplexSelectionView(viewmodel2);
|
||||
view2.ReduceSelection();
|
||||
view2.Padding = new Thickness(3);
|
||||
view2.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
|
||||
border_promptbaustein_favoriten.Child = view2;
|
||||
var viewmodel2 = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm);
|
||||
viewmodel2.PromptAccepted += PromptAccepted;
|
||||
var view2 = new AiPromptbausteinComplexSelectionView(viewmodel2);
|
||||
view2.ReduceSelection();
|
||||
viewmodel2.SelectedFolder = viewmodel2.Folders.VMList[0];
|
||||
view2.Padding = new Thickness(3);
|
||||
view2.Background = FindResource("ObjectEditBackgroundBrush") as System.Windows.Media.Brush;
|
||||
border_promptbaustein_favoriten.Child = view2;
|
||||
|
||||
AiPromptOpenAllCommand = new DelegateCommand(AiPromptOpenAll);
|
||||
AiPromptOpenFavoriteCommand = new DelegateCommand(AiPromptOpenFavorite);
|
||||
AiPromptOpenAllCommand = new DelegateCommand(AiPromptOpenAll);
|
||||
AiPromptOpenFavoriteCommand = new DelegateCommand(AiPromptOpenFavorite);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,7 +41,6 @@ namespace BeWo.View.Detail.AI
|
||||
groupbox2.Header = "Favoriten";
|
||||
Grid.SetColumn(groupbox2, 0);
|
||||
Grid.SetColumnSpan(groupbox2, 3);
|
||||
ViewModel.SelectedFolderId = 0;
|
||||
}
|
||||
|
||||
private void treeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
|
||||
|
||||
@@ -949,14 +949,16 @@ namespace BeWo.ViewModel
|
||||
{
|
||||
ServiceFacade.DoAiEnhancedServiceAsnyc(
|
||||
req => req.GetAiPromptbausteinFolder(aiActionType),
|
||||
res =>
|
||||
{
|
||||
var listvm = new AiPromptbausteinFolderListVM(res);
|
||||
res => CreateAiPromptbausteinFolderListVM(res, get_viewmodel));
|
||||
}
|
||||
|
||||
reloadFavoriten(listvm);
|
||||
internal static void CreateAiPromptbausteinFolderListVM(List<AiPromptbausteinFolderDC> res, Action<AiPromptbausteinFolderListVM> get_viewmodel)
|
||||
{
|
||||
var listvm = new AiPromptbausteinFolderListVM(res);
|
||||
|
||||
get_viewmodel(listvm);
|
||||
});
|
||||
reloadFavoriten(listvm);
|
||||
|
||||
get_viewmodel(listvm);
|
||||
}
|
||||
|
||||
static void reloadFavoriten(AiPromptbausteinFolderListVM folders)
|
||||
|
||||
@@ -50,17 +50,11 @@ namespace BeWo.ViewModel.View.AI
|
||||
{
|
||||
_SelectedFolder = value;
|
||||
FirePropertyChanged(nameof(SelectedFolder));
|
||||
|
||||
if (value is null)
|
||||
SelectedFolderId = null;
|
||||
else
|
||||
SelectedFolderId = Folders.VMList.IndexOf(value);
|
||||
}
|
||||
}
|
||||
public AiPromptbausteinPromptVM SelectedPrompt { get; set; }
|
||||
public AiPromptbausteinFolderListVM Folders { get; private set; }
|
||||
public AiActionType LoadedActionType { get; set; }
|
||||
public int? SelectedFolderId { get; set; }
|
||||
|
||||
public void Send()
|
||||
{
|
||||
@@ -89,11 +83,6 @@ namespace BeWo.ViewModel.View.AI
|
||||
{
|
||||
Folders = new_list;
|
||||
FirePropertyChanged(nameof(Folders));
|
||||
|
||||
if(SelectedFolderId is int folder_id)
|
||||
{
|
||||
SelectedFolder = Folders.VMList[folder_id];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user