Een eigenschappenpagina is een gebruikersvriendelijke manier om interactief te werken met de eigenschappen van een object. In tegenstelling tot de view Eigenschappen, die beperkte ruimte heeft voor het bewerken van een objecteigenschap, kunt u op een eigenschappenpagina in alle vrijheid grote, complexe besturingselementen definiëren en voorzien van labels, pictogrammen enzovoort. Eigenschappen die logisch bij elkaar horen, kunnen in clusters op een pagina worden opgenomen in plaats van verspreid over het gehele eigenschappenblad. In de meeste toepassingen is het echter verstandig om sommige eigenschappen van een object op het eigenschappenblad en andere op de eigenschappenpagina's te bewerken.
Eigenschappenpagina's worden afgebeeld in een dialoogvenster dat normaal gesproken zichtbaar is als u de optie "Eigenschappen" kiest in het voorgrondmenu van een object. Naast de objectklasse kunt u optioneel een naamfilter maken om eigenschappenpagina's alleen voor bepaalde objecten te registreren.
Als deze filtermechanismen niet toereikend zijn, kan een eigenschappenpagina zelf een filtermechanisme gebruiken. In dit geval worden de kenmerken van het doelobject beschreven in een reeks sleutelwaardeparen. De kenmerken die op de selectie van toepassing zijn, zijn typespecifiek en vallen buiten het domein van de workbench zelf. De workbench delegeert het filteren op dit niveau feitelijk naar de selectie.
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT page (filter* , keywordReference* , enabledWhen?)>
<!ATTLIST page
id CDATA #REQUIRED
name CDATA #REQUIRED
icon CDATA #IMPLIED
objectClass CDATA #IMPLIED
class CDATA #REQUIRED
nameFilter CDATA #IMPLIED
adaptable (true | false)
category CDATA #IMPLIED>
Gedeprecieerd in 3.2. Gebruik nu het kenmerk enablesFor van de ontvanger in plaats van objectClass.
<!ELEMENT filter EMPTY>
<!ATTLIST filter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Dit element wordt gebruikt om de kenmerkstatus van alle objecten in de huidige selectie te evalueren. Er wordt alleen een overeenkomst gevonden als ieder object in de selectie de opgegeven kenmerkstatus heeft. Elk object in de selectie moet org.eclipse.ui.IActionFilter implementeren of eraan aangepast zijn.
<!ELEMENT keywordReference EMPTY>
<!ATTLIST keywordReference
id CDATA #IMPLIED>
Een verwijzing naar een sleutelwoord vanuit een eigenschappenpagina. Zie het extensiepunt voor sleutelwoorden.
<!ELEMENT enabledWhen (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Een generiek hoofdelement. U kunt het element in een extensiepunt gebruiken om de beschikbaarheidsexpressie ervan te definiëren. De criteria van een beschikbaarheidsvoorwaarde worden gecombineerd met de operator AND.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Dit element is een NOT-bewerking op het evaluatieresultaat van de bijbehorende subexpressie.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Dit element is een AND-bewerking op het evaluatieresultaat van alle bijbehorende subexpressies.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Dit element is een OR-bewerking op het evaluatieresultaat van alle bijbehorende subexpressies.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Dit element wordt gebruikt om een instanceof-controle uit te voeren op het object dat de focus heeft. De expressie retourneert EvaluationResult.TRUE als het objecttype een subtype is van het type dat voor de kenmerkwaarde is opgegeven. Anders retourneert de expressie EvaluationResult.FALSE.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Dit element wordt gebruikt om de eigenschapsstatus te evalueren van het object dat de focus heeft. De testbare eigenschappen kunnen worden uitgebreid met het extensiepunt van de eigenschapstester. De testexpressie retourneert EvaluationResult.NOT_LOADED als de eigenschapstester nog niet is geladen.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Vraagt een systeemeigenschap op met de methode System.getProperty en vergelijkt het resultaat daarvan met de waarde die voor het kenmerk value is opgegeven.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Dit element wordt gebruikt om een equals-controle uit te voeren op het object dat de focus heeft. De expressie retourneert EvaluationResult.TRUE als het object gelijk is aan de waarde die voor de kenmerkwaarde is opgegeven. Anders retourneert de expressie EvaluationResult.FALSE.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Dit element wordt gebruikt om het aantal elementen van een collectie op te vragen.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
Dit element wijzigt het te inspecteren object voor alle subelementen in het object waarnaar door de opgegeven variabele wordt verwezen. Als de variabele niet kan worden omgezet, verwerpt de expressie de uitzondering ExpressionException tijdens de evaluatie. De onderliggende items van een with-expressie worden gecombineerd met de operator AND.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
Dit element wijzigt het te inspecteren object voor alle subelementen in het object waarnaar door de opgegeven variabele wordt verwezen. Als de variabele niet kan worden omgezet, verwerpt de expressie de uitzondering ExpressionException tijdens de evaluatie. De onderliggende items van een with-expressie worden gecombineerd met de operator AND.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Dit element wordt gebruikt om het focusobject aan te passen aan het type dat voor het kenmerk type is opgegeven. De expressie retourneert 'not loaded' als de adapter of het type nog niet is geladen. Als de typenaam helemaal niet bestaat, wordt de uitzondering ExpressionException verworpen tijdens de evaluatie. De criteria van een adapt-expressie worden gecombineerd met de operator AND.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Dit element wordt gebruikt om een variabele van het type java.util.Collection te doorlopen. Als het focusobject niet van het type java.util.Collection is, wordt de uitzondering ExpressionException verworpen tijdens de evaluatie.
<extension point=
"org.eclipse.ui.propertyPages"
>
<page id=
"com.xyz.projectPage"
name=
"XYZ-Javaeigenschappen"
objectClass=
"org.eclipse.core.resources.IFile"
class=
"com.xyz.ppages.JavaPropertyPage"
nameFilter=
"*.java"
>
<filter name=
"readOnly"
value=
"true"
/>
</page>
</extension>
Copyright (c) 2002, 2005 IBM Corporation en anderen.
Alle rechten voorbehouden. Dit programma en het begeleidende materiaal zijn beschikbaar gesteld onder de voorwaarden van de Eclipse Public License v1.0 die bij deze distributie is geleverd en beschikbaar is op http://www.eclipse.org/legal/epl-v10.html.