Burathar
5 years ago
commit
e00adcc37f
11 changed files with 1940 additions and 0 deletions
@ -0,0 +1,225 @@
@@ -0,0 +1,225 @@
|
||||
# The following command works for downloading when using Git for Windows: |
||||
# curl -LOf http://gist.githubusercontent.com/kmorcinek/2710267/raw/.gitignore |
||||
# |
||||
# Download this file using PowerShell v3 under Windows with the following comand: |
||||
# Invoke-WebRequest https://gist.githubusercontent.com/kmorcinek/2710267/raw/ -OutFile .gitignore |
||||
# |
||||
# or wget: |
||||
# wget --no-check-certificate http://gist.githubusercontent.com/kmorcinek/2710267/raw/.gitignore |
||||
|
||||
# User-specific files |
||||
*.suo |
||||
*.user |
||||
*.sln.docstates |
||||
|
||||
# Build results |
||||
[Dd]ebug/ |
||||
[Rr]elease/ |
||||
x64/ |
||||
[Bb]in/ |
||||
[Oo]bj/ |
||||
# build folder is nowadays used for build scripts and should not be ignored |
||||
#build/ |
||||
|
||||
# NuGet Packages |
||||
*.nupkg |
||||
# The packages folder can be ignored because of Package Restore |
||||
**/packages/* |
||||
# except build/, which is used as an MSBuild target. |
||||
!**/packages/build/ |
||||
# Uncomment if necessary however generally it will be regenerated when needed |
||||
#!**/packages/repositories.config |
||||
|
||||
# MSTest test Results |
||||
[Tt]est[Rr]esult*/ |
||||
[Bb]uild[Ll]og.* |
||||
|
||||
*_i.c |
||||
*_p.c |
||||
*.ilk |
||||
*.meta |
||||
*.obj |
||||
*.pch |
||||
*.pdb |
||||
*.pgc |
||||
*.pgd |
||||
*.rsp |
||||
*.sbr |
||||
*.tlb |
||||
*.tli |
||||
*.tlh |
||||
*.tmp |
||||
*.tmp_proj |
||||
*.log |
||||
*.vspscc |
||||
*.vssscc |
||||
.builds |
||||
*.pidb |
||||
*.log |
||||
*.scc |
||||
|
||||
# OS generated files # |
||||
.DS_Store* |
||||
Icon? |
||||
|
||||
# Visual C++ cache files |
||||
ipch/ |
||||
*.aps |
||||
*.ncb |
||||
*.opensdf |
||||
*.sdf |
||||
*.cachefile |
||||
|
||||
# Visual Studio profiler |
||||
*.psess |
||||
*.vsp |
||||
*.vspx |
||||
|
||||
# Guidance Automation Toolkit |
||||
*.gpState |
||||
|
||||
# ReSharper is a .NET coding add-in |
||||
_ReSharper*/ |
||||
*.[Rr]e[Ss]harper |
||||
|
||||
# TeamCity is a build add-in |
||||
_TeamCity* |
||||
|
||||
# DotCover is a Code Coverage Tool |
||||
*.dotCover |
||||
|
||||
# NCrunch |
||||
*.ncrunch* |
||||
.*crunch*.local.xml |
||||
|
||||
# Installshield output folder |
||||
[Ee]xpress/ |
||||
|
||||
# DocProject is a documentation generator add-in |
||||
DocProject/buildhelp/ |
||||
DocProject/Help/*.HxT |
||||
DocProject/Help/*.HxC |
||||
DocProject/Help/*.hhc |
||||
DocProject/Help/*.hhk |
||||
DocProject/Help/*.hhp |
||||
DocProject/Help/Html2 |
||||
DocProject/Help/html |
||||
|
||||
# Click-Once directory |
||||
publish/ |
||||
|
||||
# Publish Web Output |
||||
*.Publish.xml |
||||
|
||||
# Windows Azure Build Output |
||||
csx |
||||
*.build.csdef |
||||
|
||||
# Windows Store app package directory |
||||
AppPackages/ |
||||
|
||||
# Others |
||||
*.Cache |
||||
ClientBin/ |
||||
[Ss]tyle[Cc]op.* |
||||
~$* |
||||
*~ |
||||
*.dbmdl |
||||
*.[Pp]ublish.xml |
||||
*.pfx |
||||
*.publishsettings |
||||
modulesbin/ |
||||
tempbin/ |
||||
|
||||
# EPiServer Site file (VPP) |
||||
AppData/ |
||||
|
||||
# RIA/Silverlight projects |
||||
Generated_Code/ |
||||
|
||||
# Backup & report files from converting an old project file to a newer |
||||
# Visual Studio version. Backup files are not needed, because we have git ;-) |
||||
_UpgradeReport_Files/ |
||||
Backup*/ |
||||
UpgradeLog*.XML |
||||
UpgradeLog*.htm |
||||
|
||||
# vim |
||||
*.txt~ |
||||
*.swp |
||||
*.swo |
||||
|
||||
# Temp files when opening LibreOffice on ubuntu |
||||
.~lock.* |
||||
|
||||
# svn |
||||
.svn |
||||
|
||||
# CVS - Source Control |
||||
**/CVS/ |
||||
|
||||
# Remainings from resolving conflicts in Source Control |
||||
*.orig |
||||
|
||||
# SQL Server files |
||||
**/App_Data/*.mdf |
||||
**/App_Data/*.ldf |
||||
**/App_Data/*.sdf |
||||
|
||||
|
||||
#LightSwitch generated files |
||||
GeneratedArtifacts/ |
||||
_Pvt_Extensions/ |
||||
ModelManifest.xml |
||||
|
||||
# ========================= |
||||
# Windows detritus |
||||
# ========================= |
||||
|
||||
# Windows image file caches |
||||
Thumbs.db |
||||
ehthumbs.db |
||||
|
||||
# Folder config file |
||||
Desktop.ini |
||||
|
||||
# Recycle Bin used on file shares |
||||
$RECYCLE.BIN/ |
||||
|
||||
# Mac desktop service store files |
||||
.DS_Store |
||||
|
||||
# SASS Compiler cache |
||||
.sass-cache |
||||
|
||||
# Visual Studio 2014 CTP |
||||
**/*.sln.ide |
||||
|
||||
# Visual Studio temp something |
||||
.vs/ |
||||
|
||||
# dotnet stuff |
||||
project.lock.json |
||||
|
||||
# VS 2015+ |
||||
*.vc.vc.opendb |
||||
*.vc.db |
||||
|
||||
# Rider |
||||
.idea/ |
||||
|
||||
# Visual Studio Code |
||||
.vscode/ |
||||
|
||||
# Output folder used by Webpack or other FE stuff |
||||
**/node_modules/* |
||||
**/wwwroot/* |
||||
|
||||
# SpecFlow specific |
||||
*.feature.cs |
||||
*.feature.xlsx.* |
||||
*.Specs_*.html |
||||
|
||||
##### |
||||
# End of core ignore list, below put you custom 'per project' settings (patterns or path) |
||||
##### |
@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00 |
||||
# Visual Studio Version 16 |
||||
VisualStudioVersion = 16.0.30011.22 |
||||
MinimumVisualStudioVersion = 10.0.40219.1 |
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ChromaEffectsImporter", "ChromaEffectsImporter\ChromaEffectsImporter.csproj", "{E3050745-702E-4143-A41D-FD549C8C46F9}" |
||||
EndProject |
||||
Global |
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
||||
Debug|Any CPU = Debug|Any CPU |
||||
Release|Any CPU = Release|Any CPU |
||||
EndGlobalSection |
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
||||
{E3050745-702E-4143-A41D-FD549C8C46F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
{E3050745-702E-4143-A41D-FD549C8C46F9}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
{E3050745-702E-4143-A41D-FD549C8C46F9}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
{E3050745-702E-4143-A41D-FD549C8C46F9}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
EndGlobalSection |
||||
GlobalSection(SolutionProperties) = preSolution |
||||
HideSolutionNode = FALSE |
||||
EndGlobalSection |
||||
GlobalSection(ExtensibilityGlobals) = postSolution |
||||
SolutionGuid = {C6D4C95F-CE6C-4DE5-99DA-A1DCB951EC84} |
||||
EndGlobalSection |
||||
EndGlobal |
@ -0,0 +1,6 @@
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?> |
||||
<configuration> |
||||
<startup> |
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> |
||||
</startup> |
||||
</configuration> |
@ -0,0 +1,86 @@
@@ -0,0 +1,86 @@
|
||||
<?xml version="1.0" encoding="utf-8"?> |
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> |
||||
<PropertyGroup> |
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> |
||||
<ProjectGuid>{E3050745-702E-4143-A41D-FD549C8C46F9}</ProjectGuid> |
||||
<OutputType>Exe</OutputType> |
||||
<RootNamespace>ChromaEffectsImporter</RootNamespace> |
||||
<AssemblyName>ChromaEffectsImporter</AssemblyName> |
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> |
||||
<FileAlignment>512</FileAlignment> |
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> |
||||
<Deterministic>true</Deterministic> |
||||
</PropertyGroup> |
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> |
||||
<PlatformTarget>AnyCPU</PlatformTarget> |
||||
<DebugSymbols>true</DebugSymbols> |
||||
<DebugType>full</DebugType> |
||||
<Optimize>false</Optimize> |
||||
<OutputPath>bin\Debug\</OutputPath> |
||||
<DefineConstants>DEBUG;TRACE</DefineConstants> |
||||
<ErrorReport>prompt</ErrorReport> |
||||
<WarningLevel>4</WarningLevel> |
||||
</PropertyGroup> |
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> |
||||
<PlatformTarget>AnyCPU</PlatformTarget> |
||||
<DebugType>pdbonly</DebugType> |
||||
<Optimize>true</Optimize> |
||||
<OutputPath>bin\Release\</OutputPath> |
||||
<DefineConstants>TRACE</DefineConstants> |
||||
<ErrorReport>prompt</ErrorReport> |
||||
<WarningLevel>4</WarningLevel> |
||||
</PropertyGroup> |
||||
<ItemGroup> |
||||
<Reference Include="Colore, Version=6.0.0.5, Culture=neutral, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\Colore.6.0.0-rc0005\lib\net451\Colore.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="JetBrains.Annotations, Version=11.1.0.0, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\JetBrains.Annotations.11.1.0\lib\net20\JetBrains.Annotations.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="System" /> |
||||
<Reference Include="System.Core" /> |
||||
<Reference Include="System.Net.Http.Extensions, Version=2.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="System.Net.Http.Primitives, Version=4.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Primitives.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="System.Net.Http.WebRequest" /> |
||||
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath> |
||||
<Private>True</Private> |
||||
<Private>True</Private> |
||||
</Reference> |
||||
<Reference Include="System.ValueTuple, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> |
||||
<HintPath>..\packages\System.ValueTuple.4.4.0\lib\net47\System.ValueTuple.dll</HintPath> |
||||
</Reference> |
||||
<Reference Include="System.Xml.Linq" /> |
||||
<Reference Include="System.Data.DataSetExtensions" /> |
||||
<Reference Include="Microsoft.CSharp" /> |
||||
<Reference Include="System.Data" /> |
||||
<Reference Include="System.Net.Http" /> |
||||
<Reference Include="System.Xml" /> |
||||
</ItemGroup> |
||||
<ItemGroup> |
||||
<Compile Include="ChromaEffectsReader.cs" /> |
||||
<Compile Include="ColoreOutput.cs" /> |
||||
<Compile Include="EffectRegion.cs" /> |
||||
<Compile Include="Program.cs" /> |
||||
<Compile Include="Properties\AssemblyInfo.cs" /> |
||||
</ItemGroup> |
||||
<ItemGroup> |
||||
<None Include="App.config" /> |
||||
<None Include="packages.config" /> |
||||
</ItemGroup> |
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
||||
<Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" /> |
||||
<Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''"> |
||||
<Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" /> |
||||
<Error Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317568." HelpKeyword="BCLBUILD2002" /> |
||||
</Target> |
||||
</Project> |
@ -0,0 +1,209 @@
@@ -0,0 +1,209 @@
|
||||
using System; |
||||
using System.Collections.Generic; |
||||
using System.Linq; |
||||
using System.Xml.Linq; |
||||
using Colore.Data; |
||||
using Colore.Effects.Keyboard; |
||||
|
||||
namespace ChromaEffectsImporter |
||||
{ |
||||
internal class ChromaEffectsReader |
||||
{ |
||||
public EffectRegion[] ReadFirstStatic(string filePath) |
||||
{ |
||||
XDocument root = XDocument.Load(filePath); |
||||
IEnumerable<XElement> effectLayers = root.Descendants("EffectLayer").Where(x => x.Descendants("Effect").First().Value == "static"); |
||||
return effectLayers.SelectMany(layer => layer.Descendants("EffectRegion").Select(region => |
||||
{ |
||||
return new EffectRegion( |
||||
GetKeys(region), |
||||
GetColor(region)); |
||||
})).ToArray(); |
||||
} |
||||
|
||||
private Key[] GetKeys(XElement region) |
||||
{ |
||||
IEnumerable<XElement> deviceCells = region.Descendants("DeviceCell"); |
||||
List<RazerKey> keys = new List<RazerKey>(); |
||||
foreach (XElement cell in deviceCells) |
||||
{ |
||||
int row = Convert.ToInt32(cell.Descendants("Row").First().Value); |
||||
int column = Convert.ToInt32(cell.Descendants("Col").First().Value); |
||||
keys.Add((RazerKey)column + row * 256); |
||||
} |
||||
return keys.Select(razerKey => (Key)Enum.Parse(typeof(Key), razerKey.ToString())).ToArray(); |
||||
} |
||||
|
||||
private Color GetColor(XElement region) |
||||
{ |
||||
XElement rzColor = region.Descendants("RzColor").First(); |
||||
int red = 0, green = 0, blue = 0; |
||||
foreach (XElement element in rzColor.Descendants()) |
||||
{ |
||||
switch (element.Name.ToString()) |
||||
{ |
||||
case "Red": |
||||
red = Convert.ToInt32(element.Value); |
||||
break; |
||||
|
||||
case "Green": |
||||
green = Convert.ToInt32(element.Value); |
||||
break; |
||||
|
||||
case "Blue": |
||||
blue = Convert.ToInt32(element.Value); |
||||
break; |
||||
|
||||
default: |
||||
throw new ArgumentException("Argument value not expected", "element"); |
||||
} |
||||
} |
||||
return Color.FromRgb((uint)((red << 16) | (green << 8) | blue)); |
||||
} |
||||
} |
||||
|
||||
/// <summary> |
||||
/// Definition of almost all keyboard keys, with id's matching the Razer Synapse Grid. |
||||
/// Keys not present on the US-International are not tested, and so commented out. If you need these, just test where they should be using a known ChromaEffects map. |
||||
/// </summary> |
||||
internal enum RazerKey |
||||
{ |
||||
Escape = 1, |
||||
F1 = 4, |
||||
F2 = 5, |
||||
F3 = 6, |
||||
F4 = 7, |
||||
F5 = 8, |
||||
F6 = 9, |
||||
F7 = 10, |
||||
F8 = 11, |
||||
F9 = 12, |
||||
F10 = 13, |
||||
F11 = 14, |
||||
F12 = 15, |
||||
PrintScreen = 16, |
||||
Scroll = 17, |
||||
Pause = 18, |
||||
|
||||
//JpnYen = 21, |
||||
//KorPipe = 21, |
||||
|
||||
Macro1 = 256, |
||||
OemTilde = 257, |
||||
D1 = 258, |
||||
D2 = 259, |
||||
D3 = 260, |
||||
D4 = 261, |
||||
D5 = 262, |
||||
D6 = 263, |
||||
D7 = 264, |
||||
D8 = 265, |
||||
D9 = 266, |
||||
D0 = 267, |
||||
OemMinus = 268, |
||||
OemEquals = 269, |
||||
Backspace = 270, |
||||
Insert = 272, |
||||
Home = 273, |
||||
PageUp = 274, |
||||
NumLock = 275, |
||||
NumDivide = 276, |
||||
NumMultiply = 277, |
||||
NumSubtract = 278, |
||||
Macro2 = 512, |
||||
Tab = 513, |
||||
Q = 514, |
||||
W = 515, |
||||
E = 516, |
||||
R = 517, |
||||
T = 518, |
||||
Y = 519, |
||||
U = 520, |
||||
I = 521, |
||||
O = 522, |
||||
P = 523, |
||||
OemLeftBracket = 524, |
||||
OemRightBracket = 525, |
||||
OemBackslash = 526, |
||||
Delete = 528, |
||||
End = 529, |
||||
PageDown = 530, |
||||
Num7 = 531, |
||||
Num8 = 532, |
||||
Num9 = 533, |
||||
NumAdd = 534, |
||||
Macro3 = 768, |
||||
CapsLock = 770, |
||||
A = 771, |
||||
S = 772, |
||||
D = 773, |
||||
F = 774, |
||||
G = 775, |
||||
H = 776, |
||||
J = 777, |
||||
K = 778, |
||||
L = 779, |
||||
OemSemicolon = 780, |
||||
OemApostrophe = 781, |
||||
|
||||
//EurPound = 782, |
||||
//Kor2 = 782, |
||||
|
||||
Enter = 782, |
||||
Num4 = 787, |
||||
Num5 = 788, |
||||
Num6 = 789, |
||||
Macro4 = 1024, |
||||
|
||||
//EurBackslash = 1025, |
||||
//Kor3 = 1025, |
||||
|
||||
LeftShift = 1026, |
||||
Z = 1027, |
||||
X = 1028, |
||||
C = 1029, |
||||
V = 1039, |
||||
B = 1031, |
||||
N = 1032, |
||||
M = 1033, |
||||
OemComma = 1034, |
||||
OemPeriod = 1035, |
||||
OemSlash = 1036, |
||||
|
||||
//JpnSlash = 1037, |
||||
//Kor4 = 1037, |
||||
|
||||
RightShift = 1038, |
||||
Up = 1041, |
||||
Num1 = 1043, |
||||
Num2 = 1044, |
||||
Num3 = 1045, |
||||
Macro5 = 1280, |
||||
LeftControl = 1281, |
||||
LeftWindows = 1282, |
||||
LeftAlt = 1283, |
||||
|
||||
//Jpn3 = 1284, |
||||
//Kor5 = 1284, |
||||
|
||||
Space = 1287, |
||||
|
||||
//Jpn4 = 1289, |
||||
//Kor6 = 1289, |
||||
//Jpn5 = 1290, |
||||
//Kor7 = 1290, |
||||
|
||||
RightAlt = 1292, |
||||
Function = 1293, |
||||
RightMenu = 1294, |
||||
RightControl = 1295, |
||||
Left = 1296, |
||||
Down = 1297, |
||||
Right = 1298, |
||||
Num0 = 1300, |
||||
NumDecimal = 1301, |
||||
NumEnter = 1302, |
||||
Logo = 1548, |
||||
Invalid = 65535 |
||||
} |
||||
} |
@ -0,0 +1,50 @@
@@ -0,0 +1,50 @@
|
||||
using Colore; |
||||
using Colore.Data; |
||||
using Colore.Effects.Keyboard; |
||||
using System; |
||||
using System.Threading; |
||||
|
||||
namespace ChromaEffectsImporter |
||||
{ |
||||
internal class ColoreOutput |
||||
{ |
||||
private IChroma chroma; |
||||
|
||||
private string ChromaEffectPath; |
||||
|
||||
public ColoreOutput(string chromaEffectPath) |
||||
{ |
||||
ChromaEffectPath = chromaEffectPath; |
||||
} |
||||
|
||||
public void Start() |
||||
{ |
||||
Setup(); |
||||
LoadChromaEffect(ChromaEffectPath); |
||||
Thread.Sleep(1000); |
||||
chroma.Keyboard.SetKeyAsync(Key.End, Color.Red, false); |
||||
Loop(); |
||||
} |
||||
|
||||
private void LoadChromaEffect(string path) |
||||
{ |
||||
ChromaEffectsReader reader = new ChromaEffectsReader(); |
||||
EffectRegion[] regions = reader.ReadFirstStatic(path); |
||||
Array.ForEach(regions, x => x.Show(chroma)); |
||||
} |
||||
|
||||
private async void Setup() |
||||
{ |
||||
chroma = await ColoreProvider.CreateNativeAsync(); |
||||
} |
||||
|
||||
private void Loop() |
||||
{ |
||||
while (true) |
||||
{ |
||||
Thread.Sleep(100); |
||||
} |
||||
chroma.UninitializeAsync(); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,30 @@
@@ -0,0 +1,30 @@
|
||||
using Colore; |
||||
using Colore.Data; |
||||
using Colore.Effects.Keyboard; |
||||
using System; |
||||
|
||||
namespace ChromaEffectsImporter |
||||
{ |
||||
internal class EffectRegion |
||||
{ |
||||
public Key[] Keys { get; private set; } |
||||
public Color Color { get; private set; } |
||||
|
||||
public EffectRegion(Key[] keys, Color color) |
||||
{ |
||||
Keys = keys; |
||||
Color = color; |
||||
} |
||||
|
||||
public EffectRegion(Key keys, Color color) |
||||
{ |
||||
Keys = new Key[] { keys }; |
||||
Color = color; |
||||
} |
||||
|
||||
internal void Show(IChroma chroma) |
||||
{ |
||||
Array.ForEach(Keys, x => chroma.Keyboard.SetKeyAsync(x, Color, false)); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,20 @@
@@ -0,0 +1,20 @@
|
||||
using System; |
||||
using System.IO; |
||||
|
||||
namespace ChromaEffectsImporter |
||||
{ |
||||
internal class Program |
||||
{ |
||||
private static void Main(string[] args) |
||||
{ |
||||
ColoreOutput coloreOutput = new ColoreOutput(ChromaEffects()); |
||||
coloreOutput.Start(); |
||||
} |
||||
|
||||
private static string ChromaEffects() |
||||
{ |
||||
string root = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..\\..\\")); |
||||
return Path.Combine(root, "Resources\\ChromaEffects.xml"); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,35 @@
@@ -0,0 +1,35 @@
|
||||
using System.Reflection; |
||||
using System.Runtime.InteropServices; |
||||
|
||||
// General Information about an assembly is controlled through the following |
||||
// set of attributes. Change these attribute values to modify the information |
||||
// associated with an assembly. |
||||
[assembly: AssemblyTitle("ChromaEffectsImporter")] |
||||
[assembly: AssemblyDescription("")] |
||||
[assembly: AssemblyConfiguration("")] |
||||
[assembly: AssemblyCompany("")] |
||||
[assembly: AssemblyProduct("ChromaEffectsImporter")] |
||||
[assembly: AssemblyCopyright("Copyright © 2020")] |
||||
[assembly: AssemblyTrademark("")] |
||||
[assembly: AssemblyCulture("")] |
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible |
||||
// to COM components. If you need to access a type in this assembly from |
||||
// COM, set the ComVisible attribute to true on that type. |
||||
[assembly: ComVisible(false)] |
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM |
||||
[assembly: Guid("e3050745-702e-4143-a41d-fd549c8c46f9")] |
||||
|
||||
// Version information for an assembly consists of the following four values: |
||||
// |
||||
// Major Version |
||||
// Minor Version |
||||
// Build Number |
||||
// Revision |
||||
// |
||||
// You can specify all the values or you can default the Build and Revision Numbers |
||||
// by using the '*' as shown below: |
||||
// [assembly: AssemblyVersion("1.0.*")] |
||||
[assembly: AssemblyVersion("1.0.0.0")] |
||||
[assembly: AssemblyFileVersion("1.0.0.0")] |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,11 @@
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?> |
||||
<packages> |
||||
<package id="Colore" version="6.0.0-rc0005" targetFramework="net472" /> |
||||
<package id="JetBrains.Annotations" version="11.1.0" targetFramework="net472" /> |
||||
<package id="Microsoft.Bcl" version="1.1.10" targetFramework="net472" /> |
||||
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net472" /> |
||||
<package id="Microsoft.Net.Http" version="2.2.29" targetFramework="net472" /> |
||||
<package id="Newtonsoft.Json" version="10.0.3" targetFramework="net472" /> |
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net472" /> |
||||
<package id="System.ValueTuple" version="4.4.0" targetFramework="net472" /> |
||||
</packages> |
Loading…
Reference in new issue