All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sencha.gxt.state.client.BeforeSaveStateEvent Maven / Gradle / Ivy

There is a newer version: 3.1.1
Show newest version
/**
 * Sencha GXT 3.1.0-beta - Sencha for GWT
 * Copyright(c) 2007-2014, Sencha, Inc.
 * [email protected]
 *
 * http://www.sencha.com/products/gxt/license/
 */
package com.sencha.gxt.state.client;

import com.google.gwt.event.shared.EventHandler;
import com.google.gwt.event.shared.GwtEvent;
import com.google.gwt.event.shared.HandlerRegistration;
import com.sencha.gxt.core.shared.event.CancellableEvent;
import com.sencha.gxt.state.client.BeforeSaveStateEvent.BeforeSaveStateHandler;

/**
 * Fires before state has been saved.
 */
public class BeforeSaveStateEvent extends GwtEvent> implements CancellableEvent{

  /**
   * Handler class for {@link BeforeSaveStateEvent} events.
   */
  public interface BeforeSaveStateHandler extends EventHandler {

    /**
     * Called before state has been saved.
     */
    void onBeforeSaveState(BeforeSaveStateEvent event);
  }

  public interface HasBeforeSaveStateHandlers {

    /**
     * Adds a {@link BeforeSaveStateHandler} handler for {@link BeforeSaveStateEvent}
     * events.
     * 
     * @param handler the handler
     * @return the registration for the event
     */
    HandlerRegistration addBeforeSaveStateHandler(BeforeSaveStateHandler handler);
  }

  /**
   * Handler type.
   */
  private static Type> TYPE;

  /**
   * Gets the type associated with this event.
   * 
   * @return returns the handler type
   */
  public static Type> getType() {
    return TYPE != null ? TYPE : (TYPE = new Type>());
  }
  
  private S state;
  private O target;
  private boolean cancelled;
  
  public BeforeSaveStateEvent(S state, O target) {
    this.state = state;
    this.target = target;
  }
  
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  public Type> getAssociatedType() {
    return (Type) TYPE;
  }
  
  /**
   * Returns the state.
   * 
   * @return the state
   */
  public S getState() {
    return state;
  }

  /**
   * Returns the target object.
   * 
   * @return the target
   */
  public O getTarget() {
    return target;
  }

  @Override
  public boolean isCancelled() {
    return cancelled;
  }

  @Override
  public void setCancelled(boolean cancel) {
    this.cancelled = cancel;
  }

  @Override
  protected void dispatch(BeforeSaveStateHandler handler) {
    handler.onBeforeSaveState(this);
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy