Previous topic  Top  Next topic  Print this Topic
 

Schema of EntityProperties

 

  <!ELEMENT extension (entityPropertyContributor*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED

 

point - a fully qualified identifier of the target extension point
id - an optional identifier of the extension instance
name - an optional name of the extension instance

 

   <!ELEMENT entityPropertyContributor(subContributorOf?)>

<!ATTLIST entityPropertyContributor

id              CDATA #IMPLIED

class           CDATA #REQUIRED

name            CDATA #REQUIRED

activatorClass  CDATA #IMPLIED>

   

id - a unique identifier used to reference this property contributor.
class - the fully qualified name of the class that implements org.neontoolkit.gui.properties.IPropertyPage or org.neontoolkit.gui.properties.IMainPropertyPage for main pages
name - if there are multiple subcontributors they will be organized as tabs, and this will be the label of the tab.
activatorClass - The class name of the type of elements the defined property.page should be shown for.

 

    <!ELEMENT subContributorOf>

<!ATTLIST subContributorOf

superContributorId  CDATA #REQUIRED

priority            CDATA #IMPLIED

   

superContributorId - a unique identifier used to reference the superContributor.
priority - a numeric value defining the order of multiple contributed tabs. They are sorted ascending, i.e. 0.6 is displayed before 1.0
The interface that has to be implemented for this extension has to be the org.neontoolkit.gui.properties.IEntityPropertyPage interface. The following methods have to be implemented:
Composite createContents(Composite parent); This method is invoked, when the property page is created. The parent component is passed as argument and the child component should be created in this method and returned afterwards
void deSelect(); This method is called if a different property page is about to show because another element has been selected. Clean up operations can be done in this method.
Image getImage(); Should return the image to display in the header of the Entity Properties View if the property page is shown.
boolean isDisposed(); Should return true if the property page is disposed or false otherwise.
void refresh(); Is called if a refresh of the user interface of the property page is needed.
void refreshData(); Is called if the data model has changed and a refresh of the displayed information in the property page is needed
void setSelection(IWorkbench part, IStructuredSelection selection); Is called by the framework to pass the current selection to the associated property page.

 

There is already an abstract implementation of this page for ontology elements. This class is named com.ontoprise.ontostudio.gui.properties.BasicEntityPropertyPage. It already provides editing areas for identifiers and namespaces as well as optional documentation and representation fields.