Author: mvw
Date: 2008-11-09 03:58:40-0800
New Revision: 16001

Modified:
   
trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java

Log:
And this fixes sizing problems for stereotypes on the Package Fig when the 
stereotype is hidden.

Beware that calling getStereotypesFig.isVisible() is not the same as 
"stereotypeVisible" for a FigPackage.

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java?view=diff&rev=16001&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java&r1=16000&r2=16001
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java
       (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/static_structure/ui/FigPackage.java
       2008-11-09 03:58:40-0800
@@ -98,7 +98,7 @@
 
     /** The minimal height of the name. */
     private static final int MIN_HEIGHT = 21;
-    /** The minimal height of the name. */
+    /** The minimal width of the name. */
     private static final int MIN_WIDTH = 50;
 
     /** The initial width of the outer box. */
@@ -392,7 +392,7 @@
 
         // If we have any number of stereotypes displayed, then allow 
         // some space for that (width and height):
-        if (getStereotypeFig().isVisible()) {
+        if (stereotypeVisible) {
             Dimension st = getStereotypeFig().getMinimumSize();
             aSize.width =
                Math.max(aSize.width, st.width);
@@ -459,23 +459,24 @@
 
         int currentY = ya;
 
-        Dimension stereoMin = getStereotypeFig().getMinimumSize();
-        if (getStereotypeFig().isVisible()) {
+        int tabWidth = newW - indentX;
+
+        if (stereotypeVisible) {
+            Dimension stereoMin = getStereotypeFig().getMinimumSize();
             currentY += stereoMin.height;
-        }
+            getStereotypeFig().setBounds(xa, ya,
+                tabWidth, stereoMin.height + 1);
 
-        getStereotypeFig().setBounds(xa, ya,
-                newW - indentX, stereoMin.height + 1);
-        int nameWidth = newW - indentX;
-        if (nameWidth < stereoMin.width + 1) {
-            nameWidth = stereoMin.width + 2;
-        }
-        stereoLineBlinder.setBounds(
+            if (tabWidth < stereoMin.width + 1) {
+                tabWidth = stereoMin.width + 2;
+            }
+            stereoLineBlinder.setBounds(
                 xa + 1,
                 ya + stereoMin.height,
-                nameWidth - 2,
+                tabWidth - 2,
                 2);
-        getNameFig().setBounds(xa, currentY, nameWidth + 1, minNameHeight);
+        }
+        getNameFig().setBounds(xa, currentY, tabWidth + 1, minNameHeight);
 
         // Advance currentY to where the start of the body box is,
         // remembering that it overlaps the next box by 1 pixel. Calculate the

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

Reply via email to