Suchseite ergänzen

Wenn der Benutzer eine Ressource und dann den Befehl "Suchen" auswählt, startet das Such-Plug-in einen Dialog, der Seiten für unterschiedliche Arten von Inhaltssuchen enthält.  Diese Seiten werden unter Verwendung des Erweiterungspunktes org.eclipse.search.searchPages ergänzt.

Die Konfigurationsbefehle für die Beisteuerung einer Suchseite sind relativ einfach.   Das folgende Beispiel stammt aus der Ergänzung des JDT-Plug-ins für die Seite "Java-Suche":

<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>

Die Klasse (Attribut class), die die Suchseite implementiert, muss angegeben werden.   Diese Klasse muss die SchnittstelleISearchPage implementieren und erweitert in der RegelDialogPage.  Die Attribute label (Bezeichnung) und icon (Symbol), mit denen die Suche im Suchdialog beschrieben werden kann, sind ebenfalls angegeben.  Weitere Parameter steuern die Größe der Seite und ihre Position im Suchdialog.

Das Attribut extensions gibt die Ressourcen an, für die die Suchseite verwendet werden kann.   Es ist als Liste mit Kommatrennzeichen formatiert, die die Dateierweiterungen enthält.   Auf jede Dateierweiterung sollte ein numerischer Wert für die Gewichtung folgen (0 ist die niedrigste Gewichtung), der durch einen Doppelpunkt abgetrennt wird.   Der Wert für die Gewichtung ist ein relativer Wert, anhand dessen die Suchinfrastruktur die Suchseite ermitteln kann, die für eine bestimmte Ressource am besten geeignet ist.

Falls eine Suchseite alle möglichen Ressourcen suchen kann, sollte der Wert "*" verwendet werden.

Suchseite implementieren

Das Protokoll für ISearchPage ist einfach.  Ihre Suchseite muss performAction() implementieren. Diese Methode wird aufgerufen, wenn die Schaltfläche Suchen ausgewählt wird.  Ihre jeweilige Suchimplementierung ist natürlich von der Funktion Ihres Plug-ins abhängig, aber in der Regel wird in dieser Methode eine Anzeigefunktion für Ergebnisse unter Verwendung der Methode activateSearchResultView(). von SearchUI geöffnet.

Ihr Plug-in muss dafür sorgen, dass die Ergebnisse in der Sicht "Suchergebnisse" angezeigt werden.   Übereinstimmungen werden zur Sicht unter Verwendung des Protokolls ISearchResultView hinzugefügt.  Für jede Übereinstimmung wird eine Beschreibung und eine Markierung in der Ressource angegeben.   Informationen zu Markierungen und zu deren Funktionsweise finden Sie unter Ressourcenmarkierungen.

Copyright IBM Corporation und Andere 2000, 2003.