diff --git a/BeWo/Core/TextModuleTreeItem.cs b/BeWo/Core/TextModuleTreeItem.cs new file mode 100644 index 000000000..d69e6e935 --- /dev/null +++ b/BeWo/Core/TextModuleTreeItem.cs @@ -0,0 +1,80 @@ +using System.ComponentModel; +using BeWo.ViewModel; +using BS.Shared.DataContracts; + +namespace BeWo.Core +{ + public class TextModuleTreeItem : INotifyPropertyChanged + { + public TextModuleTreeItem(TextModuleVM pVM) + { + TextModuleVM = pVM; + } + + private BindingList _Children; + + private bool _IsExpanded; + + + public TextModuleVM TextModuleVM { get; set; } + + public string ItemName + { + get + { + return TextModuleVM != null ? TextModuleVM.Name : null; + } + + set + { + if(TextModuleVM != null) + { + TextModuleVM.Name = value; + } + } + } + + public bool IsExpanded + { + get { return _IsExpanded; } + + set + { + _IsExpanded = value; + RaisePropertyChanged("IsExpanded"); + } + } + + public bool IsCaption + { + get { return TextModuleVM != null && TextModuleVM.Parent != null; } + } + + public BindingList Items + { + get { return _Children ?? (_Children = new BindingList()); } + + set { _Children = value; } + } + + public int Position + { + get { return TextModuleVM != null ? TextModuleVM.Position : 0; } + } + + public ServiceCategoryDC ServiceCategory + { + get { return TextModuleVM != null ? TextModuleVM.ServiceCategory : null; } + } + + public event PropertyChangedEventHandler PropertyChanged; + + protected void RaisePropertyChanged(string propertyName) + { + if(PropertyChanged != null) + { + PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } + } + } +} \ No newline at end of file diff --git a/BeWo/View/Detail/TextModuleView.xaml b/BeWo/View/Detail/TextModuleView.xaml new file mode 100644 index 000000000..714787b15 --- /dev/null +++ b/BeWo/View/Detail/TextModuleView.xaml @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +