class Tk::TkTable
Constants
- PACKAGE_NAME
- TkCommandNames
- WidgetClassName
Public Class Methods
package_name()
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 21 def self.package_name PACKAGE_NAME end
package_version()
click to toggle source
# File 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 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
Calls superclass method
Tk::ValidateConfigure#__validation_class_list
# File lib/tkextlib/tktable/tktable.rb, line 492 def __validation_class_list super() << BrowseCommand << CellCommand << SelectionCommand << ValidateCommand end
activate(idx)
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 504 def activate(idx) tk_send('activate', tagid(idx)) end
bbox(idx)
click to toggle source
# File 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 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 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 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 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 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 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 lib/tkextlib/tktable/tktable.rb, line 529 def clear_sizes(first=None, last=None) tk_send('clear', 'sizes', tagid(first), tagid(last)) self end
col_index(idx)
click to toggle source
# File 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 lib/tkextlib/tktable/tktable.rb, line 542 def curselection simplelist(tk_send('curselection')) end
curselection=(val)
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 545 def curselection=(val) tk_send('curselection', val) val end
curvalue()
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 550 def curvalue tk_tcl2ruby(tk_send('curvalue'), true, false) end
curvalue=(val)
click to toggle source
# File 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 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 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 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 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 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 lib/tkextlib/tktable/tktable.rb, line 599 def height(row) number(tk_send('height', row)) end
height_list()
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 596 def height_list list(tk_send('height')) end
icursor()
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 622 def icursor number(tk_send('icursor')) end
icursor_set(idx)
click to toggle source
# File 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 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 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 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 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 lib/tkextlib/tktable/tktable.rb, line 672 def reread tk_send('reread') self end
row_index(idx)
click to toggle source
# File 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 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 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 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 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 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 lib/tkextlib/tktable/tktable.rb, line 699 def selection_clear_all selection_clear('all') end
selection_include?(idx)
click to toggle source
# File 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 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 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 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 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 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 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 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 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 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
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 lib/tkextlib/tktable/tktable.rb, line 940 def validate(idx) bool(tk_send('validate', tagid(idx))) end
width(row)
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 947 def width(row) number(tk_send('width', row)) end
width_list()
click to toggle source
# File lib/tkextlib/tktable/tktable.rb, line 944 def width_list list(tk_send('width')) end
window_delete(*args)
click to toggle source
# File 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 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 lib/tkextlib/tktable/tktable.rb, line 963 def window_names(pat=None) simplelist(tk_send('window', 'names', pat)) end