Module: Ruby2D::Window::KeyEvents
- Included in:
- Ruby2D::Window
- Defined in:
- lib/ruby2d/window/key_events.rb
Overview
Keyboard input event handling
Instance Method Summary collapse
-
#key_callback(type, key) ⇒ Object
Key callback method.
-
#key_held?(key) ⇒ Boolean
Key held event method for class pattern.
-
#key_pressed?(key) ⇒ Boolean
Key down event method for class pattern.
-
#key_released?(key) ⇒ Boolean
Key up event method for class pattern.
Instance Method Details
#key_callback(type, key) ⇒ Object
Key callback method. key arrives already normalized (lowercased):
from dispatch_events via the cached scancode-name table, or from a
direct caller passing a lowercase key name.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/ruby2d/window/key_events.rb', line 25 def key_callback(type, key) # All key events fire_event_handlers(:key) { KeyEvent.new(type, key) } case type # When key is pressed, fired once when :down handle_key_down type, key # When key is being held down, fired every frame when :held handle_key_held type, key # When key released, fired once when :up handle_key_up type, key end end |
#key_held?(key) ⇒ Boolean
Key held event method for class pattern
13 14 15 |
# File 'lib/ruby2d/window/key_events.rb', line 13 def key_held?(key) @keys_held.include? key end |
#key_pressed?(key) ⇒ Boolean
Key down event method for class pattern
8 9 10 |
# File 'lib/ruby2d/window/key_events.rb', line 8 def key_pressed?(key) @keys_down.include? key end |
#key_released?(key) ⇒ Boolean
Key up event method for class pattern
18 19 20 |
# File 'lib/ruby2d/window/key_events.rb', line 18 def key_released?(key) @keys_up.include? key end |