using System; using Artemis.UI.Screens.Module.ProfileEditor.LayerProperties.Abstract; using Artemis.UI.Screens.Module.ProfileEditor.LayerProperties.Tree.PropertyInput.Abstract; using Artemis.UI.Services.Interfaces; namespace Artemis.UI.Screens.Module.ProfileEditor.LayerProperties.Tree { public class TreePropertyViewModel : TreePropertyViewModel { private readonly IProfileEditorService _profileEditorService; public TreePropertyViewModel(LayerPropertyBaseViewModel layerPropertyBaseViewModel, PropertyInputViewModel propertyInputViewModel, IProfileEditorService profileEditorService) : base(layerPropertyBaseViewModel) { _profileEditorService = profileEditorService; LayerPropertyViewModel = (LayerPropertyViewModel) layerPropertyBaseViewModel; PropertyInputViewModel = propertyInputViewModel; } public LayerPropertyViewModel LayerPropertyViewModel { get; } public PropertyInputViewModel PropertyInputViewModel { get; set; } public override void Dispose() { PropertyInputViewModel.Dispose(); } } public abstract class TreePropertyViewModel : IDisposable { protected TreePropertyViewModel(LayerPropertyBaseViewModel layerPropertyBaseViewModel) { LayerPropertyBaseViewModel = layerPropertyBaseViewModel; } public LayerPropertyBaseViewModel LayerPropertyBaseViewModel { get; } public abstract void Dispose(); } }