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
@@ -1,10 +1,10 @@
1
- module WinFFI
2
- module Gdi32
3
- class PALETTEENTRY < FFIStruct
4
- layout :peRed, :byte,
5
- :peGreen, :byte,
6
- :peBlue, :byte,
7
- :peFlags, :byte
8
- end
9
- end
1
+ module WinFFI
2
+ module Gdi32
3
+ class PALETTEENTRY < FFIStruct
4
+ layout :peRed, :byte,
5
+ :peGreen, :byte,
6
+ :peBlue, :byte,
7
+ :peFlags, :byte
8
+ end
9
+ end
10
10
  end
@@ -1,57 +1,57 @@
1
- require_relative '../../enums/gdi32/pfd_flags'
2
-
3
- module WinFFI
4
- module Gdi32
5
- class PIXELFORMATDESCRIPTOR < FFIStruct
6
- FLAGS_INV = PFDFlags.to_hash.reduce(Hash.new{|h,k| h[k] = []}){|h,(k,v)| h[v] << k; h}.freeze
7
-
8
- layout :nSize, :ushort,
9
- :nVersion, :ushort,
10
- :dwFlags, :uint,
11
- :iPixelType, :char,
12
- :cColorBits, :char,
13
- :cRedBits, :char,
14
- :cRedShift, :char,
15
- :cGreenBits, :char,
16
- :cGreenShift, :char,
17
- :cBlueBits, :char,
18
- :cBlueShift, :char,
19
- :cAlphaBits, :char,
20
- :cAlphaShift, :char,
21
- :cAccumBits, :char,
22
- :cAccumRedBits, :char,
23
- :cAccumGreenBits, :char,
24
- :cAccumBlueBits, :char,
25
- :cAccumAlphaBits, :char,
26
- :cDepthBits, :char,
27
- :cStencilBits, :char,
28
- :cAuxBuffers, :char,
29
- :iLayerType, :char,
30
- :bReserved, :char,
31
- :dwLayerMask, :uint,
32
- :dwVisibleMask, :uint,
33
- :dwDamageMask, :uint
34
-
35
- #TODO
36
- #undef_method :nSize=
37
-
38
- def initialize
39
- super
40
- self[:nSize] = self.size
41
- end
42
-
43
- def dwFlags
44
- val = self[:dwFlags]
45
- Set.new(FLAGS_INV.select{|k,_| val & k != 0}.reduce([]) {|a,(_,v)| a << v}.flatten)
46
- end
47
-
48
- def dwFlags=(flags)
49
- self[:dwFlags] = [*flags].reduce(0) {|a,f| a | PFDFlags[f].to_i}
50
- end
51
-
52
- def to_s
53
- [:iPixelType, :cColorBits, :cAccumBits, :cDepthBits, :iLayerType, :dwFlags].map{|n| "#{n} = #{send(n).inspect}"}.join(', ')
54
- end
55
- end
56
- end
1
+ require_relative '../../enums/gdi32/pfd_flags'
2
+
3
+ module WinFFI
4
+ module Gdi32
5
+ class PIXELFORMATDESCRIPTOR < FFIStruct
6
+ FLAGS_INV = PFDFlags.to_hash.reduce(Hash.new{|h,k| h[k] = []}){|h,(k,v)| h[v] << k; h}.freeze
7
+
8
+ layout :nSize, :ushort,
9
+ :nVersion, :ushort,
10
+ :dwFlags, :uint,
11
+ :iPixelType, :char,
12
+ :cColorBits, :char,
13
+ :cRedBits, :char,
14
+ :cRedShift, :char,
15
+ :cGreenBits, :char,
16
+ :cGreenShift, :char,
17
+ :cBlueBits, :char,
18
+ :cBlueShift, :char,
19
+ :cAlphaBits, :char,
20
+ :cAlphaShift, :char,
21
+ :cAccumBits, :char,
22
+ :cAccumRedBits, :char,
23
+ :cAccumGreenBits, :char,
24
+ :cAccumBlueBits, :char,
25
+ :cAccumAlphaBits, :char,
26
+ :cDepthBits, :char,
27
+ :cStencilBits, :char,
28
+ :cAuxBuffers, :char,
29
+ :iLayerType, :char,
30
+ :bReserved, :char,
31
+ :dwLayerMask, :uint,
32
+ :dwVisibleMask, :uint,
33
+ :dwDamageMask, :uint
34
+
35
+ #TODO
36
+ #undef_method :nSize=
37
+
38
+ def initialize
39
+ super
40
+ self.nSize = self.size
41
+ end
42
+
43
+ def dwFlags
44
+ val = self.dwFlags
45
+ Set.new(FLAGS_INV.select{|k,_| val & k != 0}.reduce([]) {|a,(_,v)| a << v}.flatten)
46
+ end
47
+
48
+ def dwFlags=(flags)
49
+ self.dwFlags = [*flags].reduce(0) {|a,f| a | PFDFlags[f].to_i}
50
+ end
51
+
52
+ def to_s
53
+ [:iPixelType, :cColorBits, :cAccumBits, :cDepthBits, :iLayerType, :dwFlags].map{|n| "#{n} = #{send(n).inspect}"}.join(', ')
54
+ end
55
+ end
56
+ end
57
57
  end
