Aggiunta di una pagina di ricerca

Quando l'utente seleziona una risorsa e sceglie il comando di ricerca, il plug-in di ricerca avvia una finestra di dialogo contenente pagine per i diversi tipi di ricerche di contenuto.  Tali pagine vengono fornite utilizzando il punto di estensione org.eclipse.search.searchPages.

Il tag per l'aggiunta di una pagina di ricerca è alquanto semplice.  Nell'esempio che segue viene descritta l'aggiunta della pagina di ricerca Java mediante il plug-in JDT:

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

È necessario specificare la classe che implementa la pagina di ricerca.  Tale classe deve implementare l'interfaccia ISearchPage e generalmente estende DialogPage. Vengono inoltre specificati i parametri label e icon che possono essere utilizzati per descrivere la ricerca nella finestra di dialogo di ricerca. Altri parametri controllano le dimensioni della pagina e il relativo percorso all'interno della finestra di dialogo di ricerca.

L'attributo extensions specifica le risorse sulle quali la pagina di ricerca può agire. Viene formattato come elenco separato da virgole di estensioni di file. Ogni estensione di file deve essere seguita da un valore di peso numerico, in cui 0 rappresenta il peso minore, separato da due punti. Il valore di peso è un valore relativo utilizzato per consentire all'infrastruttura di ricerca di cercare la pagina di ricerca più adatta a una determinata risorsa.

Se una pagina di ricerca può eseguire la ricerca di tutte le risorse possibili, è necessario specificare "*".

Implementazione della pagina di ricerca

Il protocollo per ISearchPage è semplice.  La pagina di ricerca deve implementare performAction() che viene richiamata quando si preme il pulsante Ricerca.  Naturalmente, la particolare implementazione della ricerca dipende dalla funzione del plug-in, anche se in genere si apre un visualizzatore dei risultati in questo metodo utilizzando il metodo SearchUI activateSearchResultView().

Il plug-in è responsabile della visualizzazione dei risultati nella vista dei risultati della ricerca.  Le corrispondenze vengono aggiunte alla vista utilizzando il protocollo ISearchResultView. Per ogni corrispondenza della ricerca, nella risorsa viene specificata una descrizione della corrispondenza e un indicatore.  Per informazioni sugli indicatori e sul relativo funzionamento, vedere Indicatori di risorse.

Copyright IBM Corporation e altri 2000, 2003.