win-ffi 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/lib/win-ffi/enums/comdlg32/find_replace.rb +27 -27
  3. data/lib/win-ffi/enums/comdlg32/font.rb +32 -32
  4. data/lib/win-ffi/enums/system_info.rb +53 -53
  5. data/lib/win-ffi/enums/user32/pointer_flags.rb +81 -81
  6. data/lib/win-ffi/functions/advapi32/process.rb +32 -32
  7. data/lib/win-ffi/functions/advapi32/system_info.rb +16 -16
  8. data/lib/win-ffi/functions/comdlg32.rb +6 -6
  9. data/lib/win-ffi/functions/comdlg32/error.rb +5 -5
  10. data/lib/win-ffi/functions/comdlg32/find_replace.rb +9 -9
  11. data/lib/win-ffi/functions/msvcrt/handle.rb +12 -12
  12. data/lib/win-ffi/functions/ntdll/system_info.rb +13 -13
  13. data/lib/win-ffi/functions/secur32/system_info.rb +29 -29
  14. data/lib/win-ffi/functions/thread.rb +229 -229
  15. data/lib/win-ffi/functions/user32/cursor.rb +2 -0
  16. data/lib/win-ffi/functions/user32/mouse.rb +1 -1
  17. data/lib/win-ffi/functions/user32/window/window.rb +12 -11
  18. data/lib/win-ffi/functions/winmm.rb +546 -546
  19. data/lib/win-ffi/functions/wtsapi32/process.rb +11 -11
  20. data/lib/win-ffi/struct.rb +15 -15
  21. data/lib/win-ffi/structs/comdlg32/choose_color.rb +22 -22
  22. data/lib/win-ffi/structs/comdlg32/choose_font.rb +27 -27
  23. data/lib/win-ffi/structs/comdlg32/find_replace.rb +23 -23
  24. data/lib/win-ffi/structs/gdi32/abc.rb +8 -8
  25. data/lib/win-ffi/structs/gdi32/abcfloat.rb +10 -10
  26. data/lib/win-ffi/structs/gdi32/bitmap.rb +12 -12
  27. data/lib/win-ffi/structs/gdi32/bitmap_info.rb +10 -10
  28. data/lib/win-ffi/structs/gdi32/bitmap_info_header.rb +16 -16
  29. data/lib/win-ffi/structs/gdi32/blend_function.rb +9 -9
  30. data/lib/win-ffi/structs/gdi32/display_device.rb +11 -11
  31. data/lib/win-ffi/structs/gdi32/handle_table.rb +6 -6
  32. data/lib/win-ffi/structs/gdi32/kerning_pair.rb +8 -8
  33. data/lib/win-ffi/structs/gdi32/log_brush.rb +10 -10
  34. data/lib/win-ffi/structs/gdi32/meta_file_pict.rb +9 -9
  35. data/lib/win-ffi/structs/gdi32/palette_entry.rb +9 -9
  36. data/lib/win-ffi/structs/gdi32/pixel_format_descriptor.rb +56 -56
  37. data/lib/win-ffi/structs/gdi32/rgb_quad.rb +9 -9
  38. data/lib/win-ffi/structs/os_version_info.rb +9 -9
  39. data/lib/win-ffi/structs/point.rb +9 -9
  40. data/lib/win-ffi/structs/rect.rb +41 -27
  41. data/lib/win-ffi/structs/size.rb +5 -5
  42. data/lib/win-ffi/structs/user32/controls/combobox_info.rb +14 -12
  43. data/lib/win-ffi/structs/user32/controls/scroll_info.rb +12 -12
  44. data/lib/win-ffi/structs/user32/controls/scrollbar_info.rb +14 -12
  45. data/lib/win-ffi/structs/user32/cursor_info.rb +11 -9
  46. data/lib/win-ffi/structs/user32/display_device.rb +11 -11
  47. data/lib/win-ffi/structs/user32/draw_text_params.rb +10 -10
  48. data/lib/win-ffi/structs/user32/icon_info.rb +10 -10
  49. data/lib/win-ffi/structs/user32/icon_info_ex.rb +14 -14
  50. data/lib/win-ffi/structs/user32/last_input_info.rb +7 -7
  51. data/lib/win-ffi/structs/user32/mouse_move_point.rb +9 -9
  52. data/lib/win-ffi/structs/user32/msg.rb +18 -16
  53. data/lib/win-ffi/structs/user32/pointer_info.rb +24 -24
  54. data/lib/win-ffi/structs/user32/pointer_pen_info.rb +18 -18
  55. data/lib/win-ffi/structs/user32/pointer_touch_info.rb +18 -17
  56. data/lib/win-ffi/structs/user32/raw_input_device_list.rb +9 -9
  57. data/lib/win-ffi/structs/user32/raw_input_header.rb +9 -9
  58. data/lib/win-ffi/structs/user32/touch_hit_testing_input.rb +13 -10
  59. data/lib/win-ffi/structs/user32/touch_hit_testing_proximity_evaluation.rb +9 -7
  60. data/lib/win-ffi/structs/user32/track_mouse_event.rb +9 -9
  61. data/lib/win-ffi/structs/user32/window/alt_tab_info.rb +17 -17
  62. data/lib/win-ffi/structs/user32/window/bs_info.rb +11 -11
  63. data/lib/win-ffi/structs/user32/window/dlg_template.rb +13 -13
  64. data/lib/win-ffi/structs/user32/window/flashw_info.rb +1 -1
  65. data/lib/win-ffi/structs/user32/window/gui_thread_info.rb +17 -17
  66. data/lib/win-ffi/structs/user32/window/luid.rb +7 -7
  67. data/lib/win-ffi/structs/user32/window/menu_info.rb +12 -12
  68. data/lib/win-ffi/structs/user32/window/menu_item_info.rb +17 -17
  69. data/lib/win-ffi/structs/user32/window/menu_item_template.rb +8 -8
  70. data/lib/win-ffi/structs/user32/window/menubar_info.rb +13 -11
  71. data/lib/win-ffi/structs/user32/window/msgbox_params.rb +15 -15
  72. data/lib/win-ffi/structs/user32/window/title_bar_info.rb +3 -1
  73. data/lib/win-ffi/structs/user32/window/tpm_params.rb +9 -7
  74. data/lib/win-ffi/structs/user32/window/update_layered_window_info.rb +21 -21
  75. data/lib/win-ffi/structs/user32/window/window_placement.rb +32 -32
  76. data/lib/win-ffi/structs/user32/window/window_pos.rb +46 -46
  77. data/lib/win-ffi/version.rb +1 -1
  78. metadata +5 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3ac1c5edfc5214eda5fb86318237fbbba6df4152
