Добавление страницы поиска

Когда пользователь выделяет ресурс и выбирает команду поиска, модуль поиска вызывает окно, в котором содержатся страницы для различного поиска по содержимому.  Эти страницы добавляются с помощью точки расширения org.eclipse.search.searchPages.

Текст для добавления страницы поиска прост.  Следующий пример - это добавление страницы поиска Java модулем JDT:

<extension point="org.eclipse.search.searchPages">
   <page id="org.eclipse.jdt.ui.JavaSearchPage"
		icon="icons/full/obj16/jsearch_obj.png"
		label="%JavaSearchPage.label"
		sizeHint="460,160"
		extensions="java:90, jav:90"
		showScopeSection="true"
		canSearchEnclosingProjects="true"
		class="org.eclipse.jdt.internal.ui.search.JavaSearchPage">
	</page>
</extension>

Следует указать класс, реализующий страницу поиска.  В этом классе должен содержаться интерфейс ISearchPage и, как правило, расширение DialogPage.  Кроме того, следует указать метку и значок, описывающие поиск в окне поиска.  Размер страницы и расположение ее в окне поиска управляется с помощью дополнительных параметров.

Атрибут extensions задает ресурсы, по которым будет вестись поиск.  Он форматирован как список расширений файлов, разделенный запятыми.  Перед каждым расширением файла через двоеточие должен стоять вес - числовое значение. 0 - минимальный вес.  Весовое значение - это относительное значение, с помощью которого инфраструктура поиска может искать страницы, наиболее подходящие заданному ресурсу.

Если необходимо искать все возможные ресурсы, то ставится "*".

Реализация страницы поиска

Протокол для ISearchPage достаточно прост.  Для страницы поиска следует реализовать performAction(), который вызывается при нажатии кнопки Поиск. Конечно, реализация поиска зависит от функций вашего модуля, но обычно результаты поиска открываются с помощью метода activateSearchResultView(). класса NewSearchUI

За отображение результатов поиска в соответствующей панели отвечает модуль.