class GLib::Instantiatable

Public Class Methods

method_added(name) click to toggle source
Calls superclass method
# File lib/glib2.rb, line 136
def method_added(name)
  super

  case name.to_s
  when /\A#{Regexp.escape(SIGNAL_HANDLER_PREFIX)}/o
    signal_name = $POSTMATCH
    begin
      signal_ = signal(signal_name)
    rescue NoSignalError
      return
    end
    return unless signal_.class != self
    signal_handler_attach(signal_, name.to_s) do |instance, *args|
      instance.__send__(name, *args)
    end
  when /\A#{Regexp.escape(VIRTUAL_FUNCTION_IMPLEMENTATION_PREFIX)}/o
    ancestors.each do |klass|
      next unless klass.respond_to?(:implement_virtual_function)
      return if klass.implement_virtual_function(self, name)
    end
  end
end

Private Instance Methods

create_signal_handler(signal_name, callback) click to toggle source
# File lib/glib2.rb, line 161
def create_signal_handler(signal_name, callback)
  callback
end