Produkttilpassing fungerer på en annen måte når du bruker mekanismen for den primære funksjonen. Du finner merkevareinformasjonen om funksjonen i en plugin-modul som er identifisert av den primære funksjonen (eller plugin-modulen med samme navn som den primære funksjonen hvis ikke dette er angitt). Du ser filene som angir og definerer merkevareinformasjon om den hypotetiske acmeweb-applikasjonen i eksempelkatalogstrukturen nedenfor:
acmeweb/ acmeweb.exe (product executable - invokes eclipse.exe and specifies the primary feature) eclipse/ .eclipseproduct eclipse.exe startup.jar install.ini .config/ platform.cfg jre/ features/ com.example.acme.acmefeature_1.0.0/ (primary feature) feature.xml plugins/ com.example.acme.acmefeature_1.0.0/ (plug-in for primary feature. Contains branding info.) plugin.xml about.ini about.html about.mappings about.properties acme.png plugin_customization.ini splash.jpg welcome.xml com.example.acme.acmewebsupport_1.0.0/ ... links/ ...
Merkevareinformasjonen om et produkt angis i plugin-modulen som er knyttet til en primær funksjon. Det er mange deler av et produkt som kan tilpasses. Tilpasninger på produktnivå defineres ved hjelp av filen about.ini og andre filer som beskrives der. Produkter kan også styre standard preferanseverdier i andre plugin-moduler. Dette gjøres ved hjelp av filen plugin_customization.ini.
La oss nok en gang gå til eksempelproduktets plugin-modul for primær funksjon for å se nærmere på hvordan produktet tilpasses.
com.example.acme.acmefeature_1.0.0/ plugin.xml about.ini about.html about.mappings about.properties acme.png plugin_customization.ini plugin_customization.properties splash.bmp welcome.xml
Vi skal se nærmere på de samme tilpasningene som vi så på for produktenes utvidelsespunkt, og fokusere på hvordan spesifikasjonen er forskjellig når mekanismen for den primære funksjonen brukes.
Som vi allerede har sett i tilpassing på produktnivå, må alle funksjoner og plugin-moduler bidra med en about.html, som er en fil som inneholder informasjon om den bestemte plugin-modulen.
Den primære funksjonen støtter også informasjon og grafikk for produktet generelt. Det brukes flere filer for å angi denne informasjonen.
Et fargebilde med 16x16 piksler kan brukes til å merke vinduer som er opprettet av produktet. Det vises øverst til venstre i produktvinduene. Det angis i attributtet windowImage i filen about.ini. Banen må angis som en plugin-relativ bane. Nedenfor ser du eksempel på en oppføring for katalogstrukturen som er vist ovenfor:
windowImage=acme.png
Plugin-moduler som bruker velkomstfunksjonene i Eclipse 2.1, må definere filen for velkomstsiden i attributtet welcomePage i filen about.ini. Banen må angis som en plugin-relativ bane. Nedenfor ser du eksempel på en oppføring for katalogstrukturen som er vist ovenfor:
welcomePage=welcome.xml
Du kan også angi et oppslag for språk for filen. (Du finner mer informasjon i Språkspesifikke filer.)
welcomePage=$nl$/welcome.xml
Oppstartsbildet for produktet oppgis i filen splash.bmp som ligger i plugin-katalogen for den primære funksjonen. Bildet må oppgis med farger i 24-biters BMP-format (RGB-format) og ha en størrelse på omtrent 500x330 piksler. Hvis det skal tilpasses oppstartsbilder for ulike språkmiljøer, kan de legges i et fragment i plugin-modulens primære funksjon.
Filen plugin_customization.ini brukes til å definere standard preferanseverdiene for preferanser som er definert av andre plugin-moduler. Denne filen er en java.io.Properties-formatfil. Denne filen brukes vanligvis til å definere verdiene for preferanser som er publisert som en del av plugin-modulens felles programmeringsgrensesnitt (API). Du løper med andre ord en risiko hvis du refererer til preferanser som brukes av plugin-moduler, men som ikke formelt er definert i programmeringsgrensesnittet.
Det er vanlig å foreta tilpasningen ved å definere standardperspektivet for arbeidsbenken. Denne preferansen er definert i plugin-modulen org.eclipse.ui . I eksempelet nedenfor antar vi at produktet skal startes med ressursperspektivet som standardperspektiv.
org.eclipse.ui/defaultPerspectiveId=org.eclipse.ui.resourcePerspective
Hvis du må endre standardverdien for en av de andre plugin-modulenes preferanser, ser du i dokumentasjonen for programmeringsgrensesnittet for den aktuelle plugin-modulen for å se om preferansen er felles.
Filen plugin_customization.properties inneholder oversatte strenger for filen
plugin_customization.ini.