/******************************************************************************
* All Right Reserved.
* Copyright (c) 1998, 2004 Jackwind Li Guojie
*
* Created on 2004-6-13 18:19:20 by JACK
* $Id$
*
*****************************************************************************/
import org.eclipse.jface.action.Action;
import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.ScrolledForm;
public class EmailForm extends ApplicationWindow {
/**
* @param parentShell
*/
public EmailForm(Shell parentShell) {
super(parentShell);
}
/* (non-Javadoc)
* @see org.eclipse.jface.window.Window#createContents(org.eclipse.swt.widgets.Composite)
*/
protected Control createContents(Composite parent) {
Composite composite = new Composite(parent, SWT.NULL);
composite.setLayout(new FillLayout());
// Sets up the toolkit.
FormToolkit toolkit = new FormToolkit(getShell().getDisplay());
// Creates a form instance.
// Form form = toolkit.createForm(composite);
ScrolledForm form = toolkit.createScrolledForm(composite);
form.setLayoutData(new GridData(GridData.FILL_BOTH));
// Sets title.
form.setText("Composing an Email Message");
// Adds body contents.
form.getBody().setLayout(new GridLayout(2, false));
Label label = toolkit.createLabel(form.getBody(), "To: ", SWT.NULL);
Text textTo = toolkit.createText(form.getBody(), "");
textTo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
label = toolkit.createLabel(form.getBody(), "Subject: ", SWT.NULL);
Text textSubject = toolkit.createText(form.getBody(), "");
textSubject.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
label = toolkit.createLabel(form.getBody(), "Message: ", SWT.NULL);
Text textMessage = toolkit.createText(form.getBody(), "");
textMessage.setLayoutData(new GridData(GridData.FILL_BOTH));
label = toolkit.createLabel(form.getBody(), "Option: ", SWT.NULL);
Button buttonOption = toolkit.createButton(form.getBody(), "save a copy", SWT.CHECK);
Button buttonClose = toolkit.createButton(form.getBody(), "Close", SWT.PUSH);
GridData gridData = new GridData();
gridData.horizontalSpan = 2;
gridData.horizontalAlignment = GridData.END;
buttonClose.setLayoutData(gridData);
// Button button = toolkit.createButton(form.getBody(), "Test", SWT.NULL);
// Adds tool bar items.
form.getToolBarManager().add(new Action("Send") {
public void run() {
System.out.println("Sending email ...");
}
});
form.getToolBarManager().add(new Action("Cancel") {
public void run() {
System.out.println("Cancelled.");
}
});
form.updateToolBar();
return composite;
}
public static void main(String[] args) {
EmailForm emailForm = new EmailForm(null);
emailForm.setBlockOnOpen(true);
emailForm.open();
}
}
|