Dette dokument indeholder beskrivelser af nogle af de mere interessante eller vigtige ændringer, der er foretaget på Eclipse-platformen og SWT til release 3.2 af Eclipse af interesse for plugin-udviklere.
Der er også mange nye funktioner, der er orienteret mod slutbrugere af platformen, der kan ses i Nye funktioner i brugervejledningen til arbejdsbænken.
Ændringer til platform
|
|
Runtime-refactoring |
For at gøre Eclipse-runtime mere fleksibel og tillade uafhængig brug af runtime-komponenter er plugin'en org.eclipse.core.runtime opdelt i flere plugins:
Nye API'er er tilføjet for at understøtte styring af split-runtime-dele. Runtime-refactoring bør være transparent for andre plugins. Der er flere oplysninger under overførselsguiden for Eclipse 3.2. |
Common Navigator |
En ny plugin, org.eclipse.ui.navigator, introducerer en struktur for bygning af fremvisere, der kombinerer indhold fra flere domænemodeller.
Strukturen tillader deklarative bidrag af indhold, etiketter, funktioner, filtre og andre muligheder. Plugin'en org.eclipse.ui.navigator.resources
stiller en konkret brug af denne struktur i form af en Project Explorer-oversigt og deklarative oversigtsudvidelser til
IResource-modellen til rådighed. |
Skillebladsinddelt egenskabsstruktur |
En skillebladsinddelt egenskabsstruktur er tilføjet. Den skillebladsinddelte struktur indeholder en side med et erstatningsegenskabsark, der tillader egenskaber at blive vist i oversigten Egenskaber vha. vilkårlige kontroller, der er organiseret af skilleblade og afsnit, der leveres via udvidelsesregistreringsdatabasen.
Der er flere oplysninger i artiklen om Eclipses skillebladsinddelte egenskabsoversigt. |
Filsystem-API |
En ny plugin, org.eclipse.core.filesystem, introducerer et ny generisk API til interaktion med filsystemer. Platformen er overført til at anvende dette filsystem-API i stedet for java.io-API'er. Det betyder, at ressourcer kan oprettes i vilkårlige baggrundsfilsystemer, og atplugins kan stille understøttelse til rådighed for nye typer filsystemer. Understøttelse er tilføjet til projektet og sammenkædede ressourceguider til oprettelse af ressourcer, der er sammenkædet med andre filsystemer. Plugins, der definerer alternative filsystemer, kan hægte sig på denne guideunderstøttelse ved at bruge udvidelsespunktet org.eclipse.ui.ide.filesystemSupport. |
Kategorisering tilføjet til Import og Eksport |
Udvidelsespunkterne |
Tip til annoteringer i teksteditorer |
Boblehjælp til annotation er skubbet ned fra JDT-tekst til platformstekst. Der er installeret understøttelse til boblehjælp til tekst, lodret søjle og oversigtssøjle af TextSourceViewerConfiguration , der anvendes af teksteditorer:
|
Annotationsnavigation i teksteditorer |
Annotationsnavigation er skubbet ned fra JDT-tekst til platformstekst og er nu tilgængelig i alle teksteditorer:
|
JFace-feltassistance |
JFace introducerer ny understøttelse til at assistere brugeren ved udfyldelse af felter i dialogbokse og formularer. Pakken org.eclipse.jface.fieldassist stiller klasser til rådighed, der lader dig dekorere kontroller med billeder og boblehjælp. Det kan anvendes til at markere påkrævede felter i en dialogboks, vise feltbaserede fejlbetingelser eller vise meddelelser med indholdsassistance. Pakken giver også mulighed for at installere indholdsforslag på en kontrol, herunder en pop op-dialogboks med indholdsforslag, sekundære pop op'er med yderligere oplysninger og mulighed for at starte forslag eksplicit eller i et automatisk format for tastanslag.
|
Forbedringer af JFace-TreeViewer |
AbstractTreeViewer understøtter nu flere ens elementer i træstrukturen, der har hver sin overordnede kæde. Denne understøttelse kræver, at klienter aktiverer elementoversigten ved at kalde setUseHashLookup(true). TreeViewer understøtter nu træstrukturen SWT.VIRTUAL. Der er en tilsvarende lazy-indholdsudbyder ILazyTreeContentProvider, der kun returnerer indhold, når det er nødvendigt. |
Understøttelse af dynamisk hjælpeindhold |
Hjælpesystemet understøtter nu dynamisk opbygning af hjælpeindhold. Emner der er udarbejdet i XHMTL kan indeholde yderligere Eclipse-specifik markup for løbende filtrering af indhold baseret på os/ws/arch-værdier, tilstedeværelse af plugins, aktiverede muligheder osv. Fælles indhold kan inkluderes i flere dokumenter. Endelig kan plugins levere XHTML-fragmenter, der knytter sig til ankre i andre dokumenter. Alt dette gør det muligt for udviklere af oplysninger at stille dynamiske dokumenter til rådighed, der tilpasser sig selv til indholdet på fremvisningstidspunktet. |
Forbedringer af søgning i hjælpen |
Indeksering af brugerassistance og søgning er forbedret på forskellige måder. Yderligere søgedeltagere kan registreres via udvidelsespunkter, der kan tilføje indhold til Lucene-registret. Hjælp leverer nu en XHTML-søgedeltager, der kan indeksere dynamiske hjælpedokumenter, der er udarbejdet i XHMTL (se ovenfor). Desuden vil dokumenter, der tidligere ikke var i registret, blive vist, f.eks. snydeark og velkomstsider. Søgeforekomster kan nu have forskellige ikoner, og funktionen 'åbn' kan nu delegeres til søgeprogrammet. |
Problemer kan grupperes |
Problemer i oversigten Problemer kan nu grupperes. Der er standardgrupperinger efter niveau og problemtype, og flere grupper kan defineres via udvidelsespunktet org.eclipse.ui.ide.markerSupport. |
Forbedret hjælp i dialogbokse |
De fleste dialogbokse i Eclipse har nu en standardhjælpeknap i nederste venstre hjørne. Når du trykker på knappen, får du vist konteksthjælp svarende til, når du trykker F1 i Windows. Desuden vises hjælpen nu i dialogboksens tray i stedet for i et separat vindue. Tilpassede dialogbokse kan overtage denne funktionalitet ved at underklassere den nye TrayDialog i stedet for Dialog. Snydeark kan også anvendes i dialogbokse (i tray'en) for de trin, der indebærer åbning af dialogbokse. |
Indlejring af kommandolink i indhold til brugerassistance |
Link i hjælpen, snydeark og introduktionsindhold kan nu udføre kommandoer, når de aktiveres af brugeren. Kommandolink kan anvendes til at åbne indstillingssider, starte guider, vise oversigter, åbne perspektiver og til mange andre formål. Kommandostrukturen kan udvides, så mange flere brugere af kommandolink er muligt. Brugervejledning til Eclipse-arbejdsbænk er forbedret med kommandolink mange steder.
Billedet nedenfor viser to kommandolink i et hjælpeemne:
|
Understøttelse af start af kommandoer fra snydeark |
Kommandoer kan nu startes fra snydeark. Indholdsfilen nedenfor indeholder kommandoer, der kan åbne oversigten Søg og Package Explorer.
<?xml version="1.0" encoding="UTF-8"?> <cheatsheet title="Eksempel på kommandoer i et snydeark"> <intro> <description>Et snydeark viser Package Explorer</description> </intro> <item title="Vis oversigten Søg"> <description>Dette er et trin med en kommando, der viser søgeoversigten.</description> <command serialization= "org.eclipse.search.ui.views.SearchView"/> </item> <item title="Step 2"> <description>Dette er et trin med en kommando og parametre, der viser Package Explorer.</description> <command serialization="org.eclipse.ui.views.showView( org.eclipse.ui.views.showView.viewId= org.eclipse.jdt.ui.PackageExplorer)"/> <onCompletion> Kommandoeksemplet er afsluttet. </onCompletion> </item> </cheatsheet> |
Meddelelse om udførelse |
En meddelelse om udførelse kan føjes til et trin i et snydeark, der vises, når trinnet er afsluttet.
|
Sammensatte snydeark |
Sammensatte snydeark er nye i Eclipse 3.2. Et sammensat snydeark indeholder vejledning til et stort problem ved at opdele det i mindre opgaver, der hver har sit eget snydeark. Opgaver kan organiseres i grupper. Sammensatte snydeark åbnes i snydearksoversigten og startes vha. dialogboksen til valg af snydeark. Hver opgave har en beskrivelse, og link dirigerer brugeren gennem sekvensen af opgaver.
Sammensatte snydeark har en træstruktur, der viser opgaverne og deres status. Det højre/ nederste delvindue indeholder individuelle opgaver. Indholdet af et sammensat snydeark defineres i en XML-fil. Indholdsfilen kan angive, hvilke afhængigheder der er mellem opgaver, så en opgave kun kan startes, når en forudgående opgave er afsluttet. |
Stikordsregister til hjælpen |
Hjælpen har nu et stikordregister, hvor du kan registrere nøgleord fra din dokumentation og levere et link til et relevant hjælpedokument.
Registret er tilgængeligt både i hjælpeoversigten og -vinduet (oversigten vises nedenfor).
Bemærk: Registerindhold er endnu ikke tilgængeligt i SDK (registret vises kun, hvis indholdet er tilgængeligt). |
Konverteringsværktøj til XHTML-hjælpedokumenter |
PDE har en ny funktion, der hurtigt konverterer en plugins HTML-hjælpedokument til XHTML. Ud over at konvertere HTML til gyldig XHTML, opdaterer værktøjet filtypen, indholdsfortegnelsen og tilføjer nødvendige bindinger for at aktivere dynamisk indhold og søgning i XHTML-indholdet.
Efter konverteringen kan brugere anvende de nye 3.2 hjælpefunktioner, f.eks. dynamisk indholdsfiltrering, genbrug af indhold og dynamisk levering af indhold, der alt sammen kræver XHTML som indholdsformat.
Funktionen kan startes via PDE-værktøjer > Konvertér hjælpefiler til XHTML fra kontekstmenuen for plugin-projekter. |
Universal Welcome |
Ud fra vores erfaring med konkrete Velkommen-implementeringer stiller vi nu en konfigurérbar Universal Welcome til rådighed, der kan anvendes af alle produkter. Produkter kan vælge mellem 7 foruddefinerede hovedafsnit: Oversigt, De første trin, Øveprogrammer, Eksempler, Nye funktioner, Webressourcer og Overfør (Eclipse SDK anvender 4 af dem). Universal Welcome har sidelayouter og betydningsniveauer, der kan konfigureres, for hvert bidrag og kan anvendes til temaer. Den stiller også både HTML- og SWT-præsentationer til rådighed med fuld platformsdækning.
En indstillingsside til Velkommen, der stilles til rådighed af Universal Welcome, åbner for tilpasning til slutbrugere og kan inkluderes i ethvert produkt, der vil bruge funktionen. Du kan læse mere om dette under Specifikation for Universal Welcome. |
Understøttelse af konfiguration og temaer i Velkommen |
Introduktionsstrukturen har mere konfigurérbar understøttelse. En introkonfigurering kan leveres, der indeholder engangsberegning.
Denne understøttelse anvendes meget af Universal Welcome, men kan også anvendes af andre Velkommen-implementeringer.
Temaer er navngivne samlinger af CSS-filer, egenskaber og billeder, der kollektivt definerer udseendet af Velkommen-indholdet. Universal Welcome udnytter denne understøttelse ved at stille muligheder for valg af tema til rådighed og ved at levere to konkrete temaer i 3.2 3.2: 'Cirkler' og 'Lilla gitter'. |
Understøttelse af navneområde for Ant-udvidelsespunkter |
Udvidelsespunkterne org.eclipse.ant.core antTasks og antTypes tillader nu udpegning af en URI, som definitionen skal være i. Der er oplysninger om alle ændringer i programfejl 133190. |
Teamunderstøttelse af logisk modelintegration |
Et API er tilføjet, der tillader logiske modeller at deltage i teamfunktioner. I dette API kan teamudbydere:
|
SWT-ændringer
|
|
Sorteringsindikator i tabeller og træstrukturer |
Tabeller og træstrukturer understøtter nu en indikator af sorteringsretning i topteksten til kolonnen. SWT-stykker, der viser sortering efter kolonne (enkel) og sortering efter kolonne (virtuel tabel). |
Flytbare kolonner i træer |
I Eclipse 3.1 har vi tilføjet muligheden for at flytte kolonner i en tabel. Denne understøttelse er nu tilføjet til træer. Fremvisningsrækkefølgen af kolonner i en træstruktur kan ændres ved at trække kolonneoverskriften. Rækkefølgen kan også angives vha. programmet. Eksempel på stykke. |
Forbedret XP-temaunderstøttelse |
I Windows XP viser SWT nu strukturbaggrund i skillebladsfoldere. Grupper, etiketter, afkrydsningsfelter osv. er alle transparente for denne baggrund. Nu viser tilpassede widgets, f.eks. StyledText, også den korrekte ramme for det almindelige Windows XP-tema. Der er oplysninger under hyppigt stillede spørgsmål i SWT, hvordan man anvender Windows XP-udseende. |
Animerede GIF-filer |
Animerede GIF-billeder kan gemmes i en fil. Der er et eksempel under SWT-stykket. |
Meddelelse om desktopudseende |
Når indstillinger for udseende, f.eks. tema, font eller standardfarver ændres, sendes der en
|
Kassér besked |
Tidligere blev alle underordnede kasseret, så der ikke kunne henvises til dem, når en |
Tip til kolonner |
Værktøjstiptekst kan angives i en kolonneoverskrift til en tabel eller en træstruktur vha. |
Lodret coolBar |
En lodret coolbar kan oprettes vha. typen |
OpenGL-understøttelse |
Du kan nu bruge OpenGL i SWT-programmer. Grænsefladen OpenGL fungerer med tredjeparts-OpenGL-biblioteker som LWJGL. Der er eksempler under SWT-stykker |
Virtuelt træ |
Træstrukturen understøtter nu SWT.VIRTUAL-typen. Det gør det muligt at oprette træstrukturer med store mænger data hurtigt. Når TreeItems er nødvendige, oprettes de efter behov. Der er et eksempel under SWT-stykket. |
Knapper med billede og tekst |
Knapper kan nu vise billede og tekst. Funktionen understøttes i Windows XP, Mac OS X og GTK. |
HIView på Mac OS X |
SWT anvender nu HIView på Mac OS X. Det løser mange beskærings- og størrelsesproblemer. |
Indlejring af objekter i tekst |
Vha. TextLayout er det nu muligt at indlejre objekter som billeder eller widgets i tekst. Figurmetrik som stigende, faldende og bredde kan angives. Objekterne ombrydes med teksten. Der er et eksempel under SWT-stykket. |
Indryk tekst, stil den på linje og justér den |
TextLayout understøtter nu indrykning, justering og opstilling af tekst på linje. Der er et eksempel under SWT-stykket. |
Flytning af grundlinje for tekst |
Vha. TextLayout og TextStyle er det nu muligt at angive en flytning af en grundlinje for et tekstinterval. Der er et eksempel under SWT-stykket. |
HSB-farveunderstøttelse |
En farve kan oprettes ved at angive nuance, mætning og lysstyrke. Der kan desuden rettes forespørgsel om nuance, mætning og lysstyrke for en farve. Der er et eksempel under SWT-stykke. |
StyledText-opstilling på linje, indrykning og justering |
StyledText understøtter nu indrykning, justering og opstilling af tekst på linje. Der er et eksempel under SWT-stykke. |
Indbyggede objekter i StyledText |
Vha. StyledText er det nu muligt at indlejre objekter som billeder eller widgets i tekst. Objekterne ombrydes med teksten. Der er et eksempel under SWT-stykke. |
Baggrundsbillede |
Et baggrundsbillede kan angives i en kontrol. Desuden kan baggrunden overtages af underordnede widgets som etiketter. Der er et eksempel under SWT-stykke. |
Native billedindlæsning |
Konstruktøren |
Træk tekst |
Hvis aktiviteten Der er et eksempel under SWT-stykke. |
Ny ExpandBar-widget |
ExpandBar-widget'en tillader brugeren at vise og skjule samlinger af widgets ved at klikke på en toptekst. ExpandBar indeholder flere elementer, der hver har et billede og en titel i headeren. Der er et eksempel under SWT-stykke. |
Bullets i StyledText |
StyledText kan nu vise lister, der er formateret med forskellige typografier, herunder bullets, nummerering, store og små bogstaver og brugerdefinerede typografier. Der er et eksempel under SWT-stykke. |
Træstruktur med tilpasset trækning |
Træ-widget'en understøtter nu tilpasset trækning af individuelle celler. Programmer kan udvide det native udseende af træstrukturen ved at tilpasse gengivelsen af data. Programmet styrer rækkehøjde, så flere linjer tekst kan trækkes. Desuden kan det præsentere flere billeder i samme celle, ændre font eller farve flere gange og ændre den måde, markeringer trækkes på. Der er eksempler under følgende stykker: |
Tabel med tilpasset trækning |
Tabel-widget'en understøtter nu tilpasset trækning af individuelle celler. Det oprindelige udseende vedligeholdes stadig, når brugere tilpasser, hvordan celler trækkes, for at vise data i en anden form end tekst med et billede, for at vise flere linjer med tekst i en celle, for at ændre font og farve flere gange i samme celle, for at tilsidesætte trækning af native valg osv. Der er eksempler under følgende stykker: |
Træk over effekter for tabel og træ |
Tabel- og træ-widgets stiller nu visuel tilbagemelding til rådighed for, hvad der trækkes. |
Ny klasse for værktøjstip |
Den nye værktøjstipklasse kan anvendes til at vise værktøjstip, der ikke er direkte bundet til en kontrol. Disse værktøjstip kan placeres overalt og kan have enten platformens standardudseende eller udseende som en ballon som vist nedenfor. |