lib/browser/awtUtilities/MessageDialog.java
author wenzelm
Sat, 14 Nov 2009 18:36:05 +0100
changeset 33686 8e33ca8832b1
parent 6541 d3ac35b2bfbf
permissions -rw-r--r--
eliminated obsolete CVS Ids; tuned headers;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3599
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     1
/***************************************************************************
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     2
  Title:      awtUtilities/MessageDialog.java
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     3
  Author:     Stefan Berghofer, TU Muenchen
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     4
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     5
  This class defines a dialog window for displaying messages and buttons.
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     6
***************************************************************************/
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     7
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     8
package awtUtilities;
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
     9
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    10
import java.awt.*;
6541
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    11
import java.awt.event.*;
3599
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    12
6541
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    13
public class MessageDialog extends Dialog implements ActionListener {
3599
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    14
	String txt;
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    15
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    16
	public String getText() { return txt; }
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    17
6541
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    18
	public void actionPerformed(ActionEvent evt) {
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    19
		txt = evt.getActionCommand();
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    20
		setVisible(false);
3599
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    21
	}
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    22
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    23
	public MessageDialog(Frame parent,String title,String text,String []buttons) {
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    24
		super(parent,title,true);
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    25
		int i;
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    26
		Panel p1=new Panel(),p2=new Panel();
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    27
		p1.setLayout(new FlowLayout(FlowLayout.CENTER,0,0));
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    28
		p2.setLayout(new FlowLayout());
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    29
		setFont(new Font("Helvetica", Font.PLAIN, 14));
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    30
		setLayout(new GridLayout(2,1));
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    31
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    32
		while (true) {
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    33
			int pos=text.indexOf(' ');
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    34
			if (pos<0) {
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    35
				p1.add(new Label(text));
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    36
				break;
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    37
			} else {
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    38
				p1.add(new Label(text.substring(0,pos)));
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    39
				if (pos+1==text.length())
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    40
					break;
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    41
				else
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    42
					text=text.substring(pos+1);
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    43
			}
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    44
		}
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    45
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    46
		add(p1);add(p2);
6541
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    47
		for (i=0;i<buttons.length;i++) {
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    48
			Button bt = new Button(buttons[i]);
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    49
			p2.add(bt);
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    50
			bt.addActionListener(this);
d3ac35b2bfbf Updated to JDK 1.1.x
berghofe
parents: 3599
diff changeset
    51
		}
3599
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    52
	}
89cbba12863d Source files for Isabelle theory graph browser.
berghofe
parents:
diff changeset
    53
}