win-ffi 0.3.0
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.
- 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
|