Plugging In Property Pages
The
org.eclipse.ui.propertyPages
extension point
from the base Eclipse Platform is used to contribute property pages.
What is a property page?
It is a page that shows up in the Eclipse
Properties dialog that users
get to by right-clicking on an object within any tree or table view, and selecting
the
Properties action.
Extenders supply one or more <page> elements within the beginning and ending <extension> element for this.
The attributes of this <page> element are:
-
id. A unique ID for this extension point. Not actually used, but required by Eclipse.
-
name. A translated node-name to show in the left tree view in the Eclipse-supplied
Properties dialog that comes up when the user selects "Properties..." from the pop-up menu.
-
icon. An optional icon to show in the Properties dialog for this property page.
-
class. The fully qualified name of the class that implements the Eclipse interface
org.Eclipse.ui.IWorkbenchPropertyPage. This is usually done by extending the Eclipse class
org.Eclipse.ui.dialog.PropertyPage. Your class will populate the detail page on the right of the
Eclipse-supplied Properties dialog when the node-name is selected in the left hand tree view.
-
objectClass
. Specify the class or interface of the model objects for which
this property page should be registered. Available interfaces are are identical to those in the
popupMenus
extension point.
-
filtering criteria
. To scope which objects these property pages should show up for,
there are a series of filtering attributes. These attributes are identical to those in the
popupMenus
extension point.
Programming Details
To use this extension point your class will typically extend
SystemBasePropertyPage
to
make it easier to create these property pages for remote objects. The only methods you must implement in your
class are createContentArea(Composite), which populates the details page on the right side when the node is
selected on the left side; and verifyPageContents() which, naturally, validates the contents of the page.
See the
property page tutorial for a step-by-step example.
See the
Eclipse Platform Programmer's Guide
for more background information.