diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj index 7bc798391..eb517d5b0 100644 --- a/BeWo/BeWo.csproj +++ b/BeWo/BeWo.csproj @@ -116,7 +116,9 @@ - + + + AiPromptbausteinDetailView.xaml @@ -133,6 +135,9 @@ AiConfigView.xaml + + AiPromptbausteinSelectionView.xaml + AiPromptbausteinView.xaml @@ -199,6 +204,10 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + MSBuild:Compile Designer diff --git a/BeWo/BeWoApp.xaml.cs b/BeWo/BeWoApp.xaml.cs index dd78aac85..58e9c1977 100644 --- a/BeWo/BeWoApp.xaml.cs +++ b/BeWo/BeWoApp.xaml.cs @@ -56,7 +56,7 @@ namespace BeWo public static LoginControl LoginControl; public static MainControl MainControl; - public static string ShortVersion = "3.27.2"; + public static string ShortVersion = "3.28"; public static string Version => BeWoAppInfo.BeWoAppVersion.ToString(); public static int RenderTier = 0; diff --git a/BeWo/BeWoAppInfo.cs b/BeWo/BeWoAppInfo.cs index d07c02fe3..c8e1f1d42 100644 --- a/BeWo/BeWoAppInfo.cs +++ b/BeWo/BeWoAppInfo.cs @@ -14,8 +14,8 @@ namespace BeWo static BeWoAppInfo() { var baseVersion = new Version(BeWoApp.ShortVersion); - var stage = BeWoClientReleaseStage.Sandbox; - var stageVersion = new Version("1.4.1"); + var stage = BeWoClientReleaseStage.ProofOfConcept; + var stageVersion = new Version("1.5"); var feature = BeWoClientFeature.AI; BeWoAppVersion = new BeWoAppVersion(baseVersion, stage, stageVersion, feature); diff --git a/BeWo/Services/BeWoControlFactory.cs b/BeWo/Services/BeWoControlFactory.cs index 795f3f1f5..f2f793462 100644 --- a/BeWo/Services/BeWoControlFactory.cs +++ b/BeWo/Services/BeWoControlFactory.cs @@ -3,6 +3,7 @@ using BeWo.View.Detail.AI; using BeWo.ViewModel; using BeWo.ViewModel.View; using BeWo.ViewModel.View.Administration; +using BeWo.ViewModel.View.AI; using BS.Shared; using System; using System.Collections.Generic; @@ -25,11 +26,6 @@ namespace BeWo.Services return control; } - public Control GetAiPromptbausteinControl(AiPromptbausteinDetailViewModel vm) - { - return new AiPromptbausteinDetailView(vm); - } - private string getStyleString(AiContextType uIContext) { switch (uIContext) { diff --git a/BeWo/Services/BeWoWindowFactory.cs b/BeWo/Services/BeWoWindowFactory.cs index 08792193f..9e4d2a489 100644 --- a/BeWo/Services/BeWoWindowFactory.cs +++ b/BeWo/Services/BeWoWindowFactory.cs @@ -1,6 +1,7 @@ using BeWo.View.Detail.AI; using BeWo.View.Windows; using BeWo.ViewModel.View; +using BeWo.ViewModel.View.AI; using BS.Shared; using DevExpress.Mvvm.Native; using System; diff --git a/BeWo/Services/BeWoWindowService.cs b/BeWo/Services/BeWoWindowService.cs index 467c74c69..6cee3b205 100644 --- a/BeWo/Services/BeWoWindowService.cs +++ b/BeWo/Services/BeWoWindowService.cs @@ -1,7 +1,10 @@ -using BeWo.View.Windows; +using BeWo.View.Controls; +using BeWo.View.Detail.AI; +using BeWo.View.Windows; using BeWo.ViewModel; using BeWo.ViewModel.View; using BeWo.ViewModel.View.Administration; +using BeWo.ViewModel.View.AI; using BS.Shared; using BS.Shared.DataContracts; using System; @@ -38,23 +41,43 @@ namespace BeWo.Services (wf, ctrl) => wf.GetAiModalViewWindow(viewModel, ctrl)); } - public void ShowAiPromptbausteinWindow(AiPromptbausteinDetailViewModel viewModel) + public void ShowAiPromptbausteinDetailWindow(AiPromptbausteinDetailViewModel viewModel) { - ShowWindowDialog( - cf => cf.GetAiPromptbausteinControl(viewModel), - (wf, ctrl) => { var window = wf.GetAnimatedBeWoWindow("AiPromptbaustein", ctrl, 200, 400); - viewModel.CloseWindow = window.Close; - return window; - }); + ShowDialog( + cf => new AiPromptbausteinDetailView(viewModel), + (wf, ctrl) => wf.GetAnimatedBeWoWindow("AiPromptbaustein", ctrl, 200, 400), + viewModel); + } + + public void ShowAiPromptbausteinSelectionWindow(AiPromptbausteinSelectionViewModel viewModel) + { + ShowDialog( + cf => new AiPromptbausteinSelectionView(viewModel), + (wf, ctrl) => wf.GetAnimatedBeWoWindow("AiPromptbausteinSelection", ctrl, 400, 600), + viewModel); } private void ShowWindow(Func getControl, Func getWindow) { + // Problem mit dem Warte Fenster + throw new NotImplementedException(); + var control = getControl(_controlFactory); var window = getWindow(_builder, control); window.Show(); } + private void ShowDialog(Func getControl, Func getWindow, DialogViewModel dialogViewModel) + { + var control = getControl(_controlFactory); + var window = getWindow(_builder, control); + if(dialogViewModel != null) + { + dialogViewModel.RequestClose += (s, e) => window.Close(); + } + window.ShowDialog(); + } + private void ShowWindowDialog(Func getControl, Func getWindow) { var control = getControl(_controlFactory); diff --git a/BeWo/Services/IControlFactory.cs b/BeWo/Services/IControlFactory.cs index 155d30792..488c0681b 100644 --- a/BeWo/Services/IControlFactory.cs +++ b/BeWo/Services/IControlFactory.cs @@ -1,6 +1,7 @@ using BeWo.ViewModel; using BeWo.ViewModel.View; using BeWo.ViewModel.View.Administration; +using BeWo.ViewModel.View.AI; using BS.Shared; using System; using System.Collections.Generic; @@ -15,6 +16,5 @@ namespace BeWo.Services public interface IControlFactory { Control GetAiConversationControl(AiConversationChatViewModel vm); - Control GetAiPromptbausteinControl(AiPromptbausteinDetailViewModel vm); } } diff --git a/BeWo/Services/IWindowFactory.cs b/BeWo/Services/IWindowFactory.cs index b41a73a48..f73ff7df3 100644 --- a/BeWo/Services/IWindowFactory.cs +++ b/BeWo/Services/IWindowFactory.cs @@ -1,5 +1,5 @@ using BeWo.View.Windows; -using BeWo.ViewModel.View; +using BeWo.ViewModel.View.AI; using BS.Shared; using System; using System.Collections.Generic; diff --git a/BeWo/Services/IWindowService.cs b/BeWo/Services/IWindowService.cs index de6cb1057..6e4fc615d 100644 --- a/BeWo/Services/IWindowService.cs +++ b/BeWo/Services/IWindowService.cs @@ -1,6 +1,7 @@ using BeWo.ViewModel; using BeWo.ViewModel.View; using BeWo.ViewModel.View.Administration; +using BeWo.ViewModel.View.AI; using BS.Shared; using System; using System.Collections.Generic; @@ -17,6 +18,7 @@ namespace BeWo.Services void ShowAiConversationWindow(AiConversationChatViewModel viewModel); void ShowAiConversationModalViewWindow(AiConversationChatViewModel viewModel); - void ShowAiPromptbausteinWindow(AiPromptbausteinDetailViewModel viewModel); + void ShowAiPromptbausteinDetailWindow(AiPromptbausteinDetailViewModel viewModel); + void ShowAiPromptbausteinSelectionWindow(AiPromptbausteinSelectionViewModel viewModel); } } diff --git a/BeWo/View/Detail/AI/AiConfigView.xaml b/BeWo/View/Detail/AI/AiConfigView.xaml index 76d70ff06..07375a74e 100644 --- a/BeWo/View/Detail/AI/AiConfigView.xaml +++ b/BeWo/View/Detail/AI/AiConfigView.xaml @@ -8,7 +8,7 @@ xmlns:local="clr-namespace:BeWo.View.Detail.AI" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:shared="clr-namespace:BS.Shared;assembly=BS.Shared" - xmlns:vmv="clr-namespace:BeWo.ViewModel.View" + xmlns:vmv="clr-namespace:BeWo.ViewModel.View.AI" d:DataContext="{d:DesignInstance Type=vmv:AiConversationChatViewModel, IsDesignTimeCreatable=True}" mc:Ignorable="d"> @@ -70,7 +70,7 @@ Grid.Row="1" Grid.Column="2" IsEnabled="False" - Value="{Binding Config.Temperature}"/> + Value="{Binding Config.Temperature}" />