Plugins - Removed plugin info from constructor

This commit is contained in:
SpoinkyNL committed 2020-06-07 21:51:56 +02:00
1 parent 33bb3ffa6c
commit 1d35a02d5b
49 files changed
+305 -390

No files matched your search

@@ -1,5 +1,4 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Asus;
@@ -11,7 +10,7 @@ namespace Artemis.Plugins.Devices.Asus
{
private readonly IRgbService _rgbService;
public AsusDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Asus.AsusDeviceProvider.Instance)
public AsusDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Asus.AsusDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,7 +1,8 @@
{
"Guid": "c20e876f-7cb0-4fa1-b0cc-ae1afb5865d1",
"Name": "Asus Devices",
"Description": "Allows Artemis to control lighting on different ASUS devices such as motherboards, GPUs, headsets, RAM, keyboards and PC cases.",
"Description":
"Allows Artemis to control lighting on different ASUS devices such as motherboards, GPUs, headsets, RAM, keyboards and PC cases.",
"Version": "1.0.0.0",
"Main": "Artemis.Plugins.Devices.Asus.dll"
}
@@ -1,6 +1,5 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.CoolerMaster;
@@ -12,7 +11,7 @@ namespace Artemis.Plugins.Devices.CoolerMaster
{
private readonly IRgbService _rgbService;
public CoolerMasterDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.CoolerMaster.CoolerMasterDeviceProvider.Instance)
public CoolerMasterDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.CoolerMaster.CoolerMasterDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,6 +1,5 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Corsair;
@@ -12,7 +11,7 @@ namespace Artemis.Plugins.Devices.Corsair
{
private readonly IRgbService _rgbService;
public CorsairDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Corsair.CorsairDeviceProvider.Instance)
public CorsairDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Corsair.CorsairDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,6 +1,5 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Abstract.ViewModels;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using Artemis.Plugins.Devices.DMX.ViewModels;
@@ -11,7 +10,7 @@ namespace Artemis.Plugins.Devices.DMX
{
private readonly IRgbService _rgbService;
public DMXDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.DMX.DMXDeviceProvider.Instance)
public DMXDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.DMX.DMXDeviceProvider.Instance)
{
_rgbService = rgbService;
HasConfigurationViewModel = true;
@@ -3,7 +3,6 @@ using System.IO;
using System.Linq;
using Artemis.Core.Extensions;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using HidSharp;
using RGB.NET.Core;
@@ -19,7 +18,7 @@ namespace Artemis.Plugins.Devices.Logitech
private readonly ILogger _logger;
private readonly IRgbService _rgbService;
public LogitechDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService, ILogger logger) : base(pluginInfo, RGB.NET.Devices.Logitech.LogitechDeviceProvider.Instance)
public LogitechDeviceProvider(IRgbService rgbService, ILogger logger) : base(RGB.NET.Devices.Logitech.LogitechDeviceProvider.Instance)
{
_rgbService = rgbService;
_logger = logger;
@@ -1,6 +1,5 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Msi;
@@ -12,7 +11,7 @@ namespace Artemis.Plugins.Devices.Msi
{
private readonly IRgbService _rgbService;
public MsiDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Msi.MsiDeviceProvider.Instance)
public MsiDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Msi.MsiDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,5 +1,4 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Novation;
@@ -11,7 +10,7 @@ namespace Artemis.Plugins.Devices.Novation
{
private readonly IRgbService _rgbService;
public NovationDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Novation.NovationDeviceProvider.Instance)
public NovationDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Novation.NovationDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,7 +1,6 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Exceptions;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Razer;
@@ -13,7 +12,7 @@ namespace Artemis.Plugins.Devices.Razer
{
private readonly IRgbService _rgbService;
public RazerDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Razer.RazerDeviceProvider.Instance)
public RazerDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Razer.RazerDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,6 +1,5 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
namespace Artemis.Plugins.Devices.Roccat
@@ -10,7 +9,7 @@ namespace Artemis.Plugins.Devices.Roccat
{
private readonly IRgbService _rgbService;
public RoccatDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Roccat.RoccatDeviceProvider.Instance)
public RoccatDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Roccat.RoccatDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,5 +1,4 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.SteelSeries;
@@ -11,7 +10,7 @@ namespace Artemis.Plugins.Devices.SteelSeries
{
private readonly IRgbService _rgbService;
public SteelSeriesDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.SteelSeries.SteelSeriesDeviceProvider.Instance)
public SteelSeriesDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.SteelSeries.SteelSeriesDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -15,19 +15,20 @@ namespace Artemis.Plugins.Devices.WS281X
public class WS281XDeviceProvider : DeviceProvider
{
private readonly IRgbService _rgbService;
private readonly PluginSettings _settings;
public WS281XDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService, PluginSettings settings) : base(pluginInfo, RGB.NET.Devices.WS281X.WS281XDeviceProvider.Instance)
public WS281XDeviceProvider(IRgbService rgbService, PluginSettings settings) : base(RGB.NET.Devices.WS281X.WS281XDeviceProvider.Instance)
{
Settings = settings;
_settings = settings;
_rgbService = rgbService;
HasConfigurationViewModel = true;
}
public PluginSettings Settings { get; }
public override void EnablePlugin()
{
var definitions = Settings.GetSetting<List<DeviceDefinition>>("DeviceDefinitions");
HasConfigurationViewModel = true;
var definitions = _settings.GetSetting<List<DeviceDefinition>>("DeviceDefinitions");
if (definitions.Value == null)
definitions.Value = new List<DeviceDefinition>();
@@ -53,10 +54,10 @@ namespace Artemis.Plugins.Devices.WS281X
{
// TODO: Remove the device provider from the surface
}
public override PluginConfigurationViewModel GetConfigurationViewModel()
{
return new WS281XConfigurationViewModel(this, Settings);
return new WS281XConfigurationViewModel(this, _settings);
}
}
}
@@ -1,6 +1,5 @@
using System.IO;
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Core.Services.Interfaces;
using RGB.NET.Core;
using RGB.NET.Devices.Wooting.Generic;
@@ -12,7 +11,7 @@ namespace Artemis.Plugins.Devices.Wooting
{
private readonly IRgbService _rgbService;
public WootingDeviceProvider(PluginInfo pluginInfo, IRgbService rgbService) : base(pluginInfo, RGB.NET.Devices.Wooting.WootingDeviceProvider.Instance)
public WootingDeviceProvider(IRgbService rgbService) : base(RGB.NET.Devices.Wooting.WootingDeviceProvider.Instance)
{
_rgbService = rgbService;
}
@@ -1,7 +1,8 @@
{
"Guid": "e70fd5ba-9881-480a-8ff6-078ed5f747fa",
"Name": "Wooting Devices",
"Description": "Allows Artemis to control lighting on Wooting keyboards. Will eventually also expose analog key data.",
"Description":
"Allows Artemis to control lighting on Wooting keyboards. Will eventually also expose analog key data.",
"Version": "1.0.0.0",
"Main": "Artemis.Plugins.Devices.Wooting.dll"
}
@@ -37,6 +37,7 @@
</ProjectReference>
</ItemGroup>
<Target Name="PostBuild" AfterTargets="PostBuildEvent" Condition="'$(BuildingInsideVisualStudio)' == 'true'">
<Exec Command="echo Copying resources to plugin output directory&#xD;&#xA;XCOPY &quot;$(ProjectDir)Images&quot; &quot;$(TargetDir)Images&quot; /s /q /i /y&#xD;&#xA;XCOPY &quot;$(ProjectDir)Layouts&quot; &quot;$(TargetDir)Layouts&quot; /s /q /i /y&#xD;&#xA;echo Copying plugin to Artemis.UI output directory&#xD;&#xA;XCOPY &quot;$(TargetDir.TrimEnd('\'))&quot; &quot;$(SolutionDir)\Artemis.UI\$(OutDir)Plugins\$(ProjectName)&quot; /s /q /i /y" />
<Exec
Command="echo Copying resources to plugin output directory&#xD;&#xA;XCOPY &quot;$(ProjectDir)Images&quot; &quot;$(TargetDir)Images&quot; /s /q /i /y&#xD;&#xA;XCOPY &quot;$(ProjectDir)Layouts&quot; &quot;$(TargetDir)Layouts&quot; /s /q /i /y&#xD;&#xA;echo Copying plugin to Artemis.UI output directory&#xD;&#xA;XCOPY &quot;$(TargetDir.TrimEnd('\'))&quot; &quot;$(SolutionDir)\Artemis.UI\$(OutDir)Plugins\$(ProjectName)&quot; /s /q /i /y" />
</Target>
</Project>
@@ -1,6 +1,5 @@
using System;
using Artemis.Core.Models.Profile;
using Artemis.Core.Plugins.LayerBrush;
using Artemis.Core.Plugins.LayerBrush.Abstract;
using SkiaSharp;
namespace Artemis.Plugins.LayerBrushes.Color
@@ -12,13 +11,9 @@ namespace Artemis.Plugins.LayerBrushes.Color
private SKShader _shader;
private SKRect _shaderBounds;
public ColorBrush(Layer layer, LayerBrushDescriptor descriptor) : base(layer, descriptor)
{
Layer.RenderPropertiesUpdated += (sender, args) => CreateShader();
}
public override void EnableLayerBrush()
{
Layer.RenderPropertiesUpdated += (sender, args) => CreateShader();
Properties.GradientType.BaseValueChanged += (sender, args) => CreateShader();
Properties.Color.BaseValueChanged += (sender, args) => CreateShader();
Properties.Gradient.BaseValue.PropertyChanged += (sender, args) => CreateShader();
@@ -66,13 +61,13 @@ namespace Artemis.Plugins.LayerBrushes.Color
new SKPoint(_shaderBounds.Right, _shaderBounds.Top),
Properties.Gradient.BaseValue.GetColorsArray(),
Properties.Gradient.BaseValue.GetPositionsArray(),
SKShaderTileMode.Repeat),
SKShaderTileMode.Clamp),
GradientType.RadialGradient => SKShader.CreateRadialGradient(
center,
Math.Min(_shaderBounds.Width, _shaderBounds.Height),
Math.Max(_shaderBounds.Width, _shaderBounds.Height) / 2f,
Properties.Gradient.BaseValue.GetColorsArray(),
Properties.Gradient.BaseValue.GetPositionsArray(),
SKShaderTileMode.Repeat),
SKShaderTileMode.Clamp),
GradientType.SweepGradient => SKShader.CreateSweepGradient(
center,
Properties.Gradient.BaseValue.GetColorsArray(),
@@ -1,18 +1,12 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.LayerBrush;
using Artemis.Core.Plugins.Models;
namespace Artemis.Plugins.LayerBrushes.Color
{
public class ColorBrushProvider : LayerBrushProvider
{
public ColorBrushProvider(PluginInfo pluginInfo) : base(pluginInfo)
{
AddLayerBrushDescriptor<ColorBrush>("Color", "A color with an (optional) gradient", "Brush");
}
public override void EnablePlugin()
{
AddLayerBrushDescriptor<ColorBrush>("Color", "A color with an (optional) gradient", "Brush");
}
public override void DisablePlugin()
@@ -1,6 +1,5 @@
using Artemis.Core.Extensions;
using Artemis.Core.Models.Profile;
using Artemis.Core.Plugins.LayerBrush;
using Artemis.Core.Plugins.LayerBrush.Abstract;
using RGB.NET.Brushes;
using RGB.NET.Core;
@@ -8,19 +7,16 @@ namespace Artemis.Plugins.LayerBrushes.ColorRgbNet
{
public class RgbNetColorBrush : RgbNetLayerBrush<RgbNetColorBrushProperties>
{
private readonly SolidColorBrush _solidBrush;
private SolidColorBrush _solidBrush;
public RgbNetColorBrush(Layer layer, LayerBrushDescriptor descriptor) : base(layer, descriptor)
public override void EnableLayerBrush()
{
_solidBrush = new SolidColorBrush(Color.Transparent);
}
public override void EnableLayerBrush()
{
}
public override void DisableLayerBrush()
{
_solidBrush = null;
}
public override void Update(double deltaTime)
@@ -1,5 +1,4 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.Models;
using Artemis.Plugins.LayerBrushes.ColorRgbNet.PropertyInput;
using Artemis.UI.Shared.Services.Interfaces;
@@ -9,15 +8,15 @@ namespace Artemis.Plugins.LayerBrushes.ColorRgbNet
{
private readonly IProfileEditorService _profileEditorService;
public RgbNetColorBrushProvider(PluginInfo pluginInfo, IProfileEditorService profileEditorService) : base(pluginInfo)
public RgbNetColorBrushProvider(IProfileEditorService profileEditorService)
{
_profileEditorService = profileEditorService;
AddLayerBrushDescriptor<RgbNetColorBrush>("RGB.NET Color", "A RGB.NET based color", "Brush");
}
public override void EnablePlugin()
{
_profileEditorService.RegisterPropertyInput(PluginInfo, typeof(StringPropertyInputViewModel));
AddLayerBrushDescriptor<RgbNetColorBrush>("RGB.NET Color", "A RGB.NET based color", "Brush");
}
public override void DisablePlugin()
@@ -1,7 +1,6 @@
using System;
using System.ComponentModel;
using Artemis.Core.Models.Profile;
using Artemis.Core.Plugins.LayerBrush;
using Artemis.Core.Plugins.LayerBrush.Abstract;
using Artemis.Core.Services.Interfaces;
using Artemis.Plugins.LayerBrushes.Noise.Utilities;
using SkiaSharp;
@@ -11,31 +10,30 @@ namespace Artemis.Plugins.LayerBrushes.Noise
public class NoiseBrush : LayerBrush<NoiseBrushProperties>
{
private static readonly Random Rand = new Random();
private readonly OpenSimplexNoise _noise;
private readonly IRgbService _rgbService;
private SKBitmap _bitmap;
private SKColor[] _colorMap;
private OpenSimplexNoise _noise;
private float _renderScale;
private float _x;
private float _y;
private float _z;
public NoiseBrush(Layer layer, LayerBrushDescriptor descriptor, IRgbService rgbService) : base(layer, descriptor)
public NoiseBrush(IRgbService rgbService)
{
_rgbService = rgbService;
}
public override void EnableLayerBrush()
{
_x = Rand.Next(0, 4096);
_y = Rand.Next(0, 4096);
_z = Rand.Next(0, 4096);
_noise = new OpenSimplexNoise(Rand.Next(0, 4096));
DetermineRenderScale();
}
public override void EnableLayerBrush()
{
Properties.GradientColor.BaseValue.PropertyChanged += GradientColorChanged;
CreateColorMap();
DetermineRenderScale();
}
public override void DisableLayerBrush()
@@ -115,7 +113,7 @@ namespace Artemis.Plugins.LayerBrushes.Noise
paint.Shader = foregroundShader;
canvas.DrawRect(path.Bounds, paint);
}
private void GradientColorChanged(object sender, PropertyChangedEventArgs e)
{
CreateColorMap();
@@ -1,18 +1,12 @@
using Artemis.Core.Plugins.Abstract;
using Artemis.Core.Plugins.LayerBrush;
using Artemis.Core.Plugins.Models;
namespace Artemis.Plugins.LayerBrushes.Noise
{
public class NoiseBrushProvider : LayerBrushProvider
{
public NoiseBrushProvider(PluginInfo pluginInfo) : base(pluginInfo)
{
AddLayerBrushDescriptor<NoiseBrush>("Noise", "A brush of that shows an animated random noise", "ScatterPlot");
}
public override void EnablePlugin()
{
AddLayerBrushDescriptor<NoiseBrush>("Noise", "A brush of that shows an animated random noise", "ScatterPlot");
}
public override void DisablePlugin()
@@ -11,15 +11,9 @@ namespace Artemis.Plugins.Modules.General
{
private readonly PluginSettings _settings;
public GeneralModule(PluginInfo pluginInfo, PluginSettings settings) : base(pluginInfo)
public GeneralModule(PluginSettings settings)
{
_settings = settings;
DisplayName = "General";
DisplayIcon = "AllInclusive";
ExpandsMainDataModel = true;
DataModel = new GeneralDataModel(this);
var testSetting = _settings.GetSetting("TestSetting", DateTime.Now);
}
public override IEnumerable<ModuleViewModel> GetViewModels()
@@ -29,6 +23,12 @@ namespace Artemis.Plugins.Modules.General
public override void EnablePlugin()
{
DisplayName = "General";
DisplayIcon = "AllInclusive";
ExpandsMainDataModel = true;
DataModel = new GeneralDataModel(this);
var testSetting = _settings.GetSetting("TestSetting", DateTime.Now);
}
public override void DisablePlugin()