<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="GENERATOR" content="Mozilla/4.5 [en] (WinNT; I) [Netscape]">
   <meta name="Author" content="Build">
   <title>Eclipse Workbench Extension Point: Property Pages</title>
</head>
<body link="#0000FF" vlink="#800080">

<center>
<h1>
Property Pages</h1></center>
<b><i>Identifier: </i></b>org.eclipse.ui.propertyPages
<p><b><i>Description</i>: </b>This extension point is used to add additional
property page for objects of a given type.&nbsp; Once defined, these property
pages will appear in the Properties Dialog for object of that type.
<p>A property page is a user friendly way to interact with the properties
of an object.&nbsp; Unlike the Properties view, which restricts the space
available for editing an object property, a property page may benefit from
the freedom to define larger, more complex controls with labels, icons,
etc.&nbsp; Properties which logically go together may also be clustered
in a page, rather than scattered in the property sheet. However, in most
applications it will be appropriate to expose some properties of an object
via the property sheet and some via the property pages.
<p>Property pages are shown in a dialog box that is normally visible when
Properties menu item is selected on a pop-up menu for an object. In addition
to the object class, the name filter can optionally be supplied to register
property pages only for specific object types.
<p>If these filtering mechanisms are inadequate a property page
may use the <tt>filter</tt> mechanism.&nbsp; In this case the attributes
of the target object are described in a series of key value pairs.&nbsp;
The attributes which apply to the selection are type specific and beyond
the domain of the workbench itself, so the workbench will delegate filtering
at this level to the actual selection.
<p><b><i>Configuration Markup:</i></b>
<p><tt>&nbsp;&nbsp; &lt;!ELEMENT page (filter)*></tt>
<br><tt>&nbsp;&nbsp; &lt;!ATTLIST page</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; icon&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #IMPLIED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objectClass&nbsp; CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nameFilter&nbsp;&nbsp; CDATA #IMPLIED</tt>
<br><tt>&nbsp;&nbsp; ></tt>
<ul>
<li>
<b>id</b> - a unique name that will be used to identify this page</li>

<li>
<b>name</b> - a translatable name that will be used in the UI for this
page</li>

<li>
<b>icon</b> - a relative path to an icon that will be used in the UI in
addition to the page name</li>

<li>
<b>objectClass</b> - a fully qualified name of the class for which the
page is registered.</li>

<li>
<b>class</b> - a fully qualified name of the class that implements <tt>org.eclipse.ui.IWorkbenchPropertyPage</tt>
interface.</li>

<li>
<b>nameFilter</b> - an optional attribute that allows registration conditional
on wild card match applied to the target object name.</li>
</ul>
<tt>&nbsp;&nbsp; &lt;!ELEMENT filter EMPTY></tt>
<br><tt>&nbsp;&nbsp; &lt;!ATTLIST filter</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; value&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
CDATA #REQUIRED</tt>
<br><tt>&nbsp;&nbsp; ></tt>
<ul>
<li>
<b>name</b> - the name of an object attribute.</li>

<li>
<b>value</b> - the value of an object attribute.&nbsp; In combination with
the name attribute, the name value pair is used to define the target object
for a property page.</li>
</ul>
<b><i>Examples:</i></b>
<p>The following is an example of the property page definition:
<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.ui.propertyPages"></tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;page</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; id="com.xyz.projectPage"</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name="XYZ Java
Properties"</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objectClass="org.eclipse.core.resources.IFile"</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class="com.xyz.ppages.JavaPropertyPage"</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nameFilter="*.java"></tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;filter name="readOnly" value="true"/></tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/page></tt>
<br><tt>&nbsp;&nbsp;&nbsp; &lt;/extension></tt>
<p><b><i>API Information</i></b>: Attribute <tt>class</tt> must specify
a fully qualified name of the class that implements <tt>org.eclipse.ui.IWorkbenchPropertyPage</tt>.
<p><b><i>Supplied Implementation</i>: </b>Some objects provided by the
workbench may have property pages registered. Plug-ins are allowed to add
more property pages for these objects. Property pages are not limited to
workbench resources: all objects showing up in the workbench (even domain
specific objects created by the plug-ins) may have property pages and other
plug-ins are allowed to register property pages for them.
<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corporation 2000, 2001" BORDER=0 height=12 width=195></a>
</body>
</html>
