Mega Code Archive

 
Categories / Java / SWT Jface Eclipse
 

Stop CR from going to the default button

/*  * Text example snippet: stop CR from going to the default button  *  * For a list of all SWT example snippets see  * http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets  */ import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.TraverseEvent; import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; public class Snippet116 {   public static void main(String[] args) {     Display display = new Display();     Shell shell = new Shell(display);     shell.setLayout(new GridLayout());     Text text = new Text(shell, SWT.SINGLE | SWT.BORDER);     text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));     text.setText("Here is some text");     text.addSelectionListener(new SelectionAdapter() {       public void widgetDefaultSelected(SelectionEvent e) {         System.out             .println("Text default selected (overrides default button)");       }     });     text.addTraverseListener(new TraverseListener() {       public void keyTraversed(TraverseEvent e) {         if (e.detail == SWT.TRAVERSE_RETURN) {           e.doit = false;           e.detail = SWT.TRAVERSE_NONE;         }       }     });     Button button = new Button(shell, SWT.PUSH);     button.setText("Ok");     button.addSelectionListener(new SelectionAdapter() {       public void widgetSelected(SelectionEvent e) {         System.out.println("Button selected");       }     });     shell.setDefaultButton(button);     shell.pack();     shell.open();     while (!shell.isDisposed()) {       if (!display.readAndDispatch())         display.sleep();     }     display.dispose();   } }