svn commit: r16659 - trunk/src: argouml-app/src/org/argouml/uml/diagram/activity/ui argouml-app/src/org/argouml/uml/diagram/collaboration/ui argouml-app/src/org/argouml/uml/diagram/deployment/ui argouml-app/src/org/argouml/uml/diagram/state/ui argouml-app/src/org/argouml/uml/diagram/static_structure/ui argouml-app/src/org/argouml/uml/diagram/ui argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram

Tom Morris <[email protected]>
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: tfmorris
Date: 2009-01-19 13:57:24-0800
New Revision: 16659

Modified:
   trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/FigPool.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/UMLActivityDiagram.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/collaboration/ui/UMLCollaborationDiagram.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/UMLDeploymentDiagram.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/state/ui/FigConcurrentRegion.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigAttribute.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigLink.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigOperation.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ActionAddConcurrentRegion.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ArgoModeCreateFigText.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgePort.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEnumLiteralsCompartment.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigProfileIcon.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/UMLDiagram.java
   trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigActivation.java
   trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigClassifierRole.java
   trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigHead.java
   trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigLifeLine.java
   trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/UMLSequenceDiagram.java

Log:
Issue 5500: Last(?) batch of Fig constructor updates

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/FigPool.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/FigPool.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/FigPool.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/FigPool.java	2009-01-19 13:57:24-0800
@@ -50,6 +50,7 @@
      * @deprecated for 0.28 by tfmorris. Use
      *             {@link #FigPool(Object, Rectangle, DiagramSettings)}.
      */
+    @SuppressWarnings("deprecation")
     @Deprecated
     public FigPool(Rectangle r) {
         initialize(r);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/UMLActivityDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/UMLActivityDiagram.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/UMLActivityDiagram.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/activity/ui/UMLActivityDiagram.java	2009-01-19 13:57:24-0800
@@ -131,8 +131,13 @@
 
     /**
      * Constructor.
+     * 
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLActivityDiagram() {
+        super();
         try {
             setName(getNewDiagramName());
         } catch (PropertyVetoException pve) {
@@ -147,7 +152,10 @@
      *
      * @param namespace the namespace for the diagram
      * @param agraph the ActivityGraph for the diagram
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLActivityDiagram(Object namespace, Object agraph) {
 
         this();

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/collaboration/ui/UMLCollaborationDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/collaboration/ui/UMLCollaborationDiagram.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/collaboration/ui/UMLCollaborationDiagram.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/collaboration/ui/UMLCollaborationDiagram.java	2009-01-19 13:57:24-0800
@@ -95,7 +95,10 @@
     /**
      * This constructor is used to build a dummy collaboration diagram so
      * that a project will load properly.
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLCollaborationDiagram() {
         try {
             setName(getNewDiagramName());
@@ -108,7 +111,10 @@
      * The constructor.
      *
      * @param collaboration the collaboration aka namespace for the diagram
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLCollaborationDiagram(Object collaboration) {
         this();
         setNamespace(collaboration);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/UMLDeploymentDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/UMLDeploymentDiagram.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/UMLDeploymentDiagram.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/UMLDeploymentDiagram.java	2009-01-19 13:57:24-0800
@@ -95,7 +95,10 @@
     
     /**
      * Constructor.
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLDeploymentDiagram() {
         try {
             setName(getNewDiagramName());
@@ -106,7 +109,10 @@
 
     /**
      * @param namespace the namespace for the new diagram
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLDeploymentDiagram(Object namespace) {
         this();
         setNamespace(namespace);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/state/ui/FigConcurrentRegion.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/state/ui/FigConcurrentRegion.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/state/ui/FigConcurrentRegion.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/state/ui/FigConcurrentRegion.java	2009-01-19 13:57:24-0800
@@ -75,6 +75,10 @@
     @Deprecated
     public FigConcurrentRegion() {
         super();
+        initialize();
+    }
+
+    private void initialize() {
         cover =
             new FigRect(getInitialX(),
                 getInitialY(),
@@ -123,7 +127,10 @@
      * @param col the line color
      * @param width the width
      * @param height the height
+     * @deprecated for 0.27.4 by tfmorris.  Use 
+     * {@link #FigConcurrentRegion(Object, Rectangle, DiagramSettings)}.
      */
+    @Deprecated
     public FigConcurrentRegion(GraphModel gm, Object node,
                                Color col, int width, int height) {
         this(gm, node);
@@ -132,9 +139,24 @@
         setBounds(r.x, r.y, width, height);
     }
 
+    /**
+     * Construct a new concurrent region fig.
+     * 
+     * @param node owning UML element
+     * @param bounds position and size
+     * @param settings render settings
+     */
+    public FigConcurrentRegion(Object node, Rectangle bounds, DiagramSettings
+            settings) {
+        super(node, bounds, settings);
+        initialize();
+//        setLineColor(settings.getLineColor());
+    }
+    
     /*
      * @see java.lang.Object#clone()
      */
+    @Override
     public Object clone() {
         FigConcurrentRegion figClone = (FigConcurrentRegion) super.clone();
         Iterator it = figClone.getFigs().iterator();
@@ -149,6 +171,7 @@
     /*
      * @see org.tigris.gef.ui.PopupGenerator#getPopUpActions(java.awt.event.MouseEvent)
      */
+    @Override
     public Vector getPopUpActions(MouseEvent me) {
         Vector popUpActions = super.getPopUpActions(me);
         popUpActions.remove(
@@ -165,6 +188,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#getMinimumSize()
      */
+    @Override
     public Dimension getMinimumSize() {
         Dimension nameDim = getNameFig().getMinimumSize();
         Dimension internalDim = getInternal().getMinimumSize();
@@ -176,6 +200,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#getUseTrapRect()
      */
+    @Override
     public boolean getUseTrapRect() {
         return true;
     }
@@ -188,6 +213,7 @@
      *
      * {@inheritDoc}
      */
+    @Override
     protected void setStandardBounds(int x, int y, int w, int h) {
         if (getNameFig() == null) {
             return;
@@ -214,8 +240,9 @@
                 adjacentindex = index - 1;
             }
             if (((curHandle.index == 5) || (curHandle.index == 7))
-                    && (index < (regionsList.size() - 1)))
+                    && (index < (regionsList.size() - 1))) {
                 adjacentindex = index + 1;
+            }
             if (h <= getMinimumSize().height) {
                 if (h <= oldBounds.height) {
                     h = oldBounds.height;
@@ -378,6 +405,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#setLineColor(java.awt.Color)
      */
+    @Override
     public void setLineColor(Color col) {
         cover.setLineColor(INVISIBLE_LINE_COLOR);
         dividerline.setLineColor(col);
@@ -386,6 +414,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#getLineColor()
      */
+    @Override
     public Color getLineColor() {
         return dividerline.getLineColor();
     }
@@ -393,6 +422,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#setFillColor(java.awt.Color)
      */
+    @Override
     public void setFillColor(Color col) {
         cover.setFillColor(col);
     }
@@ -400,6 +430,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#getFillColor()
      */
+    @Override
     public Color getFillColor() {
         return cover.getFillColor();
     }
@@ -407,6 +438,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#setFilled(boolean)
      */
+    @Override
     public void setFilled(boolean f) {
         cover.setFilled(f);
         getBigPort().setFilled(f);
@@ -421,6 +453,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#setLineWidth(int)
      */
+    @Override
     public void setLineWidth(int w) {
         dividerline.setLineWidth(w);
     }
@@ -428,6 +461,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#getLineWidth()
      */
+    @Override
     public int getLineWidth() {
         return dividerline.getLineWidth();
     }
@@ -438,6 +472,7 @@
     /*
      * @see org.tigris.gef.presentation.Fig#makeSelection()
      */
+    @Override
     public Selection makeSelection() {
         Selection sel = new SelectionState(this);
         ((SelectionState) sel).setIncomingButtonEnabled(false);
@@ -483,6 +518,7 @@
     /////////////////////////////////////////////////////////////////////////
     // event handlers - MouseListener and MouseMotionListener implementation
 
+    @Override
     protected void updateLayout(UmlChangeEvent event) {
         super.updateLayout(event);
         final String eName = event.getPropertyName();
@@ -522,6 +558,7 @@
     /*
      * @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
      */
+    @Override
     public void mousePressed(MouseEvent e) {
         int x = e.getX();
         int y = e.getY();
@@ -532,6 +569,7 @@
     /*
      * @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent)
      */
+    @Override
     public void mouseReleased(MouseEvent e) {
         curHandle.index = -1;
     }

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigAttribute.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigAttribute.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigAttribute.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigAttribute.java	2009-01-19 13:57:24-0800
@@ -73,6 +73,8 @@
      * @param settings render settings
      * @param np notation provider
      */
+    @Deprecated
+    @SuppressWarnings("deprecation")
     public FigAttribute(Object owner, Rectangle bounds,
             DiagramSettings settings, NotationProvider np) {
         super(owner, bounds, settings, np);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigLink.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigLink.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigLink.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigLink.java	2009-01-19 13:57:24-0800
@@ -58,6 +58,7 @@
      * @deprecated for 0.28 by tfmorris. Use
      *             {@link #FigLink(Object, DiagramSettings)}.
      */
+    @SuppressWarnings("deprecation")
     @Deprecated
     public FigLink() {
         middleGroup = new FigTextGroup();

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigOperation.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigOperation.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigOperation.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigOperation.java	2009-01-19 13:57:24-0800
@@ -70,6 +70,7 @@
      * @param settings rendering settings
      * @param np notation provider
      */
+    @SuppressWarnings("deprecation")
     @Deprecated
     public FigOperation(Object owner, Rectangle bounds,
             DiagramSettings settings, NotationProvider np) {

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ActionAddConcurrentRegion.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ActionAddConcurrentRegion.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ActionAddConcurrentRegion.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ActionAddConcurrentRegion.java	2009-01-19 13:57:24-0800
@@ -25,7 +25,6 @@
 
 package org.argouml.uml.diagram.ui;
 
-import java.awt.Color;
 import java.awt.Rectangle;
 import java.awt.event.ActionEvent;
 import java.util.List;
@@ -38,6 +37,7 @@
 import org.argouml.model.Model;
 import org.argouml.model.StateMachinesFactory;
 import org.argouml.ui.targetmanager.TargetManager;
+import org.argouml.uml.diagram.DiagramSettings;
 import org.argouml.uml.diagram.state.StateDiagramGraphModel;
 import org.argouml.uml.diagram.state.ui.FigCompositeState;
 import org.argouml.uml.diagram.state.ui.FigConcurrentRegion;
@@ -54,7 +54,9 @@
 
 /**
  * Add a concurrent region to a concurrent composite state
- *
+ * <p>
+ * TODO: Move all the magic numbers to constants
+ * 
  * @author [email protected]
  */
 public class ActionAddConcurrentRegion extends UndoableAction {
@@ -86,7 +88,9 @@
      */
     public boolean isEnabled() {
         Object target = TargetManager.getInstance().getModelTarget();
-        if (Model.getStateMachinesHelper().isTopState(target)) return false;
+        if (Model.getStateMachinesHelper().isTopState(target)) {
+            return false;
+        }
         return TargetManager.getInstance().getModelTargets().size() < 2;
     }
 
@@ -129,13 +133,21 @@
 
                 final Object region1 =
                     factory.buildCompositeState(compositeState);
+                // TODO: What do all these magic numbers represent??
+                Rectangle bounds = new Rectangle(
+                        f.getX() + 3, 
+                        f.getY() + rName.height + 5, 
+                        rFig.width - 6, 
+                        rFig.height - rName.height - 10);
+                // TODO: Get these settings from some place reasonable
+                DiagramSettings settings = new DiagramSettings();
                 final FigConcurrentRegion region =
-                    new FigConcurrentRegion(gm, region1,
-                                            Color.white,
-                                            rFig.width - 6,
-                                            rFig.height - rName.height - 10);
+                    new FigConcurrentRegion(
+                        region1, bounds, settings);
+                // Invisible border (was Color.white)
+                // TODO: Should this be LINE_COLOR's complement or something?
+                region.setLineColor(ArgoFig.INVISIBLE_LINE_COLOR);
 
-                region.setLocation(f.getX() + 3, f.getY() + rName.height + 5);
                 region.setEnclosingFig(figCompositeState);
                 region.setLayer(lay);
                 lay.add(region);
@@ -157,11 +169,15 @@
             }
 
             final Object region2 = factory.buildCompositeState(compositeState);
+            // TODO: What are all these magic numbers?
+            Rectangle bounds = new Rectangle(f.getX() + 3, f.getY()
+                    + rFig.height - 1, rFig.width - 6, 126);
+            // TODO: Get the settings from someplace reasonable
+            DiagramSettings settings = new DiagramSettings();
             final FigConcurrentRegion regionNew =
-                new FigConcurrentRegion(gm, region2, Color.black,
-                        rFig.width - 6, 126);
-
-            regionNew.setLocation(f.getX() + 3, f.getY() + rFig.height - 1);
+                new FigConcurrentRegion(region2, bounds, settings);
+            // Uses default line color (was Color.black)
+//            regionNew.setLineColor(ArgoFig.LINE_COLOR);
 
             figCompositeState.setBounds(rFig.height + 130);
             regionNew.setEnclosingFig(figCompositeState);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ArgoModeCreateFigText.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ArgoModeCreateFigText.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ArgoModeCreateFigText.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/ArgoModeCreateFigText.java	2009-01-19 13:57:24-0800
@@ -24,14 +24,16 @@
 
 package org.argouml.uml.diagram.ui;
 
+import java.awt.Rectangle;
 import java.awt.event.MouseEvent;
 
 import org.argouml.i18n.Translator;
+import org.argouml.uml.diagram.DiagramUtils;
 import org.tigris.gef.base.ModeCreateFigText;
 import org.tigris.gef.presentation.Fig;
 
 /**
- * A Mode to interprete user input while creating a FigText. All of
+ * A Mode to interpret user input while creating a FigText. All of
  * the actual event handling is inherited from ModeCreate. This class
  * just implements the differences needed to make it specific to
  * text.
@@ -40,6 +42,7 @@
  */
 public class ArgoModeCreateFigText extends ModeCreateFigText {
     
+    @Override
     public String instructions() {
         return Translator.localize("statusmsg.help.create.text");
     }
@@ -48,7 +51,9 @@
      * Create a new FigText instance based on the given mouse down
      * event and the state of the parent Editor. 
      */
+    @Override
     public Fig createNewItem(MouseEvent e, int snapX, int snapY) {
-        return new ArgoFigText(snapX, snapY, 0, 0, true);
+        return new ArgoFigText(null, new Rectangle(snapX, snapY, 0, 0), 
+                DiagramUtils.getActiveDiagram().getDiagramSettings(), true);
     }
 }

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java	2009-01-19 13:57:24-0800
@@ -269,10 +269,8 @@
      */
     public void makeEdgePort() {
         if (edgePort == null) {
-            edgePort = new FigEdgePort();
-            if (getOwner() != null) {
-                edgePort.setOwner(getOwner());
-            }
+            edgePort = new FigEdgePort(getOwner(), new Rectangle(), 
+                    getSettings());
             edgePort.setVisible(false);
             addPathItem(edgePort,
                     new PathItemPlacement(this, edgePort, 50, 0));

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgePort.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgePort.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgePort.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgePort.java	2009-01-19 13:57:24-0800
@@ -55,6 +55,7 @@
      * @deprecated for 0.28 by tfmorris. Use
      *             {@link #FigEdgePort(Object, Rectangle, DiagramSettings)}.
      */
+    @SuppressWarnings("deprecation")
     @Deprecated
     public FigEdgePort() {
         super();

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEnumLiteralsCompartment.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEnumLiteralsCompartment.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEnumLiteralsCompartment.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEnumLiteralsCompartment.java	2009-01-19 13:57:24-0800
@@ -54,7 +54,7 @@
      * @param w width
      * @param h height
      * @deprecated for 0.27.3 by tfmorris.  Use 
-     * {@link #FigEnumLiteralsCompartment(Rectangle, DiagramSettings)}.
+     * {@link #FigEnumLiteralsCompartment(Object, Rectangle, DiagramSettings)}.
      */
     @SuppressWarnings("deprecation")
     @Deprecated

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigProfileIcon.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigProfileIcon.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigProfileIcon.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigProfileIcon.java	2009-01-19 13:57:24-0800
@@ -49,6 +49,7 @@
      * 
      * @param icon the icon
      * @param str the default name
+     * TODO: Define a constructor that takes diagram settings
      */
     public FigProfileIcon(Image icon, String str) {
 	image = new FigImage(0, 0, icon);

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/UMLDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/UMLDiagram.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/UMLDiagram.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/UMLDiagram.java	2009-01-19 13:57:24-0800
@@ -153,12 +153,14 @@
     private Action selectedAction;
     
     /**
-     * Default constructor will become protected.  All subclasses should have
+     * Default constructor will become protected. All subclasses should have
      * their constructors invoke the 3-arg version of the constructor.
-     * @deprecated for 0.27.2 by tfmorris.  
-     * Use {@link #UMLDiagram(String, Object, GraphModel)} or another explicit
-     * constructor.
+     * 
+     * @deprecated for 0.27.2 by tfmorris. Use
+     *             {@link #UMLDiagram(String, Object, GraphModel)} or another
+     *             explicit constructor.
      */
+    @SuppressWarnings("deprecation")
     @Deprecated
     public UMLDiagram() {
         super();
@@ -166,8 +168,8 @@
 
     /**
      * @param ns the UML namespace of this diagram
-     * @deprecated for 0.27.2 by tfmorris.  Use 
-     * {@link #UMLDiagram(Object, GraphModel)}.
+     * @deprecated for 0.27.2 by tfmorris. Use
+     *             {@link #UMLDiagram(String, Object, GraphModel)}.
      */
     @Deprecated
     public UMLDiagram(Object ns) {
@@ -184,8 +186,8 @@
     /**
      * @param name the name of the diagram
      * @param ns the UML namespace of this diagram
-     * @deprecated for 0.27.2 by tfmorris.  Use 
-     * {@link #UMLDiagram(String, Object, GraphModel)}.
+     * @deprecated for 0.27.2 by tfmorris. Use
+     *             {@link #UMLDiagram(String, Object, GraphModel)}.
      */
     @Deprecated
     public UMLDiagram(String name, Object ns) {
@@ -555,6 +557,7 @@
      * @deprecated for 0.27.3 by tfmorris. This is a noop. Diagram name
      *             duplication is checked for and managed at the project level.
      */
+    @Deprecated
     public void resetDiagramSerial() {
     }
 
@@ -563,6 +566,7 @@
      * @deprecated for 0.27.3 by tfmorris. This is always returns 1. Diagram
      *             naming is managed at the project level.
      */
+    @Deprecated
     protected int getNextDiagramSerial() {
         return 1;
     }

Modified: trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigActivation.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigActivation.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigActivation.java	(original)
+++ trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigActivation.java	2009-01-19 13:57:24-0800
@@ -24,6 +24,9 @@
 
 package org.argouml.sequence2.diagram;
 
+import java.awt.Rectangle;
+
+import org.argouml.uml.diagram.DiagramSettings;
 import org.argouml.uml.diagram.ui.ArgoFigGroup;
 import org.tigris.gef.presentation.FigRect;
 
@@ -42,19 +45,60 @@
 
     
     /**
-     * TODO: Document!
+     * TODO: Document
      * 
      * @param x
      * @param y
      * @param destroy 
+     * @deprecated for 0.28 by tfmorris.  
      */
     public FigActivation(int x, int y, boolean destroy) {
-        rectFig = new FigRect(x - DEFAULT_WIDTH / 2, y,
-                DEFAULT_WIDTH, DEFAULT_HEIGHT, LINE_COLOR, FILL_COLOR);
-        rectFig.setLineWidth(LINE_WIDTH);
+        super();
+        initialize(new Rectangle(x, y, DEFAULT_HEIGHT, DEFAULT_WIDTH), destroy);
+    }
+
+    private void initialize(Rectangle bounds, boolean destroy) {
+        if (bounds.width == 0) {
+            bounds.width = DEFAULT_WIDTH;
+        }
+        if (bounds.height == 0) {
+            bounds.height = DEFAULT_HEIGHT;
+        }
+        rectFig = new FigRect(bounds.x - bounds.width / 2, bounds.y,
+                bounds.width, bounds.height, LINE_COLOR, FILL_COLOR);
+        rectFig.setLineWidth(0);
         addFig(rectFig);
         setDestroy(destroy);
     }
+
+    /**
+     * Create a new default activation fig (ie one without a destroy fig at the
+     * end).
+     * 
+     * @param owner owning UML element or null
+     * @param bounds position (top center) and size. If the width or height is
+     *            0, the default will be used.
+     * @param settings rendering settings
+     */
+    public FigActivation(Object owner, Rectangle bounds,
+            DiagramSettings settings) {
+        this(owner, bounds, settings, false);
+    }
+
+    /**
+     * Create a new activation fig which optionally ends with a destroy fig.
+     * 
+     * @param owner owning UML element or null
+     * @param bounds position (top center) and size.  If the width or height is
+     *            0, the default will be used.
+     * @param settings rendering settings
+     * @param destroy true if activation should end with a destroy fig.
+     */
+    public FigActivation(Object owner, Rectangle bounds,
+            DiagramSettings settings, boolean destroy) {
+        super(owner, settings);
+        initialize(bounds, destroy);
+    }
     
     /**     
      * @param isDestroy 
@@ -63,7 +107,7 @@
         if (isDestroy) {
             if (destroyFig == null) {
                 destroyFig = 
-                    new FigDestroy(getX() + DEFAULT_WIDTH / 2,
+                    new FigDestroy(getX() + getWidth() / 2,
                             getY() + getHeight());
                 addFig(destroyFig);                
             }

Modified: trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigClassifierRole.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigClassifierRole.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigClassifierRole.java	(original)
+++ trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigClassifierRole.java	2009-01-19 13:57:24-0800
@@ -124,12 +124,14 @@
         emptyFig = new FigEmptyRect(getX(), getY(), getWidth(), offset);
         emptyFig.setLineWidth(0);
         
-        headFig = new FigHead(getStereotypeFig(), getNameFig());
+        headFig = new FigHead(getOwner(), getSettings(), getStereotypeFig(),
+                getNameFig());
         headFig.setBounds(getX(), getY() + offset,
                 getWidth(), headFig.getHeight());
         
-        lifeLineFig = new FigLifeLine(headFig.getX(), 
-                getY() + offset + headFig.getHeight() - getLineWidth());
+        lifeLineFig = new FigLifeLine(getOwner(), new Rectangle(headFig.getX(),
+                getY() + offset + headFig.getHeight() - getLineWidth(), 0, 0),
+                getSettings());
         
         addFig(getBigPort());        
         getBigPort().setVisible(false);
@@ -381,6 +383,7 @@
          */
         FigClassifierRolePort() {
             super(0, 0, 0, 0, null, null);
+            setLineWidth(0);
         }
         
         @Override

Modified: trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigHead.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigHead.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigHead.java	(original)
+++ trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigHead.java	2009-01-19 13:57:24-0800
@@ -27,6 +27,7 @@
 import java.awt.Color;
 import java.awt.Dimension;
 
+import org.argouml.uml.diagram.DiagramSettings;
 import org.argouml.uml.diagram.ui.ArgoFigGroup;
 import org.tigris.gef.presentation.Fig;
 import org.tigris.gef.presentation.FigRect;
@@ -34,21 +35,27 @@
 
 class FigHead extends ArgoFigGroup  {
     
-    private final FigText nameFig;
-    private final Fig stereotypeFig;
-    private final FigRect rectFig;
+    private FigText nameFig;
+    private Fig stereotypeFig;
+    private FigRect rectFig;
 
     static final int DEFAULT_WIDTH = 150;
     static final int DEFAULT_HEIGHT = 50;
     
     /**
      * Constructor.
-     *
+     * 
      * @param stereotypeFigure the stereotype fig
      * @param nameFigure the name fig
+     * @deprecated for 0.28 by tfmorris. Use
+     *             {@link #FigHead(Object, DiagramSettings, Fig, FigText)}.
      */
-    // TODO: Define a constructor which doesn't use deprecated super constructor
+    @Deprecated
     FigHead(Fig stereotypeFigure, FigText nameFigure) {
+        initialize(stereotypeFigure, nameFigure);
+    }
+
+    private void initialize(Fig stereotypeFigure, FigText nameFigure) {
         this.stereotypeFig = stereotypeFigure;
         this.nameFig = nameFigure;
         
@@ -65,6 +72,13 @@
         addFig(nameFig);
         addFig(stereotypeFig);
     }
+    
+    FigHead(Object owner, DiagramSettings settings, Fig stereotypeFigure,
+            FigText nameFigure) {
+        super(owner, settings);
+        initialize(stereotypeFigure, nameFigure);
+    }
+
 
 
     /**

Modified: trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigLifeLine.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigLifeLine.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigLifeLine.java	(original)
+++ trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/FigLifeLine.java	2009-01-19 13:57:24-0800
@@ -30,6 +30,7 @@
 import java.util.List;
 
 import org.argouml.model.Model;
+import org.argouml.uml.diagram.DiagramSettings;
 import org.argouml.uml.diagram.ui.ArgoFigGroup;
 import org.tigris.gef.presentation.FigLine;
 import org.tigris.gef.presentation.FigRect;
@@ -43,8 +44,8 @@
 
     private static final long serialVersionUID = 466925040550356L;
 
-    private final FigLine lineFig;
-    private final FigRect rectFig;
+    private FigLine lineFig;
+    private FigRect rectFig;
     
     private List<FigActivation> activations;
     private List<FigActivation> stackedActivations;
@@ -56,10 +57,17 @@
      * Creates a FigLifeLine that starts in (x,y)
      * @param x The x coordinate of the FigLifeLine
      * @param y The y coordinate of the FigLifeLine
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #FigLifeLine(Object, Rectangle, DiagramSettings)}.
      */
+    @Deprecated
     FigLifeLine(int x, int y) {
         super();
 
+        initialize(x, y);
+    }
+
+    private void initialize(int x, int y) {
         activations = new LinkedList<FigActivation>();
         stackedActivations = new LinkedList<FigActivation>();
         
@@ -75,6 +83,11 @@
         addFig(lineFig);
     }
     
+    FigLifeLine(Object owner, Rectangle bounds, DiagramSettings settings) {
+        super(owner, settings);
+        initialize(bounds.x, bounds.y);
+    }
+    
     // TODO: Does this still need to be synchronized? If so then explain why.
     synchronized void createActivations(final List<FigMessage> messages) {
         clearActivations();
@@ -106,8 +119,8 @@
         // if not then create an activation at the top of the lifeline
         if (!hasIncomingCallActions(figMessages) 
                 && !hasOutgoingDestroyActions(figMessages)) {
-            currentAct = 
-                new FigActivation(lineFig.getX(), lineFig.getY(), false);
+            currentAct = new FigActivation(getOwner(), new Rectangle(lineFig
+                    .getX(), lineFig.getY(), 0, 0), getSettings());
         }
         
         for (FigMessage figMessage : figMessages) {
@@ -120,16 +133,16 @@
                 // if we are the dest and is a call action, create the 
                 // activation, but don't add it until the height is set.
         	ySender = figMessage.getFinalY();        	
-                currentAct = 
-                    new FigActivation(lineFig.getX(), ySender, false); 
+                currentAct = new FigActivation(getOwner(), new Rectangle(
+                        lineFig.getX(), ySender, 0, 0), getSettings()); 
             } else if (currentAct == null
                     && cr.equals(figMessage.getDestFigNode())
                     && !cr.equals(figMessage.getSourceFigNode())
                     && Model.getFacade().isACreateAction(action)) {
                 // if we are the dest of a create action, create the
                 // entire activation, because we should need the destroy X
-                currentAct = 
-                    new FigActivation(lineFig.getX(), lineFig.getY(), false);
+                currentAct = new FigActivation(getOwner(), new Rectangle(
+                        lineFig.getX(), lineFig.getY(), 0, 0), getSettings());
             } else if (currentAct != null
                     && cr.equals(figMessage.getSourceFigNode()) 
                     && !cr.equals(figMessage.getDestFigNode())
@@ -182,10 +195,10 @@
             if (figMessage.isSelfMessage()) {
                 if (figMessage.isCallAction()) {
                     ySender = figMessage.getFinalY();
-                    currentAct = new FigActivation(
-                            lineFig.getX() + FigActivation.DEFAULT_WIDTH / 2,
-                            ySender,
-                            false);
+                    currentAct = new FigActivation(figMessage.getOwner(),
+                            new Rectangle(lineFig.getX()
+                                    + FigActivation.DEFAULT_WIDTH / 2, ySender,
+                                    0, 0), getSettings(), false);
                 } else if (currentAct != null
                         && figMessage.isReturnAction()) {
                     ySender = figMessage.getStartY();

Modified: trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/UMLSequenceDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/UMLSequenceDiagram.java?view=diff&pathrev=16659&r1=16658&r2=16659
==============================================================================
--- trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/UMLSequenceDiagram.java	(original)
+++ trunk/src/argouml-core-diagrams-sequence2/src/org/argouml/sequence2/diagram/UMLSequenceDiagram.java	2009-01-19 13:57:24-0800
@@ -62,8 +62,12 @@
         .getLogger(UMLSequenceDiagram.class);
     
     /**
+     * TODO: Document!
      * 
+     * @deprecated for 0.28 by tfmorris.  Use 
+     * {@link #UMLActivityDiagram(String, Object, GraphModel)}.
      */
+    @Deprecated
     public UMLSequenceDiagram() {
         super();
         // Create the graph model
@@ -170,7 +174,7 @@
      * A sequence diagram can accept all classifiers. It will add them as a new 
      * Classifier Role with that classifier as a base.
      * @param objectToAccept
-     * @return
+     * @return true if the element is acceptable
      * @see org.argouml.uml.diagram.ui.UMLDiagram#doesAccept(java.lang.Object)
      */
     @Override
@@ -214,32 +218,27 @@
     private FigClassifierRole makeNewFigCR(Object classifierRole, 
             Point location) {
         if (classifierRole != null) {
-            FigClassifierRole newCR = new FigClassifierRole(classifierRole);
-            
-            getGraphModel().getNodes().add(newCR.getOwner());
+            Rectangle bounds = new Rectangle();
             
             // Y position of the new CR should match existing CRs Y position
-            List nodes = getLayer().getContentsNoEdges();
-            int i = 0;
-            boolean figClassifierRoleFound = false;
-            Fig fig = null;
-            while (i < nodes.size() && !figClassifierRoleFound) {
-                fig = (Fig) nodes.get(i);
-                if (nodes.get(i) instanceof Fig) {
-                    if (fig != newCR && fig instanceof FigClassifierRole) {
-                        newCR.setY(((Fig) fig).getY());
-                        newCR.setHeight(((Fig) fig).getHeight());
-                        figClassifierRoleFound = true;
-                    }
+            for (Fig fig : (List<Fig>) getLayer().getContentsNoEdges()) {
+                if (fig instanceof FigClassifierRole) {
+                    bounds.y = fig.getY();
+                    bounds.height = fig.getHeight();
+                    break;
                 }
-                i++;
             }
             if (location != null) {
-                if (newCR.getY() == 0) {
-                    newCR.setY(location.y);
+                if (bounds.y == 0) {
+                    bounds.y = location.y;
                 }
-                newCR.setX(location.x);
+                bounds.x = location.x;
             }
+
+            FigClassifierRole newCR = new FigClassifierRole(classifierRole,
+                    bounds, getDiagramSettings());
+            getGraphModel().getNodes().add(newCR.getOwner());
+            
             return newCR;
         }
         return null;

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=1035725

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.