Source Code : SWT Spinner Test

Java Is Open Source Programming Language You Can Download From Java and Java Libraries From http://www.oracle.com. Click Here to download
We provide this code related to title for you to solve your developing problem easily. Libraries which is import in this program you can download from http://www.oracle.com. Click Here or search from google with Libraries Name you get jar file related it

SWT Spinner Test

SWT Spinner Test
/*
 * (c) Copyright IBM Corp. 2000, 2001. All Rights Reserved.
 */

import java.util.Hashtable;

import org.eclipse.swt.SWT;
import org.eclipse.swt.SWTError;
import org.eclipse.swt.events.ControlAdapter;
import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.events.FocusAdapter;
import org.eclipse.swt.events.FocusEvent;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.RowLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TypedListener;

public class SpinnerTest {

  public static void main(String[] args) {
    Display display = new Display();
    Shell shell = new Shell(display);
    shell.setLayout(new RowLayout());

    final Spinner spinner = new Spinner(shell, 0);
    spinner.setMaximum(999);
    System.out.println("max set to " + spinner.getMaximum());
    spinner.setSelection(500);
    System.out.println("selection set to " + spinner.getSelection());
    spinner.setMinimum(100);
    System.out.println("min set to " + spinner.getMinimum());
    Font font = new Font(display, "Courier", 20, SWT.NORMAL);
    spinner.setFont(font);
    spinner.addSelectionListener(new SelectionAdapter() {
      public void widgetSelected(SelectionEvent e) {
        System.out.println(spinner.getSelection());
      }
    });
    shell.pack();
    shell.open();
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch())
        display.sleep();
    }
    font.dispose();
  }
}

class Spinner extends Composite {
  int handleSpinner;

  static Hashtable table = new Hashtable();
  static {
    System.loadLibrary("spinner");
  }

  public Spinner(Composite parent, int style) {
    super(parent, style);
    int handleParent = handle;
    handleSpinner = createControl(handleParent);
    if (handleSpinner == 0)
      SWT.error(SWT.ERROR_NO_HANDLES);
    table.put(new Integer(handleSpinner), this);
    addDisposeListener(new DisposeListener() {
      public void widgetDisposed(DisposeEvent e) {
        Spinner.this.widgetDisposed(e);
      }
    });
    addControlListener(new ControlAdapter() {
      public void controlResized(ControlEvent e) {
        Spinner.this.controlResized(e);
      }
    });
    addFocusListener(new FocusAdapter() {
      public void focusGained(FocusEvent e) {
        Spinner.this.focusGained(e);
      }
    });
    Font font = getFont();
    setFont(handleSpinner, font.handle);
  }

  public void setFont(Font font) {
    super.setFont(font);
    int hFont = 0;
    if (font != null)
      hFont = font.handle;
    setFont(handleSpinner, hFont);
  }

  public int getSelection() {
    checkWidget();
    return getPosition(handleSpinner);
  }

  public void setSelection(int selection) {
    checkWidget();
    setPosition(handleSpinner, selection);
  }

  public void setMaximum(int maximum) {
    checkWidget();
    setMaximum(handleSpinner, maximum);
  }

  public int getMaximum() {
    checkWidget();
    return getMaximum(handleSpinner);
  }

  public void setMinimum(int minimum) {
    checkWidget();
    setMinimum(handleSpinner, minimum);
  }

  public int getMinimum() {
    checkWidget();
    return getMinimum(handleSpinner);
  }

  public void widgetDisposed(DisposeEvent e) {
    table.remove(new Integer(handleSpinner));
    handleSpinner = 0;
  }

  public void controlResized(ControlEvent e) {
    Rectangle rect = getClientArea();
    resizeControl(handleSpinner, rect.x, rect.y, rect.width, rect.height);
  }

  public void focusGained(FocusEvent e) {
    setFocus(handleSpinner);
  }

  public Point computeSize(int wHint, int hHint, boolean changed) {
    checkWidget();
    int[] result = new int[2];
    computeSize(handleSpinner, result);
    if (wHint != SWT.DEFAULT)
      result[0] = wHint;
    if (hHint != SWT.DEFAULT)
      result[1] = hHint;
    int border = getBorderWidth();
    return new Point(result[0] + border * 2, result[1] + border * 2);
  }

  public void addSelectionListener(SelectionListener listener) {
    if (listener == null)
      throw new SWTError(SWT.ERROR_NULL_ARGUMENT);
    addListener(SWT.Selection, new TypedListener(listener));
  }

  static void widgetSelected(int handle) {
    Spinner spinner = (Spinner) table.get(new Integer(handle));
    if (spinner == null)
      return;
    spinner.notifyListeners(SWT.Selection, new Event());
  }

  /** ********* JAVA NATIVES *********** */

  static final native int createControl(int handle);

  static final native void computeSize(int handle, int[] result);

  static final native void resizeControl(int handle, int x, int y, int width,
      int height);

  static final native void setPosition(int handle, int position);

  static final native int getPosition(int handle);

  static final native void setMaximum(int handle, int max);

  static final native int getMaximum(int handle);

  static final native void setMinimum(int handle, int min);

  static final native int getMinimum(int handle);

  static final native void setFont(int handle, int hFont);

  static final native void setFocus(int handle);
}


           
       

Thank with us