# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 492
def __validation_class_list
super() <<
BrowseCommand << CellCommand << SelectionCommand << ValidateCommand
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 504
def activate(idx)
tk_send('activate', tagid(idx))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 508
def bbox(idx)
list(tk_send('bbox', tagid(idx)))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 521
def border_dragto(x, y)
tk_send('border', 'dragto', x, y)
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 512
def border_mark(x, y)
simplelist(tk_send('border', 'mark', x, y))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 518
def border_mark_col(x, y)
tk_send('border', 'mark', x, y, 'col')
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 515
def border_mark_row(x, y)
tk_send('border', 'mark', x, y, 'row')
end
# 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
# 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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 635
def col_index(idx)
number(tk_send('index', tagid(idx), 'col'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 542
def curselection
simplelist(tk_send('curselection'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 545
def curselection=(val)
tk_send('curselection', val)
val
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 550
def curvalue
tk_tcl2ruby(tk_send('curvalue'), true, false)
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 553
def curvalue=(val)
tk_send('curvalue', val)
val
end
# 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
# 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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 587
def get(idx)
tk_tcl2ruby(tk_send('get', tagid(idx)), true, false)
end
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 599
def height(row)
number(tk_send('height', row))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 596
def height_list
list(tk_send('height'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 622
def icursor
number(tk_send('icursor'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 625
def icursor_set(idx)
number(tk_send('icursor', tagid(idx)))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 629
def index(idx)
tk_send('index', tagid(idx))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 639
def insert_active(idx, val)
tk_send('insert', 'active', tagid(idx), val)
self
end
# 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
# 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
def postscript(*args)
tk_send('postscript', *args)
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 672
def reread
tk_send('reread')
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 632
def row_index(idx)
number(tk_send('index', tagid(idx), 'row'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 681
def scan_dragto(x, y)
tk_send('scan', 'dragto', x, y)
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 677
def scan_mark(x, y)
tk_send('scan', 'mark', x, y)
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 686
def see(idx)
tk_send('see', tagid(idx))
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 691
def selection_anchor(idx)
tk_send('selection', 'anchor', tagid(idx))
self
end
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 699
def selection_clear_all
selection_clear('all')
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 702
def selection_include?(idx)
bool(tk_send('selection', 'includes', tagid(idx)))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 705
def selection_present
bool(tk_send('selection', 'present'))
end
# 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
# 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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 602
def set_height(*pairs)
tk_send('height', *(pairs.flatten))
self
end
# 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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 950
def set_width(*pairs)
tk_send('width', *(pairs.flatten))
self
end
# 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
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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 893
def tag_col(tag, *cols)
tk_send('tag', 'col', tagid(tag), *cols)
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 897
def tag_col_reset(*cols)
tk_send('tag', 'col', '', *cols)
self
end
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 914
def tag_exist?(tag)
bool(tk_send('tag', 'exists', tagid(tag)))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 917
def tag_include?(tag, idx)
bool(tk_send('tag', 'includes', tagid(tag), tagid(idx)))
end
# 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
# 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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 889
def tag_reset(*cells)
tk_send('tag', 'cell', '', *(cells.collect{|idx| tagid(idx)}))
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 931
def tag_row(tag, *rows)
tk_send('tag', 'row', tagid(tag), *rows)
self
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 935
def tag_row_reset(*rows)
tk_send('tag', 'row', '', *rows)
self
end
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
# 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
# File tk/lib/tkextlib/tktable/tktable.rb, line 940
def validate(idx)
bool(tk_send('validate', tagid(idx)))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 947
def width(row)
number(tk_send('width', row))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 944
def width_list
list(tk_send('width'))
end
# File tk/lib/tkextlib/tktable/tktable.rb, line 955
def window_delete(*args)
tk_send('window', 'delete', *(args.collect{|idx| tagid(idx)}))
self
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.