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 262
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 483
def __validation_class_list
  super() << 
    BrowseCommand << CellCommand << SelectionCommand << ValidateCommand
end
            
activate(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 495
def activate(idx)
  tk_send('activate', tagid(idx))
end
            
bbox(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 499
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 512
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 503
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 509
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 506
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 528
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 516
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 520
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 524
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 626
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 533
def curselection
  simplelist(tk_send('curselection'))
end
            
curselection=(val) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 536
def curselection=(val)
  tk_send('curselection', val)
  val
end
            
curvalue() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 541
def curvalue
  tk_tcl2ruby(tk_send('curvalue'), true, false)
end
            
curvalue=(val) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 544
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 549
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 553
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 565
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 578
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 581
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 590
def height(row)
  number(tk_send('height', row))
end
            
height_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 587
def height_list
  list(tk_send('height'))
end
            
hidden?(idx, *args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 601
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 598
def hidden_list
  simplelist(tk_send('hidden'))
end
            
icursor() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 613
def icursor
  number(tk_send('icursor'))
end
            
icursor_set(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 616
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 620
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 630
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 634
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 646
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 663
def reread
  tk_send('reread')
  self
end
            
row_index(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 623
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 672
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 668
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 677
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 682
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 686
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 690
def selection_clear_all
  selection_clear('all')
end
            
selection_include?(idx) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 693
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 696
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 699
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 704
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 722
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 593
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 713
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 800
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 941
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 794
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 785
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 876
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 884
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 888
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 892
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 905
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 908
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 911
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 915
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 918
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 880
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 922
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 926
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 847
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 862
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 931
def validate(idx)
  bool(tk_send('validate', tagid(idx)))
end
            
width(row) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 938
def width(row)
  number(tk_send('width', row))
end
            
width_list() click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 935
def width_list
  list(tk_send('width'))
end
            
window_delete(*args) click to toggle source
 
               # File tk/lib/tkextlib/tktable/tktable.rb, line 946
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 950
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 954
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.

blog comments powered by Disqus