2014-03-28 02:50:40 +01:00
|
|
|
|
using System;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
using System.Runtime.InteropServices;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
using System.IO;
|
|
|
|
|
using System.Reflection;
|
|
|
|
|
using System.Collections.Generic;
|
2014-05-14 09:12:15 +02:00
|
|
|
|
using System.Net;
|
2014-05-21 07:36:05 +02:00
|
|
|
|
using System.Management;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
using System.Drawing;
|
2014-05-21 19:39:56 +02:00
|
|
|
|
using Microsoft.Win32;
|
2014-05-28 21:47:25 +02:00
|
|
|
|
using System.Diagnostics;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
using System.Xml;
|
2014-06-09 01:41:36 +02:00
|
|
|
|
using System.Text;
|
2014-06-26 20:02:01 +02:00
|
|
|
|
using System.Globalization;
|
2014-11-20 20:03:18 +01:00
|
|
|
|
using System.Threading.Tasks;
|
2014-12-17 19:29:22 +01:00
|
|
|
|
using System.ServiceProcess;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
using static DS4Windows.Global;
|
2014-11-18 22:23:41 +01:00
|
|
|
|
namespace DS4Windows
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-11-14 20:44:50 +01:00
|
|
|
|
public partial class DS4Form : Form
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-10-13 23:56:04 +02:00
|
|
|
|
public string[] arguements;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
delegate void LogDebugDelegate(DateTime Time, String Data, bool warning);
|
2014-05-30 22:39:39 +02:00
|
|
|
|
protected Label[] Pads, Batteries;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
protected ComboBox[] cbs;
|
|
|
|
|
protected Button[] ebns;
|
2015-11-28 06:47:26 +01:00
|
|
|
|
protected Button[] lights;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
protected PictureBox[] statPB;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
protected ToolStripMenuItem[] shortcuts;
|
2014-05-14 09:12:15 +02:00
|
|
|
|
WebClient wc = new WebClient();
|
2014-11-18 22:23:41 +01:00
|
|
|
|
Timer test = new Timer(), hotkeysTimer = new Timer();
|
2014-06-06 22:38:52 +02:00
|
|
|
|
string exepath = Directory.GetParent(Assembly.GetExecutingAssembly().Location).FullName;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string appDataPpath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\DS4Windows";
|
2014-12-02 01:07:29 +01:00
|
|
|
|
string oldappdatapath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\DS4Tool";
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
string tempProfileProgram = "null";
|
2014-06-06 22:38:52 +02:00
|
|
|
|
float dpix, dpiy;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
List<string> profilenames = new List<string>();
|
2014-06-06 22:38:52 +02:00
|
|
|
|
List<string> programpaths = new List<string>();
|
|
|
|
|
List<string>[] proprofiles;
|
|
|
|
|
private static int WM_QUERYENDSESSION = 0x11;
|
|
|
|
|
private static bool systemShutdown = false;
|
2014-08-23 22:52:20 +02:00
|
|
|
|
private bool wasrunning = false;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
delegate void ControllerStatusChangedDelegate(object sender, EventArgs e);
|
|
|
|
|
delegate void HotKeysDelegate(object sender, EventArgs e);
|
|
|
|
|
Options opt;
|
2015-11-30 22:15:17 +01:00
|
|
|
|
public System.Drawing.Size oldsize;
|
2014-06-09 01:41:36 +02:00
|
|
|
|
WinProgs WP;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
public bool mAllowVisible;
|
|
|
|
|
bool contextclose;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string logFile = appdatapath + @"\DS4Service.log";
|
2014-12-17 19:29:22 +01:00
|
|
|
|
StreamWriter logWriter;
|
2015-08-13 05:53:43 +02:00
|
|
|
|
bool runningBat;
|
2014-12-17 19:29:22 +01:00
|
|
|
|
//bool outputlog = false;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
|
2014-06-09 01:41:36 +02:00
|
|
|
|
[DllImport("user32.dll")]
|
|
|
|
|
private static extern IntPtr GetForegroundWindow();
|
|
|
|
|
|
|
|
|
|
[DllImport("user32.dll")]
|
|
|
|
|
private static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint lpdwProcessId);
|
|
|
|
|
|
|
|
|
|
[DllImport("kernel32.dll")]
|
|
|
|
|
private static extern IntPtr OpenProcess(uint dwDesiredAccess, bool bInheritHandle, uint dwProcessId);
|
|
|
|
|
|
|
|
|
|
[DllImport("kernel32.dll")]
|
|
|
|
|
private static extern bool CloseHandle(IntPtr handle);
|
|
|
|
|
|
|
|
|
|
[DllImport("psapi.dll")]
|
|
|
|
|
private static extern uint GetModuleBaseName(IntPtr hWnd, IntPtr hModule, StringBuilder lpFileName, int nSize);
|
|
|
|
|
|
|
|
|
|
[DllImport("psapi.dll")]
|
|
|
|
|
private static extern uint GetModuleFileNameEx(IntPtr hWnd, IntPtr hModule, StringBuilder lpFileName, int nSize);
|
|
|
|
|
|
2014-11-14 20:44:50 +01:00
|
|
|
|
public DS4Form(string[] args)
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
2015-11-28 06:47:26 +01:00
|
|
|
|
//System.Threading.Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("pl");
|
2014-05-30 22:39:39 +02:00
|
|
|
|
InitializeComponent();
|
2015-11-28 06:47:26 +01:00
|
|
|
|
saveProfiles.Filter = Properties.Resources.XMLFiles + "|*.xml";
|
|
|
|
|
openProfiles.Filter = Properties.Resources.XMLFiles + "|*.xml";
|
2014-10-13 23:56:04 +02:00
|
|
|
|
arguements = args;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
ThemeUtil.SetTheme(lvDebug);
|
2014-11-20 20:03:18 +01:00
|
|
|
|
Pads = new Label[4] { lbPad1, lbPad2, lbPad3, lbPad4 };
|
2015-02-08 22:51:52 +01:00
|
|
|
|
Batteries = new Label[4] { lbBatt1, lbBatt2, lbBatt3, lbBatt4 };
|
2014-11-20 20:03:18 +01:00
|
|
|
|
cbs = new ComboBox[4] { cBController1, cBController2, cBController3, cBController4 };
|
|
|
|
|
ebns = new Button[4] { bnEditC1, bnEditC2, bnEditC3, bnEditC4 };
|
2015-11-28 06:47:26 +01:00
|
|
|
|
lights = new Button[4] { bnLight1, bnLight2, bnLight3, bnLight4 };
|
2014-11-20 20:03:18 +01:00
|
|
|
|
statPB = new PictureBox[4] { pBStatus1, pBStatus2, pBStatus3, pBStatus4 };
|
|
|
|
|
shortcuts = new ToolStripMenuItem[4] { (ToolStripMenuItem)notifyIcon1.ContextMenuStrip.Items[0],
|
|
|
|
|
(ToolStripMenuItem)notifyIcon1.ContextMenuStrip.Items[1],
|
|
|
|
|
(ToolStripMenuItem)notifyIcon1.ContextMenuStrip.Items[2],
|
|
|
|
|
(ToolStripMenuItem)notifyIcon1.ContextMenuStrip.Items[3] };
|
2014-06-06 22:38:52 +02:00
|
|
|
|
SystemEvents.PowerModeChanged += OnPowerChange;
|
2014-06-02 19:29:38 +02:00
|
|
|
|
tSOptions.Visible = false;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
bool firstrun = false;
|
|
|
|
|
if (File.Exists(exepath + "\\Auto Profiles.xml")
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
&& File.Exists(appDataPpath + "\\Auto Profiles.xml"))
|
2014-11-04 05:43:38 +01:00
|
|
|
|
{
|
|
|
|
|
firstrun = true;
|
|
|
|
|
new SaveWhere(true).ShowDialog();
|
|
|
|
|
}
|
|
|
|
|
else if (File.Exists(exepath + "\\Auto Profiles.xml"))
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
SaveWhere(exepath);
|
|
|
|
|
else if (File.Exists(appDataPpath + "\\Auto Profiles.xml"))
|
|
|
|
|
SaveWhere(appDataPpath);
|
2014-12-02 01:07:29 +01:00
|
|
|
|
else if (File.Exists(oldappdatapath + "\\Auto Profiles.xml"))
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (Directory.Exists(appDataPpath))
|
|
|
|
|
Directory.Move(appDataPpath, Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\DS4Windows Old");
|
|
|
|
|
Directory.Move(oldappdatapath, appDataPpath);
|
|
|
|
|
SaveWhere(appDataPpath);
|
2014-12-02 01:07:29 +01:00
|
|
|
|
}
|
|
|
|
|
catch
|
|
|
|
|
{
|
2014-12-03 23:36:54 +01:00
|
|
|
|
MessageBox.Show(Properties.Resources.CannotMoveFiles, "DS4Windows");
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Process.Start("explorer.exe", @"/select, " + appDataPpath);
|
2015-02-08 22:51:52 +01:00
|
|
|
|
Close();
|
2014-12-02 01:07:29 +01:00
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-11-04 05:43:38 +01:00
|
|
|
|
else if (!File.Exists(exepath + "\\Auto Profiles.xml")
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
&& !File.Exists(appDataPpath + "\\Auto Profiles.xml"))
|
2014-11-04 05:43:38 +01:00
|
|
|
|
{
|
|
|
|
|
firstrun = true;
|
|
|
|
|
new SaveWhere(false).ShowDialog();
|
|
|
|
|
}
|
|
|
|
|
if (firstrun)
|
|
|
|
|
CheckDrivers();
|
|
|
|
|
else
|
2014-10-14 20:54:42 +02:00
|
|
|
|
{
|
2014-11-04 04:44:55 +01:00
|
|
|
|
var AppCollectionThread = new System.Threading.Thread(() => CheckDrivers());
|
|
|
|
|
AppCollectionThread.IsBackground = true;
|
|
|
|
|
AppCollectionThread.Start();
|
2014-11-04 05:43:38 +01:00
|
|
|
|
}
|
2014-10-14 20:54:42 +02:00
|
|
|
|
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (String.IsNullOrEmpty(appdatapath))
|
2014-11-04 05:43:38 +01:00
|
|
|
|
{
|
|
|
|
|
Close();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
Graphics g = this.CreateGraphics();
|
|
|
|
|
try
|
|
|
|
|
{
|
2014-11-14 20:44:50 +01:00
|
|
|
|
dpix = g.DpiX / 100f * 1.041666666667f;
|
|
|
|
|
dpiy = g.DpiY / 100f * 1.041666666667f;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
}
|
|
|
|
|
finally
|
|
|
|
|
{
|
|
|
|
|
g.Dispose();
|
|
|
|
|
}
|
2014-11-14 20:44:50 +01:00
|
|
|
|
Icon = Properties.Resources.DS4W;
|
|
|
|
|
notifyIcon1.Icon = Properties.Resources.DS4W;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Program.rootHub.Debug += On_Debug;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Log.GuiLog += On_Debug;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
logFile = appdatapath + "\\DS4Windows.log";
|
2014-12-17 19:29:22 +01:00
|
|
|
|
//logWriter = File.AppendText(logFile);
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Log.TrayIconLog += ShowNotification;
|
|
|
|
|
// tmrUpdate.Enabled = true; TODO remove tmrUpdate and leave tick()
|
2014-10-14 20:54:42 +02:00
|
|
|
|
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Directory.CreateDirectory(appdatapath);
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Global.Load();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (!Save()) //if can't write to file
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (MessageBox.Show("Cannot write at current location\nCopy Settings to appdata?", "DS4Windows",
|
2014-11-04 05:43:38 +01:00
|
|
|
|
MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes)
|
|
|
|
|
{
|
|
|
|
|
try
|
2014-10-14 20:54:42 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Directory.CreateDirectory(appDataPpath);
|
|
|
|
|
File.Copy(exepath + "\\Profiles.xml", appDataPpath + "\\Profiles.xml");
|
|
|
|
|
File.Copy(exepath + "\\Auto Profiles.xml", appDataPpath + "\\Auto Profiles.xml");
|
|
|
|
|
Directory.CreateDirectory(appDataPpath + "\\Profiles");
|
2014-11-04 05:43:38 +01:00
|
|
|
|
foreach (string s in Directory.GetFiles(exepath + "\\Profiles"))
|
2014-10-14 20:54:42 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Copy(s, appDataPpath + "\\Profiles\\" + Path.GetFileName(s));
|
2014-10-14 20:54:42 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2014-11-04 05:43:38 +01:00
|
|
|
|
catch { }
|
|
|
|
|
MessageBox.Show("Copy complete, please relaunch DS4Windows and remove settings from Program Directory", "DS4Windows");
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
appdatapath = null;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Close();
|
|
|
|
|
return;
|
2014-10-14 20:54:42 +02:00
|
|
|
|
}
|
2014-11-04 05:43:38 +01:00
|
|
|
|
else
|
2014-10-14 20:54:42 +02:00
|
|
|
|
{
|
2014-11-04 05:43:38 +01:00
|
|
|
|
MessageBox.Show("DS4Windows cannot edit settings here, This will now close", "DS4Windows");
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
appdatapath = null;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Close();
|
|
|
|
|
return;
|
2014-10-14 20:54:42 +02:00
|
|
|
|
}
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
//MessageBox.Show(Environment.OSVersion.VersionString);
|
2014-11-04 05:43:38 +01:00
|
|
|
|
foreach (ToolStripMenuItem t in shortcuts)
|
|
|
|
|
t.DropDownItemClicked += Profile_Changed_Menu;
|
2015-08-13 05:53:43 +02:00
|
|
|
|
hideDS4CheckBox.CheckedChanged -= hideDS4CheckBox_CheckedChanged;
|
|
|
|
|
hideDS4CheckBox.Checked = UseExclusiveMode;
|
|
|
|
|
hideDS4CheckBox.CheckedChanged += hideDS4CheckBox_CheckedChanged;
|
2015-11-28 06:47:26 +01:00
|
|
|
|
if (Environment.OSVersion.Version.Major >= 10 && Environment.OSVersion.Version.Build < 10586)
|
2015-08-13 05:53:43 +02:00
|
|
|
|
{
|
|
|
|
|
toolTip1.SetToolTip(hideDS4CheckBox, "For Windows 10, use button on the main tab to connect exclusivly");
|
|
|
|
|
btnConnectDS4Win10.Visible = hideDS4CheckBox.Checked;
|
|
|
|
|
toolTip1.SetToolTip(btnConnectDS4Win10, "This will temporarily kill the taskbar until you connect a controller");
|
|
|
|
|
}
|
2015-11-28 06:47:26 +01:00
|
|
|
|
else
|
|
|
|
|
btnConnectDS4Win10.Visible = false;
|
2015-08-13 05:53:43 +02:00
|
|
|
|
cBDisconnectBT.Checked = DCBTatStop;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
cBQuickCharge.Checked = QuickCharge;
|
|
|
|
|
nUDXIPorts.Value = FirstXinputPort;
|
|
|
|
|
Program.rootHub.x360Bus.FirstController = FirstXinputPort;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
// New settings
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
this.Width = FormWidth;
|
|
|
|
|
this.Height = FormHeight;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
startMinimizedCheckBox.CheckedChanged -= startMinimizedCheckBox_CheckedChanged;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
startMinimizedCheckBox.Checked = StartMinimized;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
startMinimizedCheckBox.CheckedChanged += startMinimizedCheckBox_CheckedChanged;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
cBCloseMini.Checked = CloseMini;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
string lang = CultureInfo.CurrentCulture.ToString();
|
|
|
|
|
if (lang.StartsWith("en"))
|
|
|
|
|
cBDownloadLangauge.Visible = false;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
cBDownloadLangauge.Checked = DownloadLang;
|
|
|
|
|
cBFlashWhenLate.Checked = FlashWhenLate;
|
|
|
|
|
nUDLatency.Value = FlashWhenLateAt;
|
|
|
|
|
|
|
|
|
|
if (!LoadActions()) //if first no actions have been made yet, create PS+Option to D/C and save it to every profile
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
{
|
|
|
|
|
XmlDocument xDoc = new XmlDocument();
|
|
|
|
|
try
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string[] profiles = Directory.GetFiles(appdatapath + @"\Profiles\");
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
foreach (String s in profiles)
|
|
|
|
|
if (Path.GetExtension(s) == ".xml")
|
|
|
|
|
{
|
|
|
|
|
xDoc.Load(s);
|
|
|
|
|
XmlNode el = xDoc.SelectSingleNode("DS4Windows/ProfileActions"); //.CreateElement("Action");
|
|
|
|
|
if (el != null)
|
|
|
|
|
if (string.IsNullOrEmpty(el.InnerText))
|
|
|
|
|
el.InnerText = "Disconnect Controller";
|
|
|
|
|
else
|
|
|
|
|
el.InnerText += "/Disconnect Controller";
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
XmlNode Node = xDoc.SelectSingleNode("DS4Windows");
|
|
|
|
|
el = xDoc.CreateElement("ProfileActions");
|
|
|
|
|
el.InnerText = "Disconnect Controller";
|
|
|
|
|
Node.AppendChild(el);
|
|
|
|
|
}
|
|
|
|
|
xDoc.Save(s);
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LoadActions();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
2015-02-08 22:51:52 +01:00
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
bool start = true;
|
|
|
|
|
bool mini = false;
|
|
|
|
|
for (int i = 0; i < arguements.Length; i++)
|
|
|
|
|
{
|
|
|
|
|
if (arguements[i] == "-stop")
|
|
|
|
|
start = false;
|
|
|
|
|
if (arguements[i] == "-m")
|
|
|
|
|
mini = true;
|
|
|
|
|
if (mini && start)
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
if (!(startMinimizedCheckBox.Checked || mini))
|
2014-11-20 20:03:18 +01:00
|
|
|
|
{
|
|
|
|
|
mAllowVisible = true;
|
|
|
|
|
Show();
|
|
|
|
|
}
|
2014-11-04 05:43:38 +01:00
|
|
|
|
Form_Resize(null, null);
|
|
|
|
|
RefreshProfiles();
|
2015-11-30 22:15:17 +01:00
|
|
|
|
opt = new Options(this);
|
|
|
|
|
//opt.Text = "Options for Controller " + (devID + 1);
|
|
|
|
|
opt.Icon = this.Icon;
|
|
|
|
|
opt.TopLevel = false;
|
|
|
|
|
opt.Dock = DockStyle.Fill;
|
|
|
|
|
opt.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
|
|
|
|
tabProfiles.Controls.Add(opt);
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
NewVersion();
|
2014-11-04 05:43:38 +01:00
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LoadProfile(i, true, Program.rootHub);
|
2015-11-28 06:47:26 +01:00
|
|
|
|
if (UseCustomLed[i])
|
|
|
|
|
lights[i].BackColor = CustomColor[i].ToColorA;
|
|
|
|
|
else
|
|
|
|
|
lights[i].BackColor = MainColor[i].ToColorA;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
}
|
|
|
|
|
LoadP();
|
|
|
|
|
Global.ControllerStatusChange += ControllerStatusChange;
|
2014-12-03 23:36:54 +01:00
|
|
|
|
Enable_Controls(0, false);
|
|
|
|
|
Enable_Controls(1, false);
|
|
|
|
|
Enable_Controls(2, false);
|
|
|
|
|
Enable_Controls(3, false);
|
2015-04-21 21:00:09 +02:00
|
|
|
|
btnStartStop.Text = Properties.Resources.StartText;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
if (btnStartStop.Enabled && start)
|
|
|
|
|
btnStartStop_Clicked();
|
|
|
|
|
startToolStripMenuItem.Text = btnStartStop.Text;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (!tLPControllers.Visible)
|
|
|
|
|
tabMain.SelectedIndex = 1;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
//cBNotifications.Checked = Notifications;
|
|
|
|
|
cBoxNotifications.SelectedIndex = Notifications;
|
|
|
|
|
cBSwipeProfiles.Checked = SwipeProfiles;
|
|
|
|
|
int checkwhen = CheckWhen;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
cBUpdate.Checked = checkwhen > 0;
|
|
|
|
|
if (checkwhen > 23)
|
|
|
|
|
{
|
|
|
|
|
cBUpdateTime.SelectedIndex = 1;
|
|
|
|
|
nUDUpdateTime.Value = checkwhen / 24;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
cBUpdateTime.SelectedIndex = 0;
|
|
|
|
|
nUDUpdateTime.Value = checkwhen;
|
|
|
|
|
}
|
|
|
|
|
Uri url = new Uri("http://ds4windows.com/Files/Builds/newest.txt"); //Sorry other devs, gonna have to find your own server
|
2014-10-14 20:54:42 +02:00
|
|
|
|
|
|
|
|
|
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (checkwhen > 0 && DateTime.Now >= LastChecked + TimeSpan.FromHours(checkwhen))
|
2014-11-04 05:43:38 +01:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
wc.DownloadFileAsync(url, appdatapath + "\\version.txt");
|
2014-11-04 05:43:38 +01:00
|
|
|
|
wc.DownloadFileCompleted += Check_Version;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LastChecked = DateTime.Now;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
}
|
2014-10-14 20:54:42 +02:00
|
|
|
|
|
2014-11-04 05:43:38 +01:00
|
|
|
|
if (File.Exists(exepath + "\\Updater.exe"))
|
|
|
|
|
{
|
|
|
|
|
System.Threading.Thread.Sleep(2000);
|
|
|
|
|
File.Delete(exepath + "\\Updater.exe");
|
2014-10-14 20:54:42 +02:00
|
|
|
|
}
|
2014-11-04 05:43:38 +01:00
|
|
|
|
//test.Start();
|
2014-11-18 22:23:41 +01:00
|
|
|
|
hotkeysTimer.Start();
|
|
|
|
|
hotkeysTimer.Tick += Hotkeys;
|
2014-11-04 05:43:38 +01:00
|
|
|
|
test.Tick += test_Tick;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (!System.IO.Directory.Exists(appdatapath + "\\Virtual Bus Driver"))
|
2014-11-04 05:43:38 +01:00
|
|
|
|
linkUninstall.Visible = false;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
if (File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk"))
|
|
|
|
|
{
|
|
|
|
|
StartWindowsCheckBox.Checked = true;
|
|
|
|
|
string lnkpath = WinProgs.ResolveShortcutAndArgument(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk");
|
2014-12-20 02:31:00 +01:00
|
|
|
|
if (!lnkpath.EndsWith("-m"))
|
2014-12-13 21:12:03 +01:00
|
|
|
|
{
|
|
|
|
|
File.Delete(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk");
|
|
|
|
|
appShortcutToStartup();
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-08-13 05:53:43 +02:00
|
|
|
|
UpdateTheUpdater();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private async void UpdateTheUpdater()
|
|
|
|
|
{
|
|
|
|
|
if (File.Exists(exepath + "\\Update Files\\DS4Updater.exe"))
|
|
|
|
|
{
|
|
|
|
|
Process[] processes = Process.GetProcessesByName("DS4Updater");
|
|
|
|
|
while (processes.Length > 0)
|
|
|
|
|
{
|
|
|
|
|
await Task.Delay(500);
|
|
|
|
|
}
|
|
|
|
|
File.Delete(exepath + "\\DS4Updater.exe");
|
|
|
|
|
File.Move(exepath + "\\Update Files\\DS4Updater.exe", exepath + "\\DS4Updater.exe");
|
|
|
|
|
Directory.Delete(exepath + "\\Update Files");
|
|
|
|
|
}
|
2015-12-05 11:38:04 +01:00
|
|
|
|
if(FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileBuildPart == 32 &&
|
|
|
|
|
(!File.Exists(exepath + "\\DS4Updater.exe") ||
|
|
|
|
|
(File.Exists(exepath + "\\DS4Updater.exe") && FileVersionInfo.GetVersionInfo(exepath + "\\DS4Updater.exe").FileBuildPart < 32)))
|
|
|
|
|
{
|
|
|
|
|
Uri url2 = new Uri("https://github.com/Jays2Kings/DS4Windows/releases/download/v1.4.32/DS4Updater.exe");
|
|
|
|
|
WebClient wc2 = new WebClient();
|
|
|
|
|
if (appdatapath == exepath || !AdminNeeded())
|
|
|
|
|
{
|
|
|
|
|
File.Delete(exepath + "\\DS4Updater.exe");
|
|
|
|
|
wc2.DownloadFileAsync(url2, exepath + "\\DS4Updater.exe");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MessageBox.Show(Properties.Resources.PleaseDownloadUpdater);
|
|
|
|
|
Process.Start("https://github.com/Jays2Kings/DS4Windows/releases/download/v1.4.32/DS4Updater.exe");
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-06-09 01:41:36 +02:00
|
|
|
|
}
|
|
|
|
|
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
void NewVersion()
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
if (File.Exists(exepath + "\\1.4.22.ds4w"))
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
{
|
|
|
|
|
bool dcexists = false;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
foreach (SpecialAction action in GetActions())
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
{
|
|
|
|
|
if (action.type == "DisconnectBT")
|
|
|
|
|
{
|
|
|
|
|
dcexists = true;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!dcexists)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
XmlDocument xDoc = new XmlDocument();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
SaveAction("Disconnect Controller", "PS/Options", 5, "0", false);
|
|
|
|
|
string[] profiles = Directory.GetFiles(appdatapath + @"\Profiles\");
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
foreach (String s in profiles)
|
|
|
|
|
if (Path.GetExtension(s) == ".xml")
|
|
|
|
|
{
|
|
|
|
|
xDoc.Load(s);
|
|
|
|
|
XmlNode el = xDoc.SelectSingleNode("DS4Windows/ProfileActions");
|
|
|
|
|
if (el != null)
|
|
|
|
|
if (string.IsNullOrEmpty(el.InnerText))
|
|
|
|
|
el.InnerText = "Disconnect Controller";
|
|
|
|
|
else
|
|
|
|
|
el.InnerText += "/Disconnect Controller";
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
XmlNode Node = xDoc.SelectSingleNode("DS4Windows");
|
|
|
|
|
el = xDoc.CreateElement("ProfileActions");
|
|
|
|
|
el.InnerText = "Disconnect Controller";
|
|
|
|
|
Node.AppendChild(el);
|
|
|
|
|
}
|
|
|
|
|
xDoc.Save(s);
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LoadActions();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
|
|
|
|
}
|
2015-01-17 23:50:59 +01:00
|
|
|
|
File.Delete(exepath + "\\1.4.22.ds4w");
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-11-20 20:03:18 +01:00
|
|
|
|
protected override void SetVisibleCore(bool value)
|
|
|
|
|
{
|
|
|
|
|
if (!mAllowVisible)
|
|
|
|
|
{
|
|
|
|
|
value = false;
|
|
|
|
|
if (!this.IsHandleCreated) CreateHandle();
|
|
|
|
|
}
|
|
|
|
|
base.SetVisibleCore(value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void showToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
mAllowVisible = true;
|
|
|
|
|
Show();
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-09 01:41:36 +02:00
|
|
|
|
public static string GetTopWindowName()
|
|
|
|
|
{
|
|
|
|
|
IntPtr hWnd = GetForegroundWindow();
|
|
|
|
|
uint lpdwProcessId;
|
|
|
|
|
GetWindowThreadProcessId(hWnd, out lpdwProcessId);
|
|
|
|
|
|
|
|
|
|
IntPtr hProcess = OpenProcess(0x0410, false, lpdwProcessId);
|
|
|
|
|
|
|
|
|
|
StringBuilder text = new StringBuilder(1000);
|
|
|
|
|
GetModuleFileNameEx(hProcess, IntPtr.Zero, text, text.Capacity);
|
|
|
|
|
|
|
|
|
|
CloseHandle(hProcess);
|
|
|
|
|
|
|
|
|
|
return text.ToString();
|
2014-05-31 06:37:02 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
|
|
|
|
private void OnPowerChange(object s, PowerModeChangedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
switch (e.Mode)
|
|
|
|
|
{
|
|
|
|
|
case PowerModes.Resume:
|
2014-08-23 22:52:20 +02:00
|
|
|
|
if (btnStartStop.Text == Properties.Resources.StartText && wasrunning)
|
|
|
|
|
{
|
|
|
|
|
DS4LightBar.shuttingdown = false;
|
|
|
|
|
wasrunning = false;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
btnStartStop_Clicked();
|
2014-08-23 22:52:20 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
break;
|
|
|
|
|
case PowerModes.Suspend:
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (btnStartStop.Text == Properties.Resources.StopText)
|
2014-08-23 22:52:20 +02:00
|
|
|
|
{
|
|
|
|
|
DS4LightBar.shuttingdown = true;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
btnStartStop_Clicked();
|
2014-08-23 22:52:20 +02:00
|
|
|
|
wasrunning = true;
|
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-02 19:29:38 +02:00
|
|
|
|
private void test_Tick(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
/*testing values
|
|
|
|
|
lbTest.Visible = true;
|
|
|
|
|
lbTest.Text = Program.rootHub.oldtouchvalue[0].ToString();//*/
|
2014-06-02 19:29:38 +02:00
|
|
|
|
}
|
2014-06-02 05:19:04 +02:00
|
|
|
|
void Hotkeys(object sender, EventArgs e)
|
2014-05-28 21:47:25 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (SwipeProfiles)
|
2014-06-21 20:00:28 +02:00
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
string slide = Program.rootHub.TouchpadSlide(i);
|
2014-06-21 20:00:28 +02:00
|
|
|
|
if (slide == "left")
|
|
|
|
|
if (cbs[i].SelectedIndex <= 0)
|
|
|
|
|
cbs[i].SelectedIndex = cbs[i].Items.Count - 2;
|
|
|
|
|
else
|
|
|
|
|
cbs[i].SelectedIndex--;
|
|
|
|
|
else if (slide == "right")
|
|
|
|
|
if (cbs[i].SelectedIndex == cbs[i].Items.Count - 2)
|
|
|
|
|
cbs[i].SelectedIndex = 0;
|
|
|
|
|
else
|
|
|
|
|
cbs[i].SelectedIndex++;
|
|
|
|
|
if (slide.Contains("t"))
|
2014-08-17 00:09:15 +02:00
|
|
|
|
ShowNotification(this, Properties.Resources.UsingProfile.Replace("*number*", (i + 1).ToString()).Replace("*Profile name*", cbs[i].Text));
|
2014-06-21 20:00:28 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
|
|
|
|
//Check for process for auto profiles
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (tempProfileProgram == "null")
|
2014-06-09 01:41:36 +02:00
|
|
|
|
for (int i = 0; i < programpaths.Count; i++)
|
|
|
|
|
{
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
string name = programpaths[i].ToLower().Replace('/', '\\');
|
|
|
|
|
if (name == GetTopWindowName().ToLower().Replace('/', '\\'))
|
2014-06-09 01:41:36 +02:00
|
|
|
|
{
|
|
|
|
|
for (int j = 0; j < 4; j++)
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (proprofiles[j][i] != "(none)" && proprofiles[j][i] != Properties.Resources.noneProfile)
|
2014-07-26 01:17:45 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LoadTempProfile(j, proprofiles[j][i], true, Program.rootHub); //j is controller index, i is filename
|
|
|
|
|
if (LaunchProgram[j] != string.Empty) Process.Start(LaunchProgram[j]);
|
2014-07-26 01:17:45 +02:00
|
|
|
|
}
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
tempProfileProgram = name;
|
2014-06-09 01:41:36 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (tempProfileProgram != GetTopWindowName().ToLower().Replace('/', '\\'))
|
2014-06-09 01:41:36 +02:00
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
tempProfileProgram = "null";
|
2014-06-09 01:41:36 +02:00
|
|
|
|
for (int j = 0; j < 4; j++)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LoadProfile(j, false, Program.rootHub);
|
2014-06-09 01:41:36 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2015-08-13 05:53:43 +02:00
|
|
|
|
if (bat != null && bat.HasExited && runningBat)
|
|
|
|
|
{
|
|
|
|
|
Process.Start("explorer.exe");
|
|
|
|
|
bat = null;
|
|
|
|
|
runningBat = false;
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-06 22:38:52 +02:00
|
|
|
|
GC.Collect();
|
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-06-06 22:38:52 +02:00
|
|
|
|
public void LoadP()
|
|
|
|
|
{
|
|
|
|
|
XmlDocument doc = new XmlDocument();
|
|
|
|
|
proprofiles = new List<string>[4] { new List<string>(), new List<string>(),
|
|
|
|
|
new List<string>(), new List<string>() };
|
|
|
|
|
programpaths.Clear();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (!File.Exists(appdatapath + "\\Auto Profiles.xml"))
|
2014-06-06 22:38:52 +02:00
|
|
|
|
return;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
doc.Load(appdatapath + "\\Auto Profiles.xml");
|
2014-06-06 22:38:52 +02:00
|
|
|
|
XmlNodeList programslist = doc.SelectNodes("Programs/Program");
|
|
|
|
|
foreach (XmlNode x in programslist)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
programpaths.Add(x.Attributes["path"].Value);
|
2014-06-06 22:38:52 +02:00
|
|
|
|
foreach (string s in programpaths)
|
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
|
|
|
|
proprofiles[i].Add(doc.SelectSingleNode("/Programs/Program[@path=\"" + s + "\"]"
|
|
|
|
|
+ "/Controller" + (i + 1)).InnerText);
|
|
|
|
|
}
|
2014-05-28 04:49:58 +02:00
|
|
|
|
}
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
string originalsettingstext;
|
2014-05-21 07:36:05 +02:00
|
|
|
|
private void CheckDrivers()
|
|
|
|
|
{
|
2015-03-15 19:16:01 +01:00
|
|
|
|
originalsettingstext = tabSettings.Text;
|
2014-05-21 07:36:05 +02:00
|
|
|
|
bool deriverinstalled = false;
|
2014-07-08 20:21:09 +02:00
|
|
|
|
try
|
2014-05-21 07:36:05 +02:00
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PnPSignedDriver");
|
|
|
|
|
|
2014-07-08 20:21:09 +02:00
|
|
|
|
foreach (ManagementObject obj in searcher.Get())
|
2014-05-21 07:36:05 +02:00
|
|
|
|
{
|
2014-07-08 20:21:09 +02:00
|
|
|
|
try
|
2014-05-21 07:36:05 +02:00
|
|
|
|
{
|
2014-07-08 20:21:09 +02:00
|
|
|
|
if (obj.GetPropertyValue("DeviceName").ToString() == "Scp Virtual Bus Driver")
|
|
|
|
|
{
|
|
|
|
|
deriverinstalled = true;
|
|
|
|
|
break;
|
|
|
|
|
}
|
2014-05-21 07:36:05 +02:00
|
|
|
|
}
|
2014-07-08 20:21:09 +02:00
|
|
|
|
catch { }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!deriverinstalled)
|
|
|
|
|
{
|
2014-12-02 01:07:29 +01:00
|
|
|
|
Process p = new Process();
|
|
|
|
|
p.StartInfo.FileName = Assembly.GetExecutingAssembly().Location;
|
|
|
|
|
p.StartInfo.Arguments = "driverinstall";
|
|
|
|
|
p.StartInfo.Verb = "runas";
|
|
|
|
|
try { p.Start(); }
|
|
|
|
|
catch { }
|
2014-05-21 07:36:05 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2014-07-08 20:21:09 +02:00
|
|
|
|
catch
|
2014-05-21 07:36:05 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (!File.Exists(exepath + "\\Auto Profiles.xml") && !File.Exists(appDataPpath + "\\Auto Profiles.xml"))
|
2014-07-08 20:21:09 +02:00
|
|
|
|
{
|
|
|
|
|
linkSetup.LinkColor = Color.Green;
|
2014-09-15 04:37:14 +02:00
|
|
|
|
tabSettings.Text += " (" + Properties.Resources.InstallDriver + ")";
|
2014-07-08 20:21:09 +02:00
|
|
|
|
}
|
2014-05-21 07:36:05 +02:00
|
|
|
|
}
|
2014-05-14 09:12:15 +02:00
|
|
|
|
}
|
2014-05-30 22:39:39 +02:00
|
|
|
|
|
2014-05-14 09:12:15 +02:00
|
|
|
|
private void Check_Version(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
|
|
|
|
|
{
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location);
|
|
|
|
|
string version = fvi.FileVersion;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string newversion = File.ReadAllText(appdatapath + "\\version.txt");
|
2014-11-14 20:44:50 +01:00
|
|
|
|
if (version.Replace(',', '.').CompareTo(newversion) == -1)//CompareVersions();
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (MessageBox.Show(Properties.Resources.DownloadVersion.Replace("*number*", newversion), Properties.Resources.DS4Update, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
{
|
2014-08-18 07:18:46 +02:00
|
|
|
|
if (!File.Exists(exepath + "\\DS4Updater.exe") || (File.Exists(exepath + "\\DS4Updater.exe")
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
&& (FileVersionInfo.GetVersionInfo(exepath + "\\DS4Updater.exe").FileVersion.CompareTo("1.1.0.0") == -1)))
|
|
|
|
|
{
|
2014-10-13 23:56:04 +02:00
|
|
|
|
Uri url2 = new Uri("http://ds4windows.com/Files/DS4Updater.exe");
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
WebClient wc2 = new WebClient();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (appdatapath == exepath)
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
wc2.DownloadFile(url2, exepath + "\\DS4Updater.exe");
|
|
|
|
|
else
|
2014-05-16 00:10:17 +02:00
|
|
|
|
{
|
2014-08-17 00:09:15 +02:00
|
|
|
|
MessageBox.Show(Properties.Resources.PleaseDownloadUpdater);
|
2014-10-13 23:56:04 +02:00
|
|
|
|
Process.Start("http://ds4windows.com/Files/DS4Updater.exe");
|
2014-05-16 00:10:17 +02:00
|
|
|
|
}
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
}
|
2014-08-18 07:18:46 +02:00
|
|
|
|
Process p = new Process();
|
|
|
|
|
p.StartInfo.FileName = exepath + "\\DS4Updater.exe";
|
2015-03-15 19:16:01 +01:00
|
|
|
|
if (!cBDownloadLangauge.Checked)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
p.StartInfo.Arguments = "-skipLang";
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (AdminNeeded())
|
2014-08-18 07:18:46 +02:00
|
|
|
|
p.StartInfo.Verb = "runas";
|
2014-12-02 01:07:29 +01:00
|
|
|
|
try { p.Start(); Close(); }
|
|
|
|
|
catch { }
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
}
|
2014-05-14 09:12:15 +02:00
|
|
|
|
else
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Delete(appdatapath + "\\version.txt");
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
else
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Delete(appdatapath + "\\version.txt");
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2014-06-09 01:41:36 +02:00
|
|
|
|
|
2014-04-27 21:32:09 +02:00
|
|
|
|
public void RefreshProfiles()
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
2014-05-28 21:47:25 +02:00
|
|
|
|
profilenames.Clear();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string[] profiles = Directory.GetFiles(appdatapath + @"\Profiles\");
|
2014-04-29 03:14:01 +02:00
|
|
|
|
foreach (String s in profiles)
|
|
|
|
|
if (s.EndsWith(".xml"))
|
2014-05-21 07:36:05 +02:00
|
|
|
|
profilenames.Add(Path.GetFileNameWithoutExtension(s));
|
2014-05-30 22:39:39 +02:00
|
|
|
|
lBProfiles.Items.Clear();
|
|
|
|
|
lBProfiles.Items.AddRange(profilenames.ToArray());
|
2014-09-15 04:37:14 +02:00
|
|
|
|
if (lBProfiles.Items.Count == 0)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
SaveProfile(0, "Default", null, null);
|
|
|
|
|
ProfilePath[0] = "Default";
|
2014-09-15 04:37:14 +02:00
|
|
|
|
RefreshProfiles();
|
|
|
|
|
return;
|
|
|
|
|
}
|
2014-04-27 21:32:09 +02:00
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
|
|
|
|
cbs[i].Items.Clear();
|
2014-04-29 03:14:01 +02:00
|
|
|
|
shortcuts[i].DropDownItems.Clear();
|
|
|
|
|
cbs[i].Items.AddRange(profilenames.ToArray());
|
|
|
|
|
foreach (string s in profilenames)
|
2014-09-15 04:37:14 +02:00
|
|
|
|
shortcuts[i].DropDownItems.Add(s);
|
2014-04-29 03:14:01 +02:00
|
|
|
|
for (int j = 0; j < cbs[i].Items.Count; j++)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (cbs[i].Items[j].ToString() == Path.GetFileNameWithoutExtension(ProfilePath[i]))
|
2014-04-27 21:32:09 +02:00
|
|
|
|
{
|
|
|
|
|
cbs[i].SelectedIndex = j;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
((ToolStripMenuItem)shortcuts[i].DropDownItems[j]).Checked = true;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
ProfilePath[i] = cbs[i].Text;
|
2014-08-17 00:09:15 +02:00
|
|
|
|
shortcuts[i].Text = Properties.Resources.ContextEdit.Replace("*number*", (i + 1).ToString());
|
|
|
|
|
ebns[i].Text = Properties.Resources.EditProfile;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
break;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
}
|
2014-05-06 20:49:18 +02:00
|
|
|
|
else
|
|
|
|
|
{
|
2014-08-17 00:09:15 +02:00
|
|
|
|
cbs[i].Text = "(" + Properties.Resources.NoProfileLoaded + ")";
|
|
|
|
|
shortcuts[i].Text = Properties.Resources.ContextNew.Replace("*number*", (i + 1).ToString());
|
|
|
|
|
ebns[i].Text = Properties.Resources.New;
|
2014-05-06 20:49:18 +02:00
|
|
|
|
}
|
2014-04-27 21:32:09 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (DirectoryNotFoundException)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Directory.CreateDirectory(appdatapath + @"\Profiles\");
|
|
|
|
|
SaveProfile(0, "Default", null, null);
|
|
|
|
|
ProfilePath[0] = "Default";
|
2014-09-15 04:37:14 +02:00
|
|
|
|
RefreshProfiles();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
finally
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (!(cbs[0].Items.Count > 0 && cbs[0].Items[cbs[0].Items.Count - 1].ToString() == "+" + Properties.Resources.PlusNewProfile))
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
{
|
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
cbs[i].Items.Add("+" + Properties.Resources.PlusNewProfile);
|
2014-09-15 04:37:14 +02:00
|
|
|
|
shortcuts[i].DropDownItems.Add("-");
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
shortcuts[i].DropDownItems.Add("+" + Properties.Resources.PlusNewProfile);
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
}
|
2014-09-15 04:37:14 +02:00
|
|
|
|
RefreshAutoProfilesPage();
|
2014-06-02 05:19:04 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2014-04-27 21:32:09 +02:00
|
|
|
|
}
|
2014-05-19 07:55:12 +02:00
|
|
|
|
|
2014-06-09 01:41:36 +02:00
|
|
|
|
|
2014-06-06 22:38:52 +02:00
|
|
|
|
public void RefreshAutoProfilesPage()
|
|
|
|
|
{
|
|
|
|
|
tabAutoProfiles.Controls.Clear();
|
2014-06-09 01:41:36 +02:00
|
|
|
|
WP = new WinProgs(profilenames.ToArray(), this);
|
2014-06-06 22:38:52 +02:00
|
|
|
|
WP.TopLevel = false;
|
|
|
|
|
WP.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
|
|
|
|
WP.Visible = true;
|
|
|
|
|
WP.Dock = DockStyle.Fill;
|
|
|
|
|
tabAutoProfiles.Controls.Add(WP);
|
|
|
|
|
}
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
protected void LogDebug(DateTime Time, String Data, bool warning)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-05-19 07:55:12 +02:00
|
|
|
|
if (lvDebug.InvokeRequired)
|
|
|
|
|
{
|
|
|
|
|
LogDebugDelegate d = new LogDebugDelegate(LogDebug);
|
|
|
|
|
try
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
this.Invoke(d, new Object[] { Time, Data, warning });
|
2014-05-19 07:55:12 +02:00
|
|
|
|
}
|
|
|
|
|
catch { }
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-05-21 07:36:05 +02:00
|
|
|
|
String Posted = Time.ToString("G");
|
2014-05-19 07:55:12 +02:00
|
|
|
|
lvDebug.Items.Add(new ListViewItem(new String[] { Posted, Data })).EnsureVisible();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (warning) lvDebug.Items[lvDebug.Items.Count - 1].ForeColor = Color.Red;
|
2014-05-19 07:55:12 +02:00
|
|
|
|
//Added alternative
|
|
|
|
|
lbLastMessage.Text = Data;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
lbLastMessage.ForeColor = (warning ? Color.Red : SystemColors.GrayText);
|
2014-05-19 07:55:12 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected void ShowNotification(object sender, DebugEventArgs args)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (Form.ActiveForm != this && (Notifications == 2 || (Notifications == 1 && args.Warning) || sender != null))
|
2014-05-28 04:49:58 +02:00
|
|
|
|
{
|
|
|
|
|
this.notifyIcon1.BalloonTipText = args.Data;
|
|
|
|
|
notifyIcon1.BalloonTipTitle = "DS4Windows";
|
2015-02-08 22:51:52 +01:00
|
|
|
|
notifyIcon1.ShowBalloonTip(1);
|
2014-05-28 04:49:58 +02:00
|
|
|
|
}
|
2014-05-19 07:55:12 +02:00
|
|
|
|
}
|
|
|
|
|
|
2014-05-30 22:39:39 +02:00
|
|
|
|
protected void ShowNotification(object sender, string text)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (Form.ActiveForm != this && Notifications == 2)
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
|
|
|
|
this.notifyIcon1.BalloonTipText = text;
|
|
|
|
|
notifyIcon1.BalloonTipTitle = "DS4Windows";
|
|
|
|
|
notifyIcon1.ShowBalloonTip(1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-19 07:55:12 +02:00
|
|
|
|
protected void Form_Resize(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (FormWindowState.Minimized == this.WindowState)
|
|
|
|
|
{
|
|
|
|
|
this.Hide();
|
|
|
|
|
this.ShowInTaskbar = false;
|
2014-10-21 20:31:36 +02:00
|
|
|
|
this.FormBorderStyle = FormBorderStyle.None;
|
2014-05-19 07:55:12 +02:00
|
|
|
|
}
|
2014-05-21 07:36:05 +02:00
|
|
|
|
|
2014-05-19 07:55:12 +02:00
|
|
|
|
else if (FormWindowState.Normal == this.WindowState)
|
|
|
|
|
{
|
2014-11-20 20:03:18 +01:00
|
|
|
|
//mAllowVisible = true;
|
2014-05-19 07:55:12 +02:00
|
|
|
|
this.Show();
|
|
|
|
|
this.ShowInTaskbar = true;
|
2014-10-21 20:31:36 +02:00
|
|
|
|
this.FormBorderStyle = FormBorderStyle.Sizable;
|
2014-05-19 07:55:12 +02:00
|
|
|
|
}
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
chData.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize);
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected void btnStartStop_Click(object sender, EventArgs e)
|
2014-03-29 06:29:08 +01:00
|
|
|
|
{
|
|
|
|
|
btnStartStop_Clicked();
|
|
|
|
|
}
|
2014-08-23 22:52:20 +02:00
|
|
|
|
public void btnStartStop_Clicked(bool log = true)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-06-21 20:00:28 +02:00
|
|
|
|
if (btnStartStop.Text == Properties.Resources.StartText)
|
2014-05-24 01:44:30 +02:00
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Program.rootHub.Start(log);
|
2014-11-18 22:23:41 +01:00
|
|
|
|
hotkeysTimer.Start();
|
2014-06-21 20:00:28 +02:00
|
|
|
|
btnStartStop.Text = Properties.Resources.StopText;
|
2014-05-24 01:44:30 +02:00
|
|
|
|
}
|
|
|
|
|
|
2014-06-21 20:00:28 +02:00
|
|
|
|
else if (btnStartStop.Text == Properties.Resources.StopText)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Program.rootHub.Stop(log);
|
2014-11-18 22:23:41 +01:00
|
|
|
|
hotkeysTimer.Stop();
|
2014-06-21 20:00:28 +02:00
|
|
|
|
btnStartStop.Text = Properties.Resources.StartText;
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2014-09-02 01:23:02 +02:00
|
|
|
|
startToolStripMenuItem.Text = btnStartStop.Text;
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
protected void btnClear_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
lvDebug.Items.Clear();
|
|
|
|
|
lbLastMessage.Text = string.Empty;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override void WndProc(ref Message m)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (m.Msg == ScpDevice.WM_DEVICECHANGE)
|
|
|
|
|
{
|
|
|
|
|
Int32 Type = m.WParam.ToInt32();
|
|
|
|
|
lock (this)
|
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Program.rootHub.HotPlug();
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
2014-06-02 19:29:38 +02:00
|
|
|
|
if (m.Msg == WM_QUERYENDSESSION)
|
|
|
|
|
systemShutdown = true;
|
2014-03-28 02:50:40 +01:00
|
|
|
|
|
2014-06-02 19:29:38 +02:00
|
|
|
|
// If this is WM_QUERYENDSESSION, the closing event should be
|
|
|
|
|
// raised in the base WndProc.
|
2015-11-28 06:47:26 +01:00
|
|
|
|
try { base.WndProc(ref m); }
|
|
|
|
|
catch { }
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-03-29 06:29:08 +01:00
|
|
|
|
protected void ControllerStatusChange(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (InvokeRequired)
|
|
|
|
|
Invoke(new ControllerStatusChangedDelegate(ControllerStatusChange), new object[] { sender, e });
|
|
|
|
|
else
|
|
|
|
|
ControllerStatusChanged();
|
|
|
|
|
}
|
2014-09-15 04:37:14 +02:00
|
|
|
|
protected void ControllerStatusChanged()
|
2014-03-29 06:29:08 +01:00
|
|
|
|
{
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
String tooltip = "DS4Windows v" + FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
bool nocontrollers = true;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
for (Int32 Index = 0; Index < Pads.Length; Index++)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Pads[Index].Text = Program.rootHub.getDS4MacAddress(Index);
|
|
|
|
|
DS4Device d = Program.rootHub.DS4Controllers[Index];
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (QuickCharge && d?.ConnectionType == ConnectionType.BT && (bool)d?.Charging)
|
2014-11-20 20:03:18 +01:00
|
|
|
|
{
|
|
|
|
|
d.DisconnectBT();
|
|
|
|
|
return;
|
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
switch (Program.rootHub.getDS4Status(Index))
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
case "USB": statPB[Index].Visible = true; statPB[Index].Image = Properties.Resources.USB; toolTip1.SetToolTip(statPB[Index], ""); break;
|
|
|
|
|
case "BT": statPB[Index].Visible = true; statPB[Index].Image = Properties.Resources.BT; toolTip1.SetToolTip(statPB[Index], "Right click to disconnect"); break;
|
|
|
|
|
default: statPB[Index].Visible = false; toolTip1.SetToolTip(statPB[Index], ""); break;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Batteries[Index].Text = Program.rootHub.getDS4Battery(Index);
|
2014-04-27 21:32:09 +02:00
|
|
|
|
if (Pads[Index].Text != String.Empty)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2015-08-13 05:53:43 +02:00
|
|
|
|
if (runningBat)
|
|
|
|
|
{
|
|
|
|
|
SendKeys.Send("A");
|
|
|
|
|
runningBat = false;
|
|
|
|
|
}
|
2014-04-27 21:32:09 +02:00
|
|
|
|
Pads[Index].Enabled = true;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
nocontrollers = false;
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (Pads[Index].Text != Properties.Resources.Connecting)
|
2014-05-28 04:49:58 +02:00
|
|
|
|
{
|
2014-05-31 06:37:02 +02:00
|
|
|
|
Enable_Controls(Index, true);
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
//if (opt != null)
|
2015-12-05 09:55:11 +01:00
|
|
|
|
// if (opt.Visible && tabMain.SelectedIndex == 1)
|
|
|
|
|
//opt.inputtimer.Start();
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
//MinimumSize = new Size(MinimumSize.Width, 137 + 29 * Index);
|
2014-05-28 04:49:58 +02:00
|
|
|
|
}
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
else
|
2015-12-05 09:55:11 +01:00
|
|
|
|
opt.inputtimer.Stop();
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-06-21 20:00:28 +02:00
|
|
|
|
Pads[Index].Text = Properties.Resources.Disconnected;
|
2014-05-31 06:37:02 +02:00
|
|
|
|
Enable_Controls(Index, false);
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
//if (((Index + 1) + ": " + Program.rootHub.getShortDS4ControllerInfo(Index)).Length > 50)
|
|
|
|
|
//MessageBox.Show(((Index + 1) + ": " + Program.rootHub.getShortDS4ControllerInfo(Index)).Length.ToString());
|
|
|
|
|
if (Program.rootHub.getShortDS4ControllerInfo(Index) != Properties.Resources.NoneText)
|
|
|
|
|
tooltip += "\n" + (Index + 1) + ": " + Program.rootHub.getShortDS4ControllerInfo(Index); // Carefully stay under the 63 character limit.
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
lbNoControllers.Visible = nocontrollers;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
tLPControllers.Visible = !nocontrollers;
|
2014-03-28 02:50:40 +01:00
|
|
|
|
btnClear.Enabled = lvDebug.Items.Count > 0;
|
2014-08-18 07:18:46 +02:00
|
|
|
|
if (tooltip.Length > 63)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
notifyIcon1.Text = tooltip.Substring(0, 63);
|
2014-08-18 07:18:46 +02:00
|
|
|
|
else
|
|
|
|
|
notifyIcon1.Text = tooltip;
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-09-02 01:23:02 +02:00
|
|
|
|
private void pBStatus_MouseClick(object sender, MouseEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
int i = Int32.Parse(((PictureBox)sender).Tag.ToString());
|
2014-12-13 21:12:03 +01:00
|
|
|
|
if (e.Button == System.Windows.Forms.MouseButtons.Right && Program.rootHub.getDS4Status(i) == "BT" && !Program.rootHub.DS4Controllers[i].Charging)
|
|
|
|
|
Program.rootHub.DS4Controllers[i].DisconnectBT();
|
2014-09-02 01:23:02 +02:00
|
|
|
|
}
|
2014-05-31 06:37:02 +02:00
|
|
|
|
|
|
|
|
|
private void Enable_Controls(int device, bool on)
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
Pads[device].Visible = on;
|
|
|
|
|
ebns[device].Visible = on;
|
2015-11-28 06:47:26 +01:00
|
|
|
|
lights[device].Visible = on;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
cbs[device].Visible = on;
|
|
|
|
|
shortcuts[device].Visible = on;
|
|
|
|
|
Batteries[device].Visible = on;
|
2014-05-31 06:37:02 +02:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-05-30 22:39:39 +02:00
|
|
|
|
void ScpForm_Report(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (InvokeRequired)
|
|
|
|
|
Invoke(new HotKeysDelegate(Hotkeys), new object[] { sender, e });
|
|
|
|
|
else
|
|
|
|
|
Hotkeys(sender, e);
|
|
|
|
|
}
|
|
|
|
|
|
2015-02-08 22:51:52 +01:00
|
|
|
|
protected void On_Debug(object sender, DebugEventArgs e)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2014-12-17 19:29:22 +01:00
|
|
|
|
//logWriter.WriteLine(e.Time + ":\t" + e.Data);
|
|
|
|
|
//logWriter.Flush();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
LogDebug(e.Time, e.Data, e.Warning);
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
2014-05-30 22:39:39 +02:00
|
|
|
|
|
|
|
|
|
private void lBProfiles_MouseDoubleClick(object sender, MouseEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
ShowOptions(4, lBProfiles.SelectedItem.ToString());
|
2014-05-30 22:39:39 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2014-05-31 06:37:02 +02:00
|
|
|
|
private void lBProfiles_KeyDown(object sender, KeyEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0 && opt == null)
|
|
|
|
|
{
|
|
|
|
|
if (e.KeyValue == 13)
|
|
|
|
|
ShowOptions(4, lBProfiles.SelectedItem.ToString());
|
|
|
|
|
if (e.KeyValue == 46)
|
|
|
|
|
tsBDeleteProfle_Click(this, e);
|
|
|
|
|
if (e.KeyValue == 67 && e.Modifiers == Keys.Control)
|
|
|
|
|
tSBDupProfile_Click(this, e);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-31 19:27:43 +02:00
|
|
|
|
private void assignToController1ToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
cbs[0].SelectedIndex = lBProfiles.SelectedIndex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void assignToController2ToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
cbs[1].SelectedIndex = lBProfiles.SelectedIndex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void assignToController3ToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
cbs[2].SelectedIndex = lBProfiles.SelectedIndex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void assignToController4ToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
cbs[3].SelectedIndex = lBProfiles.SelectedIndex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tsBNewProfile_Click(object sender, EventArgs e) //Also used for context menu
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
|
|
|
|
ShowOptions(4, "");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void tsBNEditProfile_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0)
|
|
|
|
|
ShowOptions(4, lBProfiles.SelectedItem.ToString());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tsBDeleteProfle_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0)
|
|
|
|
|
{
|
|
|
|
|
string filename = lBProfiles.SelectedItem.ToString();
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (MessageBox.Show(Properties.Resources.ProfileCannotRestore.Replace("*Profile name*", "\"" + filename + "\""), Properties.Resources.DeleteProfile, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
System.IO.File.Delete(appdatapath + @"\Profiles\" + filename + ".xml");
|
2014-05-30 22:39:39 +02:00
|
|
|
|
RefreshProfiles();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-05-30 22:39:39 +02:00
|
|
|
|
private void tSBDupProfile_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
string filename = "";
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
{
|
2014-05-30 22:39:39 +02:00
|
|
|
|
filename = lBProfiles.SelectedItem.ToString();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
DupBox MTB = new DupBox(filename, this);
|
2014-05-30 22:39:39 +02:00
|
|
|
|
MTB.TopLevel = false;
|
|
|
|
|
MTB.Dock = DockStyle.Top;
|
|
|
|
|
MTB.Visible = true;
|
|
|
|
|
MTB.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
|
|
|
|
tabProfiles.Controls.Add(MTB);
|
|
|
|
|
lBProfiles.SendToBack();
|
|
|
|
|
toolStrip1.SendToBack();
|
|
|
|
|
toolStrip1.Enabled = false;
|
|
|
|
|
lBProfiles.Enabled = false;
|
|
|
|
|
MTB.FormClosed += delegate { toolStrip1.Enabled = true; lBProfiles.Enabled = true; };
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-05-31 06:37:02 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void tSBImportProfile_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (appdatapath == Directory.GetParent(Assembly.GetExecutingAssembly().Location).FullName)
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
openProfiles.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\DS4Tool" + @"\Profiles\";
|
|
|
|
|
else
|
|
|
|
|
openProfiles.InitialDirectory = Directory.GetParent(Assembly.GetExecutingAssembly().Location).FullName + @"\Profiles\";
|
2014-05-31 06:37:02 +02:00
|
|
|
|
if (openProfiles.ShowDialog() == System.Windows.Forms.DialogResult.OK)
|
|
|
|
|
{
|
|
|
|
|
string[] files = openProfiles.FileNames;
|
|
|
|
|
for (int i = 0; i < files.Length; i++)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Copy(openProfiles.FileNames[i], appdatapath + "\\Profiles\\" + Path.GetFileName(files[i]), true);
|
2014-05-31 06:37:02 +02:00
|
|
|
|
RefreshProfiles();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tSBExportProfile_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex >= 0)
|
|
|
|
|
{
|
|
|
|
|
Stream stream;
|
2015-11-28 06:47:26 +01:00
|
|
|
|
Stream profile = new StreamReader(appdatapath + "\\Profiles\\" + lBProfiles.SelectedItem.ToString() + ".xml").BaseStream;
|
2014-05-31 06:37:02 +02:00
|
|
|
|
if (saveProfiles.ShowDialog() == System.Windows.Forms.DialogResult.OK)
|
|
|
|
|
if ((stream = saveProfiles.OpenFile()) != null)
|
|
|
|
|
{
|
|
|
|
|
profile.CopyTo(stream);
|
|
|
|
|
profile.Close();
|
|
|
|
|
stream.Close();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-06-21 20:00:28 +02:00
|
|
|
|
|
2014-05-12 07:48:50 +02:00
|
|
|
|
private void ShowOptions(int devID, string profile)
|
2014-03-28 02:50:40 +01:00
|
|
|
|
{
|
2015-11-30 22:15:17 +01:00
|
|
|
|
//if (opt != null)
|
|
|
|
|
//opt.Close();
|
2014-06-21 20:00:28 +02:00
|
|
|
|
Show();
|
|
|
|
|
WindowState = FormWindowState.Normal;
|
|
|
|
|
toolStrip1.Enabled = false;
|
|
|
|
|
tSOptions.Visible = true;
|
|
|
|
|
toolStrip1.Visible = false;
|
|
|
|
|
if (profile != "")
|
|
|
|
|
tSTBProfile.Text = profile;
|
|
|
|
|
else
|
2014-08-17 00:09:15 +02:00
|
|
|
|
tSTBProfile.Text = "<" + Properties.Resources.TypeProfileName + ">";
|
2015-11-30 22:15:17 +01:00
|
|
|
|
//opt = new Options(devID, profile, this);
|
2014-06-21 20:00:28 +02:00
|
|
|
|
lBProfiles.SendToBack();
|
|
|
|
|
toolStrip1.SendToBack();
|
|
|
|
|
tSOptions.SendToBack();
|
2015-11-30 22:15:17 +01:00
|
|
|
|
opt.BringToFront();
|
|
|
|
|
oldsize = Size;
|
2014-06-21 20:00:28 +02:00
|
|
|
|
{
|
2015-11-30 22:15:17 +01:00
|
|
|
|
if (Size.Height < (int)(90 * dpiy) + Options.mSize.Height)
|
|
|
|
|
Size = new System.Drawing.Size(Size.Width, (int)(90 * dpiy) + Options.mSize.Height);
|
|
|
|
|
if (Size.Width < (int)(20 * dpix) + Options.mSize.Width)
|
|
|
|
|
Size = new System.Drawing.Size((int)(20 * dpix) + Options.mSize.Width, Size.Height);
|
2014-06-21 20:00:28 +02:00
|
|
|
|
}
|
|
|
|
|
tabMain.SelectedIndex = 1;
|
2015-11-30 22:15:17 +01:00
|
|
|
|
opt.Reload(devID, profile);
|
|
|
|
|
opt.Visible = true;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
2015-11-30 22:15:17 +01:00
|
|
|
|
public void OptionsClosed()
|
|
|
|
|
{
|
|
|
|
|
RefreshProfiles();
|
|
|
|
|
Size = oldsize;
|
|
|
|
|
oldsize = new Size(0, 0);
|
|
|
|
|
tSBKeepSize.Text = Properties.Resources.KeepThisSize;
|
|
|
|
|
tSBKeepSize.Image = Properties.Resources.size;
|
|
|
|
|
tSBKeepSize.Enabled = true;
|
|
|
|
|
tSOptions.Visible = false;
|
|
|
|
|
toolStrip1.Visible = true;
|
|
|
|
|
toolStrip1.Enabled = true;
|
|
|
|
|
lbLastMessage.ForeColor = SystemColors.GrayText;
|
|
|
|
|
lbLastMessage.Text = lvDebug.Items[lvDebug.Items.Count - 1].SubItems[1].Text;
|
|
|
|
|
}
|
2014-05-12 07:48:50 +02:00
|
|
|
|
private void editButtons_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Button bn = (Button)sender;
|
|
|
|
|
int i = Int32.Parse(bn.Tag.ToString());
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (cbs[i].Text == "(" + Properties.Resources.NoProfileLoaded + ")")
|
2015-02-08 22:51:52 +01:00
|
|
|
|
ShowOptions(i, "");
|
|
|
|
|
else
|
|
|
|
|
ShowOptions(i, cbs[i].Text);
|
2014-05-12 07:48:50 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
2014-04-29 03:14:01 +02:00
|
|
|
|
private void editMenu_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
mAllowVisible = true;
|
|
|
|
|
this.Show();
|
|
|
|
|
WindowState = FormWindowState.Normal;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
ToolStripMenuItem em = (ToolStripMenuItem)sender;
|
|
|
|
|
int i = Int32.Parse(em.Tag.ToString());
|
2015-02-08 22:51:52 +01:00
|
|
|
|
if (em.Text == Properties.Resources.ContextNew.Replace("*number*", (i + 1).ToString()))
|
|
|
|
|
ShowOptions(i, "");
|
|
|
|
|
else
|
|
|
|
|
for (int t = 0; t < em.DropDownItems.Count - 2; t++)
|
|
|
|
|
if (((ToolStripMenuItem)em.DropDownItems[t]).Checked)
|
|
|
|
|
ShowOptions(i, ((ToolStripMenuItem)em.DropDownItems[t]).Text);
|
2014-04-29 03:14:01 +02:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-03-28 02:50:40 +01:00
|
|
|
|
private void lnkControllers_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
System.Diagnostics.Process.Start("control", "joy.cpl");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void hideDS4CheckBox_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
// Prevent the Game Controllers window from throwing an error when controllers are un/hidden
|
|
|
|
|
System.Diagnostics.Process[] rundll32 = System.Diagnostics.Process.GetProcessesByName("rundll32");
|
|
|
|
|
foreach (System.Diagnostics.Process rundll32Instance in rundll32)
|
|
|
|
|
foreach (System.Diagnostics.ProcessModule module in rundll32Instance.Modules)
|
|
|
|
|
if (module.FileName.Contains("joy.cpl"))
|
|
|
|
|
module.Dispose();
|
|
|
|
|
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
UseExclusiveMode = hideDS4CheckBox.Checked;
|
2015-11-28 06:47:26 +01:00
|
|
|
|
if (Environment.OSVersion.Version.Major >= 10 && Environment.OSVersion.Version.Build < 10586)
|
2015-08-13 05:53:43 +02:00
|
|
|
|
btnConnectDS4Win10.Visible = hideDS4CheckBox.Checked;
|
2014-07-26 01:17:45 +02:00
|
|
|
|
btnStartStop_Clicked(false);
|
|
|
|
|
btnStartStop_Clicked(false);
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Save();
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
2014-03-28 02:50:40 +01:00
|
|
|
|
private void startMinimizedCheckBox_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
StartMinimized = startMinimizedCheckBox.Checked;
|
|
|
|
|
Save();
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void lvDebug_ItemActivate(object sender, EventArgs e)
|
|
|
|
|
{
|
2014-04-30 02:58:18 +02:00
|
|
|
|
MessageBox.Show(((ListView)sender).FocusedItem.SubItems[1].Text, "Log");
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
2014-04-27 21:32:09 +02:00
|
|
|
|
|
2014-06-02 05:19:04 +02:00
|
|
|
|
private void Profile_Changed(object sender, EventArgs e) //cbs[i] changed
|
2014-04-27 21:32:09 +02:00
|
|
|
|
{
|
2014-04-29 03:14:01 +02:00
|
|
|
|
ComboBox cb = (ComboBox)sender;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
int tdevice = Int32.Parse(cb.Tag.ToString());
|
2015-02-13 21:19:59 +01:00
|
|
|
|
if (cb.Items[cb.Items.Count - 1].ToString() == "+" + Properties.Resources.PlusNewProfile)
|
2014-04-27 21:32:09 +02:00
|
|
|
|
{
|
|
|
|
|
if (cb.SelectedIndex < cb.Items.Count - 1)
|
|
|
|
|
{
|
2014-04-29 03:14:01 +02:00
|
|
|
|
for (int i = 0; i < shortcuts[tdevice].DropDownItems.Count; i++)
|
2014-04-29 10:01:13 +02:00
|
|
|
|
if (!(shortcuts[tdevice].DropDownItems[i] is ToolStripSeparator))
|
2014-04-30 02:58:18 +02:00
|
|
|
|
((ToolStripMenuItem)shortcuts[tdevice].DropDownItems[i]).Checked = false;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
((ToolStripMenuItem)shortcuts[tdevice].DropDownItems[cb.SelectedIndex]).Checked = true;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
LogDebug(DateTime.Now, Properties.Resources.UsingProfile.Replace("*number*", (tdevice + 1).ToString()).Replace("*Profile name*", cb.Text), false);
|
2014-08-17 00:09:15 +02:00
|
|
|
|
shortcuts[tdevice].Text = Properties.Resources.ContextEdit.Replace("*number*", (tdevice + 1).ToString());
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
ProfilePath[tdevice] = cb.Items[cb.SelectedIndex].ToString();
|
|
|
|
|
Save();
|
|
|
|
|
LoadProfile(tdevice, true, Program.rootHub);
|
2015-11-28 06:47:26 +01:00
|
|
|
|
if (UseCustomLed[tdevice])
|
|
|
|
|
lights[tdevice].BackColor = CustomColor[tdevice].ToColorA;
|
|
|
|
|
else
|
|
|
|
|
lights[tdevice].BackColor = MainColor[tdevice].ToColorA;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
}
|
|
|
|
|
else if (cb.SelectedIndex == cb.Items.Count - 1 && cb.Items.Count > 1) //if +New Profile selected
|
2014-05-12 07:48:50 +02:00
|
|
|
|
ShowOptions(tdevice, "");
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (cb.Text == "(" + Properties.Resources.NoProfileLoaded + ")")
|
|
|
|
|
ebns[tdevice].Text = Properties.Resources.New;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
else
|
2014-08-17 00:09:15 +02:00
|
|
|
|
ebns[tdevice].Text = Properties.Resources.EditProfile;
|
2014-04-27 21:32:09 +02:00
|
|
|
|
}
|
2014-09-15 04:37:14 +02:00
|
|
|
|
ControllerStatusChanged(); //to update profile name in notify icon
|
2014-04-29 03:14:01 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Profile_Changed_Menu(object sender, ToolStripItemClickedEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ToolStripMenuItem tS = (ToolStripMenuItem)sender;
|
|
|
|
|
int tdevice = Int32.Parse(tS.Tag.ToString());
|
2014-04-29 10:01:13 +02:00
|
|
|
|
if (!(e.ClickedItem is ToolStripSeparator))
|
2014-05-12 07:48:50 +02:00
|
|
|
|
if (e.ClickedItem != tS.DropDownItems[tS.DropDownItems.Count - 1]) //if +New Profile not selected
|
2014-06-02 05:19:04 +02:00
|
|
|
|
cbs[tdevice].SelectedIndex = tS.DropDownItems.IndexOf(e.ClickedItem);
|
2014-05-12 07:48:50 +02:00
|
|
|
|
else //if +New Profile selected
|
|
|
|
|
ShowOptions(tdevice, "");
|
2014-04-29 03:14:01 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
contextclose = true;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
this.Close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void openToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2014-11-20 20:03:18 +01:00
|
|
|
|
mAllowVisible = true;
|
2014-04-29 03:14:01 +02:00
|
|
|
|
this.Show();
|
2015-02-08 22:51:52 +01:00
|
|
|
|
Focus();
|
2014-04-29 03:14:01 +02:00
|
|
|
|
WindowState = FormWindowState.Normal;
|
2014-09-02 01:23:02 +02:00
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-09-02 01:23:02 +02:00
|
|
|
|
private void startToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
btnStartStop_Clicked();
|
|
|
|
|
}
|
2014-05-30 22:39:39 +02:00
|
|
|
|
private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
|
2014-05-16 00:10:17 +02:00
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
if (e.Button == System.Windows.Forms.MouseButtons.Middle)
|
2014-12-13 21:12:03 +01:00
|
|
|
|
{
|
|
|
|
|
contextclose = true;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
this.Close();
|
2014-12-13 21:12:03 +01:00
|
|
|
|
}
|
2014-05-30 22:39:39 +02:00
|
|
|
|
}
|
|
|
|
|
private void notifyIcon1_BalloonTipClicked(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
this.Show();
|
|
|
|
|
WindowState = FormWindowState.Normal;
|
2014-05-16 00:10:17 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void llbHelp_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
Hotkeys hotkeysForm = new Hotkeys();
|
2014-05-16 00:10:17 +02:00
|
|
|
|
hotkeysForm.Icon = this.Icon;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
hotkeysForm.Text = llbHelp.Text;
|
2014-05-16 00:10:17 +02:00
|
|
|
|
hotkeysForm.ShowDialog();
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-21 19:39:56 +02:00
|
|
|
|
private void StartWindowsCheckBox_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
RegistryKey KeyLoc = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
|
2014-06-14 21:14:27 +02:00
|
|
|
|
if (StartWindowsCheckBox.Checked && !File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk"))
|
2014-06-13 21:52:25 +02:00
|
|
|
|
appShortcutToStartup();
|
2014-06-14 21:14:27 +02:00
|
|
|
|
else if (!StartWindowsCheckBox.Checked)
|
2014-06-13 21:52:25 +02:00
|
|
|
|
File.Delete(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk");
|
|
|
|
|
KeyLoc.DeleteValue("DS4Tool", false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void appShortcutToStartup()
|
|
|
|
|
{
|
|
|
|
|
Type t = Type.GetTypeFromCLSID(new Guid("72C24DD5-D70A-438B-8A42-98424B88AFB8")); //Windows Script Host Shell Object
|
|
|
|
|
dynamic shell = Activator.CreateInstance(t);
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
var lnk = shell.CreateShortcut(Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\DS4Windows.lnk");
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
string app = Assembly.GetExecutingAssembly().Location;
|
|
|
|
|
lnk.TargetPath = Assembly.GetExecutingAssembly().Location;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
lnk.Arguments = "-m";
|
2014-06-13 21:52:25 +02:00
|
|
|
|
lnk.IconLocation = app.Replace('\\', '/');
|
|
|
|
|
lnk.Save();
|
|
|
|
|
}
|
|
|
|
|
finally
|
|
|
|
|
{
|
|
|
|
|
Marshal.FinalReleaseComObject(lnk);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
finally
|
|
|
|
|
{
|
|
|
|
|
Marshal.FinalReleaseComObject(shell);
|
|
|
|
|
}
|
2014-05-21 19:39:56 +02:00
|
|
|
|
}
|
|
|
|
|
|
2014-05-31 06:37:02 +02:00
|
|
|
|
private void tabMain_SelectedIndexChanged(object sender, EventArgs e)
|
2014-05-30 22:39:39 +02:00
|
|
|
|
{
|
2014-12-03 23:36:54 +01:00
|
|
|
|
lbLastMessage.Visible = tabMain.SelectedTab != tabLog;
|
|
|
|
|
if (tabMain.SelectedTab == tabLog)
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
chData.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize);
|
2014-12-03 23:36:54 +01:00
|
|
|
|
if (tabMain.SelectedTab == tabSettings)
|
|
|
|
|
{
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
lbLastMessage.ForeColor = SystemColors.GrayText;
|
|
|
|
|
lbLastMessage.Text = Properties.Resources.HoverOverItems;
|
2014-12-03 23:36:54 +01:00
|
|
|
|
foreach (System.Windows.Forms.Control control in fLPSettings.Controls)
|
|
|
|
|
{
|
|
|
|
|
if (control.HasChildren)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
foreach (System.Windows.Forms.Control ctrl in control.Controls)
|
|
|
|
|
ctrl.MouseHover += Items_MouseHover;
|
2014-12-03 23:36:54 +01:00
|
|
|
|
control.MouseHover += Items_MouseHover;
|
|
|
|
|
}
|
|
|
|
|
}
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
else if (lvDebug.Items.Count > 0)
|
2014-12-03 23:36:54 +01:00
|
|
|
|
lbLastMessage.Text = lbLastMessage.Text = lvDebug.Items[lvDebug.Items.Count - 1].SubItems[1].Text;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
else
|
|
|
|
|
lbLastMessage.Text = "";
|
2015-12-05 09:55:11 +01:00
|
|
|
|
|
|
|
|
|
if (tabMain.SelectedIndex != 1 || !opt.Visible)
|
|
|
|
|
opt.inputtimer.Stop();
|
|
|
|
|
else if (opt.Visible && tabMain.SelectedIndex == 1)
|
|
|
|
|
opt.inputtimer.Start();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
Program.rootHub.eastertime = tabMain.SelectedTab == tabLog;
|
2014-05-30 22:39:39 +02:00
|
|
|
|
}
|
|
|
|
|
|
2014-12-03 23:36:54 +01:00
|
|
|
|
private void Items_MouseHover(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
switch (((System.Windows.Forms.Control)sender).Name)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
//if (File.Exists(appdatapath + "\\Auto Profiles.xml"))
|
|
|
|
|
case "linkUninstall": lbLastMessage.Text = Properties.Resources.IfRemovingDS4Windows; break;
|
|
|
|
|
case "cBSwipeProfiles": lbLastMessage.Text = Properties.Resources.TwoFingerSwipe; break;
|
|
|
|
|
case "cBQuickCharge": lbLastMessage.Text = Properties.Resources.QuickCharge; break;
|
|
|
|
|
case "pnlXIPorts": lbLastMessage.Text = Properties.Resources.XinputPorts; break;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
case "lbUseXIPorts": lbLastMessage.Text = Properties.Resources.XinputPorts; break;
|
|
|
|
|
case "nUDXIPorts": lbLastMessage.Text = Properties.Resources.XinputPorts; break;
|
|
|
|
|
case "lbLastXIPort": lbLastMessage.Text = Properties.Resources.XinputPorts; break;
|
|
|
|
|
case "cBCloseMini": lbLastMessage.Text = Properties.Resources.CloseMinimize; break;
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
default: lbLastMessage.Text = Properties.Resources.HoverOverItems; break;
|
2014-12-03 23:36:54 +01:00
|
|
|
|
}
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
if (lbLastMessage.Text != Properties.Resources.HoverOverItems)
|
2014-12-03 23:36:54 +01:00
|
|
|
|
lbLastMessage.ForeColor = Color.Black;
|
|
|
|
|
else
|
|
|
|
|
lbLastMessage.ForeColor = SystemColors.GrayText;
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-31 19:27:43 +02:00
|
|
|
|
private void lBProfiles_MouseDown(object sender, MouseEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
lBProfiles.SelectedIndex = lBProfiles.IndexFromPoint(e.X, e.Y);
|
|
|
|
|
if (e.Button == System.Windows.Forms.MouseButtons.Right)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex < 0)
|
|
|
|
|
{
|
2014-06-02 05:19:04 +02:00
|
|
|
|
cMProfile.ShowImageMargin = false;
|
2014-05-31 19:27:43 +02:00
|
|
|
|
assignToController1ToolStripMenuItem.Visible = false;
|
|
|
|
|
assignToController2ToolStripMenuItem.Visible = false;
|
|
|
|
|
assignToController3ToolStripMenuItem.Visible = false;
|
|
|
|
|
assignToController4ToolStripMenuItem.Visible = false;
|
|
|
|
|
deleteToolStripMenuItem.Visible = false;
|
|
|
|
|
editToolStripMenuItem.Visible = false;
|
|
|
|
|
duplicateToolStripMenuItem.Visible = false;
|
|
|
|
|
exportToolStripMenuItem.Visible = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-06-02 05:19:04 +02:00
|
|
|
|
cMProfile.ShowImageMargin = true;
|
2014-05-31 19:27:43 +02:00
|
|
|
|
assignToController1ToolStripMenuItem.Visible = true;
|
|
|
|
|
assignToController2ToolStripMenuItem.Visible = true;
|
|
|
|
|
assignToController3ToolStripMenuItem.Visible = true;
|
|
|
|
|
assignToController4ToolStripMenuItem.Visible = true;
|
2014-06-02 05:19:04 +02:00
|
|
|
|
ToolStripMenuItem[] assigns = { assignToController1ToolStripMenuItem,
|
|
|
|
|
assignToController2ToolStripMenuItem,
|
|
|
|
|
assignToController3ToolStripMenuItem,
|
|
|
|
|
assignToController4ToolStripMenuItem };
|
|
|
|
|
for (int i = 0; i < 4; i++)
|
|
|
|
|
{
|
|
|
|
|
if (lBProfiles.SelectedIndex == cbs[i].SelectedIndex)
|
|
|
|
|
assigns[i].Checked = true;
|
|
|
|
|
else
|
|
|
|
|
assigns[i].Checked = false;
|
|
|
|
|
}
|
2014-05-31 19:27:43 +02:00
|
|
|
|
deleteToolStripMenuItem.Visible = true;
|
|
|
|
|
editToolStripMenuItem.Visible = true;
|
|
|
|
|
duplicateToolStripMenuItem.Visible = true;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
exportToolStripMenuItem.Visible = true;
|
2014-05-31 19:27:43 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-06-02 05:19:04 +02:00
|
|
|
|
|
|
|
|
|
private void ScpForm_DragDrop(object sender, DragEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
bool therewasanxml = false;
|
|
|
|
|
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop, false);
|
|
|
|
|
for (int i = 0; i < files.Length; i++)
|
|
|
|
|
if (files[i].EndsWith(".xml"))
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Copy(files[i], appdatapath + "\\Profiles\\" + Path.GetFileName(files[i]), true);
|
2014-06-02 05:19:04 +02:00
|
|
|
|
therewasanxml = true;
|
|
|
|
|
}
|
|
|
|
|
if (therewasanxml)
|
|
|
|
|
RefreshProfiles();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ScpForm_DragEnter(object sender, DragEventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
|
|
|
|
e.Effect = DragDropEffects.Copy; // Okay
|
|
|
|
|
else
|
|
|
|
|
e.Effect = DragDropEffects.None; // Unknown data, ignore it
|
|
|
|
|
}
|
|
|
|
|
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-06-02 19:29:38 +02:00
|
|
|
|
|
|
|
|
|
private void tBProfile_TextChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (tSTBProfile.Text != null && tSTBProfile.Text != "" && !tSTBProfile.Text.Contains("\\") && !tSTBProfile.Text.Contains("/") && !tSTBProfile.Text.Contains(":") && !tSTBProfile.Text.Contains("*") && !tSTBProfile.Text.Contains("?") && !tSTBProfile.Text.Contains("\"") && !tSTBProfile.Text.Contains("<") && !tSTBProfile.Text.Contains(">") && !tSTBProfile.Text.Contains("|"))
|
|
|
|
|
tSTBProfile.ForeColor = System.Drawing.SystemColors.WindowText;
|
|
|
|
|
else
|
|
|
|
|
tSTBProfile.ForeColor = System.Drawing.SystemColors.GrayText;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tBProfile_Enter(object sender, EventArgs e)
|
|
|
|
|
{
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (tSTBProfile.Text == "<" + Properties.Resources.TypeProfileName + ">")
|
2014-06-02 19:29:38 +02:00
|
|
|
|
tSTBProfile.Text = "";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tBProfile_Leave(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (tSTBProfile.Text == "")
|
2014-08-17 00:09:15 +02:00
|
|
|
|
tSTBProfile.Text = "<" + Properties.Resources.TypeProfileName + ">";
|
2014-06-02 19:29:38 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void tSBCancel_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-11-30 22:15:17 +01:00
|
|
|
|
if (opt.Visible)
|
2014-06-02 19:29:38 +02:00
|
|
|
|
opt.Close();
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-13 21:52:25 +02:00
|
|
|
|
private void tSBSaveProfile_Click(object sender, EventArgs e)
|
2014-06-02 19:29:38 +02:00
|
|
|
|
{
|
2015-11-30 22:15:17 +01:00
|
|
|
|
if (opt.Visible)
|
2014-06-02 19:29:38 +02:00
|
|
|
|
{
|
2014-12-13 21:12:03 +01:00
|
|
|
|
opt.saving = true;
|
2014-06-02 19:29:38 +02:00
|
|
|
|
opt.Set();
|
|
|
|
|
|
|
|
|
|
if (tSTBProfile.Text != null && tSTBProfile.Text != "" && !tSTBProfile.Text.Contains("\\") && !tSTBProfile.Text.Contains("/") && !tSTBProfile.Text.Contains(":") && !tSTBProfile.Text.Contains("*") && !tSTBProfile.Text.Contains("?") && !tSTBProfile.Text.Contains("\"") && !tSTBProfile.Text.Contains("<") && !tSTBProfile.Text.Contains(">") && !tSTBProfile.Text.Contains("|"))
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
System.IO.File.Delete(appdatapath + @"\Profiles\" + opt.filename + ".xml");
|
|
|
|
|
ProfilePath[opt.device] = tSTBProfile.Text;
|
|
|
|
|
SaveProfile(opt.device, tSTBProfile.Text, opt.buttons.ToArray(), opt.subbuttons.ToArray());
|
|
|
|
|
Save();
|
2014-06-02 19:29:38 +02:00
|
|
|
|
opt.Close();
|
|
|
|
|
}
|
|
|
|
|
else
|
2014-08-17 00:09:15 +02:00
|
|
|
|
MessageBox.Show(Properties.Resources.ValidName, Properties.Resources.NotValid, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
|
2014-06-02 19:29:38 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
private void tSBKeepSize_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
oldsize = Size;
|
2014-08-17 00:09:15 +02:00
|
|
|
|
tSBKeepSize.Text = Properties.Resources.WillKeep;
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
tSBKeepSize.Image = Properties.Resources._checked;
|
|
|
|
|
tSBKeepSize.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-06 22:38:52 +02:00
|
|
|
|
private void cBUpdate_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (!cBUpdate.Checked)
|
|
|
|
|
{
|
|
|
|
|
nUDUpdateTime.Value = 0;
|
|
|
|
|
pNUpdate.Enabled = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
nUDUpdateTime.Value = 1;
|
|
|
|
|
cBUpdateTime.SelectedIndex = 0;
|
|
|
|
|
pNUpdate.Enabled = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void nUDUpdateTime_ValueChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (cBUpdateTime.SelectedIndex == 0)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
CheckWhen = (int)nUDUpdateTime.Value;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
else if (cBUpdateTime.SelectedIndex == 1)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
CheckWhen = (int)nUDUpdateTime.Value * 24;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
if (nUDUpdateTime.Value < 1)
|
|
|
|
|
cBUpdate.Checked = false;
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
if (nUDUpdateTime.Value == 1)
|
|
|
|
|
{
|
|
|
|
|
int index = cBUpdateTime.SelectedIndex;
|
|
|
|
|
cBUpdateTime.Items.Clear();
|
2014-08-17 00:09:15 +02:00
|
|
|
|
cBUpdateTime.Items.Add(Properties.Resources.Hour);
|
|
|
|
|
cBUpdateTime.Items.Add(Properties.Resources.Day);
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
cBUpdateTime.SelectedIndex = index;
|
|
|
|
|
}
|
2014-08-17 00:09:15 +02:00
|
|
|
|
else if (cBUpdateTime.Items[0].ToString() == Properties.Resources.Hour)
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
{
|
|
|
|
|
int index = cBUpdateTime.SelectedIndex;
|
|
|
|
|
cBUpdateTime.Items.Clear();
|
2014-08-17 00:09:15 +02:00
|
|
|
|
cBUpdateTime.Items.Add(Properties.Resources.Hours);
|
|
|
|
|
cBUpdateTime.Items.Add(Properties.Resources.Days);
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
cBUpdateTime.SelectedIndex = index;
|
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void cBUpdateTime_SelectedIndexChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (cBUpdateTime.SelectedIndex == 0)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
CheckWhen = (int)nUDUpdateTime.Value;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
else if (cBUpdateTime.SelectedIndex == 1)
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
CheckWhen = (int)nUDUpdateTime.Value * 24;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void lLBUpdate_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
2014-10-13 23:56:04 +02:00
|
|
|
|
Uri url = new Uri("http://ds4windows.com/Files/Builds/newest.txt"); //Sorry other devs, gonna have to find your own server
|
2014-06-06 22:38:52 +02:00
|
|
|
|
WebClient wct = new WebClient();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
wct.DownloadFileAsync(url, appdatapath + "\\version.txt");
|
2014-06-06 22:38:52 +02:00
|
|
|
|
wct.DownloadFileCompleted += wct_DownloadFileCompleted;
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-21 20:00:28 +02:00
|
|
|
|
private void cBDisconnectBT_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
DCBTatStop = cBDisconnectBT.Checked;
|
2014-06-21 20:00:28 +02:00
|
|
|
|
}
|
|
|
|
|
|
2014-06-06 22:38:52 +02:00
|
|
|
|
void wct_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
LastChecked = DateTime.Now;
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location);
|
|
|
|
|
string version2 = fvi.FileVersion;
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
string newversion2 = File.ReadAllText(appdatapath + "\\version.txt");
|
|
|
|
|
if (version2.Replace(',', '.').CompareTo(File.ReadAllText(appdatapath + "\\version.txt")) == -1)//CompareVersions();
|
2014-08-17 00:09:15 +02:00
|
|
|
|
if (MessageBox.Show(Properties.Resources.DownloadVersion.Replace("*number*", newversion2), Properties.Resources.DS4Update, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
{
|
|
|
|
|
if (!File.Exists(exepath + "\\DS4Updater.exe") || (File.Exists(exepath + "\\DS4Updater.exe")
|
|
|
|
|
&& (FileVersionInfo.GetVersionInfo(exepath + "\\DS4Updater.exe").FileVersion.CompareTo("1.1.0.0") == -1)))
|
|
|
|
|
{
|
2014-10-13 23:56:04 +02:00
|
|
|
|
Uri url2 = new Uri("http://ds4windows.com/Files/DS4Updater.exe");
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
WebClient wc2 = new WebClient();
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (appdatapath == exepath)
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
wc2.DownloadFile(url2, exepath + "\\DS4Updater.exe");
|
|
|
|
|
else
|
2014-06-06 22:38:52 +02:00
|
|
|
|
{
|
2014-08-17 00:09:15 +02:00
|
|
|
|
MessageBox.Show(Properties.Resources.PleaseDownloadUpdater);
|
2014-10-13 23:56:04 +02:00
|
|
|
|
Process.Start("http://ds4windows.com/Files/DS4Updater.exe");
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
}
|
2014-08-18 07:18:46 +02:00
|
|
|
|
Process p = new Process();
|
|
|
|
|
p.StartInfo.FileName = exepath + "\\DS4Updater.exe";
|
2015-03-15 19:16:01 +01:00
|
|
|
|
if (!cBDownloadLangauge.Checked)
|
2015-02-08 22:51:52 +01:00
|
|
|
|
p.StartInfo.Arguments = "-skipLang";
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (AdminNeeded())
|
2014-08-18 07:18:46 +02:00
|
|
|
|
p.StartInfo.Verb = "runas";
|
2014-12-02 01:07:29 +01:00
|
|
|
|
try { p.Start(); Close(); }
|
2015-02-08 22:51:52 +01:00
|
|
|
|
catch { }
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
}
|
2014-06-06 22:38:52 +02:00
|
|
|
|
else
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Delete(appdatapath + "\\version.txt");
|
Shift modifier: Hold an action to use another set of controls, if nothing is set to the shifted control, in falls back to the default action
View input of controls in profiles, see exactly when a deadzone is passed and check the input delay for controllers (special thanks to jhebbel), click the on sixaxis panel
Click the Empty text on in the lightbar box to copy the lightbar color from full to empty.
While opened, option to keep the window size after closing the profile's settings
Old profiles are automatically upgraded if it's missing new settings, such as how colors are now saved, sixaxis deadzones, and shift controls
Other UI changes for profile settings, flipped touchpad and other settings boxes
Others:
Fix for when clicking the semicolon in the select an action screen
Fix assigning Sixaxis action to a key
minor UI changes and bug fixes, such as auto resize of the log listview
DS4Updater: Also now works for the new numbering system, can read the version number right from the exe instead of in profiles.xml, UI additions to better notify users of errors, Bug fixes for non-portable users
2014-07-07 21:22:42 +02:00
|
|
|
|
else
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
File.Delete(appdatapath + "\\version.txt");
|
2014-08-17 00:09:15 +02:00
|
|
|
|
MessageBox.Show(Properties.Resources.UpToDate, "DS4Windows Updater");
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void linkProfiles_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
System.Diagnostics.Process.Start(appdatapath + "\\Profiles");
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void linkUninstall_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (File.Exists(appdatapath + "\\Virtual Bus Driver\\ScpDriver.exe"))
|
|
|
|
|
try { System.Diagnostics.Process.Start(appdatapath + "\\Virtual Bus Driver\\ScpDriver.exe"); }
|
|
|
|
|
catch { System.Diagnostics.Process.Start(appdatapath + "\\Virtual Bus Driver"); }
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void cBNotifications_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
//Notifications = cBNotifications.Checked;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void cBoxNotifications_SelectedIndexChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Notifications = cBoxNotifications.SelectedIndex;
|
2014-06-06 22:38:52 +02:00
|
|
|
|
}
|
2014-06-09 01:41:36 +02:00
|
|
|
|
|
|
|
|
|
private void lLSetup_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
|
|
|
|
{
|
2014-12-02 01:07:29 +01:00
|
|
|
|
Process p = new Process();
|
|
|
|
|
p.StartInfo.FileName = Assembly.GetExecutingAssembly().Location;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
p.StartInfo.Arguments = "-driverinstall";
|
2014-12-02 01:07:29 +01:00
|
|
|
|
p.StartInfo.Verb = "runas";
|
|
|
|
|
try { p.Start(); }
|
|
|
|
|
catch { }
|
|
|
|
|
//WelcomeDialog wd = new WelcomeDialog();
|
|
|
|
|
//wd.ShowDialog();
|
Version 1.4.222
Added Press/Toggle Key to Special Actions, you can hold a trigger to
hold a key or toggle a key with one set of buttons, and untoggle it by
pressing or releasing another set of buttons
Added Disconnect BT to Special Actions, PS+Options to d/c is now added
to Special actions and can be enabled for each profile. You can now set
Disconnect BT to any control(s) and how long you need to hold the
control(s) to take affect
Added Partial German Translation (Thanks Michél)
Added 95% Finished Russian Translation (Thanks overclockers.ru members:
KoNoRIMCI & Sr_psycho)
Added Partial Italian Translation (Thanks Giulio)
Updates to the translations sheets, they should now have every bit of
text in DS4Windows, minus the controls of the controller
English Spelling fixes
Main/Starting tab only shows info for connected controllers, and context
menu only shows options for connected controllers.
Mouse wheel scrolling with analog sticks/triggers/gyro, the mouse now
scrolls smoothly
Slightly reworked analog mouse movement + mouse acceleration (not as
janky anymore)
When starting DS4Windows, if no controllers are connected, DS4Windows
defaults to the profile tab
Certain log warnings (Like unable to get controller exclusively) shows
up in red
Easter egg: try pressing a few buttons in sequence while in the log tab
Fixed Start Profile with TP off being unchecked next time a profile is
opened
Other minor Bug Fixes, such as clearing the log then moving to a new tab
crashing DS4W
2015-01-17 21:16:48 +01:00
|
|
|
|
tabSettings.Text = originalsettingstext;
|
2014-07-08 20:21:09 +02:00
|
|
|
|
linkSetup.LinkColor = Color.Blue;
|
2014-06-09 01:41:36 +02:00
|
|
|
|
}
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
|
2014-06-13 21:52:25 +02:00
|
|
|
|
protected void ScpForm_Closing(object sender, FormClosingEventArgs e)
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
{
|
2015-11-30 22:15:17 +01:00
|
|
|
|
if (opt.Visible)
|
2014-06-13 21:52:25 +02:00
|
|
|
|
{
|
|
|
|
|
opt.Close();
|
|
|
|
|
e.Cancel = true;
|
|
|
|
|
return;
|
Rest of DS4Windows has been upped to .NET 4.5 (If you have .net 4/already can run DS4Windows, this won't affect you), thanks to this update, you can now...
Add delay to macros from one millisecond to 60 seconds, macros with delays only run once until pressed again. Without delays, the macro can be repeated while held down.
Profiles and settings are now back inside the application folder to help portability. It will remain in appdata as previous versions if DS4Windows is in a admin folder, I may try to add a setting for location saving.
Import profile option will automatically go to the appdata profile folder, auto profiles and settings will automatically copy over.
Option to delete the appdata folder if not in use in the settings tab, this way it helps with cleanup.
Another fix for auto profiles startup bug
Better reading of autoprofile program path names
Now only one instance of DS4Windows is possible, if another DS4Tool or DS4Windows that is not this version is started, this DS4Windows comes back into focus.
UI fixes
2014-06-10 21:45:09 +02:00
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
if (cBCloseMini.Checked && !contextclose)
|
|
|
|
|
{
|
|
|
|
|
this.WindowState = FormWindowState.Minimized;
|
|
|
|
|
e.Cancel = true;
|
|
|
|
|
return;
|
|
|
|
|
}
|
2014-06-12 20:46:00 +02:00
|
|
|
|
if (systemShutdown)
|
|
|
|
|
// Reset the variable because the user might cancel the
|
|
|
|
|
// shutdown.
|
|
|
|
|
{
|
|
|
|
|
systemShutdown = false;
|
|
|
|
|
DS4LightBar.shuttingdown = true;
|
|
|
|
|
}
|
|
|
|
|
if (oldsize == new System.Drawing.Size(0, 0))
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
FormWidth = this.Width;
|
|
|
|
|
FormHeight = this.Height;
|
2014-06-12 20:46:00 +02:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
FormWidth = oldsize.Width;
|
|
|
|
|
FormHeight = oldsize.Height;
|
2014-06-12 20:46:00 +02:00
|
|
|
|
}
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
if (!String.IsNullOrEmpty(appdatapath))
|
2014-06-12 20:46:00 +02:00
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
Save();
|
2014-12-13 21:12:03 +01:00
|
|
|
|
Program.rootHub.Stop();
|
2014-06-12 20:46:00 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
2014-06-21 20:00:28 +02:00
|
|
|
|
|
|
|
|
|
private void cBSwipeProfiles_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
SwipeProfiles = cBSwipeProfiles.Checked;
|
2014-06-21 20:00:28 +02:00
|
|
|
|
}
|
2014-10-21 04:31:13 +02:00
|
|
|
|
|
2014-11-20 20:03:18 +01:00
|
|
|
|
private void cBQuickCharge_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
QuickCharge = cBQuickCharge.Checked;
|
2014-11-20 20:03:18 +01:00
|
|
|
|
}
|
|
|
|
|
|
2014-10-21 04:31:13 +02:00
|
|
|
|
private void lbLastMessage_MouseHover(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
toolTip1.Show(lbLastMessage.Text, lbLastMessage, -3, -3);
|
2014-10-21 04:31:13 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void pnlButton_MouseLeave(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
toolTip1.Hide(lbLastMessage);
|
2014-10-21 04:31:13 +02:00
|
|
|
|
}
|
2014-12-03 23:36:54 +01:00
|
|
|
|
|
|
|
|
|
private void pnlXIPorts_MouseEnter(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
//oldxiport = (int)Math.Round(nUDXIPorts.Value,0);
|
|
|
|
|
}
|
|
|
|
|
int oldxiport;
|
|
|
|
|
private void pnlXIPorts_MouseLeave(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
2014-12-03 23:36:54 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void nUDXIPorts_ValueChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
lbLastXIPort.Text = "- " + ((int)Math.Round(nUDXIPorts.Value, 0) + 3);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void nUDXIPorts_Leave(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-02-08 22:51:52 +01:00
|
|
|
|
if (oldxiport != (int)Math.Round(nUDXIPorts.Value, 0))
|
|
|
|
|
{
|
|
|
|
|
oldxiport = (int)Math.Round(nUDXIPorts.Value, 0);
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
FirstXinputPort = oldxiport;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
Program.rootHub.x360Bus.FirstController = oldxiport;
|
|
|
|
|
btnStartStop_Click(sender, e);
|
|
|
|
|
btnStartStop_Click(sender, e);
|
|
|
|
|
}
|
2014-12-03 23:36:54 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void nUDXIPorts_Enter(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
oldxiport = (int)Math.Round(nUDXIPorts.Value, 0);
|
|
|
|
|
}
|
2014-12-13 21:12:03 +01:00
|
|
|
|
|
|
|
|
|
private void cBCloseMini_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
CloseMini = cBCloseMini.Checked;
|
2015-02-08 22:51:52 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void Pads_MouseHover(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Label lb = (Label)sender;
|
|
|
|
|
int i = Int32.Parse(lb.Tag.ToString());
|
|
|
|
|
if (Program.rootHub.DS4Controllers[i] != null && Program.rootHub.DS4Controllers[i].ConnectionType == ConnectionType.BT)
|
|
|
|
|
{
|
|
|
|
|
double latency = Program.rootHub.DS4Controllers[i].Latency;
|
|
|
|
|
toolTip1.Hide(Pads[i]);
|
|
|
|
|
toolTip1.Show(Properties.Resources.InputDelay.Replace("*number*", latency.ToString()), lb, lb.Size.Width, 0);
|
|
|
|
|
}
|
|
|
|
|
}
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
|
|
|
|
|
|
2015-02-08 22:51:52 +01:00
|
|
|
|
private void Pads_MouseLeave(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
toolTip1.Hide((Label)sender);
|
|
|
|
|
}
|
2015-08-13 05:53:43 +02:00
|
|
|
|
Process bat;
|
|
|
|
|
private void btnConnectDS4Win10_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (!runningBat)
|
|
|
|
|
{
|
|
|
|
|
StreamWriter w = new StreamWriter(exepath + "\\ConnectDS4.bat");
|
|
|
|
|
w.WriteLine("@echo off"); // Turn off echo
|
|
|
|
|
w.WriteLine("taskkill /IM explorer.exe /f");
|
|
|
|
|
w.WriteLine("echo Connect your DS4 controller"); //
|
|
|
|
|
w.WriteLine("pause");
|
|
|
|
|
w.WriteLine("start explorer.exe");
|
|
|
|
|
w.Close();
|
|
|
|
|
runningBat = true;
|
|
|
|
|
bat = Process.Start(exepath + "\\ConnectDS4.bat");
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-11-28 06:47:26 +01:00
|
|
|
|
int currentCustomLed;
|
|
|
|
|
private void EditCustomLed(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
currentCustomLed = int.Parse(((Button)sender).Tag.ToString());
|
|
|
|
|
useCustomColorToolStripMenuItem.Checked = UseCustomLed[currentCustomLed];
|
|
|
|
|
useProfileColorToolStripMenuItem.Checked = !UseCustomLed[currentCustomLed];
|
|
|
|
|
cMCustomLed.Show((Button)sender, new Point(0, ((Button)sender).Height));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void useProfileColorToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
UseCustomLed[currentCustomLed] = false;
|
|
|
|
|
lights[currentCustomLed].BackColor = MainColor[currentCustomLed].ToColorA;
|
|
|
|
|
Global.Save();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void useCustomColorToolStripMenuItem_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
advColorDialog.Color = CustomColor[currentCustomLed].ToColor;
|
|
|
|
|
if (advColorDialog.ShowDialog() == DialogResult.OK)
|
|
|
|
|
{
|
|
|
|
|
lights[currentCustomLed].BackColor = new DS4Color(advColorDialog.Color).ToColorA;
|
|
|
|
|
CustomColor[currentCustomLed] = new DS4Color(advColorDialog.Color);
|
|
|
|
|
UseCustomLed[currentCustomLed] = true;
|
|
|
|
|
Global.Save();
|
|
|
|
|
}
|
|
|
|
|
DS4LightBar.forcedFlash[currentCustomLed] = 0;
|
|
|
|
|
DS4LightBar.forcelight[currentCustomLed] = false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void advColorDialog_OnUpdateColor(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (sender is Color)
|
|
|
|
|
{
|
|
|
|
|
Color color = (Color)sender;
|
|
|
|
|
DS4Color dcolor = new DS4Color(color);
|
|
|
|
|
Console.WriteLine(dcolor);
|
|
|
|
|
DS4LightBar.forcedColor[currentCustomLed] = dcolor;
|
|
|
|
|
DS4LightBar.forcedFlash[currentCustomLed] = 0;
|
|
|
|
|
DS4LightBar.forcelight[currentCustomLed] = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-02-08 22:51:52 +01:00
|
|
|
|
|
|
|
|
|
private void cBDownloadLangauge_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
DownloadLang = cBDownloadLangauge.Checked;
|
2014-12-13 21:12:03 +01:00
|
|
|
|
}
|
2015-03-15 19:16:01 +01:00
|
|
|
|
|
|
|
|
|
private void cBFlashWhenLate_CheckedChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-31 05:34:22 +02:00
|
|
|
|
FlashWhenLate = cBFlashWhenLate.Checked;
|
|
|
|
|
nUDLatency.Enabled = cBFlashWhenLate.Checked;
|
|
|
|
|
lbMsLatency.Enabled = cBFlashWhenLate.Checked;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void nUDLatency_ValueChanged(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
FlashWhenLateAt = (int)Math.Round(nUDLatency.Value);
|
2015-03-15 19:16:01 +01:00
|
|
|
|
}
|
2014-03-28 02:50:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class ThemeUtil
|
|
|
|
|
{
|
|
|
|
|
[DllImport("UxTheme", CharSet = CharSet.Unicode, ExactSpelling = true)]
|
|
|
|
|
private static extern int SetWindowTheme(IntPtr hWnd, String appName, String partList);
|
|
|
|
|
|
|
|
|
|
public static void SetTheme(ListView lv)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
SetWindowTheme(lv.Handle, "Explorer", null);
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static void SetTheme(TreeView tv)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
SetWindowTheme(tv.Handle, "Explorer", null);
|
|
|
|
|
}
|
|
|
|
|
catch { }
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|