Author: mvw
Date: 2008-04-28 09:30:22-0700
New Revision: 14498

Modified:
   trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties
   
trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java
   
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java
   
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java
   
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java

Log:
Corrected help-text for ComponentInstance: Notation for ComponentInstance does 
not support stereotypes.

Simplified the notation of FigComponentInstance.

Made the name of a new ComponentInstance underlined.

Comments, generics, style.

Issue 4903 only solved when a new ComponentInstance is drawn, not after loading.

Modified: trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties?view=diff&rev=14498&p1=trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties&p2=trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties&r1=14497&r2=14498
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties       
(original)
+++ trunk/src/argouml-app/src/org/argouml/i18n/parsing.properties       
2008-04-28 09:30:22-0700
@@ -70,7 +70,7 @@
   [ "<<" stereotype ">>" ]  name
 parsing.help.fig-componentinstance = Enter the name of the \
   componentinstance according: \
-  [ "<<" stereotype ">>" ] name [ ":" type [ "," type]*]
+  name [ ":" type [ "," type]*]
 parsing.help.fig-extensionpoint = Enter the Extension Point text according: \
   [ name ":" ] [ location ]
 parsing.help.fig-message = Enter the message definition according: \

Modified: 
trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java?view=diff&rev=14498&p1=trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java&p2=trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java&r1=14497&r2=14498
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java
      (original)
+++ 
trunk/src/argouml-app/src/org/argouml/notation/providers/uml/ComponentInstanceNotationUml.java
      2008-04-28 09:30:22-0700
@@ -1,5 +1,5 @@
 // $Id$
-// Copyright (c) 2005-2007 The Regents of the University of California. All
+// Copyright (c) 2005-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
@@ -52,6 +52,10 @@
 
     /**
      * Parse a line of the form: "name : base-component".
+     * <p>
+     * The base-component part is a comma separated list of Components. <p>
+     * 
+     * Note that stereotypes are not supported.
      *
      * [EMAIL PROTECTED]
      */
@@ -78,7 +82,7 @@
 
         tokenizer = new StringTokenizer(bases, ",");
 
