lower(tag, below=nil)
Instance Public methods
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | def itemcget(tagOrId, option) case option.to_s when 'dash' , 'activedash' , 'disableddash' conf = tk_send_without_enc( 'itemcget' , tagid(tagOrId), "-#{option}" ) if conf =~ /^[ 0 - 9 ]/ list(conf) else conf end when 'text' , 'label' , 'show' , 'data' , 'file' , 'maskdata' , 'maskfile' _fromUTF8(tk_send_without_enc( 'itemcget' , tagid(tagOrId), "-#{option}" )) when 'font' , 'kanjifont' #fnt = tk_tcl2ruby(tk_send('itemcget', tagid(tagOrId), "-#{option}")) fnt = tk_tcl2ruby(_fromUTF8(tk_send_with_enc( 'itemcget' , tagid(tagOrId), '-font' ))) unless fnt.kind_of?(TkFont) fnt = tagfontobj(tagid(tagOrId), fnt) end if option.to_s == 'kanjifont' && JAPANIZED_TK && TK_VERSION =~ /^ 4 \.*/ # obsolete; just for compatibility fnt.kanji_font else fnt end else tk_tcl2ruby(_fromUTF8(tk_send_without_enc( 'itemcget' , tagid(tagOrId), "-#{option}" ))) end end def itemconfigure(tagOrId, key, value=None) if key.kind_of? Hash key = _symbolkey2str(key) coords = key.delete( 'coords' ) self .coords(tagOrId, coords) if coords if ( key[ 'font' ] || key[ 'kanjifont' ] \ || key[ 'latinfont' ] || key[ 'asciifont' ] ) tagfont_configure(tagid(tagOrId), key.dup) else _fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), *hash_kv(key, true ))) end else if ( key == 'coords' || key == :coords ) self .coords(tagOrId, value) elsif ( key == 'font' || key == :font || key == 'kanjifont' || key == :kanjifont || key == 'latinfont' || key == :latinfont || key == 'asciifont' || key == :asciifont ) if value == None tagfontobj(tagid(tagOrId)) else tagfont_configure(tagid(tagOrId), {key=>value}) end else _fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" , _get_eval_enc_str(value))) end end self end |
# def itemconfigure(tagOrId, key, value=None) # if key.kind_of? Hash # tk_send 'itemconfigure', tagid(tagOrId), *hash_kv(key) # else # tk_send 'itemconfigure', tagid(tagOrId), â-#{key}â, value # end # end # def itemconfigure(tagOrId, keys) # tk_send 'itemconfigure', tagid(tagOrId), *hash_kv(keys) # end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | def itemconfiginfo(tagOrId, key= nil ) if TkComm:: GET_CONFIGINFO_AS_ARRAY if key case key.to_s when 'coords' return [ 'coords' , '' , '' , '' , self .coords(tagOrId)] when 'dash' , 'activedash' , 'disableddash' conf = tk_split_simplelist(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" )) if conf[ 3 ] && conf[ 3 ] =~ /^[ 0 - 9 ]/ conf[ 3 ] = list(conf[ 3 ]) end if conf[ 4 ] && conf[ 4 ] =~ /^[ 0 - 9 ]/ conf[ 4 ] = list(conf[ 4 ]) end when 'text' , 'label' , 'show' , 'data' , 'file' , 'maskdata' , 'maskfile' conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) when 'font' , 'kanjifont' conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) conf[ 4 ] = tagfont_configinfo(tagid(tagOrId), conf[ 4 ]) else conf = tk_split_list(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) end conf[ 0 ] = conf[ 0 ][ 1 ..- 1 ] conf else ret = tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId)))).collect{|conflist| conf = tk_split_simplelist(conflist) conf[ 0 ] = conf[ 0 ][ 1 ..- 1 ] case conf[ 0 ] when 'text' , 'label' , 'show' , 'data' , 'file' , 'maskdata' , 'maskfile' when 'dash' , 'activedash' , 'disableddash' if conf[ 3 ] && conf[ 3 ] =~ /^[ 0 - 9 ]/ conf[ 3 ] = list(conf[ 3 ]) end if conf[ 4 ] && conf[ 4 ] =~ /^[ 0 - 9 ]/ conf[ 4 ] = list(conf[ 4 ]) end else if conf[ 3 ] if conf[ 3 ].index( '{' ) conf[ 3 ] = tk_split_list(conf[ 3 ]) else conf[ 3 ] = tk_tcl2ruby(conf[ 3 ]) end end if conf[ 4 ] if conf[ 4 ].index( '{' ) conf[ 4 ] = tk_split_list(conf[ 4 ]) else conf[ 4 ] = tk_tcl2ruby(conf[ 4 ]) end end end conf[ 1 ] = conf[ 1 ][ 1 ..- 1 ] if conf.size == 2 # alias info conf } fontconf = ret.assoc( 'font' ) if fontconf ret.delete_if{|item| item[ 0 ] == 'font' || item[ 0 ] == 'kanjifont' } fontconf[ 4 ] = tagfont_configinfo(tagid(tagOrId), fontconf[ 4 ]) ret.push(fontconf) end ret << [ 'coords' , '' , '' , '' , self .coords(tagOrId)] end else # ! TkComm::GET_CONFIGINFO_AS_ARRAY if key case key.to_s when 'coords' { 'coords' => [ '' , '' , '' , self .coords(tagOrId)]} when 'dash' , 'activedash' , 'disableddash' conf = tk_split_simplelist(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" )) if conf[ 3 ] && conf[ 3 ] =~ /^[ 0 - 9 ]/ conf[ 3 ] = list(conf[ 3 ]) end if conf[ 4 ] && conf[ 4 ] =~ /^[ 0 - 9 ]/ conf[ 4 ] = list(conf[ 4 ]) end when 'text' , 'label' , 'show' , 'data' , 'file' , 'maskdata' , 'maskfile' conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) when 'font' , 'kanjifont' conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) conf[ 4 ] = tagfont_configinfo(tagid(tagOrId), conf[ 4 ]) else conf = tk_split_list(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId), "-#{key}" ))) end key = conf.shift[ 1 ..- 1 ] { key => conf } else ret = {} tk_split_simplelist(_fromUTF8(tk_send_without_enc( 'itemconfigure' , tagid(tagOrId)))). each {|conflist| conf = tk_split_simplelist(conflist) key = conf.shift[ 1 ..- 1 ] case key when 'text' , 'label' , 'show' , 'data' , 'file' , 'maskdata' , 'maskfile' when 'dash' , 'activedash' , 'disableddash' if conf[ 2 ] && conf[ 2 ] =~ /^[ 0 - 9 ]/ conf[ 2 ] = list(conf[ 2 ]) end if conf[ 3 ] && conf[ 3 ] =~ /^[ 0 - 9 ]/ conf[ 3 ] = list(conf[ 3 ]) end else if conf[ 2 ] if conf[ 2 ].index( '{' ) conf[ 2 ] = tk_split_list(conf[ 2 ]) else conf[ 2 ] = tk_tcl2ruby(conf[ 2 ]) end end if conf[ 3 ] if conf[ 3 ].index( '{' ) conf[ 3 ] = tk_split_list(conf[ 3 ]) else conf[ 3 ] = tk_tcl2ruby(conf[ 3 ]) end end end if conf.size == 1 ret[key] = conf[ 0 ][ 1 ..- 1 ] # alias info else ret[key] = conf end } fontconf = ret[ 'font' ] if fontconf ret.delete( 'font' ) ret.delete( 'kanjifont' ) fontconf[ 3 ] = tagfont_configinfo(tagid(tagOrId), fontconf[ 3 ]) ret[ 'font' ] = fontconf end ret[ 'coords' ] = [ '' , '' , '' , self .coords(tagOrId)] ret end end end def current_itemconfiginfo(tagOrId, key= nil ) if TkComm:: GET_CONFIGINFO_AS_ARRAY if key conf = itemconfiginfo(tagOrId, key) {conf[ 0 ] => conf[ 4 ]} else ret = {} itemconfiginfo(tagOrId). each {|conf| ret[conf[ 0 ]] = conf[ 4 ] if conf.size > 2 } ret end else # ! TkComm::GET_CONFIGINFO_AS_ARRAY ret = {} itemconfiginfo(tagOrId, key). each {|k, conf| ret[k] = conf[- 1 ] if conf.kind_of?( Array ) } ret end end |
Please login to continue.