diff --git a/.gitmodules b/.gitmodules
index f8fc18f50..61cd5ad6d 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,6 @@
[submodule "SBAuroraR.NET"]
path = SBAuroraR.NET
- url = https://github.com/rajkosto/SBAuroraR.NET.git
\ No newline at end of file
+ url = https://github.com/rajkosto/SBAuroraR.NET.git
+[submodule "SteelSeriesServer"]
+ path = SteelSeriesServer
+ url = https://github.com/gyorokpeter/SteelSeriesServer.git
diff --git a/Project-Aurora/Aurora-Updater/Aurora-Updater.csproj b/Project-Aurora/Aurora-Updater/Aurora-Updater.csproj
index c45859826..38e59b0da 100644
--- a/Project-Aurora/Aurora-Updater/Aurora-Updater.csproj
+++ b/Project-Aurora/Aurora-Updater/Aurora-Updater.csproj
@@ -63,7 +63,7 @@
- 12.0.3
+ 13.0.1
0.47.0
diff --git a/Project-Aurora/Project-Aurora.sln b/Project-Aurora/Project-Aurora.sln
index 266392fd6..820a9d978 100644
--- a/Project-Aurora/Project-Aurora.sln
+++ b/Project-Aurora/Project-Aurora.sln
@@ -7,6 +7,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Project-Aurora", "Project-A
{A759300D-9550-47BA-8616-C24B6BC05A02} = {A759300D-9550-47BA-8616-C24B6BC05A02}
{40085232-ACED-4CBE-945B-90BA8153C151} = {40085232-ACED-4CBE-945B-90BA8153C151}
{004D1E3E-F20E-4ECA-ABB1-467D1CE2C173} = {004D1E3E-F20E-4ECA-ABB1-467D1CE2C173}
+ {87555B4B-E379-4ACC-9899-CAD4CCA227CA} = {87555B4B-E379-4ACC-9899-CAD4CCA227CA}
{20259BE1-55C9-4EFB-9D30-C933F621B9D4} = {20259BE1-55C9-4EFB-9D30-C933F621B9D4}
EndProjectSection
EndProject
@@ -27,6 +28,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Plugin-Example", "Plugin-Ex
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SBAuroraReactive", "..\SBAuroraR.NET\SBAuroraReactive\SBAuroraReactive.vcxproj", "{053A704B-5C79-4CDE-B1FC-B952051ACAA0}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SteelSeriesServer", "..\SteelSeriesServer\SteelSeriesServer.csproj", "{87555B4B-E379-4ACC-9899-CAD4CCA227CA}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
@@ -65,6 +68,10 @@ Global
{053A704B-5C79-4CDE-B1FC-B952051ACAA0}.Debug|x64.Build.0 = Debug|x64
{053A704B-5C79-4CDE-B1FC-B952051ACAA0}.Release|x64.ActiveCfg = Release|x64
{053A704B-5C79-4CDE-B1FC-B952051ACAA0}.Release|x64.Build.0 = Release|x64
+ {87555B4B-E379-4ACC-9899-CAD4CCA227CA}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {87555B4B-E379-4ACC-9899-CAD4CCA227CA}.Debug|x64.Build.0 = Debug|Any CPU
+ {87555B4B-E379-4ACC-9899-CAD4CCA227CA}.Release|x64.ActiveCfg = Release|Any CPU
+ {87555B4B-E379-4ACC-9899-CAD4CCA227CA}.Release|x64.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Project-Aurora/Project-Aurora/ConfigUI.xaml.cs b/Project-Aurora/Project-Aurora/ConfigUI.xaml.cs
index 01133260d..0a5855ace 100755
--- a/Project-Aurora/Project-Aurora/ConfigUI.xaml.cs
+++ b/Project-Aurora/Project-Aurora/ConfigUI.xaml.cs
@@ -133,6 +133,12 @@ private void CtrlLayerManager_ProfileOverviewRequest(UserControl profile_control
SelectedControl = profile_control;
}
+ internal void GoToSteelSeriesPage()
+ {
+ DesktopControl_MouseLeftButtonDown(null, null);
+ settingsControl.tabMain.SelectedIndex = settingsControl.tabMain.Items.IndexOf(settingsControl.devicesAndWrappersPage);
+ }
+
private void Layer_manager_NewLayer(Layer layer)
{
layerPresenter.Layer = layer;
diff --git a/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/CardaclysmApplication.cs b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/CardaclysmApplication.cs
new file mode 100644
index 000000000..ccf0836cf
--- /dev/null
+++ b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/CardaclysmApplication.cs
@@ -0,0 +1,21 @@
+using Aurora.Settings.Layers;
+
+namespace Aurora.Profiles.Cardaclysm
+{
+ public class Cardaclysm : Application
+ {
+ public Cardaclysm() : base(new LightEventConfig {
+ Name = "Cardaclysm",
+ ID = "Cardaclysm",
+ ProcessNames = new[] { "cardaclysm.exe" },
+ ProfileType = typeof(WrapperProfile),
+ OverviewControlType = typeof(Control_Cardaclysm),
+ GameStateType = typeof(GameState_Wrapper),
+ Event = new GameEvent_Generic(),
+ IconURI = "Resources/cardaclysm_64x64.png"
+ })
+ {
+ AllowLayer();
+ }
+ }
+}
diff --git a/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml
new file mode 100644
index 000000000..098eb05c0
--- /dev/null
+++ b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml.cs b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml.cs
new file mode 100644
index 000000000..6647c6f15
--- /dev/null
+++ b/Project-Aurora/Project-Aurora/Profiles/Cardaclysm/Control_Cardaclysm.xaml.cs
@@ -0,0 +1,45 @@
+using Aurora.Settings;
+using System;
+using System.IO;
+using System.Windows;
+using System.Windows.Controls;
+
+namespace Aurora.Profiles.Cardaclysm
+{
+ ///
+ /// Interaction logic for Control_Cardaclysm.xaml
+ ///
+ public partial class Control_Cardaclysm : UserControl
+ {
+ private Application profile_manager;
+
+ public Control_Cardaclysm(Application profile)
+ {
+ InitializeComponent();
+
+ profile_manager = profile;
+
+ SetSettings();
+ }
+
+ private void SetSettings()
+ {
+ this.game_enabled.IsChecked = profile_manager.Settings.IsEnabled;
+ }
+
+ private void game_enabled_Checked(object sender, RoutedEventArgs e)
+ {
+ if (IsLoaded)
+ {
+ profile_manager.Settings.IsEnabled = (this.game_enabled.IsChecked.HasValue) ? this.game_enabled.IsChecked.Value : false;
+ profile_manager.SaveProfiles();
+ }
+ }
+
+ private void go_to_steelseries_Click(object sender, RoutedEventArgs e)
+ {
+ var mainWindow = (ConfigUI)System.Windows.Application.Current.MainWindow;
+ mainWindow.GoToSteelSeriesPage();
+ }
+ }
+}
diff --git a/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml b/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml
index 203641ded..18c2cae80 100644
--- a/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml
+++ b/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml
@@ -13,12 +13,15 @@
-
+
+
+
+
diff --git a/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml.cs b/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml.cs
index f8ffa6e6a..d416a828a 100644
--- a/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml.cs
+++ b/Project-Aurora/Project-Aurora/Profiles/Factorio/Control_Factorio.xaml.cs
@@ -7,7 +7,7 @@
namespace Aurora.Profiles.Factorio
{
///
- /// Interaction logic for Control_Overwatch.xaml
+ /// Interaction logic for Control_Factorio.xaml
///
public partial class Control_Factorio : UserControl
{
@@ -115,5 +115,11 @@ private void game_enabled_Checked(object sender, RoutedEventArgs e)
profile_manager.SaveProfiles();
}
}
+
+ private void go_to_steelseries_Click(object sender, RoutedEventArgs e)
+ {
+ var mainWindow = (ConfigUI)System.Windows.Application.Current.MainWindow;
+ mainWindow.GoToSteelSeriesPage();
+ }
}
}
diff --git a/Project-Aurora/Project-Aurora/Project-Aurora.csproj b/Project-Aurora/Project-Aurora/Project-Aurora.csproj
index 4eb5f120d..900eb7d4c 100644
--- a/Project-Aurora/Project-Aurora/Project-Aurora.csproj
+++ b/Project-Aurora/Project-Aurora/Project-Aurora.csproj
@@ -1,4 +1,4 @@
-
+
net48
@@ -72,7 +72,7 @@
-
+
@@ -95,6 +95,7 @@
false
+
diff --git a/Project-Aurora/Project-Aurora/Properties/Resources.Designer.cs b/Project-Aurora/Project-Aurora/Properties/Resources.Designer.cs
index 960ee1d36..be9831c0f 100644
--- a/Project-Aurora/Project-Aurora/Properties/Resources.Designer.cs
+++ b/Project-Aurora/Project-Aurora/Properties/Resources.Designer.cs
@@ -170,6 +170,16 @@ internal static System.Drawing.Bitmap Borderlands2_256x256 {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap cardaclysm_64x64 {
+ get {
+ object obj = ResourceManager.GetObject("cardaclysm_64x64", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
diff --git a/Project-Aurora/Project-Aurora/Properties/Resources.resx b/Project-Aurora/Project-Aurora/Properties/Resources.resx
index 212d719d8..40494704c 100755
--- a/Project-Aurora/Project-Aurora/Properties/Resources.resx
+++ b/Project-Aurora/Project-Aurora/Properties/Resources.resx
@@ -289,4 +289,7 @@
..\Resources\icons8-folder-30.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\resources\cardaclysm_64x64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
\ No newline at end of file
diff --git a/Project-Aurora/Project-Aurora/Resources/cardaclysm_64x64.png b/Project-Aurora/Project-Aurora/Resources/cardaclysm_64x64.png
new file mode 100644
index 000000000..481172efd
Binary files /dev/null and b/Project-Aurora/Project-Aurora/Resources/cardaclysm_64x64.png differ
diff --git a/Project-Aurora/Project-Aurora/Settings/Configuration.cs b/Project-Aurora/Project-Aurora/Settings/Configuration.cs
index 9c87116e2..a13a63162 100755
--- a/Project-Aurora/Project-Aurora/Settings/Configuration.cs
+++ b/Project-Aurora/Project-Aurora/Settings/Configuration.cs
@@ -456,6 +456,7 @@ public class Configuration : INotifyPropertyChanged
[JsonProperty("allow_peripheral_devices")] public bool AllowPeripheralDevices { get; set; } = true;
[JsonProperty("allow_wrappers_in_background")] public bool AllowWrappersInBackground { get; set; } = true;
[JsonProperty("allow_all_logitech_bitmaps")] public bool AllowAllLogitechBitmaps { get; set; } = true;
+ [JsonProperty("auto_start_steelseries_server")] public bool AutoStartSteelSeriesServer { get; set; } = false;
[JsonProperty("use_volume_as_brightness")] public bool UseVolumeAsBrightness { get; set; } = false;
[JsonProperty("global_brightness")] public float GlobalBrightness { get; set; } = 1.0f;
diff --git a/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml b/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml
index eae654cf1..dbce5d37f 100755
--- a/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml
+++ b/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml
@@ -124,7 +124,7 @@
-
+
@@ -201,10 +201,16 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml.cs b/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml.cs
index e3e684fea..30f8a69e8 100755
--- a/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml.cs
+++ b/Project-Aurora/Project-Aurora/Settings/Control_Settings.xaml.cs
@@ -21,6 +21,7 @@
using Aurora.Devices.Asus.Config;
using Aurora.Utils;
using System.Globalization;
+using SteelSeriesServer;
namespace Aurora.Settings
{
@@ -31,6 +32,7 @@ public partial class Control_Settings : UserControl
{
private RegistryKey runRegistryPath = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
private const string StartupTaskID = "AuroraStartup";
+ private SteelSeriesServer.SteelSeriesServer steelSeriesServer;
public Control_Settings()
{
@@ -93,6 +95,8 @@ public Control_Settings()
this.razer_wrapper_installed_version_label.Content = rzVersion.ToString();
this.razer_wrapper_installed_version_label.Foreground = new SolidColorBrush(RzHelper.IsSdkVersionSupported(rzVersion) ? Colors.LightGreen : Colors.PaleVioletRed);
this.razer_wrapper_supported_versions_label.Content = $"[{RzHelper.SupportedFromVersion}-{RzHelper.SupportedToVersion}]";
+ if (auto_start_steelseries_server.IsChecked == true)
+ StartSteelSeriesServer();
if (rzVersion == new RzSdkVersion())
this.razer_wrapper_uninstall_button.Visibility = Visibility.Hidden;
@@ -453,5 +457,29 @@ private void btnDumpSensors_Click(object sender, RoutedEventArgs e)
else
System.Windows.MessageBox.Show("Error dumping file. Consult log for details.");
}
+
+ private void StartSteelSeriesServer()
+ {
+ if (steelSeriesServer == null)
+ {
+ AuroraSender auroraSender = new AuroraSender();
+ steelSeriesServer = new SteelSeriesServer.SteelSeriesServer(auroraSender);
+ steelSeriesServer.Start();
+ }
+ }
+
+ private void wrapper_install_steelseries_Click(object sender, RoutedEventArgs e)
+ {
+ StartSteelSeriesServer();
+ }
+
+ private void wrapper_uninstall_steelseries_Click(object sender, RoutedEventArgs e)
+ {
+ if (steelSeriesServer != null)
+ {
+ steelSeriesServer.Stop();
+ steelSeriesServer = null;
+ }
+ }
}
}
diff --git a/SteelSeriesServer b/SteelSeriesServer
new file mode 160000
index 000000000..f7442dfcb
--- /dev/null
+++ b/SteelSeriesServer
@@ -0,0 +1 @@
+Subproject commit f7442dfcbeed365ac560c4946accc81a2b0fd965