Sammensatte jukselapper

Sammensatte jukselapper gir veiledning gjennom komplekse problemer ved å dele opp problemet i en rekke mindre oppgaver. Sammensatte jukselapper registreres ved hjelp av utvidelsespunktet org.eclipse.ui.cheatsheets.cheatSheetContent.

Innholdsfilens format

Den sammensatte jukselappens innhold er definert i en egen fil som samsvarer med   innholdsfilspesifikasjonen for sammensatte jukselapper. Innholdsfilen er  en XML-fil og består av  et sett med oppgaver ordnet i grupper i en trestruktur.

<compositeCheatsheet> er rotelementet i en sammensatt jukselapp. Den vil ha en enkelt rotoppgave, som kan være en <task> eller <taskGroup>. <taskGroup>-elementer kan ha en eller flere underordnede, som hver kan være en <task> eller <taskGroup>. En <task> har ikke underordnede oppgaver.

Oppgaver og oppgavegrupper kan inneholde <intro>-elementer, som inneholder teksten som skal vises før oppgaven er startet, og <onCompletion>-elementer, som inneholder teksten som skal vises når oppgaven er fullført. Både <intro>- og <onCompletion>-elementene kan inneholde skjematekstkodetype. I eksempelet nedenfor brukes kodene <b> og </b> til å gjøre teksten uthevet.

Oppgaver kan inneholde <param>-elementer. En jukselappoppgave kan ha en av disse parameterne: "id" er IDen til en registrert jukselapp, "path" er relativ bane eller URL for jukselappens innholdsfil, og "skipIntro" er  en boolsk parameter som når den er sann, gjør at  jukselappen startes på første trinn i stedet for i innledningen. Enten "id" eller "path", men ikke begge deler, må oppgis.

En <dependency>-node fra oppgave "B" til oppgave "A" representerer et krav om at oppgave A skal være fullført før oppgave B kan startes.

Parametere for jukselappoppgaver

Hvis en oppgave har kind = "cheatsheet", blir det åpnet en jukselapp når denne oppgaven startes. Det finnes tre mulige parametere for en jukselappoppgave.

Parameternavn  Beskrivelse
id IDen for en jukselapp som er registrert med utvidelsespunktet org.eclipse.ui.cheatsheets.cheatSheetContent. Dette identifiserer jukselappen som skal knyttes til denne oppgaven. Enten id eller parameteren path (men ikke begge) bør oppgis.
path URLen for en jukselapps innholdsfil. Dette kan være en absolutt URL, eller relativ til innholdsfilen for den sammensatte jukselappen. Hvis både id og path er oppgitt, blir path brukt til å finne innholdsfilen, og id blir ignorert.
showIntro En boolsk parameter med standardverdien true. Hvis "false", blir jukselappen når den startes, viser jukselappen første trinn når den startes, i stedet for introduksjonen.

Eksempel på en sammensatt jukselapp

Filen nedenfor er et eksempel på hvordan du oppretter en sammensatt jukselapp ut fra eksisterende jukselapper. Den viser hvordan du oppretter oppgavegrupper og gjør det mulig å hoppe over oppgaver.

<?xml version="1.0" encoding="UTF-8"?>
<compositeCheatsheet name="Eksempel på sammensatt jukselapp">
    <taskGroup name= "Eksempel på sammensatt jukselapp">
         <intro> Dette er et eksempel på en <b>sammensatt jukselapp</b> bygget på grunnlag av eksisterende jukselapper.
<br/><br/>Du kan velge en oppgave å arbeide med enten ved å følge hyperlinkene eller ved å velge en oppgave i treet.
  </intro>  
         <onCompletion>Gratulerer! Du har nå fullført alle oppgavene.</onCompletion>
         <task kind="cheatsheet" name= "Opprette grener eller slå sammen ved hjelp av CVS" skip="true">
              <param name = "id" value = "org.eclipse.platform.cvs_1" />
              <intro>Denne jukselappen er beregnet på CVS-brukere. Hvis du ikke bruker CVS eller ikke har planer om å
