1.1 --- a/Hid/HidEvent.cs Sun Mar 15 21:26:51 2015 +0100
1.2 +++ b/Hid/HidEvent.cs Tue Mar 17 15:35:58 2015 +0100
1.3 @@ -115,7 +115,7 @@
1.4 /// Initialize an HidEvent from a WM_INPUT message
1.5 /// </summary>
1.6 /// <param name="hRawInputDevice">Device Handle as provided by RAWINPUTHEADER.hDevice, typically accessed as rawinput.header.hDevice</param>
1.7 - public Event(Message aMessage, HidEventRepeatDelegate aRepeatDelegate)
1.8 + public Event(Message aMessage, HidEventRepeatDelegate aRepeatDelegate, bool aRepeat)
1.9 {
1.10 RepeatCount = 0;
1.11 IsValid = false;
1.12 @@ -236,10 +236,10 @@
1.13 }
1.14
1.15 //
1.16 - if (IsButtonDown)
1.17 + if (IsButtonDown && aRepeat)
1.18 {
1.19 //TODO: Make this optional
1.20 - //StartRepeatTimer(iRepeatDelay);
1.21 + StartRepeatTimer(iRepeatDelay);
1.22 }
1.23
1.24 IsValid = true;
1.25 @@ -527,20 +527,12 @@
1.26 }
1.27
1.28 UsagePage usagePage = (UsagePage)UsagePage;
1.29 - switch (usagePage)
1.30 + string name = Enum.GetName(Utils.UsageType(usagePage), usage);
1.31 + if (name == null)
1.32 {
1.33 - case Hid.UsagePage.Consumer:
1.34 - usageText += ((ConsumerControl)usage).ToString();
1.35 - break;
1.36 -
1.37 - case Hid.UsagePage.WindowsMediaCenterRemoteControl:
1.38 - usageText += ((WindowsMediaCenterRemoteControl)usage).ToString();
1.39 - break;
1.40 -
1.41 - default:
1.42 - usageText += usage.ToString("X2");
1.43 - break;
1.44 + name += usage.ToString("X2");
1.45 }
1.46 + usageText += name;
1.47 }
1.48
1.49 //If we are a gamepad display axis and dpad values