You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ap...@apache.org on 2007/03/12 14:21:16 UTC
svn commit: r517207 - in /harmony/enhanced/classlib/trunk/modules/swing/src:
main/java/common/javax/swing/plaf/basic/BasicSliderUI.java
test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java
Author: apetrenko
Date: Mon Mar 12 06:21:15 2007
New Revision: 517207
URL: http://svn.apache.org/viewvc?view=rev&rev=517207
Log:
Patch for HARMONY-2879 "[classlib][swing] j.s.plaf.basic.BasicSliderUI.createXXXListener() methods modify slider field"
Modified:
harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicSliderUI.java
harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java
Modified: harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicSliderUI.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicSliderUI.java?view=diff&rev=517207&r1=517206&r2=517207
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicSliderUI.java (original)
+++ harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicSliderUI.java Mon Mar 12 06:21:15 2007
@@ -92,7 +92,6 @@
}
}
-
public class ComponentHandler extends ComponentAdapter {
@Override
public void componentResized(final ComponentEvent e) {
@@ -383,6 +382,12 @@
private Color focusColor;
private boolean isDragging;
+
+ private ChangeListener changeHandler;
+ private ComponentListener componentHandler;
+ private FocusListener focusHandler;
+ private PropertyChangeListener propertyChangeHandler;
+
private static final int THUMB_WIDTH = 11;
private static final int THUMB_HEIGHT = 20;
private static final int TRACK_SIZE = 2;
@@ -434,7 +439,6 @@
@Override
public void uninstallUI(final JComponent c) {
if (c != slider) {
- // TODO Perform i18n after HARMONY-1320 is applied
throw new IllegalComponentStateException(Messages.getString("swing.0E",new Object[]{this, c, slider})); //$NON-NLS-1$
}
uninstallListeners(slider);
@@ -452,23 +456,28 @@
}
protected TrackListener createTrackListener(final JSlider slider) {
- this.slider = slider;
return new TrackListener();
}
protected ChangeListener createChangeListener(final JSlider slider) {
- this.slider = slider;
- return new ChangeHandler();
+ if (changeHandler == null) {
+ changeHandler = new ChangeHandler();
+ }
+ return changeHandler;
}
protected ComponentListener createComponentListener(final JSlider slider) {
- this.slider = slider;
- return new ComponentHandler();
+ if (componentHandler == null) {
+ componentHandler = new ComponentHandler();
+ }
+ return componentHandler;
}
protected FocusListener createFocusListener(final JSlider slider) {
- this.slider = slider;
- return new FocusHandler();
+ if (focusHandler == null) {
+ focusHandler = new FocusHandler();
+ }
+ return focusHandler;
}
protected ScrollListener createScrollListener(final JSlider slider) {
@@ -478,8 +487,10 @@
}
protected PropertyChangeListener createPropertyChangeListener(final JSlider slider) {
- this.slider = slider;
- return new PropertyChangeHandler();
+ if (propertyChangeHandler == null) {
+ propertyChangeHandler = new PropertyChangeHandler();
+ }
+ return propertyChangeHandler;
}
protected void installListeners(final JSlider slider) {
Modified: harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java?view=diff&rev=517207&r1=517206&r2=517207
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java (original)
+++ harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/plaf/basic/BasicSliderUITest.java Mon Mar 12 06:21:15 2007
@@ -14,10 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/**
- * @author Sergey Burlak
- * @version $Revision$
- */
package javax.swing.plaf.basic;
import java.awt.IllegalComponentStateException;
@@ -84,31 +80,68 @@
public void testCreateUI() throws Exception {
assertNotNull(BasicSliderUI.createUI(slider));
- assertFalse(BasicSliderUI.createUI(slider) == BasicSliderUI.createUI(slider));
+ assertNotSame(BasicSliderUI.createUI(slider),
+ BasicSliderUI.createUI(slider));
}
public void testCreateTrackListener() throws Exception {
+ assertNull(sliderUI.slider);
assertNotNull(sliderUI.createTrackListener(slider));
- assertFalse(sliderUI.createTrackListener(slider) == sliderUI
- .createTrackListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.trackListener);
+ assertNotSame(sliderUI.createTrackListener(slider),
+ sliderUI.createTrackListener(new JSlider()));
}
public void testCreateChangeListener() throws Exception {
+ assertNull(sliderUI.slider);
assertNotNull(sliderUI.createChangeListener(slider));
- assertFalse(sliderUI.createChangeListener(slider) == sliderUI
- .createChangeListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.changeListener);
+ assertSame(sliderUI.createChangeListener(slider),
+ sliderUI.createChangeListener(new JSlider()));
+ }
+
+ public void testCreateChangeListenerNotSame() throws Exception {
+ assertNotSame(sliderUI.createChangeListener(slider),
+ new BasicSliderUI(slider).createChangeListener(slider));
}
public void testCreateComponentListener() throws Exception {
+ assertNull(sliderUI.slider);
assertNotNull(sliderUI.createComponentListener(slider));
- assertFalse(sliderUI.createComponentListener(slider) == sliderUI
- .createComponentListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.componentListener);
+ assertSame(sliderUI.createComponentListener(slider),
+ sliderUI.createComponentListener(new JSlider()));
+ }
+
+ public void testCreateComponentListenerNotSame() throws Exception {
+ assertNotSame(sliderUI.createComponentListener(slider),
+ new BasicSliderUI(slider).createComponentListener(slider));
+ }
+
+ public void testCreateFocusListener() throws Exception {
+ assertNull(sliderUI.slider);
+ assertNotNull(sliderUI.createFocusListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.focusListener);
+ assertSame(sliderUI.createFocusListener(slider),
+ sliderUI.createFocusListener(new JSlider()));
+ }
+
+ public void testCreateFocusListenerNotSame() throws Exception {
+ assertNotSame(sliderUI.createFocusListener(slider),
+ new BasicSliderUI(slider).createFocusListener(slider));
}
public void testCreateScrollListener() throws Exception {
+ assertNull(sliderUI.slider);
assertNotNull(sliderUI.createScrollListener(slider));
- assertFalse(sliderUI.createScrollListener(slider) == sliderUI
- .createScrollListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.scrollListener);
+ assertNotSame(sliderUI.createScrollListener(slider),
+ sliderUI.createScrollListener(slider));
}
// Regression for HARMONY-2878
@@ -117,9 +150,17 @@
}
public void testCreatePropertyChangeListener() throws Exception {
+ assertNull(sliderUI.slider);
assertNotNull(sliderUI.createPropertyChangeListener(slider));
- assertFalse(sliderUI.createPropertyChangeListener(slider) == sliderUI
- .createPropertyChangeListener(slider));
+ assertNull(sliderUI.slider);
+ assertNull(sliderUI.propertyChangeListener);
+ assertSame(sliderUI.createPropertyChangeListener(slider),
+ sliderUI.createPropertyChangeListener(new JSlider()));
+ }
+
+ public void testCreatePropertyChangeListenerNotSame() throws Exception {
+ assertNotSame(sliderUI.createPropertyChangeListener(slider),
+ new BasicSliderUI(slider).createPropertyChangeListener(slider));
}
public void testGetShadowColor() throws Exception {