OSDN Git Service

ruby-1.9.1-rc1
[splhack/AndroidRuby.git] / lib / ruby-1.9.1-rc1 / ext / tk / lib / tkextlib / iwidgets / selectionbox.rb
1 #
2 #  tkextlib/iwidgets/selectionbox.rb
3 #                               by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)
4 #
5
6 require 'tk'
7 require 'tkextlib/iwidgets.rb'
8
9 module Tk
10   module Iwidgets
11     class Selectionbox < Tk::Itk::Widget
12     end
13   end
14 end
15
16 class Tk::Iwidgets::Selectionbox
17   TkCommandNames = ['::iwidgets::selectionbox'.freeze].freeze
18   WidgetClassName = 'Selectionbox'.freeze
19   WidgetClassNames[WidgetClassName] = self
20
21   def __boolval_optkeys
22     super() << 'itemson' << 'selectionon'
23   end
24   private :__boolval_optkeys
25
26   def __strval_optkeys
27     super() << 'itemslabel' << 'selectionlabel'
28   end
29   private :__strval_optkeys
30
31   def child_site
32     window(tk_call(@path, 'childsite'))
33   end
34
35   def clear_items
36     tk_call(@path, 'clear', 'items')
37     self
38   end
39
40   def clear_selection
41     tk_call(@path, 'clear', 'selection')
42     self
43   end
44
45   def get
46     tk_call(@path, 'get')
47   end
48
49   def insert_items(idx, *args)
50     tk_call(@path, 'insert', 'items', idx, *args)
51   end
52
53   def insert_selection(pos, text)
54     tk_call(@path, 'insert', 'selection', pos, text)
55   end
56
57   def select_item
58     tk_call(@path, 'selectitem')
59     self
60   end
61
62   # based on Tk::Listbox ( and TkTextWin )
63   def curselection
64     list(tk_send_without_enc('curselection'))
65   end
66   def delete(first, last=None)
67     tk_send_without_enc('delete', first, last)
68     self
69   end
70   def index(idx)
71     tk_send_without_enc('index', idx).to_i
72   end
73   def nearest(y)
74     tk_send_without_enc('nearest', y).to_i
75   end
76   def scan_mark(x, y)
77     tk_send_without_enc('scan', 'mark', x, y)
78     self
79   end
80   def scan_dragto(x, y)
81     tk_send_without_enc('scan', 'dragto', x, y)
82     self
83   end
84   def selection_anchor(index)
85     tk_send_without_enc('selection', 'anchor', index)
86     self
87   end
88   def selection_clear(first, last=None)
89     tk_send_without_enc('selection', 'clear', first, last)
90     self
91   end
92   def selection_includes(index)
93     bool(tk_send_without_enc('selection', 'includes', index))
94   end
95   def selection_set(first, last=None)
96     tk_send_without_enc('selection', 'set', first, last)
97     self
98   end
99   def size
100     tk_send_without_enc('size').to_i
101   end
102 end