# File tk/lib/tkextlib/blt/vector.rb, line 13
def self.create(*args)
tk_call('::blt::vector', 'create', *args)
end
# File tk/lib/tkextlib/blt/vector.rb, line 17
def self.destroy(*args)
tk_call('::blt::vector', 'destroy', *args)
end
# File tk/lib/tkextlib/blt/vector.rb, line 21
def self.expr(expression)
tk_call('::blt::vector', 'expr', expression)
end
# File tk/lib/tkextlib/blt/vector.rb, line 25
def self.names(pat=None)
list = simplelist(tk_call('::blt::vector', 'names', pat))
TkVar_ID_TBL.mutex.synchronize{
list.collect{|name|
if TkVar_ID_TBL[name]
TkVar_ID_TBL[name]
elsif name[0..1] == '::' && TkVar_ID_TBL[name[2..-1]]
TkVar_ID_TBL[name[2..-1]]
else
name
end
}
}
end
# File tk/lib/tkextlib/blt/vector.rb, line 42
def initialize(size=nil, keys={})
if size.kind_of?(Hash)
keys = size
size = nil
end
if size.kind_of?(Array)
# [first, last]
size = size.join(':')
end
if size
@id = TkCore::INTERP._invoke('::blt::vector', 'create',
"#auto(#{size})", *hash_kv(keys))
else
@id = TkCore::INTERP._invoke('::blt::vector', 'create',
"#auto", *hash_kv(keys))
end
TkVar_ID_TBL.mutex.synchronize{
TkVar_ID_TBL[@id] = self
}
@def_default = false
@default_val = nil
@trace_var = nil
@trace_elem = nil
@trace_opts = nil
# teach Tk-ip that @id is global var
TkCore::INTERP._invoke_without_enc('global', @id)
end
# File tk/lib/tkextlib/blt/vector.rb, line 86
def *(item)
list(tk_call(@id, '*', item))
end
# File tk/lib/tkextlib/blt/vector.rb, line 90
def +(item)
list(tk_call(@id, '+', item))
end
# File tk/lib/tkextlib/blt/vector.rb, line 94
def -(item)
list(tk_call(@id, '-', item))
end
# File tk/lib/tkextlib/blt/vector.rb, line 98
def /(item)
list(tk_call(@id, '/', item))
end
# File tk/lib/tkextlib/blt/vector.rb, line 140
def [](idx)
index(idx)
end
# File tk/lib/tkextlib/blt/vector.rb, line 144
def []=(idx, val)
index(idx, val)
end
# File tk/lib/tkextlib/blt/vector.rb, line 102
def append(*vectors)
tk_call(@id, 'append', *vectors)
end
# File tk/lib/tkextlib/blt/vector.rb, line 106
def binread(channel, len=None, keys={})
if len.kind_of?(Hash)
keys = len
len = None
end
keys = _symbolkey2str(keys)
keys['swap'] = None if keys.delete('swap')
tk_call(@id, 'binread', channel, len, keys)
end
# File tk/lib/tkextlib/blt/vector.rb, line 116
def clear()
tk_call(@id, 'clear')
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 121
def delete(*indices)
tk_call(@id, 'delete', *indices)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 74
def destroy
tk_call('::blt::vector', 'destroy', @id)
end
# File tk/lib/tkextlib/blt/vector.rb, line 126
def dup_vector(vec)
tk_call(@id, 'dup', vec)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 131
def expr(expression)
tk_call(@id, 'expr', expression)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 136
def index(idx, val=None)
number(tk_call(@id, 'index', idx, val))
end
# File tk/lib/tkextlib/blt/vector.rb, line 78
def inspect
'#<Tk::BLT::Vector: ' + @id + '>'
end
# File tk/lib/tkextlib/blt/vector.rb, line 148
def length()
number(tk_call(@id, 'length'))
end
# File tk/lib/tkextlib/blt/vector.rb, line 152
def length=(size)
number(tk_call(@id, 'length', size))
end
# File tk/lib/tkextlib/blt/vector.rb, line 156
def merge(*vectors)
tk_call(@id, 'merge', *vectors)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 161
def normalize(vec=None)
tk_call(@id, 'normalize', vec)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 166
def notify(keyword)
tk_call(@id, 'notify', keyword)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 171
def offset()
number(tk_call(@id, 'offset'))
end
# File tk/lib/tkextlib/blt/vector.rb, line 175
def offset=(val)
number(tk_call(@id, 'offset', val))
end
# File tk/lib/tkextlib/blt/vector.rb, line 183
def populate(vector, density=None)
tk_call(@id, 'populate', vector, density)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 179
def random()
tk_call(@id, 'random')
end
# File tk/lib/tkextlib/blt/vector.rb, line 188
def range(first, last=None)
list(tk_call(@id, 'range', first, last))
end
# File tk/lib/tkextlib/blt/vector.rb, line 192
def search(val1, val2=None)
list(tk_call(@id, 'search', val1, val2))
end
# File tk/lib/tkextlib/blt/vector.rb, line 201
def seq(start, finish=None, step=None)
tk_call(@id, 'seq', start, finish, step)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 196
def set(item)
tk_call(@id, 'set', item)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 206
def sort(*vectors)
tk_call(@id, 'sort', *vectors)
self
end
# File tk/lib/tkextlib/blt/vector.rb, line 211
def sort_reverse(*vectors)
tk_call(@id, 'sort', '-reverse', *vectors)
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.