Netbeans' Form independent Login Dialog

This commit is contained in:
Flávio Luiz Schiavoni 2017-01-23 11:53:10 -02:00
parent 4793fbdacf
commit 91fc3d7666
3 changed files with 86 additions and 220 deletions

View File

@ -1,114 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<Form version="1.5" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.DialogFormInfo">
<SyntheticProperties>
<SyntheticProperty name="formSizePolicy" type="int" value="1"/>
<SyntheticProperty name="generateCenter" type="boolean" value="false"/>
</SyntheticProperties>
<Events>
<EventHandler event="windowClosing" listener="java.awt.event.WindowListener" parameters="java.awt.event.WindowEvent" handler="closeDialog"/>
</Events>
<AuxValues>
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
<AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
<AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
<AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
<AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
<AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,1,-112"/>
</AuxValues>
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
<Property name="columns" type="int" value="1"/>
<Property name="rows" type="int" value="4"/>
</Layout>
<SubComponents>
<Container class="javax.swing.JPanel" name="jPanel11">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
</Container>
<Container class="javax.swing.JPanel" name="jPanel4">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
<Property name="columns" type="int" value="2"/>
<Property name="horizontalGap" type="int" value="5"/>
<Property name="rows" type="int" value="1"/>
<Property name="verticalGap" type="int" value="5"/>
</Layout>
<SubComponents>
<Container class="javax.swing.JPanel" name="jPanel8">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
</Container>
<Component class="javax.swing.JLabel" name="jLabel1">
<Properties>
<Property name="text" type="java.lang.String" value="Your name"/>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[200, 18]"/>
</Property>
</Properties>
</Component>
<Component class="javax.swing.JTextField" name="jTextField1">
<Properties>
<Property name="text" type="java.lang.String" value="Calouro"/>
</Properties>
</Component>
<Container class="javax.swing.JPanel" name="jPanel9">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
</Container>
</SubComponents>
</Container>
<Container class="javax.swing.JPanel" name="jPanel5">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
<Property name="columns" type="int" value="2"/>
<Property name="horizontalGap" type="int" value="5"/>
<Property name="rows" type="int" value="1"/>
<Property name="verticalGap" type="int" value="5"/>
</Layout>
<SubComponents>
<Container class="javax.swing.JPanel" name="jPanel7">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
</Container>
<Component class="javax.swing.JLabel" name="jLabel2">
<Properties>
<Property name="text" type="java.lang.String" value="Port"/>
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
<Dimension value="[200, 18]"/>
</Property>
</Properties>
</Component>
<Component class="javax.swing.JSpinner" name="jSpinner1">
<Properties>
<Property name="model" type="javax.swing.SpinnerModel" editor="org.netbeans.modules.form.editors2.SpinnerModelEditor">
<SpinnerModel initial="8000" maximum="9000" minimum="8000" numberType="java.lang.Integer" stepSize="1" type="number"/>
</Property>
</Properties>
</Component>
<Container class="javax.swing.JPanel" name="jPanel10">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
</Container>
</SubComponents>
</Container>
<Container class="javax.swing.JPanel" name="jPanel6">
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
<SubComponents>
<Component class="javax.swing.JButton" name="jButton1">
<Properties>
<Property name="text" type="java.lang.String" value=" Ok "/>
</Properties>
<Events>
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButton1ActionPerformed"/>
</Events>
</Component>
</SubComponents>
</Container>
</SubComponents>
</Form>

View File

@ -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.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">//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();
}// </editor-fold>//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());
}
}

View File

@ -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;