# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 86
def bbox(index)
list(tk_send('bbox', index))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 50
def child_site
window(tk_call(@path, 'childsite'))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 54
def clear
tk_call(@path, 'clear')
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 89
def compare(idx1, op, idx2)
bool(tk_send_without_enc('compare', _get_eval_enc_str(idx1),
op, _get_eval_enc_str(idx2)))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 260
def current_image_configinfo(index, slot = nil)
if TkComm::GET_CONFIGINFO_AS_ARRAY
if slot
conf = image_configinfo(index, slot)
{conf[0] => conf[4]}
else
ret = {}
image_configinfo(index).each{|conf|
ret[conf[0]] = conf[4] if conf.size > 2
}
ret
end
else # ! TkComm::GET_CONFIGINFO_AS_ARRAY
ret = {}
image_configinfo(index, slot).each{|k, conf|
ret[k] = conf[-1] if conf.kind_of?(Array)
}
ret
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 94
def debug
bool(tk_send_without_enc('debug'))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 97
def debug=(boolean)
tk_send_without_enc('debug', boolean)
#self
boolean
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 103
def delete(first, last=None)
tk_send_without_enc('delete', first, last)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 108
def dlineinfo(index)
list(tk_send_without_enc('dlineinfo', _get_eval_enc_str(index)))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 68
def export(file)
tk_call(@path, 'export', file)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 112
def get(*index)
_fromUTF8(tk_send_without_enc('get', *index))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 115
def get_displaychars(*index)
# Tk8.5 feature
get('-displaychars', *index)
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 135
def image_cget(index, slot)
unless TkItemConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
image_cget_strict(index, slot)
else
begin
image_cget_strict(index, slot)
rescue => e
begin
if current_image_configinfo.has_key?(slot.to_s)
# error on known option
fail e
else
# unknown option
nil
end
rescue
fail e # tag error
end
end
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 124
def image_cget_strict(index, slot)
case slot.to_s
when 'text', 'label', 'show', 'data', 'file'
_fromUTF8(tk_send_without_enc('image', 'cget',
_get_eval_enc_str(index), "-#{slot}"))
else
tk_tcl2ruby(_fromUTF8(tk_send_without_enc('image', 'cget',
_get_eval_enc_str(index),
"-#{slot}")))
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 120
def image_cget_tkstring(index, slot)
_fromUTF8(tk_send_without_enc('image', 'cget',
_get_eval_enc_str(index), "-#{slot.to_s}"))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 171
def image_configinfo(index, slot = nil)
if TkComm::GET_CONFIGINFO_AS_ARRAY
if slot
case slot.to_s
when 'text', 'label', 'show', 'data', 'file'
#conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}")))
conf = tk_split_simplelist(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}"), false, true)
else
#conf = tk_split_list(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}")))
conf = tk_split_list(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}"), 0, false, true)
end
conf[0] = conf[0][1..-1]
conf
else
#tk_split_simplelist(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index)))).collect{|conflist|
# conf = tk_split_simplelist(conflist)
tk_split_simplelist(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index)), false, false).collect{|conflist|
conf = tk_split_simplelist(conflist, false, true)
conf[0] = conf[0][1..-1]
case conf[0]
when 'text', 'label', 'show', 'data', 'file'
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
}
end
else # ! TkComm::GET_CONFIGINFO_AS_ARRAY
if slot
case slot.to_s
when 'text', 'label', 'show', 'data', 'file'
#conf = tk_split_simplelist(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}")))
conf = tk_split_simplelist(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}"), false, true)
else
#conf = tk_split_list(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}")))
conf = tk_split_list(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index), "-#{slot}"), 0, false, true)
end
key = conf.shift[1..-1]
{ key => conf }
else
ret = {}
#tk_split_simplelist(_fromUTF8(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index)))).each{|conflist|
# conf = tk_split_simplelist(conflist)
tk_split_simplelist(tk_send_without_enc('image', 'configure', _get_eval_enc_str(index)), false, false).each{|conflist|
conf = tk_split_simplelist(conflist, false, true)
key = conf.shift[1..-1]
case key
when 'text', 'label', 'show', 'data', 'file'
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
}
ret
end
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 157
def image_configure(index, slot, value=None)
if slot.kind_of? Hash
_fromUTF8(tk_send_without_enc('image', 'configure',
_get_eval_enc_str(index),
*hash_kv(slot, true)))
else
_fromUTF8(tk_send_without_enc('image', 'configure',
_get_eval_enc_str(index),
"-#{slot}",
_get_eval_enc_str(value)))
end
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 281
def image_names
#tk_split_simplelist(_fromUTF8(tk_send_without_enc('image', 'names'))).collect{|elt|
tk_split_simplelist(tk_send_without_enc('image', 'names'), false, true).collect{|elt|
tagid2obj(elt)
}
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 59
def import(file, idx=nil)
if idx
tk_call(@path, 'import', file, index(idx))
else
tk_call(@path, 'import', file)
end
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 288
def index(idx)
tk_send_without_enc('index', _get_eval_enc_str(idx))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 292
def insert(index, *args)
tk_send('insert', index, *args)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 304
def mark_gravity(mark, direction=nil)
if direction
tk_send_without_enc('mark', 'gravity',
_get_eval_enc_str(mark), direction)
self
else
tk_send_without_enc('mark', 'gravity', _get_eval_enc_str(mark))
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 297
def mark_names
#tk_split_simplelist(_fromUTF8(tk_send_without_enc('mark', 'names'))).collect{|elt|
tk_split_simplelist(tk_send_without_enc('mark', 'names'), false, true).collect{|elt|
tagid2obj(elt)
}
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 328
def mark_next(index)
tagid2obj(_fromUTF8(tk_send_without_enc('mark', 'next',
_get_eval_enc_str(index))))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 334
def mark_previous(index)
tagid2obj(_fromUTF8(tk_send_without_enc('mark', 'previous',
_get_eval_enc_str(index))))
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 314
def mark_set(mark, index)
tk_send_without_enc('mark', 'set', _get_eval_enc_str(mark),
_get_eval_enc_str(index))
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 321
def mark_unset(*marks)
tk_send_without_enc('mark', 'unset',
*(marks.collect{|mark| _get_eval_enc_str(mark)}))
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 40
def method_missing(id, *args)
if @text.respond_to?(id)
@text.__send__(id, *args)
else
super(id, *args)
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 529
def rsearch(pat,start,stop=None)
rsearch_with_length(pat,start,stop)[0]
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 477
def rsearch_with_length(pat,start,stop=None)
pat = pat.chr if pat.kind_of? Integer
if stop != None
return ["", 0] if compare(start,'<=',stop)
txt = get(stop,start)
if (pos = txt.rindex(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index(stop + " + #{pos} chars"), pat.split('').length]
return [index(stop + " + #{pos} chars"), _ktext_length(pat), pat.dup]
else
#return [index(stop + " + #{pos} chars"), $&.split('').length]
return [index(stop + " + #{pos} chars"), _ktext_length(match), match]
end
else
return ["", 0]
end
else
txt = get('1.0',start)
if (pos = txt.rindex(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index("1.0 + #{pos} chars"), pat.split('').length]
return [index("1.0 + #{pos} chars"), _ktext_length(pat), pat.dup]
else
#return [index("1.0 + #{pos} chars"), $&.split('').length]
return [index("1.0 + #{pos} chars"), _ktext_length(match), match]
end
else
txt = get('1.0','end - 1 char')
if (pos = txt.rindex(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index("1.0 + #{pos} chars"), pat.split('').length]
return [index("1.0 + #{pos} chars"), _ktext_length(pat), pat.dup]
else
#return [index("1.0 + #{pos} chars"), $&.split('').length]
return [index("1.0 + #{pos} chars"), _ktext_length(match), match]
end
else
return ["", 0]
end
end
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 344
def scan_dragto(x, y)
tk_send_without_enc('scan', 'dragto', x, y)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 340
def scan_mark(x, y)
tk_send_without_enc('scan', 'mark', x, y)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 473
def search(pat,start,stop=None)
search_with_length(pat,start,stop)[0]
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 416
def search_with_length(pat,start,stop=None)
pat = pat.chr if pat.kind_of? Integer
if stop != None
return ["", 0] if compare(start,'>=',stop)
txt = get(start,stop)
if (pos = txt.index(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index(start + " + #{pos} chars"), pat.split('').length]
return [index(start + " + #{pos} chars"),
_ktext_length(pat), pat.dup]
else
#return [index(start + " + #{pos} chars"), $&.split('').length]
return [index(start + " + #{pos} chars"),
_ktext_length(match), match]
end
else
return ["", 0]
end
else
txt = get(start,'end - 1 char')
if (pos = txt.index(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index(start + " + #{pos} chars"), pat.split('').length]
return [index(start + " + #{pos} chars"),
_ktext_length(pat), pat.dup]
else
#return [index(start + " + #{pos} chars"), $&.split('').length]
return [index(start + " + #{pos} chars"),
_ktext_length(match), match]
end
else
txt = get('1.0','end - 1 char')
if (pos = txt.index(pat))
match = $&
#pos = txt[0..(pos-1)].split('').length if pos > 0
pos = _ktext_length(txt[0..(pos-1)]) if pos > 0
if pat.kind_of? String
#return [index("1.0 + #{pos} chars"), pat.split('').length]
return [index("1.0 + #{pos} chars"),
_ktext_length(pat), pat.dup]
else
#return [index("1.0 + #{pos} chars"), $&.split('').length]
return [index("1.0 + #{pos} chars"), _ktext_length(match), match]
end
else
return ["", 0]
end
end
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 533
def see(index)
tk_send_without_enc('see', index)
self
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 376
def tksearch(*args)
# call 'search' subcommand of text widget
# args ::= [<array_of_opts>] <pattern> <start_index> [<stop_index>]
# If <pattern> is regexp, then it must be a regular expression of Tcl
if args[0].kind_of?(Array)
opts = args.shift.collect{|opt| '-' + opt.to_s }
else
opts = []
end
opts << '--'
ret = tk_send('search', *(opts + args))
if ret == ""
nil
else
ret
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 396
def tksearch_with_count(*args)
# call 'search' subcommand of text widget
# args ::= [<array_of_opts>] <var> <pattern> <start_index> [<stop_index>]
# If <pattern> is regexp, then it must be a regular expression of Tcl
if args[0].kind_of?(Array)
opts = args.shift.collect{|opt| '-' + opt.to_s }
else
opts = []
end
opts << '-count' << args.shift << '--'
ret = tk_send('search', *(opts + args))
if ret == ""
nil
else
ret
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 540
def xview(*index)
if index.size == 0
list(tk_send_without_enc('xview'))
else
tk_send_without_enc('xview', *index)
self
end
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 548
def xview_moveto(*index)
xview('moveto', *index)
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 551
def xview_scroll(*index)
xview('scroll', *index)
end
# File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 555
def yview(*index)
if index.size == 0
list(tk_send_without_enc('yview'))
else
tk_send_without_enc('yview', *index)
self
end
end
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.