-        List classifiers = new ArrayList();
+        List<Object> classifiers = new ArrayList<Object>();
         Object ns = Model.getFacade().getNamespace(modelElement);
         if (ns != null) {
             while (tokenizer.hasMoreElements()) {

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java?view=diff&rev=14498&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java&r1=14497&r2=14498
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java
   (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/AbstractFigComponent.java
   2008-04-28 09:30:22-0700
@@ -1,5 +1,5 @@
 // $Id$
-// Copyright (c) 2007 The Regents of the University of California. All
+// Copyright (c) 2007-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
@@ -28,7 +28,6 @@
 import java.awt.Dimension;
 import java.awt.Rectangle;
 import java.beans.PropertyChangeEvent;
-import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
@@ -36,11 +35,8 @@
 import org.argouml.model.AssociationChangeEvent;
 import org.argouml.model.AttributeChangeEvent;
 import org.argouml.model.Model;
-import org.argouml.uml.diagram.ui.FigEdgeModelElement;
 import org.argouml.uml.diagram.ui.FigNodeModelElement;
-import org.tigris.gef.base.Selection;
 import org.tigris.gef.graph.GraphModel;
-import org.tigris.gef.presentation.Fig;
 import org.tigris.gef.presentation.FigRect;
 import org.tigris.gef.presentation.FigText;
 
@@ -59,23 +55,28 @@
      * left edge of the main rectangle. Originally named BIGPORT_X (which
      * explains what BX stands for).
      */
-    protected static final int BX = 10;
-    protected static final int FINGER_HEIGHT = BX;
-    protected static final int FINGER_WIDTH = BX * 2;
+    private static final int BX = 10;
+    private static final int FINGER_HEIGHT = BX;
+    private static final int FINGER_WIDTH = BX * 2;
     private static final int OVERLAP = 0;
-    protected static final int DEFAULT_WIDTH = 120;
-    protected static final int DEFAULT_HEIGHT = 80;
-    protected FigRect cover;
-    protected FigRect upperRect;
-    protected FigRect lowerRect;
+    private static final int DEFAULT_WIDTH = 120;
+    private static final int DEFAULT_HEIGHT = 80;
+    private FigRect cover;
+    private FigRect upperRect;
+    private FigRect lowerRect;
 
+    /**
+     * The constructor.
+     */
     public AbstractFigComponent() {
         super();
         cover = new FigRect(BX, 10, DEFAULT_WIDTH, DEFAULT_HEIGHT, Color.black,
                 Color.white);
-        upperRect = new FigRect(0, 2 * FINGER_HEIGHT, FINGER_WIDTH, 
FINGER_HEIGHT,
+        upperRect = new FigRect(0, 2 * FINGER_HEIGHT, 
+                FINGER_WIDTH, FINGER_HEIGHT,
                 Color.black, Color.white);
-        lowerRect = new FigRect(0, 5 * FINGER_HEIGHT, FINGER_WIDTH, 
FINGER_HEIGHT,
+        lowerRect = new FigRect(0, 5 * FINGER_HEIGHT, 
+                FINGER_WIDTH, FINGER_HEIGHT,
                 Color.black, Color.white);
 
         getNameFig().setLineWidth(0);
@@ -99,16 +100,11 @@
     public AbstractFigComponent(GraphModel gm, Object node) {
         this();
         setOwner(node);
-        if (Model.getFacade().isAClassifier(node)
-                && (Model.getFacade().getName(node) != null)) {
-            getNameFig().setText(Model.getFacade().getName(node));
-        }
-        updateBounds();
     }
 
     @Override
     public Object clone() {
-        FigComponent figClone = (FigComponent) super.clone();
+        AbstractFigComponent figClone = (AbstractFigComponent) super.clone();
         Iterator it = figClone.getFigs().iterator();
         figClone.setBigPort((FigRect) it.next());
         figClone.cover = (FigRect) it.next();
@@ -133,12 +129,8 @@
 
     @Override
     protected void updateListeners(Object oldOwner, Object newOwner) {
-        if (oldOwner != null) {
-            removeAllElementListeners();
-        }
+        super.updateListeners(oldOwner, newOwner);
         if (newOwner != null) {
-            // add the listeners to the newOwner
-            addElementListener(newOwner);
             Collection c = Model.getFacade().getStereotypes(newOwner);
             Iterator i = c.iterator();
             while (i.hasNext()) {
@@ -148,13 +140,6 @@
         }
     }
 
-    /**
-     * @param b switch underline on or off
-     */
-    public void setUnderline(boolean b) {
-        getNameFig().setUnderline(b);
-    }
-
     @Override
     public void setLineColor(Color c) {
         cover.setLineColor(c);
@@ -167,11 +152,6 @@
     }
 
     @Override
-    public Selection makeSelection() {
-        return new SelectionComponent(this);
-    }
-
-    @Override
     public Dimension getMinimumSize() {
         Dimension stereoDim = getStereotypeFig().getMinimumSize();
         Dimension nameDim = getNameFig().getMinimumSize();
@@ -219,47 +199,6 @@
         updateEdges();
     }
 
-    @Override
-    public void setEnclosingFig(Fig encloser) {
-
-        Object comp = getOwner();
-        if (encloser != null
-                && (Model.getFacade().isANode(encloser.getOwner()) 
-                        || Model.getFacade().isAComponent(encloser.getOwner()))
-                && getOwner() != null) {
-            if (Model.getFacade().isANode(encloser.getOwner())) {
-                Object node = encloser.getOwner();
-                if (!Model.getFacade().getDeploymentLocations(comp).contains(
-                        node)) {
-                    Model.getCoreHelper().addDeploymentLocation(comp, node);
-                }
-            }
-            super.setEnclosingFig(encloser);
-
-            if (getLayer() != null) {
-                // elementOrdering(figures);
-                List contents = new ArrayList(getLayer().getContents());
-                Iterator it = contents.iterator();
-                while (it.hasNext()) {
-                    Object o = it.next();
-                    if (o instanceof FigEdgeModelElement) {
-                        FigEdgeModelElement figedge = (FigEdgeModelElement) o;
-                        figedge.getLayer().bringToFront(figedge);
-                    }
-                }
-            }
-        } else if (encloser == null && getEnclosingFig() != null) {
-            Object encloserOwner = getEnclosingFig().getOwner();
-            if (Model.getFacade().isANode(encloserOwner)
-                    && (Model.getFacade().getDeploymentLocations(comp)
-                            .contains(encloserOwner))) {
-                Model.getCoreHelper().removeDeploymentLocation(comp,
-                        encloserOwner);
-            }
-            super.setEnclosingFig(encloser);
-        }
-    }
-
     /**
      * TODO: This is not used anywhere. Can we remove it?
      * 
@@ -287,18 +226,6 @@
     }
 
     @Override
-    protected void updateStereotypeText() {
-        getStereotypeFig().setOwner(getOwner());
-    }
-
-    @Override
-    protected void textEditStarted(FigText ft) {
-        if (ft == getNameFig()) {
-            showHelp("parsing.help.fig-component");
-        }
-    }
-
-    @Override
     public Rectangle getHandleBox() {
         Rectangle r = getBounds();
         return new Rectangle(r.x + BX, r.y, r.width - BX, r.height);

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java?view=diff&rev=14498&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java&r1=14497&r2=14498
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java
   (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponent.java
   2008-04-28 09:30:22-0700
@@ -1,5 +1,5 @@
 // $Id$
-// Copyright (c) 1996-2007 The Regents of the University of California. All
+// 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
@@ -25,9 +25,17 @@
 package org.argouml.uml.diagram.deployment.ui;
 
 import java.awt.event.MouseEvent;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
 import java.util.Vector;
 
+import org.argouml.model.Model;
+import org.argouml.uml.diagram.ui.FigEdgeModelElement;
+import org.tigris.gef.base.Selection;
 import org.tigris.gef.graph.GraphModel;
+import org.tigris.gef.presentation.Fig;
+import org.tigris.gef.presentation.FigText;
 
 /**
  * Class to display graphics for a UML Component in a diagram.
@@ -52,6 +60,58 @@
         super(gm, node);
     }
 
+    @Override
+    protected void textEditStarted(FigText ft) {
+        if (ft == getNameFig()) {
+            showHelp("parsing.help.fig-component");
+        }
+    }
+
+    @Override
+    public Selection makeSelection() {
+        return new SelectionComponent(this);
+    }
+
+    @Override
+    public void setEnclosingFig(Fig encloser) {
+
+        Object comp = getOwner();
+        if (encloser != null
+                && (Model.getFacade().isANode(encloser.getOwner()) 
+                        || Model.getFacade().isAComponent(encloser.getOwner()))
+                && getOwner() != null) {
+            if (Model.getFacade().isANode(encloser.getOwner())) {
+                Object node = encloser.getOwner();
+                if (!Model.getFacade().getDeploymentLocations(comp).contains(
+                        node)) {
+                    Model.getCoreHelper().addDeploymentLocation(comp, node);
+                }
+            }
+            super.setEnclosingFig(encloser);
+
+            if (getLayer() != null) {
+                // elementOrdering(figures);
+                List contents = new ArrayList(getLayer().getContents());
+                Iterator it = contents.iterator();
+                while (it.hasNext()) {
+                    Object o = it.next();
+                    if (o instanceof FigEdgeModelElement) {
+                        FigEdgeModelElement figedge = (FigEdgeModelElement) o;
+                        figedge.getLayer().bringToFront(figedge);
+                    }
+                }
+            }
+        } else if (encloser == null && getEnclosingFig() != null) {
+            Object encloserOwner = getEnclosingFig().getOwner();
+            if (Model.getFacade().isANode(encloserOwner)
+                    && (Model.getFacade().getDeploymentLocations(comp)
+                            .contains(encloserOwner))) {
+                Model.getCoreHelper().removeDeploymentLocation(comp,
+                        encloserOwner);
+            }
+            super.setEnclosingFig(encloser);
+        }
+    }
 
     /*
      * @see 
org.tigris.gef.ui.PopupGenerator#getPopUpActions(java.awt.event.MouseEvent)

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java?view=diff&rev=14498&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java&r1=14497&r2=14498
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java
   (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/deployment/ui/FigComponentInstance.java
   2008-04-28 09:30:22-0700
@@ -1,5 +1,5 @@
 // $Id$
-// Copyright (c) 1996-2007 The Regents of the University of California. All
+// 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
@@ -25,15 +25,12 @@
 package org.argouml.uml.diagram.deployment.ui;
 
 import java.awt.Color;
-import java.awt.Rectangle;
 import java.awt.event.MouseEvent;
-import java.beans.PropertyVetoException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
 import org.argouml.model.Model;
-import org.argouml.notation.NotationProvider;
 import org.argouml.notation.NotationProviderFactory2;
 import org.argouml.uml.diagram.ui.FigEdgeModelElement;
 import org.tigris.gef.base.Editor;
@@ -41,7 +38,6 @@
 import org.tigris.gef.base.Selection;
 import org.tigris.gef.graph.GraphModel;
 import org.tigris.gef.presentation.Fig;
-import org.tigris.gef.presentation.FigText;
 
 /**
  * Class to display graphics for a UML ComponentInstance in a diagram.
@@ -50,8 +46,6 @@
  */
 public class FigComponentInstance extends AbstractFigComponent {
 
-    private NotationProvider notationProvider;
-
     /**
      * Construct a default ComponentInstance figure.
      */
@@ -68,19 +62,12 @@
      */
     public FigComponentInstance(GraphModel gm, Object node) {
         super(gm, node);
+        getNameFig().setUnderline(true);
     }
 
-    /*
-     * @see 
org.argouml.uml.diagram.ui.FigNodeModelElement#initNotationProviders(java.lang.Object)
-     */
     @Override
-    protected void initNotationProviders(Object own) {
-        super.initNotationProviders(own);
-        if (Model.getFacade().isAComponentInstance(own)) {
-            notationProvider =
-                NotationProviderFactory2.getInstance().getNotationProvider(
-                    NotationProviderFactory2.TYPE_COMPONENTINSTANCE, own);
-        }
+    protected int getNotationProviderType() {
+        return NotationProviderFactory2.TYPE_COMPONENTINSTANCE;
     }
 
     /*
@@ -107,7 +94,6 @@
         }
     }
 
-   
     /*
      * @see org.tigris.gef.presentation.Fig#makeSelection()
      */
@@ -198,46 +184,4 @@
         }
     }
 
-
-    /*
-     * @see 
org.argouml.uml.diagram.ui.FigNodeModelElement#textEdited(org.tigris.gef.presentation.FigText)
-     */
-    @Override
-    protected void textEdited(FigText ft) throws PropertyVetoException {
-        if (ft == getNameFig()) {
-            notationProvider.parse(getOwner(), ft.getText());
-            ft.setText(notationProvider.toString(getOwner(), null));
-        }
-    }
-
-    /*
-     * @see 
org.argouml.uml.diagram.ui.FigNodeModelElement#textEditStarted(org.tigris.gef.presentation.FigText)
-     */
-    @Override
-    protected void textEditStarted(FigText ft) {
-        if (ft == getNameFig()) {
-            showHelp(notationProvider.getParsingHelp());
-        }
-    }
-
-    /*
-     * @see 
org.argouml.uml.diagram.ui.FigNodeModelElement#updateStereotypeText()
-     */
-    @Override
-    protected void updateStereotypeText() {
-        getStereotypeFig().setOwner(getOwner());
-    }
-    
-    /*
-     * @see org.argouml.uml.diagram.ui.FigNodeModelElement#updateNameText()
-     */
-    @Override
-    protected void updateNameText() {
-        if (isReadyToEdit()) {
-            getNameFig().setText(notationProvider.toString(getOwner(), null));
-        }
-        Rectangle r = getBounds();
-        setBounds(r.x, r.y, r.width, r.height);
-    }
-
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to