diff options
author | Bob Brodt | 2014-05-31 11:31:14 +0000 |
---|---|---|
committer | Bob Brodt | 2014-05-31 11:31:14 +0000 |
commit | 8a41dd1ae6dbb435092c5964fcb63b53173eac62 (patch) | |
tree | 6cb96a8d5844d5d997d08a00225d59ab52217955 | |
parent | f7b1ade239693b5f9f2ed0ba1fa07a95f201f7a4 (diff) | |
download | org.eclipse.bpmn2-modeler-8a41dd1ae6dbb435092c5964fcb63b53173eac62.tar.gz org.eclipse.bpmn2-modeler-8a41dd1ae6dbb435092c5964fcb63b53173eac62.tar.xz org.eclipse.bpmn2-modeler-8a41dd1ae6dbb435092c5964fcb63b53173eac62.zip |
Saving work.
11 files changed, 111 insertions, 54 deletions
diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/AbstractResizeContainerFeature.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/AbstractResizeContainerFeature.java index 75a05993..13327013 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/AbstractResizeContainerFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/AbstractResizeContainerFeature.java @@ -41,7 +41,7 @@ import org.eclipse.graphiti.services.Graphiti; public abstract class AbstractResizeContainerFeature extends DefaultResizeBPMNShapeFeature { protected ContainerShape rootContainer; - protected List<PictogramElement> children = new ArrayList<PictogramElement>(); + protected List<PictogramElement> descendants = new ArrayList<PictogramElement>(); protected boolean isHorizontal; protected Stack<Point> containerPos = new Stack<Point>(); @@ -64,7 +64,7 @@ public abstract class AbstractResizeContainerFeature extends DefaultResizeBPMNSh rootContainer = FeatureSupport.getRootContainer(containerShape); isHorizontal = FeatureSupport.isHorizontal(rootContainer); - children = FeatureSupport.getPoolAndLaneDescendants(rootContainer); + descendants = FeatureSupport.getPoolAndLaneDescendants(rootContainer); } @@ -93,7 +93,7 @@ public abstract class AbstractResizeContainerFeature extends DefaultResizeBPMNSh // we'll need to use this as the offset for MOVABLE Labels offset = Graphiti.getCreateService().createPoint(deltaX, deltaY); - for (PictogramElement pe : children) { + for (PictogramElement pe : descendants) { if (containerShape.getChildren().contains(pe)) { GraphicsAlgorithm ga = pe.getGraphicsAlgorithm(); Graphiti.getLayoutService().setLocation(ga, ga.getX() + deltaX, ga.getY() + deltaY); @@ -102,7 +102,7 @@ public abstract class AbstractResizeContainerFeature extends DefaultResizeBPMNSh } } - for (PictogramElement pe : children) { + for (PictogramElement pe : descendants) { if (pe instanceof FreeFormConnection) { FreeFormConnection c = (FreeFormConnection) pe; FeatureSupport.updateConnection(getFeatureProvider(), c, true); diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/LayoutContainerFeature.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/LayoutContainerFeature.java index 36f7928f..6977fff5 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/LayoutContainerFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/LayoutContainerFeature.java @@ -28,7 +28,6 @@ import org.eclipse.emf.common.util.ECollections; import org.eclipse.emf.common.util.EList; import org.eclipse.graphiti.features.IFeatureProvider; import org.eclipse.graphiti.features.context.ILayoutContext; -import org.eclipse.graphiti.mm.algorithms.AbstractText; import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm; import org.eclipse.graphiti.mm.algorithms.Polyline; import org.eclipse.graphiti.mm.algorithms.styles.Point; @@ -184,12 +183,8 @@ public class LayoutContainerFeature extends AbstractLayoutBpmn2ShapeFeature { if (FeatureSupport.isLabelShape(s)) continue; GraphicsAlgorithm childGa = s.getGraphicsAlgorithm(); - if (childGa instanceof AbstractText) { - // AbstractText text = (AbstractText)childGa; - // text.setAngle(-90); - // service.setLocationAndSize(text, 5, 0, 15, - // newHeight); - } else if (childGa instanceof Polyline) { + if (childGa instanceof Polyline) { + // this is the separator line in a Pool Polyline line = (Polyline) childGa; Point p0 = line.getPoints().get(0); Point p1 = line.getPoints().get(1); @@ -214,11 +209,8 @@ public class LayoutContainerFeature extends AbstractLayoutBpmn2ShapeFeature { if (FeatureSupport.isLabelShape(s)) continue; GraphicsAlgorithm childGa = s.getGraphicsAlgorithm(); - if (childGa instanceof AbstractText) { - // AbstractText text = (AbstractText)childGa; - // text.setAngle(0); - // service.setLocationAndSize(text, 0, 5, newWidth, 15); - } else if (childGa instanceof Polyline) { + if (childGa instanceof Polyline) { + // this is the separator line in a Pool Polyline line = (Polyline) childGa; Point p0 = line.getPoints().get(0); Point p1 = line.getPoints().get(1); @@ -261,19 +253,7 @@ public class LayoutContainerFeature extends AbstractLayoutBpmn2ShapeFeature { if (FeatureSupport.isLabelShape(s)) continue; GraphicsAlgorithm childGa = s.getGraphicsAlgorithm(); - if (childGa instanceof AbstractText) { - // AbstractText text = (AbstractText)childGa; - // if (horz) { - // text.setAngle(-90); - // service.setLocationAndSize(text, 5, 0, 15, - // ga.getHeight()); - // } - // else { - // text.setAngle(0); - // service.setLocationAndSize(text, 0, 5, ga.getWidth(), - // 15); - // } - } else if (childGa instanceof Polyline) { + if (childGa instanceof Polyline) { Polyline line = (Polyline) childGa; Point p0 = line.getPoints().get(0); Point p1 = line.getPoints().get(1); diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/lane/ResizeLaneFeature.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/lane/ResizeLaneFeature.java index 6b482a8f..6b472215 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/lane/ResizeLaneFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/containers/lane/ResizeLaneFeature.java @@ -12,11 +12,15 @@ ******************************************************************************/ package org.eclipse.bpmn2.modeler.core.features.containers.lane; +import java.util.List; + import org.eclipse.bpmn2.Lane; import org.eclipse.bpmn2.modeler.core.features.GraphitiConstants; import org.eclipse.bpmn2.modeler.core.features.containers.AbstractResizeContainerFeature; import org.eclipse.bpmn2.modeler.core.utils.BusinessObjectUtil; import org.eclipse.bpmn2.modeler.core.utils.FeatureSupport; +import org.eclipse.bpmn2.modeler.core.utils.GraphicsUtil; +import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.graphiti.features.IFeatureProvider; import org.eclipse.graphiti.features.IResizeShapeFeature; import org.eclipse.graphiti.features.context.IResizeShapeContext; @@ -70,16 +74,15 @@ public class ResizeLaneFeature extends AbstractResizeContainerFeature { } return doit; } + + @Override + public void resizeShape(IResizeShapeContext context) { + preResizeShape(context); - private int compare(int heightBefore, int widthBefore, int heightAfter, - int widthAfter) { - if (heightAfter > heightBefore || widthAfter > widthBefore) { - return 1; - } - if (heightAfter < heightBefore || widthAfter < widthBefore) { - return -1; - } - return 0; + resizeHeight(context); + resizeWidth(context); + + postResizeShape(context); } protected void resizeHeight(IResizeShapeContext context) { @@ -235,15 +238,27 @@ public class ResizeLaneFeature extends AbstractResizeContainerFeature { } @Override - public void resizeShape(IResizeShapeContext context) { - preResizeShape(context); - - resizeHeight(context); - resizeWidth(context); - - postResizeShape(context); + protected void preResizeShape(IResizeShapeContext context) { + super.preResizeShape(context); + // TODO: figure out an algorithm to resize lanes so that children + // are always visible +// List<PictogramElement> children = FeatureSupport.getPoolOrLaneChildren((ContainerShape)context.getShape()); +// Rectangle bounds = GraphicsUtil.getBoundingRectangle(children); +// int direction = 0; +// if (bounds.x < context.getX()) { +// ((ResizeShapeContext)context).setX(bounds.x); +// } +// if (bounds.y < context.getY()) { +// ((ResizeShapeContext)context).setY(bounds.y); +// } +// if (bounds.x + bounds.width > context.getWidth()) { +// ((ResizeShapeContext)context).setWidth(bounds.x + bounds.width); +// } +// if (bounds.y + bounds.height > context.getHeight()) { +// ((ResizeShapeContext)context).setHeight(bounds.y + bounds.height); +// } } - + private ContainerShape getLowestLane(ContainerShape root, boolean useFirstLane) { ContainerShape result; if (useFirstLane) { @@ -257,4 +272,14 @@ public class ResizeLaneFeature extends AbstractResizeContainerFeature { return result; } + private int compare(int heightBefore, int widthBefore, int heightAfter, + int widthAfter) { + if (heightAfter > heightBefore || widthAfter > widthBefore) { + return 1; + } + if (heightAfter < heightBefore || widthAfter < widthBefore) { + return -1; + } + return 0; + } } diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/data/AddDataFeature.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/data/AddDataFeature.java index 8fb58f63..50694864 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/data/AddDataFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/data/AddDataFeature.java @@ -24,6 +24,7 @@ import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.graphiti.features.IAddFeature; import org.eclipse.graphiti.features.IFeatureProvider; import org.eclipse.graphiti.features.context.IAddContext; +import org.eclipse.graphiti.features.context.ITargetContext; import org.eclipse.graphiti.features.context.impl.AddContext; import org.eclipse.graphiti.mm.algorithms.Polygon; import org.eclipse.graphiti.mm.algorithms.Polyline; @@ -108,5 +109,9 @@ public abstract class AddDataFeature<T extends ItemAwareElement> extends Abstrac return collectionShape; } + protected boolean isHorizontal(ITargetContext context) { + return false; + } + public abstract String getName(T t); }
\ No newline at end of file diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/label/UpdateLabelFeature.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/label/UpdateLabelFeature.java index ed8fcf4e..80c89351 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/label/UpdateLabelFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/features/label/UpdateLabelFeature.java @@ -152,7 +152,7 @@ public class UpdateLabelFeature extends AbstractBpmn2UpdateFeature { start = end+1; } } - if (start<text.length()-1) + if (start<text.length()) ss.add(text.substring(start)); String words[] = ss.toArray(new String[ss.size()]); IDimension dim = layoutService.calculateTextSize(text, font); diff --git a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/utils/GraphicsUtil.java b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/utils/GraphicsUtil.java index f7fbe17b..9c57fefa 100644 --- a/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/utils/GraphicsUtil.java +++ b/plugins/org.eclipse.bpmn2.modeler.core/src/org/eclipse/bpmn2/modeler/core/utils/GraphicsUtil.java @@ -21,6 +21,7 @@ import org.eclipse.bpmn2.di.BPMNShape; import org.eclipse.bpmn2.modeler.core.adapters.ExtendedPropertiesProvider; import org.eclipse.bpmn2.modeler.core.features.GraphitiConstants; import org.eclipse.bpmn2.modeler.core.utils.AnchorUtil.AnchorLocation; +import org.eclipse.draw2d.geometry.Rectangle; import org.eclipse.emf.ecore.EObject; import org.eclipse.graphiti.datatypes.IDimension; import org.eclipse.graphiti.datatypes.ILocation; @@ -681,4 +682,26 @@ public class GraphicsUtil { return lx-dist <= x && x <= lx+dist && ly-dist <= y && y <= ly+dist; } + public static Rectangle getBoundingRectangle(List<PictogramElement> pes) { + int xMin = Integer.MAX_VALUE; + int yMin = Integer.MAX_VALUE; + int xMax = Integer.MIN_VALUE; + int yMax = Integer.MIN_VALUE; + + for (PictogramElement pe : pes) { + if (pe instanceof Shape) { + ILocation loc = Graphiti.getPeService().getLocationRelativeToDiagram((Shape)pe); + IDimension size = calculateSize(pe); + if (loc.getX()<xMin) + xMin = loc.getX(); + if (loc.getY()<yMin) + yMin = loc.getY(); + if (loc.getX() + size.getWidth()>xMax) + xMax = loc.getX() + size.getWidth(); + if (loc.getY() + size.getHeight()>yMax) + yMax = loc.getY() + size.getHeight(); + } + } + return new Rectangle(xMin, yMin, xMax-xMin, yMax-yMin); + } } diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/plugin.xml b/plugins/org.eclipse.bpmn2.modeler.ui/plugin.xml index c275c977..c709b5ef 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/plugin.xml +++ b/plugins/org.eclipse.bpmn2.modeler.ui/plugin.xml @@ -1015,7 +1015,7 @@ <style object="DataObject" shapeBackground="D4E7F8" defaultWidth="36" defaultHeight="50"/> <style object="DataObjectReference" shapeBackground="D4E7F8" defaultWidth="36" defaultHeight="50"/> <style object="DataOutput" shapeBackground="D4E7F8" defaultWidth="36" defaultHeight="50"/> - <style object="DataStoreReference" shapeBackground="D4E7F8" defaultWidth="36" defaultHeight="50"/> + <style object="DataStoreReference" shapeBackground="D4E7F8" defaultWidth="50" defaultHeight="50"/> <style object="Message" shapeBackground="D4E7F8" defaultWidth="30" defaultHeight="20"/> <style object="EVENTS" shapeBackground="D4E7F8" defaultWidth="36" defaultHeight="36"/> diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/diagram/Bpmn2FeatureMap.java b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/diagram/Bpmn2FeatureMap.java index e1fdcecf..260aa2a0 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/diagram/Bpmn2FeatureMap.java +++ b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/diagram/Bpmn2FeatureMap.java @@ -75,6 +75,7 @@ import org.eclipse.bpmn2.TextAnnotation; import org.eclipse.bpmn2.TimerEventDefinition; import org.eclipse.bpmn2.Transaction; import org.eclipse.bpmn2.UserTask; +import org.eclipse.bpmn2.modeler.ui.features.data.DataObjectFeatureContainer.AddDataObjectFeature; @SuppressWarnings("rawtypes") public class Bpmn2FeatureMap { @@ -88,6 +89,7 @@ public class Bpmn2FeatureMap { public static final List<Class> CHOREOGRAPHY; public static final List<Class> CONVERSATION; public static final List<Class> DATA; + public static final List<Class> ALL_DATA; public static final List<Class> ARTIFACTS; public static final List<Class> SWIMLANES; public static HashSet<Class> ALL_SHAPES; @@ -157,15 +159,31 @@ public class Bpmn2FeatureMap { features.add(Transaction.class); SUBPROCESS = Collections.unmodifiableList(features); + // this is used by the tool palette + // it does NOT include DataObjectReference because + // that object needs to be handled by the {@link AddDataObjectFeature} features = new ArrayList<Class>(); features.add(DataObject.class); - features.add(DataObjectReference.class); +// features.add(DataObjectReference.class); features.add(DataStoreReference.class); features.add(DataInput.class); features.add(DataOutput.class); features.add(Message.class); DATA = Collections.unmodifiableList(features); + // and this is used by the Appearance Preference Page + // this DOES include DataObjectReference because + // we MAY want to be able to change the appearance of + // these things independently of DataObjects + features = new ArrayList<Class>(); + features.add(DataObject.class); + features.add(DataObjectReference.class); + features.add(DataStoreReference.class); + features.add(DataInput.class); + features.add(DataOutput.class); + features.add(Message.class); + ALL_DATA = Collections.unmodifiableList(features); + features = new ArrayList<Class>(); features.add(ChoreographyTask.class); features.add(SubChoreography.class); @@ -197,7 +215,7 @@ public class Bpmn2FeatureMap { ALL_SHAPES.addAll(SUBPROCESS); ALL_SHAPES.addAll(CHOREOGRAPHY); ALL_SHAPES.addAll(CONVERSATION); - ALL_SHAPES.addAll(DATA); + ALL_SHAPES.addAll(ALL_DATA); ALL_SHAPES.addAll(ARTIFACTS); ALL_SHAPES.addAll(SWIMLANES); } diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/activity/subprocess/LayoutExpandableActivityFeature.java b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/activity/subprocess/LayoutExpandableActivityFeature.java index 21063b83..e8138726 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/activity/subprocess/LayoutExpandableActivityFeature.java +++ b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/activity/subprocess/LayoutExpandableActivityFeature.java @@ -63,7 +63,7 @@ public class LayoutExpandableActivityFeature extends LayoutActivityFeature { } } } -//needResize = false; + if (needResize) { ResizeShapeContext resizeContext = new ResizeShapeContext(containerShape); resizeContext.setX(parentGa.getX()); diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/data/DataStoreReferenceFeatureContainer.java b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/data/DataStoreReferenceFeatureContainer.java index 8e6bbc29..747611e0 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/data/DataStoreReferenceFeatureContainer.java +++ b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/features/data/DataStoreReferenceFeatureContainer.java @@ -47,6 +47,7 @@ import org.eclipse.graphiti.features.IUpdateFeature; import org.eclipse.graphiti.features.context.IAddContext; import org.eclipse.graphiti.features.context.ICreateContext; import org.eclipse.graphiti.features.context.IResizeShapeContext; +import org.eclipse.graphiti.features.context.ITargetContext; import org.eclipse.graphiti.features.context.impl.AddContext; import org.eclipse.graphiti.features.impl.DefaultResizeShapeFeature; import org.eclipse.graphiti.mm.algorithms.Polygon; @@ -169,6 +170,10 @@ public class DataStoreReferenceFeatureContainer extends BaseElementFeatureContai return containerShape; } + + protected boolean isHorizontal(ITargetContext context) { + return true; + } /* (non-Javadoc) * @see org.eclipse.bpmn2.modeler.core.features.AbstractBpmn2AddFeature#getBusinessObjectType() diff --git a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/preferences/Bpmn2EditorAppearancePreferencePage.java b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/preferences/Bpmn2EditorAppearancePreferencePage.java index 2c5b3626..112e3924 100644 --- a/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/preferences/Bpmn2EditorAppearancePreferencePage.java +++ b/plugins/org.eclipse.bpmn2.modeler.ui/src/org/eclipse/bpmn2/modeler/ui/preferences/Bpmn2EditorAppearancePreferencePage.java @@ -25,6 +25,7 @@ import org.eclipse.bpmn2.modeler.core.preferences.ShapeStyle.LabelPosition; import org.eclipse.bpmn2.modeler.core.preferences.ShapeStyle; import org.eclipse.bpmn2.modeler.core.preferences.ShapeStyle.Category; import org.eclipse.bpmn2.modeler.core.preferences.ShapeStyle.RoutingStyle; +import org.eclipse.bpmn2.modeler.core.utils.ModelUtil; import org.eclipse.bpmn2.modeler.ui.Messages; import org.eclipse.bpmn2.modeler.ui.diagram.Bpmn2FeatureMap; import org.eclipse.graphiti.mm.algorithms.styles.Font; @@ -151,7 +152,7 @@ public class Bpmn2EditorAppearancePreferencePage extends PreferencePage implemen allElements.addAll(Bpmn2FeatureMap.CHOREOGRAPHY); allElements.addAll(Bpmn2FeatureMap.CONVERSATION); allElements.addAll(Bpmn2FeatureMap.SWIMLANES); - allElements.addAll(Bpmn2FeatureMap.DATA); + allElements.addAll(Bpmn2FeatureMap.ALL_DATA); allElements.addAll(Bpmn2FeatureMap.ARTIFACTS); Collections.sort(allElements, new Comparator<Class>() { @@ -422,7 +423,7 @@ public class Bpmn2EditorAppearancePreferencePage extends PreferencePage implemen conversationShapeStyles.put(c, ss); if (Bpmn2FeatureMap.SWIMLANES.contains(c)) swimLanesShapeStyles.put(c, ss); - if (Bpmn2FeatureMap.DATA.contains(c)) + if (Bpmn2FeatureMap.ALL_DATA.contains(c)) dataShapeStyles.put(c, ss); if (Bpmn2FeatureMap.ARTIFACTS.contains(c)) artifactShapeStyles.put(c, ss); @@ -755,7 +756,7 @@ public class Bpmn2EditorAppearancePreferencePage extends PreferencePage implemen String text = classNameMap.get((Class)entry.getKey()); if (text!=null) return text; - return ((Class)entry.getKey()).getSimpleName(); + return ModelUtil.toCanonicalString( ((Class)entry.getKey()).getSimpleName() ); } } return element.toString(); |