Eksempel - Readme-værktøj

Introduktion

Readme-editoren viser, hvordan du definerer dine egne udvidelsespunkter, så de kan bruges af andre plugins. Den viser også, hvordan du opretter udvidelser til indgange på pop op-ressourcemenuer, nye ressourceguider, fileditorer til en udvidelse (.readme), en tilpasset oversigt og egenskabssider.

Udfør eksemplet

Du begynder at bruge eksemplet ved at oprette en fil med filtypen .readme vha. guiden til filoprettelse eller vha. guiden til oprettelse af eksempler. Du får vist den ekstra  oversigt i eksemplet ved at vælge Vindue > Vis oversigt > Andet og udvide Readme-afsnittet. Du får vist oversigtsfunktionen ved at klikke på Readme-ikonen i oversigten Navigator.

Opret ny Readme-fil

Opret en ny fil med filtypen .readme. Vælg Ny på menuen Fil, og vælg herefter Andet... på undermenuen. Klik på Enkel i guiden, og vælg Fil i listen til venstre. Klik på Næste for at angive filnavn (sørg for, at filtypen er .readme) og den folder, filen skal opbevares i.

Guider til oprettelse af eksempler

Vælg Ny på menuen Fil, og vælg Eksempel... på undermenuen. Vælg herefter Guider til oprettelse af eksempler. Vælg Readme-fil. Klik på Næste. Vælg den folder, filen skal oprettes i. Skriv navnet på filen med filtypen .readme. Klik på Afslut.

Filtypefunktion i Readme-oversigten

Vælg en fil med filtypen .readme i oversigten Navigator. Hvis der ikke er en fil med denne filtype, skal du oprette en. På den lokale værktøjslinje i oversigten Navigator vises der en knap, og hvis du aktiverer hjælpen til den, vises teksten Udfør filtype til Readme-oversigt. Klik på knappen. Der vises en dialogboks med teksten Oversigtsfunktion udført.

Pop op-menuer

Vælg en fil med filtypen .readme i oversigten Navigator. Hvis der ikke findes en sådan fil, skal du oprette en. Vælg filen for at åbne pop op-menuen. Bemærk, at et af menupunkterne på pop op-menuen hedder Vis Readme-funktion. Vælg dette menupunkt for at åbne en dialogboks med teksten Pop op-menufunktion udført.

Indstillingsside

Vælg Indstillinger på menuen Vindue. Klik på den side, der hedder Readme-eksempel. Nu vises der et eksempel på en indstillingsside.

Egenskabsside

Vælg en fil med filtypen .readme i oversigten Navigator. Hvis der ikke findes en sådan fil, skal du oprette en. Vælg filen for at åbne pop op-menuen, og vælg menupunktet Egenskaber. Klik på den side, der hedder Readme-værktøj, for at få vist et eksempel på en egenskabsside.

Readme-fileditor

Readme-fileditoren er standardeditor for filer af typen *.readme. Opret en fil med filtypen .readme, og åbn filen ved at dobbeltklikke på den eller ved at åbne pop op-menuen,  vælge Åbn med og herefter vælge Readme-fileditor på undermenuen. Bemærk, at editorens ikon er en blyant. Det er den editor, som readme-værktøjet som standard anvender for filer af typen *.readme.

Readme-editorfunktioner

Her vises et eksempel på funktioner, som kun kan bruges i forbindelse med en bestemt editor. Når du fokuserer på en Readme-fil, vil du bemærke fire ekstra knapper på værktøjslinjen -Udfør filtype til Readme-editor, Funktion 1 i Readme-editor, Funktion 2 i Readme-editor, Funktion 3 i Readme-editor.

En undermenu med navnet Readme vises, når du fokuserer på en Readme-fileditor. Den indeholder de tidligere nævnte funktioner: Funktion 1 til Readme-editor, Funktion 2 til Readme-editor, Funktion 3 til Readme-editor.

Oversigten Readme-afsnit

Du får vist oversigten Readme-afsnit ved at vælge Vis oversigt på menuen Vindue og Andet... på undermenuen. Udvid punktet Readme, og vælg Readme-afsnit. Nu vises en liste med afsnittene i den aktuelle *.readme-fil, når du har valgt en .readme-fil i oversigten Navigator. Du kan også få vist en *.readme-fils struktur i Strukturoversigten.

En fil med filtypen .readme kan opdeles i afsnit, når de enkelte afsnit begynder med et tal. Hvis følgende tekst angives i Readme-fileditoren, vil Readme-værktøjet f.eks. registrere to afsnit. Hvis du vil se, hvordan afsnit registreres i Readme-værktøjet, skal du indtaste noget tekst i Readme-fileditoren og gemme filen ved enten at trykke på Ctrl-S eller vælge Fil->Gem. Åbn oversigten Readme-afsnit, og vælg .readme-filen i oversigten Navigator.

Eksempeltekst:

99.1 Dette er mit første afsnit
Det her er noget tekst i mit første afsnit.

