Module: Handy

Defined in:
lib/libhandy/loader.rb,
lib/libhandy.rb

Overview

Copyright © 2022 Ruby-GNOME Project Team

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Defined Under Namespace

Classes: Loader

Constant Summary collapse

LOG_DOMAIN =
"Handy"

Class Method Summary collapse

Class Method Details

.const_missing(name) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/libhandy.rb', line 26

def const_missing(name)
  init()
  if const_defined?(name)
    const_get(name)
  else
    super
  end
end

.initObject



44
45
46
47
48
49
50
51
52
53
# File 'lib/libhandy.rb', line 44

def init
  class << self
    remove_method(:init)
    remove_method(:const_missing)
    remove_method(:method_missing)
  end
  Gtk.init if Gtk.respond_to?(:init)
  loader = Loader.new(self)
  loader.load("Handy")
end

.method_missing(name, *args, &block) ⇒ Object



35
36
37
38
39
40
41
42
# File 'lib/libhandy.rb', line 35

def method_missing(name, *args, &block)
  init()
  if respond_to?(name)
    __send__(name, *args, &block)
  else
    super
  end
end