@@ -1,10 +1,10 @@
1
- module WinFFI
2
- module Gdi32
3
- class RGBQUAD < FFIStruct
4
- layout :rgbBlue, :byte,
5
- :rgbGreen, :byte,
6
- :rgbRed, :byte,
7
- :rgbReserved, :byte
8
- end
9
- end
1
+ module WinFFI
2
+ module Gdi32
3
+ class RGBQUAD < FFIStruct
4
+ layout :rgbBlue, :byte,
5
+ :rgbGreen, :byte,
6
+ :rgbRed, :byte,
7
+ :rgbReserved, :byte
8
+ end
9
+ end
10
10
  end
@@ -1,10 +1,10 @@
1
- module WinFFI
2
- class OSVERSIONINFO < FFIStruct
3
- layout :dwOSVersionInfoSize, :ulong,
4
- :dwMajorVersion, :ulong,
5
- :dwMinorVersion, :ulong,
6
- :dwBuildNumber, :ulong,
7
- :dwPlatformId, :ulong,
8
- :szCSDVersion, [:char, 128]
9
- end
1
+ module WinFFI
2
+ class OSVERSIONINFO < FFIStruct
3
+ layout :dwOSVersionInfoSize, :ulong,
4
+ :dwMajorVersion, :ulong,
5
+ :dwMinorVersion, :ulong,
6
+ :dwBuildNumber, :ulong,
7
+ :dwPlatformId, :ulong,
8
+ :szCSDVersion, [:char, 128]
9
+ end
10
10
  end
@@ -1,10 +1,10 @@
1
- module WinFFI
2
- class POINT < FFIStruct
3
- layout :x, :long,
4
- :y, :long
5
-
6
- def to_s
7
- "(x = #{x}, y = #{y})"
8
- end
9
- end
1
+ module WinFFI
2
+ class POINT < FFIStruct
3
+ layout :x, :long,
4
+ :y, :long
5
+
6
+ def to_s
7
+ "(x = #{x}, y = #{y})"
8
+ end
9
+ end
10
10
  end
@@ -1,28 +1,42 @@
1
- module WinFFI
2
- class RECT < FFIStruct
3
- layout :left, :long,
4
- :top, :long,
5
- :right, :long,
6
- :bottom, :long
7
-
8
- def width
9
- right - left
10
- end
11
-
12
- def width=(v)
13
- self.right = left + v
14
- end
15
-
16
- def height
17
- bottom - top
18
- end
19
-
20
- def height=(v)
21
- self.bottom = top + v
22
- end
23
-
24
- def to_s
25
- "(left = #{left}, top = #{top}, width = #{width}, height = #{height})"
26
- end
27
- end
1
+ require 'win-ffi/struct'
2
+
3
+ module WinFFI
4
+ class RECT < FFIStruct
5
+ layout :left, :long,
6
+ :top, :long,
7
+ :right, :long,
8
+ :bottom, :long
9
+
10
+ # def initialize(left, top, right, bottom)
11
+ # self.left, self.top, self.right, self.bottom = left, top, right, bottom
12
+ # end
13
+
14
+ def area
15
+ width * height
16
+ end
17
+
18
+ def perimeter
19
+ 2 * width + 2 * height
20
+ end
21
+
22
+ def width
23
+ right - left
24
+ end
25
+
26
+ def width=(v)
27
+ self.right = left + v
28
+ end
29
+
30
+ def height
31
+ bottom - top
32
+ end
33
+
34
+ def height=(v)
35
+ self.bottom = top + v
36
+ end
37
+
38
+ def to_s
39
+ "(left = #{left}, top = #{top}, width = #{width}, height = #{height})"
40
+ end
41
+ end
28
42
  end
@@ -1,6 +1,6 @@
1
- module WinFFI
2
- class SIZE < FFIStruct
3
- layout :cx, :long,
4
- :cy, :long
5
- end
1
+ module WinFFI
2
+ class SIZE < FFIStruct
3
+ layout :cx, :long,
4
+ :cy, :long
5
+ end
6
6
  end
@@ -1,13 +1,15 @@
1
- module WinFFI
2
- module User32
3
- class COMBOBOXINFO < FFIStruct
4
- layout :cbSize, :dword,
5
- :rcItem, RECT,
6
- :rcButton, RECT,
7
- :stateButton, :dword,
8
- :hwndCombo, :hwnd,
9
- :hwndItem, :hwnd,
10
- :hwndList, :hwnd
11
- end
12
- end
1
+ require 'lib/win-ffi/structs/rect'
2
+
3
+ module WinFFI
4
+ module User32
5
+ class COMBOBOXINFO < FFIStruct
6
+ layout :cbSize, :dword,
7
+ :rcItem, RECT,
8
+ :rcButton, RECT,
9
+ :stateButton, :dword,
10
+ :hwndCombo, :hwnd,
11
+ :hwndItem, :hwnd,
12
+ :hwndList, :hwnd
13
+ end
14
+ end
13
15
  end
