svn commit: r17216 - trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram

Bob Tarling <[email protected]>
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: bobtarling
Date: 2009-08-02 14:30:55-0700
New Revision: 17216

Added:
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/StructureDiagram2Renderer.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/UMLStructureDiagram2.java
Modified:
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAbstraction2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigActor2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociation2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationClass2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationEnd2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClass2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClassAssociationClass2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComment2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponent2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponentInstance2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDataType2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDependency2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeAssociationClass2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeNote2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEnumeration2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigException2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigGeneralization2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigInterface2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigLink2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigMNode2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigModel2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeAssociation2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeInstance2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigObject2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPackage2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPermission2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSignal2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigStereotypeDeclaration2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSubsystem2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUsage2.java
   trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUseCase2.java

Log:
Give Figs package scope only. This breaks save and load, will attempt to address that next.

Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAbstraction2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAbstraction2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAbstraction2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAbstraction2.java	2009-08-02 14:30:55-0700
@@ -36,7 +36,7 @@
  * 

  * @author agauthie

  */

-public class FigAbstraction2 extends FigDependency2 {

+class FigAbstraction2 extends FigDependency2 {

 

     /**

      * Create the arrow head for the abstraction. This overrides the


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigActor2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigActor2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigActor2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigActor2.java	2009-08-02 14:30:55-0700
@@ -47,7 +47,7 @@
 /**

  * Class to display graphics for an Actor in a diagram.

  */

-public class FigActor2 extends FigNodeModelElement {

+class FigActor2 extends FigNodeModelElement {

 

     /**

      * The serialization version - Eclipse generated for rev. 1.40


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociation2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociation2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociation2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociation2.java	2009-08-02 14:30:55-0700
@@ -32,7 +32,7 @@
  * This class represents the Fig of a binary association on a diagram.

  *

  */

-public class FigAssociation2 extends FigAssociation {

+class FigAssociation2 extends FigAssociation {

 

     /**

      * Constructor used by PGML parser.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationClass2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationClass2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationClass2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationClass2.java	2009-08-02 14:30:55-0700
@@ -61,7 +61,7 @@
  *

  * @author [email protected]

  */

-public class FigAssociationClass2 extends FigAssociation2 implements

+class FigAssociationClass2 extends FigAssociation2 implements

         AttributesCompartmentContainer, PathContainer,

         OperationsCompartmentContainer {

 


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationEnd2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationEnd2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationEnd2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigAssociationEnd2.java	2009-08-02 14:30:55-0700
@@ -44,7 +44,7 @@
  *

  * @author Bob Tarling

  */

-public class FigAssociationEnd2 extends FigAssociationEnd {

+class FigAssociationEnd2 extends FigAssociationEnd {

 

     public FigAssociationEnd2(Object owner, DiagramSettings settings) {

         super(owner, settings);


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClass2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClass2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClass2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClass2.java	2009-08-02 14:30:55-0700
@@ -43,7 +43,7 @@
  * A Class may show compartments for stereotypes,

  * attributes and operations.

  */

-public class FigClass2 extends FigClassifierBoxWithAttributes {

+class FigClass2 extends FigClassifierBoxWithAttributes {

 

     private void constructFigs() {

         addFig(getBigPort());


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClassAssociationClass2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClassAssociationClass2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClassAssociationClass2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigClassAssociationClass2.java	2009-08-02 14:30:55-0700
@@ -35,7 +35,7 @@
  *

  * @author pepargouml

  */

-public class FigClassAssociationClass2 extends FigClass2 {

+class FigClassAssociationClass2 extends FigClass2 {

 

     private static final long serialVersionUID = -4101337246957593739L;

     


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComment2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComment2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComment2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComment2.java	2009-08-02 14:30:55-0700
@@ -67,7 +67,7 @@
  *

  * @author Andreas Rueckert

  */

-public class FigComment2

+class FigComment2

     extends FigNodeModelElement

     implements VetoableChangeListener,

 	       DelayedVChangeListener,


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponent2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponent2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponent2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponent2.java	2009-08-02 14:30:55-0700
@@ -44,7 +44,7 @@
  *

  * @author 5eichler

  */

-public class FigComponent2 extends AbstractFigComponent {

+class FigComponent2 extends AbstractFigComponent {

 

     /**

      * Construct a new FigComponent.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponentInstance2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponentInstance2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponentInstance2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigComponentInstance2.java	2009-08-02 14:30:55-0700
@@ -45,7 +45,7 @@
  *

  * @author 5eichler

  */

-public class FigComponentInstance2 extends AbstractFigComponent {

+class FigComponentInstance2 extends AbstractFigComponent {

     

     /**

      * Construct a new FigComponentInstance.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDataType2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDataType2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDataType2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDataType2.java	2009-08-02 14:30:55-0700
@@ -47,7 +47,7 @@
  * Every DataType shows a keyword, but it is not 

  * always <<datatype>>, e.g. for an Enumeration.

  */

-public class FigDataType2 extends FigClassifierBox {

+class FigDataType2 extends FigClassifierBox {

 

     private static final Logger LOG = Logger.getLogger(FigDataType2.class);

     


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDependency2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDependency2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDependency2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigDependency2.java	2009-08-02 14:30:55-0700
@@ -40,7 +40,7 @@
  * 

  * @author ics 125b course, spring 1998

  */

-public class FigDependency2 extends FigEdgeModelElement {

+class FigDependency2 extends FigEdgeModelElement {

 

     /**

      * Serial version generated by Eclipse for rev. 1.22


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeAssociationClass2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeAssociationClass2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeAssociationClass2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeAssociationClass2.java	2009-08-02 14:30:55-0700
@@ -48,7 +48,7 @@
  *

  * @author pepargouml

  */

-public class FigEdgeAssociationClass2

+class FigEdgeAssociationClass2

         extends FigEdgeModelElement

         implements VetoableChangeListener,

         DelayedVChangeListener,


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeNote2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeNote2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeNote2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEdgeNote2.java	2009-08-02 14:30:55-0700
@@ -53,7 +53,7 @@
  * @author Andreas Rueckert [email protected]

  * @author [email protected]

  */

-public class FigEdgeNote2 extends FigEdgePoly implements ArgoFig, IItemUID,

+class FigEdgeNote2 extends FigEdgePoly implements ArgoFig, IItemUID,

         PropertyChangeListener {

 

     private static final Logger LOG = Logger.getLogger(FigEdgeNote2.class);


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEnumeration2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEnumeration2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEnumeration2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigEnumeration2.java	2009-08-02 14:30:55-0700
@@ -47,7 +47,7 @@
  * It depends on FigDataType for most of its behavior.<p>

  * 

  */

-public class FigEnumeration2 extends FigDataType2 

+class FigEnumeration2 extends FigDataType2 

     implements EnumLiteralsCompartmentContainer {

 

     /**


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigException2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigException2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigException2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigException2.java	2009-08-02 14:30:55-0700
@@ -34,7 +34,7 @@
  * 

  * @author Tom Morris

  */

-public class FigException2 extends FigSignal2 {

+class FigException2 extends FigSignal2 {

 

     /**

      * Construct an Exception fig.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigGeneralization2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigGeneralization2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigGeneralization2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigGeneralization2.java	2009-08-02 14:30:55-0700
@@ -45,7 +45,7 @@
  * 

  * @author [email protected], [email protected]

  */

-public class FigGeneralization2 extends FigEdgeModelElement {

+class FigGeneralization2 extends FigEdgeModelElement {

 

     private static final int TEXT_HEIGHT = 20;

 


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigInterface2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigInterface2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigInterface2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigInterface2.java	2009-08-02 14:30:55-0700
@@ -33,8 +33,6 @@
 import org.argouml.uml.diagram.ArgoDiagram;

 import org.argouml.uml.diagram.DiagramSettings;

 import org.argouml.uml.diagram.static_structure.ui.FigClassifierBox;

-import org.tigris.gef.base.Editor;

-import org.tigris.gef.base.Globals;

 import org.tigris.gef.base.Selection;

 import org.tigris.gef.presentation.Fig;

 

@@ -44,7 +42,7 @@
  * An Interface may show compartments for stereotypes

  * and operations. Attributes are not supported in ArgoUML.

  */

-public class FigInterface2 extends FigClassifierBox {

+class FigInterface2 extends FigClassifierBox {

 

     private static final Logger LOG = Logger.getLogger(FigInterface2.class);

 


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigLink2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigLink2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigLink2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigLink2.java	2009-08-02 14:30:55-0700
@@ -45,7 +45,7 @@
  * Other association adornments (aggregation, composition, 

  * navigation) may be shown on the link ends."

  */

-public class FigLink2 extends FigEdgeModelElement {

+class FigLink2 extends FigEdgeModelElement {

 

     /*

      * Text group to contain name & stereotype


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigMNode2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigMNode2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigMNode2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigMNode2.java	2009-08-02 14:30:55-0700
@@ -37,7 +37,7 @@
  *

  * @author [email protected]

  */

-public class FigMNode2 extends AbstractFigNode {

+class FigMNode2 extends AbstractFigNode {

     

     /**

      * Construct a new FigMNode.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigModel2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigModel2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigModel2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigModel2.java	2009-08-02 14:30:55-0700
@@ -24,32 +24,15 @@
 

 package org.argouml.structure2.diagram;

 

-import java.awt.Polygon;

 import java.awt.Rectangle;

-

 import org.argouml.uml.diagram.DiagramSettings;

-import org.tigris.gef.presentation.FigPoly;

+import org.argouml.uml.diagram.static_structure.ui.FigModel;

 

 /** 

  * Class to display graphics for a UML model in a class diagram. 

  */

-public class FigModel2 extends FigPackage2 {

-

-    private FigPoly figPoly = new FigPoly(LINE_COLOR, SOLID_FILL_COLOR);

-

-    private void constructFigs() {

-        int[] xpoints = {125, 130, 135, 125};

-        int[] ypoints = {45, 40, 45, 45};

-        Polygon polygon = new Polygon(xpoints, ypoints, 4);

-        figPoly.setPolygon(polygon);

-        figPoly.setFilled(false);

-        addFig(figPoly);

+class FigModel2 extends FigModel {

 

-        setBounds(getBounds());

-        

-        updateEdges();

-    }

-    

     /**

      * Construct a Model fig

      * 

@@ -59,23 +42,5 @@
      */

     public FigModel2(Object owner, Rectangle bounds, DiagramSettings settings) {

         super(owner, bounds, settings);

-        constructFigs();

     }

-

-    /*

-     * @see org.tigris.gef.presentation.Fig#setBounds(int, int, int, int)

-     */

-    @Override

-    protected void setStandardBounds(int x, int y, int w, int h) {

-

-        if (figPoly != null) {

-            Rectangle oldBounds = getBounds();

-            figPoly.translate((x - oldBounds.x) + (w - oldBounds.width), y

-                    - oldBounds.y);

-

-        }

-        super.setStandardBounds(x, y, w, h);

-    }

-

-

 }


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeAssociation2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeAssociation2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeAssociation2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeAssociation2.java	2009-08-02 14:30:55-0700
@@ -52,7 +52,7 @@
  *

  * @author [email protected]

  */

-public class FigNodeAssociation2 extends FigNodeModelElement {

+class FigNodeAssociation2 extends FigNodeModelElement {

     

     private static final int X = 0;

     private static final int Y = 0;


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeInstance2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeInstance2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeInstance2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigNodeInstance2.java	2009-08-02 14:30:55-0700
@@ -41,7 +41,7 @@
  *

  * @author [email protected]

  */

-public class FigNodeInstance2 extends AbstractFigNode {

+class FigNodeInstance2 extends AbstractFigNode {

     

     /**

      * Construct a new FigNodeInstance.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigObject2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigObject2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigObject2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigObject2.java	2009-08-02 14:30:55-0700
@@ -43,7 +43,7 @@
  *

  * @author 5eichler

  */

-public class FigObject2 extends FigNodeModelElement {

+class FigObject2 extends FigNodeModelElement {

 

     private FigRect cover;

 


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPackage2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPackage2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPackage2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPackage2.java	2009-08-02 14:30:55-0700
@@ -95,7 +95,7 @@
  * 

  * In front of the name, ArgoUML may optionally show the visibility.

  */

-public class FigPackage2 extends FigNodeModelElement

+class FigPackage2 extends FigNodeModelElement

     implements StereotypeContainer, VisibilityContainer {

 

     private static final Logger LOG = Logger.getLogger(FigPackage2.class);


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPermission2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPermission2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPermission2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigPermission2.java	2009-08-02 14:30:55-0700
@@ -37,7 +37,7 @@
  * 

  * @author Markus Klink

  */

-public class FigPermission2 extends FigDependency2 {

+class FigPermission2 extends FigDependency2 {

     

     /**

      * Construct a Fig.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSignal2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSignal2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSignal2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSignal2.java	2009-08-02 14:30:55-0700
@@ -45,7 +45,7 @@
  * 

  * @author Tom Morris

  */

-public class FigSignal2 extends FigClassifierBoxWithAttributes {

+class FigSignal2 extends FigClassifierBoxWithAttributes {

 

     private void constructFigs() {

         getStereotypeFig().setKeyword("signal");


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigStereotypeDeclaration2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigStereotypeDeclaration2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigStereotypeDeclaration2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigStereotypeDeclaration2.java	2009-08-02 14:30:55-0700
@@ -53,7 +53,7 @@
  *

  * TODO: This is just a placeholder right now! - tfm

  */

-public class FigStereotypeDeclaration2 extends FigCompartmentBox {

+class FigStereotypeDeclaration2 extends FigCompartmentBox {

 

     private static final long serialVersionUID = -2702539988691983863L;

 


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSubsystem2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSubsystem2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSubsystem2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigSubsystem2.java	2009-08-02 14:30:55-0700
@@ -24,57 +24,18 @@
 

 package org.argouml.structure2.diagram;

 

-import java.awt.Polygon;

 import java.awt.Rectangle;

 

 import org.argouml.uml.diagram.DiagramSettings;

-import org.tigris.gef.presentation.FigPoly;

+import org.argouml.uml.diagram.static_structure.ui.FigSubsystem;

 

-/** Class to display graphics for a UML subsystem in a class diagram. */

+/**

+ * Class to display graphics for a UML subsystem in a class diagram.

+ */

+class FigSubsystem2 extends FigSubsystem {

 

-public class FigSubsystem2 extends FigPackage2 {

-

-    private FigPoly figPoly = new FigPoly(LINE_COLOR, SOLID_FILL_COLOR);

-

-    private void constructFigs() {

-        int[] xpoints = {125, 125, 130, 130, 130, 135, 135};

-        int[] ypoints = {45, 40, 40, 35, 40, 40, 45};

-        Polygon polygon = new Polygon(xpoints, ypoints, 7);

-        figPoly.setPolygon(polygon);

-        figPoly.setFilled(false);

-        addFig(figPoly);

-        Rectangle r = getBounds();

-        setBounds(r.x, r.y, r.width, r.height);

-        updateEdges();

-    }

-

-    /**

-     * Construct a Subsystem fig.

-     * 

-     * @param owner owning UML element

-     * @param bounds position and size

-     * @param settings render settings

-     */

     public FigSubsystem2(Object owner, Rectangle bounds, 

             DiagramSettings settings) {

         super(owner, bounds, settings);

-        constructFigs();

     }

-    

-    /*

-     * @see org.tigris.gef.presentation.Fig#setBounds(int, int, int, int)

-     */

-    @Override

-    protected void setStandardBounds(int x, int y, int w, int h) {

-

-        if (figPoly != null) {

-            Rectangle oldBounds = getBounds();

-            figPoly.translate((x - oldBounds.x) + (w - oldBounds.width), y

-                    - oldBounds.y);

-

-        }

-        super.setStandardBounds(x, y, w, h);

-    }

-

-

 }


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUsage2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUsage2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUsage2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUsage2.java	2009-08-02 14:30:55-0700
@@ -25,13 +25,14 @@
 package org.argouml.structure2.diagram;

 

 import org.argouml.uml.diagram.DiagramSettings;

+import org.argouml.uml.diagram.ui.FigUsage;

 

 /**

  * This class represents a Fig for a Usage.

  *

- * @author Markus Klink

+ * @author Bob Tarling

  */

-public class FigUsage2 extends FigDependency2 {

+public class FigUsage2 extends FigUsage {

 

     /**

      * Construct a Fig.


Modified: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUseCase2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUseCase2.java?view=diff&pathrev=17216&r1=17215&r2=17216
==============================================================================
--- trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUseCase2.java	(original)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/FigUseCase2.java	2009-08-02 14:30:55-0700
@@ -108,7 +108,7 @@
  * origin is at our top left corner, and the Y coordinates are

  * reversed.<p>

  */

-public class FigUseCase2 extends FigNodeModelElement

+class FigUseCase2 extends FigNodeModelElement

     implements ExtensionsCompartmentContainer {

 

     /**


Added: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/StructureDiagram2Renderer.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/StructureDiagram2Renderer.java?view=markup&pathrev=17216
==============================================================================
--- (empty file)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/StructureDiagram2Renderer.java	2009-08-02 14:30:55-0700
@@ -0,0 +1,255 @@
+// $Id: ClassDiagramRenderer.java 17112 2009-04-13 19:02:54Z tfmorris $

+// Copyright (c) 1996-2008 The Regents of the University of California. All

+// Rights Reserved. Permission to use, copy, modify, and distribute this

+// software and its documentation without fee, and without a written

+// agreement is hereby granted, provided that the above copyright notice

+// and this paragraph appear in all copies.  This software program and

+// documentation are copyrighted by The Regents of the University of

+// California. The software program and documentation are supplied "AS

+// IS", without any accompanying services from The Regents. The Regents

+// does not warrant that the operation of the program will be

+// uninterrupted or error-free. The end-user understands that the program

+// was developed for research purposes and is advised not to rely

+// exclusively on the program for any reason.  IN NO EVENT SHALL THE

+// UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,

+// SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,

+// ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF

+// THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF

+// SUCH DAMAGE. THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY

+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF

+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE

+// PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF

+// CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,

+// UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

+

+package org.argouml.structure2.diagram;

+

+import java.util.Collection;

+import java.util.Map;

+

+import org.apache.log4j.Logger;

+import org.argouml.model.CoreFactory;

+import org.argouml.model.Model;

+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.ui.FigNodeModelElement;

+import org.argouml.uml.diagram.ui.UMLDiagram;

+import org.tigris.gef.base.Diagram;

+import org.tigris.gef.base.Layer;

+import org.tigris.gef.base.LayerPerspective;

+import org.tigris.gef.graph.GraphModel;

+import org.tigris.gef.presentation.FigEdge;

+import org.tigris.gef.presentation.FigNode;

+

+/**

+ * This class defines a renderer object for UML Class Diagrams. In a

+ * Class Diagram the following UML objects are displayed with the

+ * following Figs: <p>

+ *

+ * <pre>

+ *  UML Object       ---  Fig

+ *  ---------------------------------------

+ *  Class            ---  FigClass

+ *  Interface        ---  FigInterface

+ *  Instance         ---  FigInstance

+ *  Model            ---  FigModel

+ *  Subsystem        ---  FigSubsystem

+ *  Package          ---  FigPackage

+ *  Comment          ---  FigComment

+ *  (CommentEdge)    ---  FigEdgeNote

+ *  Generalization   ---  FigGeneralization

+ *  Realization      ---  FigRealization

+ *  Permission       ---  FigPermission

+ *  Usage            ---  FigUsage

+ *  Dependency       ---  FigDependency

+ *  Association      ---  FigAssociation

+ *  AssociationClass ---  FigAssociationClass

+ *  Dependency       ---  FigDependency

+ *  Link             ---  FigLink

+ *  DataType         ---  FigDataType

+ *  Stereotype       ---  FigStereotypeDeclaration

+ * </pre>

+ *

+ * @author jrobbins

+ */

+public class StructureDiagram2Renderer extends UmlDiagramRenderer {

+    

+    /**

+     * The UID.

+     */

+    static final long serialVersionUID = 675407719309039112L;

+

+    /**

+     * Logger.

+     */

+    private static final Logger LOG =

+        Logger.getLogger(StructureDiagram2Renderer.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;

+    }

+

+}


Added: trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/UMLStructureDiagram2.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/UMLStructureDiagram2.java?view=markup&pathrev=17216
==============================================================================
--- (empty file)
+++ trunk/src/argouml-core-diagrams-structure2/src/org/argouml/structure2/diagram/UMLStructureDiagram2.java	2009-08-02 14:30:55-0700
@@ -0,0 +1,149 @@
+// $Id: UMLClassDiagram.java 16702 2009-01-25 20:23:28Z bobtarling $

+// Copyright (c) 1996-2008 The Regents of the University of California. All

+// Rights Reserved. Permission to use, copy, modify, and distribute this

+// software and its documentation without fee, and without a written

+// agreement is hereby granted, provided that the above copyright notice

+// and this paragraph appear in all copies.  This software program and

+// documentation are copyrighted by The Regents of the University of

+// California. The software program and documentation are supplied "AS

+// IS", without any accompanying services from The Regents. The Regents

+// does not warrant that the operation of the program will be

+// uninterrupted or error-free. The end-user understands that the program

+// was developed for research purposes and is advised not to rely

+// exclusively on the program for any reason.  IN NO EVENT SHALL THE

+// UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,

+// SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,

+// ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF

+// THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF

+// SUCH DAMAGE. THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY

+// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF

+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE

+// PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF

+// CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,

+// UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

+

+package org.argouml.structure2.diagram;

+

+import java.awt.Point;

+import java.awt.Rectangle;

+

+import org.apache.log4j.Logger;

+import org.argouml.model.Model;

+import org.argouml.uml.diagram.DiagramSettings;

+import org.argouml.uml.diagram.UMLMutableGraphSupport;

+import org.argouml.uml.diagram.static_structure.ClassDiagramGraphModel;

+import org.argouml.uml.diagram.ui.UMLDiagram;

+import org.tigris.gef.presentation.FigNode;

+

+/**

+ * UML Class Diagram.

+ * 

+ * @author [email protected]

+ */

+public abstract class UMLStructureDiagram2 extends UMLDiagram {

+

+    private static final long serialVersionUID = -9192325790126361563L;

+

+    private static final Logger LOG = Logger.getLogger(UMLStructureDiagram2.class);

+

+

+    /**

+     * Construct a Class Diagram. Default constructor used by PGML parser during

+     * diagram load. It should not be used by other callers.

+     * @deprecated only for use by PGML parser

+     */

+    @Deprecated

+    public UMLStructureDiagram2(UMLMutableGraphSupport graphmodel) {

+        super(graphmodel);

+    }

+

+

+    /**

+     * Construct a new class diagram with the given name, owned by the given

+     * namespace.

+     *

+     * @param name the name for the new diagram

+     * @param namespace the namespace for the new diagram

+     */

+    public UMLStructureDiagram2(String name, Object namespace, UMLMutableGraphSupport graphmodel) {

+        super(name, namespace, graphmodel);

+    }

+

+    /**

+     * Construct Structure Diagram owned by the given namespace.

+     * 

+     * @param ns the namespace

+     * @param graphmodel the graph model for this diagram

+     */

+    public UMLStructureDiagram2(Object ns, UMLMutableGraphSupport graphmodel) {

+        super("", ns, graphmodel);

+    }

+    

+    @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=2379340

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.