Sha256: aaa04207df7f90fc7cf54ffe885ac5e7e58fe35d77dd550eeb402a82ec2ed0a5

Contents?: true

Size: 590 Bytes

Versions: 29

Compression:

Stored size: 590 Bytes

Contents

module Swt
  class EventLoop
    def initialize
      @running = false
    end
    
    # Begins the SWT event loop. Blocks.
    def start
      @running = true
      @display = Swt.display
      while @running and not @display.disposed?
        unless read = @display.read_and_dispatch
          @display.sleep
        end
      end
      @display.dispose
    end
    
    # Lets the even loop run until block returns false
    def yield_until
      @display.read_and_dispatch until yield
    end
    
    # Halts the SWT event loop.
    def stop
      @running = false
    end
  end
end

Version data entries

29 entries across 29 versions & 2 rubygems

Version Path
swt-0.12 lib/swt/event_loop.rb
swt-0.11 lib/swt/event_loop.rb
swt-0.10 lib/swt/event_loop.rb
swt-0.9-java lib/swt/event_loop.rb
swt-0.8-java lib/swt/event_loop.rb
swt-0.7-java lib/swt/event_loop.rb
swt-0.6-java lib/swt/event_loop.rb
swt-0.5-java lib/swt/event_loop.rb
swt-0.3-java lib/swt/event_loop.rb
swt-0.2-java lib/swt/event_loop.rb
swt-0.1-java lib/swt/event_loop.rb
redcar-0.11 plugins/swt/lib/swt/event_loop.rb
redcar-0.11.0dev plugins/swt/lib/swt/event_loop.rb
redcar-0.10 plugins/swt/lib/swt/event_loop.rb
redcar-0.9.2 plugins/swt/lib/swt/event_loop.rb
redcar-0.9.1 plugins/swt/lib/swt/event_loop.rb
redcar-0.9.0 plugins/swt/lib/swt/event_loop.rb
redcar-0.8.1 plugins/swt/lib/swt/event_loop.rb
redcar-0.8 plugins/swt/lib/swt/event_loop.rb
redcar-0.7 plugins/swt/lib/swt/event_loop.rb