@@ -1,13 +1,13 @@
1
- module WinFFI
2
- module User32
3
- class SCROLLINFO < FFIStruct
4
- layout :cbSize, :uint,
5
- :fMask, :uint,
6
- :nMin, :int,
7
- :nMax, :int,
8
- :nPage, :uint,
9
- :nPos, :int,
10
- :nTrackPos, :int
11
- end
12
- end
1
+ module WinFFI
2
+ module User32
3
+ class SCROLLINFO < FFIStruct
4
+ layout :cbSize, :uint,
5
+ :fMask, :uint,
6
+ :nMin, :int,
7
+ :nMax, :int,
8
+ :nPage, :uint,
9
+ :nPos, :int,
10
+ :nTrackPos, :int
11
+ end
12
+ end
13
13
  end
@@ -1,13 +1,15 @@
1
- module WinFFI
2
- module User32
3
- class SCROLLBARINFO < FFIStruct
4
- layout :cbSize, :dword,
5
- :rcScrollBar, RECT,
6
- :dxyLineButton, :int,
7
- :xyThumbTop, :int,
8
- :xyThumbBottom, :int,
9
- :reserved, :int,
10
- :rgstate, :dword
11
- end
12
- end
1
+ require 'win-ffi/structs/rect'
2
+
3
+ module WinFFI
4
+ module User32
5
+ class SCROLLBARINFO < FFIStruct
6
+ layout :cbSize, :dword,
7
+ :rcScrollBar, RECT,
8
+ :dxyLineButton, :int,
9
+ :xyThumbTop, :int,
10
+ :xyThumbBottom, :int,
11
+ :reserved, :int,
12
+ :rgstate, :dword
13
+ end
14
+ end
13
15
  end
@@ -1,10 +1,12 @@
1
- module WinFFI
2
- module User32
3
- class CURSORINFO < FFIStruct
4
- layout :cbSize, :dword,
5
- :flags, :dword,
6
- :hCursor, :hcursor,
7
- :ptScreenPos, WinFFI::POINT
8
- end
9
- end
1
+ require 'win-ffi/structs/point'
2
+
3
+ module WinFFI
4
+ module User32
5
+ class CURSORINFO < FFIStruct
6
+ layout :cbSize, :dword,
7
+ :flags, :dword,
8
+ :hCursor, :hcursor,
9
+ :ptScreenPos, POINT
10
+ end
11
+ end
10
12
  end
@@ -1,12 +1,12 @@
1
- module WinFFI
2
- module User32
3
- class DISPLAY_DEVICE < FFIStruct
4
- layout :cb, :dword,
5
- :DeviceName, [:char, 32],
6
- :DeviceString, [:char, 128],
7
- :StateFlags, :dword,
8
- :DeviceID, [:char, 128],
9
- :DeviceKey, [:char, 128]
10
- end
11
- end
1
+ module WinFFI
2
+ module User32
3
+ class DISPLAY_DEVICE < FFIStruct
4
+ layout :cb, :dword,
5
+ :DeviceName, [:char, 32],
6
+ :DeviceString, [:char, 128],
7
+ :StateFlags, :dword,
8
+ :DeviceID, [:char, 128],
9
+ :DeviceKey, [:char, 128]
10
+ end
11
+ end
12
12
  end
@@ -1,11 +1,11 @@
1
- module WinFFI
2
- module User32
3
- class DRAWTEXTPARAMS < FFIStruct
4
- layout :cbSize, :uint,
5
- :iTabLength, :int,
6
- :iLeftMargin, :int,
7
- :iRightMargin, :int,
8
- :uiLengthDrawn, :uint
9
- end
10
- end
1
+ module WinFFI
2
+ module User32
3
+ class DRAWTEXTPARAMS < FFIStruct
4
+ layout :cbSize, :uint,
5
+ :iTabLength, :int,
6
+ :iLeftMargin, :int,
7
+ :iRightMargin, :int,
8
+ :uiLengthDrawn, :uint
9
+ end
10
+ end
11
11
  end
@@ -1,11 +1,11 @@
1
- module WinFFI
2
- module User32
3
- class ICONINFO < FFIStruct
4
- layout :fIcon, :bool,
5
- :xHotspot, :dword,
6
- :yHotspot, :dword,
7
- :hbmMask, :pointer,
8
- :hbmColor, :pointer
9
- end
10
- end
1
+ module WinFFI
2
+ module User32
3
+ class ICONINFO < FFIStruct
4
+ layout :fIcon, :bool,
5
+ :xHotspot, :dword,
6
+ :yHotspot, :dword,
7
+ :hbmMask, :pointer,
8
+ :hbmColor, :pointer
9
+ end
10
+ end
11
11
  end