Filtration/Filtration.ObjectModel/BlockItemBaseTypes/BlockItembase.cs

43 lines
1.4 KiB
C#
Raw Normal View History

using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Windows.Media;
2015-06-24 14:57:16 -04:00
using Filtration.ObjectModel.Annotations;
using Filtration.ObjectModel.Enums;
2015-06-24 14:57:16 -04:00
namespace Filtration.ObjectModel.BlockItemBaseTypes
{
2015-06-24 14:57:16 -04:00
public abstract class BlockItemBase : IItemFilterBlockItem
{
private bool _isDirty;
public abstract string PrefixText { get; }
2015-06-23 17:21:10 -04:00
public abstract string OutputText { get; }
public abstract int MaximumAllowed { get; }
public abstract string DisplayHeading { get; }
public abstract string SummaryText { get; }
public abstract Color SummaryBackgroundColor { get; }
public abstract Color SummaryTextColor { get; }
public abstract BlockItemOrdering SortOrder { get; }
2018-08-31 04:21:43 -04:00
public string Comment { get; set; }
public bool IsDirty
{
get { return _isDirty; }
protected set
{
_isDirty = value;
OnPropertyChanged();
}
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
var handler = PropertyChanged;
handler?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}