From 91fc3d7666d890926ec1685bc8d49272abb51b07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fl=C3=A1vio=20Luiz=20Schiavoni?= Date: Mon, 23 Jan 2017 11:53:10 -0200 Subject: [PATCH] Netbeans' Form independent Login Dialog --- src/br/edu/ufsj/sms/GUI/Login.form | 114 ------------------ src/br/edu/ufsj/sms/GUI/Login.java | 184 +++++++++++++---------------- src/br/edu/ufsj/sms/Main.java | 8 +- 3 files changed, 86 insertions(+), 220 deletions(-) delete mode 100644 src/br/edu/ufsj/sms/GUI/Login.form diff --git a/src/br/edu/ufsj/sms/GUI/Login.form b/src/br/edu/ufsj/sms/GUI/Login.form deleted file mode 100644 index 2461096..0000000 --- a/src/br/edu/ufsj/sms/GUI/Login.form +++ /dev/null @@ -1,114 +0,0 @@ - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
diff --git a/src/br/edu/ufsj/sms/GUI/Login.java b/src/br/edu/ufsj/sms/GUI/Login.java index beed924..2f45ee2 100644 --- a/src/br/edu/ufsj/sms/GUI/Login.java +++ b/src/br/edu/ufsj/sms/GUI/Login.java @@ -5,119 +5,103 @@ */ package br.edu.ufsj.sms.GUI; +import java.awt.BorderLayout; +import java.awt.FlowLayout; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JDialog; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JSpinner; +import javax.swing.JTextField; + /** * * @author flavio */ -public class Login extends java.awt.Dialog { - - public Login(java.awt.Frame parent, boolean modal) { - super(parent, modal); - initComponents(); - jTextField1.setText(System.getProperty("user.name")); +public final class Login extends JDialog { + + JLabel nameLabel = new JLabel("Name: "); + JLabel portLabel = new JLabel("Port: "); + + JTextField nameField = new JTextField(); + JSpinner portField = new JSpinner(); + + JButton okButton = new JButton("OK"); + JButton cancelButton = new JButton("Cancel"); + + public Login() { + setupUI(); + setUpListeners(); + this.setSize(400, 150); + this.setModal(true); } - /** - * This method is called from within the constructor to initialize the form. - * WARNING: Do NOT modify this code. The content of this method is always - * regenerated by the Form Editor. - */ - // //GEN-BEGIN:initComponents - private void initComponents() { + public void setupUI() { - jPanel11 = new javax.swing.JPanel(); - jPanel4 = new javax.swing.JPanel(); - jPanel8 = new javax.swing.JPanel(); - jLabel1 = new javax.swing.JLabel(); - jTextField1 = new javax.swing.JTextField(); - jPanel9 = new javax.swing.JPanel(); - jPanel5 = new javax.swing.JPanel(); - jPanel7 = new javax.swing.JPanel(); - jLabel2 = new javax.swing.JLabel(); - jSpinner1 = new javax.swing.JSpinner(); - jPanel10 = new javax.swing.JPanel(); - jPanel6 = new javax.swing.JPanel(); - jButton1 = new javax.swing.JButton(); + this.setTitle("Login"); - addWindowListener(new java.awt.event.WindowAdapter() { - public void windowClosing(java.awt.event.WindowEvent evt) { - closeDialog(evt); - } + portField.setModel(new javax.swing.SpinnerNumberModel(8000, 8000, 9000, 1)); + nameField.setText(System.getProperty("user.name")); + + JPanel topPanel = new JPanel(new GridBagLayout()); + JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + + buttonPanel.add(okButton); + buttonPanel.add(cancelButton); + + GridBagConstraints gbc = new GridBagConstraints(); + + gbc.insets = new Insets(4, 4, 4, 4); + + gbc.gridx = 0; + gbc.gridy = 0; + gbc.weightx = 0; + topPanel.add(nameLabel, gbc); + + gbc.gridx = 1; + gbc.gridy = 0; + gbc.fill = GridBagConstraints.HORIZONTAL; + gbc.weightx = 1; + topPanel.add(nameField, gbc); + + gbc.gridx = 0; + gbc.gridy = 1; + gbc.fill = GridBagConstraints.NONE; + gbc.weightx = 0; + topPanel.add(portLabel, gbc); + + gbc.fill = GridBagConstraints.HORIZONTAL; + gbc.gridx = 1; + gbc.gridy = 1; + gbc.weightx = 1; + topPanel.add(portField, gbc); + + this.add(topPanel); + this.add(buttonPanel, BorderLayout.SOUTH); + } + + private void setUpListeners() { + okButton.addActionListener((ActionEvent e) -> { + Login.this.setVisible(false); }); - setLayout(new java.awt.GridLayout(4, 1)); - add(jPanel11); - jPanel4.setLayout(new java.awt.GridLayout(1, 2, 5, 5)); - jPanel4.add(jPanel8); - - jLabel1.setText("Your name"); - jLabel1.setPreferredSize(new java.awt.Dimension(200, 18)); - jPanel4.add(jLabel1); - - jTextField1.setText("Calouro"); - jPanel4.add(jTextField1); - jPanel4.add(jPanel9); - - add(jPanel4); - - jPanel5.setLayout(new java.awt.GridLayout(1, 2, 5, 5)); - jPanel5.add(jPanel7); - - jLabel2.setText("Port"); - jLabel2.setPreferredSize(new java.awt.Dimension(200, 18)); - jPanel5.add(jLabel2); - - jSpinner1.setModel(new javax.swing.SpinnerNumberModel(8000, 8000, 9000, 1)); - jPanel5.add(jSpinner1); - jPanel5.add(jPanel10); - - add(jPanel5); - - jButton1.setText(" Ok "); - jButton1.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - jButton1ActionPerformed(evt); - } + cancelButton.addActionListener((ActionEvent e) -> { + System.exit(0); }); - jPanel6.add(jButton1); + } - add(jPanel6); - - pack(); - }// //GEN-END:initComponents - - /** - * Closes the dialog - */ - private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog - setVisible(false); - }//GEN-LAST:event_closeDialog - - private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed - this.setVisible(false); - }//GEN-LAST:event_jButton1ActionPerformed - + @Override public String getName() { - return jTextField1.getText(); - } - - public int getPort() { - return ((Integer) jSpinner1.getValue()).intValue(); + return nameField.getText(); } - // Variables declaration - do not modify//GEN-BEGIN:variables - private javax.swing.JButton jButton1; - private javax.swing.JLabel jLabel1; - private javax.swing.JLabel jLabel2; - private javax.swing.JPanel jPanel10; - private javax.swing.JPanel jPanel11; - private javax.swing.JPanel jPanel4; - private javax.swing.JPanel jPanel5; - private javax.swing.JPanel jPanel6; - private javax.swing.JPanel jPanel7; - private javax.swing.JPanel jPanel8; - private javax.swing.JPanel jPanel9; - private javax.swing.JSpinner jSpinner1; - private javax.swing.JTextField jTextField1; - // End of variables declaration//GEN-END:variables + public int getPort() { + return ((Integer) portField.getValue()); + } } diff --git a/src/br/edu/ufsj/sms/Main.java b/src/br/edu/ufsj/sms/Main.java index d4e0139..f8150b5 100644 --- a/src/br/edu/ufsj/sms/Main.java +++ b/src/br/edu/ufsj/sms/Main.java @@ -45,16 +45,12 @@ public class Main { /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { + @Override public void run() { try { - Login login = new Login(null, true); + Login login = new Login(); login.setVisible(true); String name = login.getName(); - if (name.equals("Chat")) { - System.out.println("Invalid name"); - login.dispose(); - return; - } int port = login.getPort(); login.dispose(); br.edu.ufsj.sms.GUI.MainWindow main;