svn commit: r17217 - trunk/src/argouml-core-diagrams-class2: . src/org/argouml/class2/diagram
Bob Tarling <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: bobtarling
Date: 2009-08-02 14:31:00-0700
New Revision: 17217
Modified:
trunk/src/argouml-core-diagrams-class2/ArgoUML class2.launch
trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/ClassDiagram2Renderer.java
trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/UMLClassDiagram2.java
Log:
Give Figs package scope only. This breaks save and load, will attempt to address that next.
Modified: trunk/src/argouml-core-diagrams-class2/ArgoUML class2.launch
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-class2/ArgoUML%20class2.launch?view=diff&pathrev=17217&r1=17216&r2=17217
==============================================================================
--- trunk/src/argouml-core-diagrams-class2/ArgoUML class2.launch (original)
+++ trunk/src/argouml-core-diagrams-class2/ArgoUML class2.launch 2009-08-02 14:31:00-0700
@@ -35,9 +35,10 @@
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/argouml-app/lib/toolbar-1.4.1-20071227.jar" path="3" sourceAttachmentPath="/toolbar/src" sourceRootPath="" type="2"/> "/>
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry path="3" projectName="argouml-core-infra" type="1"/> "/>
<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry internalArchive="/argouml-core-infra/lib/log4j-1.2.6.jar" path="3" type="2"/> "/>
+<listEntry value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <runtimeClasspathEntry path="3" projectName="argouml-core-diagrams-structure2" type="1"/> "/>
</listAttribute>
<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.argouml.application.Main"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="argouml-app"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512M -ea -Dargouml.modules=org.argouml.class2.ClassDiagram2Module -Dlog4j.configuration=org/argouml/resource/full_console.lcf"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512M -ea -Dargouml.modules=org.argouml.structure2diagram2.StructureDiagram2Module;org.argouml.class2.ClassDiagram2Module -Dlog4j.configuration=org/argouml/resource/full_console.lcf"/>
</launchConfiguration>
Modified: trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/ClassDiagram2Renderer.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/ClassDiagram2Renderer.java?view=diff&pathrev=17217&r1=17216&r2=17217
==============================================================================
--- trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/ClassDiagram2Renderer.java (original)
+++ trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/ClassDiagram2Renderer.java 2009-08-02 14:31:00-0700
@@ -30,22 +30,23 @@
import org.apache.log4j.Logger;
import org.argouml.model.CoreFactory;
import org.argouml.model.Model;
-import org.argouml.structure2.diagram.FigAbstraction2;
-import org.argouml.structure2.diagram.FigAssociation2;
-import org.argouml.structure2.diagram.FigAssociationClass2;
-import org.argouml.structure2.diagram.FigAssociationEnd2;
-import org.argouml.structure2.diagram.FigDependency2;
-import org.argouml.structure2.diagram.FigEdgeNote2;
-import org.argouml.structure2.diagram.FigGeneralization2;
-import org.argouml.structure2.diagram.FigLink2;
-import org.argouml.structure2.diagram.FigPermission2;
-import org.argouml.structure2.diagram.FigUsage2;
+import org.argouml.structure2.diagram.StructureDiagram2Renderer;
import org.argouml.uml.CommentEdge;
import org.argouml.uml.diagram.ArgoDiagram;
import org.argouml.uml.diagram.DiagramSettings;
import org.argouml.uml.diagram.GraphChangeAdapter;
import org.argouml.uml.diagram.UmlDiagramRenderer;
+import org.argouml.uml.diagram.static_structure.ui.FigEdgeNote;
+import org.argouml.uml.diagram.static_structure.ui.FigLink;
+import org.argouml.uml.diagram.ui.FigAbstraction;
+import org.argouml.uml.diagram.ui.FigAssociation;
+import org.argouml.uml.diagram.ui.FigAssociationClass;
+import org.argouml.uml.diagram.ui.FigAssociationEnd;
+import org.argouml.uml.diagram.ui.FigDependency;
+import org.argouml.uml.diagram.ui.FigGeneralization;
import org.argouml.uml.diagram.ui.FigNodeModelElement;
+import org.argouml.uml.diagram.ui.FigPermission;
+import org.argouml.uml.diagram.ui.FigUsage;
import org.argouml.uml.diagram.ui.UMLDiagram;
import org.tigris.gef.base.Diagram;
import org.tigris.gef.base.Layer;
@@ -85,181 +86,6 @@
*
* @author jrobbins
*/
-class ClassDiagram2Renderer extends UmlDiagramRenderer {
+public class ClassDiagram2Renderer extends StructureDiagram2Renderer {
- /**
- * The UID.
- */
- static final long serialVersionUID = 675407719309039112L;
-
- /**
- * Logger.
- */
- private static final Logger LOG =
- Logger.getLogger(ClassDiagram2Renderer.class);
-
- /*
- * @see org.tigris.gef.graph.GraphNodeRenderer#getFigNodeFor(
- * org.tigris.gef.graph.GraphModel,
- * org.tigris.gef.base.Layer, java.lang.Object, java.util.Map)
- */
- public FigNode getFigNodeFor(GraphModel gm, Layer lay,
- Object node, Map styleAttributes) {
-
- FigNodeModelElement figNode = null;
-
- if (node == null) {
- throw new IllegalArgumentException("A node must be supplied");
- }
- // Although not generally true for GEF, for Argo we know that the layer
- // is a LayerPerspective which knows the associated diagram
- Diagram diag = ((LayerPerspective) lay).getDiagram();
- if (diag instanceof UMLDiagram
- && ((UMLDiagram) diag).doesAccept(node)) {
- figNode = (FigNodeModelElement) ((UMLDiagram) diag)
- .drop(node, null);
- } else {
- LOG.error("TODO: ClassDiagramRenderer getFigNodeFor " + node);
- throw new IllegalArgumentException(
- "Node is not a recognised type. Received "
- + node.getClass().getName());
- }
-
- lay.add(figNode);
- figNode.setDiElement(
- GraphChangeAdapter.getInstance().createElement(gm, node));
-
-
- return figNode;
-
- }
-
- /**
- * Return a Fig that can be used to represent the given edge.
- * Throws IllegalArgumentException if the edge is not of an expected type.
- * Throws IllegalStateException if the edge generated has no source
- * or dest port.
- * {@inheritDoc}
- */
- public FigEdge getFigEdgeFor(GraphModel gm, Layer lay,
- Object edge, Map styleAttribute) {
- if (LOG.isDebugEnabled()) {
- LOG.debug("making figedge for " + edge);
- }
- if (edge == null) {
- throw new IllegalArgumentException("A model edge must be supplied");
- }
-
- assert lay instanceof LayerPerspective;
- ArgoDiagram diag = (ArgoDiagram) ((LayerPerspective) lay).getDiagram();
- DiagramSettings settings = diag.getDiagramSettings();
-
- FigEdge newEdge = null;
- if (Model.getFacade().isAAssociationClass(edge)) {
- newEdge = new FigAssociationClass2(edge, settings);
- } else if (Model.getFacade().isAAssociationEnd(edge)) {
- FigAssociationEnd2 asend = new FigAssociationEnd2(edge, settings);
- Model.getFacade().getAssociation(edge);
- FigNode associationFN =
- (FigNode) lay.presentationFor(
- Model.getFacade().getAssociation(edge));
- FigNode classifierFN =
- (FigNode) lay.presentationFor(Model.getFacade().getType(edge));
-
- asend.setSourcePortFig(associationFN);
- asend.setSourceFigNode(associationFN);
- asend.setDestPortFig(classifierFN);
- asend.setDestFigNode(classifierFN);
- newEdge = asend;
- } else if (Model.getFacade().isAAssociation(edge)) {
- newEdge = new FigAssociation2(edge, settings);
- } else if (Model.getFacade().isALink(edge)) {
- FigLink2 lnkFig = new FigLink2(edge, settings);
- Collection linkEndsColn = Model.getFacade().getConnections(edge);
-
- Object[] linkEnds = linkEndsColn.toArray();
- Object fromInst = Model.getFacade().getInstance(linkEnds[0]);
- Object toInst = Model.getFacade().getInstance(linkEnds[1]);
-
- FigNode fromFN = (FigNode) lay.presentationFor(fromInst);
- FigNode toFN = (FigNode) lay.presentationFor(toInst);
- lnkFig.setSourcePortFig(fromFN);
- lnkFig.setSourceFigNode(fromFN);
- lnkFig.setDestPortFig(toFN);
- lnkFig.setDestFigNode(toFN);
- lnkFig.getFig().setLayer(lay);
- newEdge = lnkFig;
- } else if (Model.getFacade().isAGeneralization(edge)) {
- newEdge = new FigGeneralization2(edge, settings);
- } else if (Model.getFacade().isAPackageImport(edge)) {
- newEdge = new FigPermission2(edge, settings);
- } else if (Model.getFacade().isAUsage(edge)) {
- newEdge = new FigUsage2(edge, settings);
- } else if (Model.getFacade().isAAbstraction(edge)) {
- newEdge = new FigAbstraction2(edge, settings);
- } else if (Model.getFacade().isADependency(edge)) {
-
- String name = "";
- for (Object stereotype : Model.getFacade().getStereotypes(edge)) {
- name = Model.getFacade().getName(stereotype);
- if (CoreFactory.REALIZE_STEREOTYPE.equals(name)) {
- break;
- }
- }
- if (CoreFactory.REALIZE_STEREOTYPE.equals(name)) {
- // TODO: This code doesn't look like it will get reached because
- // any abstraction/realization is going to take the
- // isAAbstraction leg of the if before it gets to this more
- // general case. - tfm 20080508
- FigAbstraction2 realFig = new FigAbstraction2(edge, settings);
-
- Object supplier =
- ((Model.getFacade().getSuppliers(edge).toArray())[0]);
- Object client =
- ((Model.getFacade().getClients(edge).toArray())[0]);
-
- FigNode supFN = (FigNode) lay.presentationFor(supplier);
- FigNode cliFN = (FigNode) lay.presentationFor(client);
-
- realFig.setSourcePortFig(cliFN);
- realFig.setSourceFigNode(cliFN);
- realFig.setDestPortFig(supFN);
- realFig.setDestFigNode(supFN);
- realFig.getFig().setLayer(lay);
- newEdge = realFig;
- } else {
- FigDependency2 depFig = new FigDependency2(edge, settings);
- newEdge = depFig;
- }
- } else if (edge instanceof CommentEdge) {
- newEdge = new FigEdgeNote2(edge, settings);
- }
-
- if (newEdge == null) {
- throw new IllegalArgumentException(
- "Don't know how to create FigEdge for model type "
- + edge.getClass().getName());
- }
-
- setPorts(lay, newEdge);
-
- assert newEdge != null : "There has been no FigEdge created";
-
-// newEdge.setDiElement(
-// GraphChangeAdapter.getInstance().createElement(gm, edge));
-
- assert newEdge != null : "There has been no FigEdge created";
- assert (newEdge.getDestFigNode() != null)
- : "The FigEdge has no dest node";
- assert (newEdge.getDestPortFig() != null)
- : "The FigEdge has no dest port";
- assert (newEdge.getSourceFigNode() != null)
- : "The FigEdge has no source node";
- assert (newEdge.getSourcePortFig() != null)
- : "The FigEdge has no source port";
-
- lay.add(newEdge);
- return newEdge;
- }
-
}
Modified: trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/UMLClassDiagram2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/UMLClassDiagram2.java?view=diff&pathrev=17217&r1=17216&r2=17217
==============================================================================
--- trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/UMLClassDiagram2.java (original)
+++ trunk/src/argouml-core-diagrams-class2/src/org/argouml/class2/diagram/UMLClassDiagram2.java 2009-08-02 14:31:00-0700
@@ -34,24 +34,7 @@
import org.apache.log4j.Logger;
import org.argouml.i18n.Translator;
import org.argouml.model.Model;
-import org.argouml.structure2.diagram.FigActor2;
-import org.argouml.structure2.diagram.FigClass2;
-import org.argouml.structure2.diagram.FigComment2;
-import org.argouml.structure2.diagram.FigComponent2;
-import org.argouml.structure2.diagram.FigComponentInstance2;
-import org.argouml.structure2.diagram.FigDataType2;
-import org.argouml.structure2.diagram.FigEnumeration2;
-import org.argouml.structure2.diagram.FigException2;
-import org.argouml.structure2.diagram.FigInterface2;
-import org.argouml.structure2.diagram.FigMNode2;
-import org.argouml.structure2.diagram.FigModel2;
-import org.argouml.structure2.diagram.FigNodeInstance2;
-import org.argouml.structure2.diagram.FigObject2;
-import org.argouml.structure2.diagram.FigPackage2;
-import org.argouml.structure2.diagram.FigSignal2;
-import org.argouml.structure2.diagram.FigStereotypeDeclaration2;
-import org.argouml.structure2.diagram.FigSubsystem2;
-import org.argouml.structure2.diagram.FigUseCase2;
+import org.argouml.structure2.diagram.UMLStructureDiagram2;
import org.argouml.uml.diagram.DiagramSettings;
import org.argouml.uml.diagram.static_structure.ClassDiagramGraphModel;
import org.argouml.uml.diagram.ui.ModeCreateDependency;
@@ -70,7 +53,7 @@
*
* @author [email protected]
*/
-public class UMLClassDiagram2 extends UMLDiagram {
+public class UMLClassDiagram2 extends UMLStructureDiagram2 {
private static final long serialVersionUID = -9192325790126361563L;
@@ -133,7 +116,7 @@
*/
public UMLClassDiagram2(Object m) {
// We're going to change the name immediately, so just use ""
- super("", m, new ClassDiagramGraphModel());
+ super(m, new ClassDiagramGraphModel());
String name = getNewDiagramName();
try {
setName(name);
@@ -661,71 +644,4 @@
}
- @Override
- public FigNode drop(Object droppedObject, Point location) {
- FigNode figNode = null;
-
- // If location is non-null, convert to a rectangle that we can use
- Rectangle bounds = null;
- if (location != null) {
- bounds = new Rectangle(location.x, location.y, 0, 0);
- }
-
- DiagramSettings settings = getDiagramSettings();
-
- if (Model.getFacade().isAAssociation(droppedObject)) {
- figNode =
- createNaryAssociationNode(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAClass(droppedObject)) {
- figNode = new FigClass2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAInterface(droppedObject)) {
- figNode = new FigInterface2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAModel(droppedObject)) {
- figNode = new FigModel2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isASubsystem(droppedObject)) {
- figNode = new FigSubsystem2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAPackage(droppedObject)) {
- figNode = new FigPackage2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAComment(droppedObject)) {
- figNode = new FigComment2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAEnumeration(droppedObject)) {
- figNode = new FigEnumeration2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isADataType(droppedObject)) {
- figNode = new FigDataType2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAStereotype(droppedObject)) {
- figNode = new FigStereotypeDeclaration2(droppedObject, bounds,
- settings);
- } else if (Model.getFacade().isAException(droppedObject)) {
- figNode = new FigException2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isASignal(droppedObject)) {
- figNode = new FigSignal2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAActor(droppedObject)) {
- figNode = new FigActor2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAUseCase(droppedObject)) {
- figNode = new FigUseCase2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAObject(droppedObject)) {
- figNode = new FigObject2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isANodeInstance(droppedObject)) {
- figNode = new FigNodeInstance2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAComponentInstance(droppedObject)) {
- figNode = new FigComponentInstance2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isANode(droppedObject)) {
- figNode = new FigMNode2(droppedObject, bounds, settings);
- } else if (Model.getFacade().isAComponent(droppedObject)) {
- figNode = new FigComponent2(droppedObject, bounds, settings);
- }
-
- if (figNode != null) {
- // if location is null here the position of the new figNode is set
- // after in org.tigris.gef.base.ModePlace.mousePressed(MouseEvent e)
- if (location != null) {
- figNode.setLocation(location.x, location.y);
- }
- LOG.debug("Dropped object " + droppedObject + " converted to "
- + figNode);
- } else {
- LOG.debug("Dropped object NOT added " + droppedObject);
- }
- return figNode;
- }
}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2379341
To unsubscribe from this discussion, e-mail: [[email protected]].