Class | Tk::BWidget::ListBox::Item |
In: |
tk/lib/tkextlib/bwidget/listbox.rb
|
Parent: | TkObject |
is NOT a subclass of a listbox widget class. because it constructed on a canvas widget.
ListItem_TBL | = | TkCore::INTERP.create_table |
ListItem_ID | = | ['bw:item'.freeze, '00000'.taint].freeze |
# File tk/lib/tkextlib/bwidget/listbox.rb, line 218 def self.id2obj(lbox, id) lpath = lbox.path return id unless ListItem_TBL[lpath] ListItem_TBL[lpath][id]? ListItem_TBL[lpath][id]: id end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 224 def initialize(lbox, *args) if lbox.kind_of?(Tk::BWidget::ListBox) @listbox = lbox else fail RuntimeError, "expect Tk::BWidget::ListBox or Tk::BWidget::ListBox::Item for 1st argument" end if args[-1].kind_of?(Hash) keys = _symbolkey2str(args.pop) else keys = {} end index = keys.delete('index') unless args.empty? index = args.shift end index = 'end' unless index unless args.empty? fail RuntimeError, 'too much arguments' end @lpath = @listbox.path if keys.key?('itemname') @path = @id = keys.delete('itemname') else @path = @id = ListItem_ID.join(TkCore::INTERP._ip_id_) ListItem_ID[1].succ! end ListItem_TBL[@id] = self ListItem_TBL[@lpath] = {} unless ListItem_TBL[@lpath] ListItem_TBL[@lpath][@id] = self @listbox.insert(index, @id, keys) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 289 def configinfo(key=nil) @listbox.itemconfiginfo(@id, key) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 285 def configure(key, val=None) @listbox.itemconfigure(@id, key, val) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 293 def current_configinfo(key=nil) @listbox.current_itemconfiginfo(@id, key) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 302 def edit(*args) @listbox.edit(@id, *args) self end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 323 def selection_add @listbox.selection_add(@id) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 327 def selection_remove @listbox.selection_remove(@id) end
# File tk/lib/tkextlib/bwidget/listbox.rb, line 331 def selection_set @listbox.selection_set(@id) end