]> git.cworth.org Git - sup/blob - lib/sup/update.rb
trivial bugfix (forgot @state[] -> @layout[].state)
[sup] / lib / sup / update.rb
1 module Redwood
2
3 class UpdateManager
4   include Singleton
5
6   def initialize
7     @targets = {}
8     self.class.i_am_the_instance self
9   end
10
11   def register o; @targets[o] = true; end
12   def unregister o; @targets.delete o; end
13
14   def relay type, *args
15     meth = "handle_#{type}_update".intern
16     @targets.keys.each { |o| o.send meth, *args if o.respond_to? meth }
17     BufferManager.draw_screen ## TODO: think about this
18   end
19 end
20
21 end