Module: Goo

Defined in:
lib/goo/canvas-item.rb,
lib/goocanvas.rb

Overview

Copyright © 2013 Ruby-GNOME2 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

Modules: CanvasItem Classes: Loader

Constant Summary collapse

LOG_DOMAIN =
"GooCanvas"

Class Method Summary collapse

Class Method Details

.const_missing(name) ⇒ Object



39
40
41
42
43
44
45
46
# File 'lib/goocanvas.rb', line 39

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

.initObject



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/goocanvas.rb', line 48

def init
  class << self
    remove_method(:init)
    remove_method(:const_missing)
  end
  loader = Loader.new(self)
  loader.load("GooCanvas")
  begin
    major, minor, _ = RUBY_VERSION.split(/\./)
    require "#{major}.#{minor}/goocanvas.so"
  rescue LoadError
    require "goocanvas.so"
  end
  require "goo/canvas-item"
end