| Module | TkItemConfigMethod |
| In: |
tk/lib/tk/itemconfig.rb
|
# File tk/lib/tk/itemconfig.rb, line 1029 def current_itemconfiginfo(tagOrId, slot = nil) if TkComm::GET_CONFIGINFO_AS_ARRAY if slot org_slot = slot begin conf = __itemconfiginfo_core(tagOrId, slot) if ( ! __item_configinfo_struct(tagid(tagOrId))[:alias] \ || conf.size > __item_configinfo_struct(tagid(tagOrId))[:alias] + 1 ) return {conf[0] => conf[-1]} end slot = conf[__item_configinfo_struct(tagid(tagOrId))[:alias]] end while(org_slot != slot) fail RuntimeError, "there is a configure alias loop about '#{org_slot}'" else ret = {} __itemconfiginfo_core(tagOrId).each{|conf| if ( ! __item_configinfo_struct(tagid(tagOrId))[:alias] \ || conf.size > __item_configinfo_struct(tagid(tagOrId))[:alias] + 1 ) ret[conf[0]] = conf[-1] end } ret end else # ! TkComm::GET_CONFIGINFO_AS_ARRAY ret = {} __itemconfiginfo_core(tagOrId, slot).each{|key, conf| ret[key] = conf[-1] if conf.kind_of?(Array) } ret end end
# File tk/lib/tk/itemconfig.rb, line 152 def itemcget(tagOrId, option) orig_opt = option option = option.to_s if option.length == 0 fail ArgumentError, "Invalid option `#{orig_opt.inspect}'" end if ( method = _symbolkey2str(__item_val2ruby_optkeys(tagid(tagOrId)))[option] ) optval = tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}")) begin return method.call(tagOrId, optval) rescue => e warn("Warning:: #{e.message} (when #{method}.call(#{tagOrId.inspect}, #{optval.inspect})") if $DEBUG return optval end end if ( method = _symbolkey2str(__item_methodcall_optkeys(tagid(tagOrId)))[option] ) return self.__send__(method, tagOrId) end case option when /^(#{__item_numval_optkeys(tagid(tagOrId)).join('|')})$/ begin number(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}"))) rescue nil end when /^(#{__item_numstrval_optkeys(tagid(tagOrId)).join('|')})$/ num_or_str(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}"))) when /^(#{__item_boolval_optkeys(tagid(tagOrId)).join('|')})$/ begin bool(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}"))) rescue nil end when /^(#{__item_listval_optkeys(tagid(tagOrId)).join('|')})$/ simplelist(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}"))) when /^(#{__item_numlistval_optkeys(tagid(tagOrId)).join('|')})$/ conf = tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}")) if conf =~ /^[0-9]/ list(conf) else conf end when /^(#{__item_tkvariable_optkeys(tagid(tagOrId)).join('|')})$/ v = tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}")) (v.empty?)? nil: TkVarAccess.new(v) when /^(#{__item_strval_optkeys(tagid(tagOrId)).join('|')})$/ _fromUTF8(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}"))) when /^(|latin|ascii|kanji)(#{__item_font_optkeys(tagid(tagOrId)).join('|')})$/ fontcode = $1 fontkey = $2 fnt = tk_tcl2ruby(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{fontkey}")), true) unless fnt.kind_of?(TkFont) fnt = tagfontobj(tagid(tagOrId), fontkey) end if fontcode == 'kanji' && JAPANIZED_TK && TK_VERSION =~ /^4\.*/ # obsolete; just for compatibility fnt.kanji_font else fnt end else tk_tcl2ruby(tk_call_without_enc(*(__item_cget_cmd(tagid(tagOrId)) << "-#{option}")), true) end end
# File tk/lib/tk/itemconfig.rb, line 1025 def itemconfiginfo(tagOrId, slot = nil) __itemconfiginfo_core(tagOrId, slot) end
# File tk/lib/tk/itemconfig.rb, line 228 def itemconfigure(tagOrId, slot, value=None) if slot.kind_of? Hash slot = _symbolkey2str(slot) __item_methodcall_optkeys(tagid(tagOrId)).each{|key, method| value = slot.delete(key.to_s) self.__send__(method, tagOrId, value) if value } __item_ruby2val_optkeys(tagid(tagOrId)).each{|key, method| key = key.to_s slot[key] = method.call(tagOrId, slot[key]) if slot.has_key?(key) } __item_keyonly_optkeys(tagid(tagOrId)).each{|defkey, undefkey| conf = slot.find{|kk, vv| kk == defkey.to_s} if conf k, v = conf if v slot[k] = None else slot[undefkey.to_s] = None if undefkey slot.delete(k) end end } if (slot.find{|k, v| k =~ /^(|latin|ascii|kanji)(#{__item_font_optkeys(tagid(tagOrId)).join('|')})$/}) tagfont_configure(tagid(tagOrId), slot) elsif slot.size > 0 tk_call(*(__item_config_cmd(tagid(tagOrId)).concat(hash_kv(slot)))) end else orig_slot = slot slot = slot.to_s if slot.length == 0 fail ArgumentError, "Invalid option `#{orig_slot.inspect}'" end if ( conf = __item_keyonly_optkeys(tagid(tagOrId)).find{|k, v| k.to_s == slot } ) defkey, undefkey = conf if value tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{defkey}")) elsif undefkey tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{undefkey}")) end elsif ( method = _symbolkey2str(__item_ruby2val_optkeys(tagid(tagOrId)))[slot] ) tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{slot}" << method.call(tagOrId, value))) elsif ( method = _symbolkey2str(__item_methodcall_optkeys(tagid(tagOrId)))[slot] ) self.__send__(method, tagOrId, value) elsif (slot =~ /^(|latin|ascii|kanji)(#{__item_font_optkeys(tagid(tagOrId)).join('|')})$/) if value == None tagfontobj(tagid(tagOrId), $2) else tagfont_configure(tagid(tagOrId), {slot=>value}) end else tk_call(*(__item_config_cmd(tagid(tagOrId)) << "-#{slot}" << value)) end end self end
ruby-doc.org is a community service provided by James Britt and Happy Camper Studios, a Phoenix, Arizona, Ruby application development company.
Documentation content on ruby-doc.org is provided by remarkable members of the Ruby community.
For more information on the Ruby programming language, visit ruby-lang.org.
Want to help improve Ruby's API docs? See Ruby Documentation Guidelines.