instance yuhay + bump version

This commit is contained in:
2024-04-18 07:43:08 +02:00
parent 3fba8c00b7
commit 841f3b41ae
3 changed files with 15 additions and 7 deletions

View File

@@ -1,13 +1,21 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection.Metadata;
using System.Text;
using System.Threading.Tasks;
namespace Pilz.Plugins.Advanced
{
public interface IPluginFeatureProvider<T> where T : PluginFeature
public interface IPluginFeatureProvider
{
static abstract T Instance { get; }
static abstract PluginFeature Instance { get; }
}
public interface IPluginFeatureProvider<T> : IPluginFeatureProvider where T : PluginFeature, IPluginFeatureProvider<T>
{
static new abstract T Instance { get; }
static PluginFeature IPluginFeatureProvider.Instance => T.Instance;
}
}

View File

@@ -9,7 +9,7 @@
</PropertyGroup>
<PropertyGroup>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Version>2.6.0</Version>
<Version>2.6.1</Version>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Pilz.UI.Telerik.SymbolFactory\Pilz.UI.Telerik.SymbolFactory.csproj" />

View File

@@ -83,14 +83,14 @@ namespace Pilz.Plugins.Advanced
// }
//}
public void Register<T>() where T : IPluginFeatureProvider<PluginFeature>
public void Register<TProvider>() where TProvider : IPluginFeatureProvider
{
Register(T.Instance);
Register(TProvider.Instance);
}
public void RegisterAll<T>() where T : IPluginFeaturesProvider
public void RegisterAll<TProvider>() where TProvider : IPluginFeaturesProvider
{
foreach (var feature in T.GetFeatures())
foreach (var feature in TProvider.GetFeatures())
Register(feature);
}