private void SetPropertyValueButtonInput(String value, Object obj, PropertyInfo property) { Object output; if (Enum.TryParse(typeof(MouseKeyCode), value, true, out output)) { var mouse = new MouseKeyInput((MouseKeyCode)output); property.SetValue(obj, mouse); } else if (Enum.TryParse(typeof(MouseMacro), value, true, out output)) { var mouse = new MouseMacroInput((MouseMacro)output); property.SetValue(obj, mouse); } else if (Enum.TryParse(typeof(KeyboardKeyCode), value, true, out output)) { var keyboard = new KeyboardKeyInput((KeyboardKeyCode)output); property.SetValue(obj, keyboard); } else if (Enum.TryParse(typeof(KeyboardMacro), value, true, out output)) { var keyboard = new KeyboardMacroInput((KeyboardMacro)output); property.SetValue(obj, keyboard); } }
private ButtonEventHandler MouseEventHandler(MouseKeyInput input, Mouse mouse) { return((statePressed, previousStatePressed) => { if (statePressed && !previousStatePressed) { mouse.Press(input); } else if (!statePressed && previousStatePressed) { mouse.Release(input); } }); }