Class: Editable_TkListbox

Inherits:
TkListbox
  • Object
show all
Defined in:
sample/editable_listbox.rb

Instance Method Summary collapse

Instance Method Details

#create_self(keys) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'sample/editable_listbox.rb', line 27

def create_self(keys)
  super(keys)

  unless self.listvariable
    self.listvariable = TkVariable.new(self.get(0, :end))
  end

  @ebox = TkEntry.new(self){
    @pos = -1
    def self.pos; @pos; end
    def self.pos=(idx); @pos = idx; end
  }

  @ebox.bind('Return'){
    list = self.listvariable.list
    list[@ebox.pos] = @ebox.value
    self.listvariable.value = list
    @ebox.place_forget
    @ebox.pos = -1
  }

  @ebox.bind('Escape'){
    @ebox.place_forget
    @ebox.pos = -1
  }

  self.bind('Double-1', '%y'){|y| _ebox_placer(y) }
end