99.1.1 Dette er et underafsnit
Det her er noget tekst i mit underafsnit.

Træk og placér

Du får vist Træk og placér-funktionaliteten ved at vælge et afsnit i Strukturoversigten og trække det valgte hen over en tekstfil. Indholdet af det valgte afsnit tilføjes til filen.

Hjælp

Eksemplet med Readme-værktøjet viser også, hvordan du bruger og implementerer konteksthjælp til alle de udvidelser, det stiller til rådighed - en oversigt, forskellige funktioner og en guideside. Du får vist konteksthjælp til en funktion ved at pege på et menupunkt uden at vælge det og herefter trykke på F1. Du kan også få vist kontekstrelateret hjælp (F1) i oversigten Readme-afsnit og på siden Guider til oprettelse af eksempler (i guiden Ny).
 

Oplysninger

Eksemplet med Readme-værktøjet erklæret ét udvidelsespunkt og stiller en række udvidelser til rådighed. Udvidelserne giver et ret omfattende billede af, hvordan arbejdsbænken fungerer, når den udnytter et antal mere interessante udvidelsespunkter, som er erklæret af arbejdsbænken. Udvidelserne i dette eksempel er oversigter og funktioner på oversigter, indstillingssider, egenskabssider, guider, editorer og editorfunktioner, pop op-menuer, funktionssæt, hjælpebidrag, hjælpekontekster og placeringsfunktioner.

Eksemplet omfatter desuden et udvidelsespunkt, som er erklæret i plugin-funktionen. Klassen IReadmeFileParser er påkrævet for enhver plugin, som bruger udvidelsen org.eclipse.ui.examples.readmetool.sectionParser, som dette eksempel definerer. Klassen DefaultSectionParser er et eksempel på en implementering af IReadmeFileParser.

Klassen ReadmeEditor implementerer IEditorPart og defineres som en editor til filer med filtypen .readme i plugin.xml-filen vha. udvidelsespunktet org.eclipse.ui.editors. Klassen ReadmeSectionsView implementerer IViewPart og defineres som en oversigt vha. udvidelsespunktet org.eclipse.ui.views. Dette udvidelsespunkt definerer desuden en kategori til oversigten til brug for valg af oversigter.

Der er defineret to typer indstillinger i dette eksempel, arbejdsbænkindstillinger og ressourceegenskaber. Arbejdsbænkindstillinger defineret i klassen ReadmePreferencePage, som implementererIWorkbenchPreferencePage, så den tilføjes til dialogboksen Vindue->Indstillinger. Klassen defineres i udvidelsespunktet org.eclipse.ui.preferencePages i plugin.xml-filen. De to sider med ressourceegenskaber er ReadmeFilePropertyPage og ReadmeFilePropertyPage2, som begge implementerer IWorkbenchPropertyPage. De defineres begge til at blive startet i forbindelse med IFile-typen af objectClass-koden i plugin.xml-filen i udvidelsespunktet org.eclipse.ui.propertyPages.

Klassen ReadmeCreationWizard implementerer INewWizard og defineres i udvidelsespunktet org.eclipse.ui.newWizards i plugin.xml-filen. Dette udvidelsespunkt definerer desuden kategorien for den guide, som vises, når brugeren vælger Fil->Ny->Eksempel....

Der tilføjes forskellige funktionsstubbe til dette eksempel. Funktionssættet erklærer en menu med navnet Readme-fileditor , som skal inkluderes i menulinjen i vinduet med arbejdsbænken vha. udvidelsespunktet org.eclipse.ui.actionSets. Det definerer desuden en funktion til arbejdsbænkens værktøjslinje og menulinje vha. koderne toolbarPath og menubarPath. Det bruger klassen WindowActionDelegate, som implementerer IWorkbenchWindowActionDelegate for at implementere denne funktion. Pop op-menuens funktion defineres som objectContribution af klassen PopupMenuActionDelegate i  udvidelsespunktet org.eclipse.ui.popupMenus. PopupMenuActionDelegate implementerer IObjectActionDelegate og bruger den IWorkbenchPart, der er til rådighed, til at åbne en meddelelsesdialogboks. Oversigtsfunktionen ViewActionDelegate defineres i udvidelsespunktet org.eclipse.ui.viewActions og implementerer IViewActionDelegate. Den oversigt, den vises i, defineres af koden targetID, som i dette eksempel er org.eclipse.ui.views.ResourceNavigator. Editorfunktionen defineres af klassen EditorActionDelegate, som implementerer IEditorActionDelegate og tilføjes vha. udvidelsespunktet org.eclipse.ui.editorActions. Den editor, den anvendes på, defineres vha. koden targetID, som i dette eksempel defineres i forbindelse med org.eclipse.ui.examples.readmetool.ReadmeEditor.

Klassen ReadmeDropActionDelegate implementerer IDropDelegate. IDropDelegates informeres, hver gang der udføres en placeringsfunktion på arbejdsbænken. Udvidelsespunktet for denne funktion er org.eclipse.ui.dropActions.