4
- data.tar.gz: 9198f9fb7855eb3e7e2d65d77c176cf8a87dce06
3
+ metadata.gz: 1d523de89e3efb9b3695f9e14dc9eb24e48d235b
4
+ data.tar.gz: ceb5aba9b74d5457dcdc3a6ef6c22ba991589092
5
5
  SHA512:
6
- metadata.gz: 8a84625b2dd370777eba28db2c53c8838fdf10a8efcc1a8f3c8071d6e894ac522a1e19a25803770566ee2393f85a59214bffb37927e1c86a4e412422f5968954
7
- data.tar.gz: 8fd99055c3385f9259e1934e388310b3006ab6746101149cc9da43bfb0354a6ec57babee3305bea28af8a2c9c446a03b93fecc9cf1e29de824291cca7fc0f903
6
+ metadata.gz: 1554f489fa95f9bb3e28cc39583980b74671dd451738fdbf7e357c962f4a43cab1aea5bdd23feec1dd35db690e27279fd1f5a28387c1c1a0d526aeef7eaec20f
7
+ data.tar.gz: cf882400614ed1a12562ce83153bf057d844c2b2a1b29a4ee41853fb5213bd8b8a6633c55eecb29efca37a285cf7a1114f5aad04ee33f0a49fda7478abf81317
@@ -1,28 +1,28 @@
1
- module WinFFI
2
- module Comdlg32
3
- FRERR_FINDREPLACECODES = 0x4000
4
- FRERR_BUFFERLENGTHZERO = 0x4001
5
-
6
- FR_DOWN = 0x00000001
7
- FR_WHOLEWORD = 0x00000002
8
- FR_MATCHCASE = 0x00000004
9
- FR_FINDNEXT = 0x00000008
10
- FR_REPLACE = 0x00000010
11
- FR_REPLACEALL = 0x00000020
12
- FR_DIALOGTERM = 0x00000040
13
- FR_SHOWHELP = 0x00000080
14
- FR_ENABLEHOOK = 0x00000100
15
- FR_ENABLETEMPLATE = 0x00000200
16
- FR_NOUPDOWN = 0x00000400
17
- FR_NOMATCHCASE = 0x00000800
18
- FR_NOWHOLEWORD = 0x00001000
19
- FR_ENABLETEMPLATEHANDLE = 0x00002000
20
- FR_HIDEUPDOWN = 0x00004000
21
- FR_HIDEMATCHCASE = 0x00008000
22
- FR_HIDEWHOLEWORD = 0x00010000
23
- FR_RAW = 0x00020000
24
- FR_MATCHDIAC = 0x20000000
25
- FR_MATCHKASHIDA = 0x40000000
26
- FR_MATCHALEFHAMZA = 0x80000000
27
- end
1
+ module WinFFI
2
+ module Comdlg32
3
+ FRERR_FINDREPLACECODES = 0x4000
4
+ FRERR_BUFFERLENGTHZERO = 0x4001
5
+
6
+ FR_DOWN = 0x00000001
7
+ FR_WHOLEWORD = 0x00000002
8
+ FR_MATCHCASE = 0x00000004
9
+ FR_FINDNEXT = 0x00000008
10
+ FR_REPLACE = 0x00000010
11
+ FR_REPLACEALL = 0x00000020
12
+ FR_DIALOGTERM = 0x00000040
13
+ FR_SHOWHELP = 0x00000080
14
+ FR_ENABLEHOOK = 0x00000100
15
+ FR_ENABLETEMPLATE = 0x00000200
16
+ FR_NOUPDOWN = 0x00000400
17
+ FR_NOMATCHCASE = 0x00000800
18
+ FR_NOWHOLEWORD = 0x00001000
19
+ FR_ENABLETEMPLATEHANDLE = 0x00002000
20
+ FR_HIDEUPDOWN = 0x00004000
21
+ FR_HIDEMATCHCASE = 0x00008000
22
+ FR_HIDEWHOLEWORD = 0x00010000
23
+ FR_RAW = 0x00020000
24
+ FR_MATCHDIAC = 0x20000000
25
+ FR_MATCHKASHIDA = 0x40000000
26
+ FR_MATCHALEFHAMZA = 0x80000000
27
+ end
28
28
  end
