Plugin-klassen

Indtil videre har vi gennemgået de forskellige udvidelser, som Readme-værktøjet stiller til rådighed. I det følgende gennemgås den generelle definition af plugin'en til Readme-værktøjet.

Plugin-definition

Plugin'en til Readme-værktøjet er defineret øverst i filen MANIFEST.MF.

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Plugin.name
Bundle-SymbolicName: org.eclipse.ui.examples.readmetool; singleton:=true
Bundle-Version: 3.2.0.qualifier
Bundle-ClassPath: readmetool.jar
Bundle-Activator: org.eclipse.ui.examples.readmetool.ReadmePlugin
Bundle-Vendor: %Plugin.providerName
Bundle-Localization: plugin
Require-Bundle: org.eclipse.ui,
 org.eclipse.core.resources,
 org.eclipse.core.runtime,
 org.eclipse.ui.views,
 org.eclipse.ui.ide,
 org.eclipse.jface.text,
 org.eclipse.text,
 org.eclipse.ui.workbench.texteditor,
org.eclipse.ui.editorsEclipse-AutoStart: true
Eclipse-AutoStart-kommentar: Brug Eclipse-AutoStart i stedet for Eclipse-LazyStart, fordi readme-eksemplet skal køre mod 3.1 og 3.2.

Plugindefinitionen inkluderer Bundle-Name, Bundle-SymbolicName (plug-in id), Bundle-Version og Bundle-Vendor for plugin'en. De fleste af parametrene er set før i Hello World-plugin'en. Readme-værktøjet definerer også en speciel plugin-klasse, som hedder ReadmePlugin.

Navnet på jar-filen er også angivet. Filnavne, der er angivet i Bundle-ClassPath er relative i forhold til plugin'ens bibliotek, så readme-værktøjets jarfil kan placeres direkte i plugin'ens bibliotek.

Elementet Require-Bundle oplyser platformen om Readme-værktøjets afhængigheder. Arbejdsbænkens brugergrænseflade-plugins er angivet som påkrævede plugins sammen med forskellige plugins til kerne, jface og tekst.

AbstractUIPlugin

Klassen ReadmePlugin repræsenterer Readme-værktøjets plugin og styrer plugin'ens livscyklus. Som det blev vist i Hello World-eksemplet, er det ikke nødvendigt at angive en plugin-klasse. Platformen stiller en til rådighed for dig. I dette tilfælde skal vores plugin initialisere data, som er relateret til brugergrænsefladen, når den starter. Platformsklassen AbstractUIPlugin stiller en struktur til rådighed til styring af brugergrænsefladeressourcer og udvides med ReadmePlugin.

AbstractUIPlugin bruger de generiske start- og afslutningsmetoder til at styre billeder, dialogboksindstillinger og et indstillingslager i løbet af plugin'ens livscyklus.   ReadmePlugin-klassen gennemgås nærmere, når der skal arbejdes med dialogbokse og indstillinger.