In Files

  • tk/lib/multi-tk.rb
  • tk/lib/tk/autoload.rb
  • tk/lib/tk/canvastag.rb
  • tk/lib/tk/dialog.rb
  • tk/lib/tk/menu.rb
  • tk/lib/tk/msgcat.rb
  • tk/lib/tk/optiondb.rb
  • tk/lib/tk/root.rb
  • tk/lib/tk/textimage.rb
  • tk/lib/tk/textmark.rb
  • tk/lib/tk/texttag.rb
  • tk/lib/tk/textwindow.rb
  • tk/lib/tk/timer.rb
  • tk/lib/tk/virtevent.rb
  • tk/lib/tkclass.rb
  • tk/lib/tkextlib/pkg_checker.rb
  • tk/lib/tkextlib/tile.rb

Class/Module Index [+]

Quicksearch

Object

Public Instance Methods

Mainloop() click to toggle source
 
               # File tk/lib/tkclass.rb, line 45
def Mainloop
  Tk.mainloop
end
            
TkGrid(*args) click to toggle source
 
               # File tk/lib/tk/autoload.rb, line 18
def TkGrid(*args); TkGrid.configure(*args); end
            
TkPack(*args) click to toggle source
 
               # File tk/lib/tk/autoload.rb, line 21
def TkPack(*args); TkPack.configure(*args); end
            
TkPlace(*args) click to toggle source
 
               # File tk/lib/tk/autoload.rb, line 24
def TkPlace(*args); TkPlace.configure(*args); end
            
__method_missing_alias_for_MultiTkIp__(id, *args) click to toggle source
Alias for: method_missing
check_pkg(file, verbose=false) click to toggle source
 
               # File tk/lib/tkextlib/pkg_checker.rb, line 91
def check_pkg(file, verbose=false)
  pkg_list = get_pkg_list(file)

  error_list = []
  success_list = {}

  pkg_list.each{|name, type|
    next if success_list[name]

    begin
      case type
      when :package
        ver = TkPackage.require(name)
        success_list[name] = ver
        error_list.delete_if{|n, t| n == name}

      when :library
        Tk.load_tcllibrary(name)
        success_list[name] = :library
        error_list.delete_if{|n, t| n == name}

      when :script
        Tk.load_tclscript(name)
        success_list[name] = :script
        error_list.delete_if{|n, t| n == name}

      when :require_ruby_lib
        require name

      end
    rescue => e
      if verbose
        error_list << [name, type, e.message]
      else
        error_list << [name, type]
      end
    end
  }

  success_list.dup.each{|name, ver|
    unless ver.kind_of?(String)
      begin
        ver = TkPackage.require(name)
        sccess_list[name] = ver
      rescue
      end
    end
  }

  [success_list, error_list]
end
            
get_pkg_list(file) click to toggle source
 
               # File tk/lib/tkextlib/pkg_checker.rb, line 66
def get_pkg_list(file)
  pkg_list = []

  File.foreach(file){|l|
    if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)TkPackage\s*\.\s*require\s*\(?\s*(["'])((\w|:)+)\1/
      pkg = [$2, :package]
      pkg_list << pkg unless pkg_list.member?(pkg)
    end
    if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)Tk\s*\.\s*load_tcllibrary\s*\(?\s*(["'])((\w|:)+)\1/
      pkg = [$2, :library]
      pkg_list << pkg unless pkg_list.member?(pkg)
    end
    if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)Tk\s*\.\s*load_tclscript\s*\(?\s*(["'])((\w|:)+)\1/
      pkg = [$2, :script]
      pkg_list << pkg unless pkg_list.member?(pkg)
    end
    if l =~ /^(?:[^#]+\s|\s*)(?:|;\s*)require\s*\(?\s*(["'])((\w|\/|:)+)\1/
      pkg = [$2, :require_ruby_lib]
      pkg_list << pkg unless pkg_list.member?(pkg)
    end
  }

  pkg_list
end
            
help_msg() click to toggle source
 
               # File tk/lib/tkextlib/pkg_checker.rb, line 16
def help_msg
  print "Usage: #{$0} [-l] [-v] [-h] [--] [dir]\n"
  print "\tIf dir is omitted, check the directry that this command exists.\n"
  print "\tAvailable options are \n"
  print "\t  -l : Add dir to $LOAD_PATH\n"
  print "\t       (If dir == '<parent>/tkextlib', add <parent> also.)\n"
  print "\t  -v : Verbose mode (show reason of fail)\n"
  print "\t  -h : Show this message\n"
  print "\t  -- : End of options\n"
end
            
method_missing(id, *args) click to toggle source
 
               # File tk/lib/multi-tk.rb, line 74
def method_missing(id, *args)
  begin
    has_top = (top = MultiTkIp.__getip.__pseudo_toplevel) && 
      top.respond_to?(:pseudo_toplevel_evaluable?) && 
      top.pseudo_toplevel_evaluable? && 
      top.respond_to?(id)
  rescue Exception => e
    has_top = false
  end

  if has_top
    top.__send__(id, *args)
  else
    __method_missing_alias_for_MultiTkIp__(id, *args)
  end
end
            
subdir_check(dir, verbose=false) click to toggle source
 
               # File tk/lib/tkextlib/pkg_checker.rb, line 143
def subdir_check(dir, verbose=false)
  Dir.foreach(dir){|f|
    next if f == '.' || f == '..'
    if File.directory?(f)
      subdir_check(File.join(dir, f))
    elsif File.extname(f) == '.rb'
      path = File.join(dir, f)
      suc, err = check_pkg(path, verbose)
      if err.empty?
        print 'Ready : ', path, ' : require->', suc.inspect, "\n"
      else
        print '*LACK : ', path, ' : require->', suc.inspect, 
          '  FAIL->', err.inspect, "\n"
      end
    end
  }
end
            

Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.

If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.

If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.

If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.

blog comments powered by Disqus