diff --git a/BeWo/Core/TextModuleTreeItem.cs b/BeWo/Core/TextModuleTreeItem.cs index d69e6e935..a3fa8e4fd 100644 --- a/BeWo/Core/TextModuleTreeItem.cs +++ b/BeWo/Core/TextModuleTreeItem.cs @@ -15,7 +15,6 @@ namespace BeWo.Core private bool _IsExpanded; - public TextModuleVM TextModuleVM { get; set; } public string ItemName diff --git a/BeWo/View/Detail/CustomerView.xaml b/BeWo/View/Detail/CustomerView.xaml index 4c143b020..1030d7b63 100644 --- a/BeWo/View/Detail/CustomerView.xaml +++ b/BeWo/View/Detail/CustomerView.xaml @@ -96,9 +96,9 @@ + ItemsSource="{Binding Path=UngueltigeVerordnungen}" CustomColumnSort="Grid_medikamentenverordnungshistorie_OnCustomColumnSort"> - + diff --git a/BeWo/View/Detail/ServiceRecordView2.xaml.cs b/BeWo/View/Detail/ServiceRecordView2.xaml.cs index c11b97e39..b67d79740 100644 --- a/BeWo/View/Detail/ServiceRecordView2.xaml.cs +++ b/BeWo/View/Detail/ServiceRecordView2.xaml.cs @@ -83,10 +83,7 @@ namespace BeWo.View.Detail private int lastPosition; - public static double DocumentationTextBoxFontSize - { - get { return BeWoApp.AppSettings.DocumentationFontSize; } - } + public static double DocumentationTextBoxFontSize => BeWoApp.AppSettings.DocumentationFontSize; public ServiceRecordView2(ServiceRecordListVM pViewModel, long? startSupportConceptOid) { @@ -3430,7 +3427,7 @@ namespace BeWo.View.Detail rootGrid2.Children.Add(stackPanel); tbv.root.Header = string.Empty; - var window = new BeWoWindow(tbv) { Width = 514, Height = 400, rootGroupBox = { Header = "Textbausteine" } }; + var window = new BeWoWindow(tbv) { Width = 914, Height = 600, rootGroupBox = { Header = "Textbausteine" } }; speichernBtn.Click += (o, args) => { diff --git a/BeWo/View/Detail/TextModuleView.xaml b/BeWo/View/Detail/TextModuleView.xaml index 714787b15..ec9a352cb 100644 --- a/BeWo/View/Detail/TextModuleView.xaml +++ b/BeWo/View/Detail/TextModuleView.xaml @@ -11,7 +11,7 @@ VerticalAlignment="Stretch" Focusable="True"> - + diff --git a/BeWo/View/Detail/TextbausteinView.xaml b/BeWo/View/Detail/TextbausteinView.xaml index 55b7e6c60..3bcde7389 100644 --- a/BeWo/View/Detail/TextbausteinView.xaml +++ b/BeWo/View/Detail/TextbausteinView.xaml @@ -11,9 +11,24 @@ VerticalAlignment="Stretch" Focusable="True"> - + + + + + + + + + + + + + + + + @@ -21,6 +36,7 @@ + @@ -46,78 +62,164 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BeWo/View/Detail/TextbausteinView.xaml.cs b/BeWo/View/Detail/TextbausteinView.xaml.cs index 301007a87..49e08cc96 100644 --- a/BeWo/View/Detail/TextbausteinView.xaml.cs +++ b/BeWo/View/Detail/TextbausteinView.xaml.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Windows; +using System.Windows.Controls; using System.Windows.Data; using BeWo.Core; @@ -25,7 +26,7 @@ namespace BeWo.View.Detail public TextModuleListVM ViewModel { - get { return _ViewModel; } + get => _ViewModel; set { @@ -34,15 +35,9 @@ namespace BeWo.View.Detail } } - public override bool IsDirty - { - get { return ViewModel != null && ViewModel.IsDirty; } - } + public override bool IsDirty => ViewModel != null && ViewModel.IsDirty; - internal override DependencyObject ValidationOnSaveRootElement - { - get { return AddTextbausteinButton; } - } + internal override DependencyObject ValidationOnSaveRootElement => AddTextbausteinButton; private bool isInAdministrationView; @@ -112,8 +107,8 @@ namespace BeWo.View.Detail private void DeleteButton_Click(object sender, RoutedEventArgs e) { - ViewModel.VMList.Remove(datagrid_textbausteine.GetCurrentValue()); - BeWoWpfUtils.RefreshDXGrid(datagrid_textbausteine); + ViewModel.VMList.Remove(DatagridTextbausteine.GetCurrentValue()); + BeWoWpfUtils.RefreshDXGrid(DatagridTextbausteine); } private void ButtonAddTextbaustein_Click(object sender, RoutedEventArgs e) @@ -151,8 +146,50 @@ namespace BeWo.View.Detail return isOwn && hasRight2EditOwn || hasRight2EditAll; } + return false; } + + // TODO: Merken, ob die Textmodulkategorie aufgeklappt ist. + // TODO: Speichern und Schließen statt der bisherigen Lösung. + private void ContextMenuTextModules_Click(object sender, RoutedEventArgs e) + { + if(e.OriginalSource is MenuItem twi) + { + var selectedItem = TreeListControl.SelectedItem as TextModuleVM; + + ViewModel.NewVM.IsParent = twi.Header.Equals("Neue Textbausteinkategorie"); + ViewModel.NewVM.IsOnlyForEmployee = true; + + if(selectedItem != null) + { + ViewModel.NewVM.Parent = selectedItem; + } + + ViewModel.AddNewVMToList(false); + Save(); + } + } + + private void ContextMenuTextModules_Opened(object sender, RoutedEventArgs e) + { + if (e.OriginalSource is ContextMenu menu) + { + var textModule = TreeListControl.SelectedItem as TextModuleVM; + + foreach (var menuitem in menu.Items.OfType().Select(item => item)) + { + if(textModule == null || !textModule.IsParent) + { + menuitem.IsEnabled = false; + } + else + { + menuitem.IsEnabled = true; + } + } + } + } } public class IsOnlyForEmployeeRightsConverter : IValueConverter