Module: AMS::Keyboard

Defined in:
keyboard.rb

Class Method Summary (collapse)

Class Method Details

+ (Boolean) control_down? Also known as: ctrl_down?

Determine whether CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



114
115
116
# File 'keyboard.rb', line 114

def control_down?
  AMS::C.get_key_state(0x11) == 1
end

+ (Boolean) control_up? Also known as: ctrl_up?

Determine whether CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



123
124
125
# File 'keyboard.rb', line 123

def control_up?
  AMS::C.get_key_state(0x11) == 0
end

+ (Fixnum) get_key_state(vk) Also known as: key

Get virtual key state

Parameters:

  • vk (String, Symbol, Fixnum)

    Virtual key name or constant value.

Returns:

  • (Fixnum)

    1 if down or 0 if up.

See Also:

Since:

  • 2.0.0



9
10
11
12
13
14
15
# File 'keyboard.rb', line 9

def get_key_state(vk)
  unless vk.is_a?(Numeric)
    vk = AMS::C.get_virtual_key_value_by_name(vk)
    return 0 unless vk
  end
  AMS::C.get_key_state(vk.to_i)
end

+ (Fixnum?) get_key_value(vk_name)

Get constant value associated with the virtual key name.

Parameters:

  • vk_name (String, Symbol)

    Virtual key name.

Returns:

  • (Fixnum, nil)

    Virtual key constant value if successful.

See Also:

Since:

  • 2.0.0



32
33
34
# File 'keyboard.rb', line 32

def get_key_value(vk_name)
  AMS::C.get_virtual_key_value_by_name(vk_name)
end

+ (Array<Fixnum>) get_keyboard_state

Get an array of all key states.

Returns:

  • (Array<Fixnum>)

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

See Also:

Since:

  • 2.0.0



23
24
25
# File 'keyboard.rb', line 23

def get_keyboard_state
  AMS::C.get_keyboard_state()
end

+ (Boolean) key_down?(vk)

Determine whether virtual key is down.

Parameters:

  • vk (String, Symbol, Fixnum)

    Virtual key name or constant value.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0



54
55
56
# File 'keyboard.rb', line 54

def key_down?(vk)
  get_key_state(vk) == 1
end

+ (Boolean) key_toggled?(vk)

Determine whether virtual key is toggled.

Parameters:

  • vk (String, Symbol, Fixnum)

    Virtual key name or constant value.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0



41
42
43
44
45
46
47
# File 'keyboard.rb', line 41

def key_toggled?(vk)
  unless vk.is_a?(Numeric)
    vk = AMS::C.get_virtual_key_value_by_name(vk)
    return 0 unless vk
  end
  AMS::C.is_key_toggled?(vk.to_i)
end

+ (Boolean) key_up?(vk)

Determine whether virtual key is up.

Parameters:

  • vk (String, Symbol, Fixnum)

    Virtual key name or constant value.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0



76
77
78
# File 'keyboard.rb', line 76

def key_up?(vk)
  get_key_state(vk) == 0
end

+ (Boolean) keys_down?(*vks)

Determine whether an array of virtual keys are down.

Parameters:

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

    Virtual key name or constant value.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0



63
64
65
66
67
68
69
# File 'keyboard.rb', line 63

def keys_down?(*vks)
  vks.flatten!
  vks.each { |vk|
    return false if get_key_state(vk) == 0
  }
  true
end

+ (Boolean) keys_up?(*vks)

Determine whether an array of virtual keys are up.

Parameters:

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

    Virtual key name or constant value.

Returns:

  • (Boolean)

See Also:

Since:

  • 2.0.0



85
86
87
88
89
90
91
# File 'keyboard.rb', line 85

def keys_up?(*vks)
  vks.flatten!
  vks.each { |vk|
    return false if get_key_state(vk) == 1
  }
  true
end

+ (Boolean) lbutton_down?

Determine whether left mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



146
147
148
# File 'keyboard.rb', line 146

def lbutton_down?
  AMS::C.get_key_state(0x01) == 1
end

+ (Boolean) lbutton_up?

Determine whether left mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



153
154
155
# File 'keyboard.rb', line 153

def lbutton_up?
  AMS::C.get_key_state(0x01) == 0
end

+ (Boolean) lcontrol_down? Also known as: lctrl_down?

Determine whether left CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



244
245
246
# File 'keyboard.rb', line 244

def lcontrol_down?
  AMS::C.get_key_state(0xA2) == 1
end

+ (Boolean) lcontrol_up? Also known as: lctrl_up?

Determine whether left CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



253
254
255
# File 'keyboard.rb', line 253

