win-ffi 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +36 -0
- data/lib/win-ffi/enums/color_types.rb +61 -0
- data/lib/win-ffi/enums/comctl32/init_common_controls.rb +32 -0
- data/lib/win-ffi/enums/comctl32/window/style/window_class_style.rb +7 -0
- data/lib/win-ffi/enums/comctl32.rb +5 -0
- data/lib/win-ffi/enums/comdlg32/find_replace.rb +28 -0
- data/lib/win-ffi/enums/comdlg32/font.rb +33 -0
- data/lib/win-ffi/enums/extended_name_format.rb +17 -0
- data/lib/win-ffi/enums/firmware_type.rb +12 -0
- data/lib/win-ffi/enums/gdi32/device_context.rb +29 -0
- data/lib/win-ffi/enums/gdi32/dib.rb +8 -0
- data/lib/win-ffi/enums/gdi32/hatch_styles.rb +15 -0
- data/lib/win-ffi/enums/gdi32/pfd_flags.rb +28 -0
- data/lib/win-ffi/enums/gdi32/pfd_layer_type.rb +7 -0
- data/lib/win-ffi/enums/gdi32/pfd_type.rb +7 -0
- data/lib/win-ffi/enums/gdi32/raster_operations.rb +22 -0
- data/lib/win-ffi/enums/gdi32.rb +90 -0
- data/lib/win-ffi/enums/kernel32/activation_context.rb +17 -0
- data/lib/win-ffi/enums/kernel32/computer_name_format.rb +19 -0
- data/lib/win-ffi/enums/kernel32/format_message_flags.rb +16 -0
- data/lib/win-ffi/enums/kernel32/get_module_handle_ex_flag.rb +7 -0
- data/lib/win-ffi/enums/kernel32/global_alloc_flags.rb +14 -0
- data/lib/win-ffi/enums/kernel32/handle.rb +9 -0
- data/lib/win-ffi/enums/kernel32/heap_flags.rb +14 -0
- data/lib/win-ffi/enums/kernel32/local_flags.rb +20 -0
- data/lib/win-ffi/enums/kernel32/memory.rb +12 -0
- data/lib/win-ffi/enums/kernel32/memory_flags.rb +22 -0
- data/lib/win-ffi/enums/kernel32/memory_protection_constants.rb +20 -0
- data/lib/win-ffi/enums/kernel32/set_error_mode_flags.rb +11 -0
- data/lib/win-ffi/enums/kernel32/sound_flags.rb +24 -0
- data/lib/win-ffi/enums/kernel32/volume.rb +13 -0
- data/lib/win-ffi/enums/kernel32.rb +5 -0
- data/lib/win-ffi/enums/lr.rb +48 -0
- data/lib/win-ffi/enums/netapi21/net_api_status.rb +25 -0
- data/lib/win-ffi/enums/netapi32.rb +5 -0
- data/lib/win-ffi/enums/system_info.rb +54 -0
- data/lib/win-ffi/enums/user32/append_menu_flags.rb +21 -0
- data/lib/win-ffi/enums/user32/border_flags.rb +29 -0
- data/lib/win-ffi/enums/user32/clipboard_formats.rb +31 -0
- data/lib/win-ffi/enums/user32/device_notify_flags.rb +17 -0
- data/lib/win-ffi/enums/user32/draw_caption_flags.rb +16 -0
- data/lib/win-ffi/enums/user32/draw_frame_control_flags.rb +15 -0
- data/lib/win-ffi/enums/user32/draw_frame_control_state_flags.rb +44 -0
- data/lib/win-ffi/enums/user32/edge_flags.rb +20 -0
- data/lib/win-ffi/enums/user32/feedback_type.rb +21 -0
- data/lib/win-ffi/enums/user32/get_ancestor_flags.rb +12 -0
- data/lib/win-ffi/enums/user32/icon.rb +19 -0
- data/lib/win-ffi/enums/user32/image.rb +12 -0
- data/lib/win-ffi/enums/user32/key_event_flags.rb +11 -0
- data/lib/win-ffi/enums/user32/keyboard_layout_flags.rb +57 -0
- data/lib/win-ffi/enums/user32/keyboard_modifiers.rb +16 -0
- data/lib/win-ffi/enums/user32/layered_window_attributes_flags.rb +12 -0
- data/lib/win-ffi/enums/user32/map_virtual_key.rb +22 -0
- data/lib/win-ffi/enums/user32/message_filter.rb +11 -0
- data/lib/win-ffi/enums/user32/mouse_event_flags.rb +25 -0
- data/lib/win-ffi/enums/user32/mouse_keys_flags.rb +16 -0
- data/lib/win-ffi/enums/user32/mwmo.rb +17 -0
- data/lib/win-ffi/enums/user32/ocr.rb +32 -0
- data/lib/win-ffi/enums/user32/oic.rb +26 -0
- data/lib/win-ffi/enums/user32/pen_flags.rb +12 -0
- data/lib/win-ffi/enums/user32/pen_mask.rb +14 -0
- data/lib/win-ffi/enums/user32/pointer_flags.rb +82 -0
- data/lib/win-ffi/enums/user32/pointer_input_type.rb +13 -0
- data/lib/win-ffi/enums/user32/process_dpi_awareness.rb +12 -0
- data/lib/win-ffi/enums/user32/queue_status_flags.rb +36 -0
- data/lib/win-ffi/enums/user32/rim.rb +12 -0
- data/lib/win-ffi/enums/user32/touch_injection_flags.rb +13 -0
- data/lib/win-ffi/enums/user32/touch_mask.rb +13 -0
- data/lib/win-ffi/enums/user32/user_object_information_flags.rb +22 -0
- data/lib/win-ffi/enums/user32/virtual_key_flags.rb +214 -0
- data/lib/win-ffi/enums/user32/window/animate_window_flags.rb +31 -0
- data/lib/win-ffi/enums/user32/window/broadcast_system_flags.rb +20 -0
- data/lib/win-ffi/enums/user32/window/broadcast_system_message_flags.rb +12 -0
- data/lib/win-ffi/enums/user32/window/combo_box_message.rb +53 -0
- data/lib/win-ffi/enums/user32/window/get_class_long_flags.rb +34 -0
- data/lib/win-ffi/enums/user32/window/get_window_flags.rb +38 -0
- data/lib/win-ffi/enums/user32/window/get_window_long_flags.rb +16 -0
- data/lib/win-ffi/enums/user32/window/menu_flags.rb +54 -0
- data/lib/win-ffi/enums/user32/window/message_box_flags.rb +90 -0
- data/lib/win-ffi/enums/user32/window/message_box_return.rb +18 -0
- data/lib/win-ffi/enums/user32/window/notification/button_notification.rb +20 -0
- data/lib/win-ffi/enums/user32/window/notification/edit_notification.rb +19 -0
- data/lib/win-ffi/enums/user32/window/notification/static_notification.rb +13 -0
- data/lib/win-ffi/enums/user32/window/peek_message_flags.rb +13 -0
- data/lib/win-ffi/enums/user32/window/set_window_pos_flags.rb +48 -0
- data/lib/win-ffi/enums/user32/window/show_window_flags.rb +41 -0
- data/lib/win-ffi/enums/user32/window/smto.rb +22 -0
- data/lib/win-ffi/enums/user32/window/style/button_control_style.rb +37 -0
- data/lib/win-ffi/enums/user32/window/style/combo_box_style.rb +22 -0
- data/lib/win-ffi/enums/user32/window/style/edit_style.rb +23 -0
- data/lib/win-ffi/enums/user32/window/style/static_style.rb +45 -0
- data/lib/win-ffi/enums/user32/window/style/window_class_style.rb +50 -0
- data/lib/win-ffi/enums/user32/window/style/window_style.rb +85 -0
- data/lib/win-ffi/enums/user32/window/style/window_style_ex.rb +98 -0
- data/lib/win-ffi/enums/user32/window/system_menu_command.rb +37 -0
- data/lib/win-ffi/enums/user32/window/system_metrics_flags.rb +300 -0
- data/lib/win-ffi/enums/user32/window/system_parameters_info_action.rb +225 -0
- data/lib/win-ffi/enums/user32/window/system_parameters_info_flags.rb +246 -0
- data/lib/win-ffi/enums/user32/window/track_popup_menu_flags.rb +70 -0
- data/lib/win-ffi/enums/user32/window/window_long.rb +22 -0
- data/lib/win-ffi/enums/user32/window/window_messages.rb +222 -0
- data/lib/win-ffi/enums/user32/window_hook.rb +56 -0
- data/lib/win-ffi/enums/user32.rb +5 -0
- data/lib/win-ffi/functions/advapi32/process.rb +33 -0
- data/lib/win-ffi/functions/advapi32/system_info.rb +17 -0
- data/lib/win-ffi/functions/comctl32/control.rb +11 -0
- data/lib/win-ffi/functions/comctl32/listbox.rb +20 -0
- data/lib/win-ffi/functions/comctl32.rb +7 -0
- data/lib/win-ffi/functions/comdlg32/color.rb +9 -0
- data/lib/win-ffi/functions/comdlg32/error.rb +6 -0
- data/lib/win-ffi/functions/comdlg32/find_replace.rb +9 -0
- data/lib/win-ffi/functions/comdlg32/font.rb +9 -0
- data/lib/win-ffi/functions/comdlg32.rb +7 -0
- data/lib/win-ffi/functions/gdi32/bitmap.rb +275 -0
- data/lib/win-ffi/functions/gdi32/brush.rb +54 -0
- data/lib/win-ffi/functions/gdi32/device_context.rb +126 -0
- data/lib/win-ffi/functions/gdi32/filled_shape.rb +68 -0
- data/lib/win-ffi/functions/gdi32/font.rb +9 -0
- data/lib/win-ffi/functions/gdi32/metafile.rb +173 -0
- data/lib/win-ffi/functions/gdi32/opengl.rb +29 -0
- data/lib/win-ffi/functions/gdi32/painting_drawing.rb +50 -0
- data/lib/win-ffi/functions/gdi32/text.rb +376 -0
- data/lib/win-ffi/functions/gdi32.rb +7 -0
- data/lib/win-ffi/functions/kernel32/activation.rb +22 -0
- data/lib/win-ffi/functions/kernel32/dll.rb +92 -0
- data/lib/win-ffi/functions/kernel32/error.rb +28 -0
- data/lib/win-ffi/functions/kernel32/filesystem.rb +22 -0
- data/lib/win-ffi/functions/kernel32/handle.rb +29 -0
- data/lib/win-ffi/functions/kernel32/memory.rb +478 -0
- data/lib/win-ffi/functions/kernel32/process.rb +359 -0
- data/lib/win-ffi/functions/kernel32/resource.rb +141 -0
- data/lib/win-ffi/functions/kernel32/sound.rb +10 -0
- data/lib/win-ffi/functions/kernel32/string.rb +38 -0
- data/lib/win-ffi/functions/kernel32/system_info.rb +183 -0
- data/lib/win-ffi/functions/kernel32/time.rb +220 -0
- data/lib/win-ffi/functions/kernel32/volume.rb +130 -0
- data/lib/win-ffi/functions/kernel32.rb +15 -0
- data/lib/win-ffi/functions/msimg32/bitmap.rb +46 -0
- data/lib/win-ffi/functions/msvcrt/handle.rb +13 -0
- data/lib/win-ffi/functions/netapi32/network_management.rb +13 -0
- data/lib/win-ffi/functions/netapi32.rb +7 -0
- data/lib/win-ffi/functions/ntdll/system_info.rb +14 -0
- data/lib/win-ffi/functions/secur32/system_info.rb +30 -0
- data/lib/win-ffi/functions/shell32/icon.rb +49 -0
- data/lib/win-ffi/functions/shutdown.rb +84 -0
- data/lib/win-ffi/functions/thread.rb +230 -0
- data/lib/win-ffi/functions/user32/accessibility.rb +23 -0
- data/lib/win-ffi/functions/user32/authorization.rb +19 -0
- data/lib/win-ffi/functions/user32/bitmap.rb +11 -0
- data/lib/win-ffi/functions/user32/brush.rb +10 -0
- data/lib/win-ffi/functions/user32/caret.rb +36 -0
- data/lib/win-ffi/functions/user32/clipboard.rb +84 -0
- data/lib/win-ffi/functions/user32/controls/button.rb +23 -0
- data/lib/win-ffi/functions/user32/controls/combobox.rb +29 -0
- data/lib/win-ffi/functions/user32/controls/listbox.rb +25 -0
- data/lib/win-ffi/functions/user32/controls/scrollbar.rb +95 -0
- data/lib/win-ffi/functions/user32/cursor.rb +74 -0
- data/lib/win-ffi/functions/user32/dde.rb +214 -0
- data/lib/win-ffi/functions/user32/desktop.rb +76 -0
- data/lib/win-ffi/functions/user32/device.rb +17 -0
- data/lib/win-ffi/functions/user32/device_context.rb +62 -0
- data/lib/win-ffi/functions/user32/display.rb +37 -0
- data/lib/win-ffi/functions/user32/error.rb +10 -0
- data/lib/win-ffi/functions/user32/filled_shape.rb +23 -0
- data/lib/win-ffi/functions/user32/gesture.rb +38 -0
- data/lib/win-ffi/functions/user32/hook.rb +123 -0
- data/lib/win-ffi/functions/user32/icon.rb +98 -0
- data/lib/win-ffi/functions/user32/input.rb +23 -0
- data/lib/win-ffi/functions/user32/keyboard.rb +177 -0
- data/lib/win-ffi/functions/user32/keyboard_accelerators.rb +37 -0
- data/lib/win-ffi/functions/user32/mouse.rb +60 -0
- data/lib/win-ffi/functions/user32/multiple_display_monitors.rb +43 -0
- data/lib/win-ffi/functions/user32/multiple_document_interface.rb +44 -0
- data/lib/win-ffi/functions/user32/painting_drawing.rb +173 -0
- data/lib/win-ffi/functions/user32/pointer.rb +154 -0
- data/lib/win-ffi/functions/user32/power.rb +28 -0
- data/lib/win-ffi/functions/user32/print.rb +14 -0
- data/lib/win-ffi/functions/user32/process.rb +30 -0
- data/lib/win-ffi/functions/user32/raw_input.rb +55 -0
- data/lib/win-ffi/functions/user32/rect.rb +67 -0
- data/lib/win-ffi/functions/user32/resource.rb +28 -0
- data/lib/win-ffi/functions/user32/shell.rb +29 -0
- data/lib/win-ffi/functions/user32/string.rb +98 -0
- data/lib/win-ffi/functions/user32/text.rb +48 -0
- data/lib/win-ffi/functions/user32/touch.rb +69 -0
- data/lib/win-ffi/functions/user32/transform.rb +22 -0
- data/lib/win-ffi/functions/user32/window/configuration.rb +15 -0
- data/lib/win-ffi/functions/user32/window/dialog.rb +167 -0
- data/lib/win-ffi/functions/user32/window/menu.rb +245 -0
- data/lib/win-ffi/functions/user32/window/message.rb +168 -0
- data/lib/win-ffi/functions/user32/window/properties.rb +50 -0
- data/lib/win-ffi/functions/user32/window/timer.rb +37 -0
- data/lib/win-ffi/functions/user32/window/window.rb +546 -0
- data/lib/win-ffi/functions/user32/window/window_class.rb +109 -0
- data/lib/win-ffi/functions/user32/window/window_proc.rb +29 -0
- data/lib/win-ffi/functions/user32/window_station.rb +39 -0
- data/lib/win-ffi/functions/user32.rb +161 -0
- data/lib/win-ffi/functions/winmm.rb +547 -0
- data/lib/win-ffi/functions/wtsapi32/process.rb +12 -0
- data/lib/win-ffi/lib_base.rb +54 -0
- data/lib/win-ffi/struct.rb +15 -0
- data/lib/win-ffi/structs/comctl32/init_common_controls_ex.rb +10 -0
- data/lib/win-ffi/structs/comdlg32/choose_color.rb +23 -0
- data/lib/win-ffi/structs/comdlg32/choose_font.rb +28 -0
- data/lib/win-ffi/structs/comdlg32/find_replace.rb +24 -0
- data/lib/win-ffi/structs/gdi32/abc.rb +9 -0
- data/lib/win-ffi/structs/gdi32/abcfloat.rb +10 -0
- data/lib/win-ffi/structs/gdi32/bitmap.rb +13 -0
- data/lib/win-ffi/structs/gdi32/bitmap_info.rb +11 -0
- data/lib/win-ffi/structs/gdi32/bitmap_info_header.rb +17 -0
- data/lib/win-ffi/structs/gdi32/blend_function.rb +10 -0
- data/lib/win-ffi/structs/gdi32/display_device.rb +12 -0
- data/lib/win-ffi/structs/gdi32/handle_table.rb +7 -0
- data/lib/win-ffi/structs/gdi32/kerning_pair.rb +9 -0
- data/lib/win-ffi/structs/gdi32/log_brush.rb +10 -0
- data/lib/win-ffi/structs/gdi32/log_font.rb +20 -0
- data/lib/win-ffi/structs/gdi32/meta_file_pict.rb +10 -0
- data/lib/win-ffi/structs/gdi32/palette_entry.rb +10 -0
- data/lib/win-ffi/structs/gdi32/pixel_format_descriptor.rb +57 -0
- data/lib/win-ffi/structs/gdi32/rgb_quad.rb +10 -0
- data/lib/win-ffi/structs/kernel32/actctx.rb +22 -0
- data/lib/win-ffi/structs/netapi32/wksta_info_100.rb +9 -0
- data/lib/win-ffi/structs/os_version_info.rb +10 -0
- data/lib/win-ffi/structs/os_version_info_ex.rb +70 -0
- data/lib/win-ffi/structs/paint_struct.rb +12 -0
- data/lib/win-ffi/structs/point.rb +10 -0
- data/lib/win-ffi/structs/rect.rb +28 -0
- data/lib/win-ffi/structs/size.rb +6 -0
- data/lib/win-ffi/structs/user32/controls/combobox_info.rb +13 -0
- data/lib/win-ffi/structs/user32/controls/scroll_info.rb +13 -0
- data/lib/win-ffi/structs/user32/controls/scrollbar_info.rb +13 -0
- data/lib/win-ffi/structs/user32/cursor_info.rb +10 -0
- data/lib/win-ffi/structs/user32/display_device.rb +12 -0
- data/lib/win-ffi/structs/user32/draw_text_params.rb +11 -0
- data/lib/win-ffi/structs/user32/icon_info.rb +11 -0
- data/lib/win-ffi/structs/user32/icon_info_ex.rb +15 -0
- data/lib/win-ffi/structs/user32/last_input_info.rb +8 -0
- data/lib/win-ffi/structs/user32/mouse_move_point.rb +10 -0
- data/lib/win-ffi/structs/user32/msg.rb +16 -0
- data/lib/win-ffi/structs/user32/pointer_info.rb +25 -0
- data/lib/win-ffi/structs/user32/pointer_pen_info.rb +18 -0
- data/lib/win-ffi/structs/user32/pointer_touch_info.rb +17 -0
- data/lib/win-ffi/structs/user32/raw_input_device_list.rb +10 -0
- data/lib/win-ffi/structs/user32/raw_input_header.rb +10 -0
- data/lib/win-ffi/structs/user32/touch_hit_testing_input.rb +11 -0
- data/lib/win-ffi/structs/user32/touch_hit_testing_proximity_evaluation.rb +8 -0
- data/lib/win-ffi/structs/user32/track_mouse_event.rb +10 -0
- data/lib/win-ffi/structs/user32/window/alt_tab_info.rb +17 -0
- data/lib/win-ffi/structs/user32/window/bs_info.rb +12 -0
- data/lib/win-ffi/structs/user32/window/create_struct.rb +22 -0
- data/lib/win-ffi/structs/user32/window/dlg_template.rb +13 -0
- data/lib/win-ffi/structs/user32/window/flashw_info.rb +11 -0
- data/lib/win-ffi/structs/user32/window/gui_thread_info.rb +17 -0
- data/lib/win-ffi/structs/user32/window/luid.rb +8 -0
- data/lib/win-ffi/structs/user32/window/menu_info.rb +13 -0
- data/lib/win-ffi/structs/user32/window/menu_item_info.rb +18 -0
- data/lib/win-ffi/structs/user32/window/menu_item_template.rb +9 -0
- data/lib/win-ffi/structs/user32/window/menubar_info.rb +12 -0
- data/lib/win-ffi/structs/user32/window/msgbox_params.rb +16 -0
- data/lib/win-ffi/structs/user32/window/non_client_metrics.rb +29 -0
- data/lib/win-ffi/structs/user32/window/title_bar_info.rb +9 -0
- data/lib/win-ffi/structs/user32/window/tpm_params.rb +8 -0
- data/lib/win-ffi/structs/user32/window/update_layered_window_info.rb +22 -0
- data/lib/win-ffi/structs/user32/window/window_placement.rb +32 -0
- data/lib/win-ffi/structs/user32/window/window_pos.rb +46 -0
- data/lib/win-ffi/structs/user32/window/wndclass.rb +19 -0
- data/lib/win-ffi/structs/user32/window/wndclassex.rb +40 -0
- data/lib/win-ffi/version.rb +3 -0
- data/lib/win-ffi.rb +42 -0
- metadata +363 -0
@@ -0,0 +1,225 @@
|
|
1
|
+
require 'win-ffi/enums/user32'
|
2
|
+
|
3
|
+
module WinFFI
|
4
|
+
module User32
|
5
|
+
# https://msdn.microsoft.com/en-us/library/windows/desktop/ms724947%28v=vs.85%29.aspx
|
6
|
+
SystemParametersInfoAction = enum :system_parameters_info_action,
|
7
|
+
[
|
8
|
+
:GETBEEP, 0x0001,
|
9
|
+
:SETBEEP, 0x0002,
|
10
|
+
:GETMOUSE, 0x0003,
|
11
|
+
:SETMOUSE, 0x0004,
|
12
|
+
:GETBORDER, 0x0005,
|
13
|
+
:SETBORDER, 0x0006,
|
14
|
+
:GETKEYBOARDSPEED, 0x000A,
|
15
|
+
:SETKEYBOARDSPEED, 0x000B,
|
16
|
+
:LANGDRIVER, 0x000C,
|
17
|
+
:ICONHORIZONTALSPACING, 0x000D,
|
18
|
+
:GETSCREENSAVETIMEOUT, 0x000E,
|
19
|
+
:SETSCREENSAVETIMEOUT, 0x000F,
|
20
|
+
:GETSCREENSAVEACTIVE, 0x0010,
|
21
|
+
:SETSCREENSAVEACTIVE, 0x0011,
|
22
|
+
:GETGRIDGRANULARITY, 0x0012,
|
23
|
+
:SETGRIDGRANULARITY, 0x0013,
|
24
|
+
:SETDESKWALLPAPER, 0x0014,
|
25
|
+
:SETDESKPATTERN, 0x0015,
|
26
|
+
:GETKEYBOARDDELAY, 0x0016,
|
27
|
+
:SETKEYBOARDDELAY, 0x0017,
|
28
|
+
:ICONVERTICALSPACING, 0x0018,
|
29
|
+
:GETICONTITLEWRAP, 0x0019,
|
30
|
+
:SETICONTITLEWRAP, 0x001A,
|
31
|
+
:GETMENUDROPALIGNMENT, 0x001B,
|
32
|
+
:SETMENUDROPALIGNMENT, 0x001C,
|
33
|
+
:SETDOUBLECLKWIDTH, 0x001D,
|
34
|
+
:SETDOUBLECLKHEIGHT, 0x001E,
|
35
|
+
:GETICONTITLELOGFONT, 0x001F,
|
36
|
+
:SETDOUBLECLICKTIME, 0x0020,
|
37
|
+
:SETMOUSEBUTTONSWAP, 0x0021,
|
38
|
+
:SETICONTITLELOGFONT, 0x0022,
|
39
|
+
:GETFASTTASKSWITCH, 0x0023,
|
40
|
+
:SETFASTTASKSWITCH, 0x0024,
|
41
|
+
:SETDRAGFULLWINDOWS, 0x0025,
|
42
|
+
:GETDRAGFULLWINDOWS, 0x0026,
|
43
|
+
:GETNONCLIENTMETRICS, 0x0029,
|
44
|
+
:SETNONCLIENTMETRICS, 0x002A,
|
45
|
+
:GETMINIMIZEDMETRICS, 0x002B,
|
46
|
+
:SETMINIMIZEDMETRICS, 0x002C,
|
47
|
+
:GETICONMETRICS, 0x002D,
|
48
|
+
:SETICONMETRICS, 0x002E,
|
49
|
+
:SETWORKAREA, 0x002F,
|
50
|
+
:GETWORKAREA, 0x0030,
|
51
|
+
:SETPENWINDOWS, 0x0031,
|
52
|
+
:GETHIGHCONTRAST, 0x0042,
|
53
|
+
:SETHIGHCONTRAST, 0x0043,
|
54
|
+
:GETKEYBOARDPREF, 0x0044,
|
55
|
+
:SETKEYBOARDPREF, 0x0045,
|
56
|
+
:GETSCREENREADER, 0x0046,
|
57
|
+
:SETSCREENREADER, 0x0047,
|
58
|
+
:GETANIMATION, 0x0048,
|
59
|
+
:SETANIMATION, 0x0049,
|
60
|
+
:GETFONTSMOOTHING, 0x004A,
|
61
|
+
:SETFONTSMOOTHING, 0x004B,
|
62
|
+
:SETDRAGWIDTH, 0x004C,
|
63
|
+
:SETDRAGHEIGHT, 0x004D,
|
64
|
+
:SETHANDHELD, 0x004E,
|
65
|
+
:GETLOWPOWERTIMEOUT, 0x004F,
|
66
|
+
:GETPOWEROFFTIMEOUT, 0x0050,
|
67
|
+
:SETLOWPOWERTIMEOUT, 0x0051,
|
68
|
+
:SETPOWEROFFTIMEOUT, 0x0052,
|
69
|
+
:GETLOWPOWERACTIVE, 0x0053,
|
70
|
+
:GETPOWEROFFACTIVE, 0x0054,
|
71
|
+
:SETLOWPOWERACTIVE, 0x0055,
|
72
|
+
:SETPOWEROFFACTIVE, 0x0056,
|
73
|
+
:SETCURSORS, 0x0057,
|
74
|
+
:SETICONS, 0x0058,
|
75
|
+
:GETDEFAULTINPUTLANG, 0x0059,
|
76
|
+
:SETDEFAULTINPUTLANG, 0x005A,
|
77
|
+
:SETLANGTOGGLE, 0x005B,
|
78
|
+
:GETWINDOWSEXTENSION, 0x005C,
|
79
|
+
:SETMOUSETRAILS, 0x005D,
|
80
|
+
:GETMOUSETRAILS, 0x005E,
|
81
|
+
:SETSCREENSAVERRUNNING, 0x0061,
|
82
|
+
:SCREENSAVERRUNNING, 0x0061,
|
83
|
+
:GETFILTERKEYS, 0x0032,
|
84
|
+
:SETFILTERKEYS, 0x0033,
|
85
|
+
:GETTOGGLEKEYS, 0x0034,
|
86
|
+
:SETTOGGLEKEYS, 0x0035,
|
87
|
+
:GETMOUSEKEYS, 0x0036,
|
88
|
+
:SETMOUSEKEYS, 0x0037,
|
89
|
+
:GETSHOWSOUNDS, 0x0038,
|
90
|
+
:SETSHOWSOUNDS, 0x0039,
|
91
|
+
:GETSTICKYKEYS, 0x003A,
|
92
|
+
:SETSTICKYKEYS, 0x003B,
|
93
|
+
:GETACCESSTIMEOUT, 0x003C,
|
94
|
+
:SETACCESSTIMEOUT, 0x003D,
|
95
|
+
:GETSERIALKEYS, 0x003E,
|
96
|
+
:SETSERIALKEYS, 0x003F,
|
97
|
+
:GETSOUNDSENTRY, 0x0040,
|
98
|
+
:SETSOUNDSENTRY, 0x0041,
|
99
|
+
:GETSNAPTODEFBUTTON, 0x005F,
|
100
|
+
:SETSNAPTODEFBUTTON, 0x0060,
|
101
|
+
:GETMOUSEHOVERWIDTH, 0x0062,
|
102
|
+
:SETMOUSEHOVERWIDTH, 0x0063,
|
103
|
+
:GETMOUSEHOVERHEIGHT, 0x0064,
|
104
|
+
:SETMOUSEHOVERHEIGHT, 0x0065,
|
105
|
+
:GETMOUSEHOVERTIME, 0x0066,
|
106
|
+
:SETMOUSEHOVERTIME, 0x0067,
|
107
|
+
:GETWHEELSCROLLLINES, 0x0068,
|
108
|
+
:SETWHEELSCROLLLINES, 0x0069,
|
109
|
+
:GETMENUSHOWDELAY, 0x006A,
|
110
|
+
:SETMENUSHOWDELAY, 0x006B,
|
111
|
+
:GETWHEELSCROLLCHARS, 0x006C,
|
112
|
+
:SETWHEELSCROLLCHARS, 0x006D,
|
113
|
+
:GETSHOWIMEUI, 0x006E,
|
114
|
+
:SETSHOWIMEUI, 0x006F,
|
115
|
+
:GETMOUSESPEED, 0x0070,
|
116
|
+
:SETMOUSESPEED, 0x0071,
|
117
|
+
:GETSCREENSAVERRUNNING, 0x0072,
|
118
|
+
:GETDESKWALLPAPER, 0x0073,
|
119
|
+
:GETAUDIODESCRIPTION, 0x0074,
|
120
|
+
:SETAUDIODESCRIPTION, 0x0075,
|
121
|
+
:GETSCREENSAVESECURE, 0x0076,
|
122
|
+
:SETSCREENSAVESECURE, 0x0077,
|
123
|
+
:GETHUNGAPPTIMEOUT, 0x0078,
|
124
|
+
:SETHUNGAPPTIMEOUT, 0x0079,
|
125
|
+
:GETWAITTOKILLTIMEOUT, 0x007A,
|
126
|
+
:SETWAITTOKILLTIMEOUT, 0x007B,
|
127
|
+
:GETWAITTOKILLSERVICETIMEOUT, 0x007C,
|
128
|
+
:SETWAITTOKILLSERVICETIMEOUT, 0x007D,
|
129
|
+
:GETMOUSEDOCKTHRESHOLD, 0x007E,
|
130
|
+
:SETMOUSEDOCKTHRESHOLD, 0x007F,
|
131
|
+
:GETPENDOCKTHRESHOLD, 0x0080,
|
132
|
+
:SETPENDOCKTHRESHOLD, 0x0081,
|
133
|
+
:GETWINARRANGING, 0x0082,
|
134
|
+
:SETWINARRANGING, 0x0083,
|
135
|
+
:GETMOUSEDRAGOUTTHRESHOLD, 0x0084,
|
136
|
+
:SETMOUSEDRAGOUTTHRESHOLD, 0x0085,
|
137
|
+
:GETPENDRAGOUTTHRESHOLD, 0x0086,
|
138
|
+
:SETPENDRAGOUTTHRESHOLD, 0x0087,
|
139
|
+
:GETMOUSESIDEMOVETHRESHOLD, 0x0088,
|
140
|
+
:SETMOUSESIDEMOVETHRESHOLD, 0x0089,
|
141
|
+
:GETPENSIDEMOVETHRESHOLD, 0x008A,
|
142
|
+
:SETPENSIDEMOVETHRESHOLD, 0x008B,
|
143
|
+
:GETDRAGFROMMAXIMIZE, 0x008C,
|
144
|
+
:SETDRAGFROMMAXIMIZE, 0x008D,
|
145
|
+
:GETSNAPSIZING, 0x008E,
|
146
|
+
:SETSNAPSIZING, 0x008F,
|
147
|
+
:GETDOCKMOVING, 0x0090,
|
148
|
+
:SETDOCKMOVING, 0x0091,
|
149
|
+
:GETACTIVEWINDOWTRACKING, 0x1000,
|
150
|
+
:SETACTIVEWINDOWTRACKING, 0x1001,
|
151
|
+
:GETMENUANIMATION, 0x1002,
|
152
|
+
:SETMENUANIMATION, 0x1003,
|
153
|
+
:GETCOMBOBOXANIMATION, 0x1004,
|
154
|
+
:SETCOMBOBOXANIMATION, 0x1005,
|
155
|
+
:GETLISTBOXSMOOTHSCROLLING, 0x1006,
|
156
|
+
:SETLISTBOXSMOOTHSCROLLING, 0x1007,
|
157
|
+
:GETGRADIENTCAPTIONS, 0x1008,
|
158
|
+
:SETGRADIENTCAPTIONS, 0x1009,
|
159
|
+
:GETKEYBOARDCUES, 0x100A,
|
160
|
+
:SETKEYBOARDCUES, 0x100B,
|
161
|
+
:GETMENUUNDERLINES, 0x100A,
|
162
|
+
:SETMENUUNDERLINES, 0x100B,
|
163
|
+
:GETACTIVEWNDTRKZORDER, 0x100C,
|
164
|
+
:SETACTIVEWNDTRKZORDER, 0x100D,
|
165
|
+
:GETHOTTRACKING, 0x100E,
|
166
|
+
:SETHOTTRACKING, 0x100F,
|
167
|
+
:GETMENUFADE, 0x1012,
|
168
|
+
:SETMENUFADE, 0x1013,
|
169
|
+
:GETSELECTIONFADE, 0x1014,
|
170
|
+
:SETSELECTIONFADE, 0x1015,
|
171
|
+
:GETTOOLTIPANIMATION, 0x1016,
|
172
|
+
:SETTOOLTIPANIMATION, 0x1017,
|
173
|
+
:GETTOOLTIPFADE, 0x1018,
|
174
|
+
:SETTOOLTIPFADE, 0x1019,
|
175
|
+
:GETCURSORSHADOW, 0x101A,
|
176
|
+
:SETCURSORSHADOW, 0x101B,
|
177
|
+
:GETMOUSESONAR, 0x101C,
|
178
|
+
:SETMOUSESONAR, 0x101D,
|
179
|
+
:GETMOUSECLICKLOCK, 0x101E,
|
180
|
+
:SETMOUSECLICKLOCK, 0x101F,
|
181
|
+
:GETMOUSEVANISH, 0x1020,
|
182
|
+
:SETMOUSEVANISH, 0x1021,
|
183
|
+
:GETFLATMENU, 0x1022,
|
184
|
+
:SETFLATMENU, 0x1023,
|
185
|
+
:GETDROPSHADOW, 0x1024,
|
186
|
+
:SETDROPSHADOW, 0x1025,
|
187
|
+
:GETBLOCKSENDINPUTRESETS, 0x1026,
|
188
|
+
:SETBLOCKSENDINPUTRESETS, 0x1027,
|
189
|
+
:GETUIEFFECTS, 0x103E,
|
190
|
+
:SETUIEFFECTS, 0x103F,
|
191
|
+
:GETDISABLEOVERLAPPEDCONTENT, 0x1040,
|
192
|
+
:SETDISABLEOVERLAPPEDCONTENT, 0x1041,
|
193
|
+
:GETCLIENTAREAANIMATION, 0x1042,
|
194
|
+
:SETCLIENTAREAANIMATION, 0x1043,
|
195
|
+
:GETCLEARTYPE, 0x1048,
|
196
|
+
:SETCLEARTYPE, 0x1049,
|
197
|
+
:GETSPEECHRECOGNITION, 0x104A,
|
198
|
+
:SETSPEECHRECOGNITION, 0x104B,
|
199
|
+
:GETFOREGROUNDLOCKTIMEOUT, 0x2000,
|
200
|
+
:SETFOREGROUNDLOCKTIMEOUT, 0x2001,
|
201
|
+
:GETACTIVEWNDTRKTIMEOUT, 0x2002,
|
202
|
+
:SETACTIVEWNDTRKTIMEOUT, 0x2003,
|
203
|
+
:GETFOREGROUNDFLASHCOUNT, 0x2004,
|
204
|
+
:SETFOREGROUNDFLASHCOUNT, 0x2005,
|
205
|
+
:GETCARETWIDTH, 0x2006,
|
206
|
+
:SETCARETWIDTH, 0x2007,
|
207
|
+
:GETMOUSECLICKLOCKTIME, 0x2008,
|
208
|
+
:SETMOUSECLICKLOCKTIME, 0x2009,
|
209
|
+
:GETFONTSMOOTHINGTYPE, 0x200A,
|
210
|
+
:SETFONTSMOOTHINGTYPE, 0x200B,
|
211
|
+
:GETFONTSMOOTHINGCONTRAST, 0x200C,
|
212
|
+
:SETFONTSMOOTHINGCONTRAST, 0x200D,
|
213
|
+
:GETFOCUSBORDERWIDTH, 0x200E,
|
214
|
+
:SETFOCUSBORDERWIDTH, 0x200F,
|
215
|
+
:GETFOCUSBORDERHEIGHT, 0x2010,
|
216
|
+
:SETFOCUSBORDERHEIGHT, 0x2011,
|
217
|
+
:GETFONTSMOOTHINGORIENTATION, 0x2012,
|
218
|
+
:SETFONTSMOOTHINGORIENTATION, 0x2013,
|
219
|
+
:GETMINIMUMHITRADIUS, 0x2014,
|
220
|
+
:SETMINIMUMHITRADIUS, 0x2015,
|
221
|
+
:GETMESSAGEDURATION, 0x2016,
|
222
|
+
:SETMESSAGEDURATION, 0x2017
|
223
|
+
]
|
224
|
+
end
|
225
|
+
end
|
@@ -0,0 +1,246 @@
|
|
1
|
+
require 'win-ffi/enums/user32'
|
2
|
+
|
3
|
+
module WinFFI
|
4
|
+
module User32
|
5
|
+
# https://msdn.microsoft.com/en-us/library/windows/desktop/ms724947%28v=vs.85%29.aspx
|
6
|
+
SystemParametersInfoFlags = enum :system_parameters_info_flags,
|
7
|
+
[
|
8
|
+
:GETACCESSTIMEOUT, 0x003C,
|
9
|
+
:GETAUDIODESCRIPTION, 0x0074,
|
10
|
+
:GETCLIENTAREAANIMATION, 0x1042,
|
11
|
+
:GETDISABLEOVERLAPPEDCONTENT, 0x1040,
|
12
|
+
:GETFILTERKEYS, 0x0032,
|
13
|
+
:GETFOCUSBORDERHEIGHT, 0x2010,
|
14
|
+
:GETFOCUSBORDERWIDTH, 0x200E,
|
15
|
+
:GETHIGHCONTRAST, 0x0042,
|
16
|
+
:GETLOGICALDPIOVERRIDE, 0x009E,
|
17
|
+
:GETMESSAGEDURATION, 0x2016,
|
18
|
+
:GETMOUSECLICKLOCK, 0x101E,
|
19
|
+
:GETMOUSECLICKLOCKTIME, 0x2008,
|
20
|
+
:GETMOUSEKEYS, 0x0036,
|
21
|
+
:GETMOUSESONAR, 0x101C,
|
22
|
+
:GETMOUSEVANISH, 0x1020,
|
23
|
+
:GETSCREENREADER, 0x0046,
|
24
|
+
:GETSERIALKEYS, 0x003E,
|
25
|
+
:GETSHOWSOUNDS, 0x0038,
|
26
|
+
:GETSOUNDSENTRY, 0x0040,
|
27
|
+
:GETSTICKYKEYS, 0x003A,
|
28
|
+
:GETTOGGLEKEYS, 0x0034,
|
29
|
+
:SETACCESSTIMEOUT, 0x003D,
|
30
|
+
:SETAUDIODESCRIPTION, 0x0075,
|
31
|
+
:SETCLIENTAREAANIMATION, 0x1043,
|
32
|
+
:SETDISABLEOVERLAPPEDCONTENT, 0x1041,
|
33
|
+
:SETFILTERKEYS, 0x0033,
|
34
|
+
:SETFOCUSBORDERHEIGHT, 0x2011,
|
35
|
+
:SETFOCUSBORDERWIDTH, 0x200F,
|
36
|
+
:SETHIGHCONTRAST, 0x0043,
|
37
|
+
:SETLOGICALDPIOVERRIDE, 0x009F, # Do not use.
|
38
|
+
:SETMESSAGEDURATION, 0x2017,
|
39
|
+
:SETMOUSECLICKLOCK, 0x101F,
|
40
|
+
:SETMOUSECLICKLOCKTIME, 0x2009,
|
41
|
+
:SETMOUSEKEYS, 0x0037,
|
42
|
+
:SETMOUSESONAR, 0x101D,
|
43
|
+
:SETMOUSEVANISH, 0x1021,
|
44
|
+
:SETSCREENREADER, 0x0047,
|
45
|
+
:SETSERIALKEYS, 0x003F,
|
46
|
+
:SETSHOWSOUNDS, 0x0039,
|
47
|
+
:SETSOUNDSENTRY, 0x0041,
|
48
|
+
:SETSTICKYKEYS, 0x003B,
|
49
|
+
:SETTOGGLEKEYS, 0x0035,
|
50
|
+
|
51
|
+
# The following are the desktop parameters.
|
52
|
+
:GETCLEARTYPE, 0x1048,
|
53
|
+
:GETDESKWALLPAPER, 0x0073,
|
54
|
+
:GETDROPSHADOW, 0x1024,
|
55
|
+
:GETFLATMENU, 0x1022,
|
56
|
+
:GETFONTSMOOTHING, 0x004A,
|
57
|
+
:GETFONTSMOOTHINGCONTRAST, 0x200C,
|
58
|
+
:GETFONTSMOOTHINGORIENTATION, 0x2012,
|
59
|
+
:GETFONTSMOOTHINGTYPE, 0x200A,
|
60
|
+
:GETWORKAREA, 0x0030,
|
61
|
+
:SETCLEARTYPE, 0x1049,
|
62
|
+
:SETCURSORS, 0x0057,
|
63
|
+
:SETDESKPATTERN, 0x0015,
|
64
|
+
:SETDESKWALLPAPER, 0x0014,
|
65
|
+
:SETDROPSHADOW, 0x1025,
|
66
|
+
:SETFLATMENU, 0x1023,
|
67
|
+
:SETFONTSMOOTHING, 0x004B,
|
68
|
+
:SETFONTSMOOTHINGCONTRAST, 0x200D,
|
69
|
+
:SETFONTSMOOTHINGORIENTATION, 0x2013,
|
70
|
+
:SETFONTSMOOTHINGTYPE, 0x200B,
|
71
|
+
:SETWORKAREA, 0x002F,
|
72
|
+
|
73
|
+
# The following are the icon parameters.
|
74
|
+
:GETICONMETRICS, 0x002D,
|
75
|
+
:GETICONTITLELOGFONT, 0x001F,
|
76
|
+
:GETICONTITLEWRAP, 0x0019,
|
77
|
+
:ICONHORIZONTALSPACING, 0x000D,
|
78
|
+
:ICONVERTICALSPACING, 0x0018,
|
79
|
+
:SETICONMETRICS, 0x002E,
|
80
|
+
:SETICONS, 0x0058,
|
81
|
+
:SETICONTITLELOGFONT, 0x0022,
|
82
|
+
:SETICONTITLEWRAP, 0x001A,
|
83
|
+
:GETBEEP, 0x0001,
|
84
|
+
:GETBLOCKSENDINPUTRESETS, 0x1026,
|
85
|
+
:GETCONTACTVISUALIZATION, 0x2018,
|
86
|
+
:GETDEFAULTINPUTLANG, 0x0059,
|
87
|
+
:GETGESTUREVISUALIZATION, 0x201A,
|
88
|
+
:GETKEYBOARDCUES, 0x100A,
|
89
|
+
:GETKEYBOARDDELAY, 0x0016,
|
90
|
+
:GETKEYBOARDPREF, 0x0044,
|
91
|
+
:GETKEYBOARDSPEED, 0x000A,
|
92
|
+
:GETMOUSE, 0x0003,
|
93
|
+
:GETMOUSEHOVERHEIGHT, 0x0064,
|
94
|
+
:GETMOUSEHOVERTIME, 0x0066,
|
95
|
+
:GETMOUSEHOVERWIDTH, 0x0062,
|
96
|
+
:GETMOUSESPEED, 0x0070,
|
97
|
+
:GETMOUSETRAILS, 0x005E,
|
98
|
+
:GETSNAPTODEFBUTTON, 0x005F,
|
99
|
+
:GETSYSTEMLANGUAGEBAR, 0x1050,
|
100
|
+
:GETTHREADLOCALINPUTSETTINGS, 0x104E,
|
101
|
+
:GETWHEELSCROLLCHARS, 0x006C,
|
102
|
+
:GETWHEELSCROLLLINES, 0x0068,
|
103
|
+
:SETBEEP, 0x0002,
|
104
|
+
:SETBLOCKSENDINPUTRESETS, 0x1027,
|
105
|
+
:SETCONTACTVISUALIZATION, 0x2019,
|
106
|
+
:SETDEFAULTINPUTLANG, 0x005A,
|
107
|
+
:SETDOUBLECLICKTIME, 0x0020,
|
108
|
+
:SETDOUBLECLKHEIGHT, 0x001E,
|
109
|
+
:SETDOUBLECLKWIDTH, 0x001D,
|
110
|
+
:SETGESTUREVISUALIZATION, 0x201B,
|
111
|
+
:SETKEYBOARDCUES, 0x100B,
|
112
|
+
:SETKEYBOARDDELAY, 0x0017,
|
113
|
+
:SETKEYBOARDPREF, 0x0045,
|
114
|
+
:SETKEYBOARDSPEED, 0x000B,
|
115
|
+
:SETLANGTOGGLE, 0x005B,
|
116
|
+
:SETMOUSE, 0x0004,
|
117
|
+
:SETMOUSEBUTTONSWAP, 0x0021,
|
118
|
+
:SETMOUSEHOVERHEIGHT, 0x0065,
|
119
|
+
:SETMOUSEHOVERTIME, 0x0067,
|
120
|
+
:SETMOUSEHOVERWIDTH, 0x0063,
|
121
|
+
:SETMOUSESPEED, 0x0071,
|
122
|
+
:SETMOUSETRAILS, 0x005D,
|
123
|
+
:SETSNAPTODEFBUTTON, 0x0060,
|
124
|
+
:SETSYSTEMLANGUAGEBAR, 0x1051,
|
125
|
+
:SETTHREADLOCALINPUTSETTINGS, 0x104F,
|
126
|
+
:SETWHEELSCROLLCHARS, 0x006D,
|
127
|
+
:SETWHEELSCROLLLINES, 0x0069,
|
128
|
+
|
129
|
+
# The following are the menu parameters.
|
130
|
+
:GETMENUDROPALIGNMENT, 0x001B,
|
131
|
+
:GETMENUFADE, 0x1012,
|
132
|
+
:GETMENUSHOWDELAY, 0x006A,
|
133
|
+
:SETMENUDROPALIGNMENT, 0x001C,
|
134
|
+
:SETMENUFADE, 0x1013,
|
135
|
+
:SETMENUSHOWDELAY, 0x006B,
|
136
|
+
|
137
|
+
# The following are the power parameters.
|
138
|
+
# Beginning with Windows Server 2008 and Windows Vista, these power parameters are not supported. Instead, to
|
139
|
+
# determine the current display power state, an application should register for GUID_MONITOR_POWER_STATE
|
140
|
+
# notifications. To determine the current display power down time-out, an application should register for
|
141
|
+
# notification of changes to the GUID_VIDEO_POWERDOWN_TIMEOUT power setting. For more information, see
|
142
|
+
# Registering for Power Events.
|
143
|
+
# Windows Server 2003 and Windows XP/2000: To determine the current display power state, use the following
|
144
|
+
# power parameters.
|
145
|
+
|
146
|
+
:GETLOWPOWERACTIVE, 0x0053,
|
147
|
+
:GETLOWPOWERTIMEOUT, 0x004F,
|
148
|
+
:GETPOWEROFFACTIVE, 0x0054,
|
149
|
+
:GETPOWEROFFTIMEOUT, 0x0050,
|
150
|
+
:SETLOWPOWERACTIVE, 0x0055,
|
151
|
+
:SETLOWPOWERTIMEOUT, 0x0051,
|
152
|
+
:SETPOWEROFFACTIVE, 0x0056,
|
153
|
+
:SETPOWEROFFTIMEOUT, 0x0052,
|
154
|
+
|
155
|
+
# The following are the screen saver parameters.
|
156
|
+
:GETSCREENSAVEACTIVE, 0x0010,
|
157
|
+
:GETSCREENSAVERRUNNING, 0x0072,
|
158
|
+
:GETSCREENSAVESECURE, 0x0076,
|
159
|
+
:GETSCREENSAVETIMEOUT, 0x000E,
|
160
|
+
:SETSCREENSAVEACTIVE, 0x0011,
|
161
|
+
:SETSCREENSAVESECURE, 0x0077,
|
162
|
+
:SETSCREENSAVETIMEOUT, 0x000F,
|
163
|
+
|
164
|
+
# The following are the time-out parameters for applications and services.
|
165
|
+
:GETHUNGAPPTIMEOUT, 0x0078,
|
166
|
+
:GETWAITTOKILLTIMEOUT, 0x007A,
|
167
|
+
:GETWAITTOKILLSERVICETIMEOUT, 0x007C,
|
168
|
+
:SETHUNGAPPTIMEOUT, 0x0079,
|
169
|
+
:SETWAITTOKILLTIMEOUT, 0x007B,
|
170
|
+
:SETWAITTOKILLSERVICETIMEOUT, 0x007D,
|
171
|
+
|
172
|
+
# The following are the UI effects. The :SETUIEFFECTS value is used to enable or disable all UI effects at once.
|
173
|
+
# This table contains the complete list of UI effect values.
|
174
|
+
:GETCOMBOBOXANIMATION, 0x1004,
|
175
|
+
:GETCURSORSHADOW, 0x101A,
|
176
|
+
:GETGRADIENTCAPTIONS, 0x1008,
|
177
|
+
:GETHOTTRACKING, 0x100E,
|
178
|
+
:GETLISTBOXSMOOTHSCROLLING, 0x1006,
|
179
|
+
:GETMENUANIMATION, 0x1002,
|
180
|
+
:GETMENUUNDERLINES, 0x100A,
|
181
|
+
:GETSELECTIONFADE, 0x1014,
|
182
|
+
:GETTOOLTIPANIMATION, 0x1016,
|
183
|
+
:GETTOOLTIPFADE, 0x1018,
|
184
|
+
:GETUIEFFECTS, 0x103E,
|
185
|
+
:SETCOMBOBOXANIMATION, 0x1005,
|
186
|
+
:SETCURSORSHADOW, 0x101B,
|
187
|
+
:SETGRADIENTCAPTIONS, 0x1009,
|
188
|
+
:SETHOTTRACKING, 0x100F,
|
189
|
+
:SETLISTBOXSMOOTHSCROLLING, 0x1007,
|
190
|
+
:SETMENUANIMATION, 0x1003,
|
191
|
+
:SETMENUUNDERLINES, 0x100B,
|
192
|
+
:SETSELECTIONFADE, 0x1015,
|
193
|
+
:SETTOOLTIPANIMATION, 0x1017,
|
194
|
+
:SETTOOLTIPFADE, 0x1019,
|
195
|
+
:SETUIEFFECTS, 0x103F,
|
196
|
+
|
197
|
+
# The following are the window parameters.
|
198
|
+
:GETACTIVEWINDOWTRACKING, 0x1000,
|
199
|
+
:GETACTIVEWNDTRKZORDER, 0x100C,
|
200
|
+
:GETACTIVEWNDTRKTIMEOUT, 0x2002,
|
201
|
+
:GETANIMATION, 0x0048,
|
202
|
+
:GETBORDER, 0x0005,
|
203
|
+
:GETCARETWIDTH, 0x2006,
|
204
|
+
:GETDOCKMOVING, 0x0090,
|
205
|
+
:GETDRAGFROMMAXIMIZE, 0x008C,
|
206
|
+
:GETDRAGFULLWINDOWS, 0x0026,
|
207
|
+
:GETFOREGROUNDFLASHCOUNT, 0x2004,
|
208
|
+
:GETFOREGROUNDLOCKTIMEOUT, 0x2000,
|
209
|
+
:GETMINIMIZEDMETRICS, 0x002B,
|
210
|
+
:GETMOUSEDOCKTHRESHOLD, 0x007E,
|
211
|
+
:GETMOUSEDRAGOUTTHRESHOLD, 0x0084,
|
212
|
+
:GETMOUSESIDEMOVETHRESHOLD, 0x0088,
|
213
|
+
:GETNONCLIENTMETRICS, 0x0029,
|
214
|
+
:GETPENDOCKTHRESHOLD, 0x0080,
|
215
|
+
:GETPENDRAGOUTTHRESHOLD, 0x0086,
|
216
|
+
:GETPENSIDEMOVETHRESHOLD, 0x008A,
|
217
|
+
:GETSHOWIMEUI, 0x006E,
|
218
|
+
:GETSNAPSIZING, 0x008E,
|
219
|
+
:GETWINARRANGING, 0x0082,
|
220
|
+
:SETACTIVEWINDOWTRACKING, 0x1001,
|
221
|
+
:SETACTIVEWNDTRKZORDER, 0x100D,
|
222
|
+
:SETACTIVEWNDTRKTIMEOUT, 0x2003,
|
223
|
+
:SETANIMATION, 0x0049,
|
224
|
+
:SETBORDER, 0x0006,
|
225
|
+
:SETCARETWIDTH, 0x2007,
|
226
|
+
:SETDOCKMOVING, 0x0091,
|
227
|
+
:SETDRAGFROMMAXIMIZE, 0x008D,
|
228
|
+
:SETDRAGFULLWINDOWS, 0x0025,
|
229
|
+
:SETDRAGHEIGHT, 0x004D,
|
230
|
+
:SETDRAGWIDTH, 0x004C,
|
231
|
+
:SETFOREGROUNDFLASHCOUNT, 0x2005,
|
232
|
+
:SETFOREGROUNDLOCKTIMEOUT, 0x2001,
|
233
|
+
:SETMINIMIZEDMETRICS, 0x002C,
|
234
|
+
:SETMOUSEDOCKTHRESHOLD, 0x007F,
|
235
|
+
:SETMOUSEDRAGOUTTHRESHOLD, 0x0085,
|
236
|
+
:SETMOUSESIDEMOVETHRESHOLD, 0x0089,
|
237
|
+
:SETNONCLIENTMETRICS, 0x002A,
|
238
|
+
:SETPENDOCKTHRESHOLD, 0x0081,
|
239
|
+
:SETPENDRAGOUTTHRESHOLD, 0x0087,
|
240
|
+
:SETPENSIDEMOVETHRESHOLD, 0x008B,
|
241
|
+
:SETSHOWIMEUI, 0x006F,
|
242
|
+
:SETSNAPSIZING, 0x008F,
|
243
|
+
:SETWINARRANGING, 0x0083
|
244
|
+
]
|
245
|
+
end
|
246
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
require 'win-ffi/enums/user32'
|
2
|
+
|
3
|
+
module WinFFI
|
4
|
+
module User32
|
5
|
+
TrackPopupMenuFlags = enum :track_popup_menu_flags,
|
6
|
+
[
|
7
|
+
# Use one of the following flags to specify how the function positions the pop-up window horizontally.
|
8
|
+
:CENTERALIGN, 0x0004, # Centers pop-up window horizontally relative to the coordinate specified by the
|
9
|
+
# anchorPoint->x parameter.
|
10
|
+
:LEFTALIGN, 0x0000, # Positions the pop-up window so that its left edge is aligned with the coordinate specified
|
11
|
+
# by the anchorPoint->x parameter.
|
12
|
+
:RIGHTALIGN, 0x0008, # Positions the pop-up window so that its right edge is aligned with the coordinate
|
13
|
+
# specified by the anchorPoint->x parameter.
|
14
|
+
|
15
|
+
|
16
|
+
# Use one of the following flags to specify how the function positions the pop-up window vertically.
|
17
|
+
:BOTTOMALIGN, 0x0020, # Positions the pop-up window so that its bottom edge is aligned with the coordinate specified
|
18
|
+
# by the anchorPoint->y parameter.
|
19
|
+
|
20
|
+
:TOPALIGN, 0x0000, #Positions the pop-up window so that its left edge is aligned with the coordinate specified by the
|
21
|
+
# anchorPoint->y parameter.
|
22
|
+
|
23
|
+
:VCENTERALIGN, 0x0010, #Centers the pop-up window vertically relative to the coordinate specified by the
|
24
|
+
# anchorPoint->y parameter.
|
25
|
+
|
26
|
+
|
27
|
+
# Use the following flags to control discovery of the user selection without having to set up a parent window for the menu.
|
28
|
+
:NONOTIFY, 0x0080, # The function does not send notification messages when the user clicks a menu item.
|
29
|
+
|
30
|
+
:RETURNCMD, 0x0100, # The function returns the menu item identifier of the user's selection in the return value.
|
31
|
+
|
32
|
+
|
33
|
+
# Use one of the following flags to specify which mouse button the shortcut menu tracks.
|
34
|
+
:LEFTBUTTON, 0x0000, # The user can select menu items with only the left mouse button.
|
35
|
+
|
36
|
+
:RIGHTBUTTON, 0x0002, # The user can select menu items with both the left and right mouse buttons.
|
37
|
+
|
38
|
+
|
39
|
+
# Use any reasonable combination of the following flags to modify the animation of a menu. For example, by
|
40
|
+
# selecting a horizontal and a vertical flag, you can achieve diagonal animation.
|
41
|
+
:HORPOSANIMATION, 0x0400, # Animates the menu from left to right.
|
42
|
+
:HORNEGANIMATION, 0x0800, # Animates the menu from right to left.
|
43
|
+
:VERPOSANIMATION, 0x1000, # Animates the menu from top to bottom.
|
44
|
+
:VERNEGANIMATION, 0x2000, # Animates the menu from bottom to top.
|
45
|
+
:NOANIMATION, 0x4000, # Displays menu without animation.
|
46
|
+
|
47
|
+
# For any animation to occur, the SystemParametersInfo function must set SPI_SETMENUANIMATION. Also, all
|
48
|
+
# the :*ANIMATION flags, except :NOANIMATION, are ignored if menu fade animation is on. For more information,
|
49
|
+
# see the SPI_GETMENUFADE flag in SystemParametersInfo.
|
50
|
+
# Use the :RECURSE flag to display a menu when another menu is already displayed. This is intended to support
|
51
|
+
# context menus within a menu.
|
52
|
+
|
53
|
+
|
54
|
+
#Use one of the following flags to specify whether to accommodate horizontal or vertical alignment.
|
55
|
+
:HORIZONTAL, 0x0000, # If the menu cannot be shown at the specified location without overlapping the excluded
|
56
|
+
# rectangle, the system tries to accommodate the requested horizontal alignment before the requested vertical
|
57
|
+
# alignment.
|
58
|
+
|
59
|
+
:VERTICAL, 0x0040, # If the menu cannot be shown at the specified location without overlapping the excluded
|
60
|
+
# rectangle, the system tries to accommodate the requested vertical alignment before the requested horizontal
|
61
|
+
# alignment.
|
62
|
+
|
63
|
+
|
64
|
+
# The following flag is available starting with Windows 7.
|
65
|
+
:WORKAREA, 0x10000, # Restricts the pop-up window to within the work area. If this flag is not set, the pop-up
|
66
|
+
# window is restricted to the work area only if the input point is within the work area. For more information,
|
67
|
+
# see the rcWork and rcMonitor members of the MONITORINFO structure.
|
68
|
+
]
|
69
|
+
end
|
70
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'win-ffi/enums/user32'
|
2
|
+
|
3
|
+
module WinFFI
|
4
|
+
module User32
|
5
|
+
WindowLong = enum :window_long,
|
6
|
+
[
|
7
|
+
:WNDPROC, -4, #Sets a new address for the window procedure. You cannot change this attribute if the
|
8
|
+
# window does not belong to the same process as the calling thread.
|
9
|
+
|
10
|
+
:HINSTANCE, -6, #Sets a new application instance handle.
|
11
|
+
|
12
|
+
:ID, -12, #Sets a new identifier of the child window. The window cannot be a top-level window.
|
13
|
+
|
14
|
+
:STYLE, -16, #Sets a new window style.
|
15
|
+
|
16
|
+
:EXSTYLE, -20, #Sets a new extended window style.
|
17
|
+
|
18
|
+
:USERDATA, -21, #Sets the user data associated with the window. This data is intended for use by the
|
19
|
+
# application that created the window. Its value is initially zero.
|
20
|
+
]
|
21
|
+
end
|
22
|
+
end
|