Jump to: navigation, search

Galileo Capabilities

Revision as of 17:03, 26 January 2009 by Richard.gronback.borland.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is intended to clarify Galileo requirement bug 252807 regarding the definition of capabilities for participating projects. General information on defining capabilities can be found in the Help and this article. Note that the terms activities and capabilities are used interchangeably.

For projects not having their own capability definitions and categorization, or for those not wanting to include them in their main downloads, the following approach is suggested:

1. Create a new plug-in for your project named org.eclipse.<your-project>.ui.capabilities (or similar) in which you define activities for your UI contributions. Do not map to categories or specify default enablements in your manifest, just the activities. Categories and enablements are specified in the Galileo product branding plug-in. Below is an example definition from the org.eclipse.gmf.ui.capabilities plug-in:

<activity
    	  description="%activity.gmf.runtime.desc"
          id="org.eclipse.gmf.runtime.activity"
          name="%activity.gmf.runtime">
    </activity>
    <activityPatternBinding
          activityId="org.eclipse.gmf.runtime.activity"
          pattern="org\.eclipse\.gmf\.runtime\..*/.*">
    </activityPatternBinding>

2. Commit your plug-in and add it to the Galileo map file, indicating the proper tag you would like to have included in Galileo's build. Note that you will need to have access to the /cvsroot/callisto repository in order to complete this and subsequent steps.

3. Add your capabilities plug-in to the Galileo feature.

4. In the Galileo branding plug-in, add your activity id(s) to the appropriate category. The Planning Council will determine the appropriate categories and enablements for Galileo. Currently, the following categories and enablements are defined:

<!-- General category definitions -->
   <extension
       point="org.eclipse.ui.activities">
       
    <!-- A Modeling category, where EMF, etc. can live -->
    <category
          description="%activity.cat.modeling.desc"
          id="org.eclipse.galileo.modeling.Category"
          name="%activity.cat.modeling">
    </category>
    
    <!-- A Diagramming category where specific diagram types (i.e. UML) and supporting capabilities can live (i.e. GEF/GMF runtime) -->
    <category
          description="%activity.cat.diagramming.desc"
          id="org.eclipse.galileo.diagramming.Category"
          name="%activity.cat.diagramming">
    </category>
    
    <!-- A Model Transformation category, where JET, Xpand, etc. can live -->
    <category
          description="%activity.cat.model.transformation.desc"
          id="org.eclipse.galileo.model.transformation.Category"
          name="%activity.cat.model.transformation">
    </category>
    
   </extension>
    
   <!-- GMF activity bindings to Galileo categories -->
   <extension
       point="org.eclipse.ui.activities">
       
    <!-- GMF Tooling in Development category -->
    <categoryActivityBinding
          activityId="org.eclipse.gmf.tooling.activity"
          categoryId="org.eclipse.categories.developmentCategory">
    </categoryActivityBinding>
    
    <!-- GMF Runtime in general Diagramming category -->
    <categoryActivityBinding
          activityId="org.eclipse.gmf.runtime.activity"
          categoryId="org.eclipse.galileo.diagramming.Category">
    </categoryActivityBinding>
    
    <!-- GMF Xpand in Model Transformation category -->
    <categoryActivityBinding
          activityId="org.eclipse.gmf.xpand.activity"
          categoryId="org.eclipse.galileo.model.transformation.Category">
    </categoryActivityBinding>
    
    <!-- GMF Runtime enabled by default -->
    <defaultEnablement
          id="org.eclipse.gmf.runtime.activity">
    </defaultEnablement>
  </extension>