Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » XYZEditPart Compiler Error - Top Level Node represented by Label
XYZEditPart Compiler Error - Top Level Node represented by Label [message #468406] Wed, 05 August 2009 13:17 Go to next message
Eclipse UserFriend
Originally posted by: ML1984.gmx.de

This is a multi-part message in MIME format.
--------------040407040401020404030701
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi GMF community,

I am experiencing a strange compiler error after generating code on the
basis of the attached models.

Brief model description:

GRAPHICAL DEF. MODEL

Figure Descriptor: ElemFigure
Label ElemFigure
ChildAccess getFigureElemFigure

DiagramLabel: ElemName
Accessor: ChildAccess getFigureElemFigure
Figure: Figure Descriptor ElemFigure
External: false

MAPPING MODEL

Top Node Reference
Node Mapping
Diagram Node: Diagram Label ElemName
Feature Label Mapping
Diagram Label: Diagram Label ElemName

Error in ElemEditPart: getFigureElemFigure() is not applicable to
WrappingLabel

/**
* @generated
*/
public WrappingLabel getPrimaryShape() {
return (WrappingLabel) primaryShape;
}

/**
* @generated
*/
protected boolean addFixedChild(EditPart childEditPart) {
if (childEditPart instanceof ElemNameEditPart) {
((ElemNameEditPart) childEditPart).setLabel(getPrimaryShape()
.getFigureElemFigure());
return true;
}
return false;
}

Is this a bug?
If yes, is there a bug report in Bugzilla, that I have missed?

Cheers,
Mark

--------------040407040401020404030701
Content-Type: text/xml;
name="test.gmfgen"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.gmfgen"

<?xml version="1.0" encoding="UTF-8"?>
<gmfgen:GenEditorGenerator xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gmfgen="http://www.eclipse.org/gmf/2009/GenModel">
<diagram
visualID="1000"
editPartClassName="DiaEditPart"
itemSemanticEditPolicyClassName="DiaItemSemanticEditPolicy"
canonicalEditPolicyClassName="DiaCanonicalEditPolicy"
iconProviderPriority="Low"
validationProviderPriority="Low">
<diagramRunTimeClass
href=" ../../../plugin/org.eclipse.gmf.runtime.notation/model/notat ion.genmodel#//notation/Diagram "/>
<elementType
xsi:type="gmfgen:MetamodelType"
editHelperClassName="DiaEditHelper"/>
<viewmap
xsi:type="gmfgen:FigureViewmap"
figureQualifiedClassName="org.eclipse.draw2d.FreeformLayer"/ >
<domainDiagramElement
href="test.genmodel#//test/Dia"/>
<topLevelNodes
visualID="2001"
editPartClassName="ElemEditPart"
itemSemanticEditPolicyClassName="ElemItemSemanticEditPolicy "
notationViewFactoryClassName="ElemViewFactory"
canonicalEditPolicyClassName="ElemCanonicalEditPolicy"
graphicalNodeEditPolicyClassName="ElemGraphicalNodeEditPolicy "
createCommandClassName="ElemCreateCommand">
<diagramRunTimeClass
href=" ../../../plugin/org.eclipse.gmf.runtime.notation/model/notat ion.genmodel#//notation/Node "/>
<elementType
xsi:type="gmfgen:MetamodelType"
editHelperClassName="ElemEditHelper"/>
<viewmap
xsi:type="gmfgen:FigureViewmap"
figureQualifiedClassName="org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel ">
<attributes
xsi:type="gmfgen:ResizeConstraints"/>
</viewmap>
<modelFacet>
<metaClass
href="test.genmodel#//test/Elem"/>
<containmentMetaFeature
href="test.genmodel#//test/Dia/elems"/>
<childMetaFeature
href="test.genmodel#//test/Dia/elems"/>
</modelFacet>
<labels
visualID="5001"
editPartClassName="ElemNameEditPart"
itemSemanticEditPolicyClassName="ElemNameItemSemanticEditPolicy "
notationViewFactoryClassName="ElemNameViewFactory">
<diagramRunTimeClass
href=" ../../../plugin/org.eclipse.gmf.runtime.notation/model/notat ion.genmodel#//notation/Node "/>
<viewmap
xsi:type="gmfgen:ParentAssignedViewmap"
getterName="getFigureElemFigure"
figureQualifiedClassName="org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel "/>
<modelFacet
xsi:type="gmfgen:FeatureLabelModelFacet"
parser="//@labelParsers/@implementations.0">
<metaFeatures
href="test.genmodel#//test/Elem/name"/>
<editableMetaFeatures
href="test.genmodel#//test/Elem/name"/>
</modelFacet>
</labels>
</topLevelNodes>
<palette>
<groups
title="test">
<entries
xsi:type="gmfgen:ToolEntry"
title="Elem"
description="Create new Elem"
genNodes="//@diagram/@topLevelNodes.0"/>
</groups>
</palette>
<preferencePages
xsi:type="gmfgen:GenStandardPreferencePage"
iD="de.hpi.sam.test.diagram.general"
name="Test Diagram">
<children
xsi:type="gmfgen:GenStandardPreferencePage"
iD="de.hpi.sam.test.diagram.appearance"
name="Appearance"
kind="Appearance"/>
<children
xsi:type="gmfgen:GenStandardPreferencePage"
iD="de.hpi.sam.test.diagram.connections"
name="Connections"
kind="Connections"/>
<children
xsi:type="gmfgen:GenStandardPreferencePage"
iD="de.hpi.sam.test.diagram.printing"
name="Printing"
kind="Printing"/>
<children
xsi:type="gmfgen:GenStandardPreferencePage"
iD="de.hpi.sam.test.diagram.rulersAndGrid"
name="Rulers And Grid"
kind="RulersAndGrid"/>
</preferencePages>
</diagram>
<plugin>
<requiredPlugins>org.eclipse.draw2d</requiredPlugins>
<requiredPlugins>org.eclipse.gmf.runtime.draw2d.ui</requiredPlugins >
</plugin>
<editor/>
<navigator>
<childReferences
child="//@diagram"/>
<childReferences
parent="//@diagram"
child="//@diagram/@topLevelNodes.0"/>
</navigator>
<diagramUpdater/>
<propertySheet>
<tabs
xsi:type="gmfgen:GenStandardPropertyTab"
iD="appearance"/>
<tabs
xsi:type="gmfgen:GenStandardPropertyTab"
iD="diagram"/>
<tabs
xsi:type="gmfgen:GenCustomPropertyTab"
iD="domain"
label="Core">
<filter
xsi:type="gmfgen:TypeTabFilter">
<types>org.eclipse.gmf.runtime.notation.View</types>
<types>org.eclipse.gef.EditPart</types>
<generatedTypes>abstractNavigatorItem</generatedTypes>
</filter>
</tabs>
</propertySheet>
<domainGenModel
href="test.genmodel#/"/>
<labelParsers
extensibleViaService="true">
<implementations
xsi:type="gmfgen:PredefinedParser"
uses="//@diagram/@topLevelNodes.0/@labels.0/@modelFacet"/>
</labelParsers>
<contextMenus
context="//@diagram">
<items
xsi:type="gmfgen:LoadResourceAction"/>
</contextMenus>
</gmfgen:GenEditorGenerator>

--------------040407040401020404030701
Content-Type: text/xml;
name="test.gmfgraph"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.gmfgraph"

<?xml version="1.0" encoding="UTF-8"?>
<gmfgraph:Canvas xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gmfgraph="http://www.eclipse.org/gmf/2006/GraphicalDefinition" name="test">
<figures
name="Default">
<descriptors
name="ElemFigure">
<actualFigure
xsi:type="gmfgraph:Label"
name="ElemFigure"/>
<accessors
figure="//@figures.0/@descriptors.0/@actualFigure"/>
</descriptors>
</figures>
<labels
name="ElemName"
figure="ElemFigure"
resizeConstraint="NONE"
elementIcon="false"
accessor="//@figures.0/@descriptors.0/@accessors.0"/>
</gmfgraph:Canvas>

--------------040407040401020404030701
Content-Type: text/xml;
name="test.gmfmap"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.gmfmap"

<?xml version="1.0" encoding="UTF-8"?>
<gmfmap:Mapping xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gmfmap="http://www.eclipse.org/gmf/2008/mappings"
xmlns:gmftool="http://www.eclipse.org/gmf/2005/ToolDefinition">
<nodes>
<containmentFeature
href="test.ecore#//Dia/elems"/>
<ownedChild>
<domainMetaElement
href="test.ecore#//Elem"/>
<labelMappings
xsi:type="gmfmap:FeatureLabelMapping">
<diagramLabel
href="test.gmfgraph#ElemName"/>
<features
href="test.ecore#//Elem/name"/>
<editableFeatures
href="test.ecore#//Elem/name"/>
</labelMappings>
<tool
xsi:type="gmftool:CreationTool"
href="test.gmftool#//@palette/@tools.0/@tools.0"/>
<diagramNode
href="test.gmfgraph#ElemName"/>
</ownedChild>
</nodes>
<diagram>
<diagramCanvas
href="test.gmfgraph#test"/>
<domainModel
href="test.ecore#/"/>
<domainMetaElement
href="test.ecore#//Dia"/>
<palette
href="test.gmftool#//@palette"/>
</diagram>
</gmfmap:Mapping>

--------------040407040401020404030701
Content-Type: text/xml;
name="test.gmftool"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.gmftool"

<?xml version="1.0" encoding="UTF-8"?>
<gmftool:ToolRegistry xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:gmftool="http://www.eclipse.org/gmf/2005/ToolDefinition">
<palette
title="testPalette">
<tools
xsi:type="gmftool:ToolGroup"
title="test">
<tools
xsi:type="gmftool:CreationTool"
title="Elem"
description="Create new Elem">
<smallIcon
xsi:type="gmftool:DefaultImage"/>
<largeIcon
xsi:type="gmftool:DefaultImage"/>
</tools>
</tools>
</palette>
</gmftool:ToolRegistry>

--------------040407040401020404030701
Content-Type: text/xml;
name="test.ecore"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.ecore"

<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="test"
nsURI="file://test.ecore" nsPrefix="test">
<eClassifiers xsi:type="ecore:EClass" name="Dia">
<eStructuralFeatures xsi:type="ecore:EReference" name="elems" upperBound="-1"
eType="#//Elem" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Elem">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>

--------------040407040401020404030701
Content-Type: text/xml;
name="test.genmodel"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="test.genmodel"

<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/de.hpi.sam.test/src"
modelPluginID="de.hpi.sam.test" modelName="Test" importerID="org.eclipse.emf.importer.ecore"
complianceLevel="6.0" copyrightFields="false">
<foreignModel>test.ecore</foreignModel>
<genPackages prefix="Test" disposableProviderFactory="true" ecorePackage="test.ecore#/">
<genClasses ecoreClass="test.ecore#//Dia">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference test.ecore#//Dia/elems"/>
</genClasses>
<genClasses ecoreClass="test.ecore#//Elem">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute test.ecore#//Elem/name"/>
</genClasses>
</genPackages>
</genmodel:GenModel>

--------------040407040401020404030701--
Re: XYZEditPart Compiler Error - Top Level Node represented by Label [message #478344 is a reply to message #468406] Thu, 06 August 2009 09:16 Go to previous message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Mark L.,

> Top Node Reference
> Node Mapping
> Diagram Node: Diagram Label ElemName
You have to refere DiagramNode (not DiagramLabel here).
Try reading tutorials to get a basic understanding of corresponding .gmfgraph
model.

-----------------
Alex Shatalin
Previous Topic:how to resize a child (rect figure) in compartment to the size (bounds) of compartment??
Next Topic:How to generate different icon for each label?
Goto Forum:
  


Current Time: Fri Apr 26 14:13:49 GMT 2024

Powered by FUDForum. Page generated in 0.04414 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top