public void Send(ISInputData input) { ISInputCode c = input.Code; switch (c) { case ISInputCode.IS_MOUSEMOVERELATIVE: MoveMouseRelative(input.Param1, input.Param2); break; case ISInputCode.IS_KEYDOWN: if (input.Param1 == 91) //Windows key cant be mapped to a scan code, so we'll use the virtual code instead { KeyDownVirtual(91, true); break; } KeyDownScan(input.Param1, true); break; case ISInputCode.IS_KEYUP: if (input.Param1 == 91) { KeyDownVirtual(91, false); break; } KeyDownScan(input.Param1, false); break; case ISInputCode.IS_MOUSELDOWN: MouseLDown(true); break; case ISInputCode.IS_MOUSELUP: MouseLDown(false); break; case ISInputCode.IS_MOUSERDOWN: MouseRDown(true); break; case ISInputCode.IS_MOUSERUP: MouseRDown(false); break; case ISInputCode.IS_MOUSEMDOWN: MouseMDown(true); break; case ISInputCode.IS_MOUSEMUP: MouseMDown(false); break; case ISInputCode.IS_MOUSEYSCROLL: MouseYScroll(input.Param1); break; case ISInputCode.IS_MOUSEXDOWN: MouseXDown(input.Param1, true); break; case ISInputCode.IS_MOUSEXUP: MouseXDown(input.Param1, false); break; case ISInputCode.IS_RELEASEALL: ReleaseAllKeys(); break; } }
public ISInputData(ISInputCode code, short param1, short param2) { Code = code; Param1 = param1; Param2 = param2; }
public void Send(ISInputData input) { ISInputCode c = input.Code; switch (c) { case ISInputCode.IS_MOUSEMOVERELATIVE: MoveMouseRelative(input.Param1, input.Param2); break; case ISInputCode.IS_KEYDOWN: { short useKey = CheckKey(input, out bool useScan); if (useScan) { KeyDownScan(useKey, true); } else { KeyDownVirtual(useKey, true); } break; } case ISInputCode.IS_KEYUP: { short useKey = CheckKey(input, out bool useScan); if (useScan) { KeyDownScan(useKey, false); } else { KeyDownVirtual(useKey, false); } break; } case ISInputCode.IS_MOUSELDOWN: MouseLDown(true); break; case ISInputCode.IS_MOUSELUP: MouseLDown(false); break; case ISInputCode.IS_MOUSERDOWN: MouseRDown(true); break; case ISInputCode.IS_MOUSERUP: MouseRDown(false); break; case ISInputCode.IS_MOUSEMDOWN: MouseMDown(true); break; case ISInputCode.IS_MOUSEMUP: MouseMDown(false); break; case ISInputCode.IS_MOUSEYSCROLL: MouseYScroll(input.Param1); break; case ISInputCode.IS_MOUSEXDOWN: MouseXDown(input.Param1, true); break; case ISInputCode.IS_MOUSEXUP: MouseXDown(input.Param1, false); break; case ISInputCode.IS_RELEASEALL: ResetKeyStates(); break; case ISInputCode.IS_MOUSEMOVEABSOLUTE: MoveMouseAbs(input.Param1, input.Param2); break; } }