diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.SharedUI/Components/SelectedObject.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.SharedUI/Components/SelectedObject.cs | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.SharedUI/Components/SelectedObject.cs b/Software/Visual_Studio/Tango.SharedUI/Components/SelectedObject.cs new file mode 100644 index 000000000..f91e93b5a --- /dev/null +++ b/Software/Visual_Studio/Tango.SharedUI/Components/SelectedObject.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.Core; + +namespace Tango.SharedUI.Components +{ + public class SelectedObject<T> : ExtendedObject + { + public event EventHandler IsSelectedChanged; + + private bool _isSelected; + + public bool IsSelected + { + get { return _isSelected; } + set { _isSelected = value; RaisePropertyChangedAuto(); IsSelectedChanged?.Invoke(this, new EventArgs()); } + } + + private T _data; + + public T Data + { + get { return _data; } + set { _data = value; RaisePropertyChangedAuto(); } + } + + public SelectedObject() + { + + } + + public SelectedObject(T data) : this() + { + Data = data; + } + + public SelectedObject(T data, bool selected) : this(data) + { + IsSelected = selected; + } + } +} |
