Mega Code Archive

 
Categories / Java / SWT Jface Eclipse
 

SWT Button Action

/*  * Created on Nov 20, 2003  *  * To change the template for this generated file go to  * Window>Preferences>Java>Code Generation>Code and Comments  */ import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; /**  * @author Steven Holzner  *   * To change the template for this generated type comment go to  * Window>Preferences>Java>Code Generation>Code and Comments  */ public class SWTButtonAction {   public static void main(String[] args) {     Display display = new Display();     Shell shell = new Shell(display);     shell.setSize(200, 200);     shell.setText("Dialogs");     shell.open();     final Button opener = new Button(shell, SWT.PUSH);     opener.setText("Click Me");     opener.setBounds(20, 20, 50, 25);     final Text text = new Text(shell, SWT.SHADOW_IN);     text.setBounds(80, 20, 100, 25);     final Shell dialog = new Shell(shell, SWT.APPLICATION_MODAL         | SWT.DIALOG_TRIM);     dialog.setText("Dialog");     dialog.setSize(150, 100);     final Label label = new Label(dialog, SWT.NONE);     label.setText("OK to proceed?");     label.setBounds(35, 5, 100, 20);     final Button okButton = new Button(dialog, SWT.PUSH);     okButton.setBounds(20, 35, 40, 25);     okButton.setText("OK");     Button cancelButton = new Button(dialog, SWT.PUSH);     cancelButton.setBounds(70, 35, 40, 25);     cancelButton.setText("Cancel");     final boolean[] response = new boolean[1];     response[0] = true;     Listener listener = new Listener() {       public void handleEvent(Event event) {         if (event.widget == okButton) {           response[0] = true;         } else {           response[0] = false;         }         dialog.close();       }     };     okButton.addListener(SWT.Selection, listener);     cancelButton.addListener(SWT.Selection, listener);     Listener openerListener = new Listener() {       public void handleEvent(Event event) {         dialog.open();       }     };     opener.addListener(SWT.Selection, openerListener);     while (!dialog.isDisposed()) {       if (!display.readAndDispatch())         display.sleep();     }     if (response[0]) {       text.setText("You clicked OK");     } else {       text.setText("You clicked Cancel");     }     while (!shell.isDisposed()) {       if (!display.readAndDispatch())         display.sleep();     }     display.dispose();   } }