In Files

  • tk/lib/tk/namespace.rb

Class/Module Index [+]

Quicksearch

TkNamespace::Ensemble

Public Class Methods

exist?(ensemble) click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 64
def self.exist?(ensemble)
  bool(tk_call('namespace', 'ensemble', 'exists', ensemble))
end
            
new(keys = {}) click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 68
def initialize(keys = {})
  @ensemble = @path = tk_call('namespace', 'ensemble', 'create', keys)
end
            

Public Instance Methods

cget(slot) click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 72
def cget(slot)
  if slot == :namespace || slot == 'namespace'
    ns = super(slot)
    Tk_Namespace_ID_TBL.mutex.synchronize{
      if TkNamespace::Tk_Namespace_ID_TBL.key?(ns)
        TkNamespace::Tk_Namespace_ID_TBL[ns]
      else
        ns
      end
    }
  else
    super(slot)
  end
end
            
cget_strict(slot) click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 86
def cget_strict(slot)
  if slot == :namespace || slot == 'namespace'
    ns = super(slot)
    Tk_Namespace_ID_TBL.mutex.synchronize{
      if TkNamespace::Tk_Namespace_ID_TBL.key?(ns)
        TkNamespace::Tk_Namespace_ID_TBL[ns]
      else
        ns
      end
    }
  else
    super(slot)
  end
end
            
configinfo(slot = nil) click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 101
def configinfo(slot = nil)
  if slot
    if slot == :namespace || slot == 'namespace'
      val = super(slot)
      Tk_Namespace_ID_TBL.mutex.synchronize{
        if TkNamespace::Tk_Namespace_ID_TBL.key?(val)
          val = TkNamespace::Tk_Namespace_ID_TBL[val]
        end
      }
    else
      val = super(slot)
    end

    if TkComm::GET_CONFIGINFO_AS_ARRAY
      [slot.to_s, val]
    else # ! TkComm::GET_CONFIGINFO_AS_ARRAY
      {slot.to_s => val}
    end

  else
    info = super()

    if TkComm::GET_CONFIGINFO_AS_ARRAY
      Tk_Namespace_ID_TBL.mutex.synchronize{
        info.map!{|inf|
          if inf[0] == 'namespace' &&
              TkNamespace::Tk_Namespace_ID_TBL.key?(inf[-1])
            [inf[0], TkNamespace::Tk_Namespace_ID_TBL[inf[-1]]]
          else
            inf
          end
        }
      }
    else # ! TkComm::GET_CONFIGINFO_AS_ARRAY
      val = info['namespace']
      Tk_Namespace_ID_TBL.mutex.synchronize{
        if TkNamespace::Tk_Namespace_ID_TBL.key?(val)
          info['namespace'] = TkNamespace::Tk_Namespace_ID_TBL[val]
        end
      }
    end

    info
  end
end
            
exists?() click to toggle source
 
               # File tk/lib/tk/namespace.rb, line 147
def exists?
  bool(tk_call('namespace', 'ensemble', 'exists', @path))
end