Eclipse Platform
2.0

org.eclipse.ui.dialogs
Class FilteredList

java.lang.Object
  |
  +--org.eclipse.swt.widgets.Widget
        |
        +--org.eclipse.swt.widgets.Control
              |
              +--org.eclipse.swt.widgets.Scrollable
                    |
                    +--org.eclipse.swt.widgets.Composite
                          |
                          +--org.eclipse.ui.dialogs.FilteredList
All Implemented Interfaces:
Drawable

public class FilteredList
extends Composite

A composite widget which holds a list of elements for user selection. The elements are sorted alphabetically. Optionally, the elements can be filtered and duplicate entries can be hidden (folding).

Since:
2.0

Nested Class Summary
static interface FilteredList.FilterMatcher
           
 
Field Summary
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
FilteredList(Composite parent, int style, ILabelProvider renderer, boolean ignoreCase, boolean allowDuplicates, boolean matchEmptyString)
          Constructs a new instance of a filtered list.
 
Method Summary
 void addSelectionListener(SelectionListener listener)
          Adds a selection listener to the list.
 String getFilter()
          Returns the filter pattern.
 Object[] getFoldedElements(int index)
          Returns all elements which are folded together to one entry in the list.
 Object[] getSelection()
          Returns an array of the selected elements.
 int getSelectionIndex()
          Returns the selection of the list.
 int[] getSelectionIndices()
          Returns the selection of the list.
 boolean isEmpty()
          Tests if the list (before folding and filtering) is empty.
 void removeSelectionListener(SelectionListener listener)
          Removes a selection listener from the list.
 void setComparator(Comparator comparator)
          Sets a custom comparator for sorting the list.
 void setElements(Object[] elements)
          Sets the list of elements.
 void setFilter(String filter)
          Sets the filter pattern.
 void setFilterMatcher(FilteredList.FilterMatcher filterMatcher)
          Sets the filter matcher.
 void setSelection(int[] selection)
          Sets the selection of the list.
 void setSelection(Object[] elements)
          Sets the selection of the list.
 
Methods inherited from class org.eclipse.swt.widgets.Composite
checkSubclass, computeSize, getChildren, getLayout, getTabList, layout, layout, setFocus, setLayout, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addFocusListener, addHelpListener, addKeyListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addPaintListener, addTraverseListener, computeSize, forceFocus, getAccessible, getBackground, getBorderWidth, getBounds, getDisplay, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getParent, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isDisposed, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, redraw, redraw, removeControlListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removePaintListener, removeTraverseListener, setBackground, setBounds, setBounds, setCapture, setCursor, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setSize, setSize, setToolTipText, setVisible, toControl, toDisplay, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getStyle, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FilteredList

public FilteredList(Composite parent,
                    int style,
                    ILabelProvider renderer,
                    boolean ignoreCase,
                    boolean allowDuplicates,
                    boolean matchEmptyString)
Constructs a new instance of a filtered list.

Parameters:
parent - the parent composite.
style - the widget style.
renderer - the label renderer.
ignoreCase - specifies whether sorting and folding is case sensitive.
allowDuplicates - specifies whether folding of duplicates is desired.
matchEmptyString - specifies whether empty filter strings should filter everything or nothing.
Method Detail

setElements

public void setElements(Object[] elements)
Sets the list of elements.

Parameters:
elements - the elements to be shown in the list.

isEmpty

public boolean isEmpty()
Tests if the list (before folding and filtering) is empty.

Returns:
returns true if the list is empty, false otherwise.

setFilterMatcher

public void setFilterMatcher(FilteredList.FilterMatcher filterMatcher)
Sets the filter matcher.


setComparator

public void setComparator(Comparator comparator)
Sets a custom comparator for sorting the list.


addSelectionListener

public void addSelectionListener(SelectionListener listener)
Adds a selection listener to the list.

Parameters:
listener - the selection listener to be added.

removeSelectionListener

public void removeSelectionListener(SelectionListener listener)
Removes a selection listener from the list.

Parameters:
listener - the selection listener to be removed.

setSelection

public void setSelection(int[] selection)
Sets the selection of the list. Empty or null array removes selection.

Parameters:
selection - an array of indices specifying the selection.

getSelectionIndices

public int[] getSelectionIndices()
Returns the selection of the list.

Returns:
returns an array of indices specifying the current selection.

getSelectionIndex

public int getSelectionIndex()
Returns the selection of the list. This is a convenience function for getSelectionIndices().

Returns:
returns the index of the selection, -1 for no selection.

setSelection

public void setSelection(Object[] elements)
Sets the selection of the list. Empty or null array removes selection.

Parameters:
elements - the array of elements to be selected.

getSelection

public Object[] getSelection()
Returns an array of the selected elements. The type of the elements returned in the list are the same as the ones passed with setElements. The array does not contain the rendered strings.

Returns:
returns the array of selected elements.

setFilter

public void setFilter(String filter)
Sets the filter pattern. Current only prefix filter patterns are supported.

Parameters:
filter - the filter pattern.

getFilter

public String getFilter()
Returns the filter pattern.

Returns:
returns the filter pattern.

getFoldedElements

public Object[] getFoldedElements(int index)
Returns all elements which are folded together to one entry in the list.

Parameters:
index - the index selecting the entry in the list.
Returns:
returns an array of elements folded together, null if index is out of range.

Eclipse Platform
2.0

Copyright (c) IBM Corp. and others 2000, 2002. All Rights Reserved.