85 lines
2.2 KiB
C#
85 lines
2.2 KiB
C#
using System;
|
|
|
|
namespace DTS.Common.Core.Settings
|
|
{
|
|
/// <summary>
|
|
/// Event arguments describing change to settings collection
|
|
/// </summary>
|
|
/// <typeparam name="TKey">key type used in collection</typeparam>
|
|
/// <typeparam name="TItem">value type used in collection</typeparam>
|
|
public class SettingsChangedEventArgs<TKey, TItem> : EventArgs
|
|
{
|
|
/// <summary>
|
|
/// Constructor
|
|
/// </summary>
|
|
/// <param name="changeType">type of scenario change</param>
|
|
public SettingsChangedEventArgs(ChangeSettingType changeType)
|
|
{
|
|
ChangeType = changeType;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Constructor
|
|
/// </summary>
|
|
/// <param name="changeType">change type</param>
|
|
/// <param name="key">key type used in collection</param>
|
|
public SettingsChangedEventArgs(ChangeSettingType changeType, TKey key)
|
|
{
|
|
ChangeType = changeType;
|
|
Key = key;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Constructor
|
|
/// </summary>
|
|
/// <param name="changeType">change type</param>
|
|
/// <param name="key">key type used in collection</param>
|
|
/// <param name="item">value type used in collection</param>
|
|
public SettingsChangedEventArgs(ChangeSettingType changeType, TKey key, TItem item)
|
|
{
|
|
ChangeType = changeType;
|
|
Key = key;
|
|
Item = item;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns type of scenario change
|
|
/// </summary>
|
|
public ChangeSettingType ChangeType
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// key associated with changed setting
|
|
/// </summary>
|
|
public TKey Key
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Value associated with changed settting
|
|
/// </summary>
|
|
public TItem Item
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Type of settings changed
|
|
/// </summary>
|
|
public enum ChangeSettingType
|
|
{
|
|
Add = 0,
|
|
Remove = 1,
|
|
Modified = 3,
|
|
ClearAll = 4
|
|
}
|
|
|
|
}
|