# File tk/lib/tkextlib/blt/watch.rb, line 18 def self.names(state = None) tk_split_list(tk_call('::blt::watch', 'names', state)).collect{|name| WATCH_ID_TBL[name] || name } end
# File tk/lib/tkextlib/blt/watch.rb, line 39 def initialize(name = nil, keys = {}) if name.kind_of?(Hash) keys = name name = nil end if name @id = name.to_s else @id = BLT_WATCH_ID.join(TkCore::INTERP._ip_id_) BLT_WATCH_ID[1].succ! end @path = @id WATCH_ID_TBL[@id] = self tk_call('::blt::watch', 'create', @id, *hash_kv(keys)) end
# File tk/lib/tkextlib/blt/watch.rb, line 58 def activate tk_call('::blt::watch', 'activate', @id) self end
# File tk/lib/tkextlib/blt/watch.rb, line 133 def cget(key) key = key.to_s begin info.assoc(key)[1] rescue fail ArgumentError, "unknown option '#{key}'" end end
# File tk/lib/tkextlib/blt/watch.rb, line 116 def configinfo(slot = nil) if slot slot = slot.to_s v = cget(slot) if TkComm::GET_CONFIGINFO_AS_ARRAY [slot, v] else {slot=>v} end else if TkComm::GET_CONFIGINFO_AS_ARRAY info else Hash[*(info.flatten)] end end end
# File tk/lib/tkextlib/blt/watch.rb, line 62 def deactivate tk_call('::blt::watch', 'deactivate', @id) self end
# File tk/lib/tkextlib/blt/watch.rb, line 66 def delete tk_call('::blt::watch', 'delete', @id) self end
# File tk/lib/tkextlib/blt/watch.rb, line 70 def info ret = [] lst = tk_split_simplelist(tk_call('::blt::watch', 'info', @id)) until lst.empty? k, v, *lst = lst k = k[1..-1] case k when /^(#{__strval_optkeys.join('|')})$/ # do nothing when /^(#{__numval_optkeys.join('|')})$/ begin v = number(v) rescue v = nil end when /^(#{__numstrval_optkeys.join('|')})$/ v = num_or_str(v) when /^(#{__boolval_optkeys.join('|')})$/ begin v = bool(v) rescue v = nil end when /^(#{__listval_optkeys.join('|')})$/ v = simplelist(v) when /^(#{__numlistval_optkeys.join('|')})$/ v = list(v) else if v.index('{') v = tk_split_list(v) else v = tk_tcl2ruby(v) end end ret << [k, v] end ret end