Sha256: f677d39c9f24ca9016c92a8d32e2eea973f1480adb4b9f91bae2e05ab8eaf66d
Contents?: true
Size: 531 Bytes
Versions: 4
Compression:
Stored size: 531 Bytes
Contents
module Nuklear module UI module Events def on(*events, &block) events.each do |event| event_listeners_for(event) << block end end def event_listeners_for(event) @event_listeners ||= {} @event_listeners[event] ||= [] end def trigger(event) if event != @last_event # prevent triggering every frame event_listeners_for(event).each { |listener| listener.call event } @last_event = event end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
nuklear-0.1.3 | lib/nuklear/ui/events.rb |
nuklear-0.1.2 | lib/nuklear/ui/events.rb |
nuklear-0.1.1 | lib/nuklear/ui/events.rb |
nuklear-0.1.0 | lib/nuklear/ui/events.rb |