win-ffi 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/win-ffi/enums/comdlg32/find_replace.rb +27 -27
- data/lib/win-ffi/enums/comdlg32/font.rb +32 -32
- data/lib/win-ffi/enums/system_info.rb +53 -53
- data/lib/win-ffi/enums/user32/pointer_flags.rb +81 -81
- data/lib/win-ffi/functions/advapi32/process.rb +32 -32
- data/lib/win-ffi/functions/advapi32/system_info.rb +16 -16
- data/lib/win-ffi/functions/comdlg32.rb +6 -6
- data/lib/win-ffi/functions/comdlg32/error.rb +5 -5
- data/lib/win-ffi/functions/comdlg32/find_replace.rb +9 -9
- data/lib/win-ffi/functions/msvcrt/handle.rb +12 -12
- data/lib/win-ffi/functions/ntdll/system_info.rb +13 -13
- data/lib/win-ffi/functions/secur32/system_info.rb +29 -29
- data/lib/win-ffi/functions/thread.rb +229 -229
- data/lib/win-ffi/functions/user32/cursor.rb +2 -0
- data/lib/win-ffi/functions/user32/mouse.rb +1 -1
- data/lib/win-ffi/functions/user32/window/window.rb +12 -11
- data/lib/win-ffi/functions/winmm.rb +546 -546
- data/lib/win-ffi/functions/wtsapi32/process.rb +11 -11
- data/lib/win-ffi/struct.rb +15 -15
- data/lib/win-ffi/structs/comdlg32/choose_color.rb +22 -22
- data/lib/win-ffi/structs/comdlg32/choose_font.rb +27 -27
- data/lib/win-ffi/structs/comdlg32/find_replace.rb +23 -23
- data/lib/win-ffi/structs/gdi32/abc.rb +8 -8
- data/lib/win-ffi/structs/gdi32/abcfloat.rb +10 -10
- data/lib/win-ffi/structs/gdi32/bitmap.rb +12 -12
- data/lib/win-ffi/structs/gdi32/bitmap_info.rb +10 -10
- data/lib/win-ffi/structs/gdi32/bitmap_info_header.rb +16 -16
- data/lib/win-ffi/structs/gdi32/blend_function.rb +9 -9
- data/lib/win-ffi/structs/gdi32/display_device.rb +11 -11
- data/lib/win-ffi/structs/gdi32/handle_table.rb +6 -6
- data/lib/win-ffi/structs/gdi32/kerning_pair.rb +8 -8
- data/lib/win-ffi/structs/gdi32/log_brush.rb +10 -10
- data/lib/win-ffi/structs/gdi32/meta_file_pict.rb +9 -9
- data/lib/win-ffi/structs/gdi32/palette_entry.rb +9 -9
- data/lib/win-ffi/structs/gdi32/pixel_format_descriptor.rb +56 -56
- data/lib/win-ffi/structs/gdi32/rgb_quad.rb +9 -9
- data/lib/win-ffi/structs/os_version_info.rb +9 -9
- data/lib/win-ffi/structs/point.rb +9 -9
- data/lib/win-ffi/structs/rect.rb +41 -27
- data/lib/win-ffi/structs/size.rb +5 -5
- data/lib/win-ffi/structs/user32/controls/combobox_info.rb +14 -12
- data/lib/win-ffi/structs/user32/controls/scroll_info.rb +12 -12
- data/lib/win-ffi/structs/user32/controls/scrollbar_info.rb +14 -12
- data/lib/win-ffi/structs/user32/cursor_info.rb +11 -9
- data/lib/win-ffi/structs/user32/display_device.rb +11 -11
- data/lib/win-ffi/structs/user32/draw_text_params.rb +10 -10
- data/lib/win-ffi/structs/user32/icon_info.rb +10 -10
- data/lib/win-ffi/structs/user32/icon_info_ex.rb +14 -14
- data/lib/win-ffi/structs/user32/last_input_info.rb +7 -7
- data/lib/win-ffi/structs/user32/mouse_move_point.rb +9 -9
- data/lib/win-ffi/structs/user32/msg.rb +18 -16
- data/lib/win-ffi/structs/user32/pointer_info.rb +24 -24
- data/lib/win-ffi/structs/user32/pointer_pen_info.rb +18 -18
- data/lib/win-ffi/structs/user32/pointer_touch_info.rb +18 -17
- data/lib/win-ffi/structs/user32/raw_input_device_list.rb +9 -9
- data/lib/win-ffi/structs/user32/raw_input_header.rb +9 -9
- data/lib/win-ffi/structs/user32/touch_hit_testing_input.rb +13 -10
- data/lib/win-ffi/structs/user32/touch_hit_testing_proximity_evaluation.rb +9 -7
- data/lib/win-ffi/structs/user32/track_mouse_event.rb +9 -9
- data/lib/win-ffi/structs/user32/window/alt_tab_info.rb +17 -17
- data/lib/win-ffi/structs/user32/window/bs_info.rb +11 -11
- data/lib/win-ffi/structs/user32/window/dlg_template.rb +13 -13
- data/lib/win-ffi/structs/user32/window/flashw_info.rb +1 -1
- data/lib/win-ffi/structs/user32/window/gui_thread_info.rb +17 -17
- data/lib/win-ffi/structs/user32/window/luid.rb +7 -7
- data/lib/win-ffi/structs/user32/window/menu_info.rb +12 -12
- data/lib/win-ffi/structs/user32/window/menu_item_info.rb +17 -17
- data/lib/win-ffi/structs/user32/window/menu_item_template.rb +8 -8
- data/lib/win-ffi/structs/user32/window/menubar_info.rb +13 -11
- data/lib/win-ffi/structs/user32/window/msgbox_params.rb +15 -15
- data/lib/win-ffi/structs/user32/window/title_bar_info.rb +3 -1
- data/lib/win-ffi/structs/user32/window/tpm_params.rb +9 -7
- data/lib/win-ffi/structs/user32/window/update_layered_window_info.rb +21 -21
- data/lib/win-ffi/structs/user32/window/window_placement.rb +32 -32
- data/lib/win-ffi/structs/user32/window/window_pos.rb +46 -46
- data/lib/win-ffi/version.rb +1 -1
- metadata +5 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1d523de89e3efb9b3695f9e14dc9eb24e48d235b
|
4
|
+
data.tar.gz: ceb5aba9b74d5457dcdc3a6ef6c22ba991589092
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|