Startsnelkoppelingen

org.eclipse.debug.ui.launchShortcuts

Dit extensiepunt biedt ondersteuning voor het starten op basis van selecties. Extensies registreren een snelkoppeling in de uitvoerings- en foutopsporingsmenu's, zodat de selectie in de workbench of de actieve editor kunnen worden gestart.

<!ELEMENT extension (shortcut*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT shortcut (perspective* , contextualLaunch? , enablement?)>

<!ATTLIST shortcut

id            CDATA #REQUIRED

modes         CDATA #REQUIRED

class         CDATA #REQUIRED

label         CDATA #REQUIRED

icon          CDATA #IMPLIED

category      CDATA #IMPLIED

helpContextId CDATA #IMPLIED

path          CDATA #IMPLIED>


<!ELEMENT perspective EMPTY>

<!ATTLIST perspective

id CDATA #REQUIRED>

Het element perspective is vanaf versie 3.1 gedeprecieerd. De toplevel menu's Uitvoeren/Fouten opsporen/Profileren bieden nu ondersteuning voor contextueel (selectiegevoelig) starten en daarom gaat de voorkeur uit naar het element contextualLaunch.



<!ELEMENT contextualLaunch (contextLabel* , enablement?)>

Bevat alle beschrijvingen voor het toevoegen van snelkoppelingen aan de selectiegevoelige menu's Uitvoeren/Fouten opsporen/Profileren.



<!ELEMENT contextLabel EMPTY>

<!ATTLIST contextLabel

mode  (run|debug|profile)

label CDATA #REQUIRED>

Het label voor de contextueel-startenwerkstand opgeven.



<!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.



Dit is een voorbeeld van de extensie launchShortcuts:

 

<extension point=

"org.eclipse.debug.ui.launchShortcuts"

>

<shortcut id=

"com.example.ExampleLaunchShortcutId"

modes=

"run,debug"

class=

"com.example.ExampleLaunchShortcutImpl"

label=

"Voorbeeld van startsnelkoppeling"

icon=

"icons/examples.gif"

>

<perspective id=

"org.eclipse.jdt.ui.JavaPerspective"

/>

<perspective id=

"org.eclipse.debug.ui.DebugPerspective"

/>

</shortcut>

</extension>

In het bovenstaande voorbeeld wordt een startsnelkoppeling met het label "Voorbeeld van startsnelkoppeling" afgebeeld in de vervolgmenu's Uitvoeren en Fouten opsporen van de perspectieven Java en Fouten opsporen.

De waarde van het kenmerk class moet de volledig gekwalificeerde naam zijn van de Java-klasse waarmee de interface org.eclipse.debug.ui.ILaunchShortcut wordt geïmplementeerd.

Vanaf 3.1 wordt door het foutopsporingsplatform een opdrachtafhandelingsroutine geregistreerd voor alle startsnelkoppelingen en de bijbehorende werkstanden, zodat clients toetskoppelingen kunnen definiëren. Het opdracht-ID van de afhandelingsroutines wordt gegenereerd als het ID van de startsnelkoppeling, gevolgd door een punt en de juiste werkstand. Het opdracht-ID voor het bovenstaande voorbeeld zou com.example.ExampleLaunchShortcutId.debug kunnen zijn voor het starten in de foutopsporingswerkstand. Hieronder ziet u hoe "ALT+SHIFT+D, E" aan de startsnelkoppeling wordt gekoppeld.

   

<extension point=

"org.eclipse.ui.commands"

>

<command name=

"Voorbeeld van startsnelkoppeling in foutopsporingswerkstand"

description=

"Voorbeeld van startsnelkoppeling in foutopsporingswerkstand"

categoryId=

"org.eclipse.debug.ui.category.run"

id=

"com.example.ExampleLaunchShortcutId.debug"

>

</command>

<keyBinding keySequence=

"M3+M2+D E"

contextId=

"org.eclipse.ui.globalScope"

commandId=

"com.example.ExampleLaunchShortcutId.debug"

keyConfigurationId=

"org.eclipse.ui.defaultAcceleratorConfiguration"

>

</keyBinding>

</extension>