diff --git a/zaaReloaded2/Style.xaml b/zaaReloaded2/Style.xaml index 3b42593..5a415d1 100755 --- a/zaaReloaded2/Style.xaml +++ b/zaaReloaded2/Style.xaml @@ -49,6 +49,13 @@ + diff --git a/zaaReloaded2/Thesaurus/Defaults/parameters.txt b/zaaReloaded2/Thesaurus/Defaults/parameters.txt index a2b837f..a2cc569 100755 --- a/zaaReloaded2/Thesaurus/Defaults/parameters.txt +++ b/zaaReloaded2/Thesaurus/Defaults/parameters.txt @@ -11,7 +11,7 @@ Albumin Alb S Albumin/Creatinin (PU)" ACR U "Alk. Phosphatase" AP S Amylase Amylase S -"anorg. Phosphat" Phosphat S +"anorg. Phosphat" P S "Bakterien (U)" Bakt U Basenabweichung BE BGA Basophile Baso E @@ -69,6 +69,7 @@ Kalium K S "Leukozyten (U)" Leu U Leukozyten Leu E Lymphozyten Lym E +Magnesium Mg S X "MCH (HbE)" MCH E MCHC MCHC E MCV MCV E @@ -82,7 +83,7 @@ Neutrophile Neu E NT-proBNP NT-proBNP S "PCO2 (art.)" pCO2 BGA "pH (U)" pH U -"pH" pH BGA +pH pH BGA "Plattenepithelien (U)" Plattenep U "PO2 (art.)" pO2 BGA "Protein (U)" Protein U @@ -112,3 +113,5 @@ Anti-Streptolysin ASL S TSH TSH S HAPTOGLOBIN Haptoglobin S FRAGMENTOZYTEN Fragmentozyten E +"HBc-Antikörper (gesamt)" Anti-HBc S +HBs-Antikörper Anti-HBs S \ No newline at end of file diff --git a/zaaReloaded2/Thesaurus/Defaults/units.txt b/zaaReloaded2/Thesaurus/Defaults/units.txt index 8981e90..1e8a350 100755 --- a/zaaReloaded2/Thesaurus/Defaults/units.txt +++ b/zaaReloaded2/Thesaurus/Defaults/units.txt @@ -6,4 +6,5 @@ ng/ml µg/l mmol/l mM n*1000/µl /nl +n*10E6/µl /fl Bak/µl /µl diff --git a/zaaReloaded2/ViewModels/SettingsViewModel.cs b/zaaReloaded2/ViewModels/SettingsViewModel.cs index f4e13c1..7bceeb5 100755 --- a/zaaReloaded2/ViewModels/SettingsViewModel.cs +++ b/zaaReloaded2/ViewModels/SettingsViewModel.cs @@ -342,13 +342,24 @@ namespace zaaReloaded2.ViewModels { // Create a new element picker; it will automatically create and // send us a new element view model if one is chosen by the view. - ElementPickerViewModel picker = new ElementPickerViewModel(true); + ElementPickerViewModel picker = new ElementPickerViewModel( + allowControlElements: IsTopLevelElement()); picker.ElementChosenMessage.Sent += (sender, args) => { ElementViewModel newVM = args.Content.ViewModel as ElementViewModel; - AddElementViewModel(newVM); + if (IsTopLevelElement()) + { + AddElementViewModel(newVM); + } + else + { + // If the selected element is on the second level, it + // must be a FormatElementViewModel. + ControlElementViewModel parent = ((FormatElementViewModel)LastSelectedElement).Parent; + AddChildElementViewModel(parent, newVM as FormatElementViewModel); + } newVM.IsSelected = true; - DoEditElement(); + if (newVM is FormatElementViewModel) DoEditElement(); }; AddElementMessage.Send(new ViewModelMessageContent(picker)); } @@ -389,11 +400,16 @@ namespace zaaReloaded2.ViewModels { // Replace the previously selected element with the new // one that we get from the ElementPickerViewModel. + int index = Elements.IndexOf(LastSelectedElement); ElementViewModel newVM = args.Content.ViewModel as ElementViewModel; - Elements.Insert( - Elements.IndexOf(LastSelectedElement), - newVM); - Elements.Remove(LastSelectedElement); + ControlElementBase oldModel = LastSelectedElement.RevealModelObject() as ControlElementBase; + ControlElementBase newModel = newVM.RevealModelObject() as ControlElementBase; + // Caveat: once we modify the Elements collection, LastSelectedElement will change! + Elements.RemoveAt(index); + Elements.Insert(index, newVM); + newModel.Children = oldModel.Children; + _settings.Elements.RemoveAt(index); + _settings.Elements.Insert(index, newModel); newVM.PropertyChanged += ElementViewModel_PropertyChanged; newVM.IsSelected = true; }; @@ -452,12 +468,16 @@ namespace zaaReloaded2.ViewModels { if (IsTopLevelElement()) { - AddElementViewModel(LastSelectedElement.Clone() as ElementViewModel); + ElementViewModel newControlVM = LastSelectedElement.Clone() as ElementViewModel; + AddElementViewModel(newControlVM); + newControlVM.IsSelected = true; } else { - FormatElementViewModel formatVM = LastSelectedElement as FormatElementViewModel; - formatVM.Parent.AddChildElement(formatVM.Clone() as FormatElementViewModel); + FormatElementViewModel originalVM = LastSelectedElement as FormatElementViewModel; + FormatElementViewModel newFormatVM = originalVM.Clone() as FormatElementViewModel; + originalVM.Parent.AddChildElement(newFormatVM); + newFormatVM.IsSelected = true; } } } @@ -492,7 +512,7 @@ namespace zaaReloaded2.ViewModels _settings.Elements.RemoveAt(index); _settings.Elements.Insert( index - 1, - LastSelectedElement.RevealModelObject() as ElementBase); + lastSelectedElement.RevealModelObject() as ElementBase); } else { @@ -588,7 +608,7 @@ namespace zaaReloaded2.ViewModels _settings.Elements.RemoveAt(index); _settings.Elements.Insert( index + 1, - LastSelectedElement.RevealModelObject() as ElementBase); + lastSelectedElement.RevealModelObject() as ElementBase); } else { diff --git a/zaaReloaded2/Views/SettingsRepositoryView.xaml b/zaaReloaded2/Views/SettingsRepositoryView.xaml index dd7bcb1..47fdc0a 100755 --- a/zaaReloaded2/Views/SettingsRepositoryView.xaml +++ b/zaaReloaded2/Views/SettingsRepositoryView.xaml @@ -61,7 +61,8 @@ - - - - - - - - - - + + + + + + + +