def lcontrol_up?
  AMS::C.get_key_state(0xA2) == 0
end

Determine whether left ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



280
281
282
# File 'keyboard.rb', line 280

def lmenu_down?
  AMS::C.get_key_state(0xA4) == 1
end

Determine whether left ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



289
290
291
# File 'keyboard.rb', line 289

def lmenu_up?
  AMS::C.get_key_state(0xA4) == 0
end

+ (Boolean) lshift_down?

Determine whether left SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



216
217
218
# File 'keyboard.rb', line 216

def lshift_down?
  AMS::C.get_key_state(0xA0) == 1
end

+ (Boolean) lshift_up?

Determine whether left SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



223
224
225
# File 'keyboard.rb', line 223

def lshift_up?
  AMS::C.get_key_state(0xA0) == 0
end

+ (Boolean) mbutton_down?

Determine whether middle mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



174
175
176
# File 'keyboard.rb', line 174

def mbutton_down?
  AMS::C.get_key_state(0x04) == 1
end

+ (Boolean) mbutton_up?

Determine whether middle mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



181
182
183
# File 'keyboard.rb', line 181

def mbutton_up?
  AMS::C.get_key_state(0x04) == 0
end

Determine whether ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



96
97
98
# File 'keyboard.rb', line 96

def menu_down?
  AMS::C.get_key_state(0x12) == 1
end

Determine whether ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



105
106
107
# File 'keyboard.rb', line 105

def menu_up?
  AMS::C.get_key_state(0x12) == 0
end

+ (Boolean) rbutton_down?

Determine whether right mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



160
161
162
# File 'keyboard.rb', line 160

def rbutton_down?
  AMS::C.get_key_state(0x02) == 1
end

+ (Boolean) rbutton_up?

Determine whether right mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



167
168
169
# File 'keyboard.rb', line 167

def rbutton_up?
  AMS::C.get_key_state(0x02) == 0
end

+ (Boolean) rcontrol_down? Also known as: rctrl_down?

Determine whether right CTRL key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



262
263
264
# File 'keyboard.rb', line 262

def rcontrol_down?
  AMS::C.get_key_state(0xA3) == 1
end

+ (Boolean) rcontrol_up? Also known as: rctrl_up?

Determine whether right CTRL key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



271
272
273
# File 'keyboard.rb', line 271

def rcontrol_up?
  AMS::C.get_key_state(0xA3) == 0
end

+ (Boolean) rmenu_down? Also known as: ralt_down?

Determine whether right ALT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



298
299
300
# File 'keyboard.rb', line 298

def rmenu_down?
  AMS::C.get_key_state(0xA5) == 1
end

+ (Boolean) rmenu_up? Also known as: ralt_up?

Determine whether right ALT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



307
308
309
# File 'keyboard.rb', line 307

def rmenu_up?
  AMS::C.get_key_state(0xA5) == 0
end

+ (Boolean) rshift_down?

Determine whether right SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



230
231
232
# File 'keyboard.rb', line 230

def rshift_down?
  AMS::C.get_key_state(0xA1) == 1
end

+ (Boolean) rshift_up?

Determine whether right SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



237
238
239
# File 'keyboard.rb', line 237

def rshift_up?
  AMS::C.get_key_state(0xA1) == 0
end

+ (Boolean) shift_down?

Determine whether SHIFT key is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



132
133
134
# File 'keyboard.rb', line 132

def shift_down?
  AMS::C.get_key_state(0x10) == 1
end

+ (Boolean) shift_up?

Determine whether SHIFT key is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



139
140
141
# File 'keyboard.rb', line 139

def shift_up?
  AMS::C.get_key_state(0x10) == 0
end

+ (Boolean) xbutton1_down?

Determine whether X1 mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



188
189
190
# File 'keyboard.rb', line 188

def xbutton1_down?
  AMS::C.get_key_state(0x05) == 1
end

+ (Boolean) xbutton1_up?

Determine whether X1 mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



195
196
197
# File 'keyboard.rb', line 195

def xbutton1_up?
  AMS::C.get_key_state(0x05) == 0
end

+ (Boolean) xbutton2_down?

Determine whether X2 mouse button is down.

Returns:

  • (Boolean)

Since:

  • 2.0.0



202
203
204
# File 'keyboard.rb', line 202

def xbutton2_down?
  AMS::C.get_key_state(0x06) == 1
end

+ (Boolean) xbutton2_up?

Determine whether X2 mouse button is up.

Returns:

  • (Boolean)

Since:

  • 2.0.0



209
210
211
# File 'keyboard.rb', line 209

def xbutton2_up?
  AMS::C.get_key_state(0x06) == 0
end