File: tk/macpkg.rb

Overview
Module Structure
Code

Overview

Module Structure

  module: <Toplevel Module>
  module: Tk#11
extends
  Encoding ( Unknown-Module )
  Tk   
includes
  TkCore   
has properties
module method: load_tclscript_rsrc / 2 #12
module method: load_tclscript_rsrcid / 2 #17
  module: MacResource#23, #28
extends
  Tk   
  MacResource ( Tk )
has properties
constant: TkCommandNames #32
constant: PACKAGE_NAME #34
module method: package_name #35
function: close / 1 #41
function: delete / 2 #45
function: files / 1 #49
function: list / 2 #57
function: open / 2 #61
function: read / 3 #65
function: types / 1 #69
function: write / 3 #73

Code

   1  #
   2  #   tk/macpkg.rb : methods for Tcl/Tk packages for Macintosh
   3  #                     2000/11/22 by Hidetoshi Nagai <nagai@ai.kyutech.ac.jp>
   4  #
   5  #     ATTENTION !!
   6  #         This is NOT TESTED. Because I have no test-environment.
   7  #
   8  #
   9  require 'tk'
  10 
  11  module Tk
  12    def Tk.load_tclscript_rsrc(resource_name, file=None)
  13      # Mac only
  14      tk_call('source', '-rsrc', resource_name, file)
  15    end
  16 
  17    def Tk.load_tclscript_rsrcid(resource_id, file=None)
  18      # Mac only
  19      tk_call('source', '-rsrcid', resource_id, file)
  20    end
  21  end
  22 
  23  module Tk::MacResource
  24  end
  25  #TkMacResource = Tk::MacResource
  26  Tk.__set_toplevel_aliases__(:Tk, Tk::MacResource, :TkMacResource)
  27 
  28  module Tk::MacResource
  29    extend Tk
  30    extend Tk::MacResource
  31 
  32    TkCommandNames = ['resource'.freeze].freeze
  33 
  34    PACKAGE_NAME = 'resource'.freeze
  35    def self.package_name
  36      PACKAGE_NAME
  37    end
  38 
  39    tk_call_without_enc('package', 'require', 'resource')
  40 
  41    def close(rsrcRef)
  42      tk_call('resource', 'close', rsrcRef)
  43    end
  44 
  45    def delete(rsrcType, opts=nil)
  46      tk_call('resource', 'delete', *(hash_kv(opts) << rsrcType))
  47    end
  48 
  49    def files(rsrcRef=nil)
  50      if rsrcRef
  51        tk_call('resource', 'files', rsrcRef)
  52      else
  53        tk_split_simplelist(tk_call('resource', 'files'))
  54      end
  55    end
  56 
  57    def list(rsrcType, rsrcRef=nil)
  58      tk_split_simplelist(tk_call('resource', 'list', rsrcType, rsrcRef))
  59    end
  60 
  61    def open(fname, access=nil)
  62      tk_call('resource', 'open', fname, access)
  63    end
  64 
  65    def read(rsrcType, rsrcID, rsrcRef=nil)
  66      tk_call('resource', 'read', rsrcType, rsrcID, rsrcRef)
  67    end
  68 
  69    def types(rsrcRef=nil)
  70      tk_split_simplelist(tk_call('resource', 'types', rsrcRef))
  71    end
  72 
  73    def write(rsrcType, data, opts=nil)
  74      tk_call('resource', 'write', *(hash_kv(opts) << rsrcType << data))
  75    end
  76 
  77    module_function :close, :delete, :files, :list, :open, :read, :types, :write
  78  end