View Filters

The Need

Eclipse is a huge system consisting of a lot of classes, functions and packages. It is virtually impossible to categorize them one-by-one by hand. Some kind of automation is required for this task.

EET provides a filtering mechanism for reducing the amount of data being currently displayed in a view. This mechanism applies the current filter to each item contained in that view to check if the item should be displayed.

Filters

Simple Filters

The system provides an extensive sets of filters that can be combined.

Null filter
Doesn't actually do any filtering
Pattern filter
Selects an item for showing if its name matches the filter. Pattern are in Java syntax
Not filter
Inverts the decision of some other 'child' filter

The system also includes a number of other simple filters that are not exposed for GUI interaction currently.

Combined filters

Filters can be combined by AND or OR logical connection of a collection of 'child' filters. For example, filter NOT( PATTERN( "System.*" ) ) AND PATTERN( ".*out.*" ) won't select System.out.println but will select Guinness Irish Stout Beer.

Filtered Views

All EET views that display category items support interactive filtering. Filter toolbar is placed at the top of the view.


Figure: Filter Toolbox.

The toolbar consists of the following elements:

Clear Filters button
Clears current filter. All items contained in the view are uncovered and shown after the operation
Auto-update check-box
Toggles filtering as you type. Note: On a large sets it is recommended to turn this option off.
Substring check-box
When checked matching is performed for the entered pattern anywhere in the middle of the category item name. For example, without this option, entering text b will only match items which name is exactly 'b', and when this option is on, it will match any item that has 'b' in its name anywhere.
Include/Exclude button
When this toggle button is in the 'Include' state, the items in the view will be selected if they match pattern, whilst if it is in the 'Exclude' state, only items that does NOT match the filter will be selected
Pattern editor
Allows entering patterns in Java syntax
Add button
Allows to build compound filters.

Building compound filters

When single filter does not suffice, it is possible to add more filter filters using AND or NOT connector.

The evaluation order of such compound filter will be
(...((FILTER1 CONNECTOR1 FILTER2) CONNECTOR2 FILTER3)...)


Fourth Contact Group
Last modified: Sun Jul 09 20:41:00 Jerusalem Daylight Time 2006