CrystGLFW::Event::WindowKey

A CrystGLFW::Event::WindowKey is generated when a key is pressed/released/held while a Window has input focus. It is yielded to the block defined by on_key.

window = Window.new

window.on_key do |event|
  key = event.key
  if event.action.press?
    if key.printable?
      puts "#{key.name} was pressed"
    else
      puts "an unprintable key was pressed"
    end
  end  
end

window

You can retrieve the event's associated Window using the window method:

event.window # => CrystGLFW::Window

key

You can retrieve the Key that was pressed/released/held using the key method:

event.key # => CrystGLFW::Key

action

You can retrieve the Action that was performed using the action method:

if event.action.press?
  puts "key was pressed"
elsif event.action.release?
  puts "key was released"
elsif key.action.repeat?
  puts "key was held down"
else
  puts "impossible!"
end

Modifiers

You can also use any of the methods from the Modifiers module on a CrystGLFW::Event::WindowKey.

results matching ""

    No results matching ""