Module: AMS::Keyboard

Defined in:
docs/ams/keyboard.rb

Overview

Note:

Most methods for this module are Mac OS X compatible unless otherwise stated.

This namespace contains keyboard key state retrieval functions.

Since:

  • 2.0.0

Class Method Summary collapse

Class Method Details

.control_down?Boolean

Determine whether CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.control_up?Boolean

Determine whether CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.get_key_code(vk_name) ⇒ Integer?

Get virtual key code associated with the virtual key name.

Parameters:

  • vk_name (String, Symbol)

    Virtual key name.

Returns:

  • (Integer, nil)

    Virtual key constant code if successful.

See Also:

Since:

  • 3.0.0

.get_key_name(vk_code) ⇒ String?

Get virtual key name associated with the virtual key code.

Parameters:

  • vk_code (Integer)

    Virtual key code.

Returns:

  • (String, nil)

    Virtual key name or nil if vk_code is invalid.

See Also:

Since:

  • 3.5.0

.get_key_state(vk) ⇒ Integer

Get virtual key state.

Parameters:

  • vk (String, Symbol, Integer)

    Virtual key name or key code.

Returns:

  • (Integer)

    1 if down or 0 if up.

See Also:

Since:

  • 2.0.0

.get_keyboard_stateArray<Integer>

Note:

Windows only!

Get an array of all virtual key states.

Returns:

  • (Array<Integer>)

    An array of 256 values of 1 (down) or 0 (up).

See Also:

Since:

  • 2.0.0

.gey_virtual_key_codesHash<String, Integer>

Get general virtual key names and their associated key codes.

Returns:

  • (Hash<String, Integer>)

Since:

  • 3.0.0

.gey_virtual_key_codes2Hash<String, Integer>

Get extended virtual key names and their associated key codes.

Returns:

  • (Hash<String, Integer>)

Since:

  • 3.0.0

.gey_virtual_key_namesHash<Integer, String>

Get virtual key codes and their associated key names.

Returns:

  • (Hash<Integer, String>)

Since:

  • 3.0.0

.key_down?(vk) ⇒ Boolean

Determine whether virtual key is down.

Parameters:

  • vk (String, Symbol, Integer)

    Virtual key name or key code.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0

.key_toggled?(vk) ⇒ Boolean

Note:

Windows only!

Determine whether virtual key is toggled.

Parameters:

  • vk (String, Symbol, Integer)

    Virtual key name or key code.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0

.key_up?(vk) ⇒ Boolean

Determine whether virtual key is up.

Parameters:

  • vk (String, Symbol, Integer)

    Virtual key name or key code.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0

.keys_down?(*vks) ⇒ Boolean

Determine whether an array of virtual keys are down.

Parameters:

  • vks (Array<String, Symbol, Integer>)

    Virtual key names or key codes.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0

.keys_up?(*vks) ⇒ Boolean

Determine whether an array of virtual keys are up.

Parameters:

  • vks (Array<String, Symbol, Integer>)

    Virtual key names or key codes.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0

.lbutton_down?Boolean

Note:

Windows only!

Determine whether left mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.lbutton_up?Boolean

Note:

Windows only!

Determine whether left mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.lcontrol_down?Boolean

Determine whether left CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.lcontrol_up?Boolean

Determine whether left CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

Determine whether left ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

Determine whether left ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.lshift_down?Boolean

Determine whether left SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.lshift_up?Boolean

Determine whether left SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.mbutton_down?Boolean

Note:

Windows only!

Determine whether middle mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.mbutton_up?Boolean

Note:

Windows only!

Determine whether middle mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

Determine whether ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

Determine whether ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rbutton_down?Boolean

Note:

Windows only!

Determine whether right mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rbutton_up?Boolean

Note:

Windows only!

Determine whether right mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rcontrol_down?Boolean

Determine whether right CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rcontrol_up?Boolean

Determine whether right CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rmenu_down?Boolean

Determine whether right ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rmenu_up?Boolean

Determine whether right ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rshift_down?Boolean

Determine whether right SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.rshift_up?Boolean

Determine whether right SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.send_hardware_input(msg, wParamL, wParamH) ⇒ Integer

Note:

Windows only!

Note:

Be cautions when calling these from user input callbacks.

Send hardware input.

Parameters:

  • msg (Integer)
  • wParamL (Integer)
  • wParamH (Integer)

Returns:

  • (Integer)

See Also:

Since:

  • 3.6.0

.send_keyboard_input(vk, scan, flags, time) ⇒ Integer

Note:

Windows only!

Note:

Be cautions when calling these from user input callbacks.

Send keyboard input.

Parameters:

  • vk (Integer)
  • scan (Integer)
  • flags (Integer)
  • time (Integer)

Returns:

  • (Integer)

See Also:

Since:

  • 3.6.0

.send_mouse_input(dx, dy, mouse_data, flags, time) ⇒ Integer

Note:

Windows only!

Note:

Be cautions when calling these from user input callbacks.

Send mouse input.

Examples:

Performing left-click

# Get cursor position in absolute coordinates
x,y = AMS::Cursor.get_pos(1)
# First, send left-mouse-button-down
AMS::Keyboard.send_mouse_input(x, y, 0, 0x0002, 0)
# Then, send left-mouse-button-up
AMS::Keyboard.send_mouse_input(x, y, 0, 0x0004, 0)
# OR Send both at once
AMS::Keyboard.send_mouse_input(x, y, 0, 0x0002 | 0x0004, 0)

Parameters:

  • dx (Integer)
  • dy (Integer)
  • mouse_data (Integer)
  • flags (Integer)
  • time (Integer)

Returns:

  • (Integer)

See Also:

Since:

  • 3.6.0

.shift_down?Boolean

Determine whether SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.shift_up?Boolean

Determine whether SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.xbutton1_down?Boolean

Note:

Windows only!

Determine whether X1 mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.xbutton1_up?Boolean

Note:

Windows only!

Determine whether X1 mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.xbutton2_down?Boolean

Note:

Windows only!

Determine whether X2 mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0

.xbutton2_up?Boolean

Note:

Windows only!

Determine whether X2 mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0