org.mbs3.juniuploader.gui.pnlFormVariables.java Source code

Java tutorial

Introduction

Here is the source code for org.mbs3.juniuploader.gui.pnlFormVariables.java

Source

package org.mbs3.juniuploader.gui;

import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.BorderFactory;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.border.BevelBorder;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.mbs3.juniuploader.objects.remoteobjects.FormPair;
import org.mbs3.juniuploader.objects.remoteobjects.FormPairGroup;
import org.mbs3.juniuploader.util.CheckSummer;

/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class pnlFormVariables extends javax.swing.JPanel {

    public static final long serialVersionUID = 1L;

    private JList lstFormPairValues;
    private JButton btnAddPair;
    private JButton btnRemPair;

    private JButton btnEditPair;
    private JButton btnRemSelGrp;
    private JButton btnAddGroup;
    private JComboBox cmbFormGroups;
    private static Log log = LogFactory.getLog(pnlFormVariables.class);

    public pnlFormVariables() {
        super();
        initGUI();
    }

    private void initGUI() {
        try {
            GridBagLayout thisLayout = new GridBagLayout();
            this.setLayout(thisLayout);
            {
                btnAddPair = new JButton();
                this.add(btnAddPair, new GridBagConstraints(3, 3, 3, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
                btnAddPair.setText("Add a New Pair");
                btnAddPair.addActionListener(new ActionListener() {
                    public void actionPerformed(ActionEvent evt) {
                        btnAddPairActionPerformed(evt);
                    }
                });
            }
            {
                btnRemPair = new JButton();
                this.add(btnRemPair, new GridBagConstraints(3, 6, 3, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
                btnRemPair.setText("Remove Selected Pair");
                btnRemPair.addActionListener(new ActionListener() {
                    public void actionPerformed(ActionEvent evt) {
                        btnRemPairActionPerformed(evt);
                    }
                });
            }
            {

                cmbFormGroups = new JComboBox();
                this.add(cmbFormGroups, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
                cmbFormGroups.setModel(frmMain.formGroups);
                cmbFormGroups.addItemListener(new ItemListener() {
                    public void itemStateChanged(ItemEvent evt) {
                        cmbFormGroupsItemStateChanged(evt);
                    }
                });
            }
            {

                DefaultComboBoxModel groups = frmMain.formGroups;
                FormPairGroup fpg = (FormPairGroup) groups.getSelectedItem();
                DefaultComboBoxModel dcbmFormPairs;
                if (fpg != null)
                    dcbmFormPairs = new DefaultComboBoxModel(fpg.getPairs());
                else
                    dcbmFormPairs = new DefaultComboBoxModel();

                lstFormPairValues = new JList();
                lstFormPairValues.setModel(dcbmFormPairs);

                this.add(lstFormPairValues, new GridBagConstraints(1, 3, 1, 4, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));
                lstFormPairValues.setBorder(BorderFactory.createEtchedBorder(BevelBorder.LOWERED));
            }

            {
                btnAddGroup = new JButton();
                this.add(btnAddGroup, new GridBagConstraints(3, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
                btnAddGroup.setText("Add a Group");
                btnAddGroup.addActionListener(new ActionListener() {
                    public void actionPerformed(ActionEvent evt) {
                        btnAddGroupActionPerformed(evt);
                    }
                });
            }
            {
                btnRemSelGrp = new JButton();
                this.add(btnRemSelGrp, new GridBagConstraints(5, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
                btnRemSelGrp.setText("Remove This Group");
                btnRemSelGrp.addActionListener(new ActionListener() {
                    public void actionPerformed(ActionEvent evt) {
                        btnRemSelGrpActionPerformed(evt);
                    }
                });
            }
            {
                btnEditPair = new JButton();
                this.add(btnEditPair, new GridBagConstraints(3, 4, 3, 1, 0.0, 0.0, GridBagConstraints.CENTER,
                        GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
                btnEditPair.setText("Edit This Pair");
                btnEditPair.setEnabled(false);
            }
            thisLayout.rowWeights = new double[] { 0.0, 0.0, 0.0, 0.1, 0.1, 0.0, 0.1, 0.0 };
            thisLayout.rowHeights = new int[] { 8, 24, 9, 20, 7, 8, 7, 9 };
            thisLayout.columnWeights = new double[] { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
            thisLayout.columnWidths = new int[] { 11, 335, 9, 97, 10, 119, 10 };
            this.setPreferredSize(new java.awt.Dimension(614, 382));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public JList getLstFormPairValues() {
        return lstFormPairValues;
    }

    public JButton getBtnAddPair() {
        return btnAddPair;
    }

    public JButton getBtnRemPair() {
        return btnRemPair;
    }

    private void btnAddGroupActionPerformed(ActionEvent evt) {
        if (evt.getSource() == this.btnAddGroup) {
            String returnVal = JOptionPane.showInputDialog(this, "What is the name of the new group:");

            if (returnVal != null && !returnVal.equals("")) {
                FormPairGroup fpg = new FormPairGroup(returnVal);

                frmMain.formGroups.addElement(fpg);
                log.trace("btnAddGroupActionPerformed() added group " + fpg.getName());
                log.trace(frmMain.formGroups.getSize() + " items now in groups model");
            } else {
                log.trace("New form group cancelled by user.");
            }

        }
    }

    private void btnRemSelGrpActionPerformed(ActionEvent evt) {
        JButton b = (JButton) evt.getSource();
        if (b == this.btnRemSelGrp) {

            if (this.cmbFormGroups.getSelectedItem() != null) {
                frmMain.formGroups.removeElement(this.cmbFormGroups.getSelectedItem());
            }

        }

    }

    private void cmbFormGroupsItemStateChanged(ItemEvent evt) {
        if (evt.getSource() == this.cmbFormGroups) {
            int sel = this.cmbFormGroups.getSelectedIndex();
            if (sel != -1) {
                FormPairGroup fpg = (FormPairGroup) frmMain.formGroups.getElementAt(sel);
                frmMain.formPairValues = new DefaultComboBoxModel(fpg.getPairs());
                this.lstFormPairValues.setModel(frmMain.formPairValues);
                this.lstFormPairValues.invalidate();
            } else {
                frmMain.formPairValues = new DefaultComboBoxModel();
                this.lstFormPairValues.setModel(frmMain.formPairValues);
                this.lstFormPairValues.invalidate();
            }
        }
    }

    private void btnAddPairActionPerformed(ActionEvent evt) {
        if (evt.getSource() == this.btnAddPair) {
            String key = JOptionPane.showInputDialog(this, "What is the field name:");
            String val = JOptionPane.showInputDialog(this, "What is the field value:");
            int enc = JOptionPane.showConfirmDialog(this,
                    "Would you like this variable sent and stored with encryption?", "Encrypt?",
                    JOptionPane.YES_NO_OPTION);

            if (key != null && !key.equals("") && val != null && !val.equals("")) {

                // send roster_update_password securely
                if (enc == 0) {
                    val = CheckSummer.createChecksumFromString(val);
                }

                FormPair fp = new FormPair(key, val);
                int sel = this.cmbFormGroups.getSelectedIndex();
                if (sel != -1) {
                    frmMain.formPairValues.addElement(fp);
                }
            } else {
                log.trace("New site addition cancelled by user.");
            }

        }
    }

    private void btnRemPairActionPerformed(ActionEvent evt) {
        JButton b = (JButton) evt.getSource();
        if (b == this.btnRemPair) {
            //java.util.Vector groups = frmMain.getUploader().getRemoteSystem().getUploadSites();
            FormPairGroup fpg = (FormPairGroup) frmMain.formGroups.getSelectedItem();
            FormPair fp = (FormPair) this.lstFormPairValues.getSelectedValue();
            if (fpg != null && fp != null) {
                frmMain.formPairValues.removeElement(fp);

            }

        }
    }

}