namespace Pilz.UI.Controls.ConfigurationManager;

public abstract class ConfigurationValueListener : IDisposable
{
    public event EventHandler? ValueChanged;

    protected virtual void OnValueChanged(object sender, EventArgs e)
    {
        ValueChanged?.Invoke(sender, e);
    }

    internal protected abstract void Initialize(Control control);

    public abstract void Dispose();
}
