Package org.eclipse.search.ui.text
Class AbstractTextSearchResult
- java.lang.Object
-
- org.eclipse.search.ui.text.AbstractTextSearchResult
-
- All Implemented Interfaces:
ISearchResult
public abstract class AbstractTextSearchResult extends Object implements ISearchResult
An abstract base implementation for text-match based search results. This search result implementation consists of a list ofmatches. No assumptions are made about the kind of elements these matches are reported against.- Since:
- 3.0
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractTextSearchResult()Constructs a newAbstractTextSearchResult
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddListener(ISearchResultListener l)Adds aISearchResultListener.voidaddMatch(Match match)Adds aMatchto this search result.voidaddMatches(Match[] matches)Adds a number of Matches to this search result.protected voidfireChange(SearchResultEvent e)Send the givenSearchResultEventto all registered search result listeners.MatchFilter[]getActiveMatchFilters()Returns the active match filters for this result.MatchFilter[]getAllMatchFilters()Returns all applicable filters for this result or null if match filters are not supported.abstract IEditorMatchAdaptergetEditorMatchAdapter()Returns an implementation ofIEditorMatchAdapterappropriate for this search result.Object[]getElements()Returns an array containing the set of all elements that matches are reported against in this search result.abstract IFileMatchAdaptergetFileMatchAdapter()Returns an implementation ofIFileMatchAdapterappropriate for this search result.intgetMatchCount()Returns the total number of matches contained in this search result.intgetMatchCount(Object element)Returns the number of matches reported against a given element.Match[]getMatches(Object element)Returns an array with all matches reported against the given element.voidremoveAll()Removes all matches from this search result.voidremoveListener(ISearchResultListener l)Removes aISearchResultChangedListener.voidremoveMatch(Match match)Removes the given match from this search result.voidremoveMatches(Match[] matches)Removes the given matches from this search result.voidsetActiveMatchFilters(MatchFilter[] filters)Sets the active match filters for this result.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.search.ui.ISearchResult
getImageDescriptor, getLabel, getQuery, getTooltip
-
-
-
-
Method Detail
-
getMatches
public Match[] getMatches(Object element)
Returns an array with all matches reported against the given element. Note that all matches of the given element are returned. The filter state of the matches is not relevant.- Parameters:
element- the element to report matches for- Returns:
- all matches reported for this element
- See Also:
Match.getElement()
-
addMatch
public void addMatch(Match match)
Adds aMatchto this search result. This method does nothing if the match is already present.Subclasses may extend this method.
- Parameters:
match- the match to add
-
addMatches
public void addMatches(Match[] matches)
Adds a number of Matches to this search result. This method does nothing for matches that are already present.Subclasses may extend this method.
- Parameters:
matches- the matches to add
-
removeAll
public void removeAll()
Removes all matches from this search result.Subclasses may extend this method.
-
removeMatch
public void removeMatch(Match match)
Removes the given match from this search result. This method has no effect if the match is not found.Subclasses may extend this method.
- Parameters:
match- the match to remove
-
removeMatches
public void removeMatches(Match[] matches)
Removes the given matches from this search result. This method has no effect for matches that are not foundSubclasses may extend this method.
- Parameters:
matches- the matches to remove
-
addListener
public void addListener(ISearchResultListener l)
Description copied from interface:ISearchResultAdds aISearchResultListener. Has no effect when the listener has already been added.- Specified by:
addListenerin interfaceISearchResult- Parameters:
l- the listener to be added
-
removeListener
public void removeListener(ISearchResultListener l)
Description copied from interface:ISearchResultRemoves aISearchResultChangedListener. Has no effect when the listener hasn't previously been added.- Specified by:
removeListenerin interfaceISearchResult- Parameters:
l- the listener to be removed
-
fireChange
protected void fireChange(SearchResultEvent e)
Send the givenSearchResultEventto all registered search result listeners.- Parameters:
e- the event to be sent- See Also:
ISearchResultListener
-
getMatchCount
public int getMatchCount()
Returns the total number of matches contained in this search result. The filter state of the matches is not relevant when counting matches. All matches are counted.- Returns:
- total number of matches
-
getMatchCount
public int getMatchCount(Object element)
Returns the number of matches reported against a given element. This is equivalent to callinggetMatches(element).lengthThe filter state of the matches is not relevant when counting matches. All matches are counted.- Parameters:
element- the element to get the match count for- Returns:
- the number of matches reported against the element
-
getElements
public Object[] getElements()
Returns an array containing the set of all elements that matches are reported against in this search result. Note that all elements that contain matches are returned. The filter state of the matches is not relevant.- Returns:
- the set of elements in this search result
-
setActiveMatchFilters
public void setActiveMatchFilters(MatchFilter[] filters)
Sets the active match filters for this result. If set to non-null, the match filters will be used to update the filter state (Match.isFiltered()of matches and theAbstractTextSearchViewPagewill only show non-filtered matches. Ifnullis set the filter state of the match is ignored by theAbstractTextSearchViewPageand all matches are shown. Note the model contains all matches, regardless if the filter state of a match.- Parameters:
filters- the match filters to set ornullif the filter state of the match should be ignored.- Since:
- 3.3
-
getActiveMatchFilters
public MatchFilter[] getActiveMatchFilters()
Returns the active match filters for this result. If not null is returned, the match filters will be used to update the filter state (Match.isFiltered()of matches and theAbstractTextSearchViewPagewill only show non-filtered matches. Ifnullis set the filter state of the match is ignored by theAbstractTextSearchViewPageand all matches are shown.- Returns:
- the match filters to be used or
nullif the filter state of the match should be ignored. - Since:
- 3.3
-
getAllMatchFilters
public MatchFilter[] getAllMatchFilters()
Returns all applicable filters for this result or null if match filters are not supported. If match filters are returned, theAbstractTextSearchViewPagewill contain menu entries in the view menu.- Returns:
- all applicable filters for this result.
- Since:
- 3.3
-
getEditorMatchAdapter
public abstract IEditorMatchAdapter getEditorMatchAdapter()
Returns an implementation ofIEditorMatchAdapterappropriate for this search result.- Returns:
- an appropriate adapter or
nullif none has been implemented - See Also:
IEditorMatchAdapter
-
getFileMatchAdapter
public abstract IFileMatchAdapter getFileMatchAdapter()
Returns an implementation ofIFileMatchAdapterappropriate for this search result.- Returns:
- an appropriate adapter or
nullif none has been implemented - See Also:
IFileMatchAdapter
-
-