32 lines
1.3 KiB
C#
32 lines
1.3 KiB
C#
namespace Pilz.Plugins.Advanced.UI.Extensions;
|
|
|
|
public static class PluginFeatureControllerExtensions
|
|
{
|
|
public static IControlManager 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)
|
|
{
|
|
return ApplyControlManager(@this, featureType, control, true, true, parameter);
|
|
}
|
|
|
|
public static IControlManager 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)
|
|
{
|
|
var manager = new ControlManager(@this.Features.Get(featureType).OfType<ControlFeature>(), control, recursive);
|
|
|
|
if (autoTrack)
|
|
manager.Track();
|
|
|
|
manager.Initialize(parameter);
|
|
|
|
return manager;
|
|
}
|
|
}
|