37 lines
1.0 KiB
C#
37 lines
1.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Linq;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace RconGUI {
|
|
|
|
public class ConsoleObject : INotifyPropertyChanged {
|
|
public string Name { get; set; }
|
|
public string Help { get; set; }
|
|
public string Flags { get; set; }
|
|
|
|
public event PropertyChangedEventHandler? PropertyChanged;
|
|
public void OnPropertyChanged([CallerMemberName] string prop = "") {
|
|
if (PropertyChanged != null)
|
|
PropertyChanged(this, new PropertyChangedEventArgs(prop));
|
|
}
|
|
}
|
|
|
|
public class ConsoleObject<T> : ConsoleObject {
|
|
private T _value;
|
|
public T Value { get { return _value; } set { _value = value; OnPropertyChanged(); } }
|
|
|
|
|
|
|
|
public delegate void ValueChanged(ConsoleObject sender);
|
|
public event ValueChanged Changed;
|
|
|
|
public ConsoleObject(T value) {
|
|
_value = value;
|
|
}
|
|
}
|
|
}
|