You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by rw...@apache.org on 2017/10/02 23:35:08 UTC

svn commit: r1810620 - in /pivot/trunk: wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java wtk/src/org/apache/pivot/wtk/Dimensions.java wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java

Author: rwhitcomb
Date: Mon Oct  2 23:35:08 2017
New Revision: 1810620

URL: http://svn.apache.org/viewvc?rev=1810620&view=rev
Log:
Added a new "expand(Insets)" method to Dimensions, as this is
a fairly common thing to do.  Added tests to DimensionsTest also.

Some cleaning up in TerraTooltipSkin both to use this new method
but also to simplify the fact that there were a bunch of +2 and +1
to the padding values, which seems silly.  So just increased the
original (only) padding values, and make more room on left/right
so the text is more uniformly padded all around.

Modified:
    pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java
    pivot/trunk/wtk/src/org/apache/pivot/wtk/Dimensions.java
    pivot/trunk/wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java

Modified: pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java?rev=1810620&r1=1810619&r2=1810620&view=diff
==============================================================================
--- pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java (original)
+++ pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraTooltipSkin.java Mon Oct  2 23:35:08 2017
@@ -101,13 +101,14 @@ public class TerraTooltipSkin extends Wi
     private static final int DEFAULT_CLOSE_TRANSITION_RATE = 30;
 
     public TerraTooltipSkin() {
-        // Get theme icons/colors
+        // Get theme colors
         Theme theme = Theme.getTheme();
 
-        setBackgroundColor(theme.getColor(19));
-
         borderColor = theme.getColor(7);
-        padding = new Insets(2);
+        setBackgroundColor(19);
+
+        // More padding on left, right makes it more uniform all around
+        padding = new Insets(2, 4, 2, 4);
     }
 
     @Override
@@ -128,14 +129,14 @@ public class TerraTooltipSkin extends Wi
         Component content = tooltip.getContent();
 
         if (height != -1) {
-            height -= (padding.top + padding.bottom + 2);
+            height -= padding.getHeight();
         }
 
         if (content != null) {
             preferredWidth = content.getPreferredWidth(height);
         }
 
-        preferredWidth += (padding.left + padding.right + 2);
+        preferredWidth += padding.getWidth();
 
         return preferredWidth;
     }
@@ -148,36 +149,30 @@ public class TerraTooltipSkin extends Wi
         Component content = tooltip.getContent();
 
         if (width != -1) {
-            width -= (padding.left + padding.right + 2);
+            width -= padding.getWidth();
         }
 
         if (content != null) {
             preferredHeight = content.getPreferredHeight(width);
         }
 
-        preferredHeight += (padding.top + padding.bottom + 2);
+        preferredHeight += padding.getHeight();
 
         return preferredHeight;
     }
 
     @Override
     public Dimensions getPreferredSize() {
-        int preferredWidth = 0;
-        int preferredHeight = 0;
+        Dimensions size = Dimensions.ZERO;
 
         Tooltip tooltip = (Tooltip) getComponent();
         Component content = tooltip.getContent();
 
         if (content != null) {
-            Dimensions contentSize = content.getPreferredSize();
-            preferredWidth = contentSize.width;
-            preferredHeight = contentSize.height;
+            size = content.getPreferredSize();
         }
 
-        preferredWidth += (padding.left + padding.right + 2);
-        preferredHeight += (padding.top + padding.bottom + 2);
-
-        return new Dimensions(preferredWidth, preferredHeight);
+        return size.expand(padding);
     }
 
     @Override
@@ -186,10 +181,10 @@ public class TerraTooltipSkin extends Wi
         Component content = tooltip.getContent();
 
         if (content != null) {
-            int contentWidth = Math.max(getWidth() - (padding.left + padding.right + 2), 0);
-            int contentHeight = Math.max(getHeight() - (padding.top + padding.bottom + 2), 0);
+            int contentWidth = Math.max(getWidth() - padding.getWidth(), 0);
+            int contentHeight = Math.max(getHeight() - padding.getHeight(), 0);
             content.setSize(contentWidth, contentHeight);
-            content.setLocation(padding.left + 1, padding.top + 1);
+            content.setLocation(padding.left, padding.top);
         }
     }
 

Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/Dimensions.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/Dimensions.java?rev=1810620&r1=1810619&r2=1810620&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/Dimensions.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/Dimensions.java Mon Oct  2 23:35:08 2017
@@ -80,6 +80,17 @@ public final class Dimensions implements
         return new Dimensions(width + widthDelta, height + heightDelta);
     }
 
+    /**
+     * Expand this dimensions by the given {@link Insets} amounts
+     * in the width and height directions.
+     *
+     * @param insets The padding amounts (width and height) to expand by.
+     * @return The new dimensions with the changed values.
+     */
+    public Dimensions expand(Insets insets) {
+        return new Dimensions(width + insets.getWidth(), height + insets.getHeight());
+    }
+
     @Override
     public boolean equals(Object object) {
         boolean equals = false;

Modified: pivot/trunk/wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java?rev=1810620&r1=1810619&r2=1810620&view=diff
==============================================================================
--- pivot/trunk/wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java (original)
+++ pivot/trunk/wtk/test/org/apache/pivot/wtk/test/DimensionsTest.java Mon Oct  2 23:35:08 2017
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertEqu
 import org.junit.Test;
 
 import org.apache.pivot.wtk.Dimensions;
+import org.apache.pivot.wtk.Insets;
 
 
 /**
@@ -48,6 +49,10 @@ public class DimensionsTest {
         Dimensions e = Dimensions.decode("23 ; 45");
         Dimensions e_1 = new Dimensions(23, 45);
 
+        Insets i_1 = new Insets(1, 2, 1, 2);
+        Dimensions f = e_1.expand(i_1);
+        Dimensions f_1 = new Dimensions(27, 47);
+
         assertEquals(zero, zero_a);
         assertEquals(one, one_a);
         assertEquals(zero, zero_b);
@@ -57,6 +62,7 @@ public class DimensionsTest {
         assertEquals(c, c_1);
         assertEquals(d, d_1);
         assertEquals(e, e_1);
+        assertEquals(f, f_1);
     }
 
     @Test(expected = IllegalArgumentException.class)