Newer
Older
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
#
Lars Kanis
committed
# +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
# Background color {FXColor}
# Background color for selected items {FXColor}
# Text color for selected items {FXColor}
# 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
Lars Kanis
committed
def appendItem(text, icon=nil, ptr=nil); end
# 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