@@ -1,33 +1,33 @@
1
- module WinFFI
2
- module Comdlg32
3
- CF_SCREENFONTS = 0x00000001
4
- CF_PRINTERFONTS = 0x00000002
5
- CF_BOTH = 0x00000003
6
- CF_SHOWHELP = 0x00000004
7
- CF_ENABLEHOOK = 0x00000008
8
- CF_ENABLETEMPLATE = 0x00000010
9
- CF_ENABLETEMPLATEHANDLE = 0x00000020
10
- CF_INITTOLOGFONTSTRUCT = 0x00000040
11
- CF_USESTYLE = 0x00000080
12
- CF_EFFECTS = 0x00000100
13
- CF_APPLY = 0x00000200
14
- CF_ANSIONLY = 0x00000400
15
- CF_SCRIPTSONLY = CF_ANSIONLY
16
- CF_NOVECTORFONTS = 0x00000800
17
- CF_NOOEMFONTS = CF_NOVECTORFONTS
18
- CF_NOSIMULATIONS = 0x00001000
19
- CF_LIMITSIZE = 0x00002000
20
- CF_FIXEDPITCHONLY = 0x00004000
21
- CF_WYSIWYG = 0x00008000
22
- CF_FORCEFONTEXIST = 0x00010000
23
- CF_SCALABLEONLY = 0x00020000
24
- CF_TTONLY = 0x00040000
25
- CF_NOFACESEL = 0x00080000
26
- CF_NOSTYLESEL = 0x00100000
27
- CF_NOSIZESEL = 0x00200000
28
- CF_SELECTSCRIPT = 0x00400000
29
- CF_NOSCRIPTSEL = 0x00800000
30
- CF_NOVERTFONTS = 0x01000000
31
- CF_INACTIVEFONTS = 0x02000000
32
- end
1
+ module WinFFI
2
+ module Comdlg32
3
+ CF_SCREENFONTS = 0x00000001
4
+ CF_PRINTERFONTS = 0x00000002
5
+ CF_BOTH = 0x00000003
6
+ CF_SHOWHELP = 0x00000004
7
+ CF_ENABLEHOOK = 0x00000008
8
+ CF_ENABLETEMPLATE = 0x00000010
9
+ CF_ENABLETEMPLATEHANDLE = 0x00000020
10
+ CF_INITTOLOGFONTSTRUCT = 0x00000040
11
+ CF_USESTYLE = 0x00000080
12
+ CF_EFFECTS = 0x00000100
13
+ CF_APPLY = 0x00000200
14
+ CF_ANSIONLY = 0x00000400
15
+ CF_SCRIPTSONLY = CF_ANSIONLY
16
+ CF_NOVECTORFONTS = 0x00000800
17
+ CF_NOOEMFONTS = CF_NOVECTORFONTS
18
+ CF_NOSIMULATIONS = 0x00001000
19
+ CF_LIMITSIZE = 0x00002000
20
+ CF_FIXEDPITCHONLY = 0x00004000
21
+ CF_WYSIWYG = 0x00008000
22
+ CF_FORCEFONTEXIST = 0x00010000
23
+ CF_SCALABLEONLY = 0x00020000
24
+ CF_TTONLY = 0x00040000
25
+ CF_NOFACESEL = 0x00080000
26
+ CF_NOSTYLESEL = 0x00100000
27
+ CF_NOSIZESEL = 0x00200000
28
+ CF_SELECTSCRIPT = 0x00400000
29
+ CF_NOSCRIPTSEL = 0x00800000
30
+ CF_NOVERTFONTS = 0x01000000
31
+ CF_INACTIVEFONTS = 0x02000000
32
+ end
33
33
  end
