mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-12 11:56:30 +00:00
Shared UI - Flattened namespaces Shared UI - General housekeeping Project - Code cleanup
44 lines
1.1 KiB
C#
44 lines
1.1 KiB
C#
using System;
|
|
using Artemis.Core;
|
|
using Stylet;
|
|
|
|
namespace Artemis.UI.Screens.ProfileEditor.DisplayConditions.Abstract
|
|
{
|
|
public abstract class DisplayConditionViewModel : PropertyChangedBase, IDisposable
|
|
{
|
|
protected DisplayConditionViewModel(DisplayConditionPart model, DisplayConditionViewModel parent)
|
|
{
|
|
Model = model;
|
|
Parent = parent;
|
|
Children = new BindableCollection<DisplayConditionViewModel>();
|
|
}
|
|
|
|
public DisplayConditionPart Model { get; }
|
|
public DisplayConditionViewModel Parent { get; set; }
|
|
public BindableCollection<DisplayConditionViewModel> Children { get; }
|
|
|
|
public void Dispose()
|
|
{
|
|
foreach (var child in Children)
|
|
child.Dispose();
|
|
|
|
Dispose(true);
|
|
GC.SuppressFinalize(this);
|
|
}
|
|
|
|
public abstract void Update();
|
|
|
|
public virtual void Delete()
|
|
{
|
|
Model.Parent.RemoveChild(Model);
|
|
Parent.Update();
|
|
}
|
|
|
|
protected virtual void Dispose(bool disposing)
|
|
{
|
|
if (disposing)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
} |