1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
| public class ReviewerDialog extends Dialog {
String name, mail;
/**
* @param parent
*/
public ReviewerDialog(Shell parent) {
super(parent);
}
/**
* @param parent
* @param style
*/
public ReviewerDialog(Shell parent, int style) {
super(parent, style);
}
/**
* Makes the dialog visible.
*
* @return
*/
public String open() {
Shell parent = getParent();
final Shell shell = new Shell(parent, SWT.TITLE | SWT.BORDER
| SWT.APPLICATION_MODAL);
shell.setText("Add reviewers");
shell.setLayout(new GridLayout(2, true));
Label label = new Label(shell, SWT.NULL);
label.setText("Please enter a name:");
final Text text = new Text(shell, SWT.SINGLE | SWT.BORDER);
Label label2 = new Label(shell, SWT.NULL);
label2.setText("please enter a mail:");
final Text text2 = new Text(shell, SWT.SINGLE | SWT.BORDER);
final Button buttonOK = new Button(shell, SWT.PUSH);
buttonOK.setText("Ok");
buttonOK.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END));
Button buttonCancel = new Button(shell, SWT.PUSH);
buttonCancel.setText("Cancel");
text.addListener(SWT.Modify, new Listener() {
public void handleEvent(Event event) {
try {
name = new String(text.getText());
mail = new String(text2.getText());
buttonOK.setEnabled(true);
} catch (Exception e) {
buttonOK.setEnabled(false);
}
}
});
buttonOK.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
shell.dispose();
}
});
buttonCancel.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
shell.dispose();
}
});
shell.addListener(SWT.Traverse, new Listener() {
public void handleEvent(Event event) {
if (event.detail == SWT.TRAVERSE_ESCAPE)
event.doit = false;
}
});
text.setText("");
shell.pack();
shell.open();
Display display = parent.getDisplay();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
return name;
}
public static void main(String[] args) { Shell shell = new Shell();
ReviewerDialog dialog = new ReviewerDialog(shell);
System.out.println(dialog.open()); }
} |
Partager