@@ -1,54 +1,54 @@
1
- module WinFII
2
- # Obsolete processor info constants
3
-
4
- PROCESSOR_INTEL_386 = 386
5
- PROCESSOR_INTEL_486 = 486
6
- PROCESSOR_INTEL_PENTIUM = 586
7
- PROCESSOR_INTEL_IA64 = 2200
8
- PROCESSOR_AMD_X8664 = 8664
9
-
10
- # Suite mask constants
11
- #VersionSuitMask = enum :version_suit_mask, [
12
- #
13
- #]
14
- VER_SERVER_NT = 0x80000000
15
- VER_WORKSTATION_NT = 0x40000000
16
- VER_SUITE_SMALLBUSINESS = 0x00000001
17
- VER_SUITE_ENTERPRISE = 0x00000002
18
- VER_SUITE_BACKOFFICE = 0x00000004
19
- VER_SUITE_COMMUNICATIONS = 0x00000008
20
- VER_SUITE_TERMINAL = 0x00000010
21
- VER_SUITE_SMALLBUSINESS_RESTRICTED = 0x00000020
22
- VER_SUITE_EMBEDDEDNT = 0x00000040
23
- VER_SUITE_DATACENTER = 0x00000080
24
- VER_SUITE_SINGLEUSERTS = 0x00000100
25
- VER_SUITE_PERSONAL = 0x00000200
26
- VER_SUITE_BLADE = 0x00000400
27
- VER_SUITE_EMBEDDED_RESTRICTED = 0x00000800
28
- VER_SUITE_SECURITY_APPLIANCE = 0x00001000
29
- VER_SUITE_STORAGE_SERVER = 0x00002000
30
- VER_SUITE_COMPUTE_SERVER = 0x00004000
31
-
32
- # Product mask constants
33
-
34
- VER_NT_WORKSTATION = 0x0000001
35
- VER_NT_DOMAIN_CONTROLLER = 0x0000002
36
- VER_NT_SERVER = 0x0000003
37
-
38
- # Platform definitions
39
-
40
- VER_PLATFORM_WIN32s = 0
41
- VER_PLATFORM_WIN32_WINDOWS = 1
42
- VER_PLATFORM_WIN32_NT = 2
43
-
44
- # Version info type constants
45
-
46
- VER_MINORVERSION = 0x0000001
47
- VER_MAJORVERSION = 0x0000002
48
- VER_BUILDNUMBER = 0x0000004
49
- VER_PLATFORMID = 0x0000008
50
- VER_SERVICEPACKMINOR = 0x0000010
51
- VER_SERVICEPACKMAJOR = 0x0000020
52
- VER_SUITENAME = 0x0000040
53
- VER_PRODUCT_TYPE = 0x0000080
1
+ module WinFII
2
+ # Obsolete processor info constants
3
+
4
+ PROCESSOR_INTEL_386 = 386
5
+ PROCESSOR_INTEL_486 = 486
6
+ PROCESSOR_INTEL_PENTIUM = 586
7
+ PROCESSOR_INTEL_IA64 = 2200
8
+ PROCESSOR_AMD_X8664 = 8664
9
+
10
+ # Suite mask constants
11
+ #VersionSuitMask = enum :version_suit_mask, [
12
+ #
13
+ #]
14
+ VER_SERVER_NT = 0x80000000
15
+ VER_WORKSTATION_NT = 0x40000000
16
+ VER_SUITE_SMALLBUSINESS = 0x00000001
17
+ VER_SUITE_ENTERPRISE = 0x00000002
18
+ VER_SUITE_BACKOFFICE = 0x00000004
19
+ VER_SUITE_COMMUNICATIONS = 0x00000008
20
+ VER_SUITE_TERMINAL = 0x00000010
21
+ VER_SUITE_SMALLBUSINESS_RESTRICTED = 0x00000020
22
+ VER_SUITE_EMBEDDEDNT = 0x00000040
23
+ VER_SUITE_DATACENTER = 0x00000080
24
+ VER_SUITE_SINGLEUSERTS = 0x00000100
25
+ VER_SUITE_PERSONAL = 0x00000200
26
+ VER_SUITE_BLADE = 0x00000400
27
+ VER_SUITE_EMBEDDED_RESTRICTED = 0x00000800
28
+ VER_SUITE_SECURITY_APPLIANCE = 0x00001000
29
+ VER_SUITE_STORAGE_SERVER = 0x00002000
30
+ VER_SUITE_COMPUTE_SERVER = 0x00004000
31
+
32
+ # Product mask constants
33
+
34
+ VER_NT_WORKSTATION = 0x0000001
35
+ VER_NT_DOMAIN_CONTROLLER = 0x0000002
36
+ VER_NT_SERVER = 0x0000003
37
+
38
+ # Platform definitions
39
+
40
+ VER_PLATFORM_WIN32s = 0
41
+ VER_PLATFORM_WIN32_WINDOWS = 1
42
+ VER_PLATFORM_WIN32_NT = 2
43
+
44
+ # Version info type constants
45
+
46
+ VER_MINORVERSION = 0x0000001
47
+ VER_MAJORVERSION = 0x0000002
48
+ VER_BUILDNUMBER = 0x0000004
49
+ VER_PLATFORMID = 0x0000008
50
+ VER_SERVICEPACKMINOR = 0x0000010
51
+ VER_SERVICEPACKMAJOR = 0x0000020
52
+ VER_SUITENAME = 0x0000040
53
+ VER_PRODUCT_TYPE = 0x0000080
54
54
  end
