Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

Eclipse GMF Guide
Previous Page Home Next Page

Modeling Assistant Providers

Identifier:
org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders

Since:
[Enter the first release in which this extension point appears.]

Description:
This extension point is used to define modeling assistant providers for the modeling assistant service. The modeling assistant service allows plug-ins to modify or contribute to the modeling assistant behavior (e.g. connector handles).

Configuration Markup:

<!ELEMENT extension ( modelingAssistantProvider+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED

>

  • point - The identifier of the extension point, i.e. org.eclipse.gmf.runtime.emf.ui.modelingAssistantProvider
  • id - The identifier of the extension, e.g. MyModelingAssistantProvider.
  • name - The name of the extension, e.g. %ext.myModelingAssistantProvider.

<!ELEMENT modelingAssistantProvider ( Priority , object* , context*)>

<!ATTLIST modelingAssistantProvider

class CDATA #REQUIRED

>

The modeling assistant provider description tag


  • class - The fully qualified name of the modeling assistant provider class

<!ELEMENT Priority EMPTY>

<!ATTLIST Priority

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

>

The description for the priority of the modeling assistant provider


  • name - The priority of the provider. It can be one of the following values: .

<!ELEMENT object ( method* , staticMethod*)>

<!ATTLIST object

id    CDATA #REQUIRED

class CDATA #IMPLIED

>

A descriptor of an object that is examined by this provider. The object descriptor can include an optional set of methods to call on the object.


  • id - A unique (within the context of this provider definition) identifier for the object
  • class - The fully qualified name of a class/interface that is assignable from or adaptable to the object. The name could be followed (between paranthesis "()") by the id of a plugin whose classloader is able to load that class. The finaly syntax is: className<(plugin id)>?

<!ELEMENT method ( value* , notValue*)>

<!ATTLIST method

name     CDATA #REQUIRED

value    CDATA #IMPLIED

notValue CDATA #IMPLIED

>

A method to call by reflection on the object. The method has a name and a value. The value could be described by its string representation (value & notValue), or as an object "value" or "notValue". The rules of evaluation are as follows: 1- The return value string has to be in the "value" string set. 2- The return value string has to be not in the "notValue" string set. 3- The return value object has to be in the "value" object set. 4- The return value object has to be not in the "notValue" object set.


  • name - The name of the method followed by an optional paramter set between paranthesis "()". The parameter set can contain any number of string parameters (literals). other param types are not supported. The method name could contain nested calling separated by "." The general format for this method name is : *>?).<*>?)>*
  • value - A comma-separated (",") list of string representations of the method return value. The string representation of the value is expected to be "one" of those in the list. The syntax to use is the following: <,>* If (",") is expected to be in one of the strings, it has to be escaped by a forward slash ("\"). "null" is accepted as a string and it means (a null object).
  • notValue - A comma-separated (",") list of string representations of the method return value that is not expected (the execulsion set). The string representation of the value is expected "not" to be "one" of those in the list. The syntax to use is the following: <,>* If (",") is expected to be in one of the strings, it has to be escaped by a forward slash ("\"). "null" is accepted as a string and it means (a null object).

<!ELEMENT staticMethod ( value* , notValue*)>

<!ATTLIST staticMethod

name     CDATA #REQUIRED

value    CDATA #IMPLIED

notValue CDATA #IMPLIED

>

A static method to call by reflection on the class. The static method has a name and a value. The value could be described by its string representation (value & notValue), or as an object "value" or "notValue". The rules of evaluation are as follows: 1- The return value string has to be in the "value" string set. 2- The return value string has to be not in the "notValue" string set. 3- The return value object has to be in the "value" object set. 4- The return value object has to be not in the "notValue" object set.


  • name - The name of the Static Method, the format should be PluginID\ClassName.method followed by an optional paramter set between paranthesis "()". The parameter set can contain any number of primitive parameters or %Context(pluginID/className) to use the context object as a parameter . other param types are not supported. The method name could contain nested calling separated by "." The general format for this method name is : *>?).<*>?)>*
  • value - A comma-separated (",") list of string representations of the method return value. The string representation of the value is expected to be "one" of those in the list. The syntax to use is the following: <,>* If (",") is expected to be in one of the strings, it has to be escaped by a forward slash ("\"). "null" is accepted as a string and it means (a null object).
  • notValue - A comma-separated (",") list of string representations of the method return value that is not expected (the execulsion set). The string representation of the value is expected "not" to be "one" of those in the list. The syntax to use is the following: <,>* If (",") is expected to be in one of the strings, it has to be escaped by a forward slash ("\"). "null" is accepted as a string and it means (a null object).

<!ELEMENT value ( method*)>

<!ATTLIST value

class CDATA #IMPLIED

>

A descriptor of an object that represents a method's returned value. The descriptor can include an optional set of methods to call on the "value" object.


  • class - The fully qualified name of a class/interface that is assignable from or adaptable to the "value" object. The name could be followed (between paranthesis "()") by the id of a plugin whose classloader is able to load that class. The finaly syntax is: className<(plugin id)>?

<!ELEMENT notValue ( method*)>

<!ATTLIST notValue

class CDATA #IMPLIED

>

A descriptor of an object that represents a method's returned value that is not required. The descriptor can include an optional set of methods to call on the "notValue" object.


  • class - The fully qualified name of a class/interface that is assignable from or adaptable to the "value" object. The name could be followed (between paranthesis "()") by the id of a plugin whose classloader is able to load that class. The finaly syntax is: className<(plugin id)>?

<!ELEMENT context EMPTY>

<!ATTLIST context

operationId CDATA #IMPLIED

elements    CDATA #IMPLIED

>

The context of a modeling assistant provider.


  • operationId - A string representation of the operation id in this context (see IModelingAssistantOperation). If this field is omitted, the provider will be considered for all operation types.
  • elements - A comma-separated list of object ids (from the provider XML definition) that are valid element context(s) for the operation id in this context description. If this field is omitted, the provider will be considered for all element types.

Examples:
Here is an example for a modeling assistant provider that provides types for all outgoing connector handle gestures on classes and interfaces.

   <extension id=
"LogicModelingAssistantProvider"
 name=
"%logic.provider.modelingassistant"
 point=
"org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders"
>
      <modelingAssistantProvider class=
"org.eclipse.gmf.examples.runtime.diagram.logic.internal.providers.LogicModelingAssistantProvider"
>
         <Priority name=
"Low"
/>
         <object class=
"org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.ConnectionPointEditPart(org.eclipse.gmf.examples.runtime.diagram.logic)"
 
          id=
"CONNECTIONPOINT"
>                        
         </object>
         <object class=
"org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicFlowCompartmentEditPart(org.eclipse.gmf.examples.runtime.diagram.logic)"
 
          id=
"LOGIC_FLOW_COMPARTMENT"
>               
         </object>
         <object class=
"org.eclipse.gmf.examples.runtime.diagram.logic.internal.editparts.LogicShapeCompartmentEditPart(org.eclipse.gmf.examples.runtime.diagram.logic)"
 
          id=
"LOGIC_SHAPE_COMPARTMENT"
>               
         </object>
         <context elements=
"CONNECTIONPOINT,LOGIC_FLOW_COMPARTMENT,LOGIC_SHAPE_COMPARTMENT"
/>
      </modelingAssistantProvider>
   </extension>

Supplied Implementation:
[Enter information about supplied implementation of this extension point.]


Copyright (c) 2005 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v10.html


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire