Module: RubyMVC::Toolkit::SignalHandler
- Included in:
- Widget, WxRuby::WebView
- Defined in:
- lib/ruby_mvc/toolkit/notification.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #signal_connect(signal, &block) ⇒ Object
- #signal_disconnect(signal) ⇒ Object
- #signal_emit(signal, *args) ⇒ Object
Instance Method Details
#signal_connect(signal, &block) ⇒ Object
180 181 182 183 184 |
# File 'lib/ruby_mvc/toolkit/notification.rb', line 180 def signal_connect(signal, &block) self.class.valid_signal? signal if self.class.respond_to? :signals signals = (@signals ||= {}) signals[signal] = block end |
#signal_disconnect(signal) ⇒ Object
186 187 188 189 190 |
# File 'lib/ruby_mvc/toolkit/notification.rb', line 186 def signal_disconnect(signal) self.class.valid_signal? signal if self.class.respond_to? :signals signals = (@signals ||= {}) signals.delete(signal) end |
#signal_emit(signal, *args) ⇒ Object
192 193 194 195 196 197 198 199 |
# File 'lib/ruby_mvc/toolkit/notification.rb', line 192 def signal_emit(signal, *args) self.class.valid_signal? signal if self.class.respond_to? :signals signals = (@signals ||= {}) if signals.key? signal proc = signals[signal] proc.call(*args) if !proc.nil? end end |