Module: RubyMVC::Toolkit::SignalHandler::ClassMethods
- Included in:
- Models::Model, AbstractWidget, PropertyChangeNotifier
- Defined in:
- lib/ruby_mvc/toolkit/signal_handler.rb
Instance Method Summary collapse
- #signal(signal, options = { :vetoable => false }) ⇒ Object
- #signals ⇒ Object
- #valid_signal!(signal) ⇒ Object
- #valid_signal?(signal) ⇒ Boolean
Instance Method Details
#signal(signal, options = { :vetoable => false }) ⇒ Object
95 96 97 |
# File 'lib/ruby_mvc/toolkit/signal_handler.rb', line 95 def signal(signal, = { :vetoable => false }) signals[signal] = end |
#signals ⇒ Object
91 92 93 |
# File 'lib/ruby_mvc/toolkit/signal_handler.rb', line 91 def signals @signals ||= {} end |
#valid_signal!(signal) ⇒ Object
116 117 118 119 120 |
# File 'lib/ruby_mvc/toolkit/signal_handler.rb', line 116 def valid_signal!(signal) if !valid_signal? (signal) raise ArgumentError, "class #{self} does not support signal '#{signal}'" end end |
#valid_signal?(signal) ⇒ Boolean
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
# File 'lib/ruby_mvc/toolkit/signal_handler.rb', line 99 def valid_signal?(signal) # puts "#{self}#signals.keys: #{signals.keys.inspect}" # puts "#{self}#signals.has_key? #{signal}: #{signals.has_key?(signal)}" # if self.superclass.respond_to?(:valid_signal?) # puts "#{self.superclass}#signals.keys: #{self.superclass.signals.keys.inspect}" # puts "#{self.superclass}#valid_signal? #{signal}: #{self.superclass.valid_signal?(signal)}" # end return true if signals.has_key? signal if self.superclass.respond_to? :valid_signal? self.superclass.valid_signal? signal else false end end |