Creates a generic Event containing a specific event. You usually don't need to do this, because you can pass specific events directly to SDL::SDL_PushEvent.
# File lib/ruby-sdl-ffi/sdl/event.rb, line 213 def self.wrap( event ) self.new( event.pointer ) end
# File lib/ruby-sdl-ffi/sdl/event.rb, line 245 def inspect super.gsub(">", " :type=#{self[:type]}>") end
Extracts a specific event class from a generic Event.
# File lib/ruby-sdl-ffi/sdl/event.rb, line 219 def unwrap case self[:type] when ACTIVEEVENT; ActiveEvent.new(self.pointer) when KEYDOWN, KEYUP; KeyboardEvent.new(self.pointer) when MOUSEMOTION; MouseMotionEvent.new(self.pointer) when MOUSEBUTTONDOWN, MOUSEBUTTONUP; MouseButtonEvent.new(self.pointer) when JOYAXISMOTION; JoyAxisEvent.new(self.pointer) when JOYBALLMOTION; JoyBallEvent.new(self.pointer) when JOYHATMOTION; JoyHatEvent.new(self.pointer) when JOYBUTTONDOWN, JOYBUTTONUP; JoyButtonEvent.new(self.pointer) when QUIT; QuitEvent.new( self.pointer ) when SYSWMEVENT; SysWMEvent.new( self.pointer ) when VIDEORESIZE; ResizeEvent.new( self.pointer ) when VIDEOEXPOSE; ExposeEvent.new( self.pointer ) when USEREVENT; UserEvent.new( self.pointer ) else; raise TypeError, "Invalid event #{self.inspect}" end end
Generated with the Darkfish Rdoc Generator 2.