WingMan
/trunk/WingMan/Bindings/KeySimulator.cs/KeySimulator.cs |
@@ -1,7 +1,10 @@ |
using System; |
using System.Collections.Generic; |
using System.IO; |
using System.Threading; |
using System.Threading.Tasks; |
using WindowsInput; |
using WindowsInput.Native; |
using MQTTnet; |
using SimWinInput; |
using WingMan.Communication; |
@@ -22,8 +25,17 @@ |
CancellationToken = cancellationToken; |
|
MqttCommunication.OnMessageReceived += OnMqttMessageReceived; |
|
InputSimulator = new InputSimulator(); |
/*var values = Enum.GetValues(typeof(InputSimulator)); |
foreach (var i in values) |
{ |
VirtualKeyCodeMapper.Add((int)i, values.GetValue()); |
}*/ |
} |
|
private InputSimulator InputSimulator { get; set; } |
|
private MqttCommunication MqttCommunication { get; } |
private TaskScheduler TaskScheduler { get; } |
private CancellationToken CancellationToken { get; } |
@@ -69,13 +81,21 @@ |
if (!string.Equals(localBinding.Name, executeBinding.Name, StringComparison.Ordinal)) |
continue; |
|
// Press |
foreach (var key in localBinding.Keys) |
{ |
if (!KeyConversion.StringToKeys.TryGetValue(key, out var pressKey)) |
continue; |
|
InputSimulator.Keyboard.KeyPress((VirtualKeyCode) pressKey); |
} |
// Press |
/*foreach (var key in localBinding.Keys) |
{ |
if (!KeyConversion.StringToKeys.TryGetValue(key, out var pressKey)) |
continue; |
|
SimKeyboard.KeyDown(pressKey); |
|
} |
|
await Task.Delay(250); |
@@ -87,7 +107,7 @@ |
continue; |
|
SimKeyboard.KeyUp(pressKey); |
} |
}*/ |
} |
} |
} |