diff --git a/BeWo/Services/BeWoWindowService.cs b/BeWo/Services/BeWoWindowService.cs
index e00f369cf..8426985d9 100644
--- a/BeWo/Services/BeWoWindowService.cs
+++ b/BeWo/Services/BeWoWindowService.cs
@@ -198,7 +198,7 @@ namespace BeWo.Services
if (windowViewModel is DialogViewModel dialogViewModel)
{
- dialogViewModel.RequestClose += (s, e) => window.Close();
+ dialogViewModel.RequestCloseFinal += (s, e) => window.Close();
}
if (options.ShowAsDialog)
diff --git a/BeWo/View/Controls/AI/AiChatButton.xaml.cs b/BeWo/View/Controls/AI/AiChatButton.xaml.cs
index d10c55428..72ad7c438 100644
--- a/BeWo/View/Controls/AI/AiChatButton.xaml.cs
+++ b/BeWo/View/Controls/AI/AiChatButton.xaml.cs
@@ -67,7 +67,7 @@ namespace BeWo.View.Controls.AI
{
var viewmodel = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm);
viewmodel.ItemAccepted += ItemAccepted;
- viewmodel.RequestClose += (s, e) => viewmodel.ResetSelection();
+ viewmodel.RequestCloseFinal += (s, e) => viewmodel.ResetSelection();
ViewModel.AllPromptsViewModel = viewmodel;
var viewmodel2 = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm, true);
diff --git a/BeWo/View/Controls/AI/AiConversationButton.xaml.cs b/BeWo/View/Controls/AI/AiConversationButton.xaml.cs
index 24b4554bc..8021523a5 100644
--- a/BeWo/View/Controls/AI/AiConversationButton.xaml.cs
+++ b/BeWo/View/Controls/AI/AiConversationButton.xaml.cs
@@ -174,7 +174,7 @@ namespace BeWo.View.Controls.AI
{
var viewmodel = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm);
viewmodel.ItemAccepted += ItemAccepted;
- viewmodel.RequestClose += (s, e) => viewmodel.ResetSelection();
+ viewmodel.RequestCloseFinal += (s, e) => viewmodel.ResetSelection();
AllPromptsViewModel = viewmodel;
var viewmodel2 = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm, true);
diff --git a/BeWo/View/Controls/AI/AiPromptbausteinButton.xaml.cs b/BeWo/View/Controls/AI/AiPromptbausteinButton.xaml.cs
index 371852031..6fcae853e 100644
--- a/BeWo/View/Controls/AI/AiPromptbausteinButton.xaml.cs
+++ b/BeWo/View/Controls/AI/AiPromptbausteinButton.xaml.cs
@@ -115,7 +115,7 @@ namespace BeWo.View.Controls.AI
{
var viewmodel = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm);
viewmodel.ItemAccepted += ItemAccepted;
- viewmodel.RequestClose += (s, e) => viewmodel.ResetSelection();
+ viewmodel.RequestCloseFinal += (s, e) => viewmodel.ResetSelection();
AllPromptsViewModel = viewmodel;
var viewmodel2 = new AiPromptbausteinSelectionComplexViewModel(actionType, listvm, true);
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml b/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml
index 4b1854238..83edd58d5 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml
+++ b/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml
@@ -1,4 +1,4 @@
-
-
+
-
+
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml.cs b/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml.cs
index 1278c8d1d..49e0d24f2 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml.cs
+++ b/BeWo/View/Detail/AI/AiPromptbausteinFolderView.xaml.cs
@@ -20,13 +20,29 @@ namespace BeWo.View.Detail.AI
///
/// Interaktionslogik für AiPromptbausteinFolderView.xaml
///
- public partial class AiPromptbausteinFolderView : UserControl
+ public partial class AiPromptbausteinFolderView : BeWoView
{
+ public AiPromptbausteinFolderViewModel ViewModel
+ {
+ get => DataContext as AiPromptbausteinFolderViewModel;
+ set => DataContext = value;
+ }
+
public AiPromptbausteinFolderView(AiPromptbausteinFolderViewModel vm)
{
InitializeComponent();
- DataContext = vm;
+ ViewModel = vm;
+ }
+
+ public override bool IsDirty
+ {
+ get => ViewModel?.ViewModel?.IsDirty ?? false;
+ }
+
+ protected override void Save()
+ {
+ ViewModel.SaveCommand.Execute(null);
}
}
}
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml b/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml
index 992abe7d3..e237be362 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml
+++ b/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml
@@ -1,4 +1,4 @@
-
+ Focusable="True"
+ mc:Ignorable="d">
@@ -23,7 +24,7 @@
-
+
-
+
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml.cs b/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml.cs
index ca688a7c7..18955a312 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml.cs
+++ b/BeWo/View/Detail/AI/AiPromptbausteinPromptView.xaml.cs
@@ -20,13 +20,29 @@ namespace BeWo.View.Detail.AI
///
/// Interaktionslogik für AiPromptbausteinPromptView.xaml
///
- public partial class AiPromptbausteinPromptView : UserControl
- {
+ public partial class AiPromptbausteinPromptView : BeWoView
+ {
+ public AiPromptbausteinPromptViewModel ViewModel
+ {
+ get => DataContext as AiPromptbausteinPromptViewModel;
+ set => DataContext = value;
+ }
+
public AiPromptbausteinPromptView(AiPromptbausteinPromptViewModel vm)
{
InitializeComponent();
- DataContext = vm;
+ ViewModel = vm;
+ }
+
+ public override bool IsDirty
+ {
+ get => ViewModel?.ViewModel?.IsDirty ?? false;
+ }
+
+ protected override void Save()
+ {
+ ViewModel.SaveCommand.Execute(null);
}
}
}
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml b/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml
index 782edfaaf..8a222f3ba 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml
+++ b/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml
@@ -1,4 +1,5 @@
-
-
+
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml.cs b/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml.cs
index eb0988ab0..9f4b0ce81 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml.cs
+++ b/BeWo/View/Detail/AI/AiPromptbausteinPromptView2.xaml.cs
@@ -21,7 +21,7 @@ namespace BeWo.View.Detail.AI
///
/// Interaktionslogik für AiPromptbausteinPromptView.xaml
///
- public partial class AiPromptbausteinPromptView2 : UserControl
+ public partial class AiPromptbausteinPromptView2 : BeWoView
{
public static readonly DependencyProperty SaveCommandProperty =
DependencyProperty.Register("SaveCommand", typeof(ICommand), typeof(AiPromptbausteinPromptView2), new PropertyMetadata(null));
diff --git a/BeWo/View/Detail/AI/AiPromptbausteinRoutineView.xaml b/BeWo/View/Detail/AI/AiPromptbausteinRoutineView.xaml
index 193c7681e..ec0aef416 100644
--- a/BeWo/View/Detail/AI/AiPromptbausteinRoutineView.xaml
+++ b/BeWo/View/Detail/AI/AiPromptbausteinRoutineView.xaml
@@ -1,4 +1,4 @@
-
-
-
+
+
@@ -54,14 +55,14 @@
+ HorizontalAlignment="Right"
+ Content="Beschreibung" />
@@ -72,7 +73,8 @@
+ Margin="3,3"
+ Orientation="Horizontal">
Kette
Stapel
@@ -82,57 +84,57 @@
Grid.Column="0"
Content="Promptbausteine" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ HorizontalAlignment="Center"
+ Orientation="Horizontal">