check if feature enabled

This commit is contained in:
Schedel Pascal
2024-07-01 13:17:12 +02:00
parent aec3da98d1
commit 374eadd526
2 changed files with 26 additions and 2 deletions

View File

@@ -124,7 +124,7 @@ public static class Extensions
private static void RadMenuItem_RMMethod_Click(object? sender, EventArgs e) private static void RadMenuItem_RMMethod_Click(object? sender, EventArgs e)
{ {
if (sender is RadMenuItem item) if (sender is RadMenuItem item && item.Enabled)
{ {
if (item.Tag is RadPluginModule radmodule) if (item.Tag is RadPluginModule radmodule)
radmodule.ShowUI(); radmodule.ShowUI();
@@ -135,7 +135,7 @@ public static class Extensions
private static void RadMenuItem_RMFunction_Click(object? sender, EventArgs e) private static void RadMenuItem_RMFunction_Click(object? sender, EventArgs e)
{ {
if (sender is RadMenuItem item && item.Tag is PluginFunction function) if (sender is RadMenuItem item && item.Tag is PluginFunction function && function.Enabled)
function.Execute(); function.Execute();
} }
} }

View File

@@ -0,0 +1,24 @@
namespace Pilz.Plugins.Advanced;
public static class Extensions
{
public static T? Execute<T>(this PluginFunction @this, params object?[]? @params)
{
return @this.Enabled ? @this.Execute<T>(@params) : default;
}
public static object? Execute(this PluginFunction @this, params object?[]? @params)
{
return @this.Enabled ? @this.Execute(@params) : default;
}
public static T? Execute<T>(this PluginFunction @this, PluginFunctionSimpleParamter? @params)
{
return @this.Enabled ? @this.Execute<T>(@params) : default;
}
public static object? Execute(this PluginFunction @this, PluginFunctionParameter? @params)
{
return @this.Enabled ? @this.Execute(@params) : default;
}
}