| /* AdjustmentEvent.java -- an adjustable value was changed |
| Copyright (C) 1999, 2002, 2004, 2005 Free Software Foundation, Inc. |
| |
| This file is part of GNU Classpath. |
| |
| GNU Classpath is free software; you can redistribute it and/or modify |
| it under the terms of the GNU General Public License as published by |
| the Free Software Foundation; either version 2, or (at your option) |
| any later version. |
| |
| GNU Classpath is distributed in the hope that it will be useful, but |
| WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| General Public License for more details. |
| |
| You should have received a copy of the GNU General Public License |
| along with GNU Classpath; see the file COPYING. If not, write to the |
| Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA |
| 02110-1301 USA. |
| |
| Linking this library statically or dynamically with other modules is |
| making a combined work based on this library. Thus, the terms and |
| conditions of the GNU General Public License cover the whole |
| combination. |
| |
| As a special exception, the copyright holders of this library give you |
| permission to link this library with independent modules to produce an |
| executable, regardless of the license terms of these independent |
| modules, and to copy and distribute the resulting executable under |
| terms of your choice, provided that you also meet, for each linked |
| independent module, the terms and conditions of the license of that |
| module. An independent module is a module which is not derived from |
| or based on this library. If you modify this library, you may extend |
| this exception to your version of the library, but you are not |
| obligated to do so. If you do not wish to do so, delete this |
| exception statement from your version. */ |
| |
| |
| package java.awt.event; |
| |
| import java.awt.AWTEvent; |
| import java.awt.Adjustable; |
| |
| /** |
| * This class represents an event that is generated when an adjustable |
| * value is changed. |
| * |
| * @author Aaron M. Renn (arenn@urbanophile.com) |
| * @see Adjustable |
| * @see AdjustmentListener |
| * @since 1.1 |
| * @status updated to 1.4 |
| */ |
| public class AdjustmentEvent extends AWTEvent |
| { |
| /** |
| * Compatible with JDK 1.1+. |
| */ |
| private static final long serialVersionUID = 5700290645205279921L; |
| |
| /** This is the first id in the range of ids used by adjustment events. */ |
| public static final int ADJUSTMENT_FIRST = 601; |
| |
| /** This is the last id in the range of ids used by adjustment events. */ |
| public static final int ADJUSTMENT_LAST = 601; |
| |
| /** This is the id indicating an adjustment value changed. */ |
| public static final int ADJUSTMENT_VALUE_CHANGED = 601; |
| |
| /** Adjustment type for unit increments. */ |
| public static final int UNIT_INCREMENT = 1; |
| |
| /** Adjustment type for unit decrements. */ |
| public static final int UNIT_DECREMENT = 2; |
| |
| /** Adjustment type for block decrements. */ |
| public static final int BLOCK_DECREMENT = 3; |
| |
| /** Adjustment type for block increments. */ |
| public static final int BLOCK_INCREMENT = 4; |
| |
| /** Adjustment type for tracking adjustments. */ |
| public static final int TRACK = 5; |
| |
| /** |
| * The adjustable object that caused the event. |
| * |
| * @see #getAdjustable() |
| * @serial the cause |
| */ |
| private final Adjustable adjustable; |
| |
| /** |
| * The type of adjustment, one of {@link #UNIT_INCREMENT}, |
| * {@link #UNIT_DECREMENT}, {@link #BLOCK_INCREMENT}, |
| * {@link #BLOCK_DECREMENT}, or {@link #TRACK}. |
| * |
| * @see #getAdjustmentType() |
| * @serial the adjustment type |
| */ |
| private final int adjustmentType; |
| |
| /** |
| * The new value of the adjustable; it should be in the range of the |
| * adjustable cause. |
| * |
| * @see #getValue() |
| * @serial the adjustment value |
| */ |
| private final int value; |
| |
| /** |
| * True if this is in a series of multiple adjustment events. |
| * |
| * @see #getValueIsAdjusting() |
| * @serial true if this is not the last adjustment |
| * @since 1.4 |
| */ |
| private final boolean isAdjusting; |
| |
| /** |
| * Initializes an instance of <code>AdjustmentEvent</code> with the |
| * specified source, id, type, and value. Note that an invalid id leads to |
| * unspecified results. |
| * |
| * @param source the source of the event |
| * @param id the event id |
| * @param type the event type, one of the constants of this class |
| * @param value the value of the adjustment |
| * @throws IllegalArgumentException if source is null |
| */ |
| public AdjustmentEvent(Adjustable source, int id, int type, int value) |
| { |
| this(source, id, type, value, false); |
| } |
| |
| /** |
| * Initializes an instance of <code>AdjustmentEvent</code> with the |
| * specified source, id, type, and value. Note that an invalid id leads to |
| * unspecified results. |
| * |
| * @param source the source of the event |
| * @param id the event id |
| * @param type the event type, one of the constants of this class |
| * @param value the value of the adjustment |
| * @param isAdjusting if this event is in a chain of adjustments |
| * @throws IllegalArgumentException if source is null |
| * @since 1.4 |
| */ |
| public AdjustmentEvent(Adjustable source, int id, int type, int value, |
| boolean isAdjusting) |
| { |
| super(source, id); |
| this.adjustmentType = type; |
| this.value = value; |
| adjustable = source; |
| this.isAdjusting = isAdjusting; |
| } |
| |
| /** |
| * This method returns the source of the event as an <code>Adjustable</code>. |
| * |
| * @return the <code>Adjustable</code> source of the event |
| */ |
| public Adjustable getAdjustable() |
| { |
| return adjustable; |
| } |
| |
| /** |
| * Returns the new value of the adjustable object. |
| * |
| * @return the value of the event |
| */ |
| public int getValue() |
| { |
| return value; |
| } |
| |
| /** |
| * Returns the type of the event, which will be one of |
| * {@link #UNIT_INCREMENT}, {@link #UNIT_DECREMENT}, |
| * {@link #BLOCK_INCREMENT}, {@link #BLOCK_DECREMENT}, or {@link #TRACK}. |
| * |
| * @return the type of the event |
| */ |
| public int getAdjustmentType() |
| { |
| return adjustmentType; |
| } |
| |
| /** |
| * Test if this event is part of a sequence of multiple adjustements. |
| * |
| * @return true if this is not the last adjustment |
| * @since 1.4 |
| */ |
| public boolean getValueIsAdjusting() |
| { |
| return isAdjusting; |
| } |
| |
| /** |
| * Returns a string that describes the event. This is in the format |
| * <code>"ADJUSTMENT_VALUE_CHANGED,adjType=" + <type> + ",value=" |
| * + getValue() + ",isAdjusting=" + getValueIsAdjusting()</code>, where |
| * type is the name of the constant returned by getAdjustmentType(). |
| * |
| * @return a string that describes the event |
| */ |
| public String paramString() |
| { |
| return (id == ADJUSTMENT_VALUE_CHANGED |
| ? "ADJUSTMENT_VALUE_CHANGED,adjType=" : "unknown type,adjType=") |
| + (adjustmentType == UNIT_INCREMENT ? "UNIT_INCREMENT,value=" |
| : adjustmentType == UNIT_DECREMENT ? "UNIT_DECREMENT,value=" |
| : adjustmentType == BLOCK_INCREMENT ? "BLOCK_INCREMENT,value=" |
| : adjustmentType == BLOCK_DECREMENT ? "BLOCK_DECREMENT,value=" |
| : adjustmentType == TRACK ? "TRACK,value=" : "unknown type,value=") |
| + value + ",isAdjusting=" + isAdjusting; |
| } |
| } // class AdjustmentEvent |