Mega Code Archive

 
Categories / Java / SWT Jface Eclipse
 

Complex Shell Example

import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.layout.RowLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; public class ComplexShellExample {   Display d;   Shell s;   ComplexShellExample() {     d = new Display();     s = new Shell(d);     s.setSize(250, 275);          s.setText("A Shell Composite Example");     GridLayout gl = new GridLayout();     gl.numColumns = 4;     s.setLayout(gl);     s.setLayout(gl);     GridComposite gc = new GridComposite(s);     GridData gd = new GridData(GridData.FILL_BOTH);     gd.horizontalSpan = 4;     gc.setLayoutData(gd);     gd = new GridData();     RowComposite rc = new RowComposite(s);     gd = new GridData(GridData.FILL_HORIZONTAL);     rc.setLayoutData(gd);     s.open();     while (!s.isDisposed()) {       if (!d.readAndDispatch())         d.sleep();     }     d.dispose();   }   public static void main(String[] arg) {     new ComplexShellExample();   } } class RowComposite extends Composite {   final Button okBtn;   final Button cancelBtn;   public RowComposite(Composite c) {     super(c, SWT.NO_FOCUS);     RowLayout rl = new RowLayout();     rl.wrap = false;     rl.pack = false;     this.setLayout(rl);     okBtn = new Button(this, SWT.BORDER | SWT.PUSH);     okBtn.setText("OK");     okBtn.setSize(30, 20);     cancelBtn = new Button(this, SWT.BORDER | SWT.PUSH);     cancelBtn.setText("Cancel");     cancelBtn.setSize(30, 20);     cancelBtn.addSelectionListener(new SelectionAdapter() {       public void widgetSelected(SelectionEvent e) {         System.out.println("Cancel was clicked");       }     });   }   public static void main(String[] arg) {   } } class GridComposite extends Composite {   public GridComposite(Composite c) {     super(c, SWT.BORDER);     GridLayout gl = new GridLayout();     gl.numColumns = 3;     this.setLayout(gl);     final Label l1 = new Label(this, SWT.BORDER);     l1.setText("Column One");     final Label l2 = new Label(this, SWT.BORDER);     l2.setText("Column Two");     final Label l3 = new Label(this, SWT.BORDER);     l3.setText("Column Three");     final Text t1 = new Text(this, SWT.SINGLE | SWT.BORDER);     final Text t2 = new Text(this, SWT.SINGLE | SWT.BORDER);     final Text t3 = new Text(this, SWT.SINGLE | SWT.BORDER);     final Text t4 = new Text(this, SWT.SINGLE | SWT.BORDER);     final Text t5 = new Text(this, SWT.SINGLE | SWT.BORDER);     final Text t6 = new Text(this, SWT.SINGLE | SWT.BORDER);     GridData gd = new GridData();     gd.horizontalAlignment = GridData.CENTER;     l1.setLayoutData(gd);     gd = new GridData();     gd.horizontalAlignment = GridData.CENTER;     l2.setLayoutData(gd);     gd = new GridData();     gd.horizontalAlignment = GridData.CENTER;     l3.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t1.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t2.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t3.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t4.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t5.setLayoutData(gd);     gd = new GridData(GridData.FILL_HORIZONTAL);     t6.setLayoutData(gd);   } }