Class/Module Index [+]

Quicksearch

Tk::Iwidgets::Scrolledtext

Public Class Methods

new(*args) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 34
def initialize(*args)
  super(*args)
  @text = component_widget('text')
end
            

Public Instance Methods

bbox(index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 85
def bbox(index)
  list(tk_send('bbox', index))
end
            
child_site() click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 49
def child_site
  window(tk_call(@path, 'childsite'))
end
            
clear() click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 53
def clear
  tk_call(@path, 'clear')
  self
end
            
compare(idx1, op, idx2) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 88
def compare(idx1, op, idx2)
  bool(tk_send_without_enc('compare', _get_eval_enc_str(idx1),
                           op, _get_eval_enc_str(idx2)))
end
            
current_image_configinfo(index, slot = nil) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 259
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
            
debug() click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 93
def debug
  bool(tk_send_without_enc('debug'))
end
            
debug=(boolean) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 96
def debug=(boolean)
  tk_send_without_enc('debug', boolean)
  #self
  boolean
end
            
delete(first, last=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 102
def delete(first, last=None)
  tk_send_without_enc('delete', first, last)
  self
end
            
dlineinfo(index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 107
def dlineinfo(index)
  list(tk_send_without_enc('dlineinfo', _get_eval_enc_str(index)))
end
            
export(file) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 67
def export(file)
  tk_call(@path, 'export', file)
  self
end
            
get(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 111
def get(*index)
  _fromUTF8(tk_send_without_enc('get', *index))
end
            
get_displaychars(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 114
def get_displaychars(*index)
  # Tk8.5 feature
  get('-displaychars', *index)
end
            
image_cget(index, slot) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 134
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
            
image_cget_strict(index, slot) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 123
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
            
image_cget_tkstring(index, slot) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 119
def image_cget_tkstring(index, slot)
  _fromUTF8(tk_send_without_enc('image', 'cget',
                                _get_eval_enc_str(index), "-#{slot.to_s}"))
end
            
image_configinfo(index, slot = nil) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 170
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
            
image_configure(index, slot, value=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 156
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
            
image_names() click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 280
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
            
import(file, idx=nil) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 58
def import(file, idx=nil)
  if idx
    tk_call(@path, 'import', file, index(idx))
  else
    tk_call(@path, 'import', file)
  end
  self
end
            
index(idx) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 287
def index(idx)
  tk_send_without_enc('index', _get_eval_enc_str(idx))
end
            
insert(index, *args) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 291
def insert(index, *args)
  tk_send('insert', index, *args)
  self
end
            
mark_gravity(mark, direction=nil) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 303
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
            
mark_names() click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 296
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
            
mark_next(index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 327
def mark_next(index)
  tagid2obj(_fromUTF8(tk_send_without_enc('mark', 'next',
                                          _get_eval_enc_str(index))))
end
            
Also aliased as: next_mark
mark_previous(index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 333
def mark_previous(index)
  tagid2obj(_fromUTF8(tk_send_without_enc('mark', 'previous',
                                          _get_eval_enc_str(index))))
end
            
Also aliased as: previous_mark
mark_set(mark, index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 313
def mark_set(mark, index)
  tk_send_without_enc('mark', 'set', _get_eval_enc_str(mark),
                      _get_eval_enc_str(index))
  self
end
            
Also aliased as: set_mark
mark_unset(*marks) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 320
def mark_unset(*marks)
  tk_send_without_enc('mark', 'unset',
                      *(marks.collect{|mark| _get_eval_enc_str(mark)}))
  self
end
            
Also aliased as: unset_mark
method_missing(id, *args) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 39
def method_missing(id, *args)
  if @text.respond_to?(id)
    @text.__send__(id, *args)
  else
    super(id, *args)
  end
end
            
next_mark(index) click to toggle source
Alias for: mark_next
previous_mark(index) click to toggle source
Alias for: mark_previous
rsearch(pat,start,stop=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 528
def rsearch(pat,start,stop=None)
  rsearch_with_length(pat,start,stop)[0]
end
            
rsearch_with_length(pat,start,stop=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 476
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
            
scan_dragto(x, y) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 343
def scan_dragto(x, y)
  tk_send_without_enc('scan', 'dragto', x, y)
  self
end
            
scan_mark(x, y) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 339
def scan_mark(x, y)
  tk_send_without_enc('scan', 'mark', x, y)
  self
end
            
search(pat,start,stop=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 472
def search(pat,start,stop=None)
  search_with_length(pat,start,stop)[0]
end
            
search_with_length(pat,start,stop=None) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 415
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
            
see(index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 532
def see(index)
  tk_send_without_enc('see', index)
  self
end
            
set_mark(mark, index) click to toggle source
Alias for: mark_set
tksearch(*args) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 375
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
            
tksearch_with_count(*args) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 395
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
            
unset_mark(*marks) click to toggle source
Alias for: mark_unset
xview(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 539
def xview(*index)
  if index.size == 0
    list(tk_send_without_enc('xview'))
  else
    tk_send_without_enc('xview', *index)
    self
  end
end
            
xview_moveto(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 547
def xview_moveto(*index)
  xview('moveto', *index)
end
            
xview_scroll(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 550
def xview_scroll(*index)
  xview('scroll', *index)
end
            
yview(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 554
def yview(*index)
  if index.size == 0
    list(tk_send_without_enc('yview'))
  else
    tk_send_without_enc('yview', *index)
    self
  end
end
            
yview_moveto(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 562
def yview_moveto(*index)
  yview('moveto', *index)
end
            
yview_scroll(*index) click to toggle source
 
               # File tk/lib/tkextlib/iwidgets/scrolledtext.rb, line 565
def yview_scroll(*index)
  yview('scroll', *index)
end
            

Commenting is here to help enhance the documentation. For example, sample code, 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.

blog comments powered by Disqus