Author: bobtarling
Date: 2011-04-21 08:18:00-0700
New Revision: 19268

Modified:
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigBaseNode.java
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/PentagonDisplayState.java
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RRectDisplayState.java
   
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RectDisplayState.java

Log:
Centralize min size logic into one class

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java?view=diff&pathrev=19268&r1=19267&r2=19268
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java
        (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java
        2011-04-21 08:18:00-0700
@@ -14,7 +14,6 @@
 package org.argouml.activity2.diagram;
 
 import java.awt.Color;
-import java.awt.Dimension;
 import java.awt.Polygon;
 import java.awt.Rectangle;
 
@@ -24,27 +23,12 @@
 class ConcavePentagonDisplayState extends BaseDisplayState
         implements StereotypeDisplayer, NameDisplayer {
 
-    private static final int PADDING = 8;
-    
     public ConcavePentagonDisplayState(Rectangle rect, Color lineColor,
             Color fillColor, Object modelElement, DiagramSettings settings) {
         super(rect, lineColor, fillColor, modelElement, settings);
         createBigPort(rect, lineColor, fillColor);
     }
 
-    @Override
-    public Dimension getMinimumSize() {
-        final Dimension stereoDim = getStereotypeDisplay().getMinimumSize();
-        final Dimension nameDim = getNameDisplay().getMinimumSize();
-
-        int w = Math.max(stereoDim.width, nameDim.width) + PADDING * 2;
-        /* The stereoDim has height=2, even if it is empty, 
-         * hence the -2 below: */
-        final int h = stereoDim.height - 2 + nameDim.height + PADDING;
-        w = Math.max(w, h + 44); // the width needs to be > the height
-        return new Dimension(w, h);
-    }
-    
     protected DiagramElement createBigPort(
             final Rectangle rect,
             final Color lineColor,

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigBaseNode.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigBaseNode.java?view=diff&pathrev=19268&r1=19267&r2=19268
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigBaseNode.java
        (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/FigBaseNode.java
        2011-04-21 08:18:00-0700
@@ -83,6 +83,11 @@
         final Rectangle oldBounds = getBounds();
         
         bounds = new Rectangle(x, y, w, h);
+        
+        if (oldBounds.equals(bounds)) {
+            return;
+        }
+        
         _x = x;
         _y = y;
         _w = w;
@@ -90,9 +95,7 @@
         
         positionChildren();
         
-        if (!oldBounds.equals(getBounds())) {
-            firePropChange("bounds", oldBounds, bounds);
-        }
+        firePropChange("bounds", oldBounds, bounds);
     }
 
     protected Rectangle getBoundsImpl() {

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/PentagonDisplayState.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/PentagonDisplayState.java?view=diff&pathrev=19268&r1=19267&r2=19268
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/PentagonDisplayState.java
       (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/PentagonDisplayState.java
       2011-04-21 08:18:00-0700
@@ -31,19 +31,6 @@
         createBigPort(rect, lineColor, fillColor);
     }
 
-    @Override
-    public Dimension getMinimumSize() {
-        final Dimension stereoDim = getStereotypeDisplay().getMinimumSize();
-        final Dimension nameDim = getNameDisplay().getMinimumSize();
-
-        int w = Math.max(stereoDim.width, nameDim.width) + PADDING * 2;
-        /* The stereoDim has height=2, even if it is empty, 
-         * hence the -2 below: */
-        final int h = stereoDim.height - 2 + nameDim.height + PADDING;
-        w = Math.max(w, h + 44); // the width needs to be > the height
-        return new Dimension(w, h);
-    }
-    
     protected DiagramElement createBigPort(
             final Rectangle rect,
             final Color lineColor,
@@ -67,6 +54,10 @@
         return poly;
     }
     
+    protected int getLeftMargin() {
+        return getBounds().height / 2;
+    }
+    
     private class Poly extends FigPoly implements DiagramElement {
         Poly() {
             super();

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RRectDisplayState.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RRectDisplayState.java?view=diff&pathrev=19268&r1=19267&r2=19268
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RRectDisplayState.java
  (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RRectDisplayState.java
  2011-04-21 08:18:00-0700
@@ -27,7 +27,6 @@
 class RRectDisplayState extends BaseDisplayState
             implements StereotypeDisplayer, NameDisplayer {
 
-    private static final int PADDING = 8;
     private static int RADIUS = 16;
     
     public RRectDisplayState(
@@ -40,26 +39,6 @@
         createBigPort(rect, lineColor, fillColor);
     }
 
-    @Override
-    public Dimension getMinimumSize() {
-        
-        final Dimension nameDim = getNameDisplay().getMinimumSize();
-        int width = nameDim.width;
-        int height = nameDim.height;
-        if (getStereotypeDisplay() != null) {
-            final Dimension stereoDim = 
getStereotypeDisplay().getMinimumSize();
-            width += Math.max(stereoDim.width, nameDim.width);
-            height += (stereoDim.height - 2);
-        }
-        
-        int w = width + RADIUS * 2;
-        /* The stereoDim has height=2, even if it is empty, 
-         * hence the -2 below: */
-        final int h = height + PADDING;
-        w = Math.max(w, h + 44); // the width needs to be > the height
-        return new Dimension(w, h);
-    }
-    
     DiagramElement createBigPort(Rectangle rect, Color lineColor, Color 
fillColor) {
         return new RRect(
                 rect.x, rect.y, rect.width, rect.height, lineColor, fillColor);
@@ -78,4 +57,12 @@
         }
     }
     
+    
+    protected int getRightMargin() {
+        return RADIUS;
+    }
+    
+    protected int getLeftMargin() {
+        return RADIUS;
+    }
 }

Modified: 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RectDisplayState.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RectDisplayState.java?view=diff&pathrev=19268&r1=19267&r2=19268
==============================================================================
--- 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RectDisplayState.java
   (original)
+++ 
trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/RectDisplayState.java
   2011-04-21 08:18:00-0700
@@ -32,21 +32,6 @@
         createBigPort(rect, lineColor, fillColor);
     }
 
-    @Override
-    public Dimension getMinimumSize() {
-        final Dimension stereoDim = getStereotypeDisplay().getMinimumSize();
-        final Dimension nameDim = getNameDisplay().getMinimumSize();
-
-        int w = Math.max(stereoDim.width, nameDim.width) + PADDING * 2;
-        /* The stereoDim has height=2, even if it is empty, 
-         * hence the -2 below: */
-        final int h = stereoDim.height - 2 + nameDim.height + PADDING;
-        w = Math.max(w, h + 44); // the width needs to be > the height
-        return new Dimension(w, h);
-    }
-    
-    
-    
     DiagramElement createBigPort(
             final Rectangle rect,
             final Color lineColor,

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

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to