一旦您已將搜尋相符項目移入 ISearchResultView, 搜尋結果檢視器就會在使用者選取不同相符項目時,執行工作的其餘部份, 同時啟動適當的編輯器,並導覽至結果的位置。搜尋基礎架構會按資源的名稱來排序相符結果。
如果不同的排序更適合您的搜尋結果,您可以提供一個或多個自訂的排序器。您可以提供自訂的排序器,來容許使用者從結果檢視畫面的排序方式蹦現功能表中,選取適合於相符項目的排序。
自訂的排序器是使用 org.eclipse.search.searchResultSorters 延伸點來提供的。
下列範例顯示 JDT 外掛程式如何提供不同排序器,供 Java 搜尋頁面結果使用。
<extension point="org.eclipse.search.searchResultSorters"> <sorter id="org.eclipse.search.internal.ui.ElementNameSorter" pageId="org.eclipse.jdt.ui.JavaSearchPage" label="%ElementNameSorter.label" tooltip="%ElementNameSorter.tooltip" icon="icons/full/clcl16/search_sortmatch.gif" class="org.eclipse.jdt.internal.ui.search.ElementNameSorter"> </sorter> <sorter id="org.eclipse.search.internal.ui.ParentNameSorter" pageId="org.eclipse.jdt.ui.JavaSearchPage" label="%ParentNameSorter.label" tooltip="%ParentNameSorter.tooltip" icon="icons/full/clcl16/search_sortmatch.gif" class="org.eclipse.jdt.internal.ui.search.ParentNameSorter"> </sorter> ... </extension>
實作搜尋頁面的 class 必須加以指定。 所提供的類別應該延伸 ViewerSorter。
可以用來在排序方式功能表中說明排序的 label 和 icon 也要加以指定。 pageId 指定應該對哪些搜尋頁面啟動排序器。
將 pageId 指定為 "*"
將啟動所有頁面的排序器。