package org.pokenet.client.ui.base;
import mdes.slick.sui.Button;
import mdes.slick.sui.Container;
import mdes.slick.sui.Frame;
import mdes.slick.sui.Label;
import mdes.slick.sui.event.ActionEvent;
import mdes.slick.sui.event.ActionListener;
/**
* Shows a message box
* @author ZombieBear
*
*/
public class MessageDialog extends Frame{
/**
* Default constructor
* @param message
* @param container
*/
public MessageDialog(String message, Container container){
getContentPane().setX(getContentPane().getX() - 1);
getContentPane().setY(getContentPane().getY() + 1);
Container label = new Container();
String[] lines = message.split("\n");
int maxWidth = 0;
int maxHeight = 0;
for (String s : lines) {
Label line = new Label(s);
line.pack();
int lineWidth = (int)line.getWidth();
int lineHeight = (int)line.getHeight();
if (lineWidth > maxWidth)
maxWidth = lineWidth;
line.setY(maxHeight);
maxHeight += lineHeight;
label.add(line);
}
label.setSize(maxWidth, maxHeight);
Button ok = new Button();
ok.setText("OK");
getContentPane().add(label);
getContentPane().add(ok);
label.setLocation(5, 15);
this.setResizable(false);
this.setSize(label.getWidth() + 10, label.getHeight() + 90);
ok.setSize(50, 25);
ok.setLocation(this.getWidth()/2-25, this.getHeight()- 60);
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
setVisible(false);
}
});
this.setLocation((container.getDisplay().getWidth()/2)-(this.getWidth()/2),
(container.getDisplay().getHeight()/2)-(this.getHeight()/2));
this.setVisible(true);
container.add(this);
this.setAlwaysOnTop(true);
}
}