/**
 * Questa classe rappresenta l'evento generato dalla pressione di uno dei pulsanti
 * <code>PIU</code> o <code>MENO</code> di un controllo <code>SpinText</code>.
 * L'evento è passato al relativo <code>ValueChangedListener</code> registrato come
 * ascoltatore nel controllo <code>SpinText</code>.
 * <p>
 * Un oggetto di questa classe contiene le informazioni relative al pulsante che &egrave;
 * stato premuto e all'oggetto che l'ha generato.
 * <p>
 * @author  LeleFT
 * @version 1.0  5/3/2005
 * @see ValueChangedListener
 * @see SpinText
 */
public class ValueChangedEvent {

   private Object source;
   private int eventType;

   /**
    * Questo campo indica che &egrave; stato premuto il pulsante <code>PIU</code>
    */
   public static final int VALUE_UP = 0;

   /**
    * Questo campo indica che &egrave; stato premuto il pulsante <code>MENO</code>
    */
   public static final int VALUE_DOWN = 1;

   /**
    * Costruisce un oggetto <code>ValueChangedEvent</code>.
    * Per costruire un oggetto di questo tipo devono essere forniti l'oggetto che ha
    * generato l'evento ed il pulsante che &egrave; stato premuto.
    *
    * @param source L'oggetto <code>SpinText</code> che ha generato l'evento
    * @param eventType uno dei due valori identificati da <code>ValueChangedEvent.VALUE_UP</code>
    *        e <code>ValueChangedEvent.VALUE_DOWN</code>
    */
   public ValueChangedEvent(Object source, int eventType) {
      this.source = source;
      this.eventType = eventType;
   }

   /**
    * Ritorna l'informazione riguardante il pulsante che &egrave; stato premuto.
    *
    * @return un intero che indica il pulsante premuto: i possibili valori sono
    *         <code>ValueChangedEvent.VALUE_UP</code> o <code>ValueChangedEvent.VALUE_DOWN</code>
    */
   public int getType() { return eventType; }

   /**
    * Ritorna l'oggetto che ha generato questo evento.
    * L'oggetto &egrave; un'istanza della classe <code>SpinText</code>.
    *
    * @return l'oggetto <code>SpinText</code> che ha generato l'evento
    */
   public Object getSource() { return source; }
}
