属性页面是用户与对象的属性交互的友好方法。与“属性”视图(它限制可用于编辑对象属性的空间)不同,属性页面的有利之处在于具有使用标签、图标等来定义更大、更复杂控件的自由。还可将逻辑上为一致的各属性群集在一个页面中,而不是分散在属性表中。但是,在大多数应用程序中,通过属性表公开对象的某些属性而通过属性页面公开另一些属性是很恰当的。
属性页面显示在当在对象的弹出菜单上选择“属性”菜单项时通常可见的对话框中。除对象类之外,还可选择提供名称过滤器来仅注册特定对象类型的属性页面。
如果这些过滤机制不足以满足要求,则属性页面可以使用过滤机制。在这种情况下,将在一系列键值对中描述目标对象的属性。适用于选择的属性是特定于类型的,且超出了工作台本身的域,因此工作台将代表在此级别上过滤为实际选择的操作。
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT page (filter* , keywordReference*)>
<!ATTLIST page
id CDATA #REQUIRED
name CDATA #REQUIRED
icon CDATA #IMPLIED
objectClass CDATA #REQUIRED
class CDATA #REQUIRED
nameFilter CDATA #IMPLIED
adaptable (true | false)
category CDATA #IMPLIED>
<!ELEMENT filter EMPTY>
<!ATTLIST filter
name CDATA #REQUIRED
value CDATA #REQUIRED>
此元素用来对当前选择中的每个对象的属性状态求值。仅当选择中的每个对象都具有指定的属性状态时才匹配。选择中的每个对象都必须实现或适用于 org.eclipse.ui.IActionFilter。
<!ELEMENT keywordReference EMPTY>
<!ATTLIST keywordReference
id CDATA #IMPLIED>
属性页对关键字的引用。请参阅关键字扩展点。
<extension point=
"org.eclipse.ui.propertyPages"
>
<page id=
"com.xyz.projectPage"
name=
"XYZ Java Properties"
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 and others.
All rights reserved. This program and the accompanying materials are made
available under the terms of the Eclipse Public License v1.0 which accompanies
this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html