启动快捷方式

org.eclipse.debug.ui.filaunchShortcuts

此扩展点对与选择相关的启动提供了支持。扩展注册一种快捷方式(它出现在运行和/或调试级联菜单中),以启动工作台选择或活动编辑器。

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


<!ELEMENT perspective EMPTY>

<!ATTLIST perspective

id CDATA #REQUIRED>


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

保存有关对“运行”上下文菜单(弹出菜单)添加快捷方式的所有描述。



<!ELEMENT contextLabel EMPTY>

<!ATTLIST contextLabel

mode  (run|debug|profile)

label CDATA #REQUIRED>

指定上下文启动方式的标签。



<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

通用根元素。可以在扩展点内使用该元素来定义它的支持表达式。支持表达式的子代是使用 AND 运算符来组合的。



<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>

此元素表示对其子元素表达式求值的结果的 NOT 操作。



<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

此元素表示对其所有子元素表达式求值的结果的 AND 操作。



<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

此元素表示对其所有子元素表达式求值的结果的 OR 操作。



<!ELEMENT instanceof EMPTY>

<!ATTLIST instanceof

value CDATA #REQUIRED>

此元素用来对具有焦点的对象执行 instanceof 检查。如果对象的类型是由属性值指定的类型的子类型,则表达式将返回 EvaluationResult.TRUE。否则将返回 EvaluationResult.FALSE。



<!ELEMENT test EMPTY>

<!ATTLIST test

property CDATA #REQUIRED

args     CDATA #IMPLIED

value    CDATA #IMPLIED>

此元素用来对具有焦点的对象的属性状态求值。可以使用属性测试对象扩展点来扩展一组可以测试的属性。如果尚未装入执行实际测试的属性测试对象,则测试表达式将返回 EvaluationResult.NOT_LOADED。



<!ELEMENT systemTest EMPTY>

<!ATTLIST systemTest

property CDATA #REQUIRED

value    CDATA #REQUIRED>

通过调用 System.getProperty 方法并将结果与通过 value 属性指定的值进行比较来测试系统属性。



<!ELEMENT equals EMPTY>

<!ATTLIST equals

value CDATA #REQUIRED>

此元素用来对具有焦点的对象执行相等检查。如果对象等于由属性 value 提供的值,则表达式将返回 EvaluationResult.TRUE。否则将返回 EvaluationResult.FALSE。



<!ELEMENT count EMPTY>

<!ATTLIST count

value CDATA #REQUIRED>

此元素用来测试集合中的元素数。



<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST with

variable CDATA #REQUIRED>

此元素将要对它的所有子元素检查的对象更改为给定变量所引用的对象。如果不能解析该变量,则在对表达式求值时表达式将抛出 ExpressionException。with 表达式的子代是使用 AND 运算符来组合的。



<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST resolve

variable CDATA #REQUIRED

args     CDATA #IMPLIED>

此元素将要对它的所有子元素检查的对象更改为给定变量所引用的对象。如果不能解析该变量,则在对表达式求值时表达式将抛出 ExpressionException。with 表达式的子代是使用 AND 运算符来组合的。



<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST adapt

type CDATA #REQUIRED>

此元素用来使具有焦点的对象适用于由属性 type 指定的类型。如果尚未装入适配器或引用的类型,则表达式返回 not loaded。如果类型名根本不存在,则在求值期间它将抛出 ExpressionException。adapt 表达式的子代是使用 AND 运算符来组合的。



<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST iterate

operator (or|and) >

此元素用来对类型为 java.util.Collection 的变量进行迭代。如果具有焦点的对象不具有 java.util.Collection 类型,则在对表达式求值时将抛出 ExpressionException。



以下是启动快捷方式扩展点的一个示例:

 

<extension point=

"org.eclipse.debug.ui.launchShortcuts"

>

<shortcut id=

"com.example.ExampleLaunchShortcutId"

modes=

"run,debug"

class=

"com.example.ExampleLaunchShortcutImpl"

label=

"Example Launch Shortcut"

icon=

"icons/examples.gif"

>

<perspective id=

"org.eclipse.jdt.ui.JavaPerspective"

/>

<perspective id=

"org.eclipse.debug.ui.DebugPerspective"

/>

</shortcut>

</extension>

在上面的示例中,启动快捷方式将显示在 JavaPerspective 和 DebugPerspective 中标签为“Example Launch Shortcut”的运行和调试级联菜单中。

class 属性的值必须是实现 org.eclipse.debug.ui.ILaunchShortcut 接口的 Java 类的标准名称。