Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "SCA/Components/SCA CompositeDesignerExtension"

< SCA
(Extend the SCA Composite Designer)
Line 1: Line 1:
IN PROGRESS
 
 
 
To extend the SCA Composite Designer:  
 
To extend the SCA Composite Designer:  
 
* Create a new plugin-in
 
* Create a new plugin-in
Line 33: Line 31:
  
 
* Extend the required extension points:
 
* Extend the required extension points:
* org.eclipse.gmf.runtime.emf.type.core.elementTypes
+
** org.eclipse.gmf.runtime.emf.type.core.elementTypes
* org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings
+
** org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings
* org.eclipse.stp.sca.diagram.AdaptorFactories
+
** org.eclipse.stp.sca.diagram.AdaptorFactories
* org.eclipse.stp.sca.diagram.extension.implementations
+
** org.eclipse.stp.sca.diagram.extension.implementations
* org.eclipse.stp.sca.diagram.extension.interfaces
+
** org.eclipse.stp.sca.diagram.extension.interfaces
* org.eclipse.stp.sca.diagram.extension.bindings
+
** org.eclipse.stp.sca.diagram.extension.bindings
* org.eclipse.stp.sca.diagram.ImplementationEntryPalette
+
** org.eclipse.stp.sca.diagram.ImplementationEntryPalette
* org.eclipse.stp.sca.diagram.InterfaceEntryPalette
+
** org.eclipse.stp.sca.diagram.InterfaceEntryPalette
* org.eclipse.stp.sca.diagram.BindingEntryPalette
+
** org.eclipse.stp.sca.diagram.BindingEntryPalette
  
== Extension points ==
 
  
 
== Example ==
 
== Example ==

Revision as of 12:35, 25 March 2009

To extend the SCA Composite Designer:

  • Create a new plugin-in
  • Add the following dependencies:
    • org.eclipse.core.runtime,
    • org.eclipse.core.resources,
    • org.eclipse.core.expressions,
    • org.eclipse.jface,
    • org.eclipse.ui.ide,
    • org.eclipse.ui.views,
    • org.eclipse.ui.navigator,
    • org.eclipse.ui.navigator.resources,
    • org.eclipse.emf.ecore,
    • org.eclipse.emf.ecore.xmi,
    • org.eclipse.emf.edit.ui,
    • org.eclipse.gmf.runtime.emf.core,
    • org.eclipse.gmf.runtime.emf.commands.core,
    • org.eclipse.gmf.runtime.emf.ui.properties,
    • org.eclipse.gmf.runtime.diagram.ui,
    • org.eclipse.gmf.runtime.diagram.ui.properties,
    • org.eclipse.gmf.runtime.diagram.ui.providers,
    • org.eclipse.gmf.runtime.diagram.ui.providers.ide,
    • org.eclipse.gmf.runtime.diagram.ui.render,
    • org.eclipse.gmf.runtime.diagram.ui.resources.editor,
    • org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide,
    • org.eclipse.gmf.runtime.draw2d.ui;visibility:=reexport,
    • org.eclipse.gef;visibility:=reexport,
    • org.eclipse.stp.sca.diagram.extension,
    • org.eclipse.stp.sca.diagram,
    • xyz.youmodel,
    • xyz.youmodel.edit
  • Extend the required extension points:
    • org.eclipse.gmf.runtime.emf.type.core.elementTypes
    • org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings
    • org.eclipse.stp.sca.diagram.AdaptorFactories
    • org.eclipse.stp.sca.diagram.extension.implementations
    • org.eclipse.stp.sca.diagram.extension.interfaces
    • org.eclipse.stp.sca.diagram.extension.bindings
    • org.eclipse.stp.sca.diagram.ImplementationEntryPalette
    • org.eclipse.stp.sca.diagram.InterfaceEntryPalette
    • org.eclipse.stp.sca.diagram.BindingEntryPalette


Example

<?xml version="1.0" encoding="UTF-8"?>
 
<plugin>
 
    <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
        <metamodel nsURI="http://frascati.ow2.org">
            <metamodelType id="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" name="FractalImplementation" eclass="FractalImplementation" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
                <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/>
            </metamodelType>
            <metamodelType id="org.eclipse.stp.sca.diagram.frascati.JBIBinding" name="JBIBinding" eclass="JBIBinding" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
                <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/>
            </metamodelType>
        </metamodel>
    </extension>
 
    <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
        <clientContext id="ScaClientContext">
            <enablement>
                <test property="org.eclipse.gmf.runtime.emf.core.editingDomain" value="org.eclipse.stp.sca.diagram.EditingDomain"/>
            </enablement>
        </clientContext>
        <binding context="ScaClientContext">
            <elementType ref="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/>
            <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/>
        </binding>
        <binding context="ScaClientContext">
            <elementType ref="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/>
            <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/>
        </binding>
    </extension>
 
    <extension point="org.eclipse.stp.sca.diagram.extension.implementations">
        <element typeId="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" literalField="DOCUMENT_ROOT__IMPLEMENTATION_FRACTAL" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif"/>
    </extension>
 
    <extension point="org.eclipse.stp.sca.diagram.extension.bindings">
        <element typeId="org.eclipse.stp.sca.diagram.frascati.JBIBinding" literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" literalField="DOCUMENT_ROOT__BINDING_JBI" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif"/>
    </extension>
 
    <extension point="org.eclipse.stp.sca.diagram.AdaptorFactories">
        <adaptorFactory class="org.eclipse.stp.sca.domainmodel.frascati.provider.FrascatiItemProviderAdapterFactory"/>
    </extension>
 
    <!-- Palette Provider -->
    <extension point="org.eclipse.stp.sca.diagram.ImplementationEntryPalette">
        <implementationEntry description="Create a new FractalImplementation" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif" label="Fractal (Frascati 0.4)"
type="org.eclipse.stp.sca.diagram.frascati.FractalImplementation">
        </implementationEntry>
    </extension>
 
    <extension point="org.eclipse.stp.sca.diagram.BindingEntryPalette">
        <bindingEntry description="Create a new JBIBinding" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif" label="JBI (Frascati 0.4)" type="org.eclipse.stp.sca.diagram.frascati.JBIBinding">
        </bindingEntry>
    </extension>
 
</plugin>

Copyright © Eclipse Foundation, Inc. All Rights Reserved.