Step 1: quickly type FL
Not sure why it does not highlight the first element in the tree that matches the keyword? (See screenshot)
Step2: After a little pause after step1(i.e. Typing FL), I continue to type O(FLO); Instead of highlighting the table that starts with FLO* it goes to table starting with O(Even though on the top it says its searching for FLO) (See screenshot)
|
32 KB
|
22 KB
Nhi - pls investigate.
The schema tree is a CTree object which uses the JIDE TreeSearchable feature installed on line 262 :
// Install Searchable component to the tree
TreeSearchable treeSearchable = (TreeSearchable) SearchableUtils.installSearchable(this);
Here is the Javadoc : http://www.jidesoft.com/javadoc/com/jidesoft/swing/TreeSearchable.html
From developers guide :
Features
The main purpose of searchable is to make the searching for a particular string easier in a
component having a lot of information. All features are related to how to make it quicker and easier
to identify the matching text.
Navigation feature - After user types in a text and press up or down arrow key, only items
which match with the typed text will be selected. User can press up and down key to quickly look at
what those items are. In addition, home key will navigate to the first occurrence. And end key will
You may wonder why we only support searchable on non-editable combo box. We could have “searchable” feature on editable combo box but it is not “searchable” as it is described in this chapter but autocompleting. We will introduce autocompleting combobox in the future which will fill the gap of “searchable” editable combobox. navigate to the last occurrence. The navigation keys are fully customizable. Next section will tell you how to customize them.
Multiple selection feature - If you press and hold CTRL key while pressing up and down
arrow, it will find next/previous occurrence while keeping existing selections. See the screenshot
below. So you can easily find several occurrences and apply an action to all of them later.
Figure 5 Multiple Selections
Select all feature – Further extending the multiple selections feature, you can even select all. If
you type in a searching text and press CTRL+A, all the occurrences matching the searching text will
be selected. This is a very handy feature. For example you want to delete all rows in a table whose
“name” column begins with “old”. So you can type in “old” and press CTRL+A, now all rows
beginning with “old” will be selected. If you hook up delete key with the table, pressing delete key
will delete all selected rows. Imagine without this searchable feature, users will have to hold CTRL
key, look through each row, and click on the row they want to delete. In case they forgot to hold
tight the CTRL key while clicking, they have to start over again.
Basic regular expression support - It allows '?' to match any character and '*' to match any
number of characters. For example “a*c” will match “ac”, “abc”, “abbbc”, or even “a b c” etc. “a?c”
will only match “abc” or “a c”.
Recursive search (only in TreeSearchable) – In the case of TreeSearchable, there is an option
called recursive. You can call TreeSearchable#setRecursive(true/false) to change it. If TreeSearchable
is recursive, it will search all tree nodes including those which are not visible to find the matching
node. Obviously, if your tree has unlimited number of tree nodes or a potential huge number of tree
nodes (such as a tree to represent file system), the recursive attribute should be false. To avoid this
potential problem in this case, we default it to false.
The schema tree is a CTree object which uses the JIDE TreeSearchable feature installed on line 262 :
// Install Searchable component to the tree
TreeSearchable treeSearchable = (TreeSearchable) SearchableUtils.installSearchable(this);
Here is the Javadoc : http://www.jidesoft.com/javadoc/com/jidesoft/swing/TreeSearchable.html
From developers guide :
Features
The main purpose of searchable is to make the searching for a particular string easier in a
component having a lot of information. All features are related to how to make it quicker and easier
to identify the matching text.
Navigation feature - After user types in a text and press up or down arrow key, only items
which match with the typed text will be selected. User can press up and down key to quickly look at
what those items are. In addition, home key will navigate to the first occurrence. And end key will
You may wonder why we only support searchable on non-editable combo box. We could have “searchable” feature on editable combo box but it is not “searchable” as it is described in this chapter but autocompleting. We will introduce autocompleting combobox in the future which will fill the gap of “searchable” editable combobox. navigate to the last occurrence. The navigation keys are fully customizable. Next section will tell you how to customize them.
Multiple selection feature - If you press and hold CTRL key while pressing up and down
arrow, it will find next/previous occurrence while keeping existing selections. See the screenshot
below. So you can easily find several occurrences and apply an action to all of them later.
Figure 5 Multiple Selections
Select all feature – Further extending the multiple selections feature, you can even select all. If
you type in a searching text and press CTRL+A, all the occurrences matching the searching text will
be selected. This is a very handy feature. For example you want to delete all rows in a table whose
“name” column begins with “old”. So you can type in “old” and press CTRL+A, now all rows
beginning with “old” will be selected. If you hook up delete key with the table, pressing delete key
will delete all selected rows. Imagine without this searchable feature, users will have to hold CTRL
key, look through each row, and click on the row they want to delete. In case they forgot to hold
tight the CTRL key while clicking, they have to start over again.
Basic regular expression support - It allows '?' to match any character and '*' to match any
number of characters. For example “a*c” will match “ac”, “abc”, “abbbc”, or even “a b c” etc. “a?c”
will only match “abc” or “a c”.
Recursive search (only in TreeSearchable) – In the case of TreeSearchable, there is an option
called recursive. You can call TreeSearchable#setRecursive(true/false) to change it. If TreeSearchable
is recursive, it will search all tree nodes including those which are not visible to find the matching
node. Obviously, if your tree has unlimited number of tree nodes or a potential huge number of tree
nodes (such as a tree to represent file system), the recursive attribute should be false. To avoid this
potential problem in this case, we default it to false.
Issue #8169 |
Closed |
Fixed |
Resolved |
Completion |
No due date |
No fixed build |
No time estimate |
Nhi - pls investigate.