@@ -1,82 +1,82 @@
1
- require 'win-ffi/enums/user32'
2
-
3
- module WinFFI
4
- module User32
5
- PointerFlags = enum :pointer_flags,
6
- [
7
- :NONE, 0x00000000, # Default
8
-
9
- :NEW, 0x00000001, # Indicates the arrival of a new pointer.
10
-
11
- :INRANGE, 0x00000002, # Indicates that this pointer continues to exist. When this flag is not set,
12
- # it indicates the pointer has left detection range. This flag is typically not set only when a hovering pointer
13
- # leaves detection range (POINTER_FLAG_UPDATE is set) or when a pointer in contact with a window surface leaves
14
- # detection range (POINTER_FLAG_UP is set).
15
-
16
- :INCONTACT, 0x00000004, #Indicates that this pointer is in contact with the digitizer surface.
17
- # When this flag is not set, it indicates a hovering pointer.
18
-
19
- :FIRSTBUTTON, 0x00000010, # Indicates a primary action, analogous to a left mouse button down.
20
- #A touch pointer has this flag set when it is in contact with the digitizer surface.
21
- #A pen pointer has this flag set when it is in contact with the digitizer surface with no buttons pressed.
22
- #A mouse pointer has this flag set when the left mouse button is down.
23
-
24
- :SECONDBUTTON, 0x00000020, # Indicates a secondary action, analogous to a right mouse button down.
25
- #A touch pointer does not use this flag. A pen pointer has this flag set when it is in contact with the
26
- # digitizer surface with the pen barrel button pressed.A mouse pointer has this flag set when the right mouse
27
- # button is down.
28
-
29
- :THIRDBUTTON, 0x00000040, # Analogous to a mouse wheel button down. A touch pointer does not use
30
- # this flag. A pen pointer does not use this flag. A mouse pointer has this flag set when the mouse wheel button
31
- # is down.
32
-
33
- :FOURTHBUTTON, 0x00000080, # Analogous to a first extended mouse (XButton1) button down.
34
- # A touch pointer does not use this flag.
35
- # A pen pointer does not use this flag.
36
- # A mouse pointer has this flag set when the first extended mouse (XBUTTON1) button is down.
37
-
38
- :FIFTHBUTTON, 0x00000100, # Analogous to a second extended mouse (XButton2) button down.
39
- # A touch pointer does not use this flag.
40
- # A pen pointer does not use this flag.
41
- # A mouse pointer has this flag set when the second extended mouse (XBUTTON2) button is down.
42
-
43
- :PRIMARY, 0x00002000, # Indicates that this pointer has been designated as the primary pointer.
44
- # A primary pointer is a single pointer that can perform actions beyond those available to non-primary pointers.
45
- # For example, when a primary pointer makes contact with a window’s surface, it may provide the window an
46
- # opportunity to activate by sending it a WM_POINTERACTIVATE message. The primary pointer is identified from all
47
- # current user interactions on the system (mouse, touch, pen, and so on). As such, the primary pointer might not
48
- # be associated with your app. The first contact in a multi-touch interaction is set as the primary pointer.
49
- # Once a primary pointer is identified, all contacts must be lifted before a new contact can be identified as a
50
- # primary pointer. For apps that don't process pointer input, only the primary pointer's events are promoted to
51
- # mouse events.
52
-
53
- :CONFIDENCE, 0x000004000, # Confidence is a suggestion from the source device about whether the
54
- # pointer represents an intended or accidental interaction, which is especially relevant for PT_TOUCH pointers
55
- # where an accidental interaction (such as with the palm of the hand) can trigger input. The presence of this
56
- # flag indicates that the source device has high confidence that this input is part of an intended interaction.
57
-
58
- :POINTER_FLAG_CANCELED, 0x000008000, #Indicates that the pointer is departing in an abnormal manner, such as
59
- # when the system receives invalid input for the pointer or when a device with active pointers departs abruptly.
60
- # If the application receiving the input is in a position to do so, it should treat the interaction as not
61
- # completed and reverse any effects of the concerned pointer.
62
-
63
- :POINTER_FLAG_DOWN, 0x00010000, # Indicates that this pointer transitioned to a down state; that is, it made
64
- # contact with the digitizer surface.
65
-
66
- :POINTER_FLAG_UPDATE, 0x00020000, # Indicates that this is a simple update that does not include pointer state
67
- # changes.
68
-
69
- :POINTER_FLAG_UP, 0x00040000, # Indicates that this pointer transitioned to an up state; that is, it broke
70
- # contact with the digitizer surface.
71
-
72
- :POINTER_FLAG_WHEEL, 0x00080000, # Indicates input associated with a pointer wheel. For mouse pointers, this is
73
- # equivalent to the action of the mouse scroll wheel (WM_MOUSEWHEEL).
74
-
75
- :POINTER_FLAG_HWHEEL, 0x00100000, # Indicates input associated with a pointer h-wheel. For mouse pointers, this
76
- # is equivalent to the action of the mouse horizontal scroll wheel (WM_MOUSEHWHEEL).
77
-
78
- :POINTER_FLAG_CAPTURECHANGED, 0x00200000, # Indicates that this pointer was captured by (associated with)
79
- # another element and the original element has lost capture (see WM_POINTERCAPTURECHANGED)
80
- ]
81
- end
1
+ require 'win-ffi/enums/user32'
2
+
3
+ module WinFFI
4
+ module User32
5
+ PointerFlags = enum :pointer_flags,
6
+ [
7
+ :NONE, 0x00000000, # Default
8
+
9
+ :NEW, 0x00000001, # Indicates the arrival of a new pointer.
10
+
11
+ :INRANGE, 0x00000002, # Indicates that this pointer continues to exist. When this flag is not set,
12
+ # it indicates the pointer has left detection range. This flag is typically not set only when a hovering pointer
13
+ # leaves detection range (POINTER_FLAG_UPDATE is set) or when a pointer in contact with a window surface leaves
14
+ # detection range (POINTER_FLAG_UP is set).
15
+
16
+ :INCONTACT, 0x00000004, #Indicates that this pointer is in contact with the digitizer surface.
17
+ # When this flag is not set, it indicates a hovering pointer.
18
+
19
+ :FIRSTBUTTON, 0x00000010, # Indicates a primary action, analogous to a left mouse button down.
20
+ #A touch pointer has this flag set when it is in contact with the digitizer surface.
21
+ #A pen pointer has this flag set when it is in contact with the digitizer surface with no buttons pressed.
22
+ #A mouse pointer has this flag set when the left mouse button is down.
23
+
24
+ :SECONDBUTTON, 0x00000020, # Indicates a secondary action, analogous to a right mouse button down.
25
+ #A touch pointer does not use this flag. A pen pointer has this flag set when it is in contact with the
26
+ # digitizer surface with the pen barrel button pressed.A mouse pointer has this flag set when the right mouse
27
+ # button is down.
28
+
29
+ :THIRDBUTTON, 0x00000040, # Analogous to a mouse wheel button down. A touch pointer does not use
30
+ # this flag. A pen pointer does not use this flag. A mouse pointer has this flag set when the mouse wheel button
31
+ # is down.
32
+
33
+ :FOURTHBUTTON, 0x00000080, # Analogous to a first extended mouse (XButton1) button down.
34
+ # A touch pointer does not use this flag.
35
+ # A pen pointer does not use this flag.
36
+ # A mouse pointer has this flag set when the first extended mouse (XBUTTON1) button is down.
37
+
38
+ :FIFTHBUTTON, 0x00000100, # Analogous to a second extended mouse (XButton2) button down.
39
+ # A touch pointer does not use this flag.
40
+ # A pen pointer does not use this flag.
41
+ # A mouse pointer has this flag set when the second extended mouse (XBUTTON2) button is down.
42
+
43
+ :PRIMARY, 0x00002000, # Indicates that this pointer has been designated as the primary pointer.
44
+ # A primary pointer is a single pointer that can perform actions beyond those available to non-primary pointers.
45
+ # For example, when a primary pointer makes contact with a window’s surface, it may provide the window an
46
+ # opportunity to activate by sending it a WM_POINTERACTIVATE message. The primary pointer is identified from all
47
+ # current user interactions on the system (mouse, touch, pen, and so on). As such, the primary pointer might not
48
+ # be associated with your app. The first contact in a multi-touch interaction is set as the primary pointer.
49
+ # Once a primary pointer is identified, all contacts must be lifted before a new contact can be identified as a
50
+ # primary pointer. For apps that don't process pointer input, only the primary pointer's events are promoted to
51
+ # mouse events.
52
+
53
+ :CONFIDENCE, 0x000004000, # Confidence is a suggestion from the source device about whether the
54
+ # pointer represents an intended or accidental interaction, which is especially relevant for PT_TOUCH pointers
55
+ # where an accidental interaction (such as with the palm of the hand) can trigger input. The presence of this
56
+ # flag indicates that the source device has high confidence that this input is part of an intended interaction.
57
+
58
+ :POINTER_FLAG_CANCELED, 0x000008000, #Indicates that the pointer is departing in an abnormal manner, such as
59
+ # when the system receives invalid input for the pointer or when a device with active pointers departs abruptly.
60
+ # If the application receiving the input is in a position to do so, it should treat the interaction as not
61
+ # completed and reverse any effects of the concerned pointer.
62
+
63
+ :POINTER_FLAG_DOWN, 0x00010000, # Indicates that this pointer transitioned to a down state; that is, it made
64
+ # contact with the digitizer surface.
65
+
66
+ :POINTER_FLAG_UPDATE, 0x00020000, # Indicates that this is a simple update that does not include pointer state
67
+ # changes.
68
+
69
+ :POINTER_FLAG_UP, 0x00040000, # Indicates that this pointer transitioned to an up state; that is, it broke
70
+ # contact with the digitizer surface.
71
+
72
+ :POINTER_FLAG_WHEEL, 0x00080000, # Indicates input associated with a pointer wheel. For mouse pointers, this is
73
+ # equivalent to the action of the mouse scroll wheel (WM_MOUSEWHEEL).
74
+
75
+ :POINTER_FLAG_HWHEEL, 0x00100000, # Indicates input associated with a pointer h-wheel. For mouse pointers, this
76
+ # is equivalent to the action of the mouse horizontal scroll wheel (WM_MOUSEHWHEEL).
77
+
78
+ :POINTER_FLAG_CAPTURECHANGED, 0x00200000, # Indicates that this pointer was captured by (associated with)
79
+ # another element and the original element has lost capture (see WM_POINTERCAPTURECHANGED)
80
+ ]
81
+ end
82
82
  end
