Property Pages

com.ibm.etools.systems.core.propertyPages

This extension point is modelled after the eclipse workbench extension point org.eclipse.ui.propertyPages. However, because we know we are targeting remote resources, it is simplified a bit. Specifically, there is no need to specify the object class, as we assume these actions apply to remote resources, which often share a common object class. On the other hand, we need additional filtering capabilities to scope which remote resources these pages are to apply to.

To this end, there is a rich set of filtering attributes to enable fine-grained scoping by a number of criteria. These scoping attributes are the same as those for our com.ibm.etools.systems.core.popupMenus extension point.

While not fully documented here, this extension point supports the <filter> element from the org.eclipse.ui.popupMenus extension point. See its documentation in the help for information on this element. For example:

   

<filter name=

"subsystemFactoryCategory"

value=

"files"

/>

This element is for conditionally deciding whether to show the property page, very much like the attributes of the <page> element do; in fact there is some overlap.
The names supported for the <filter> element are:

<!ELEMENT extension (page+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT page EMPTY>

<!ATTLIST page

id                       CDATA #REQUIRED

name                     CDATA #REQUIRED

class                    CDATA #REQUIRED

icon                     CDATA #IMPLIED

subsystemfactoryid       CDATA #IMPLIED

subsystemfactoryCategory CDATA #IMPLIED

systemtypes              CDATA #IMPLIED

namefilter               CDATA #IMPLIED

typecategoryfilter       CDATA #IMPLIED

typefilter               CDATA #IMPLIED

subtypefilter            CDATA #IMPLIED

subsubtypefilter         CDATA #IMPLIED>

Identifies an individual property page contribution.



The following is a simple example of a property page for files or folders in any remote system type:

Example One

<extension point=

"com.ibm.etools.systems.core.propertyPages"

>

<page class=

"com.acme.myPropertyPage1"

id=

"com.acme.mypropertypage1"

name=

"Remote Folder and File Info"

typecategoryfilter=

"files"

>

</page>

</extension>

The following refines the first example so it only applies to files, versus folders, and only for local files:

Example Two

<extension point=

"com.ibm.etools.systems.core.propertyPages"

>

<page class=

"com.acme.myPropertyPage2"

id=

"com.acme.mypropertypage2"

name=

"Remote File Info"

typecategoryfilter=

"files"

typefilter=

"file"

subsystemfactoryid=

"ibm.filesLocal"

>

</page>

</extension>

The following refines the second example so it only applies to local Java files:

Example Three

<extension point=

"com.ibm.etools.systems.core.propertyPages"

>

<page class=

"com.acme.myPropertyPage3"

id=

"com.acme.mypropertypage3"

name=

"Remote Java File Info"

typecategoryfilter=

"files"

typefilter=

"file"

subsystemfactoryid=

"ibm.filesLocal"

namefilter=

"*.java"

>

</page>

</extension>

Remember, you can repeat the page elements as needed, to define multiple property pages within the same extension configuration.

Your actions must all implement the interface org.eclipse.ui.IWorkbenchPropertyPage. Typically, you will subclass one of the supplied base classes for this extension point:

There is no supplied implementation for this extension point.


(C) Copyright IBM Corp. 2002, 2004. All Rights Reserved.