package networkgui;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.border.Border;
import javax.swing.event.*;
public class EmailForm extends javax.swing.JFrame{
// Variables declaration///////////////////
private javax.swing.JButton btnSend;
private javax.swing.JCheckBox cbAuthenticated;
private javax.swing.JPasswordField txtPassword;
private javax.swing.JScrollPane spRecipients;
private javax.swing.JScrollPane spBody;
private javax.swing.JTextArea taRecipients;
private javax.swing.JTextArea taBody;
private javax.swing.JTextField txtSMTP;
private javax.swing.JTextField txtFrom;
private javax.swing.JTextField txtUserName;
private javax.swing.JTextField txtSubject;
private javax.swing.JLabel lblSMTP;
private javax.swing.JLabel lblFrom;
private javax.swing.JLabel lblRecipients;
private javax.swing.JLabel lblSubject;
private javax.swing.JLabel lblUserName;
private javax.swing.JLabel lblPassword;
private JPanel MyPanel = new JPanel();
private JPanel AuthenticationPanel = new JPanel();
private JPanel EmailPanel = new JPanel();
// End of variables declaration/////////////
//constructor
public EmailForm(){
//init all controls
initComponents();
}
private void initComponents(){
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
//Initialize containers/////////////////////////////
spBody = new javax.swing.JScrollPane();
taBody = new javax.swing.JTextArea();
lblSubject = new javax.swing.JLabel();
lblRecipients = new javax.swing.JLabel();
txtUserName = new javax.swing.JTextField();
txtSMTP = new javax.swing.JTextField();
lblSMTP = new javax.swing.JLabel();
lblFrom = new javax.swing.JLabel();
spRecipients = new javax.swing.JScrollPane();
taRecipients = new javax.swing.JTextArea();
txtFrom = new javax.swing.JTextField();
txtSubject = new javax.swing.JTextField();
lblUserName = new javax.swing.JLabel();
cbAuthenticated = new javax.swing.JCheckBox();
lblPassword = new javax.swing.JLabel();
txtPassword = new javax.swing.JPasswordField();
btnSend = new javax.swing.JButton();
//end initialize containers////////////////////////
//Set Properties for containers////////////////////////////////////////////////////
spBody.setViewportView(taBody);
lblSubject.setFont(new java.awt.Font("Tahoma", 1, 12));
lblSubject.setText("Subject:");
lblRecipients.setFont(new java.awt.Font("Tahoma", 1, 12));
lblRecipients.setText("Recipients:");
lblSMTP.setFont(new java.awt.Font("Tahoma", 1, 12));
lblSMTP.setText("SMTP:");
lblFrom.setFont(new java.awt.Font("Tahoma", 1, 12));
lblFrom.setText("From:");
taRecipients.setColumns(20);
taRecipients.setRows(5);
spRecipients.setViewportView(taRecipients);
lblUserName.setFont(new java.awt.Font("Tahoma", 1, 12));
lblUserName.setText("User Name:");
cbAuthenticated.setText("Authenticated");
cbAuthenticated.setMargin(new java.awt.Insets(0, 0, 0, 0));
lblPassword.setFont(new java.awt.Font("Tahoma", 1, 12));
lblPassword.setText("Password:");
btnSend.setText("Send Message");
txtFrom.setPreferredSize(new Dimension(200, 19));
spBody.setPreferredSize(new Dimension(500, 200));
txtUserName.setPreferredSize(new Dimension(11, 19));
txtSMTP.setPreferredSize(new Dimension(200, 19));
spRecipients.setPreferredSize(new Dimension(430, 30));
txtSubject.setPreferredSize(new Dimension(200, 19));
//cbAuthenticated.setPreferredSize(new Dimension(250, 50));
txtPassword.setPreferredSize(new Dimension(200, 19));
btnSend.setPreferredSize(new Dimension(250, 50));
//End Set Properties for containers//////////////////////////////////////////////////
//set up events//////////////////////////////////////////////////////////////////////
cbAuthenticated.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
cbAuthenticatedStateChanged(evt);
}
});
Container VerticalBox = Box.createVerticalBox();
Container VerticalBox2 = Box.createVerticalBox();
Container VerticalBox3 = Box.createVerticalBox();
Border etched = BorderFactory.createEtchedBorder();
VerticalBox2.add(cbAuthenticated);
VerticalBox2.add(lblUserName);
VerticalBox2.add(txtUserName);
VerticalBox2.add(lblPassword);
VerticalBox2.add(txtPassword);
lblUserName.setEnabled(false);
txtUserName.setEnabled(false);
lblPassword.setEnabled(false);
txtPassword.setEnabled(false);
VerticalBox2.add(new JLabel(" "));
AuthenticationPanel.add(VerticalBox2);
AuthenticationPanel.setBorder(BorderFactory.createTitledBorder(etched, ""));
VerticalBox.add(AuthenticationPanel);
VerticalBox.add(lblSMTP);
VerticalBox.add(txtSMTP);
VerticalBox.add(lblFrom);
VerticalBox.add(txtFrom);
VerticalBox.add(lblRecipients);
VerticalBox.add(spRecipients);
VerticalBox.add(lblSubject);
VerticalBox.add(txtSubject);
VerticalBox.add(new JLabel(" "));
VerticalBox.add(spBody);
VerticalBox.add(new JLabel(" "));
VerticalBox.add(btnSend);
EmailPanel.add(VerticalBox);
EmailPanel.setBorder(BorderFactory.createTitledBorder(etched, ""));
//add box layout to panel
VerticalBox3.add(AuthenticationPanel);
VerticalBox3.add(EmailPanel);
MyPanel.add(VerticalBox3);
//add panel to the frame's contentpane
this.setContentPane(MyPanel);
this.pack();
}
//Checkbox handler
private void cbAuthenticatedStateChanged(java.awt.event.ItemEvent evt) {
if (cbAuthenticated.isSelected()){
lblUserName.setEnabled(true);
txtUserName.setEnabled(true);
lblPassword.setEnabled(true);
txtPassword.setEnabled(true);
}
else{
lblUserName.setEnabled(false);
txtUserName.setEnabled(false);
lblPassword.setEnabled(false);
txtPassword.setEnabled(false);
}
}
}