Package com.jidesoft.swing
Class SearchableUtils
- java.lang.Object
-
- com.jidesoft.swing.SearchableUtils
-
public class SearchableUtils extends java.lang.Object
Utility class to make component searchable. It's very easy to use this class. In order to make a component, all you need to do is to call
The component could be a JList, JTree or JTable. If you need to further customize some attributes of Searchable, you can assign a variable that returns from installSearchable().SearchableUtils.installSearchable(component);
Usually you don't need to uninstall the searchable from the component. But if for some reason, you need to disable the searchable feature of the component, you can call uninstallSearchable().Searchable searchable = SearchableUtils.installSearchable(component); // further configure it searchable.setCaseSensitive(true); // ...
There is a small trick that you should know. JTree and JList implemented partially the quick search feature so that when you type in the first character, it will jump to the first occurrence. This feature sometimes conflicts with the Searchable we provided. So it'd better if you disable the JTree or JList default feature by creating JTree and JList with getNextMatch method overridden. See belowSearchable searchable = SearchableUtils.installSearchable(component); // ... // Now disable it SearchableUtils.uninstallSearchable(searchable);
JTree tree = new JTree(...) { public TreePath getNextMatch(String prefix, int startingRow, Position.Bias bias) { return null; } }; JList list = new JList(...){ public int getNextMatch(String prefix, int startIndex, Position.Bias bias) { return -1; } };
-
-
Constructor Summary
Constructors Constructor Description SearchableUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ComboBoxSearchable
installSearchable(javax.swing.JComboBox combobox)
Installs the searchable function onto a JComboBox.static ListSearchable
installSearchable(javax.swing.JList list)
Installs the searchable function onto a JList.static TableSearchable
installSearchable(javax.swing.JTable table)
Installs the searchable function onto a JTable.static TreeSearchable
installSearchable(javax.swing.JTree tree)
Installs the searchable function onto a JTree.static TextComponentSearchable
installSearchable(javax.swing.text.JTextComponent textComponent)
Installs the searchable function onto a JTextComponent.static void
uninstallSearchable(Searchable searchable)
Uninstall the searchable that was installed to a componentstatic void
uninstallSearchable(javax.swing.JComponent component)
Uninstall the searchable that was installed to a component
-
-
-
Method Detail
-
installSearchable
public static TreeSearchable installSearchable(javax.swing.JTree tree)
Installs the searchable function onto a JTree.- Parameters:
tree
- the JTree to install searchable- Returns:
- A TreeSearchable
-
installSearchable
public static TableSearchable installSearchable(javax.swing.JTable table)
Installs the searchable function onto a JTable.- Parameters:
table
- the JTable to install searchable- Returns:
- A TableSearchable
-
installSearchable
public static ListSearchable installSearchable(javax.swing.JList list)
Installs the searchable function onto a JList.- Parameters:
list
- the JList to install searchable- Returns:
- A ListSearchable
-
installSearchable
public static ComboBoxSearchable installSearchable(javax.swing.JComboBox combobox)
Installs the searchable function onto a JComboBox.- Parameters:
combobox
- the combo box to install searchable- Returns:
- A ComboBoxSearchable
-
installSearchable
public static TextComponentSearchable installSearchable(javax.swing.text.JTextComponent textComponent)
Installs the searchable function onto a JTextComponent.- Parameters:
textComponent
- the text component to install searchable- Returns:
- A TextComponentSearchable
-
uninstallSearchable
public static void uninstallSearchable(Searchable searchable)
Uninstall the searchable that was installed to a component- Parameters:
searchable
- the searchable.
-
uninstallSearchable
public static void uninstallSearchable(javax.swing.JComponent component)
Uninstall the searchable that was installed to a component- Parameters:
component
- the component that has a searchable installed.
-
-