Преглед на файлове

* input related functions and structs, based on Mantis #35064

git-svn-id: trunk@42994 -
marco преди 5 години
родител
ревизия
3bae3a4aa4
променени са 3 файла, в които са добавени 481 реда и са изтрити 425 реда
  1. 437 425
      rtl/win/wininc/defines.inc
  2. 1 0
      rtl/win/wininc/func.inc
  3. 43 0
      rtl/win/wininc/struct.inc

Файловите разлики са ограничени, защото са твърде много
+ 437 - 425
rtl/win/wininc/defines.inc


+ 1 - 0
rtl/win/wininc/func.inc

@@ -1330,6 +1330,7 @@ function CONSOLE_REAL_OUTPUT_HANDLE : HANDLE;
   function GetShellWindow:HWND; stdcall; external 'user32.dll' name 'GetShellWindow';
   function RealChildWindowFromPoint(Parent : HWND; Pt : TPOINT): HWND; stdcall; external 'user32.dll' name 'RealChildWindowFromPoint';
   function GetGuiResources(ProcessHandle : THANDLE; ResourceType : DWORD): DWORD; stdcall; external 'user32.dll' name 'GetGuiResources';
+  function SendInput(InputsCount : UINT; InputsPtr : PINPUT; Size : WINT) : UINT; stdcall; external 'user32.dll' name 'SendInput';
 {$endif read_interface}
 
 

+ 43 - 0
rtl/win/wininc/struct.inc

@@ -8814,6 +8814,49 @@ type
      PIMAGE_LOAD_CONFIG_DIRECTORY = PIMAGE_LOAD_CONFIG_DIRECTORY32;
 {$endif}
 
+     MOUSEINPUT = record
+       dx        : LONG;
+       dy        : LONG;
+       MouseData : DWORD;
+       dwFlags   : DWORD;
+       Time      : DWORD;
+       ExtraInfo : ULONG_PTR;
+     end;
+     TMOUSEINPUT  = MOUSEINPUT;
+     PMOUSEINPUT  = ^MOUSEINPUT;
+     LPMOUSEINPUT = PMOUSEINPUT;
+
+     KEYBDINPUT = record
+       wVk       : WORD;
+       wScan     : WORD;
+       dwFlags   : DWORD;
+       Time      : DWORD;
+       ExtraInfo : ULONG_PTR;
+     end;
+     TKEYBDINPUT  = KEYBDINPUT;
+     PKEYBDINPUT  = ^KEYBDINPUT;
+     LPKEYBDINPUT = PKEYBDINPUT;
+
+     HARDWAREINPUT = record
+       uMsg     : DWORD;
+       wParamL  : WORD;
+       wParamH  : WORD;
+     end;
+     THARDWAREINPUT  = HARDWAREINPUT;
+     PHARDWAREINPUT  = ^HARDWAREINPUT;
+     LPHARDWAREINPUT = PHARDWAREINPUT;
+
+     INPUT = record
+       _Type : DWORD;
+       case integer of
+         1 : (mi : MOUSEINPUT);
+         2 : (ki : KEYBDINPUT);
+         3 : (hi : HARDWAREINPUT);
+     end;
+     TINPUT = INPUT;
+     PINPUT = ^INPUT;
+     LPINPUT = PINPUT;
+
 {$push}
 {$packrecords 4}
 

Някои файлове не бяха показани, защото твърде много файлове са промени