package visual;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import mediawiki.request.LoginRequest;
public class LoginDialog extends JDialog {
private LoginRequest result = null;
public LoginDialog(Frame owner){
super(owner, "Anmeldung", true);
setSize(new Dimension(300,150));
JPanel listPane = new JPanel();
listPane.setLayout(new BoxLayout(listPane, BoxLayout.PAGE_AXIS));
listPane.add(new JLabel("Bitte melde dich an:"));
listPane.add(Box.createRigidArea(new Dimension(2,0)));
listPane.add(new JLabel("Benutzername"));
final JTextField benutzername = new JTextField();
listPane.add(benutzername);
listPane.add(new JLabel("Passwort"));
final JPasswordField passwort = new JPasswordField();
listPane.add(passwort);
JPanel buttonPane = new JPanel();
buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS));
buttonPane.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10));
buttonPane.add(Box.createHorizontalGlue());
buttonPane.add(new JButton(new AbstractAction("Abbrechen") {
@Override
public void actionPerformed(ActionEvent arg0) {
LoginDialog.this.dispose();
}
}));
buttonPane.add(Box.createRigidArea(new Dimension(10, 0)));
buttonPane.add(new JButton(new AbstractAction("Login") {
@Override
public void actionPerformed(ActionEvent arg0) {
result = new LoginRequest(benutzername.getText(), new String(passwort.getPassword()));
LoginDialog.this.dispose();
}
}));
add(listPane, BorderLayout.CENTER);
add(buttonPane, BorderLayout.PAGE_END);
}
/* @Override
public Insets getInsets() {
return new Insets(5, 5, 5, 5);
} */
public LoginRequest showLoginDialog() {
setVisible(true);
return result;
}
}