diff --git a/DS4Windows/DS4Control/ScpUtil.cs b/DS4Windows/DS4Control/ScpUtil.cs
index e349a00..32d93b2 100644
--- a/DS4Windows/DS4Control/ScpUtil.cs
+++ b/DS4Windows/DS4Control/ScpUtil.cs
@@ -421,7 +421,7 @@ namespace DS4Windows
[DS4Controls.GyroXPos] = "Gyro X+",
[DS4Controls.GyroXNeg] = "Gyro X-",
[DS4Controls.GyroZPos] = "Gyro Z+",
- [DS4Controls.GyroZNeg] = "Gyro Z+-",
+ [DS4Controls.GyroZNeg] = "Gyro Z-",
[DS4Controls.SwipeLeft] = "Swipe Left",
[DS4Controls.SwipeRight] = "Swipe Right",
[DS4Controls.SwipeUp] = "Swipe Up",
diff --git a/DS4Windows/DS4Forms/BindingWindow.xaml b/DS4Windows/DS4Forms/BindingWindow.xaml
index d6c5301..9827ab8 100644
--- a/DS4Windows/DS4Forms/BindingWindow.xaml
+++ b/DS4Windows/DS4Forms/BindingWindow.xaml
@@ -25,12 +25,14 @@
-
+
-
+
@@ -52,12 +54,14 @@
-
+
-
+
diff --git a/DS4Windows/DS4Forms/BindingWindow.xaml.cs b/DS4Windows/DS4Forms/BindingWindow.xaml.cs
index 7f18c48..3304c1b 100644
--- a/DS4Windows/DS4Forms/BindingWindow.xaml.cs
+++ b/DS4Windows/DS4Forms/BindingWindow.xaml.cs
@@ -488,7 +488,7 @@ namespace DS4WinWPF.DS4Forms
new BindAssociation() { outputType = BindAssociation.OutType.Key, outkey = 0x52 });
rKey.Click += OutputKeyBtn_Click;
associatedBindings.Add(tKey,
- new BindAssociation() { outputType = BindAssociation.OutType.Key, outkey = 0x55 });
+ new BindAssociation() { outputType = BindAssociation.OutType.Key, outkey = 0x54 });
tKey.Click += OutputKeyBtn_Click;
associatedBindings.Add(yKey,
new BindAssociation() { outputType = BindAssociation.OutType.Key, outkey = 0x59 });
diff --git a/DS4Windows/DS4Forms/MainWindow.xaml.cs b/DS4Windows/DS4Forms/MainWindow.xaml.cs
index be6db00..21bfcd4 100644
--- a/DS4Windows/DS4Forms/MainWindow.xaml.cs
+++ b/DS4Windows/DS4Forms/MainWindow.xaml.cs
@@ -1213,6 +1213,7 @@ Properties.Resources.DS4Update, MessageBoxButton.YesNo, MessageBoxImage.Question
private void NotifyIcon_TrayMiddleMouseDown(object sender, RoutedEventArgs e)
{
+ contextclose = true;
Close();
}
@@ -1283,6 +1284,11 @@ Properties.Resources.DS4Update, MessageBoxButton.YesNo, MessageBoxImage.Question
private void Editor_CreatedProfile(ProfileEditor sender, string profile)
{
profileListHolder.AddProfileSort(profile);
+ int devnum = sender.DeviceNum;
+ if (devnum >= 0 && devnum+1 <= conLvViewModel.ControllerCol.Count)
+ {
+ conLvViewModel.ControllerCol[devnum].ChangeSelectedProfile(profile);
+ }
}
private void NotifyIcon_TrayMouseDoubleClick(object sender, RoutedEventArgs e)
diff --git a/DS4Windows/DS4Forms/ProfileEditor.xaml b/DS4Windows/DS4Forms/ProfileEditor.xaml
index 45ee8ad..61bb2eb 100644
--- a/DS4Windows/DS4Forms/ProfileEditor.xaml
+++ b/DS4Windows/DS4Forms/ProfileEditor.xaml
@@ -100,7 +100,7 @@
-
@@ -620,7 +620,8 @@
-
+
@@ -648,7 +649,7 @@
-
@@ -672,23 +673,23 @@
-
+
-
+
-
-
+
+
-
-
+
+
@@ -769,7 +770,7 @@
+ Minimum="0" Maximum="400" Increment="10" />
@@ -872,7 +873,8 @@
-
+
@@ -934,7 +936,8 @@
-
+
diff --git a/DS4Windows/DS4Forms/ProfileEditor.xaml.cs b/DS4Windows/DS4Forms/ProfileEditor.xaml.cs
index 8fb8448..3c714fd 100644
--- a/DS4Windows/DS4Forms/ProfileEditor.xaml.cs
+++ b/DS4Windows/DS4Forms/ProfileEditor.xaml.cs
@@ -52,6 +52,7 @@ namespace DS4WinWPF.DS4Forms
private bool keepsize;
private bool controllerReadingsTabActive = false;
public bool Keepsize { get => keepsize; }
+ public int DeviceNum { get => deviceNum; }
private NonFormTimer inputTimer;
@@ -1242,5 +1243,17 @@ namespace DS4WinWPF.DS4Forms
conReadingsUserCon.EnableControl(false);
}
}
+
+ private void TiltControlsButton_Click(object sender, RoutedEventArgs e)
+ {
+ Button btn = sender as Button;
+ DS4Controls control = (DS4Controls)Convert.ToInt32(btn.Tag);
+ MappedControl mpControl = mappingListVM.ControlMap[control];
+ BindingWindow window = new BindingWindow(deviceNum, mpControl.Setting);
+ window.Owner = App.Current.MainWindow;
+ window.ShowDialog();
+ mpControl.UpdateMappingName();
+ UpdateHighlightLabel(mpControl);
+ }
}
}
diff --git a/DS4Windows/DS4Forms/ViewModels/MappingListViewModel.cs b/DS4Windows/DS4Forms/ViewModels/MappingListViewModel.cs
index 89f6b9f..81d5d3d 100644
--- a/DS4Windows/DS4Forms/ViewModels/MappingListViewModel.cs
+++ b/DS4Windows/DS4Forms/ViewModels/MappingListViewModel.cs
@@ -67,8 +67,8 @@ namespace DS4WinWPF.DS4Forms.ViewModels
mappings.Add(new MappedControl(devIndex, DS4Controls.GyroZNeg, "Tilt Up", devType));
mappings.Add(new MappedControl(devIndex, DS4Controls.GyroZPos, "Tilt Down", devType));
- mappings.Add(new MappedControl(devIndex, DS4Controls.GyroXNeg, "Tilt Left", devType));
- mappings.Add(new MappedControl(devIndex, DS4Controls.GyroXPos, "Tilt Right", devType));
+ mappings.Add(new MappedControl(devIndex, DS4Controls.GyroXPos, "Tilt Left", devType));
+ mappings.Add(new MappedControl(devIndex, DS4Controls.GyroXNeg, "Tilt Right", devType));
mappings.Add(new MappedControl(devIndex, DS4Controls.SwipeUp, "Swipe Up", devType));
mappings.Add(new MappedControl(devIndex, DS4Controls.SwipeDown, "Swipe Down", devType));
diff --git a/DS4Windows/DS4Forms/ViewModels/ProfileSettingsViewModel.cs b/DS4Windows/DS4Forms/ViewModels/ProfileSettingsViewModel.cs
index 9587918..5e2e153 100644
--- a/DS4Windows/DS4Forms/ViewModels/ProfileSettingsViewModel.cs
+++ b/DS4Windows/DS4Forms/ViewModels/ProfileSettingsViewModel.cs
@@ -20,6 +20,36 @@ namespace DS4WinWPF.DS4Forms.ViewModels
private int funcDevNum;
public int FuncDevNum { get => funcDevNum; }
+ private ImageBrush lightbarImgBrush = new ImageBrush();
+ private SolidColorBrush lightbarColBrush = new SolidColorBrush();
+
+ public System.Windows.Media.Brush LightbarBrush
+ {
+ get
+ {
+ System.Windows.Media.Brush tempBrush;
+ ref DS4Color color = ref Global.MainColor[device];
+ if (!RainbowExists)
+ {
+ lightbarColBrush.Color = new System.Windows.Media.Color()
+ {
+ A = 255,
+ R = color.red,
+ G = color.green,
+ B = color.blue
+ };
+ tempBrush = lightbarColBrush as System.Windows.Media.Brush;
+ }
+ else
+ {
+ tempBrush = lightbarImgBrush as System.Windows.Media.Brush;
+ }
+
+ return tempBrush;
+ }
+ }
+ public event EventHandler LightbarBrushChanged;
+
public System.Windows.Media.Color MainColor
{
get
@@ -1372,21 +1402,34 @@ namespace DS4WinWPF.DS4Forms.ViewModels
Global.outDevTypeTemp[device] = OutContType.X360;
tempBtPollRate = Global.BTPollRate[device];
+ ImageSourceConverter sourceConverter = new ImageSourceConverter();
+ ImageSource temp = sourceConverter.
+ ConvertFromString("pack://application:,,,/DS4Windows;component/Resources/rainbowCCrop.png") as ImageSource;
+ lightbarImgBrush.ImageSource = temp.Clone();
+
MainColorChanged += ProfileSettingsViewModel_MainColorChanged;
MainColorRChanged += (sender, args) =>
{
MainColorRStringChanged?.Invoke(this, EventArgs.Empty);
MainColorStringChanged?.Invoke(this, EventArgs.Empty);
+ LightbarBrushChanged?.Invoke(this, EventArgs.Empty);
};
MainColorGChanged += (sender, args) =>
{
MainColorGStringChanged?.Invoke(this, EventArgs.Empty);
MainColorStringChanged?.Invoke(this, EventArgs.Empty);
+ LightbarBrushChanged?.Invoke(this, EventArgs.Empty);
};
MainColorBChanged += (sender, args) =>
{
MainColorBStringChanged?.Invoke(this, EventArgs.Empty);
MainColorStringChanged?.Invoke(this, EventArgs.Empty);
+ LightbarBrushChanged?.Invoke(this, EventArgs.Empty);
+ };
+
+ RainbowChanged += (sender, args) =>
+ {
+ LightbarBrushChanged?.Invoke(this, EventArgs.Empty);
};
}
@@ -1396,6 +1439,7 @@ namespace DS4WinWPF.DS4Forms.ViewModels
MainColorRChanged?.Invoke(this, EventArgs.Empty);
MainColorGChanged?.Invoke(this, EventArgs.Empty);
MainColorBChanged?.Invoke(this, EventArgs.Empty);
+ LightbarBrushChanged?.Invoke(this, EventArgs.Empty);
}
public void UpdateFlashColor(System.Windows.Media.Color color)
diff --git a/DS4Windows/DS4WinWPF.csproj b/DS4Windows/DS4WinWPF.csproj
index 0501d8e..6843a66 100644
--- a/DS4Windows/DS4WinWPF.csproj
+++ b/DS4Windows/DS4WinWPF.csproj
@@ -410,6 +410,8 @@
PreserveNewest
+
+
diff --git a/DS4Windows/Properties/AssemblyInfo.cs b/DS4Windows/Properties/AssemblyInfo.cs
index 7553a03..eb9cd26 100644
--- a/DS4Windows/Properties/AssemblyInfo.cs
+++ b/DS4Windows/Properties/AssemblyInfo.cs
@@ -51,7 +51,7 @@ using System.Windows;
// 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.9.2")]
-[assembly: AssemblyFileVersion("1.9.2")]
+[assembly: AssemblyVersion("2.0.0")]
+[assembly: AssemblyFileVersion("2.0.0")]
[assembly: NeutralResourcesLanguage("")]
[assembly: Guid("a52b5b20-d9ee-4f32-8518-307fa14aa0c6")]
diff --git a/DS4Windows/Resources/rainbowCCrop.png b/DS4Windows/Resources/rainbowCCrop.png
new file mode 100644
index 0000000..38e581e
Binary files /dev/null and b/DS4Windows/Resources/rainbowCCrop.png differ
diff --git a/DS4Windows/newest.txt b/DS4Windows/newest.txt
index c5c40e9..227cea2 100644
--- a/DS4Windows/newest.txt
+++ b/DS4Windows/newest.txt
@@ -1 +1 @@
-1.7.28
+2.0.0
diff --git a/README.md b/README.md
index 93779cc..034cd2d 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,7 @@ website at [ds4windows.com](http://ds4windows.com).
- Windows 7 SP1 or newer
- [Microsoft .NET 4.6.2 or higher (needed to unzip the driver and for macros to
work properly)](https://www.microsoft.com/en-us/download/details.aspx?id=53344)
-- Visual C++ 2017 Redistributable. [x64](https://aka.ms/vs/15/release/vc_redist.x64.exe) or [x86](https://aka.ms/vs/15/release/vc_redist.x86.exe)
+- Visual C++ 2015-2019 Redistributable. [x64](https://aka.ms/vs/16/release/vc_redist.x64.exe) or [x86](https://aka.ms/vs/16/release/vc_redist.x86.exe)
- ViGEmBus driver (DS4Windows will install it for you)
- Microsoft 360 Driver (link inside DS4Windows, already installed by Windows if
you've used a 360 controller before)