@@ -1,33 +1,33 @@
1
- module WinFFI
2
- module Advapi32
3
- #BOOL WINAPI CreateProcessAsUser(
4
- # _In_opt_ HANDLE hToken,
5
- # _In_opt_ LPCTSTR lpApplicationName,
6
- # _Inout_opt_ LPTSTR lpCommandLine,
7
- # _In_opt_ LPSECURITY_ATTRIBUTES lpProcessAttributes,
8
- # _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes,
9
- # _In_ BOOL bInheritHandles,
10
- # _In_ DWORD dwCreationFlags,
11
- # _In_opt_ LPVOID lpEnvironment,
12
- # _In_opt_ LPCTSTR lpCurrentDirectory,
13
- # _In_ LPSTARTUPINFO lpStartupInfo,
14
- # _Out_ LPPROCESS_INFORMATION lpProcessInformation )
15
- attach_function 'CreateProcessAsUserA', [:handle, :string, :string, :pointer, :pointer, :bool, :dword, :pointer, :string, :pointer, :pointer], :bool
16
- attach_function 'CreateProcessAsUserW', [:handle, :string, :string, :pointer, :pointer, :bool, :dword, :pointer, :string, :pointer, :pointer], :bool
17
-
18
- #TODO
19
- #BOOL WINAPI CreateProcessWithLogonW(
20
- # _In_ LPCWSTR lpUsername,
21
- # _In_opt_ LPCWSTR lpDomain,
22
- # _In_ LPCWSTR lpPassword,
23
- # _In_ DWORD dwLogonFlags,
24
- # _In_opt_ LPCWSTR lpApplicationName,
25
- # _Inout_opt_ LPWSTR lpCommandLine,
26
- # _In_ DWORD dwCreationFlags,
27
- # _In_opt_ LPVOID lpEnvironment,
28
- # _In_opt_ LPCWSTR lpCurrentDirectory,
29
- # _In_ LPSTARTUPINFOW lpStartupInfo,
30
- # _Out_ LPPROCESS_INFORMATION lpProcessInfo )
31
- attach_function 'CreateProcessWithLogonW', [:string, :string, :string, :dword, :string, :pointer, :dword, :pointer, :string, :pointer, :pointer], :bool
32
- end
1
+ module WinFFI
2
+ module Advapi32
3
+ #BOOL WINAPI CreateProcessAsUser(
4
+ # _In_opt_ HANDLE hToken,
5
+ # _In_opt_ LPCTSTR lpApplicationName,
6
+ # _Inout_opt_ LPTSTR lpCommandLine,
7
+ # _In_opt_ LPSECURITY_ATTRIBUTES lpProcessAttributes,
8
+ # _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes,
9
+ # _In_ BOOL bInheritHandles,
10
+ # _In_ DWORD dwCreationFlags,
11
+ # _In_opt_ LPVOID lpEnvironment,
12
+ # _In_opt_ LPCTSTR lpCurrentDirectory,
13
+ # _In_ LPSTARTUPINFO lpStartupInfo,
14
+ # _Out_ LPPROCESS_INFORMATION lpProcessInformation )
15
+ attach_function 'CreateProcessAsUserA', [:handle, :string, :string, :pointer, :pointer, :bool, :dword, :pointer, :string, :pointer, :pointer], :bool
16
+ attach_function 'CreateProcessAsUserW', [:handle, :string, :string, :pointer, :pointer, :bool, :dword, :pointer, :string, :pointer, :pointer], :bool
17
+
18
+ #TODO
19
+ #BOOL WINAPI CreateProcessWithLogonW(
20
+ # _In_ LPCWSTR lpUsername,
21
+ # _In_opt_ LPCWSTR lpDomain,
22
+ # _In_ LPCWSTR lpPassword,
23
+ # _In_ DWORD dwLogonFlags,
24
+ # _In_opt_ LPCWSTR lpApplicationName,
25
+ # _Inout_opt_ LPWSTR lpCommandLine,
26
+ # _In_ DWORD dwCreationFlags,
27
+ # _In_opt_ LPVOID lpEnvironment,
28
+ # _In_opt_ LPCWSTR lpCurrentDirectory,
29
+ # _In_ LPSTARTUPINFOW lpStartupInfo,
30
+ # _Out_ LPPROCESS_INFORMATION lpProcessInfo )
31
+ attach_function 'CreateProcessWithLogonW', [:string, :string, :string, :dword, :string, :pointer, :dword, :pointer, :string, :pointer, :pointer], :bool
32
+ end
33
33
  end