import java.awt.*;
import java.net.*;
import java.io.*;
import java.awt.event.*;
import java.awt.*;
public class playerDlog extends Dialog implements ActionListener, constants {
private pClient parent = null;
Panel top_panel = new Panel();
Panel middle_panel = new Panel();
Panel bottom_panel = new Panel();
Label textLabel = null;
Choice popUpMenu = new Choice();
Button okButton = new Button(OK_LABEL);
Button cancelButton = new Button(CANCEL_LABEL);
public playerDlog(pClient c) {
super(c.f, true);
parent = c;
okButton.addActionListener(this);
cancelButton.addActionListener(this);
cancelButton.setActionCommand("Cancel");
textLabel = new Label(parent.readString());
top_panel.add(textLabel);
middle_panel.add(popUpMenu);
bottom_panel.add(okButton);
bottom_panel.add(cancelButton);
setLayout(new BorderLayout());
add("North", top_panel);
add("Center", middle_panel);
add("South", bottom_panel);
middle_panel.remove(popUpMenu);
popUpMenu = new Choice();
middle_panel.add(popUpMenu);
for (int i = 0; i < parent.users.theList.size(); i++)
popUpMenu.addItem((String) parent.users.theList.elementAt(i));
/* this must go before setVisible, because it doesn't return */
parent.raiseSendFlag(PLAYER_DLOG);
pack();
setVisible(true);
okButton.requestFocus();
}
public void timeout() {
setVisible(false);
}
public void actionPerformed(ActionEvent evt) {
if (parent.pollSendFlag(PLAYER_DLOG)) {
setVisible(false);
if (evt.getActionCommand().equals("Cancel")) {
parent.sendString(C_CANCEL_PACKET);
}
else {
parent.sendString(C_RESPONSE_PACKET + popUpMenu.getSelectedItem() + "\0");
}
dispose();
}
return;
}
}