opprette grener eller slå sammen, kan du hoppe over denne oppgaven.
  </intro>
               <onCompletion>Gratulerer! Du vet nå hvordan du oppretter grener og slår sammen.</onCompletion>
         </task>
         <taskGroup name= "Opprett Java-prosjekter" kind = "sequence">
             <intro> Først skal du lære hvordan du oppretter et enkelt Java-prosjekt. Deretter oppretter du et Java-prosjekt som bruker SWT.
             <br/><br/>Denne oppgavegruppen er en sekvens, som betyr at hvis du klikker på deloppgaven
"Frittstående SWT-applikasjon", vil den ikke la oppgaven starte før
"Opprett et Java-prosjekt" er fullført.
  </intro>
              <onCompletion>Gratulerer! Du har bygget begge Java-applikasjonene.</onCompletion>
         <task kind="cheatsheet" name= "Opprett et Java-prosjekt" id = "createJavaProject">
             <param name="id" value = "org.eclipse.jdt.helloworld"/>
                 <param name="showIntro" value = "false"/>
                 <intro>Denne jukselappen hjelper deg gjennom prosessen med å opprette en enkel helloworld-applikasjon.
Jukselappen kan starte veivisere som oppretter et nytt prosjekt og en ny klasse.
  </intro>
             <onCompletion>Gratulerer. Du har opprettet en helloworld-applikasjon</onCompletion>
         </task>
             <task kind="cheatsheet" name= "Frittstående SWT-applikasjon">
                  <intro>Eclipse-plugin-moduler som bidrar til brukergrensesnittet, bruker Standard Widget Toolkit (SWT).                         Denne oppgaveveiledningen kan brukes til å lære mer om SWT.   </intro>
                  <param name = "id" value = "org.eclipse.jdt.helloworld.swt" />
                  <onCompletion>Gratulerer! Du har opprettet en SWT-applikasjon.</onCompletion>
         </task>      
         </taskGroup>
         </taskGroup>
</compositeCheatsheet>

Utvidbarhet for sammensatte jukselapper - Foreløpig i Eclipse 3.2

Sammensatte jukselapper kan utvides, men i Eclipse 3.2 er denne utvidbarheten foreløpig, og klassene kan bli endret før de inngår i API. Støtte for sammensatte jukselapper kan utvides ved hjelp av utvidelsespunktet org.eclipse.ui.cheatsheets.cheatSheetContent, som har to nye elementer: taskEditor og taskExplorer. Disse muliggjør bidrag fra oppgaveredigerere og oppgaveutforskere.

Å bidra med en oppgaveredigerer definerer en ny type oppgave som vises i oppgavedetaljseksjonen. For å bidra med en oppgaveredigerer implementerer du en konkret subklasse   TaskEditor. Deretter  legger du til et taskEditor-element i plugin.xml.

Fremstillingen av oppgaveutforskeren kan også konfigurere med et utvidelsespunkt,  en treutforsker  er inkludert i Eclipse-plattformen. Som standard er standard utforsker for en sammensatt jukselapp et tre første gang den åpnes. Et attributt i <compositeCheatSheet>-elementet gjør det mulig å overstyre standardverdien. Hvis flere enn en utforsker registreres, vil visningsmenyen inneholde et menypunkt for å bytte mellom utforskere. For å bidra med en oppgaveutforsker implementerer du en konkret subklasse av  TaskExplorer. Deretter  legger du til et taskExplorer-element i plugin.xml.

Beslektede linker

Arbeide med jukselapper
Arbeide med sammensatte jukselapper
Opprette jukselapper
Forfatterretningslinjer
Spesifikasjon av innholdsfil for jukselapper
Utvidelsespunktet org.eclipse.ui.cheatsheets.cheatSheetContent