Class FilteredTree

All Implemented Interfaces:
Drawable

public class FilteredTree extends Composite
Based on org.eclipse.ui.dialogs.FilteredTree.
Since:
1.2
  • Constructor Details

    • FilteredTree

      public FilteredTree(Composite parent, int treeStyle, PatternFilter filter)
      Create a new instance of the receiver.
      Parameters:
      parent - the parent Composite
      treeStyle - the style bits for the Tree
      filter - the filter to be used
    • FilteredTree

      protected FilteredTree(Composite parent)
      Create a new instance of the receiver. Subclasses that wish to override the default creation behavior may use this constructor, but must ensure that the init(composite, int, PatternFilter) method is called in the overriding constructor.
      Parameters:
      parent - the parent Composite
      See Also:
  • Method Details

    • init

      protected void init(int treeStyle, PatternFilter filter)
      Create the filtered tree.
      Parameters:
      treeStyle - the style bits for the Tree
      filter - the filter to be used
      Since:
      3.3
    • createControl

      protected void createControl(Composite parent, int treeStyle)
      Create the filtered tree's controls. Subclasses should override.
    • createFilterControls

      protected Composite createFilterControls(Composite parent)
      Create the filter controls. By default, a text and corresponding tool bar button that clears the contents of the text is created. Subclasses may override.
      Parameters:
      parent - parent Composite of the filter controls
      Returns:
      the Composite that contains the filter controls
    • createTreeControl

      protected Control createTreeControl(Composite parent, int style)
      Creates and set up the tree and tree viewer. This method calls doCreateTreeViewer(Composite, int) to create the tree viewer. Subclasses should override doCreateTreeViewer(Composite, int) instead of overriding this method.
      Parameters:
      parent - parent Composite
      style - SWT style bits used to create the tree
      Returns:
      the tree
    • doCreateTreeViewer

      protected TreeViewer doCreateTreeViewer(Composite parent, int style)
      Creates the tree viewer. Subclasses may override.
      Parameters:
      parent - the parent composite
      style - SWT style bits used to create the tree viewer
      Returns:
      the tree viewer
      Since:
      3.3
    • doCreateRefreshJob

      protected BasicUIJob doCreateRefreshJob()
      Creates a workbench job that will refresh the tree based on the current filter text. Subclasses may override.
      Returns:
      a workbench job that can be scheduled to refresh the tree
      Since:
      3.4
    • updateToolbar

      protected void updateToolbar(boolean visible)
    • createFilterText

      protected void createFilterText(Composite parent)
      Creates the filter text and adds listeners. This method calls doCreateFilterText(Composite) to create the text control. Subclasses should override doCreateFilterText(Composite) instead of overriding this method.
      Parameters:
      parent - Composite of the filter text
    • doCreateFilterText

      protected Text doCreateFilterText(Composite parent)
      Creates the text control for entering the filter text. Subclasses may override.
      Parameters:
      parent - the parent composite
      Returns:
      the text widget
      Since:
      3.3
    • textChanged

      protected void textChanged()
      Update the receiver after the text has changed.
    • getRefreshJobDelay

      protected long getRefreshJobDelay()
      Return the time delay that should be used when scheduling the filter refresh job. Subclasses may override.
      Returns:
      a time delay in milliseconds before the job should run
      Since:
      3.5
    • setBackground

      public void setBackground(Color background)
      Set the background for the widgets that support the filter text area.
      Overrides:
      setBackground in class Control
      Parameters:
      background - background Color to set
    • clearText

      protected void clearText()
      Clears the text in the filter text widget.
    • setFilterText

      protected void setFilterText(String string)
      Set the text in the filter control.
    • getPatternFilter

      public final PatternFilter getPatternFilter()
      Returns the pattern filter used by this tree.
      Returns:
      The pattern filter; never null.
    • getViewer

      public TreeViewer getViewer()
      Get the tree viewer of the receiver.
      Returns:
      the tree viewer
    • getFilterControl

      public Text getFilterControl()
      Get the filter text for the receiver, if it was created. Otherwise return null.
      Returns:
      the filter Text, or null if it was not created
    • getFilterString

      protected String getFilterString()
      Convenience method to return the text of the filter control. If the text widget is not created, then null is returned.
      Returns:
      String in the text, or null if the text does not exist
    • setInitialText

      public void setInitialText(String text)
      Set the text that will be shown until the first focus. A default value is provided, so this method only need be called if overriding the default initial text is desired.
      Parameters:
      text - initial text to appear in text field
    • selectAll

      protected void selectAll()
      Select all text in the filter text field.
    • getInitialText

      protected String getInitialText()
      Get the initial text for the receiver.
      Returns:
      String
    • getBoldFont

      public static Font getBoldFont(Object element, FilteredTree tree, PatternFilter filter)
      Return a bold font if the given element matches the given pattern. Clients can opt to call this method from a Viewer's label provider to get a bold font for which to highlight the given element in the tree.
      Parameters:
      element - element for which a match should be determined
      tree - FilteredTree in which the element resides
      filter - PatternFilter which determines a match
      Returns:
      bold font
    • isShowFilterControls

      public boolean isShowFilterControls()
    • setShowFilterControls

      public void setShowFilterControls(boolean showFilterControls)