Extended maintenance of Ruby 1.9.3 ended on February 23, 2015. Read more

In Files

  • tk/lib/tkextlib/tktable/tktable.rb

Class/Module Index [+]

Quicksearch

Tk::TkTable

Public Class Methods

package_name() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 21
def self.package_name
  PACKAGE_NAME
end
            
package_version() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 25
def self.package_version
  begin
    TkPackage.require('Tktable')
  rescue
    ''
  end
end
            

Public Instance Methods

__destroy_hook__() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 271
def __destroy_hook__
  Tk::TkTable::CelTag::CellTagID_TBL.mutex.synchronize{
    Tk::TkTable::CelTag::CellTagID_TBL.delete(@path)
  }
end
            
__validation_class_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 492
def __validation_class_list
  super() <<
    BrowseCommand << CellCommand << SelectionCommand << ValidateCommand
end
            
activate(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 504
def activate(idx)
  tk_send('activate', tagid(idx))
end
            
bbox(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 508
def bbox(idx)
  list(tk_send('bbox', tagid(idx)))
end
            
border_dragto(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 521
def border_dragto(x, y)
  tk_send('border', 'dragto', x, y)
end
            
border_mark(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 512
def border_mark(x, y)
  simplelist(tk_send('border', 'mark', x, y))
end
            
border_mark_col(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 518
def border_mark_col(x, y)
  tk_send('border', 'mark', x, y, 'col')
end
            
border_mark_row(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 515
def border_mark_row(x, y)
  tk_send('border', 'mark', x, y, 'row')
end
            
clear_all(first=None, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 537
def clear_all(first=None, last=None)
  tk_send('clear', 'all', tagid(first), tagid(last))
  self
end
            
clear_cache(first=None, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 525
def clear_cache(first=None, last=None)
  tk_send('clear', 'cache', tagid(first), tagid(last))
  self
end
            
clear_sizes(first=None, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 529
def clear_sizes(first=None, last=None)
  tk_send('clear', 'sizes', tagid(first), tagid(last))
  self
end
            
clear_tags(first=None, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 533
def clear_tags(first=None, last=None)
  tk_send('clear', 'tags', tagid(first), tagid(last))
  self
end
            
col_index(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 635
def col_index(idx)
  number(tk_send('index', tagid(idx), 'col'))
end
            
curselection() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 542
def curselection
  simplelist(tk_send('curselection'))
end
            
curselection=(val) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 545
def curselection=(val)
  tk_send('curselection', val)
  val
end
            
curvalue() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 550
def curvalue
  tk_tcl2ruby(tk_send('curvalue'), true, false)
end
            
curvalue=(val) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 553
def curvalue=(val)
  tk_send('curvalue', val)
  val
end
            
delete_active(idx1, idx2=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 558
def delete_active(idx1, idx2=None)
  tk_send('delete', 'active', tagid(idx1), tagid(idx2))
  self
end
            
delete_cols(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 562
def delete_cols(*args) # ?switches_array?, index, ?count?
  params = []
  if args[0].kind_of?(Array)
    switches = args.shift
    switches.each{|k| params << "-#{k}"}
  end
  params << '--'
  params << tagid(args.shift)
  params.concat(args)
  tk_send('delete', 'cols', *params)
  self
end
            
delete_rows(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 574
def delete_rows(*args) # ?switches_array?, index, ?count?
  params = []
  if args[0].kind_of?(Array)
    switches = args.shift
    switches.each{|k| params << "-#{k}"}
  end
  params << '--'
  params << tagid(args.shift)
  params.concat(args)
  tk_send('delete', 'rows', *params)
  self
end
            
get(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 587
def get(idx)
  tk_tcl2ruby(tk_send('get', tagid(idx)), true, false)
end
            
get_area(idx1, idx2) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 590
def get_area(idx1, idx2)
  simplelist(tk_send('get', tagid(idx1), tagid(idx2))).collect{|v|
    tk_tcl2ruby(v, true, false)
  }
end
            
height(row) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 599
def height(row)
  number(tk_send('height', row))
end
            
height_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 596
def height_list
  list(tk_send('height'))
end
            
hidden?(idx, *args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 610
def hidden?(idx, *args)
  if args.empty?
    if (ret = tk_send('hidden', tagid(idx))) == ''
      false
    else
      ret
    end
  else
    bool(tk_send('hidden', tagid(idx), *(args.collect{|i| tagid(i)})))
  end
end
            
hidden_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 607
def hidden_list
  simplelist(tk_send('hidden'))
end
            
icursor() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 622
def icursor
  number(tk_send('icursor'))
end
            
icursor_set(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 625
def icursor_set(idx)
  number(tk_send('icursor', tagid(idx)))
end
            
index(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 629
def index(idx)
  tk_send('index', tagid(idx))
end
            
insert_active(idx, val) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 639
def insert_active(idx, val)
  tk_send('insert', 'active', tagid(idx), val)
  self
end
            
insert_cols(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 643
def insert_cols(*args) # ?switches_array?, index, ?count?
  params = []
  if args[0].kind_of?(Array)
    switches = args.shift
    switches.each{|k| params << "-#{k}"}
  end
  params << '--'
  params.concat(args)
  params << tagid(args.shift)
  tk_send('insert', 'cols', *params)
  self
end
            
insert_rows(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 655
def insert_rows(*args) # ?switches_array?, index, ?count?
  params = []
  if args[0].kind_of?(Array)
    switches = args.shift
    switches.each{|k| params << "-#{k}"}
  end
  params << '--'
  params << tagid(args.shift)
  params.concat(args)
  tk_send('insert', 'rows', *params)
  self
end
            
reread() click to toggle source

def postscript(*args)

tk_send('postscript', *args)

end

 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 672
def reread
  tk_send('reread')
  self
end
            
row_index(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 632
def row_index(idx)
  number(tk_send('index', tagid(idx), 'row'))
end
            
scan_dragto(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 681
def scan_dragto(x, y)
  tk_send('scan', 'dragto', x, y)
  self
end
            
scan_mark(x, y) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 677
def scan_mark(x, y)
  tk_send('scan', 'mark', x, y)
  self
end
            
see(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 686
def see(idx)
  tk_send('see', tagid(idx))
  self
end
            
selection_anchor(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 691
def selection_anchor(idx)
  tk_send('selection', 'anchor', tagid(idx))
  self
end
            
selection_clear(first, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 695
def selection_clear(first, last=None)
  tk_send('selection', 'clear', tagid(first), tagid(last))
  self
end
            
selection_clear_all() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 699
def selection_clear_all
  selection_clear('all')
end
            
selection_include?(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 702
def selection_include?(idx)
  bool(tk_send('selection', 'includes', tagid(idx)))
end
            
selection_present() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 705
def selection_present
  bool(tk_send('selection', 'present'))
end
            
selection_set(first, last=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 708
def selection_set(first, last=None)
  tk_send('selection', 'set', tagid(first), tagid(last))
  self
end
            
set(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 713
def set(*pairs) # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', *args)
  self
end
            
set_col(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 731
def set_col(*pairs) # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', 'col', *args)
  self
end
            
set_height(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 602
def set_height(*pairs)
  tk_send('height', *(pairs.flatten))
  self
end
            
set_row(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 722
def set_row(*pairs) # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', 'row', *args)
  self
end
            
set_spans(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 809
def set_spans(*pairs)
  # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    val = pairs[i+1]
    if val.kind_of?(Array)
      args << val.join(',')
    else
      args << val
    end
  }
  tk_send('spans', *args)
  self
end
            
set_width(*pairs) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 950
def set_width(*pairs)
  tk_send('width', *(pairs.flatten))
  self
end
            
span(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 803
def span(idx)
  lst = simplelist(tk_send('spans', tagid(idx)))
  idx = lst[0]
  rows, cols = lst[1].split(',').map!{|n| Integer(n)}
  [idx [rows, cols]]
end
            
span_list() click to toggle source
Alias for: spans
spans() click to toggle source

def set(*pairs) # idx, val, idx, val, … OR [idx, val], [idx, val], …

if pairs[0].kind_of?(Array)
  # [idx, val], [idx, val], ...
  args = []
  pairs.each{|idx, val| args << tagid(idx) << val }
  tk_send('set', *args)
else
  # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', *args)
end
self

end def #set_row(*pairs)

if pairs[0].kind_of?(Array)
  # [idx, val], [idx, val], ...
  args = []
  pairs.each{|idx, val| args << tagid(idx) << val }
  tk_send('set', 'row', *args)
else
  # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', 'row', *args)
end
self

end def #set_col(*pairs)

if pairs[0].kind_of?(Array)
  # [idx, val], [idx, val], ...
  args = []
  pairs.each{|idx, val| args << idx << val }
  tk_send('set', 'col', *args)
else
  # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    args << pairs[i+1]
  }
  tk_send('set', 'col', *args)
end
self

end

 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 794
def spans
  simplelist(tk_send('spans')).collect{|inf|
    lst = simplelist(inf)
    idx = lst[0]
    rows, cols = lst[1].split(',').map!{|n| Integer(n)}
    [idx [rows, cols]]
  }
end
            
Also aliased as: span_list
tag_cell(tag, *cells) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 885
def tag_cell(tag, *cells)
  tk_send('tag', 'cell', tagid(tag), *(cells.collect{|idx| tagid(idx)}))
  self
end
            
tag_col(tag, *cols) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 893
def tag_col(tag, *cols)
  tk_send('tag', 'col', tagid(tag), *cols)
  self
end
            
tag_col_reset(*cols) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 897
def tag_col_reset(*cols)
  tk_send('tag', 'col', '', *cols)
  self
end
            
tag_delete(tag) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 901
def tag_delete(tag)
  tk_send('tag', 'delete', tagid(tag))
  Tk::TkTable::CellTag::CellTagID_TBL.mutex.synchronize{
    if Tk::TkTable::CellTag::CellTagID_TBL[@path]
      if tag.kind_of? Tk::TkTable::CellTag
        Tk::TkTable::CellTag::CellTagID_TBL[@path].delete(tag.id)
      else
        Tk::TkTable::CellTag::CellTagID_TBL[@path].delete(tag)
      end
    end
  }
  self
end
            
tag_exist?(tag) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 914
def tag_exist?(tag)
  bool(tk_send('tag', 'exists', tagid(tag)))
end
            
tag_include?(tag, idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 917
def tag_include?(tag, idx)
  bool(tk_send('tag', 'includes', tagid(tag), tagid(idx)))
end
            
tag_lower(tag, target=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 920
def tag_lower(tag, target=None)
  tk_send('tag', 'lower', tagid(tag), tagid(target))
  self
end
            
tag_names(pat=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 924
def tag_names(pat=None)
  simplelist(tk_send('tag', 'names', pat)).collect{|tag| tagid2obj(tag)}
end
            
tag_raise(tag, target=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 927
def tag_raise(tag, target=None)
  tk_send('tag', 'raise', tagid(tag), tagid(target))
  self
end
            
tag_reset(*cells) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 889
def tag_reset(*cells)
  tk_send('tag', 'cell', '', *(cells.collect{|idx| tagid(idx)}))
  self
end
            
tag_row(tag, *rows) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 931
def tag_row(tag, *rows)
  tk_send('tag', 'row', tagid(tag), *rows)
  self
end
            
tag_row_reset(*rows) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 935
def tag_row_reset(*rows)
  tk_send('tag', 'row', '', *rows)
  self
end
            
tagid(tag) click to toggle source

def #set_spans(*pairs)

if pairs[0].kind_of?(Array)
  # [idx, val], [idx, val], ...
  args = []
  pairs.each{|idx, val|
    args << tagid(idx)
    if val.kind_of?(Array)
      args << val.join(',')
    else
      args << val
    end
  }
  tk_send('spans', *args)
else
  # idx, val, idx, val, ...
  args = []
  0.step(pairs.size-1, 2){|i|
    args << tagid(pairs[i])
    val = pairs[i+1]
    if val.kind_of?(Array)
      args << val.join(',')
    else
      args << val
    end
  }
  tk_send('spans', *args)
end
self

end

 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 856
def tagid(tag)
  if tag.kind_of?(Tk::TkTable::CellTag)
    tag.id
  elsif tag.kind_of?(Array)
    if tag[0].kind_of?(Integer) && tag[1].kind_of?(Integer)
      # [row, col]
      tag.join(',')
    else
      tag
    end
  else
    tag
  end
end
            
tagid2obj(tagid) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 871
def tagid2obj(tagid)
  Tk::TkTable::CellTag::CellTagID_TBL.mutex.synchronize{
    if Tk::TkTable::CellTag::CellTagID_TBL.key?(@path)
      if Tk::TkTable::CellTag::CellTagID_TBL[@path].key?(tagid)
        Tk::TkTable::CellTag::CellTagID_TBL[@path][tagid]
      else
        tagid
      end
    else
      tagid
    end
  }
end
            
validate(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 940
def validate(idx)
  bool(tk_send('validate', tagid(idx)))
end
            
width(row) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 947
def width(row)
  number(tk_send('width', row))
end
            
width_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 944
def width_list
  list(tk_send('width'))
end
            
window_delete(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 955
def window_delete(*args)
  tk_send('window', 'delete', *(args.collect{|idx| tagid(idx)}))
  self
end
            
window_move(from_idx, to_idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 959
def window_move(from_idx, to_idx)
  tk_send('window', 'move', tagid(from_idx), tagid(to_idx))
  self
end
            
window_names(pat=None) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 963
def window_names(pat=None)
  simplelist(tk_send('window', 'names', pat))
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.