svn commit: r19228 - trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: bobtarling
Date: 2011-04-12 15:49:14-0700
New Revision: 19228

Modified:
   trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDisplayState.java
   trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/ConcavePentagonDisplayState.java
   trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/DiagramElementBuilder.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:
Pass rectangle instead of x,y,w,h in Fig constructors.
Use FigNotation for text

Modified: trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDisplayState.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDisplayState.java?view=diff&pathrev=19228&r1=19227&r2=19228
==============================================================================
--- trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDisplayState.java	(original)
+++ trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/BaseDisplayState.java	2011-04-12 15:49:14-0700
@@ -17,22 +17,30 @@
 import java.awt.Dimension;
 import java.awt.Rectangle;
 
+import org.argouml.notation2.NotationType;
 import org.argouml.uml.diagram.DiagramSettings;
-import org.argouml.uml.diagram.ui.FigSingleLineText;
 import org.argouml.uml.diagram.ui.FigStereotypesGroup;
 import org.tigris.gef.presentation.Fig;
 
 abstract class BaseDisplayState implements StereotypeDisplayer, NameDisplayer {
 
-    private Fig bigPort;
-    private Fig stereotypeFig;
-    private Fig nameFig;
+    private final Fig bigPort;
+    private final Fig stereotypeFig;
+    private final Fig nameFig;
     
-    public BaseDisplayState(int x, int y, int w, int h, Color lineColor,
-            Color fillColor, Object modelElement, DiagramSettings settings) {
+    public BaseDisplayState(
+            final Rectangle rect,
+            final Color lineColor,
+            final Color fillColor,
+            final Object modelElement,
+            final DiagramSettings settings) {
         stereotypeFig = new FigStereotypesGroup(modelElement, new Rectangle(0, 0, 0, 0), settings);
-        nameFig = new FigSingleLineText(modelElement, new Rectangle(0, 0, 0, 0), settings, true);
-        bigPort = createBigPort(x, y, w, h, lineColor, fillColor);
+        nameFig = new FigNotation(
+                modelElement,
+                new Rectangle(0, 0, 0, 0),
+                settings,
+                NotationType.NAME);
+        bigPort = createBigPort(rect, lineColor, fillColor);
     }
     
     public Fig getStereotypeDisplay() {
@@ -44,7 +52,7 @@
     }
 
     abstract Dimension getMinimumSize();
-    abstract Fig createBigPort(int x, int y, int w, int h, Color lineColor, Color fillColor);
+    abstract Fig createBigPort(Rectangle rect, Color lineColor, Color fillColor);
     
     Fig getBigPort() {
         return bigPort;

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=19228&r1=19227&r2=19228
==============================================================================
--- 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-12 15:49:14-0700
@@ -16,6 +16,7 @@
 import java.awt.Color;
 import java.awt.Dimension;
 import java.awt.Polygon;
+import java.awt.Rectangle;
 
 import org.argouml.uml.diagram.DiagramSettings;
 import org.tigris.gef.presentation.Fig;
@@ -25,10 +26,10 @@
 
     private static final int PADDING = 8;
     
-    public ConcavePentagonDisplayState(int x, int y, int w, int h, Color lineColor,
+    public ConcavePentagonDisplayState(Rectangle rect, Color lineColor,
             Color fillColor, Object modelElement, DiagramSettings settings) {
-        super(x, y, w, h, lineColor, fillColor, modelElement, settings);
-        createBigPort(x, y, w, h, lineColor, fillColor);
+        super(rect, lineColor, fillColor, modelElement, settings);
+        createBigPort(rect, lineColor, fillColor);
     }
 
     @Override
@@ -44,17 +45,20 @@
         return new Dimension(w, h);
     }
     
-    protected Fig createBigPort(int x, int y, int w, int h, Color lineColor, Color fillColor) {
+    protected Fig createBigPort(Rectangle rect, Color lineColor, Color fillColor) {
         final FigPoly polyFig = new FigPoly();
         final int[] xs = new int[6];
         final int[] ys = new int[6];
-        
-        xs[0] = x;              ys[0] = y;
-        xs[1] = x + w;      ys[1] = y;
-        xs[2] = x + w;      ys[2] = y + h;
-        xs[3] = x;              ys[3] = y + h;
+        final int x = rect.x;
+        final int y = rect.y;
+        final int w = rect.width;
+        final int h = rect.height;        
+        xs[0] = x;         ys[0] = y;
+        xs[1] = x + w;     ys[1] = y;
+        xs[2] = x + w;     ys[2] = y + h;
+        xs[3] = x;         ys[3] = y + h;
         xs[4] = x + h / 2; ys[4] = y + h / 2;
-        xs[5] = x;              ys[5] = y;
+        xs[5] = x;         ys[5] = y;
         final Polygon p = new Polygon(xs, ys, 6);
         polyFig.setPolygon(p);
         

Modified: trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/DiagramElementBuilder.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/DiagramElementBuilder.java?view=diff&pathrev=19228&r1=19227&r2=19228
==============================================================================
--- trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/DiagramElementBuilder.java	(original)
+++ trunk/src/argouml-core-diagrams-activity2/src/org/argouml/activity2/diagram/DiagramElementBuilder.java	2011-04-12 15:49:14-0700
@@ -13,6 +13,8 @@
 
 package org.argouml.activity2.diagram;
 
+import java.awt.Rectangle;
+
 import org.argouml.uml.diagram.DiagramSettings;
 
 class DiagramElementBuilder {
@@ -21,16 +23,20 @@
     private static final int HEIGHT = 25;
     
     static void buildDiagramElement(
-            final FigBaseNode fig, String style, Object owner, DiagramSettings settings) {
+            final FigBaseNode fig,
+            final String style,
+            final Object owner,
+            final DiagramSettings settings) {
+        
+        final Rectangle bounds =
+            new Rectangle(fig.getX(), fig.getX(), WIDTH, HEIGHT);
+        
         if (style.equals("compartmentbox")) {
-            
+            // For classifiers
         } else if (style.equals("rect")) {
             fig.setDisplayState(
                     new RectDisplayState(
-                            fig.getX(), 
-                            fig.getX(), 
-                            WIDTH, 
-                            HEIGHT, 
+                            bounds, 
                             fig.getLineColor(), 
                             fig.getFillColor(),
                             owner,
@@ -38,10 +44,7 @@
         } else if (style.equals("rrect")) {
             fig.setDisplayState(
                     new RRectDisplayState(
-                            fig.getX(), 
-                            fig.getX(), 
-                            WIDTH, 
-                            HEIGHT, 
+                            bounds, 
                             fig.getLineColor(), 
                             fig.getFillColor(),
                             owner,
@@ -49,10 +52,7 @@
         } else if (style.equals("pentagon")) {
             fig.setDisplayState(
                     new PentagonDisplayState(
-                            fig.getX(), 
-                            fig.getX(), 
-                            WIDTH, 
-                            HEIGHT, 
+                            bounds, 
                             fig.getLineColor(), 
                             fig.getFillColor(),
                             owner,
@@ -60,10 +60,7 @@
         } else if (style.equals("concave-pentagon")) {
             fig.setDisplayState(
                     new ConcavePentagonDisplayState(
-                            fig.getX(), 
-                            fig.getX(), 
-                            WIDTH, 
-                            HEIGHT, 
+                            bounds, 
                             fig.getLineColor(), 
                             fig.getFillColor(),
                             owner,

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=19228&r1=19227&r2=19228
==============================================================================
--- 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-12 15:49:14-0700
@@ -15,6 +15,7 @@
 import java.awt.Color;
 import java.awt.Dimension;
 import java.awt.Polygon;
+import java.awt.Rectangle;
 
 import org.argouml.uml.diagram.DiagramSettings;
 import org.tigris.gef.presentation.Fig;
@@ -24,10 +25,10 @@
 
     private static final int PADDING = 8;
     
-    public PentagonDisplayState(int x, int y, int w, int h, Color lineColor,
+    public PentagonDisplayState(Rectangle rect, Color lineColor,
             Color fillColor, Object modelElement, DiagramSettings settings) {
-        super(x, y, w, h, lineColor, fillColor, modelElement, settings);
-        createBigPort(x, y, w, h, lineColor, fillColor);
+        super(rect, lineColor, fillColor, modelElement, settings);
+        createBigPort(rect, lineColor, fillColor);
     }
 
     @Override
@@ -43,10 +44,14 @@
         return new Dimension(w, h);
     }
     
-    protected Fig createBigPort(int x, int y, int w, int h, Color lineColor, Color fillColor) {
+    protected Fig createBigPort(Rectangle rect, Color lineColor, Color fillColor) {
         final FigPoly polyFig = new FigPoly();
         final int[] xs = new int[6];
         final int[] ys = new int[6];
+        final int x = rect.x;
+        final int y = rect.y;
+        final int w = rect.width;
+        final int h = rect.height;
         xs[0] = x;             ys[0] = y;
         xs[1] = x + w - h / 2; ys[1] = y;
         xs[2] = x + w;         ys[2] = y + h / 2;

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=19228&r1=19227&r2=19228
==============================================================================
--- 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-12 15:49:14-0700
@@ -1,6 +1,6 @@
 /* $Id: $
  *****************************************************************************
- * Copyright (c) 2010 Contributors - see below
+ * Copyright (c) 2010-2011 Contributors - see below
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -15,19 +15,29 @@
 
 import java.awt.Color;
 import java.awt.Dimension;
+import java.awt.Rectangle;
 
 import org.argouml.uml.diagram.DiagramSettings;
 import org.tigris.gef.presentation.Fig;
 import org.tigris.gef.presentation.FigRRect;
 
-public class RRectDisplayState extends BaseDisplayState implements StereotypeDisplayer, NameDisplayer {
+/**
+ * The state for displaying a node as a rounded rectangle
+ * @author Bob Tarling
+ */
+public class RRectDisplayState extends BaseDisplayState
+            implements StereotypeDisplayer, NameDisplayer {
 
     private static final int PADDING = 8;
     
-    public RRectDisplayState(int x, int y, int w, int h, Color lineColor,
-            Color fillColor, Object modelElement, DiagramSettings settings) {
-        super(x, y, w, h, lineColor, fillColor, modelElement, settings);
-        createBigPort(x, y, w, h, lineColor, fillColor);
+    public RRectDisplayState(
+            final Rectangle rect,
+            final Color lineColor,
+            final Color fillColor,
+            final Object modelElement,
+            final DiagramSettings settings) {
+        super(rect, lineColor, fillColor, modelElement, settings);
+        createBigPort(rect, lineColor, fillColor);
     }
 
     @Override
@@ -43,7 +53,8 @@
         return new Dimension(w, h);
     }
     
-    Fig createBigPort(int x, int y, int w, int h, Color lineColor, Color fillColor) {
-        return new FigRRect(x, y, w, h, lineColor, fillColor);
+    Fig createBigPort(Rectangle rect, Color lineColor, Color fillColor) {
+        return new FigRRect(
+                rect.x, rect.y, rect.width, rect.height, lineColor, fillColor);
     }
 }

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=19228&r1=19227&r2=19228
==============================================================================
--- 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-12 15:49:14-0700
@@ -14,6 +14,7 @@
 
 import java.awt.Color;
 import java.awt.Dimension;
+import java.awt.Rectangle;
 
 import org.argouml.uml.diagram.DiagramSettings;
 import org.tigris.gef.presentation.Fig;
@@ -23,11 +24,12 @@
 
     private static final int PADDING = 8;
     
-    public RectDisplayState(int x, int y, int w, int h, Color lineColor,
+    public RectDisplayState(
+            final Rectangle rect, Color lineColor,
             Color fillColor, Object modelElement, DiagramSettings settings) {
-        super(x, y, w, h, lineColor,
+        super(rect, lineColor,
                 fillColor, modelElement, settings);
-        createBigPort(x, y, w, h, lineColor, fillColor);
+        createBigPort(rect, lineColor, fillColor);
     }
 
     @Override
@@ -43,7 +45,8 @@
         return new Dimension(w, h);
     }
     
-    Fig createBigPort(int x, int y, int w, int h, Color lineColor, Color fillColor) {
-        return new FigRect(x, y, w, h, lineColor, fillColor);
+    Fig createBigPort(Rectangle rect, Color lineColor, Color fillColor) {
+        return new FigRect(
+                rect.x, rect.y, rect.width, rect.height, lineColor, fillColor);
     }
 }

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

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.