diff --git a/Pilz.Plugins.Advanced.UI/ControlFeature.cs b/Pilz.Plugins.Advanced.UI/ControlFeature.cs deleted file mode 100644 index e6167e2..0000000 --- a/Pilz.Plugins.Advanced.UI/ControlFeature.cs +++ /dev/null @@ -1,20 +0,0 @@ -namespace Pilz.Plugins.Advanced.UI; - -public abstract class ControlFeature : PluginFeature -{ - public bool ControlNameRegEx { get; } - - public string? ControlName { get; } - - public ControlFeature(string? controlName, string type, string identifier) : base(type, identifier) - { - ControlName = controlName; - } - - public ControlFeature(string? controlName, string type, string identifier, string? name) : base(type, identifier, name) - { - ControlName = controlName; - } - - public abstract void Execute(Control control, ControlExecuteReason reason, PluginFunctionParameter? parameter); -} diff --git a/Pilz.Plugins.Advanced.UI/ControlManager.cs b/Pilz.Plugins.Advanced.UI/ControlListener.cs similarity index 91% rename from Pilz.Plugins.Advanced.UI/ControlManager.cs rename to Pilz.Plugins.Advanced.UI/ControlListener.cs index 27d4e43..983ad05 100644 --- a/Pilz.Plugins.Advanced.UI/ControlManager.cs +++ b/Pilz.Plugins.Advanced.UI/ControlListener.cs @@ -1,9 +1,8 @@ -using Pilz.Plugins.Advanced.UI.Extensions; -using System.Text.RegularExpressions; +using System.Text.RegularExpressions; namespace Pilz.Plugins.Advanced.UI; -internal class ControlManager(IEnumerable features, Control control, bool recursive) : IControlManager +internal class ControlListener(IEnumerable features, Control control, bool recursive) : IControlListener { private bool isTracking; @@ -11,7 +10,7 @@ internal class ControlManager(IEnumerable features, Control cont public Control Control => control; - public IEnumerable Features => features; + public IEnumerable Features => features; internal void Track() { diff --git a/Pilz.Plugins.Advanced.UI/ControlListenerFeature.cs b/Pilz.Plugins.Advanced.UI/ControlListenerFeature.cs new file mode 100644 index 0000000..9c43117 --- /dev/null +++ b/Pilz.Plugins.Advanced.UI/ControlListenerFeature.cs @@ -0,0 +1,18 @@ +namespace Pilz.Plugins.Advanced.UI; + +public abstract class ControlListenerFeature : PluginFeature +{ + public string? ControlName { get; set; } + + public bool ControlNameRegEx { get; set; } + + public ControlListenerFeature(string type, string identifier) : base(type, identifier) + { + } + + public ControlListenerFeature(string type, string identifier, string? name) : base(type, identifier, name) + { + } + + public abstract void Execute(Control control, ControlExecuteReason reason, PluginFunctionParameter? parameter); +} diff --git a/Pilz.Plugins.Advanced.UI/Extensions/PluginFeatureControllerExtensions.cs b/Pilz.Plugins.Advanced.UI/Extensions/PluginFeatureControllerExtensions.cs index e677f1e..cedd027 100644 --- a/Pilz.Plugins.Advanced.UI/Extensions/PluginFeatureControllerExtensions.cs +++ b/Pilz.Plugins.Advanced.UI/Extensions/PluginFeatureControllerExtensions.cs @@ -2,24 +2,24 @@ public static class PluginFeatureControllerExtensions { - public static IControlManager ApplyControlManager(this PluginFeatureController @this, string featureType, Control control) + public static IControlListener ApplyControlManager(this PluginFeatureController @this, string featureType, Control control) { return ApplyControlManager(@this, featureType, control, true, true); } - public static IControlManager ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, PluginFunctionParameter? parameter) + public static IControlListener ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, PluginFunctionParameter? parameter) { return ApplyControlManager(@this, featureType, control, true, true, parameter); } - public static IControlManager ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, bool recursive, bool autoTrack) + public static IControlListener ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, bool recursive, bool autoTrack) { return ApplyControlManager(@this, featureType, control, recursive, autoTrack, null); } - public static IControlManager ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, bool recursive, bool autoTrack, PluginFunctionParameter? parameter) + public static IControlListener ApplyControlManager(this PluginFeatureController @this, string featureType, Control control, bool recursive, bool autoTrack, PluginFunctionParameter? parameter) { - var manager = new ControlManager(@this.Features.Get(featureType).OfType(), control, recursive); + var manager = new ControlListener(@this.Features.Get(featureType).OfType(), control, recursive); if (autoTrack) manager.Track(); diff --git a/Pilz.Plugins.Advanced.UI/IControlManager.cs b/Pilz.Plugins.Advanced.UI/IControlListener.cs similarity index 74% rename from Pilz.Plugins.Advanced.UI/IControlManager.cs rename to Pilz.Plugins.Advanced.UI/IControlListener.cs index a36f569..58b1762 100644 --- a/Pilz.Plugins.Advanced.UI/IControlManager.cs +++ b/Pilz.Plugins.Advanced.UI/IControlListener.cs @@ -1,6 +1,6 @@ namespace Pilz.Plugins.Advanced.UI; -public interface IControlManager +public interface IControlListener { void Execute(PluginFunctionParameter? parameter); }