Tässä määritetyt hakuohjelmat eivät näy hajautetun haun osapuolina automaattisesti,
ennen kuin ohjelman tuotesidonta toteutetaan, paitsi jos productId
-määritettä
ei määritetä. Niiden ohjelmien osalta, joissa se määritetään, vain tiettyyn tuotteeseen sidotut ohjelmat näkyvät, kun kyseinen tuote on ajossa.
Hakuohjelmat voivat yksinkertaisesti koostaa URL-osoitteen ja tuottaa vain yhden osuman, joka sisältää kyseisen URL-osoitteen href-tunnisteena. Suositut hakuohjelmat, joiden API-tuki edellyttää lisenssiä, voi lisätä tällä tavalla. Toisaalta hakuohjelmat voivat viestiä palvelimen kanssa ja vastaanottaa yksittäisiä osumia, joissa on sellaisia tietoja kuin nimiö, href, lyhyt kuvaus, pistemäärä ja niin edelleen. Paikallinen ohjetoiminto voi tuottaa osumia tällä tavalla.
Hakumenetelmästä huolimatta hakuohjelmissa voi käyttää erilaisia hakualueiden asetuksia JFace-oletusasetussivujen avulla. Nämä sivut tulevat näkyviin, kun seuraat Ohje-näkymän Lisäasetukset-linkkiä. Ohjelmaan määritettyjen perusoletusasetussivujen lisäksi voi lisätä uusia oletusasetusten alisivuja, joissa on lisäasetuksia.
Alueiden asetukset ladataan ja tallennetaan
IPreferenceStore
-objektien avulla. Kaikkien ohjelmien vaikutusalueiden asetukset
ryhmitellään yhteen nimetyn aluejoukon alaisuuteen. Ensimmäisen avauksen yhteydessä
luodaan oletusarvoinen aluejoukko ('Default'), mutta käyttäjät voivat
määrittää enemmän joukkoja ja valita niiden välillä.
Koska hajautetun haun tuki on osa org.eclipse.help.base
-lisäosaa,
hakualueobjektien luonti oletusasetusten varaston tiedoista edellyttää
factory-metodia. Työasemien, jotka liittyvät alueen oletusasetussivuihin, on
liityttävä myös alueen factory-metodeihin.
Tässä laajennuspisteessä määritetyt ohjelmat eivät näyt käyttöliittymässä oletusarvon mukaan. Käyttöliittymässä on näkyvissä hakuohjelman konkreettinen ilmentymä, jota voi muokata yksilöllisesti. Tuotteet voivat määrittää ohjejärjestelmään ennalta joukon rekisteröidyn ohjelman lajien ilmentymiä, joiden parametreja on voitu muokata niin, että ne toimivat halutulla tavalla. Lisäksi käyttäjät voivat lisätä omat ilmentymänsä rekisteröidyistä ohjelmista ja määrittää ne tarpeitaan vastaaviksi.
<!ELEMENT extension (engineType* , engine*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT engineType (description? , subpage*)>
<!ATTLIST engineType
id CDATA #REQUIRED
label CDATA #REQUIRED
icon CDATA #IMPLIED
class CDATA #REQUIRED
pageClass CDATA #IMPLIED
scopeFactory CDATA #IMPLIED>
Määrittää tietynlajisen hakuohjelman. Käyttäjä voi käyttää hakuohjelman lajia konkreettisten ohjelman ilmentymien luontiin, tai tuote voi esiladata ilmentymät. Jotta ohjelmien lajit olisivat hyödyllisiä, niiden kokoonpanon tulee olla määritettävissä. Näin useita ohjelmia voi luoda käyttämällä yhtä ohjelman lajia.
org.eclipse.help.search.ISearchEngine
. Luokka vastaa annettun kyselyn ja hakualueen perusteella tehdyistä hauista.org.eclipse.help.ui.RootScopePage
-luokan. Kyseisellä sivulla on hakuohjelman pääkytkin, ja sitä käytetään tavallisesti widget-toimintojen ylläpitoon, mikä rajaa hakuohjelman hakualuetta.org.eclipse.help.ui.ISearchScopeFactory
. Factory vastaa ISearchScope-objektien luonnista IPreferenceStore
-luokkaan tallennettujen asetusten perusteella. Jos pageClass
-määrite on määritetty, scopeFactory-luokka on myös määritettävä.<!ELEMENT description (#PCDATA)>
Hakuohjelman lyhyt kuvaus
<!ELEMENT subpage EMPTY>
<!ATTLIST subpage
id CDATA #REQUIRED
label CDATA #REQUIRED
class CDATA #IMPLIED
category CDATA #REQUIRED>
Elementissä engine
määritetyn juurihakualueen oletusasetussivun alisivu. Jos pageClass
-ohjelmamääritettä ei ole määritetty, alisivut ohitetaan.
org.eclipse.help.ui.ISearchScopePage
. <!ELEMENT engine (description? , param*)>
<!ATTLIST engine
productId CDATA #IMPLIED
engineTypeId CDATA #REQUIRED
enabled (true | false)
label CDATA #IMPLIED
id CDATA #REQUIRED>
Määrittää tietyn hakuohjelman lajin konkreettisen ilmentymän. Ilmentymä voidaan sitoa tuotteeseen niin, että se näkyy vain, kun kyseinen tuote on toiminnassa. Ohjelmalla voi olla oma nimiönsä ja kuvauksensa. Jos kohtaa ei määritetä, käytetään ohjelman lajitietoja. Kukin ohjelman laji määrittää joukon kelvollisia parametreja, jotka ohjelmaan välittämällä voidaan määrittää ohjelman kokoonpano. Ohjelmat voivat määrittää kyseisten parametrien arvoja.
org.eclipse.core.runtime.Platform.getProduct() määrityksen mukaan
). Jos tätä kohtaa ei määritetä, ohjelma näkyy kaikkien tuotteiden yhteydessä.true
, ohjelma määritetään alussa käytössä olevaksi. Käyttäjät voivat ohittaa tämän arvon käyttöliittymässä.<!ELEMENT param EMPTY>
<!ATTLIST param
name CDATA #REQUIRED
value CDATA #REQUIRED>
Vaihtoehtoinen parametri, jota käytetään määrittämään kyseisen hakuohjelman lajin ilmentymän kokoonpano. Ohjelman laji määrittää kelvolliset parametrit.
<extension point=
"org.eclipse.help.ui.searchEngine"
>
<engineType scopeFactory=
"com.example.xyz.XYZScopeFactory"
label=
"XYZ Search"
class=
"com.example.xyz.search.XYZSearch"
icon=
"icons/etool16/xyzsearch.gif"
pageClass=
"com.example.xyz.search.XYZSearchPage"
id=
"com.example.xyz.XYZSearch"
>
<kuvaus>
XYZ Search -haun ilmentymiä - XYZ-sivusto.</description>
</engineType>
<engine enabled=
"true"
engineTypeId=
"com.example.xyz.search.XYZSearch"
id=
"com.example.xyz.XYZSearch"
label=
"XYZ Search"
>
</engine>
<engine enabled=
"true"
engineTypeId=
"org.eclipse.help.ui.web"
id=
"org.eclipse.sdk.Eclipse"
label=
"%search.Eclipse.label"
>
<kuvaus>
%search.Eclipse.desc</description>
<param name=
"url"
value=
"http://eclipse.org/search/search.cgi?q={expression}&ul=&ps=20&m=all"
>
</param>
</engine>
</extension>
engineType
määritteen class
on toimitettava sen luokan tarkennettu nimi, joka toteuttaa kohteen org.eclipse.help.search.ISearchEngine
. Määritteen pageClass
on toimitettava sen luokan tarkennettu nimi, joka laajentaa luokan org.eclipse.help.ui.RootScopePage
. Määritteen scopeFactory
on toimitettava sen luokan tarkennettu nimi, joka toteuttaa kohteen org.eclipse.help.ui.ISearchScopeFactory
.
Elementin subpage
määritteen class
on toimitettava sen luokan tarkennettu nimi, joka toteuttaa kohteen org.eclipse.help.ui.ISearchScopePage
.
Tuotteet voivat luoda konkreettisia InfoCenter- ja Web-hakujen ilmentymiä käyttämällä niiden ohjelmatunnusta ja tarvittavia parametreja.
Ohjelman InfoCenter-lajin engineId-tunnus on org.eclipse.help.ui.infoCenter
. Se hyväksyy yhden parametrin (url
), joka osoittaa etäpalvelimeen, jolle InfoCenter on asennettu. Haun tulokset näytetään samalla tavalla kuin paikallisen ohjehaun tulokset.
Web-haun ohjelman lajin ohjelmatunnus on org.eclipse.help.ui.web
, ja se hyväksyy yhden parametrin (url
), joka esittää konkreettista hakukyselyä. Kyselyn todellinen haettava merkkijono on siinä korvattu korvaussymbolilla "{expression}" seuraavan esimerkin tapaan:
http://eclipse.org/search/search.cgi?q={expression}&ul=&ps=20&m=allWeb-haun tulokset näytetään yhtenä linkkinä, joka avaa Web-selaimessa parametriin
url
korvatun haettavan merkkijonon mukaisen osoitteen.
Copyright (c) 2000, 2005 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html