Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
module Fox
#
# The List Box is a control to select one of a list of options. It looks
# similar to a Combo Box except that List Box yields integer numbers only.
# When an option is selected, List Box will send an SEL_COMMAND with the
# index of the opton. While manipulating the list, it may send SEL_CHANGED
# messages to indicate which option the cursor is hovering over.
# The List Box is able to receive ID_GETINTVALUE and ID_SETINTVALUE which
# will retrieve the current option or change the selected option.
#
# === Events
#
# The following messages are sent by FXListBox to its target:
#
# +SEL_COMMAND+::
# sent when a new list item is clicked; the message data is the index of the selected item.
# +SEL_CHANGED+::
# sent when a new list item is clicked.
#
# === List Box styles
#
# +LISTBOX_NORMAL+:: Normal style
#
# === Message identifiers
#
# +ID_LIST+
# +ID_FIELD+
#
class FXListBox < FXPacker
# Number of items in the list [Integer]
attr_reader :numItems
# Number of visible items [Integer]
attr_accessor :numVisible
# Current item's index, or -1 if no current item [Integer]
attr_accessor :currentItem
# Text font [FXFont]
attr_accessor :font
# Background color [FXColor]
attr_reader :backColor
# Text color [FXColor]
attr_accessor :textColor
# Background color for selected items [FXColor]
attr_accessor :selBackColor
# Text color for selected items [FXColor]
attr_accessor :selTextColor
# Status line help text [String]
attr_accessor :helpText
# Tool tip message [String]
attr_accessor :tipText
#
# Returns an initialized FXListBox instance.
#
def initialize(p, target=nil, selector=0, opts=FRAME_SUNKEN|FRAME_THICK|LISTBOX_NORMAL, x=0, y=0, width=0, height=0, padLeft=DEFAULT_PAD, padRight=DEFAULT_PAD, padTop=DEFAULT_PAD, padBottom=DEFAULT_PAD) # :yields: theListBox
end
#
# Return +true+ if _index_ is the index of the current item.
# Raises IndexError if _index_ is out of bounds.
#
def itemCurrent?(index); end
#
# Return the text of the item at the given index.
# Raises IndexError if _index_ is out of bounds.
#
def retrieveItem(index); end
#
# Replace the item at _index_ with a new item with the specified _text_,
# _icon_ and _data_.
# Raises IndexError if _index_ is out of bounds.
#
def setItem(index, text, icon=nil, ptr=nil); end
#
# Fill list by appending items from array of strings, and return the number
# items added.
#
def fillItems(strings, icon=nil, ptr=nil); end
#
# Insert a new item at index.
# Raises IndexError if _index_ is out of bounds.
#
def insertItem(index, text, icon=nil, ptr=nil); end
# Add an item to the end of the list.
def appendItem(text, icon=nil, ptr=nil);
# Prepend an item to the list
def prependItem(text, icon=nil, ptr=nil); end
#
# Move item from _oldIndex_ to _newIndex_ and return the new
# index of the item.
# Raises IndexError if either _oldIndex_ or _newIndex_ is out of bounds.
#
def moveItem(newIndex, oldIndex); end
#
# Extract item from list and return a reference to the item.
# Raises IndexError if _index_ is out of bounds.
#
def extractItem(index); end
#
# Remove this item from the list.
# Raises IndexError if _index_ is out of bounds.
#
def removeItem(index); end
# Remove all items from the list
def clearItems(); end
#
# Search items by _text_, beginning from item _start_. If the start
# item is -1 the search will start at the first item in the list.
# Flags may be +SEARCH_FORWARD+ or +SEARCH_BACKWARD+ to control the
# search direction; this can be combined with +SEARCH_NOWRAP+ or +SEARCH_WRAP+
# to control whether the search wraps at the start or end of the list.
# The option +SEARCH_IGNORECASE+ causes a case-insensitive match. Finally,
# passing +SEARCH_PREFIX+ causes searching for a prefix of the item text.
# Return -1 if no matching item is found.
#
def findItem(text, start=-1, flags=SEARCH_FORWARD|SEARCH_WRAP); end
#
# Search items by associated user _data_, beginning from item _start_. If the
# start item is -1 the search will start at the first item in the list.
# Flags may be +SEARCH_FORWARD+ or +SEARCH_BACKWARD+ to control the
# search direction; this can be combined with +SEARCH_NOWRAP+ or +SEARCH_WRAP+
# to control whether the search wraps at the start or end of the list.
#
def findItemByData(data, start=-1, flags=SEARCH_FORWARD|SEARCH_WRAP); end
#
# Set text for specified item to _text_.
# Raises IndexError if _index_ is out of bounds.
#
def setItemText(index, text); end
#
# Return text for specified item.
# Raises IndexError if _index_ is out of bounds.
#
def getItemText(index); end
#
# Set icon for specified item to _icon_.
# Raises IndexError if _index_ is out of bounds.
#
def setItemIcon(index, icon, owned=false); end
#
# Return icon for specified item.
# Raises IndexError if _index_ is out of bounds.
#
def getItemIcon(index); end
#
# Set user data object for specified item to _ptr_.
# Raises IndexError if _index_ is out of bounds.
#
def setItemData(index, ptr); end
#
# Return user data object for specified item.
# Raises IndexError if _index_ is out of bounds.
#
def getItemData(index); end
# Return +true+ if the pane is shown.
def paneShown?; end
# Sort items using current sort function
def sortItems; end
alias appendItem <<
end
end