Metamodel Integration UI Providers

Identifier:
com.ibm.xtools.mmi.ui.MMIUIProviders

Since:
This extension point is new to Version 7.0.

Description:
This extension point defines the semantics of Meta Model Integration User Interface providers. A Meta Model Integration User Interface Provider provides handlers that handle common diagramming tasks, such as extracting the sources from an UI object or obtaining the EClass of a source element. This extension point also provides internal support for Browse Diagrams and Related Elements handlers.

Configuration Markup:

<!ELEMENT extension (MMIUIProvider*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT MMIUIProvider (Priority , MMIUIHandler* , MMIShowRelatedElementsHandler* , MMIBrowseDiagramHandler* , OpenStructuredReferenceHandler*)>

<!ATTLIST MMIUIProvider

class CDATA #REQUIRED>

Visualization UI provider provides handlers for base ui operations, relationships for Browse Diagrams, show related elements, open VizRef.



<!ELEMENT Priority EMPTY>

<!ATTLIST Priority

name (Highest|High|Lowest|Low|Medium) >

Priority of this provider



<!ELEMENT MMIUIHandler (enablement)>

<!ATTLIST MMIUIHandler

uiObjectClass CDATA #REQUIRED

name          CDATA #IMPLIED>

Description of handler for base visualization ui operations. A MMIUIHandler is defined by the class of the objects that this handler can handle, and the kind of the diagram on which this object is handled. Name of the MMIUIHandler is optional.



<!ELEMENT MMIShowRelatedElementsHandler (StructuredReferenceProviderId+)>

<!ATTLIST MMIShowRelatedElementsHandler

name CDATA #IMPLIED>

Internal handler for showing related MMI elements.



<!ELEMENT MMIBrowseDiagramHandler (StructuredReferenceProviderId+)>

<!ATTLIST MMIBrowseDiagramHandler

name CDATA #IMPLIED>

Internal handler to return relationships to consider when making a Browse Diagram. Look at IBrowseDiagramHandler for more details.



<!ELEMENT StructuredReferenceProviderId EMPTY>

<!ATTLIST StructuredReferenceProviderId

id CDATA #REQUIRED>

Description of StructuredReferenceProviderId, similar to one described in StructuredReerenceProviders.exsd.



<!ELEMENT OpenStructuredReferenceHandler (StructuredReferenceProviderId+)>

<!ATTLIST OpenStructuredReferenceHandler

name CDATA #IMPLIED>

Handler that handles the action to perform when user requests to perform an open action on a StructuredReference.



The DiagramType element is deprecated

<!ELEMENT DiagramType EMPTY>

<!ATTLIST DiagramType

id CDATA #REQUIRED>

The string representation of the diagram's type, e.g. "Freeform"



Examples:
Following is an example of a MMI UI Provider.


<extension
      id="pdeumlvizuiprovider"
      name="MMI UI Provider for PDE"
      point="com.ibm.xtools.mmi.ui.MMIUIProviders">
   <MMIUIProvider class="com.ibm.xtools.umlviz.ui.examples.pde.internal.ui.providers.PdeUmlVizUIProvider">
      <Priority name="Medium"/>
      <MMIUIHandler
            name="PdeVizUIHandler"
            uiObjectClass="org.eclipse.core.resources.IFile">
         <enablement>
            <or>
               <test property="com.ibm.xtools.mmi.ui.DiagramTypePropertyTester" value="Freeform"/>
               <test property="com.ibm.xtools.mmi.ui.DiagramTypePropertyTester" value="Class"/>
               <test property="com.ibm.xtools.mmi.ui.DiagramTypePropertyTester" value="Deployment"/>
            </or>
         </enablement>
      </MMIUIHandler>
      <OpenStructuredReferenceHandler name="PdeVizOpenHandler">
         <StructuredReferenceProviderId id="pde.IPluginBase"/>
      </OpenStructuredReferenceHandler>
   </MMIUIProvider>
</extension>

Supplied Implementation:
The platform itself does not have any predefined MMIUIProvider Particular product installs may include MMI UI providers as required. Please see the Example PDE Visualizer for an example MMIUIProvider.


Licensed Materials - Property of IBM
(C) Copyright IBM Corp. 2002, 2006. All Rights Reserved.
US Government Users Restricted Rights - Use, duplication or disclosure
restricted by GSA ADP Schedule Contract with IBM Corp.