| 3599 |      1 | /***************************************************************************
 | 
|  |      2 |   Title:      awtUtilities/MessageDialog.java
 | 
|  |      3 |   Author:     Stefan Berghofer, TU Muenchen
 | 
|  |      4 | 
 | 
|  |      5 |   This class defines a dialog window for displaying messages and buttons.
 | 
|  |      6 | ***************************************************************************/
 | 
|  |      7 | 
 | 
|  |      8 | package awtUtilities;
 | 
|  |      9 | 
 | 
|  |     10 | import java.awt.*;
 | 
| 6541 |     11 | import java.awt.event.*;
 | 
| 3599 |     12 | 
 | 
| 6541 |     13 | public class MessageDialog extends Dialog implements ActionListener {
 | 
| 3599 |     14 | 	String txt;
 | 
|  |     15 | 
 | 
|  |     16 | 	public String getText() { return txt; }
 | 
|  |     17 | 
 | 
| 6541 |     18 | 	public void actionPerformed(ActionEvent evt) {
 | 
|  |     19 | 		txt = evt.getActionCommand();
 | 
|  |     20 | 		setVisible(false);
 | 
| 3599 |     21 | 	}
 | 
|  |     22 | 
 | 
|  |     23 | 	public MessageDialog(Frame parent,String title,String text,String []buttons) {
 | 
|  |     24 | 		super(parent,title,true);
 | 
|  |     25 | 		int i;
 | 
|  |     26 | 		Panel p1=new Panel(),p2=new Panel();
 | 
|  |     27 | 		p1.setLayout(new FlowLayout(FlowLayout.CENTER,0,0));
 | 
|  |     28 | 		p2.setLayout(new FlowLayout());
 | 
|  |     29 | 		setFont(new Font("Helvetica", Font.PLAIN, 14));
 | 
|  |     30 | 		setLayout(new GridLayout(2,1));
 | 
|  |     31 | 
 | 
|  |     32 | 		while (true) {
 | 
|  |     33 | 			int pos=text.indexOf(' ');
 | 
|  |     34 | 			if (pos<0) {
 | 
|  |     35 | 				p1.add(new Label(text));
 | 
|  |     36 | 				break;
 | 
|  |     37 | 			} else {
 | 
|  |     38 | 				p1.add(new Label(text.substring(0,pos)));
 | 
|  |     39 | 				if (pos+1==text.length())
 | 
|  |     40 | 					break;
 | 
|  |     41 | 				else
 | 
|  |     42 | 					text=text.substring(pos+1);
 | 
|  |     43 | 			}
 | 
|  |     44 | 		}
 | 
|  |     45 | 
 | 
|  |     46 | 		add(p1);add(p2);
 | 
| 6541 |     47 | 		for (i=0;i<buttons.length;i++) {
 | 
|  |     48 | 			Button bt = new Button(buttons[i]);
 | 
|  |     49 | 			p2.add(bt);
 | 
|  |     50 | 			bt.addActionListener(this);
 | 
|  |     51 | 		}
 | 
| 3599 |     52 | 	}
 | 
|  |     53 | }
 |