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/12/21 19:42:27 UTC

svn commit: r1818971 - in /pivot/trunk: demos/src/org/apache/pivot/demos/decorator/ wtk-terra/src/org/apache/pivot/wtk/skin/terra/ wtk/src/org/apache/pivot/wtk/

Author: rwhitcomb
Date: Thu Dec 21 19:42:27 2017
New Revision: 1818971

URL: http://svn.apache.org/viewvc?rev=1818971&view=rev
Log:
PIVOT-999: Take the default methods in interfaces to the next level:
* Begin to deprecate the "xxxxListener.Adapter" classes in favor of
  just implementing the defaults in the "xxxxListener" interface
  itself.
* As a demonstration do this for several small, not much used,
  listener interfaces and then replace the usage of the .Adapter
  class with just the "xxxxListener" interface.


Modified:
    pivot/trunk/demos/src/org/apache/pivot/demos/decorator/DecoratorDemo.java
    pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFormSkin.java
    pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraPanoramaSkin.java
    pivot/trunk/wtk/src/org/apache/pivot/wtk/ComponentMouseListener.java
    pivot/trunk/wtk/src/org/apache/pivot/wtk/NumberRulerListener.java

Modified: pivot/trunk/demos/src/org/apache/pivot/demos/decorator/DecoratorDemo.java
URL: http://svn.apache.org/viewvc/pivot/trunk/demos/src/org/apache/pivot/demos/decorator/DecoratorDemo.java?rev=1818971&r1=1818970&r2=1818971&view=diff
==============================================================================
--- pivot/trunk/demos/src/org/apache/pivot/demos/decorator/DecoratorDemo.java (original)
+++ pivot/trunk/demos/src/org/apache/pivot/demos/decorator/DecoratorDemo.java Thu Dec 21 19:42:27 2017
@@ -42,7 +42,7 @@ public class DecoratorDemo extends Appli
         final FadeDecorator fadeDecorator = new FadeDecorator();
         translucentFrame.getDecorators().insert(fadeDecorator, 0);
 
-        translucentFrame.getComponentMouseListeners().add(new ComponentMouseListener.Adapter() {
+        translucentFrame.getComponentMouseListeners().add(new ComponentMouseListener() {
             @Override
             public void mouseOver(Component component) {
                 fadeDecorator.setOpacity(0.9f);

Modified: pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFormSkin.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFormSkin.java?rev=1818971&r1=1818970&r2=1818971&view=diff
==============================================================================
--- pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFormSkin.java (original)
+++ pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFormSkin.java Thu Dec 21 19:42:27 2017
@@ -246,7 +246,7 @@ public class TerraFormSkin extends Conta
 
     private int maximumFlagImageWidth = 0;
 
-    private ComponentMouseListener fieldMouseListener = new ComponentMouseListener.Adapter() {
+    private ComponentMouseListener fieldMouseListener = new ComponentMouseListener() {
         @Override
         public void mouseOver(Component component) {
             if (!showFlagMessagesInline) {

Modified: pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraPanoramaSkin.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraPanoramaSkin.java?rev=1818971&r1=1818970&r2=1818971&view=diff
==============================================================================
--- pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraPanoramaSkin.java (original)
+++ pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraPanoramaSkin.java Thu Dec 21 19:42:27 2017
@@ -252,7 +252,7 @@ public class TerraPanoramaSkin extends C
         buttonPadding = 4;
     }
 
-    private ComponentMouseListener buttonMouseListener = new ComponentMouseListener.Adapter() {
+    private ComponentMouseListener buttonMouseListener = new ComponentMouseListener() {
         @Override
         public void mouseOver(Component component) {
             // Start scroll timer

Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/ComponentMouseListener.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/ComponentMouseListener.java?rev=1818971&r1=1818970&r2=1818971&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/ComponentMouseListener.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/ComponentMouseListener.java Thu Dec 21 19:42:27 2017
@@ -23,7 +23,9 @@ package org.apache.pivot.wtk;
 public interface ComponentMouseListener {
     /**
      * Component mouse button listener adapter.
+     * @deprecated Since 2.1 and Java 8 the interface itself has default implementations.
      */
+    @Deprecated
     public static class Adapter implements ComponentMouseListener {
         @Override
         public boolean mouseMove(Component component, int x, int y) {
@@ -48,21 +50,27 @@ public interface ComponentMouseListener
      * @param x X position of the mouse.
      * @param y Y position of the mouse.
      * @return <tt>true</tt> to consume the event; <tt>false</tt> to allow it to
-     * propagate.
+     * propagate (default return).
      */
-    public boolean mouseMove(Component component, int x, int y);
+    default public boolean mouseMove(Component component, int x, int y) {
+        return false;
+    }
 
     /**
      * Called when the mouse enters a component.
+     * <p> Default is to do nothing.
      *
      * @param component Component that is now under the mouse pointer.
      */
-    public void mouseOver(Component component);
+    default public void mouseOver(Component component) {
+    }
 
     /**
      * Called when the mouse exits a component.
+     * <p> Default is to do nothing.
      *
      * @param component Component that has now lost the mouse pointer.
      */
-    public void mouseOut(Component component);
+    default public void mouseOut(Component component) {
+    }
 }

Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/NumberRulerListener.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/NumberRulerListener.java?rev=1818971&r1=1818970&r2=1818971&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/NumberRulerListener.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/NumberRulerListener.java Thu Dec 21 19:42:27 2017
@@ -24,7 +24,9 @@ import org.apache.pivot.util.ListenerLis
 public interface NumberRulerListener {
     /**
      * Default implementation of the listener interface.
+     * @deprecated Since 2.1 and Java 8 the interface itself has default implementations.
      */
+    @Deprecated
     public static class Adapter implements NumberRulerListener {
         @Override
         public void orientationChanged(NumberRuler ruler) {
@@ -54,16 +56,20 @@ public interface NumberRulerListener {
 
     /**
      * The orientation of the {@link NumberRuler} changed.
+     * <p> Default operation is to do nothing.
      *
      * @param ruler The component that has changed.
      */
-    public void orientationChanged(NumberRuler ruler);
+    default public void orientationChanged(NumberRuler ruler) {
+    }
 
     /**
      * The text size (number of characters) of the ruler has changed.
+     * <p> Default operation is to do nothing.
      *
      * @param ruler The component that has changed.
      * @param previousSize The previous value of the size.
      */
-    public void textSizeChanged(NumberRuler ruler, int previousSize);
+    default public void textSizeChanged(NumberRuler ruler, int previousSize) {
+    }
 }