Voorbeeld - Readme-tool
Inleiding
In de Readme-editor wordt aangegeven hoe u uw eigen extensiepunten moet definiëren voor het gebruik door andere plugins.
Ook wordt besproken hoe u extensies kunt maken voor menuopties voor voorgrondvensters voor resources, nieuwe resource wizards, bestandseditors op een extensie (.readme), een aangepaste view en eigenschappenpagina's.
Het voorbeeld uitvoeren
Als u dit voorbeeld wilt gaan gebruiken, maakt u een bestand met de extensie .readme met behulp van de wizard voor het maken van bestanden of maakt u een bestand met behulp van de wizard voor het maken van voorbeelden.
De aanvullende view uit dit voorbeeld kunt u bekijken door het pad Venster > View afbeelden > Overige te selecteren en op Readme te klikken. De viewactie kan worden bekeken door op het pictogram Readme te klikken in de view Navigator.
Een nieuw readme-bestand maken
Maak een nieuw bestand met bestandsextensie .readme. In het menu Bestand selecteert u Nieuw en vervolgens selecteert u Overige... in het submenu.
Klik op Eenvoudig in de wizard, en selecteer vervolgens Bestand in de lijst aan de linkerkant. Klik op Volgende om de bestandsnaam op te geven(zorg dat de extensie .readme is) en de map waarin het bestand moet worden geplaatst.
Wizards voor het maken van voorbeelden
Selecteer in het menu Bestand de optie Nieuw en in het submenu selecteert u Voorbeeld... Selecteer vervolgens Wizards voor het maken van bestanden.
Selecteer Readme-bestand. Klik op Volgende. Selecteer de map waarin het bestand moet worden gemaakt.
Typ de naam van het bestand met de extensie .readme. Klik op Voltooien.
Extensieactie Readme-view
In de view Navigator selecteert u een bestand met de extensie .readme. Als een dergelijk bestand niet bestaat, moet u een bestand met die extensie maken.
Op de lokale werkbalk van de view Navigator, ziet u een knop met de tekst Readme-view extensie uitvoeren in de voorgrond-Help.
Klik op deze knop. Er verschijnt een dialoogvenster met de mededeling View-actie uitgevoerd.
Voorgrondmenu's
In de view Navigator selecteert u een bestand met de extensie .readme. Als een dergelijk bestand niet bestaat, moet u een bestand met die extensie maken. Selecteer het bestand om het voorgrondmenu op te roepen.
U ziet een menuoptie met de tekst Readme-actie afbeelden in het voorgrondmenu.
Kies deze menuoptie om een dialoogvenster te openen met de tekst Actie van voorgrondmenu uitgevoerd.
Voorkeuren-pagina
Selecteer Voorkeuren in het menu Venster. Klik op de pagina met de naam Voorbeeld Readme. Hier wordt een voorbeeld van de voorkeurenpagina weergegeven.
Eigenschappen-pagina
In de view Navigator selecteert u een bestand met de extensie .readme. Als een dergelijk bestand niet bestaat, moet u een bestand met die extensie maken. Selecteer het bestand om het voorgrondmenu op te roepen. Klik op de pagina met de naam Readme Tool om een voorbeeld van een eigenschappenpagina te bekijken.
README-bestandseditor
De README-bestandseditor is de standaardeditor voor bestanden van het type *.readme.
Maak een bestand met de extensie .readme en open het bestand door hierop te dubbelklikken, of door het voorgrondmenu op te roepen, selecteer Openen met, en selecteer vervolgens README-bestandseditor in het submenu. De editor heeft een pictogram met een potlood. D it is de editor die standaard door de README TOOL wordt gebruikt voor bestanden van het type *.readme.
Acties README-editor
Dit is een voorbeeld van acties die alleen van toepassing zijn op een bepaalde editor.
Als een README-bestandseditor de focus krijgt, kunt u vier aanvullende werkbalkknoppen zien - Extensie README-editor uitvoeren, Actie 1 README-editor, Actie 2 README-editor, Actie 3 README-editor.
Er verschijnt een vervolgkeuzemenu Readme als een README-bestandseditor de focus heeft.
Het bevat de acties die voor heen zijn beschreven: Actie 1 README-editor, Actie 2 README-editor, Actie 3 README-editor.
De view Readme-secties
Als u deze view Readme-secties wilt zien, selecteert u in het menu Venster de optie View afbeelden en vervolgens Overige... in het submenu.
Klik op de Readme-optie en selecteer vervolgens de Readme-secties.
Hiermee wordt een lijst afgebeeld van de secties in het huidige *.readme-bestand als er een .readme-bestand is geselecteerd in de view Navigator. U kunt de structuur van een *.readme-bestand ook bekijken in de view Overzicht.
Een bestand met de extensie .readme kan worden onderverdeeld in secties als elke sectie met een nummer begint.
Als bijvoorbeeld de volgende wordt ingevoerd in de README-bestandseditor, worden er 2 secties gevonden door de Readme Tool. Als u wilt zien hoe secties worden gevonden in de Readme Tool, typt u tekst in de README-bestandseditor in en slaat u het bestand op door CTRL-S in te drukken of op Bestand->Opslaan te klikken. Open de view Readme-secties en selecteer het .readme-bestand in de view Navigator.
Voorbeeldtekst:
99.1 Dit is mijn eerste sectie
Dit is wat tekst in mijn eerste sectie.
99.1.1 Dit is een subsectie
Dit is wat tekst in mijn subsectie.
Slepen en neerzetten
U kunt de functionaliteit Slepen en Neerzetten bekijken door een sectie te selecteren in de view Overzicht en de selectie over een tekstbestand te slepen.
De inhoud van de selectie wordt aan het bestand toegevoegd.
Help-bijdrage
In het README TOOL-voorbeeld wordt ook aangegeven hoe u de contexthelp moet gebruiken en implementeren op alle extensies van dit tool - een view, verschillende acties en een wizardpagina.
Als u contexthelp voor een actie wilt, gaat u met de cursor over de menuoptie maar selecteert u de menuoptie niet. In plaats daarvan drukt u op F1.
U kunt ook contextgevoelige Help oproepen (F1) in de view Readme-secties en de pagina Wizards voor het maken van voorbeelden (in de wizard Nieuw).
Informatie
In het Readme Tool-voorbeeld wordt een extensiepunt gedeclareerd en wordt een aantal extensies gedefinieerd. Deze extensies bieden een duidelijk inzicht in de manier waarop de workbench functioneert, omdat het een aantal van de meer interessante extensiepunten gebruikt die door de workbench worden gedeclareerd.
De extensies in dit voorbeeld bestaan uit views en viewacties, voorkeurpagina's, eigenschappenpagina's, wizards, editors en editoracties, voorgrondmenu's, actiesets, Help-bijdragen, Help-contexten en neerzetacties.
Dit voorbeeld bevat ook een extensiepunt dat in de plugin is geïnstalleerd.
D klasse IReadmeFileParser is vereist voor elke plugin die de extensie org.eclipse.ui.examples.readmetool.sectionParser gebruikt dat in dit voorbeeld wordt gedefinieerd.
De klasse DefaultSectionParser is een voorbeeldimplementatie van de IReadmeFileParser.
De klasse ReadmeEditor implementeert IEditorPart en is gedefinieerd als een editor op bestanden met de extensie .readme in de plugin.xml die het extensiepunt org.eclipse.ui.editors gebruikt.
De klasse ReadmeSectionsView implementeert IViewPart en is gedefinieerd als een view die het extensiepunt org.eclipse.ui.views gebruikt. Dit extensiepunt definieert ook een categorie voor de view die in de viewselectie wordt gebruikt.
Er worden twee typen voorkeursinstellingen gedefinieerd in dit voorbeeld, workbenchvoorkeuren en resource-eigenschappen.
De workbenchvoorkeur wordt gedefinieerd in klasse ReadmePreferencePage waarmee IWorkbenchPreferencePage wordt geïmplementeerd zodat dit wordt toegevoegd aan het dialoogvenster Venster>Voorkeuren. De klasse is gedefinieerd in het extensiepunt org.eclipse.ui.preferencePages in de plugin.xml. De twee resource-eigenschappenpagina's zijn ReadmeFilePropertyPage en ReadmeFilePropertyPage2. Met beide pagina's wordt IWorkbenchPropertyPage geïmplementeerd.
Deze zijn beide gedefinieerd om te worden opgeroepen in het IFile-type door de tag objectClass in de plugin.xml in het extensiepunt org.eclipse.ui.propertyPages.
De klasse ReadmeCreationWizard implementeert INewWizard en is gedefinieerd in het extensiepunt org.eclipse.ui.newWizards in de plugin.xml. Met dit extensiepunt wordt ook de categorie gedefinieerd die wordt afgebeeld als de gebruiker het pad Bestand->Nieuw->Voorbeeld.... selecteert.
Er worden verschillende actiestubs aan dit voorbeeld toegevoegd. De actieset declareert een menu met het label README-Bestandseditor dat moet worden opgenomen in de menubalk van het workbenchvenster met behulp van het extensiepunt org.eclipse.ui.actionSets. Hiermee wordt ook een actie gedefinieerd voor de workbenchwerkbalk en menubalk met de tags toolbarPath en menubarPath. Het gebruikt de klasse WindowActionDelegate waarmee IWorkbenchWindowActionDelegate wordt geïmplementeerd om de actie te implementeren.
De actie voor het voorgrondmenu is gedefinieerd als een objectContribution met de klasse PopupMenuActionDelegate in het extensiepunt org.eclipse.ui.popupMenus.
PopupMenuActionDelegate implementeert IObjectActionDelegate en gebruikt IWorkbenchPart om een dialoogvenster voor berichten te openen.
De viewactie ViewActionDelegate wordt gedefinieerd in het extensiepunt org.eclipse.ui.viewActions en implementeert IViewActionDelegate. De view waarin het verschijnt, wordt gedefinieerd met de tag targetID dat in dit voorbeeld org.eclipse.ui.views.ResourceNavigator is. De editoractie wordt gedefinieerd met de klasse EditorActionDelegate waarmee IEditorActionDelegate wordt geïmplementeerd en wordt toegevoegd met het extensiepunt org.eclipse.ui.editorActions. De editor waarop het wordt toegepast, wordt gedefinieerd met de tag targetID dat in dit voorbeeld wordt gedefinieerd op org.eclipse.ui.examples.readmetool.ReadmeEditor.
Met de klasse ReadmeDropActionDelegate wordt IDropDelegate geïmplementeerd. IDropDelegates ontvangen een bericht wanneer er een neerzetactie wordt uitgevoerd in de workbench.
Het extensiepunt voor deze actie is org.eclipse.ui.dropActions.