<!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。
在上面的示例中,启动快捷方式将显示在 JavaPerspective 和 DebugPerspective 中标签为“Example Launch Shortcut”的运行和调试级联菜单中。<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>
Copyright (c) 2000, 2004 IBM Corporation and others.
All rights reserved. 本程序及所附带提供的资料依据 Common Public License v1.0 的条款方可使用,本发行中提供了该许可条款,并且在以下位置也可获得该条款:http://www.eclipse.org/legal/cpl-v10.html。