/*
 * ConfigPanel_n.java
 *
 * Created on December 7, 2003, 1:25 PM
 */
package usda.weru.weps.gui;

import de.schlichtherle.truezip.file.TFile;
import de.schlichtherle.truezip.file.TVFS;
import de.schlichtherle.truezip.fs.FsSyncException;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.text.DecimalFormat;
import java.text.Format;
import java.text.ParseException;
import java.util.Collection;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.Vector;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import java.util.logging.Level;
import java.util.zip.ZipEntry;
import javax.help.CSH;
import javax.help.HelpBroker;
import javax.help.HelpSet;
import javax.help.HelpSetException;
import javax.measure.quantity.Length;
import javax.measure.quantity.Quantity;
import javax.measure.unit.Unit;
import javax.swing.DefaultCellEditor;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellEditor;
import org.apache.log4j.Logger;
import usda.weru.util.About;
import usda.weru.util.ConfigData;
import usda.weru.util.ConfigData.MeasureableConfigurationOption;
import usda.weru.util.LoadProperties;
import usda.weru.util.MeasurableField;
import usda.weru.util.Util;
import usda.weru.util.WepsFileChooser;
import usda.weru.util.WepsPasswordField;
import usda.weru.weps.Weps;
import usda.weru.weps.fuel.Fuel;
import usda.weru.weps.fuel.FuelChooser;
import usda.weru.weps.fuel.FuelDAO;
import usda.weru.weps.fuel.FuelTableModel;
import usda.weru.weps.location.StationMode;
import usda.weru.weps.location.chooser.AllowedStationModeChooser;
import static usda.weru.weps.serverControl.ServerControlData.*;

/**
 * This class build the configuration panel GUI that allows the user to initialize and 
 * modify all settings needed for the WEPS application.
 * @author  manmohan
 */
public class ConfigPanel_n extends javax.swing.JFrame {

    private static final long serialVersionUID = 1L;

    protected List<JComponent> c_componentsWithErrors = new LinkedList<JComponent>();
    protected FuelTableModel fuelTableModel;

    private static final String[] visibilityOptions = {"Read Write", "Read Only", "Not Visible"};

    /**
     * Default constructor for the Configuration Panel GUI object that helps the
     * user in setting various paths2 like executables, directories such as management, 
     * soil, database, etc along with the miscellaneous factors like setting units, etc.
     */
    public ConfigPanel_n() {
        initComponents();
        windgenModes.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                globalActionPerformed(e);
            }
        });

        cligenModes.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                globalActionPerformed(e);
            }
        });

        init();

        userFuelFile.setText(Util.parse(FuelDAO.USER_DB_PATH));

        fuelTableModel = new FuelTableModel(new TFile(Util.parse(getValue(ConfigData.FuelDatabase))));
        fuelTable.setModel(fuelTableModel);
        
        DefaultTableCellRenderer defaultRenderer = new DefaultTableCellRenderer() {
            private static final long serialVersionUID = 1L;

            private final Format format = new DecimalFormat("#0.00");
            private final Format format2 = new DecimalFormat("#0");

            @Override
            public Component getTableCellRendererComponent(JTable table, Object value,
                    boolean isSelected, boolean hasFocus, int row, int column) {
                if (table.isCellEditable(row, column)) {
                    setBackground(Color.WHITE);
                } else {
                    setBackground(new Color(245, 245, 245));
                }

                if (value instanceof Number) {
                    setHorizontalAlignment(RIGHT);
                    Number number = (Number) value;
                    if (number.intValue() > 1000) {
                        value = format2.format(number.doubleValue());
                    } else {
                        value = format.format(number.doubleValue());
                    }
                } else {
                    setHorizontalAlignment(LEFT);
                }
                return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
            }

        };

        fuelTable.setDefaultRenderer(Object.class, defaultRenderer);
        fuelTable.setDefaultRenderer(Double.class, defaultRenderer);
        
        {
            JComboBox<?>[] list = {JCB_crop, JCB_dabove, JCB_dbelow, JCB_decomp, JCB_hlayers, JCB_hydro,
                JCB_plot, JCB_season, JCB_shoot, JCB_soillay
            };
            for (JComboBox<?> jcb : list) {
                switch(ConfigData.getDefault().getData(jcb.getName())) {
                    case "Read Write":
                        jcb.setSelectedIndex(0);
                        break;
                    case "Read Only":
                        jcb.setSelectedIndex(1);
                        break;
                    case "Not Visible":
                        jcb.setSelectedIndex(2);
                        break;
                    default:
                        break;
                }
            }
        }
        
        //editor
        final JTextField text = new JTextField();
        text.setHorizontalAlignment(JTextField.RIGHT);
        text.addFocusListener(new FocusAdapter() {

            @Override
            public void focusGained(FocusEvent e) {
                text.selectAll();
            }

        });

        TableCellEditor doubleEditor = new DefaultCellEditor(text) {
            private static final long serialVersionUID = 1L;

            private final Format format = new DecimalFormat("#0.000");

            @Override
            public Component getTableCellEditorComponent(JTable table, Object value,
                    boolean isSelected, int row, int column) {
                if (value instanceof Number) {
                    Number number = (Number) value;
                    String formatted = format.format(number.doubleValue());
                    value = Double.valueOf(formatted);
                }
                Component result = super.getTableCellEditorComponent(table, value, isSelected,
                        row, column);

                return result;
            }

            @Override
            public Object getCellEditorValue() {
                final Object value = super.getCellEditorValue();
                try {
                    return format.parseObject(value != null ? value.toString() : null);
                } catch (ParseException e) {
                    return null;
                }
            }

        };
        fuelTable.setDefaultEditor(Double.class, doubleEditor);

        JRB_metric.addItemListener(new ItemListener() {

            @Override
            public void itemStateChanged(ItemEvent e) {
                if (JRB_metric.isSelected()) {
                    fuelTableModel.setUnits(Util.SIUnits);
                } else {
                    fuelTableModel.setUnits(Util.USUnits);
                }
            }
        });

        localChanges.addPropertyChangeListener(ConfigData.FuelDatabase, new PropertyChangeListener() {

            @Override
            public void propertyChange(PropertyChangeEvent evt) {
                fuelTableModel.setFile(new TFile(Util.parse(getValue(ConfigData.FuelDatabase))));
            }
        });

    }

    /**
     * Single argument constructor for the Configuration Panel GUI object that helps the
     user in setting various paths2 like executables, directories such as management, 
     soil, database, etc unalong with the miscellaneous factors like setting units,etc.
     * The string passed to the constructor sets the title of the configuration panel.
     * @param sTitle The title string for the parent frame of the GUI.
     */
    public ConfigPanel_n(java.lang.String sTitle) {
        this();
        setTitle(sTitle);
    }

    public ConfigData getConfigData() {
        return ConfigData.getDefault();
    }

    /** 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() {
        bindingGroup = new org.jdesktop.beansbinding.BindingGroup();

        JBGP_units = new javax.swing.ButtonGroup();
        JBGP_reportPeriod = new javax.swing.ButtonGroup();
        JBGP_runType = new javax.swing.ButtonGroup();
        g_secureConnectionGroup = new javax.swing.ButtonGroup();
        g_emailType = new javax.swing.ButtonGroup();
        JBGP_NRMV = new javax.swing.ButtonGroup();
        JBGP_NRMVOutput = new javax.swing.ButtonGroup();
        JBGP_SubmodelOutput = new javax.swing.ButtonGroup();
        jColorChooser1 = new javax.swing.JColorChooser();
        JB_Help = new javax.swing.JButton();
        JB_Cancel = new javax.swing.JButton();
        JTP_main = new javax.swing.JTabbedPane();
        JP_Weps = new javax.swing.JPanel();
        JLabel5 = new javax.swing.JLabel();
        JLabel6 = new javax.swing.JLabel();
        JTF_wepsExe = new javax.swing.JTextField();
        JTF_wepsCmd = new javax.swing.JTextField();
        JL_calWepsCmd = new javax.swing.JLabel();
        JTF_calWepsCmd = new javax.swing.JTextField();
        JB_wepsExe = new javax.swing.JButton();
        JP_Windgen = new javax.swing.JPanel();
        JLabel46 = new javax.swing.JLabel();
        JB_winGenDB1 = new javax.swing.JButton();
        JLabel47 = new javax.swing.JLabel();
        JTF_winExe = new javax.swing.JTextField();
        JTF_winCmd = new javax.swing.JTextField();
        JTF_winDb2 = new javax.swing.JTextField();
        JB_winGenDB2 = new javax.swing.JButton();
        JB_winExe = new javax.swing.JButton();
        JB_winGenDB3 = new javax.swing.JButton();
        JTF_winDb3 = new javax.swing.JTextField();
        JB_winGenDB = new javax.swing.JButton();
        JTF_winDb = new javax.swing.JTextField();
        JLabel20 = new javax.swing.JLabel();
        JTF_winDb1 = new javax.swing.JTextField();
        JLabel44 = new javax.swing.JLabel();
        JLabel2 = new javax.swing.JLabel();
        JLabel1 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        windgenModes = new usda.weru.weps.location.chooser.AllowedStationModeChooser();
        windRadiusField = new usda.weru.util.MeasurableField<>();
        windRadiusLabel = new javax.swing.JLabel();
        windRadiusUnits = new javax.swing.JLabel();
        JLabel48 = new javax.swing.JLabel();
        JTF_winDb4 = new javax.swing.JTextField();
        JB_winGenDB4 = new javax.swing.JButton();
        JP_Cligen = new javax.swing.JPanel();
        JLabel45 = new javax.swing.JLabel();
        JB_cliGenDb1 = new javax.swing.JButton();
        JTF_cliCmd = new javax.swing.JTextField();
        JB_cliExe = new javax.swing.JButton();
        JLabel3 = new javax.swing.JLabel();
        JTF_cliDb1 = new javax.swing.JTextField();
        JB_cliGenDb = new javax.swing.JButton();
        JLabel4 = new javax.swing.JLabel();
        JTF_cliDb = new javax.swing.JTextField();
        JTF_cliExe = new javax.swing.JTextField();
        JLabel41 = new javax.swing.JLabel();
        jLabel12 = new javax.swing.JLabel();
        cligenModes = new usda.weru.weps.location.chooser.AllowedStationModeChooser();
        cligenRadiusField = new usda.weru.util.MeasurableField<>();
        cligenRadiusLabel = new javax.swing.JLabel();
        cligenRadiusUnits = new javax.swing.JLabel();
        JP_Directories = new javax.swing.JPanel();
        JLabel7 = new javax.swing.JLabel();
        JLabel8 = new javax.swing.JLabel();
        JLabel9 = new javax.swing.JLabel();
        JLabel10 = new javax.swing.JLabel();
        JLabel12 = new javax.swing.JLabel();
        JLabel34 = new javax.swing.JLabel();
        JTF_manTemp = new javax.swing.JTextField();
        JTF_manSkel = new javax.swing.JTextField();
        JTF_manOperDB = new javax.swing.JTextField();
        JTF_cropDB = new javax.swing.JTextField();
        JTF_MCREW = new javax.swing.JTextField();
        JTF_projDir = new javax.swing.JTextField();
        manTemplate_Button = new javax.swing.JButton();
        manSkel_Button = new javax.swing.JButton();
        manOpDB_Button = new javax.swing.JButton();
        cropDB_Button = new javax.swing.JButton();
        mcrewDir_Button = new javax.swing.JButton();
        projectsDir_Button = new javax.swing.JButton();
        JL_mcrewDataConfig = new javax.swing.JLabel();
        JTF_mcrewDataConfig = new javax.swing.JTextField();
        JB_mcrewDataConfig = new javax.swing.JButton();
        JL_skelTranslations = new javax.swing.JLabel();
        JTF_skelTranslations = new javax.swing.JTextField();
        JB_skelTranslations = new javax.swing.JButton();
        JL_runsLocation = new javax.swing.JLabel();
        JTF_runsLocations = new javax.swing.JTextField();
        JB_browseRunsLocation = new javax.swing.JButton();
        JTF_manTempSave = new javax.swing.JTextField();
        JLabel42 = new javax.swing.JLabel();
        manTemplate_ButtonSave = new javax.swing.JButton();
        JL_reportFileName = new javax.swing.JLabel();
        JTF_reportFileName = new javax.swing.JTextField();
        JB_reportFileName = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        JTF_detailFilters = new javax.swing.JTextField();
        JB_detailFilters = new javax.swing.JButton();
        jLabel8 = new javax.swing.JLabel();
        JTF_barriersFile = new javax.swing.JTextField();
        JB_barriersFile = new javax.swing.JButton();
        JLabel28 = new javax.swing.JLabel();
        JTF_projDir1 = new javax.swing.JTextField();
        currentProjectButton = new javax.swing.JButton();
        JP_Soil = new javax.swing.JPanel();
        JLabel11 = new javax.swing.JLabel();
        JTF_soilDB = new javax.swing.JTextField();
        soilDB_Button = new javax.swing.JButton();
        jCheckBox2 = new javax.swing.JCheckBox();
        JXB_SoilEstimate = new javax.swing.JCheckBox();
        JXB_disableSurgoEstimates = new javax.swing.JCheckBox();
        jLabel1 = new javax.swing.JLabel();
        JTF_omThreshold = new javax.swing.JTextField();
        JTF_organicSoil = new javax.swing.JTextField();
        jCheckBox4 = new javax.swing.JCheckBox();
        jLabel4 = new javax.swing.JLabel();
        jCheckBox3 = new javax.swing.JCheckBox();
        soilOrganicFile_Button = new javax.swing.JButton();
        jLabel9 = new javax.swing.JLabel();
        maxOrganicDepthUnits = new javax.swing.JLabel();
        jLabel11 = new javax.swing.JLabel();
        organicMaxDepth = new usda.weru.util.MeasurableField<>();
        JXB_soilReadonly = new javax.swing.JCheckBox();
        jLabel27 = new javax.swing.JLabel();
        JTF_localSoil = new javax.swing.JTextField();
        localSoilButton = new javax.swing.JButton();
        JP_Gis = new javax.swing.JPanel();
        gisDataLabel = new javax.swing.JLabel();
        gisData = new javax.swing.JTextField();
        JB_gisDataFile = new javax.swing.JButton();
        JP_Reporting = new javax.swing.JPanel();
        JLabel17 = new javax.swing.JLabel();
        JLabel18 = new javax.swing.JLabel();
        JLabel21 = new javax.swing.JLabel();
        JLabel22 = new javax.swing.JLabel();
        JLabel23 = new javax.swing.JLabel();
        JLabel24 = new javax.swing.JLabel();
        JLabel25 = new javax.swing.JLabel();
        JLabel26 = new javax.swing.JLabel();
        JLabel19 = new javax.swing.JLabel();
        JTF_detHydro = new javax.swing.JTextField();
        JTF_detSoil = new javax.swing.JTextField();
        JTF_detMan = new javax.swing.JTextField();
        JTF_detCrop = new javax.swing.JTextField();
        JTF_detDec = new javax.swing.JTextField();
        JTF_detEro = new javax.swing.JTextField();
        JTF_debugHydro = new javax.swing.JTextField();
        JTF_debugSoil = new javax.swing.JTextField();
        JTF_debugMan = new javax.swing.JTextField();
        JTF_debugCrop = new javax.swing.JTextField();
        JTF_debugDec = new javax.swing.JTextField();
        JTF_debugEro = new javax.swing.JTextField();
        JLabel43 = new javax.swing.JLabel();
        JP_ReportingPeriod = new javax.swing.JPanel();
        JRB_1 = new javax.swing.JRadioButton();
        JRB_2 = new javax.swing.JRadioButton();
        JRB_3 = new javax.swing.JRadioButton();
        JRB_4 = new javax.swing.JRadioButton();
        jCheckBox5 = new javax.swing.JCheckBox();
        jCheckBox6 = new javax.swing.JCheckBox();
        jCheckBox1 = new javax.swing.JCheckBox();
        jCheckBox7 = new javax.swing.JCheckBox();
        jCheckBox8 = new javax.swing.JCheckBox();
        jCheckBox9 = new javax.swing.JCheckBox();
        jLabel7 = new javax.swing.JLabel();
        jCheckBox10 = new javax.swing.JCheckBox();
        jCheckBox11 = new javax.swing.JCheckBox();
        jCheckBox12 = new javax.swing.JCheckBox();
        jCheckBox13 = new javax.swing.JCheckBox();
        JP_Email = new javax.swing.JPanel();
        jPanel2 = new javax.swing.JPanel();
        JTF_emailSender = new javax.swing.JTextField();
        JTF_emailHost = new javax.swing.JTextField();
        g_serverNameLabel = new javax.swing.JLabel();
        g_emailUseSmtpRadioButton = new javax.swing.JRadioButton();
        g_emailUseSystemRadioButton = new javax.swing.JRadioButton();
        JTF_emailWeps = new javax.swing.JTextField();
        JTF_emailBugs = new javax.swing.JTextField();
        JLabel13 = new javax.swing.JLabel();
        JLabel15 = new javax.swing.JLabel();
        JLabel16 = new javax.swing.JLabel();
        JCB_outlookClient = new javax.swing.JCheckBox();
        jPanel3 = new javax.swing.JPanel();
        JTF_mantisEmail = new javax.swing.JTextField();
        JLabel14 = new javax.swing.JLabel();
        jPanel4 = new javax.swing.JPanel();
        javax.swing.JTextField JTF_mantisEmail1 = new javax.swing.JTextField();
        JTF_mantisURL1 = new javax.swing.JTextField();
        JTF_mantisUserID1 = new javax.swing.JTextField();
        JLabel29 = new javax.swing.JLabel();
        JLabel49 = new javax.swing.JLabel();
        JLabel50 = new javax.swing.JLabel();
        jLabel14 = new javax.swing.JLabel();
        JLabel51 = new javax.swing.JLabel();
        JTF_mantisProject1 = new javax.swing.JTextField();
        JTF_mantisPassword1 = new WepsPasswordField("4raf9AxU");
        JP_Run = new javax.swing.JPanel();
        JLabel30 = new javax.swing.JLabel();
        JRB_NRCS = new javax.swing.JRadioButton();
        JRB_cycle = new javax.swing.JRadioButton();
        JRB_dates = new javax.swing.JRadioButton();
        JL_runLength = new javax.swing.JLabel();
        JTF_runLength = new javax.swing.JTextField();
        JCB_purgeRunFiles = new javax.swing.JCheckBox();
        JCB_allowBatchCreation = new javax.swing.JCheckBox();
        jLabel13 = new javax.swing.JLabel();
        jTextField2 = new javax.swing.JTextField();
        jLabel6 = new javax.swing.JLabel();
        JRB_SOReadWrite = new javax.swing.JRadioButton();
        JRB_SOReadOnly = new javax.swing.JRadioButton();
        JRB_SONotVisible = new javax.swing.JRadioButton();
        JP_Fuels = new javax.swing.JPanel();
        fuelLabel = new javax.swing.JLabel();
        fuelFile = new javax.swing.JTextField();
        fuelFileButton = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        fuelTable = new javax.swing.JTable();
        userFuelFileLabel = new javax.swing.JLabel();
        userFuelFile = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        fuelDefaultChooser = new usda.weru.weps.fuel.FuelChooser();
        JP_NRMV = new javax.swing.JPanel();
        JRB_NRMVSummaries = new javax.swing.JRadioButton();
        JRB_NRMVOn = new javax.swing.JRadioButton();
        JRB_NRMVOff = new javax.swing.JRadioButton();
        JCB_decomp = new javax.swing.JComboBox<>();
        jLabel17 = new javax.swing.JLabel();
        JCB_plot = new javax.swing.JComboBox<>();
        jLabel23 = new javax.swing.JLabel();
        JCB_season = new javax.swing.JComboBox<>();
        JCB_crop = new javax.swing.JComboBox<>();
        jLabel16 = new javax.swing.JLabel();
        JCB_dabove = new javax.swing.JComboBox<>();
        jLabel22 = new javax.swing.JLabel();
        JCB_shoot = new javax.swing.JComboBox<>();
        JCB_hydro = new javax.swing.JComboBox<>();
        JCB_dbelow = new javax.swing.JComboBox<>();
        JCB_hlayers = new javax.swing.JComboBox<>();
        jLabel19 = new javax.swing.JLabel();
        jLabel18 = new javax.swing.JLabel();
        jLabel21 = new javax.swing.JLabel();
        JCB_soillay = new javax.swing.JComboBox<>();
        jLabel15 = new javax.swing.JLabel();
        jLabel24 = new javax.swing.JLabel();
        jLabel20 = new javax.swing.JLabel();
        JP_Display = new javax.swing.JPanel();
        JLabel27 = new javax.swing.JLabel();
        JRB_english = new javax.swing.JRadioButton();
        JRB_metric = new javax.swing.JRadioButton();
        JLabel31 = new javax.swing.JLabel();
        JTF_timeSteps = new javax.swing.JTextField();
        JXB_latLon = new javax.swing.JCheckBox();
        JXB_stateCounty = new javax.swing.JCheckBox();
        JXB_map = new javax.swing.JCheckBox();
        JLabel35 = new javax.swing.JLabel();
        JLabel36 = new javax.swing.JLabel();
        JTF_ttInit = new javax.swing.JTextField();
        JLabel37 = new javax.swing.JLabel();
        JTF_ttDismiss = new javax.swing.JTextField();
        JXB_elevation = new javax.swing.JCheckBox();
        JXB_McrewEdit = new javax.swing.JCheckBox();
        JXB_slope = new javax.swing.JCheckBox();
        JXB_SystemLocale = new javax.swing.JCheckBox();
        JXB_doNotReview = new javax.swing.JCheckBox();
        JXB_hidePButtons = new javax.swing.JCheckBox();
        JXB_hideTButtons = new javax.swing.JCheckBox();
        jLabel3 = new javax.swing.JLabel();
        JTF_daysKeepLog = new javax.swing.JTextField();
        JXB_barriersReadonly = new javax.swing.JCheckBox();
        JXB_slope1 = new javax.swing.JCheckBox();
        JCB_showCountries = new javax.swing.JCheckBox();
        JXB_xmlFormats = new javax.swing.JCheckBox();
        windgenPrecision = new javax.swing.JLabel();
        JTF_windgenPrecision = new javax.swing.JTextField();
        lbl_formatOperationDate = new javax.swing.JLabel();
        JCB_formatOperationDate = new javax.swing.JComboBox<>();
        collapse = new javax.swing.JCheckBox();
        JP_Server = new javax.swing.JPanel();
        jTabbedPane1 = new javax.swing.JTabbedPane();
        JP_Server_executables = new javax.swing.JPanel();
        JXB_RunInterpOnServer = new javax.swing.JCheckBox();
        JXB_RunInterpPrepareOnServer = new javax.swing.JCheckBox();
        JXB_RunInterpGenDataOnServer = new javax.swing.JCheckBox();
        JXB_RunWindGenOnServer = new javax.swing.JCheckBox();
        JXB_RunCligenOnServer = new javax.swing.JCheckBox();
        JXB_RunWepsOnServer = new javax.swing.JCheckBox();
        JT_InterpolateExeName = new javax.swing.JTextField();
        JT_InterpolatePrepareName = new javax.swing.JTextField();
        JT_InterpolateGenDataName = new javax.swing.JTextField();
        JT_WindgenExeName = new javax.swing.JTextField();
        JT_CligenExeName = new javax.swing.JTextField();
        JT_WepsExeName = new javax.swing.JTextField();
        JP_Servers = new javax.swing.JPanel();
        JT_DataHandlerEndpointAddress = new javax.swing.JTextField();
        jLabel25 = new javax.swing.JLabel();
        JXB_UseScienceCodeServer = new javax.swing.JCheckBox();
        JT_ScienceCodeJnlpUrl = new javax.swing.JTextField();
        jLabel26 = new javax.swing.JLabel();
        JT_ScienceCodeEndpointAddress = new javax.swing.JTextField();
        jLabel28 = new javax.swing.JLabel();
        JXB_AutoPopulateServers = new javax.swing.JCheckBox();
        JP_Server_executables_parms = new javax.swing.JPanel();
        JTP_ExecutableParms = new javax.swing.JTabbedPane();
        JP_PrepareDataParms = new javax.swing.JPanel();
        JL_SERVER_58 = new javax.swing.JLabel();
        JL_SERVER_36 = new javax.swing.JLabel();
        JL_SERVER_37 = new javax.swing.JLabel();
        JL_SERVER_38 = new javax.swing.JLabel();
        JL_SERVER_39 = new javax.swing.JLabel();
        JT_PrepareDataFiles = new javax.swing.JTextField();
        JT_PrepareDataOutFiles = new javax.swing.JTextField();
        JT_PrepareDataExeRef = new javax.swing.JTextField();
        JT_PrepareDataExeRefVal = new javax.swing.JTextField();
        JP_GenDataParms = new javax.swing.JPanel();
        JL_SERVER_28 = new javax.swing.JLabel();
        JL_SERVER_29 = new javax.swing.JLabel();
        JT_GenDataInFiles = new javax.swing.JTextField();
        JL_SERVER_30 = new javax.swing.JLabel();
        JT_GenDataOutFiles = new javax.swing.JTextField();
        JL_SERVER_31 = new javax.swing.JLabel();
        JT_GenDataExeRef = new javax.swing.JTextField();
        JL_SERVER_46 = new javax.swing.JLabel();
        JT_GenDataExeRefVal = new javax.swing.JTextField();
        JL_SERVER_41 = new javax.swing.JLabel();
        JP_WindgenParms = new javax.swing.JPanel();
        JL_SERVER_32 = new javax.swing.JLabel();
        JL_SERVER_33 = new javax.swing.JLabel();
        JT_WindgenInFiles = new javax.swing.JTextField();
        JL_SERVER_34 = new javax.swing.JLabel();
        JT_WindgenOutFiles = new javax.swing.JTextField();
        JL_SERVER_35 = new javax.swing.JLabel();
        JT_WindgenExeRef = new javax.swing.JTextField();
        JL_SERVER_47 = new javax.swing.JLabel();
        JT_WindgenExeRefVal = new javax.swing.JTextField();
        JL_SERVER_42 = new javax.swing.JLabel();
        JP_CligenParms = new javax.swing.JPanel();
        JL_SERVER_48 = new javax.swing.JLabel();
        JL_SERVER_49 = new javax.swing.JLabel();
        JL_SERVER_50 = new javax.swing.JLabel();
        JL_SERVER_51 = new javax.swing.JLabel();
        JL_SERVER_52 = new javax.swing.JLabel();
        JT_CligenInFiles = new javax.swing.JTextField();
        JT_CligenOutFiles = new javax.swing.JTextField();
        JT_CligenExeRef = new javax.swing.JTextField();
        JT_CligenExeRefVal = new javax.swing.JTextField();
        JL_SERVER_43 = new javax.swing.JLabel();
        JP_WepsParms = new javax.swing.JPanel();
        JL_SERVER_53 = new javax.swing.JLabel();
        JL_SERVER_54 = new javax.swing.JLabel();
        JL_SERVER_55 = new javax.swing.JLabel();
        JL_SERVER_56 = new javax.swing.JLabel();
        JL_SERVER_57 = new javax.swing.JLabel();
        JT_WepsInFiles = new javax.swing.JTextField();
        JT_WepsOutFiles = new javax.swing.JTextField();
        JT_WepsExeRef = new javax.swing.JTextField();
        JT_WepsExeRefVal = new javax.swing.JTextField();
        JL_SERVER_44 = new javax.swing.JLabel();
        JP_InterpolateParms = new javax.swing.JPanel();
        JL_SERVER_14 = new javax.swing.JLabel();
        JT_InterpolateInFiles = new javax.swing.JTextField();
        JL_Server_25 = new javax.swing.JLabel();
        JL_SERVER_26 = new javax.swing.JLabel();
        JT_InterpolateOutFiles = new javax.swing.JTextField();
        JL_SERVER_27 = new javax.swing.JLabel();
        JT_InterpolateExeRef = new javax.swing.JTextField();
        JL_SERVER_45 = new javax.swing.JLabel();
        JT_InterpolateExeRefVal = new javax.swing.JTextField();
        JL_SERVER_59 = new javax.swing.JLabel();
        JL_SERVER_61 = new javax.swing.JLabel();
        JT_CloudProgressLen = new javax.swing.JTextField();
        JB_OK = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        setTitle("Configuration");
        setResizable(false);
        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        JB_Help.setMnemonic('H');
        JB_Help.setText("Help");
        JB_Help.setToolTipText("ConfigPanel:help");
        JB_Help.setDefaultCapable(false);
        JB_Help.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JB_Help_ActionPerformed(evt);
            }
        });

        JB_Cancel.setText("Cancel");
        JB_Cancel.setDefaultCapable(false);
        JB_Cancel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JB_CancelActionPerformed(evt);
            }
        });

        JTP_main.setToolTipText("ConfigPanel:main");

        JP_Weps.setToolTipText("ConfigPanel:exe");

        JLabel5.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel5.setText("Executable:");
        JLabel5.setToolTipText("ConfigPanel:wepsExe");
        JLabel5.setName("CD-WEPS exe"); // NOI18N

        JLabel6.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel6.setText("Arguments:");
        JLabel6.setToolTipText("ConfigPanel:wepsCmd");
        JLabel6.setName("CD-WEPS exe parameter"); // NOI18N

        JTF_wepsExe.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_wepsExe.setToolTipText("ConfigPanel:wepsExe");
        JTF_wepsExe.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_wepsExe.setName("CD-WEPS exe"); // NOI18N
        JTF_wepsExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_wepsExe.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_wepsCmd.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_wepsCmd.setToolTipText("ConfigPanel:wepsCmd");
        JTF_wepsCmd.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_wepsCmd.setName("CD-WEPS exe parameter"); // NOI18N
        JTF_wepsCmd.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_wepsCmd.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JL_calWepsCmd.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_calWepsCmd.setText("Calibration:");
        JL_calWepsCmd.setToolTipText("ConfigPanel:calWepsCmd");
        JL_calWepsCmd.setName("CD-WEPS calibration exe parameter"); // NOI18N

        JTF_calWepsCmd.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_calWepsCmd.setToolTipText("ConfigPanel:calWepsCmd");
        JTF_calWepsCmd.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_calWepsCmd.setName("CD-WEPS calibration exe parameter"); // NOI18N
        JTF_calWepsCmd.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_calWepsCmd.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_wepsExe.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_wepsExe.setToolTipText("ConfigPanel:wepsExeButton");
        JB_wepsExe.setName("CD-WEPS exe"); // NOI18N
        JB_wepsExe.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_wepsExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_WepsLayout = new javax.swing.GroupLayout(JP_Weps);
        JP_Weps.setLayout(JP_WepsLayout);
        JP_WepsLayout.setHorizontalGroup(
            JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WepsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                        .addComponent(JLabel6, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JLabel5, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addComponent(JL_calWepsCmd))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JTF_calWepsCmd, javax.swing.GroupLayout.DEFAULT_SIZE, 572, Short.MAX_VALUE)
                    .addComponent(JTF_wepsCmd, javax.swing.GroupLayout.DEFAULT_SIZE, 572, Short.MAX_VALUE)
                    .addComponent(JTF_wepsExe, javax.swing.GroupLayout.DEFAULT_SIZE, 572, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JB_wepsExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        JP_WepsLayout.setVerticalGroup(
            JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WepsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JB_wepsExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_WepsLayout.createSequentialGroup()
                        .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_wepsExe, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_wepsCmd, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WepsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JL_calWepsCmd, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_calWepsCmd, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addContainerGap(439, Short.MAX_VALUE))
        );

        JTP_main.addTab("Weps", null, JP_Weps, "ConfigPanel:exe");

        JLabel46.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel46.setText("Interpolate 1:");
        JLabel46.setToolTipText("");
        JLabel46.setName("CD-windgen database"); // NOI18N

        JB_winGenDB1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winGenDB1.setToolTipText("");
        JB_winGenDB1.setName("CD-windgen index"); // NOI18N
        JB_winGenDB1.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winGenDB1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JLabel47.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel47.setText("Interpolate 2:");
        JLabel47.setToolTipText("");
        JLabel47.setName("CD-windgen database"); // NOI18N

        JTF_winExe.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winExe.setToolTipText("ConfigPanel:windExe");
        JTF_winExe.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winExe.setName("CD-windgen generator"); // NOI18N
        JTF_winExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winExe.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_winCmd.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winCmd.setToolTipText("ConfigPanel:windCmd");
        JTF_winCmd.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winCmd.setName("CD-windgen cmdline"); // NOI18N
        JTF_winCmd.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winCmd.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_winDb2.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winDb2.setToolTipText("");
        JTF_winDb2.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winDb2.setName("CD-windgen interpolate 1"); // NOI18N
        JTF_winDb2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winDb2.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_winGenDB2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winGenDB2.setToolTipText("");
        JB_winGenDB2.setName("CD-windgen interpolate 1"); // NOI18N
        JB_winGenDB2.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winGenDB2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JB_winExe.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winExe.setToolTipText("ConfigPanel:windGenExeButton");
        JB_winExe.setName("CD-windgen generator"); // NOI18N
        JB_winExe.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JB_winGenDB3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winGenDB3.setToolTipText("");
        JB_winGenDB3.setName("CD-windgen interpolate 2"); // NOI18N
        JB_winGenDB3.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winGenDB3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JTF_winDb3.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winDb3.setToolTipText("");
        JTF_winDb3.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winDb3.setName("CD-windgen interpolate 2"); // NOI18N
        JTF_winDb3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winDb3.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_winGenDB.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winGenDB.setToolTipText("");
        JB_winGenDB.setName("CD-windgen database"); // NOI18N
        JB_winGenDB.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winGenDB.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JTF_winDb.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winDb.setToolTipText("");
        JTF_winDb.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winDb.setName("CD-windgen database"); // NOI18N
        JTF_winDb.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winDb.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JLabel20.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel20.setText("Database:");
        JLabel20.setToolTipText("");
        JLabel20.setName("CD-windgen database"); // NOI18N

        JTF_winDb1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winDb1.setToolTipText("");
        JTF_winDb1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winDb1.setName("CD-windgen index"); // NOI18N
        JTF_winDb1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winDb1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JLabel44.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel44.setText("Index:");
        JLabel44.setToolTipText("");
        JLabel44.setName("CD-windgen database"); // NOI18N

        JLabel2.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel2.setText("Arguments:");
        JLabel2.setToolTipText("ConfigPanel:windCmd");
        JLabel2.setName("CD-windgen cmdline"); // NOI18N

        JLabel1.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel1.setText("Executable:");
        JLabel1.setToolTipText("ConfigPanel:windExe");
        JLabel1.setName("CD-windgen generator"); // NOI18N

        jLabel10.setText("Modes:");
        jLabel10.setVerticalAlignment(javax.swing.SwingConstants.TOP);
        jLabel10.setName("CD-windgen.allowedmodes"); // NOI18N

        windgenModes.setName("CD-windgen.allowedmodes"); // NOI18N
        windgenModes.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        windRadiusField.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        windRadiusField.setName("CD-wind radius"); // NOI18N
        windRadiusField.setUnitsLabel(windRadiusUnits);
        windRadiusField.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        windRadiusField.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        windRadiusLabel.setText("Radius:");
        windRadiusLabel.setName("CD-wind radius"); // NOI18N

        windRadiusUnits.setFont(windRadiusUnits.getFont().deriveFont(windRadiusUnits.getFont().getStyle() & ~java.awt.Font.BOLD));

        JLabel48.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel48.setText("Boundary:");
        JLabel48.setToolTipText("");
        JLabel48.setName(ConfigData.WindgenInterpolationBoundaryFile);

        JTF_winDb4.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_winDb4.setToolTipText("");
        JTF_winDb4.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_winDb4.setName(ConfigData.WindgenInterpolationBoundaryFile);
        JTF_winDb4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_winDb4.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_winGenDB4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_winGenDB4.setToolTipText("");
        JB_winGenDB4.setName(ConfigData.WindgenInterpolationBoundaryFile);
        JB_winGenDB4.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_winGenDB4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_WindgenLayout = new javax.swing.GroupLayout(JP_Windgen);
        JP_Windgen.setLayout(JP_WindgenLayout);
        JP_WindgenLayout.setHorizontalGroup(
            JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WindgenLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addComponent(JLabel48, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(30, 30, 30))
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addComponent(jLabel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                .addComponent(JLabel20, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(JLabel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(JLabel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(JLabel44, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(JLabel46, javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(JLabel47, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(windRadiusLabel))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addComponent(windRadiusField, javax.swing.GroupLayout.PREFERRED_SIZE, 75, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(windRadiusUnits))
                    .addComponent(windgenModes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addComponent(JTF_winDb4, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JB_winGenDB4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_WindgenLayout.createSequentialGroup()
                        .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JTF_winDb1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                            .addComponent(JTF_winDb, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                            .addComponent(JTF_winCmd, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                            .addComponent(JTF_winExe, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                            .addComponent(JTF_winDb2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(JB_winExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_winGenDB, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_winGenDB1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_winGenDB2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_WindgenLayout.createSequentialGroup()
                        .addComponent(JTF_winDb3, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JB_winGenDB3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap())
        );

        JP_WindgenLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {JLabel1, JLabel2, JLabel20, JLabel44, JLabel46});

        JP_WindgenLayout.setVerticalGroup(
            JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_WindgenLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createSequentialGroup()
                        .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_winExe, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_winCmd, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addComponent(JB_winExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel20, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_winDb, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_winGenDB, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JB_winGenDB1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel44, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_winDb1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel46, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_winDb2, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_winGenDB2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JTF_winDb3, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JLabel47, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_winGenDB3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JTF_winDb4, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JLabel48, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_winGenDB4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(windRadiusField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(windRadiusLabel)
                    .addComponent(windRadiusUnits))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel10)
                    .addComponent(windgenModes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(131, 131, 131))
        );

        JTP_main.addTab("Windgen", JP_Windgen);

        JLabel45.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel45.setText("Index:");
        JLabel45.setToolTipText("");
        JLabel45.setName("CD-cligen database"); // NOI18N

        JB_cliGenDb1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_cliGenDb1.setToolTipText("");
        JB_cliGenDb1.setName("CD-cligen index"); // NOI18N
        JB_cliGenDb1.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_cliGenDb1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JTF_cliCmd.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_cliCmd.setToolTipText("ConfigPanel:cliCmd");
        JTF_cliCmd.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_cliCmd.setName("CD-cligen cmdline"); // NOI18N
        JTF_cliCmd.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_cliCmd.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_cliExe.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_cliExe.setToolTipText("ConfigPanel:cliGenExeButton");
        JB_cliExe.setName("CD-cligen generator"); // NOI18N
        JB_cliExe.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_cliExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JLabel3.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel3.setText("Executable:");
        JLabel3.setToolTipText("ConfigPanel:cliExe");
        JLabel3.setName("CD-cligen generator"); // NOI18N

        JTF_cliDb1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_cliDb1.setToolTipText("");
        JTF_cliDb1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_cliDb1.setName("CD-cligen index"); // NOI18N
        JTF_cliDb1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_cliDb1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_cliGenDb.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_cliGenDb.setToolTipText("");
        JB_cliGenDb.setName("CD-cligen database"); // NOI18N
        JB_cliGenDb.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_cliGenDb.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JLabel4.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel4.setText("Arguments:");
        JLabel4.setToolTipText("ConfigPanel:cliCmd");
        JLabel4.setName("CD-windgen cmdline"); // NOI18N

        JTF_cliDb.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_cliDb.setToolTipText("");
        JTF_cliDb.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_cliDb.setName("CD-cligen database"); // NOI18N
        JTF_cliDb.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_cliDb.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_cliExe.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_cliExe.setToolTipText("ConfigPanel:cliExe");
        JTF_cliExe.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_cliExe.setName("CD-cligen generator"); // NOI18N
        JTF_cliExe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_cliExe.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JLabel41.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel41.setText("Database:");
        JLabel41.setToolTipText("");
        JLabel41.setName("CD-cligen database"); // NOI18N

        jLabel12.setText("Modes:");
        jLabel12.setName("CD-cligen.allowedmodes"); // NOI18N

        cligenModes.setIgnore(StationMode.Interpolated);
        cligenModes.setName("CD-cligen.allowedmodes"); // NOI18N
        cligenModes.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                cligenModesglobalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                cligenModesglobalFocusLost(evt);
            }
        });

        cligenRadiusField.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        cligenRadiusField.setName("CD-climate radius"); // NOI18N
        cligenRadiusField.setUnitsLabel(cligenRadiusUnits);
        cligenRadiusField.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        cligenRadiusField.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFousGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        cligenRadiusLabel.setText("Radius:");
        cligenRadiusLabel.setName("CD-climate radius"); // NOI18N

        cligenRadiusUnits.setFont(cligenRadiusUnits.getFont().deriveFont(cligenRadiusUnits.getFont().getStyle() & ~java.awt.Font.BOLD));
        cligenRadiusUnits.setName("CD-climate radius"); // NOI18N

        javax.swing.GroupLayout JP_CligenLayout = new javax.swing.GroupLayout(JP_Cligen);
        JP_Cligen.setLayout(JP_CligenLayout);
        JP_CligenLayout.setHorizontalGroup(
            JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_CligenLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_CligenLayout.createSequentialGroup()
                        .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                .addComponent(JLabel45, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(JLabel41, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(JLabel4, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(jLabel12)
                            .addComponent(cligenRadiusLabel))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(cligenModes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_cliDb1, javax.swing.GroupLayout.DEFAULT_SIZE, 574, Short.MAX_VALUE)
                            .addComponent(JTF_cliDb, javax.swing.GroupLayout.DEFAULT_SIZE, 574, Short.MAX_VALUE)
                            .addComponent(JTF_cliCmd, javax.swing.GroupLayout.DEFAULT_SIZE, 574, Short.MAX_VALUE)
                            .addGroup(JP_CligenLayout.createSequentialGroup()
                                .addComponent(cligenRadiusField, javax.swing.GroupLayout.PREFERRED_SIZE, 75, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(cligenRadiusUnits))))
                    .addGroup(JP_CligenLayout.createSequentialGroup()
                        .addComponent(JLabel3)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JTF_cliExe, javax.swing.GroupLayout.DEFAULT_SIZE, 575, Short.MAX_VALUE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(JB_cliExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JB_cliGenDb, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_cliGenDb1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );
        JP_CligenLayout.setVerticalGroup(
            JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_CligenLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(JB_cliExe, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_cliExe, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_cliCmd, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel41, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_cliDb, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_cliGenDb, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel45, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_cliDb1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_cliGenDb1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(cligenRadiusField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(cligenRadiusLabel)
                    .addComponent(cligenRadiusUnits))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(cligenModes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel12))
                .addContainerGap(226, Short.MAX_VALUE))
        );

        JP_CligenLayout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {JB_cliGenDb, JLabel41, JTF_cliDb});

        JP_CligenLayout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {JB_cliGenDb1, JLabel45, JTF_cliDb1});

        JTP_main.addTab("Cligen", JP_Cligen);

        JP_Directories.setToolTipText("ConfigPanel:dir");

        JLabel7.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel7.setText("Man Template Open");
        JLabel7.setToolTipText("ConfigPanel:manTemp");
        JLabel7.setName("CD-management template"); // NOI18N

        JLabel8.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel8.setText("Man Conversion Dir");
        JLabel8.setToolTipText("ConfigPanel:manSkel");
        JLabel8.setName("CD-management skeleton"); // NOI18N

        JLabel9.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel9.setText("Operation Records");
        JLabel9.setToolTipText("ConfigPanel:manOpDB");
        JLabel9.setName("CD-manoperdb"); // NOI18N

        JLabel10.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel10.setText("Crop Records");
        JLabel10.setToolTipText("ConfigPanel:cropDB");
        JLabel10.setName("CD-cropdb"); // NOI18N

        JLabel12.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel12.setText("Projects Directory");
        JLabel12.setToolTipText("ConfigPanel:projDir");
        JLabel12.setName("CD-projects path"); // NOI18N

        JLabel34.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel34.setText("MCREW Directory");
        JLabel34.setToolTipText("ConfigPanel:mcrewDir");
        JLabel34.setName("CD-MCREW"); // NOI18N

        JTF_manTemp.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_manTemp.setToolTipText("ConfigPanel:manTemp");
        JTF_manTemp.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_manTemp.setName("CD-management template"); // NOI18N
        JTF_manTemp.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_manTemp.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_manSkel.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_manSkel.setToolTipText("ConfigPanel:manSkel");
        JTF_manSkel.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_manSkel.setName("CD-management skeleton"); // NOI18N
        JTF_manSkel.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_manSkel.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_manOperDB.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_manOperDB.setToolTipText("ConfigPanel:manOpDB");
        JTF_manOperDB.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_manOperDB.setName("CD-manoperdb"); // NOI18N
        JTF_manOperDB.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_manOperDB.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_cropDB.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_cropDB.setToolTipText("ConfigPanel:cropDB");
        JTF_cropDB.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_cropDB.setName("CD-cropdb"); // NOI18N
        JTF_cropDB.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_cropDB.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_MCREW.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_MCREW.setToolTipText("ConfigPanel:mcrewDir");
        JTF_MCREW.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_MCREW.setName("CD-MCREW"); // NOI18N
        JTF_MCREW.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_MCREW.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_projDir.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_projDir.setToolTipText("ConfigPanel:projDir");
        JTF_projDir.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_projDir.setName("CD-projects path"); // NOI18N
        JTF_projDir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_projDir.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        manTemplate_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        manTemplate_Button.setToolTipText("ConfigPanel:manTemplateButton");
        manTemplate_Button.setName("CD-management template"); // NOI18N
        manTemplate_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        manTemplate_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        manSkel_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        manSkel_Button.setToolTipText("ConfigPanel:manSkelButton");
        manSkel_Button.setName("CD-management skeleton"); // NOI18N
        manSkel_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        manSkel_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        manOpDB_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        manOpDB_Button.setToolTipText("ConfigPanel:manOpDbButton");
        manOpDB_Button.setName("CD-manoperdb"); // NOI18N
        manOpDB_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        manOpDB_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        cropDB_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        cropDB_Button.setToolTipText("ConfigPanel:cropDbButton");
        cropDB_Button.setName("CD-cropdb"); // NOI18N
        cropDB_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        cropDB_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        mcrewDir_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        mcrewDir_Button.setToolTipText("ConfigPanel:mcrewDirButton");
        mcrewDir_Button.setName("CD-MCREW"); // NOI18N
        mcrewDir_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        mcrewDir_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        projectsDir_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        projectsDir_Button.setToolTipText("ConfigPanel:projectsDirButton");
        projectsDir_Button.setName("CD-projects path"); // NOI18N
        projectsDir_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        projectsDir_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JL_mcrewDataConfig.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JL_mcrewDataConfig.setText("MCREW Data Config");
        JL_mcrewDataConfig.setName("CD-mcrew data config file name"); // NOI18N

        JTF_mcrewDataConfig.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mcrewDataConfig.setToolTipText("ConfigPanel:opDefn");
        JTF_mcrewDataConfig.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mcrewDataConfig.setName("CD-mcrew data config file name"); // NOI18N
        JTF_mcrewDataConfig.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_mcrewDataConfig.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_mcrewDataConfig.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_mcrewDataConfig.setToolTipText("ConfigPanel:opDefnButton");
        JB_mcrewDataConfig.setName("CD-mcrew data config file name"); // NOI18N
        JB_mcrewDataConfig.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_mcrewDataConfig.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JL_skelTranslations.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JL_skelTranslations.setText("Management Translation File");
        JL_skelTranslations.setName("CD-skel translations file"); // NOI18N

        JTF_skelTranslations.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_skelTranslations.setToolTipText("ConfigPanel:opDefn");
        JTF_skelTranslations.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_skelTranslations.setName("CD-skel translations file"); // NOI18N
        JTF_skelTranslations.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_skelTranslations.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_skelTranslations.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_skelTranslations.setToolTipText("ConfigPanel:opDefnButton");
        JB_skelTranslations.setName("CD-skel translations file"); // NOI18N
        JB_skelTranslations.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_skelTranslations.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JL_runsLocation.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JL_runsLocation.setText("New Project Default Runs Location");
        JL_runsLocation.setToolTipText("ConfigPanel:runsLocation");
        JL_runsLocation.setName("CD-default runs location Template"); // NOI18N

        JTF_runsLocations.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_runsLocations.setToolTipText("ConfigPanel:runsLocation");
        JTF_runsLocations.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_runsLocations.setName("CD-default runs location Template"); // NOI18N
        JTF_runsLocations.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_runsLocations.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_browseRunsLocation.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_browseRunsLocation.setToolTipText("ConfigPanel:runsLocationButton");
        JB_browseRunsLocation.setName("CD-default runs location Template"); // NOI18N
        JB_browseRunsLocation.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_browseRunsLocation.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JTF_manTempSave.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_manTempSave.setToolTipText("ConfigPanel:manTemp");
        JTF_manTempSave.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_manTempSave.setName("CD-management template save as"); // NOI18N
        JTF_manTempSave.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_manTempSave.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JLabel42.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel42.setText("Man Template Save");
        JLabel42.setToolTipText("ConfigPanel:manTemp");
        JLabel42.setName("CD-management template save as"); // NOI18N

        manTemplate_ButtonSave.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        manTemplate_ButtonSave.setToolTipText("ConfigPanel:manTemplateButton");
        manTemplate_ButtonSave.setName("CD-management template save as"); // NOI18N
        manTemplate_ButtonSave.setPreferredSize(new java.awt.Dimension(35, 19));
        manTemplate_ButtonSave.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JL_reportFileName.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JL_reportFileName.setText("Report Image Filename");
        JL_reportFileName.setName("CD-report file name"); // NOI18N

        JTF_reportFileName.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_reportFileName.setToolTipText("ConfigPanel:opDefn");
        JTF_reportFileName.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_reportFileName.setName("CD-report file name"); // NOI18N
        JTF_reportFileName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_reportFileName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_reportFileName.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_reportFileName.setToolTipText("ConfigPanel:opDefnButton");
        JB_reportFileName.setName("CD-report file name"); // NOI18N
        JB_reportFileName.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_reportFileName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        jLabel2.setText("Detail Report Filters");
        jLabel2.setName("CD-detail table filter file"); // NOI18N

        JTF_detailFilters.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detailFilters.setName("CD-detail table filter file"); // NOI18N
        JTF_detailFilters.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detailFilters.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_detailFilters.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_detailFilters.setToolTipText("ConfigPanel:opDefnButton");
        JB_detailFilters.setName("CD-detail table filter file"); // NOI18N
        JB_detailFilters.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_detailFilters.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        jLabel8.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        jLabel8.setText("Field Barriers File");
        jLabel8.setName("CD-nrcs cli shape file"); // NOI18N

        JTF_barriersFile.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_barriersFile.setName("CD-barriers.file"); // NOI18N
        JTF_barriersFile.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_barriersFile.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_barriersFile.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_barriersFile.setToolTipText("");
        JB_barriersFile.setName("CD-barriers.file"); // NOI18N
        JB_barriersFile.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_barriersFile.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        JLabel28.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel28.setText("Current Project");
        JLabel28.setToolTipText("ConfigPanel:projDir");
        JLabel28.setName("CD-current project"); // NOI18N

        JTF_projDir1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_projDir1.setToolTipText("ConfigPanel:projDir");
        JTF_projDir1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_projDir1.setName("CD-current project"); // NOI18N
        JTF_projDir1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_projDir1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        currentProjectButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        currentProjectButton.setToolTipText("ConfigPanel:projectsDirButton");
        currentProjectButton.setName("CD-current project"); // NOI18N
        currentProjectButton.setPreferredSize(new java.awt.Dimension(35, 19));
        currentProjectButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_DirectoriesLayout = new javax.swing.GroupLayout(JP_Directories);
        JP_Directories.setLayout(JP_DirectoriesLayout);
        JP_DirectoriesLayout.setHorizontalGroup(
            JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_cropDB, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_manOperDB, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_manSkel, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel42, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_manTempSave, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_manTemp, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JL_runsLocation, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_runsLocations, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel12, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_projDir, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JLabel28, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_projDir1, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(currentProjectButton, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(projectsDir_Button, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_browseRunsLocation, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(manTemplate_Button, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(manTemplate_ButtonSave, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(manSkel_Button, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(manOpDB_Button, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(cropDB_Button, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JL_mcrewDataConfig, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_mcrewDataConfig, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_detailFilters, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JL_reportFileName, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_reportFileName, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_DirectoriesLayout.createSequentialGroup()
                                .addComponent(JL_skelTranslations, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(10, 10, 10)
                                .addComponent(JTF_skelTranslations, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JB_skelTranslations, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_mcrewDataConfig, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_reportFileName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_detailFilters, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                        .addComponent(JLabel34, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(10, 10, 10)
                        .addComponent(JTF_MCREW, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(mcrewDir_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                        .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(10, 10, 10)
                        .addComponent(JTF_barriersFile, javax.swing.GroupLayout.DEFAULT_SIZE, 451, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JB_barriersFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap())
        );
        JP_DirectoriesLayout.setVerticalGroup(
            JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel28, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(currentProjectButton, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_projDir1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel12, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(projectsDir_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_projDir, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JL_runsLocation, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JB_browseRunsLocation, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_runsLocations, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(manTemplate_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_manTemp, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel42, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(manTemplate_ButtonSave, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_manTempSave, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(manSkel_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_manSkel, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(manOpDB_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_manOperDB, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(cropDB_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_cropDB, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(JTF_barriersFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(JB_barriersFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel34, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(mcrewDir_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_MCREW, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JL_mcrewDataConfig, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mcrewDataConfig, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JB_mcrewDataConfig, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JL_skelTranslations, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_skelTranslations, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JB_skelTranslations, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(0, 0, 0)
                .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_DirectoriesLayout.createSequentialGroup()
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JL_reportFileName, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_reportFileName, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(0, 0, 0)
                        .addGroup(JP_DirectoriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JTF_detailFilters, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JB_detailFilters, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addComponent(JB_reportFileName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        JP_DirectoriesLayout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {JLabel12, JTF_projDir, projectsDir_Button});

        JTP_main.addTab("Directories", JP_Directories);

        JLabel11.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel11.setText("Soils Database:");
        JLabel11.setToolTipText("ConfigPanel:soilDB");
        JLabel11.setName("CD-soil database"); // NOI18N

        JTF_soilDB.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_soilDB.setToolTipText("ConfigPanel:soilDB");
        JTF_soilDB.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_soilDB.setName("CD-soil database"); // NOI18N
        JTF_soilDB.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_soilDB.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        soilDB_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        soilDB_Button.setToolTipText("ConfigPanel:soilDbButton");
        soilDB_Button.setName("CD-soil database"); // NOI18N
        soilDB_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        soilDB_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        jCheckBox2.setText("Average Stratified Soil Layers");
        jCheckBox2.setName("CD-soil.averagestratified"); // NOI18N
        jCheckBox2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_SoilEstimate.setText("Allow Estimations in the Soil User Interface");
        JXB_SoilEstimate.setToolTipText("ConfigPanel:enableMcrewEdit");
        JXB_SoilEstimate.setName("CD-soil estimate"); // NOI18N
        JXB_SoilEstimate.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_disableSurgoEstimates.setText("Do Not Estimate Missing SSURGO Database Soil Values");
        JXB_disableSurgoEstimates.setName("CD-do not estimate missing surgo values"); // NOI18N
        JXB_disableSurgoEstimates.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel1.setText("Organic Matter Threshold:");
        jLabel1.setName("CD-organic material fraction threshold"); // NOI18N

        JTF_omThreshold.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        JTF_omThreshold.setText("0.20");
        JTF_omThreshold.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_omThreshold.setName("CD-organic material fraction threshold"); // NOI18N
        JTF_omThreshold.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_omThreshold.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JTF_organicSoil.setName("CD-soil.organicfile"); // NOI18N
        JTF_organicSoil.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_organicSoil.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox4.setText("Test for Organic Soils");
        jCheckBox4.setName("CD-soil.organictest"); // NOI18N
        jCheckBox4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel4.setText("Organic Soil File:");
        jLabel4.setName("CD-soil.organicfile"); // NOI18N

        jCheckBox3.setText("Ignore Organic Surface Layer");
        jCheckBox3.setName("CD-soil.skiporganic"); // NOI18N
        jCheckBox3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        soilOrganicFile_Button.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        soilOrganicFile_Button.setToolTipText("ConfigPanel:soilDbButton");
        soilOrganicFile_Button.setName("CD-soil.organicfile"); // NOI18N
        soilOrganicFile_Button.setPreferredSize(new java.awt.Dimension(35, 19));
        soilOrganicFile_Button.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        jLabel9.setText("Maximum Depth of Organic Surface Layer to Ignore:");
        jLabel9.setName("CD-soil.maxorganicdepth"); // NOI18N

        maxOrganicDepthUnits.setFont(maxOrganicDepthUnits.getFont().deriveFont(maxOrganicDepthUnits.getFont().getStyle() & ~java.awt.Font.BOLD));
        maxOrganicDepthUnits.setName("CD-soil.maxorganicdepth"); // NOI18N

        jLabel11.setFont(jLabel11.getFont().deriveFont(jLabel11.getFont().getStyle() & ~java.awt.Font.BOLD));
        jLabel11.setText("fraction");
        jLabel11.setName("CD-organic material fraction threshold"); // NOI18N

        organicMaxDepth.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        organicMaxDepth.setDisplayPattern("#0.00");
        organicMaxDepth.setName("CD-soil.maxorganicdepth"); // NOI18N
        organicMaxDepth.setUnitsLabel(maxOrganicDepthUnits);
        organicMaxDepth.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        organicMaxDepth.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_soilReadonly.setText("Soil Editor Readonly");
        JXB_soilReadonly.setName("CD-soil.readonly"); // NOI18N
        JXB_soilReadonly.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JXB_soilReadonly.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel27.setText("Local SSURGO Data:");
        jLabel27.setName("CD-LocalSoilDB"); // NOI18N

        JTF_localSoil.setName("CD-LocalSoilDB"); // NOI18N
        JTF_localSoil.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_localSoil.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        localSoilButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        localSoilButton.setName("CD-LocalSoilDB"); // NOI18N
        localSoilButton.setPreferredSize(new java.awt.Dimension(35, 19));
        localSoilButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_SoilLayout = new javax.swing.GroupLayout(JP_Soil);
        JP_Soil.setLayout(JP_SoilLayout);
        JP_SoilLayout.setHorizontalGroup(
            JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_SoilLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_SoilLayout.createSequentialGroup()
                        .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JXB_SoilEstimate)
                            .addComponent(JXB_disableSurgoEstimates)
                            .addGroup(JP_SoilLayout.createSequentialGroup()
                                .addComponent(jLabel1)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JTF_omThreshold, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jLabel11))
                            .addComponent(jCheckBox2)
                            .addComponent(jCheckBox3)
                            .addGroup(JP_SoilLayout.createSequentialGroup()
                                .addComponent(jLabel9)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(organicMaxDepth, javax.swing.GroupLayout.PREFERRED_SIZE, 75, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(maxOrganicDepthUnits, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(JXB_soilReadonly)
                            .addComponent(jCheckBox4))
                        .addGap(0, 276, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_SoilLayout.createSequentialGroup()
                        .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JLabel11)
                            .addComponent(jLabel4)
                            .addComponent(jLabel27))
                        .addGap(12, 12, 12)
                        .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(JTF_localSoil)
                            .addComponent(JTF_organicSoil)
                            .addComponent(JTF_soilDB))
                        .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_SoilLayout.createSequentialGroup()
                                .addGap(8, 8, 8)
                                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(soilOrganicFile_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(soilDB_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_SoilLayout.createSequentialGroup()
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(localSoilButton, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                .addContainerGap())
        );
        JP_SoilLayout.setVerticalGroup(
            JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_SoilLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JLabel11, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(JTF_soilDB, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(soilDB_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(soilOrganicFile_Button, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JTF_organicSoil, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(jLabel4)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel27)
                    .addComponent(JTF_localSoil, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(localSoilButton, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jCheckBox4)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(JTF_omThreshold, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel11))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_SoilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel9)
                    .addComponent(organicMaxDepth, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(maxOrganicDepthUnits))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_SoilEstimate, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_disableSurgoEstimates)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_soilReadonly)
                .addContainerGap(210, Short.MAX_VALUE))
        );

        JTP_main.addTab("Soil", JP_Soil);

        gisDataLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        gisDataLabel.setText("GIS Data:");
        gisDataLabel.setName("CD-gis.data"); // NOI18N

        gisData.setDisabledTextColor(java.awt.SystemColor.controlText);
        gisData.setName("CD-gis.data"); // NOI18N
        gisData.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        gisData.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JB_gisDataFile.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        JB_gisDataFile.setToolTipText("ConfigPanel:opDefnButton");
        JB_gisDataFile.setName("CD-gis.data"); // NOI18N
        JB_gisDataFile.setPreferredSize(new java.awt.Dimension(35, 19));
        JB_gisDataFile.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_GisLayout = new javax.swing.GroupLayout(JP_Gis);
        JP_Gis.setLayout(JP_GisLayout);
        JP_GisLayout.setHorizontalGroup(
            JP_GisLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_GisLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(gisDataLabel)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(gisData, javax.swing.GroupLayout.DEFAULT_SIZE, 579, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(JB_gisDataFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        JP_GisLayout.setVerticalGroup(
            JP_GisLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_GisLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_GisLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JB_gisDataFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_GisLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(gisDataLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(gisData, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(493, Short.MAX_VALUE))
        );

        JTP_main.addTab("GIS", JP_Gis);

        JP_Reporting.setToolTipText("ConfigPanel:output");

        JLabel17.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel17.setText("Reporting period");
        JLabel17.setToolTipText("ConfigPanel:outputRepPer");
        JLabel17.setName("CD-output report frequency"); // NOI18N

        JLabel18.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel18.setText("Submodel Reports");
        JLabel18.setToolTipText("ConfigPanel:subReports");
        JLabel18.setName("CD-detailed hydro output;CD-detailed soil output;CD-detailed manage output;CD-detailed crop output;CD-detailed decomp output;CD-detailed erosion output;CD-debug hydro output;CD-debug soil output;CD-debug manage output;CD-debug crop output;CD-debug decomp output;CD-debug erosion output"); // NOI18N

        JLabel21.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel21.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel21.setText("Hydrology");
        JLabel21.setToolTipText("ConfigPanel:outputHydro");
        JLabel21.setName("CD-detailed hydro output;CD-debug hydro output"); // NOI18N

        JLabel22.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel22.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel22.setText("Soil");
        JLabel22.setToolTipText("ConfigPanel:outputSoil");
        JLabel22.setName("CD-detailed soil output;CD-debug soil output"); // NOI18N

        JLabel23.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel23.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel23.setText("Management");
        JLabel23.setToolTipText("ConfigPanel:outputManage");
        JLabel23.setName("CD-detailed manage output;CD-debug manage output"); // NOI18N

        JLabel24.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel24.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel24.setText("Crop");
        JLabel24.setToolTipText("ConfigPanel:outputCrop");
        JLabel24.setName("CD-detailed crop output;CD-debug crop output"); // NOI18N

        JLabel25.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel25.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel25.setText("Decomposition");
        JLabel25.setToolTipText("ConfigPanel:outputDecomp");
        JLabel25.setName("CD-detailed decomp output;CD-debug decomp output"); // NOI18N

        JLabel26.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JLabel26.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel26.setText("Erosion");
        JLabel26.setToolTipText("ConfigPanel:outputErosion");
        JLabel26.setName("CD-detailed erosion output;CD-debug erosion output"); // NOI18N

        JLabel19.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel19.setText("Detail");
        JLabel19.setToolTipText("ConfigPanel:detailLevel");
        JLabel19.setName("CD-detailed hydro output;CD-detailed soil output;CD-detailed manage output;CD-detailed crop output;CD-detailed decomp output;CD-detailed erosion output"); // NOI18N

        JTF_detHydro.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detHydro.setText("0");
        JTF_detHydro.setToolTipText("ConfigPanel:outputHydro");
        JTF_detHydro.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detHydro.setName("CD-detailed hydro output"); // NOI18N
        JTF_detHydro.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detHydro.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_detSoil.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detSoil.setText("0");
        JTF_detSoil.setToolTipText("ConfigPanel:outputSoil");
        JTF_detSoil.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detSoil.setName("CD-detailed soil output"); // NOI18N
        JTF_detSoil.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detSoil.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_detMan.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detMan.setText("0");
        JTF_detMan.setToolTipText("ConfigPanel:outputManage");
        JTF_detMan.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detMan.setName("CD-detailed manage output"); // NOI18N
        JTF_detMan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detMan.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_detCrop.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detCrop.setText("0");
        JTF_detCrop.setToolTipText("ConfigPanel:outputCrop");
        JTF_detCrop.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detCrop.setName("CD-detailed crop output"); // NOI18N
        JTF_detCrop.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detCrop.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_detDec.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detDec.setText("0");
        JTF_detDec.setToolTipText("ConfigPanel:outputDecomp");
        JTF_detDec.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detDec.setName("CD-detailed decomp output"); // NOI18N
        JTF_detDec.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detDec.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_detEro.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_detEro.setText("0");
        JTF_detEro.setToolTipText("ConfigPanel:outputErosion");
        JTF_detEro.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_detEro.setName("CD-detailed erosion output"); // NOI18N
        JTF_detEro.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_detEro.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugHydro.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugHydro.setText("0");
        JTF_debugHydro.setToolTipText("ConfigPanel:outputHydroDebug\n");
        JTF_debugHydro.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugHydro.setName("CD-debug hydro output"); // NOI18N
        JTF_debugHydro.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugHydro.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugSoil.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugSoil.setText("0");
        JTF_debugSoil.setToolTipText("ConfigPanel:outputSoilDebug");
        JTF_debugSoil.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugSoil.setName("CD-debug soil output"); // NOI18N
        JTF_debugSoil.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugSoil.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugMan.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugMan.setText("0");
        JTF_debugMan.setToolTipText("ConfigPanel:outputManageDebug");
        JTF_debugMan.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugMan.setName("CD-debug manage output"); // NOI18N
        JTF_debugMan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugMan.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugCrop.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugCrop.setText("0");
        JTF_debugCrop.setToolTipText("ConfigPanel:outputCropDebug");
        JTF_debugCrop.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugCrop.setName("CD-debug crop output"); // NOI18N
        JTF_debugCrop.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugCrop.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugDec.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugDec.setText("0");
        JTF_debugDec.setToolTipText("ConfigPanel:outputDecompDebug");
        JTF_debugDec.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugDec.setName("CD-debug decomp output"); // NOI18N
        JTF_debugDec.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugDec.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JTF_debugEro.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        JTF_debugEro.setText("0");
        JTF_debugEro.setToolTipText("ConfigPanel:outputErosionDebug");
        JTF_debugEro.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_debugEro.setName("CD-debug erosion output"); // NOI18N
        JTF_debugEro.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_debugEro.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JLabel43.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel43.setText("Debug");
        JLabel43.setToolTipText("ConfigPanel:detailLevel");
        JLabel43.setName("CD-debug hydro output;CD-debug soil output;CD-debug manage output;CD-debug crop output;CD-debug decomp output;CD-debug erosion output"); // NOI18N

        JP_ReportingPeriod.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT));

        JBGP_reportPeriod.add(JRB_1);
        JRB_1.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JRB_1.setText("Daily");
        JRB_1.setToolTipText("ConfigPanel:outputRepPer");
        JRB_1.setActionCommand("E");
        JRB_1.setName("CD-output report frequency:1"); // NOI18N
        JRB_1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JP_ReportingPeriod.add(JRB_1);

        JBGP_reportPeriod.add(JRB_2);
        JRB_2.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JRB_2.setSelected(true);
        JRB_2.setText("Weekly");
        JRB_2.setToolTipText("ConfigPanel:outputRepPer");
        JRB_2.setActionCommand("N");
        JRB_2.setName("CD-output report frequency:2"); // NOI18N
        JRB_2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JP_ReportingPeriod.add(JRB_2);

        JBGP_reportPeriod.add(JRB_3);
        JRB_3.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JRB_3.setText("Bi-Weekly");
        JRB_3.setToolTipText("ConfigPanel:outputRepPer");
        JRB_3.setActionCommand("S");
        JRB_3.setName("CD-output report frequency:3"); // NOI18N
        JRB_3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JP_ReportingPeriod.add(JRB_3);

        JBGP_reportPeriod.add(JRB_4);
        JRB_4.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        JRB_4.setText("Monthly");
        JRB_4.setToolTipText("ConfigPanel:outputRepPer");
        JRB_4.setActionCommand("W");
        JRB_4.setName("CD-output report frequency:4"); // NOI18N
        JRB_4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JP_ReportingPeriod.add(JRB_4);

        jCheckBox5.setText("Confidence Interval");
        jCheckBox5.setName(ConfigData.ReportsConfidenceIntervalEnabled);
        jCheckBox5.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        jCheckBox5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox6.setText("Crop Interval Period Detail");
        jCheckBox6.setName(ConfigData.ReportsCropIntPerDetEnabled);
        jCheckBox6.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        jCheckBox6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox1.setSelected(ConfigData.getDefault().getReportVisibility("Rep-Run"));
        jCheckBox1.setText("Run Report");
        jCheckBox1.setName("Rep-Run"); // NOI18N
        jCheckBox1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox7.setSelected(ConfigData.getDefault().getReportVisibility("Rep-Man"));
        jCheckBox7.setText("Management Report");
        jCheckBox7.setName("Rep-Man"); // NOI18N
        jCheckBox7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox8.setSelected(ConfigData.getDefault().getReportVisibility("Rep-Crop"));
        jCheckBox8.setText("Crop Report");
        jCheckBox8.setName("Rep-Crop"); // NOI18N
        jCheckBox8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox9.setSelected(ConfigData.getDefault().getReportVisibility("Rep-CCr"));
        jCheckBox9.setText("Cover Crop Report");
        jCheckBox9.setName("Rep-CCr"); // NOI18N
        jCheckBox9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel7.setText("Buttons Visible:");

        jCheckBox10.setSelected(ConfigData.getDefault().getReportVisibility("Rep-CInt"));
        jCheckBox10.setText("Crop Interval Report");
        jCheckBox10.setName("Rep-CInt"); // NOI18N
        jCheckBox10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox11.setSelected(ConfigData.getDefault().getReportVisibility("Rep-STIR"));
        jCheckBox11.setText("STIR Report");
        jCheckBox11.setName("Rep-STIR"); // NOI18N
        jCheckBox11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox12.setSelected(ConfigData.getDefault().getReportVisibility("Rep-Det"));
        jCheckBox12.setText("Detail Report");
        jCheckBox12.setName("Rep-Det"); // NOI18N
        jCheckBox12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jCheckBox13.setSelected(ConfigData.getDefault().getReportVisibility("Rep-Conf"));
        jCheckBox13.setText("Confidence Interval Report");
        jCheckBox13.setName("Rep-Conf"); // NOI18N
        jCheckBox13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_ReportingLayout = new javax.swing.GroupLayout(JP_Reporting);
        JP_Reporting.setLayout(JP_ReportingLayout);
        JP_ReportingLayout.setHorizontalGroup(
            JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ReportingLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_ReportingLayout.createSequentialGroup()
                        .addComponent(JLabel17, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(4, 4, 4)
                        .addComponent(JP_ReportingPeriod, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addContainerGap())
                    .addGroup(JP_ReportingLayout.createSequentialGroup()
                        .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_ReportingLayout.createSequentialGroup()
                                .addGap(15, 15, 15)
                                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JLabel25, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel24, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel23, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel22, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel21, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel26, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(JLabel18, javax.swing.GroupLayout.PREFERRED_SIZE, 148, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JLabel19)
                            .addGroup(JP_ReportingLayout.createSequentialGroup()
                                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JTF_detEro, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_detDec, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_detCrop, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_detMan, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_detSoil, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_detHydro, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 106, Short.MAX_VALUE)
                                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JTF_debugHydro, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_debugSoil, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_debugMan, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_debugCrop, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_debugDec, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JTF_debugEro, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JLabel43))))
                        .addGap(388, 388, 388))
                    .addGroup(JP_ReportingLayout.createSequentialGroup()
                        .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCheckBox5)
                            .addComponent(jCheckBox6))
                        .addGap(0, 0, Short.MAX_VALUE))))
            .addGroup(JP_ReportingLayout.createSequentialGroup()
                .addGap(15, 15, 15)
                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jCheckBox13)
                    .addComponent(jCheckBox12)
                    .addComponent(jCheckBox11)
                    .addComponent(jCheckBox10)
                    .addComponent(jCheckBox1)
                    .addComponent(jCheckBox7)
                    .addComponent(jCheckBox8)
                    .addComponent(jCheckBox9)
                    .addComponent(jLabel7))
                .addGap(0, 0, Short.MAX_VALUE))
        );
        JP_ReportingLayout.setVerticalGroup(
            JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ReportingLayout.createSequentialGroup()
                .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_ReportingLayout.createSequentialGroup()
                        .addGap(6, 6, 6)
                        .addComponent(JLabel17, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(JP_ReportingLayout.createSequentialGroup()
                                    .addGroup(JP_ReportingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(JLabel18, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(JLabel19, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(JLabel43, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel21, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel22, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel23, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel24, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel25, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JLabel26, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(JP_ReportingLayout.createSequentialGroup()
                                    .addGap(20, 20, 20)
                                    .addComponent(JTF_detHydro, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JTF_detSoil, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JTF_detMan, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JTF_detCrop, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JTF_detDec, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(1, 1, 1)
                                    .addComponent(JTF_detEro, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(JP_ReportingLayout.createSequentialGroup()
                                .addComponent(JTF_debugHydro, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(1, 1, 1)
                                .addComponent(JTF_debugSoil, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(1, 1, 1)
                                .addComponent(JTF_debugMan, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(1, 1, 1)
                                .addComponent(JTF_debugCrop, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(1, 1, 1)
                                .addComponent(JTF_debugDec, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(1, 1, 1)
                                .addComponent(JTF_debugEro, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addGap(30, 30, 30)
                        .addComponent(jCheckBox5))
                    .addComponent(JP_ReportingPeriod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox6)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jLabel7)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox7)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox8)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox9)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox10)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox11)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox12)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jCheckBox13)
                .addGap(0, 51, Short.MAX_VALUE))
        );

        JTP_main.addTab("Reporting", JP_Reporting);

        JP_Email.setToolTipText("ConfigPanel:email");

        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Email Settings"));
        jPanel2.setName("CD-SenderEmail;CD-Dest_email;CD-Dest_bug_email"); // NOI18N

        JTF_emailSender.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_emailSender.setToolTipText("ConfigPanel:emailSender");
        JTF_emailSender.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_emailSender.setName("CD-SenderEmail"); // NOI18N
        JTF_emailSender.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_emailSender.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JTF_emailHost.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_emailHost.setToolTipText("ConfigPanel:emailServer");
        JTF_emailHost.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_emailHost.setName("CD-SMTP_host"); // NOI18N
        JTF_emailHost.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_emailHost.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        g_serverNameLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        g_serverNameLabel.setText("Server Name:");
        g_serverNameLabel.setToolTipText("ConfigPanel:emailServer");
        g_serverNameLabel.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
        g_serverNameLabel.setName("CD-SMTP_host"); // NOI18N

        g_emailType.add(g_emailUseSmtpRadioButton);
        g_emailUseSmtpRadioButton.setSelected(true);
        g_emailUseSmtpRadioButton.setText("Use SMTP server (obsolete option)");
        g_emailUseSmtpRadioButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        g_emailUseSmtpRadioButton.setName("CD-use default mail client:0"); // NOI18N
        g_emailUseSmtpRadioButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        g_emailType.add(g_emailUseSystemRadioButton);
        g_emailUseSystemRadioButton.setText("Use default mail client");
        g_emailUseSystemRadioButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        g_emailUseSystemRadioButton.setName("CD-use default mail client:1"); // NOI18N
        g_emailUseSystemRadioButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JTF_emailWeps.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_emailWeps.setText("weps@ars.usda.gov");
        JTF_emailWeps.setToolTipText("ConfigPanel:emailComments");
        JTF_emailWeps.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_emailWeps.setName("CD-Dest_email"); // NOI18N
        JTF_emailWeps.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_emailWeps.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JTF_emailBugs.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_emailBugs.setText("weps@ars.usda.gov");
        JTF_emailBugs.setToolTipText("ConfigPanel:emailBugs");
        JTF_emailBugs.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_emailBugs.setName("CD-Dest_bug_email"); // NOI18N
        JTF_emailBugs.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_emailBugs.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JLabel13.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel13.setText("Send From:");
        JLabel13.setToolTipText("ConfigPanel:emailSender");
        JLabel13.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
        JLabel13.setName("CD-SenderEmail"); // NOI18N

        JLabel15.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel15.setText("Send Comments To:");
        JLabel15.setToolTipText("ConfigPanel:emailComments");
        JLabel15.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
        JLabel15.setName("CD-Dest_bug_email"); // NOI18N

        JLabel16.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel16.setText("Send Bug Reports To:");
        JLabel16.setToolTipText("ConfigPanel:emailBugs");
        JLabel16.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
        JLabel16.setName("CD-Dest_email"); // NOI18N

        JCB_outlookClient.setText("Use Outlook client");
        JCB_outlookClient.setName("CD-Outlook Flg"); // NOI18N
        JCB_outlookClient.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel2Layout.createSequentialGroup()
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(g_serverNameLabel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JLabel15, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JLabel13, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JLabel16, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE))
                        .addGap(10, 10, 10)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JTF_emailBugs)
                            .addComponent(JTF_emailWeps)
                            .addComponent(JTF_emailSender, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(JTF_emailHost)))
                    .addGroup(jPanel2Layout.createSequentialGroup()
                        .addComponent(g_emailUseSmtpRadioButton)
                        .addGap(102, 102, 102)
                        .addComponent(g_emailUseSystemRadioButton)
                        .addGap(29, 29, 29)
                        .addComponent(JCB_outlookClient)
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(g_emailUseSmtpRadioButton)
                    .addComponent(g_emailUseSystemRadioButton)
                    .addComponent(JCB_outlookClient))
                .addGap(4, 4, 4)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(g_serverNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_emailHost, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JTF_emailSender, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JLabel13, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JTF_emailWeps, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JLabel15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addGap(3, 3, 3)
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE, false)
                    .addComponent(JLabel16, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_emailBugs, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(54, 54, 54))
        );

        jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("User Name"));
        jPanel3.setName("CD-UserName");

        JTF_mantisEmail.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mantisEmail.setToolTipText("ConfigPanel:mantisSender");
        JTF_mantisEmail.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mantisEmail.setName("CD-user.fullname");
        JTF_mantisEmail.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_mantisEmail.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JLabel14.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel14.setText("User Name");
        JLabel14.setToolTipText("ConfigPanel:username");
        JLabel14.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
        JLabel14.setName("CD-user.fullname");

        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
        jPanel3.setLayout(jPanel3Layout);
        jPanel3Layout.setHorizontalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 84, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(10, 10, 10)
                .addComponent(JTF_mantisEmail)
                .addContainerGap())
        );
        jPanel3Layout.setVerticalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisEmail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Mantis Settings"));
        jPanel4.setName("CD-SenderEmail;CD-Dest_email;CD-Dest_bug_email"); // NOI18N

        JTF_mantisEmail1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mantisEmail1.setToolTipText("ConfigPanel:mantisSender");
        JTF_mantisEmail1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mantisEmail1.setName("CD-MantisEmail"); // NOI18N
        JTF_mantisEmail1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                JTF_mantisEmail1globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                JTF_mantisEmail1globalFocusLost(evt);
            }
        });
        JTF_mantisEmail1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JTF_mantisEmail1globalActionPerformed(evt);
            }
        });

        JTF_mantisURL1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mantisURL1.setText("https://infosys.ars.usda.gov/issues/api/soap/mantisconnect.php");
        JTF_mantisURL1.setToolTipText("ConfigPanel:mantisUrl");
        JTF_mantisURL1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mantisURL1.setName("CD-Mantis URL"); // NOI18N
        JTF_mantisURL1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                JTF_mantisURL1globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                JTF_mantisURL1globalFocusLost(evt);
            }
        });
        JTF_mantisURL1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JTF_mantisURL1globalActionPerformed(evt);
            }
        });

        JTF_mantisUserID1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mantisUserID1.setText("test");
        JTF_mantisUserID1.setToolTipText("ConfigPanel:mantisUser");
        JTF_mantisUserID1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mantisUserID1.setName("CD-Mantis user"); // NOI18N
        JTF_mantisUserID1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                JTF_mantisUserID1globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                JTF_mantisUserID1globalFocusLost(evt);
            }
        });
        JTF_mantisUserID1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JTF_mantisUserID1globalActionPerformed(evt);
            }
        });

        JLabel29.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel29.setText("Your email:");
        JLabel29.setToolTipText("ConfigPanel:mantisSender");
        JLabel29.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
        JLabel29.setName("CD-MantisEmail"); // NOI18N

        JLabel49.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel49.setText("Mantis user id:");
        JLabel49.setToolTipText("ConfigPanel:mantisUser");
        JLabel49.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
        JLabel49.setName("CD-Mantis user"); // NOI18N

        JLabel50.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel50.setText("Mantis password:");
        JLabel50.setToolTipText("ConfigPanel:mantisPassword");
        JLabel50.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
        JLabel50.setName("CD-Mantis password"); // NOI18N

        jLabel14.setText("Mantis URL:");
        jLabel14.setToolTipText("ConfigPanel:mantisUrl");
        jLabel14.setName("CD-Mantis URL"); // NOI18N

        JLabel51.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JLabel51.setText("Mantis project:");
        JLabel51.setToolTipText("ConfigPanel:mantisProject");
        JLabel51.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
        JLabel51.setName("CD-Mantis project"); // NOI18N

        JTF_mantisProject1.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_mantisProject1.setText("triage");
        JTF_mantisProject1.setToolTipText("ConfigPanel:mantisProject");
        JTF_mantisProject1.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_mantisProject1.setName("CD-Mantis project"); // NOI18N
        JTF_mantisProject1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                JTF_mantisProject1globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                JTF_mantisProject1globalFocusLost(evt);
            }
        });
        JTF_mantisProject1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JTF_mantisProject1globalActionPerformed(evt);
            }
        });

        JTF_mantisPassword1.setToolTipText("ConfigPanel:mantisPassword");
        JTF_mantisPassword1.setName("CD-Mantis password"); // NOI18N
        JTF_mantisPassword1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                JTF_mantisPassword1globalFocusLost(evt);
            }
        });
        JTF_mantisPassword1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JTF_mantisPassword1globalActionPerformed(evt);
            }
        });
        JTF_mantisPassword1.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
        jPanel4.setLayout(jPanel4Layout);
        jPanel4Layout.setHorizontalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(JLabel49, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(JLabel50, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(JLabel51, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(JLabel29, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jLabel14, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(10, 10, 10)
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(JTF_mantisProject1)
                    .addComponent(JTF_mantisUserID1, javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JTF_mantisURL1, javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JTF_mantisPassword1)
                    .addComponent(JTF_mantisEmail1))
                .addContainerGap())
        );
        jPanel4Layout.setVerticalGroup(
            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup()
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel29, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisEmail1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisURL1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel49, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisUserID1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel50, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisPassword1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(7, 7, 7)
                .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel51, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_mantisProject1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        javax.swing.GroupLayout JP_EmailLayout = new javax.swing.GroupLayout(JP_Email);
        JP_Email.setLayout(JP_EmailLayout);
        JP_EmailLayout.setHorizontalGroup(
            JP_EmailLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_EmailLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_EmailLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jPanel2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jPanel4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap())
        );
        JP_EmailLayout.setVerticalGroup(
            JP_EmailLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_EmailLayout.createSequentialGroup()
                .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(84, Short.MAX_VALUE))
        );

        jPanel3.getAccessibleContext().setAccessibleName("");

        JTP_main.addTab("Email", JP_Email);

        JP_Run.setToolTipText("ConfigPanel:run");

        JLabel30.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel30.setText("Default Run Mode :");
        JLabel30.setToolTipText("ConfigPanel:runLength");
        JLabel30.setName("CD-defaultrunmode"); // NOI18N

        JBGP_runType.add(JRB_NRCS);
        JRB_NRCS.setSelected(true);
        JRB_NRCS.setText("NRCS");
        JRB_NRCS.setToolTipText("ConfigPanel:runLenNRCS");
        JRB_NRCS.setActionCommand("E");
        JRB_NRCS.setName("CD-defaultrunmode:NRCS"); // NOI18N
        JRB_NRCS.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_runType.add(JRB_cycle);
        JRB_cycle.setText("Cycle");
        JRB_cycle.setToolTipText("ConfigPanel:runLenCycle");
        JRB_cycle.setActionCommand("S");
        JRB_cycle.setName("CD-defaultrunmode:cycle"); // NOI18N
        JRB_cycle.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_runType.add(JRB_dates);
        JRB_dates.setText("Dates");
        JRB_dates.setToolTipText("ConfigPanel:runLenDates");
        JRB_dates.setActionCommand("N");
        JRB_dates.setName("CD-defaultrunmode:dates"); // NOI18N
        JRB_dates.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_runLength.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JL_runLength.setText("NRCS Run Length :");
        JL_runLength.setToolTipText("ConfigPanel:runType");
        JL_runLength.setName("CD-nrcsrunlength"); // NOI18N

        JTF_runLength.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_runLength.setToolTipText("ConfigPanel:runType");
        JTF_runLength.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_runLength.setEnabled(false);
        JTF_runLength.setName("CD-nrcsrunlength"); // NOI18N
        JTF_runLength.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_runLength.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JCB_purgeRunFiles.setText("Delete files after run.");
        JCB_purgeRunFiles.setName("CD-purge.flag"); // NOI18N
        JCB_purgeRunFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JCB_purgeRunFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JCB_allowBatchCreation.setText("Display batch script creation option.");
        JCB_allowBatchCreation.setName("CD-script.allow"); // NOI18N
        JCB_allowBatchCreation.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel13.setText("File Filter:");
        jLabel13.setName("CD-purge.filefilter"); // NOI18N

        jTextField2.setName("CD-purge.filefilter"); // NOI18N
        jTextField2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        jTextField2.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        jLabel6.setText("Submodel Outputs:");

        JBGP_SubmodelOutput.add(JRB_SOReadWrite);
        JRB_SOReadWrite.setText("Read Write");
        JRB_SOReadWrite.setName("CD-Submodel outputs:readWrite"); // NOI18N
        JRB_SOReadWrite.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_SubmodelOutput.add(JRB_SOReadOnly);
        JRB_SOReadOnly.setText("Read Only");
        JRB_SOReadOnly.setName("CD-Submodel outputs:readOnly"); // NOI18N
        JRB_SOReadOnly.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_SubmodelOutput.add(JRB_SONotVisible);
        JRB_SONotVisible.setText("Not Visible");
        JRB_SONotVisible.setName("CD-Submodel outputs:notVisible"); // NOI18N
        JRB_SONotVisible.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_RunLayout = new javax.swing.GroupLayout(JP_Run);
        JP_Run.setLayout(JP_RunLayout);
        JP_RunLayout.setHorizontalGroup(
            JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_RunLayout.createSequentialGroup()
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_RunLayout.createSequentialGroup()
                        .addGap(5, 5, 5)
                        .addComponent(JLabel30, javax.swing.GroupLayout.PREFERRED_SIZE, 145, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_RunLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JL_runLength, javax.swing.GroupLayout.DEFAULT_SIZE, 251, Short.MAX_VALUE)))
                .addGap(10, 10, 10)
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JTF_runLength, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_RunLayout.createSequentialGroup()
                        .addComponent(JRB_NRCS)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JRB_dates)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(JRB_cycle)))
                .addContainerGap(271, Short.MAX_VALUE))
            .addGroup(JP_RunLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_RunLayout.createSequentialGroup()
                        .addComponent(jLabel13)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 630, Short.MAX_VALUE))
                    .addGroup(JP_RunLayout.createSequentialGroup()
                        .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JCB_allowBatchCreation, javax.swing.GroupLayout.PREFERRED_SIZE, 310, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JCB_purgeRunFiles)
                            .addGroup(JP_RunLayout.createSequentialGroup()
                                .addComponent(jLabel6)
                                .addGap(42, 42, 42)
                                .addComponent(JRB_SOReadWrite)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JRB_SOReadOnly)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JRB_SONotVisible)))
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        JP_RunLayout.setVerticalGroup(
            JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_RunLayout.createSequentialGroup()
                .addGap(10, 10, 10)
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JLabel30, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JRB_NRCS)
                    .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(JRB_dates)
                        .addComponent(JRB_cycle)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JTF_runLength, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_runLength))
                .addGap(7, 7, 7)
                .addComponent(JCB_purgeRunFiles)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel13)
                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(81, 81, 81)
                .addComponent(JCB_allowBatchCreation)
                .addGap(18, 18, 18)
                .addGroup(JP_RunLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JRB_SOReadWrite)
                    .addComponent(JRB_SOReadOnly)
                    .addComponent(JRB_SONotVisible)
                    .addComponent(jLabel6))
                .addContainerGap(263, Short.MAX_VALUE))
        );

        JTP_main.addTab("Run", null, JP_Run, "ConfigPanel:run");

        fuelLabel.setText("Fuels:");
        fuelLabel.setName("CD-fuel.database"); // NOI18N

        fuelFile.setName("CD-fuel.database"); // NOI18N
        fuelFile.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        fuelFile.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        fuelFileButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/usda/weru/resources/folder.gif"))); // NOI18N
        fuelFileButton.setToolTipText("ConfigPanel:cliGenExeButton");
        fuelFileButton.setName("CD-fuel.database"); // NOI18N
        fuelFileButton.setPreferredSize(new java.awt.Dimension(35, 19));
        fuelFileButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                fileButtonActionPerformed(evt);
            }
        });

        fuelTable.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {

            }
        ));
        jScrollPane1.setViewportView(fuelTable);

        userFuelFileLabel.setFont(userFuelFileLabel.getFont().deriveFont(userFuelFileLabel.getFont().getStyle() & ~java.awt.Font.BOLD));
        userFuelFileLabel.setText("Changes saved to:");

        userFuelFile.setFont(userFuelFile.getFont().deriveFont(userFuelFile.getFont().getStyle() & ~java.awt.Font.BOLD));
        userFuelFile.setText("path to user file");

        jLabel5.setText("Default:");
        jLabel5.setName("CD-fuel.default"); // NOI18N

        fuelDefaultChooser.setBackground(javax.swing.UIManager.getDefaults().getColor("white"));
        fuelDefaultChooser.setName("CD-fuel.default"); // NOI18N
        fuelDefaultChooser.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_FuelsLayout = new javax.swing.GroupLayout(JP_Fuels);
        JP_Fuels.setLayout(JP_FuelsLayout);
        JP_FuelsLayout.setHorizontalGroup(
            JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_FuelsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 693, Short.MAX_VALUE)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_FuelsLayout.createSequentialGroup()
                        .addComponent(userFuelFileLabel)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(userFuelFile, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, JP_FuelsLayout.createSequentialGroup()
                        .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(fuelLabel)
                            .addComponent(jLabel5))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_FuelsLayout.createSequentialGroup()
                                .addComponent(fuelFile, javax.swing.GroupLayout.DEFAULT_SIZE, 601, Short.MAX_VALUE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(fuelFileButton, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(fuelDefaultChooser, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addContainerGap())
        );
        JP_FuelsLayout.setVerticalGroup(
            JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_FuelsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                    .addComponent(fuelFileButton, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(fuelFile, javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(fuelLabel))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                    .addComponent(fuelDefaultChooser, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 411, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_FuelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(userFuelFileLabel)
                    .addComponent(userFuelFile))
                .addContainerGap())
        );

        JP_FuelsLayout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {fuelFile, fuelFileButton});

        JTP_main.addTab("Fuels", JP_Fuels);

        JP_NRMV.setToolTipText("");

        JBGP_NRMV.add(JRB_NRMVSummaries);
        JRB_NRMVSummaries.setText("NRMV On with Summaries");
        JRB_NRMVSummaries.setName("CD-NRMV mode:summaries"); // NOI18N
        JRB_NRMVSummaries.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_NRMV.add(JRB_NRMVOn);
        JRB_NRMVOn.setText("NRMV On");
        JRB_NRMVOn.setName("CD-NRMV mode:on"); // NOI18N
        JRB_NRMVOn.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_NRMV.add(JRB_NRMVOff);
        JRB_NRMVOff.setSelected(true);
        JRB_NRMVOff.setText("NRMV Off");
        JRB_NRMVOff.setName("CD-NRMV mode:off"); // NOI18N
        JRB_NRMVOff.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_decomp.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_decomp.setName("CD-visibility decomp"); // NOI18N
        JCB_decomp.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel17.setText("dbelow");

        JCB_plot.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_plot.setName("CD-visibility plot"); // NOI18N
        JCB_plot.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel23.setText("shoot");

        JCB_season.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_season.setName("CD-visibility season"); // NOI18N
        JCB_season.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_crop.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_crop.setName("CD-visibility crop"); // NOI18N
        JCB_crop.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel16.setText("dabove");

        JCB_dabove.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_dabove.setName("CD-visibility dabove"); // NOI18N
        JCB_dabove.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel22.setText("season");

        JCB_shoot.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_shoot.setName("CD-visibility shoot"); // NOI18N
        JCB_shoot.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_hydro.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_hydro.setName("CD-visibility hydro"); // NOI18N
        JCB_hydro.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_dbelow.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_dbelow.setName("CD-visibility dbelow"); // NOI18N
        JCB_dbelow.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_hlayers.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_hlayers.setName("CD-visibility hlayers"); // NOI18N
        JCB_hlayers.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel19.setText("hlayers");

        jLabel18.setText("decomp");

        jLabel21.setText("plot");

        JCB_soillay.setModel(new DefaultComboBoxModel<String>(visibilityOptions));
        JCB_soillay.setName("CD-visibility soillay"); // NOI18N
        JCB_soillay.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel15.setText("crop");

        jLabel24.setText("soillay");

        jLabel20.setText("hydro");

        javax.swing.GroupLayout JP_NRMVLayout = new javax.swing.GroupLayout(JP_NRMV);
        JP_NRMV.setLayout(JP_NRMVLayout);
        JP_NRMVLayout.setHorizontalGroup(
            JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_NRMVLayout.createSequentialGroup()
                .addGap(46, 46, 46)
                .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JRB_NRMVOff)
                    .addComponent(JRB_NRMVOn)
                    .addComponent(JRB_NRMVSummaries))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 301, Short.MAX_VALUE)
                .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel16)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_dabove, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel17)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_dbelow, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel18)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_decomp, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel19)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_hlayers, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel20)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_hydro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel21)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_plot, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel22)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_season, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel23)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_shoot, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel24)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_soillay, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(jLabel15)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JCB_crop, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGap(111, 111, 111))
        );
        JP_NRMVLayout.setVerticalGroup(
            JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_NRMVLayout.createSequentialGroup()
                .addGap(47, 47, 47)
                .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_crop, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel15))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_dabove, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel16))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_dbelow, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel17))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_decomp, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel18))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_hlayers, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel19))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_hydro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel20))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_plot, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel21))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_season, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel22))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_shoot, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel23))
                        .addGap(1, 1, 1)
                        .addGroup(JP_NRMVLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JCB_soillay, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel24)))
                    .addGroup(JP_NRMVLayout.createSequentialGroup()
                        .addComponent(JRB_NRMVSummaries)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(JRB_NRMVOn)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(JRB_NRMVOff)))
                .addContainerGap(230, Short.MAX_VALUE))
        );

        if(ConfigData.isNRMVVis())
        {
            JTP_main.addTab("NRMV", JP_NRMV);
        }

        JP_Display.setToolTipText("ConfigPanel:misc");

        JLabel27.setText("Measurement Units");
        JLabel27.setToolTipText("ConfigPanel:measurementUnits");
        JLabel27.setName("CD-measurement"); // NOI18N

        JBGP_units.add(JRB_english);
        JRB_english.setSelected(true);
        JRB_english.setText("English");
        JRB_english.setToolTipText("ConfigPanel:measurementUnits");
        JRB_english.setActionCommand("E");
        JRB_english.setName("CD-measurement:US"); // NOI18N
        JRB_english.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JBGP_units.add(JRB_metric);
        JRB_metric.setText("Metric");
        JRB_metric.setToolTipText("ConfigPanel:measurementUnits");
        JRB_metric.setActionCommand("N");
        JRB_metric.setName("CD-measurement:SI"); // NOI18N
        JRB_metric.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JLabel31.setText("Time steps per day for wind speed distribution:");
        JLabel31.setToolTipText("ConfigPanel:timeStepsWind");
        JLabel31.setName("CD-time steps"); // NOI18N

        JTF_timeSteps.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_timeSteps.setToolTipText("ConfigPanel:windSpeed");
        JTF_timeSteps.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_timeSteps.setName("CD-time steps"); // NOI18N
        JTF_timeSteps.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JTF_timeSteps.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        JXB_latLon.setSelected(true);
        JXB_latLon.setText("Display latitude and longitude fields");
        JXB_latLon.setToolTipText("ConfigPanel:displaylatLon");
        JXB_latLon.setName("CD-display latitude longitude"); // NOI18N
        JXB_latLon.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_stateCounty.setSelected(true);
        JXB_stateCounty.setText("Display state and county fields");
        JXB_stateCounty.setToolTipText("ConfigPanel:displayStCty");
        JXB_stateCounty.setName("CD-display state county"); // NOI18N
        JXB_stateCounty.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_map.setSelected(true);
        JXB_map.setText("Display use map button");
        JXB_map.setToolTipText("ConfigPanel:displayMap");
        JXB_map.setName("CD-use map"); // NOI18N
        JXB_map.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JLabel35.setText("Tooltip Delay (ms):");
        JLabel35.setToolTipText("ConfigPanel:tooltips");
        JLabel35.setName("CD-ToolTipInit;CD-ToolTipDismiss"); // NOI18N

        JLabel36.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel36.setText("Initial");
        JLabel36.setToolTipText("ConfigPanel:ttInit");
        JLabel36.setName("CD-ToolTipInit"); // NOI18N

        JTF_ttInit.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_ttInit.setToolTipText("ConfigPanel:ttInit");
        JTF_ttInit.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_ttInit.setName("CD-ToolTipInit"); // NOI18N
        JTF_ttInit.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_ttInit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JLabel37.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        JLabel37.setText("Dismiss");
        JLabel37.setToolTipText("ConfigPanel:ttDismiss");
        JLabel37.setName("CD-ToolTipDismiss"); // NOI18N

        JTF_ttDismiss.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JTF_ttDismiss.setToolTipText("ConfigPanel:ttDismiss");
        JTF_ttDismiss.setDisabledTextColor(java.awt.SystemColor.controlText);
        JTF_ttDismiss.setName("CD-ToolTipDismiss"); // NOI18N
        JTF_ttDismiss.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_ttDismiss.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_elevation.setSelected(true);
        JXB_elevation.setText("Display elevation");
        JXB_elevation.setToolTipText("ConfigPanel:displayElelvation\n");
        JXB_elevation.setName("CD-display elevation"); // NOI18N
        JXB_elevation.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_McrewEdit.setText("Enable full MCREW editing functionality in WEPS");
        JXB_McrewEdit.setToolTipText("ConfigPanel:enableMcrewEdit");
        JXB_McrewEdit.setName("CD-mcrew edit"); // NOI18N
        JXB_McrewEdit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_slope.setText("Region slope is readonly");
        JXB_slope.setToolTipText("ConfigPanel:displayElelvation\n");
        JXB_slope.setName("CD-readonly region slope"); // NOI18N
        JXB_slope.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_SystemLocale.setText("Do not display system locale warning at startup");
        JXB_SystemLocale.setToolTipText("ConfigPanel:enableMcrewEdit");
        JXB_SystemLocale.setName("CD-don't warn about system locale"); // NOI18N
        JXB_SystemLocale.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_doNotReview.setText("Do not prompt to review warnings when restoring a run.");
        JXB_doNotReview.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
        JXB_doNotReview.setName("CD-do not review warnings when restoring run"); // NOI18N
        JXB_doNotReview.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_hidePButtons.setText("Hide project file buttons");
        JXB_hidePButtons.setName("CD-hide project file buttons"); // NOI18N
        JXB_hidePButtons.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_hideTButtons.setText("Hide template file buttons");
        JXB_hideTButtons.setName("CD-hide template file buttons"); // NOI18N
        JXB_hideTButtons.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        jLabel3.setText("Days to keep logs:");
        jLabel3.setName("CD-logs.daystokeep"); // NOI18N

        JTF_daysKeepLog.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        JTF_daysKeepLog.setText("2");
        JTF_daysKeepLog.setName("CD-logs.daystokeep"); // NOI18N
        JTF_daysKeepLog.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_daysKeepLog.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_barriersReadonly.setText("Barriers are readonly");
        JXB_barriersReadonly.setToolTipText("ConfigPanel:displayElelvation\n");
        JXB_barriersReadonly.setName("CD-barriers.readonly"); // NOI18N
        JXB_barriersReadonly.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_slope1.setText("Rock fragments is readonly");
        JXB_slope1.setToolTipText("ConfigPanel:displayElelvation\n");
        JXB_slope1.setName("CD-readonly rock fragments"); // NOI18N
        JXB_slope1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JCB_showCountries.setText("Show Countries in Site Chooser");
        JCB_showCountries.setName("CD-sitechooser.showcountry"); // NOI18N
        JCB_showCountries.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JCB_showCountries.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_xmlFormats.setText("Enable experimental XML formats");
        JXB_xmlFormats.setToolTipText("ConfigPanel:enableMcrewEdit");
        JXB_xmlFormats.setName("CD-formats.xml"); // NOI18N
        JXB_xmlFormats.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });
        JXB_xmlFormats.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });

        windgenPrecision.setText("Decimal Precision Passed to Windgen:");
        windgenPrecision.setName("CD-Windgen Decimal Precision"); // NOI18N

        JTF_windgenPrecision.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        JTF_windgenPrecision.setText("5");
        JTF_windgenPrecision.setName("CD-Windgen Decimal Precision"); // NOI18N
        JTF_windgenPrecision.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JTF_windgenPrecision.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        lbl_formatOperationDate.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
        lbl_formatOperationDate.setText("Operation Date");
        lbl_formatOperationDate.setToolTipText("ConfigPanel:windExe");
        lbl_formatOperationDate.setName("CD-operation date format"); // NOI18N

        JCB_formatOperationDate.setToolTipText("ConfigPanel:formatOperationDate");
        JCB_formatOperationDate.setName("CD-operation date format"); // NOI18N
        JCB_formatOperationDate.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        collapse.setText("Collapse all Non-XML folders in MCREW File Chooser");
        collapse.setName("CD-collapse non zip"); // NOI18N
        collapse.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        collapse.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_DisplayLayout = new javax.swing.GroupLayout(JP_Display);
        JP_Display.setLayout(JP_DisplayLayout);
        JP_DisplayLayout.setHorizontalGroup(
            JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_DisplayLayout.createSequentialGroup()
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addGap(10, 10, 10)
                        .addComponent(JLabel27, javax.swing.GroupLayout.PREFERRED_SIZE, 139, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JRB_english, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, 0)
                        .addComponent(JRB_metric, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JXB_stateCounty, javax.swing.GroupLayout.PREFERRED_SIZE, 230, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(JXB_barriersReadonly, javax.swing.GroupLayout.PREFERRED_SIZE, 186, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JXB_McrewEdit, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JXB_hideTButtons)
                            .addComponent(JXB_hidePButtons)
                            .addComponent(JXB_SystemLocale, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JXB_elevation))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JLabel31, javax.swing.GroupLayout.PREFERRED_SIZE, 322, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JTF_timeSteps, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JXB_slope))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JXB_doNotReview))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JCB_showCountries))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JXB_slope1)
                            .addComponent(JXB_map, javax.swing.GroupLayout.PREFERRED_SIZE, 230, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(JXB_xmlFormats, javax.swing.GroupLayout.PREFERRED_SIZE, 378, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(JP_DisplayLayout.createSequentialGroup()
                                .addGap(150, 150, 150)
                                .addComponent(JLabel36, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JTF_ttInit, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(18, 18, 18)
                                .addComponent(JLabel37, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JTF_ttDismiss, javax.swing.GroupLayout.PREFERRED_SIZE, 40, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(JP_DisplayLayout.createSequentialGroup()
                                .addComponent(lbl_formatOperationDate, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JCB_formatOperationDate, javax.swing.GroupLayout.PREFERRED_SIZE, 260, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(JLabel35, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(JP_DisplayLayout.createSequentialGroup()
                                .addComponent(jLabel3)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(JTF_daysKeepLog, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(JP_DisplayLayout.createSequentialGroup()
                                .addComponent(windgenPrecision)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(JTF_windgenPrecision, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                .addGap(215, 215, 215))
            .addGroup(JP_DisplayLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(collapse, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(JP_DisplayLayout.createSequentialGroup()
                        .addComponent(JXB_latLon)
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        JP_DisplayLayout.setVerticalGroup(
            JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_DisplayLayout.createSequentialGroup()
                .addGap(5, 5, 5)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JRB_english, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JRB_metric, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JLabel27, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel31, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_timeSteps, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(JXB_latLon, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_stateCounty, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_elevation, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(1, 1, 1)
                .addComponent(JXB_map, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_slope, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(3, 3, 3)
                .addComponent(JXB_slope1, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_barriersReadonly, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_McrewEdit, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(1, 1, 1)
                .addComponent(JXB_SystemLocale, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_doNotReview, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(3, 3, 3)
                .addComponent(JXB_hidePButtons, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_hideTButtons, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(3, 3, 3)
                .addComponent(JCB_showCountries, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(2, 2, 2)
                .addComponent(JXB_xmlFormats, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(3, 3, 3)
                .addComponent(collapse)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(JTF_daysKeepLog, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JLabel35, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JLabel36, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_ttInit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JLabel37, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JTF_ttDismiss, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(windgenPrecision)
                    .addComponent(JTF_windgenPrecision, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(18, 18, 18)
                .addGroup(JP_DisplayLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(lbl_formatOperationDate, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JCB_formatOperationDate, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        JTP_main.addTab("Display", JP_Display);

        JP_Server_executables.setBorder(javax.swing.BorderFactory.createTitledBorder("Run location - internal executables"));

        JXB_RunInterpOnServer.setText("Run interpolate on server");
        JXB_RunInterpOnServer.setFocusPainted(false);
        JXB_RunInterpOnServer.setName("CD-SC-windgen-interpolate-execOnServer"); // NOI18N
        JXB_RunInterpOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_RunInterpPrepareOnServer.setText("Run interpolate prepare data on server");
        JXB_RunInterpPrepareOnServer.setEnabled(false);
        JXB_RunInterpPrepareOnServer.setFocusPainted(false);
        JXB_RunInterpPrepareOnServer.setFocusable(false);
        JXB_RunInterpPrepareOnServer.setName("CD-SC-windgen-interpolate-prepareData-execOnServer"); // NOI18N
        JXB_RunInterpPrepareOnServer.setRequestFocusEnabled(false);
        JXB_RunInterpPrepareOnServer.setVerifyInputWhenFocusTarget(false);
        JXB_RunInterpPrepareOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_RunInterpGenDataOnServer.setText("Run interpolate gen data on server");
        JXB_RunInterpGenDataOnServer.setFocusPainted(false);
        JXB_RunInterpGenDataOnServer.setName("CD-SC-windgen-interpolate-genData-execOnServer"); // NOI18N
        JXB_RunInterpGenDataOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_RunWindGenOnServer.setText("Run windgen on server");
        JXB_RunWindGenOnServer.setFocusPainted(false);
        JXB_RunWindGenOnServer.setName("CD-SC-windgen-execOnServer"); // NOI18N
        JXB_RunWindGenOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_RunCligenOnServer.setText("Run cligen on server");
        JXB_RunCligenOnServer.setFocusPainted(false);
        JXB_RunCligenOnServer.setName("CD-SC-cligen-execOnServer"); // NOI18N
        JXB_RunCligenOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JXB_RunWepsOnServer.setText("Run weps on server");
        JXB_RunWepsOnServer.setToolTipText("");
        JXB_RunWepsOnServer.setFocusPainted(false);
        JXB_RunWepsOnServer.setName("CD-SC-weps-execOnServer"); // NOI18N
        JXB_RunWepsOnServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_InterpolateExeName.setName("CD-SC-windgen-interpolate-endpoint"); // NOI18N
        JT_InterpolateExeName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_InterpolateExeName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        JT_InterpolatePrepareName.setEditable(false);
        JT_InterpolatePrepareName.setEnabled(false);
        JT_InterpolatePrepareName.setName(""); // NOI18N
        JT_InterpolatePrepareName.setOpaque(false);
        JT_InterpolatePrepareName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_InterpolatePrepareName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        JT_InterpolateGenDataName.setName("CD-SC-windgen-interpolate-genData-endpoint"); // NOI18N
        JT_InterpolateGenDataName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_InterpolateGenDataName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        JT_WindgenExeName.setName("CD-SC-windgen-endpoint"); // NOI18N
        JT_WindgenExeName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_WindgenExeName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        JT_CligenExeName.setName("CD-SC-cligen-endpoint"); // NOI18N
        JT_CligenExeName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_CligenExeName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        JT_WepsExeName.setName("CD-SC-weps-endpoint"); // NOI18N
        JT_WepsExeName.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_WepsExeName.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_Server_executablesLayout = new javax.swing.GroupLayout(JP_Server_executables);
        JP_Server_executables.setLayout(JP_Server_executablesLayout);
        JP_Server_executablesLayout.setHorizontalGroup(
            JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunInterpOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JT_InterpolateExeName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunInterpPrepareOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 56, Short.MAX_VALUE)
                        .addComponent(JT_InterpolatePrepareName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunWepsOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JT_WepsExeName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunInterpGenDataOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JT_InterpolateGenDataName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunWindGenOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JT_WindgenExeName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                        .addComponent(JXB_RunCligenOnServer)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(JT_CligenExeName, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGap(4, 4, 4))
        );
        JP_Server_executablesLayout.setVerticalGroup(
            JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_Server_executablesLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunInterpOnServer)
                    .addComponent(JT_InterpolateExeName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunInterpPrepareOnServer)
                    .addComponent(JT_InterpolatePrepareName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunInterpGenDataOnServer)
                    .addComponent(JT_InterpolateGenDataName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunWindGenOnServer, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JT_WindgenExeName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunCligenOnServer)
                    .addComponent(JT_CligenExeName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_Server_executablesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JXB_RunWepsOnServer)
                    .addComponent(JT_WepsExeName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(63, Short.MAX_VALUE))
        );

        jTabbedPane1.addTab("Run locations", JP_Server_executables);

        JP_Servers.setBorder(javax.swing.BorderFactory.createTitledBorder("Servers"));

        JT_DataHandlerEndpointAddress.setEditable(false);
        JT_DataHandlerEndpointAddress.setName("CD-SC-dataHandler-endpoint"); // NOI18N
        JT_DataHandlerEndpointAddress.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_DataHandlerEndpointAddress.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        jLabel25.setText("Data Handler Endpoint Address");

        JXB_UseScienceCodeServer.setText("Run a local Science Code Server");
        JXB_UseScienceCodeServer.setToolTipText("");
        JXB_UseScienceCodeServer.setFocusPainted(false);
        JXB_UseScienceCodeServer.setName("CD-SC-csipCombined-runLocalJetty"); // NOI18N
        JXB_UseScienceCodeServer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_ScienceCodeJnlpUrl.setName("CD-SC-csipCombined-jnlpUrlRef"); // NOI18N

        org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, JXB_UseScienceCodeServer, org.jdesktop.beansbinding.ELProperty.create("${selected}"), JT_ScienceCodeJnlpUrl, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        JT_ScienceCodeJnlpUrl.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_ScienceCodeJnlpUrl.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        jLabel26.setText("Science Code Endpoint Address");

        JT_ScienceCodeEndpointAddress.setEditable(false);
        JT_ScienceCodeEndpointAddress.setName("CD-SC-csipCombined-endpoint"); // NOI18N
        JT_ScienceCodeEndpointAddress.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                serverControlFocusLost(evt);
            }
        });
        JT_ScienceCodeEndpointAddress.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                serverControlActionPerformed(evt);
            }
        });

        jLabel28.setText("Science code Server JNLP URL");

        JXB_AutoPopulateServers.setText("Auto-populate new Run Locations (above)");
        JXB_AutoPopulateServers.setToolTipText("");
        JXB_AutoPopulateServers.setEnabled(false);
        JXB_AutoPopulateServers.setFocusPainted(false);
        JXB_AutoPopulateServers.setFocusable(false);
        JXB_AutoPopulateServers.setName("CD-SC-csipCombined-runLocalJetty"); // NOI18N
        JXB_AutoPopulateServers.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JXB_AutoPopulateServersglobalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_ServersLayout = new javax.swing.GroupLayout(JP_Servers);
        JP_Servers.setLayout(JP_ServersLayout);
        JP_ServersLayout.setHorizontalGroup(
            JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ServersLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, JP_ServersLayout.createSequentialGroup()
                        .addGap(21, 21, 21)
                        .addComponent(jLabel28, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(415, 415, 415))
                    .addGroup(JP_ServersLayout.createSequentialGroup()
                        .addComponent(JXB_AutoPopulateServers, javax.swing.GroupLayout.PREFERRED_SIZE, 335, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(JP_ServersLayout.createSequentialGroup()
                        .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(JP_ServersLayout.createSequentialGroup()
                                .addComponent(jLabel25)
                                .addGap(30, 30, 30)
                                .addComponent(JT_DataHandlerEndpointAddress, javax.swing.GroupLayout.PREFERRED_SIZE, 400, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(JP_ServersLayout.createSequentialGroup()
                                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(JXB_UseScienceCodeServer, javax.swing.GroupLayout.PREFERRED_SIZE, 211, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel26, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(18, 18, 18)
                                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(JT_ScienceCodeJnlpUrl, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
                                    .addComponent(JT_ScienceCodeEndpointAddress))))
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
        );
        JP_ServersLayout.setVerticalGroup(
            JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ServersLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_ScienceCodeEndpointAddress, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel26))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_UseScienceCodeServer)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_ScienceCodeJnlpUrl, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel28))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(JXB_AutoPopulateServers)
                .addGap(18, 18, 18)
                .addGroup(JP_ServersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_DataHandlerEndpointAddress, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel25))
                .addContainerGap(90, Short.MAX_VALUE))
        );

        jTabbedPane1.addTab("Servers", JP_Servers);

        JP_Server_executables_parms.setBorder(javax.swing.BorderFactory.createTitledBorder("Executables parameters"));

        JP_PrepareDataParms.setEnabled(false);
        JP_PrepareDataParms.setFocusable(false);
        JP_PrepareDataParms.setRequestFocusEnabled(false);
        JP_PrepareDataParms.setVerifyInputWhenFocusTarget(false);

        JL_SERVER_58.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_58.setText("(exe ref value)");
        JL_SERVER_58.setEnabled(false);
        JL_SERVER_58.setFocusable(false);
        JL_SERVER_58.setRequestFocusEnabled(false);

        JL_SERVER_36.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_36.setText("exe name ref");
        JL_SERVER_36.setEnabled(false);
        JL_SERVER_36.setFocusable(false);
        JL_SERVER_36.setRequestFocusEnabled(false);

        JL_SERVER_37.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_37.setText("output files");
        JL_SERVER_37.setEnabled(false);
        JL_SERVER_37.setFocusable(false);
        JL_SERVER_37.setRequestFocusEnabled(false);

        JL_SERVER_38.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_38.setText("input files");
        JL_SERVER_38.setEnabled(false);
        JL_SERVER_38.setFocusable(false);
        JL_SERVER_38.setRequestFocusEnabled(false);

        JL_SERVER_39.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_39.setText("Prepare Data command parameters");
        JL_SERVER_39.setEnabled(false);
        JL_SERVER_39.setFocusable(false);
        JL_SERVER_39.setRequestFocusEnabled(false);

        JT_PrepareDataFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_PrepareDataFiles.setEnabled(false);
        JT_PrepareDataFiles.setFocusable(false);
        JT_PrepareDataFiles.setMaximumSize(new java.awt.Dimension(452, 20));
        JT_PrepareDataFiles.setName("CD-SC-windgen-interpolate-prepareData-inFiles"); // NOI18N
        JT_PrepareDataFiles.setOpaque(false);
        JT_PrepareDataFiles.setRequestFocusEnabled(false);
        JT_PrepareDataFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_PrepareDataFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_PrepareDataOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_PrepareDataOutFiles.setEnabled(false);
        JT_PrepareDataOutFiles.setFocusable(false);
        JT_PrepareDataOutFiles.setMaximumSize(new java.awt.Dimension(452, 20));
        JT_PrepareDataOutFiles.setName("CD-SC-windgen-interpolate-prepareData-outFiles"); // NOI18N
        JT_PrepareDataOutFiles.setOpaque(false);
        JT_PrepareDataOutFiles.setRequestFocusEnabled(false);
        JT_PrepareDataOutFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_PrepareDataOutFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_PrepareDataExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_PrepareDataExeRef.setEnabled(false);
        JT_PrepareDataExeRef.setFocusable(false);
        JT_PrepareDataExeRef.setMaximumSize(new java.awt.Dimension(6, 20));
        JT_PrepareDataExeRef.setName("CD-SC-windgen-interpolate-prepareData-exeFileRef"); // NOI18N
        JT_PrepareDataExeRef.setOpaque(false);
        JT_PrepareDataExeRef.setRequestFocusEnabled(false);
        JT_PrepareDataExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_PrepareDataExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_PrepareDataExeRefValActionPerformed(evt);
                globalActionPerformed(evt);
            }
        });

        JT_PrepareDataExeRefVal.setEditable(false);
        JT_PrepareDataExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_PrepareDataExeRefVal.setToolTipText("");
        JT_PrepareDataExeRefVal.setEnabled(false);
        JT_PrepareDataExeRefVal.setFocusable(false);
        JT_PrepareDataExeRefVal.setMaximumSize(new java.awt.Dimension(6, 20));
        JT_PrepareDataExeRefVal.setName(""); // NOI18N
        JT_PrepareDataExeRefVal.setOpaque(false);
        JT_PrepareDataExeRefVal.setRequestFocusEnabled(false);
        JT_PrepareDataExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_PrepareDataExeRefValActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_PrepareDataParmsLayout = new javax.swing.GroupLayout(JP_PrepareDataParms);
        JP_PrepareDataParms.setLayout(JP_PrepareDataParmsLayout);
        JP_PrepareDataParmsLayout.setHorizontalGroup(
            JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_PrepareDataParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_PrepareDataParmsLayout.createSequentialGroup()
                        .addGap(41, 41, 41)
                        .addComponent(JL_SERVER_39, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 206, Short.MAX_VALUE))
                    .addGroup(JP_PrepareDataParmsLayout.createSequentialGroup()
                        .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_58, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_37, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_38, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_36, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_PrepareDataFiles, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JT_PrepareDataOutFiles, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(JP_PrepareDataParmsLayout.createSequentialGroup()
                                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JT_PrepareDataExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JT_PrepareDataExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(0, 0, Short.MAX_VALUE)))))
                .addContainerGap())
        );
        JP_PrepareDataParmsLayout.setVerticalGroup(
            JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_PrepareDataParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_SERVER_39)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_PrepareDataFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_38))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_PrepareDataOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_37))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JL_SERVER_36)
                    .addComponent(JT_PrepareDataExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_PrepareDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_PrepareDataExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_58))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("Prepare Data", JP_PrepareDataParms);

        JL_SERVER_28.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_28.setText("Gen Data command parameters");
        JL_SERVER_28.setInheritsPopupMenu(false);

        JL_SERVER_29.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_29.setText("input files");
        JL_SERVER_29.setInheritsPopupMenu(false);

        JT_GenDataInFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_GenDataInFiles.setName("CD-SC-windgen-interpolate-genData-inFiles"); // NOI18N
        JT_GenDataInFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_GenDataInFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_SERVER_30.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_30.setText("output files");
        JL_SERVER_30.setInheritsPopupMenu(false);

        JT_GenDataOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_GenDataOutFiles.setName("CD-SC-windgen-interpolate-genData-outFiles"); // NOI18N

        JL_SERVER_31.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_31.setText("exe name ref");
        JL_SERVER_31.setInheritsPopupMenu(false);

        JT_GenDataExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_GenDataExeRef.setName("CD-SC-windgen-interpolate-genData-exeFileRef"); // NOI18N
        JT_GenDataExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_GenDataExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
                JT_GenDataExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_46.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_46.setText("(exe ref value)");
        JL_SERVER_46.setInheritsPopupMenu(false);

        JT_GenDataExeRefVal.setEditable(false);
        JT_GenDataExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_GenDataExeRefVal.setToolTipText("");
        JT_GenDataExeRefVal.setName(""); // NOI18N
        JT_GenDataExeRefVal.setOpaque(false);
        JT_GenDataExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_GenDataExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_41.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_41.setText("(from Windgen config tab)");
        JL_SERVER_41.setInheritsPopupMenu(false);

        javax.swing.GroupLayout JP_GenDataParmsLayout = new javax.swing.GroupLayout(JP_GenDataParms);
        JP_GenDataParms.setLayout(JP_GenDataParmsLayout);
        JP_GenDataParmsLayout.setHorizontalGroup(
            JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                        .addGap(41, 41, 41)
                        .addComponent(JL_SERVER_28, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 210, Short.MAX_VALUE))
                    .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                        .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_46, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_31, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_30, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_29, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_GenDataOutFiles)
                            .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                                .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(JT_GenDataExeRefVal, javax.swing.GroupLayout.DEFAULT_SIZE, 244, Short.MAX_VALUE)
                                    .addComponent(JT_GenDataExeRef))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JL_SERVER_41, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(JT_GenDataInFiles))))
                .addContainerGap())
        );
        JP_GenDataParmsLayout.setVerticalGroup(
            JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_SERVER_28)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_GenDataInFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_29))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_GenDataOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_30))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(JP_GenDataParmsLayout.createSequentialGroup()
                        .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JL_SERVER_31)
                            .addComponent(JT_GenDataExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_GenDataParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_GenDataExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_46)))
                    .addComponent(JL_SERVER_41, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("Gen Data", JP_GenDataParms);

        JL_SERVER_32.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_32.setText("Windgen command parameters");
        JL_SERVER_32.setInheritsPopupMenu(false);

        JL_SERVER_33.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_33.setText("input files");
        JL_SERVER_33.setInheritsPopupMenu(false);

        JT_WindgenInFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WindgenInFiles.setName("CD-SC-windgen-inFiles"); // NOI18N
        JT_WindgenInFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WindgenInFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_SERVER_34.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_34.setText("output files");
        JL_SERVER_34.setInheritsPopupMenu(false);

        JT_WindgenOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WindgenOutFiles.setName("CD-SC-windgen-outFiles"); // NOI18N
        JT_WindgenOutFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WindgenOutFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_SERVER_35.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_35.setText("exe name ref");
        JL_SERVER_35.setInheritsPopupMenu(false);

        JT_WindgenExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WindgenExeRef.setName("CD-SC-windgen-exeFileRef"); // NOI18N
        JT_WindgenExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WindgenExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_WindgenExeRefValActionPerformed(evt);
                globalActionPerformed(evt);
            }
        });

        JL_SERVER_47.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_47.setText("(exe ref value)");
        JL_SERVER_47.setInheritsPopupMenu(false);

        JT_WindgenExeRefVal.setEditable(false);
        JT_WindgenExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WindgenExeRefVal.setToolTipText("");
        JT_WindgenExeRefVal.setName(""); // NOI18N
        JT_WindgenExeRefVal.setOpaque(false);
        JT_WindgenExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_WindgenExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_42.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_42.setText("(from Windgen config tab)");
        JL_SERVER_42.setInheritsPopupMenu(false);

        javax.swing.GroupLayout JP_WindgenParmsLayout = new javax.swing.GroupLayout(JP_WindgenParms);
        JP_WindgenParms.setLayout(JP_WindgenParmsLayout);
        JP_WindgenParmsLayout.setHorizontalGroup(
            JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                        .addGap(41, 41, 41)
                        .addComponent(JL_SERVER_32, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                        .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_47, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_35, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_34, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_33, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_WindgenInFiles)
                            .addComponent(JT_WindgenOutFiles)
                            .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                                .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JT_WindgenExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JT_WindgenExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JL_SERVER_42, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE)))))
                .addContainerGap())
        );
        JP_WindgenParmsLayout.setVerticalGroup(
            JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_SERVER_32)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_WindgenInFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_33))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_WindgenOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_34))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(JP_WindgenParmsLayout.createSequentialGroup()
                        .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JL_SERVER_35)
                            .addComponent(JT_WindgenExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WindgenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_WindgenExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_47)))
                    .addComponent(JL_SERVER_42, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("WindGen", JP_WindgenParms);

        JL_SERVER_48.setText("Cligen command parameters");

        JL_SERVER_49.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_49.setText("input files");
        JL_SERVER_49.setInheritsPopupMenu(false);

        JL_SERVER_50.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_50.setText("output files");
        JL_SERVER_50.setInheritsPopupMenu(false);

        JL_SERVER_51.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_51.setText("exe name ref");
        JL_SERVER_51.setInheritsPopupMenu(false);

        JL_SERVER_52.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_52.setText("(exe ref value)");
        JL_SERVER_52.setInheritsPopupMenu(false);

        JT_CligenInFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_CligenInFiles.setName("CD-SC-cligen-inFiles"); // NOI18N
        JT_CligenInFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_CligenInFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_CligenOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_CligenOutFiles.setName("CD-SC-cligen-outFiles"); // NOI18N
        JT_CligenOutFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_CligenOutFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_CligenExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_CligenExeRef.setName("CD-SC-cligen-exeFileRef"); // NOI18N
        JT_CligenExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_CligenExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_CligenExeRefValActionPerformed(evt);
                globalActionPerformed(evt);
            }
        });

        JT_CligenExeRefVal.setEditable(false);
        JT_CligenExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_CligenExeRefVal.setToolTipText("");
        JT_CligenExeRefVal.setName(""); // NOI18N
        JT_CligenExeRefVal.setOpaque(false);
        JT_CligenExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_CligenExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_43.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_43.setText("(from Cligen config tab)");
        JL_SERVER_43.setInheritsPopupMenu(false);

        javax.swing.GroupLayout JP_CligenParmsLayout = new javax.swing.GroupLayout(JP_CligenParms);
        JP_CligenParms.setLayout(JP_CligenParmsLayout);
        JP_CligenParmsLayout.setHorizontalGroup(
            JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                        .addGap(41, 41, 41)
                        .addComponent(JL_SERVER_48, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                        .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_52, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_51, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_50, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_49, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_CligenOutFiles)
                            .addComponent(JT_CligenInFiles, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                                .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JT_CligenExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JT_CligenExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JL_SERVER_43, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE)))))
                .addContainerGap())
        );
        JP_CligenParmsLayout.setVerticalGroup(
            JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_SERVER_48)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_CligenInFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_49))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_CligenOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_50))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_CligenParmsLayout.createSequentialGroup()
                        .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JL_SERVER_51)
                            .addComponent(JT_CligenExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_CligenParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_CligenExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_52)))
                    .addComponent(JL_SERVER_43, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("Cligen", JP_CligenParms);

        JL_SERVER_53.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_53.setText("Weps command parameters");
        JL_SERVER_53.setInheritsPopupMenu(false);

        JL_SERVER_54.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_54.setText("input files");
        JL_SERVER_54.setInheritsPopupMenu(false);

        JL_SERVER_55.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_55.setText("output files");
        JL_SERVER_55.setInheritsPopupMenu(false);

        JL_SERVER_56.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_56.setText("exe name ref");
        JL_SERVER_56.setInheritsPopupMenu(false);

        JL_SERVER_57.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_57.setText("(exe ref value)");
        JL_SERVER_57.setInheritsPopupMenu(false);

        JT_WepsInFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WepsInFiles.setName("CD-SC-weps-inFiles"); // NOI18N
        JT_WepsInFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WepsInFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_WepsOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WepsOutFiles.setName("CD-SC-weps-outFiles"); // NOI18N
        JT_WepsOutFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WepsOutFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JT_WepsExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WepsExeRef.setName("CD-SC-weps-exeFileRef"); // NOI18N
        JT_WepsExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_WepsExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_WepsExeRefValActionPerformed(evt);
                globalActionPerformed(evt);
            }
        });

        JT_WepsExeRefVal.setEditable(false);
        JT_WepsExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_WepsExeRefVal.setToolTipText("");
        JT_WepsExeRefVal.setName(""); // NOI18N
        JT_WepsExeRefVal.setOpaque(false);
        JT_WepsExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_WepsExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_44.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_44.setText("(from Weps config tab)");
        JL_SERVER_44.setInheritsPopupMenu(false);

        javax.swing.GroupLayout JP_WepsParmsLayout = new javax.swing.GroupLayout(JP_WepsParms);
        JP_WepsParms.setLayout(JP_WepsParmsLayout);
        JP_WepsParmsLayout.setHorizontalGroup(
            JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                        .addGap(41, 41, 41)
                        .addComponent(JL_SERVER_53, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                        .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_57, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_56, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_55, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_54, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_WepsOutFiles)
                            .addComponent(JT_WepsInFiles, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                                .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(JT_WepsExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(JT_WepsExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 244, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JL_SERVER_44, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE)))))
                .addContainerGap())
        );
        JP_WepsParmsLayout.setVerticalGroup(
            JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_SERVER_53)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_WepsInFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_54))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_WepsOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_55))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_WepsParmsLayout.createSequentialGroup()
                        .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JL_SERVER_56)
                            .addComponent(JT_WepsExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_WepsParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_WepsExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_57)))
                    .addComponent(JL_SERVER_44, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("Weps", JP_WepsParms);

        JL_SERVER_14.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_14.setText("input files");
        JL_SERVER_14.setInheritsPopupMenu(false);

        JT_InterpolateInFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_InterpolateInFiles.setMaximumSize(new java.awt.Dimension(452, 20));
        JT_InterpolateInFiles.setName("CD-SC-windgen-interpolate-inFiles"); // NOI18N
        JT_InterpolateInFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_InterpolateInFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_Server_25.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_Server_25.setText("Interpolate command parameters");
        JL_Server_25.setInheritsPopupMenu(false);

        JL_SERVER_26.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_26.setText("output files");
        JL_SERVER_26.setInheritsPopupMenu(false);

        JT_InterpolateOutFiles.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_InterpolateOutFiles.setMaximumSize(new java.awt.Dimension(452, 20));
        JT_InterpolateOutFiles.setName("CD-SC-windgen-interpolate-outFiles"); // NOI18N
        JT_InterpolateOutFiles.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_InterpolateOutFiles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
            }
        });

        JL_SERVER_27.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_27.setText("exe name ref");
        JL_SERVER_27.setInheritsPopupMenu(false);

        JT_InterpolateExeRef.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_InterpolateExeRef.setMaximumSize(new java.awt.Dimension(244, 20));
        JT_InterpolateExeRef.setName("CD-SC-windgen-interpolate-exeFileRef"); // NOI18N
        JT_InterpolateExeRef.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                globalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                globalFocusLost(evt);
            }
        });
        JT_InterpolateExeRef.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                globalActionPerformed(evt);
                JT_InterpolateExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_45.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_45.setText("(exe ref value)");
        JL_SERVER_45.setInheritsPopupMenu(false);

        JT_InterpolateExeRefVal.setEditable(false);
        JT_InterpolateExeRefVal.setHorizontalAlignment(javax.swing.JTextField.LEFT);
        JT_InterpolateExeRefVal.setToolTipText("");
        JT_InterpolateExeRefVal.setMaximumSize(new java.awt.Dimension(244, 20));
        JT_InterpolateExeRefVal.setName(""); // NOI18N
        JT_InterpolateExeRefVal.setOpaque(false);
        JT_InterpolateExeRefVal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_InterpolateExeRefValActionPerformed(evt);
            }
        });

        JL_SERVER_59.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
        JL_SERVER_59.setText("(from Windgen config tab)");
        JL_SERVER_59.setInheritsPopupMenu(false);

        javax.swing.GroupLayout JP_InterpolateParmsLayout = new javax.swing.GroupLayout(JP_InterpolateParms);
        JP_InterpolateParms.setLayout(JP_InterpolateParmsLayout);
        JP_InterpolateParmsLayout.setHorizontalGroup(
            JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                        .addGap(51, 51, 51)
                        .addComponent(JL_Server_25, javax.swing.GroupLayout.PREFERRED_SIZE, 294, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(JL_SERVER_45, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_27, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_26, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(JL_SERVER_14, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(JT_InterpolateInFiles, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                                .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(JT_InterpolateExeRefVal, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 244, Short.MAX_VALUE)
                                    .addComponent(JT_InterpolateExeRef, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(JL_SERVER_59, javax.swing.GroupLayout.DEFAULT_SIZE, 207, Short.MAX_VALUE))
                            .addComponent(JT_InterpolateOutFiles, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
                .addContainerGap())
        );
        JP_InterpolateParmsLayout.setVerticalGroup(
            JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JL_Server_25)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_InterpolateInFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_14))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_InterpolateOutFiles, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_26))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(JP_InterpolateParmsLayout.createSequentialGroup()
                        .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_InterpolateExeRef, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_27))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(JP_InterpolateParmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(JT_InterpolateExeRefVal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(JL_SERVER_45)))
                    .addComponent(JL_SERVER_59, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        JTP_ExecutableParms.addTab("Interpolate", JP_InterpolateParms);

        JL_SERVER_61.setText("On cloud progress bar length");
        JL_SERVER_61.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
        JL_SERVER_61.setMaximumSize(null);

        JT_CloudProgressLen.setText("200");
        JT_CloudProgressLen.setName("CD-SC-cloudProgressLen"); // NOI18N
        JT_CloudProgressLen.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusGained(java.awt.event.FocusEvent evt) {
                JT_CloudProgressLenglobalFocusGained(evt);
            }
            public void focusLost(java.awt.event.FocusEvent evt) {
                JT_CloudProgressLenglobalFocusLost(evt);
            }
        });
        JT_CloudProgressLen.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JT_CloudProgressLenglobalActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout JP_Server_executables_parmsLayout = new javax.swing.GroupLayout(JP_Server_executables_parms);
        JP_Server_executables_parms.setLayout(JP_Server_executables_parmsLayout);
        JP_Server_executables_parmsLayout.setHorizontalGroup(
            JP_Server_executables_parmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_Server_executables_parmsLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(JP_Server_executables_parmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(JTP_ExecutableParms, javax.swing.GroupLayout.PREFERRED_SIZE, 570, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(JP_Server_executables_parmsLayout.createSequentialGroup()
                        .addComponent(JL_SERVER_61, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(JT_CloudProgressLen, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(67, Short.MAX_VALUE))
        );
        JP_Server_executables_parmsLayout.setVerticalGroup(
            JP_Server_executables_parmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_Server_executables_parmsLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JTP_ExecutableParms, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addGroup(JP_Server_executables_parmsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JT_CloudProgressLen, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(JL_SERVER_61, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        jTabbedPane1.addTab("Parameters", JP_Server_executables_parms);
        JP_Server_executables_parms.getAccessibleContext().setAccessibleName("executables parameters");
        JP_Server_executables_parms.getAccessibleContext().setAccessibleDescription("");

        javax.swing.GroupLayout JP_ServerLayout = new javax.swing.GroupLayout(JP_Server);
        JP_Server.setLayout(JP_ServerLayout);
        JP_ServerLayout.setHorizontalGroup(
            JP_ServerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ServerLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jTabbedPane1)
                .addGap(39, 39, 39))
        );
        JP_ServerLayout.setVerticalGroup(
            JP_ServerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(JP_ServerLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jTabbedPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 295, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(218, Short.MAX_VALUE))
        );

        JTP_main.addTab("Server", JP_Server);

        JB_OK.setMnemonic('S');
        JB_OK.setText("OK");
        JB_OK.setToolTipText("ConfigPanel:save");
        JB_OK.setActionCommand("Cacel");
        JB_OK.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                JBSave_ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(JB_OK)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JB_Cancel)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(JB_Help))
                    .addComponent(JTP_main))
                .addContainerGap())
        );

        layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {JB_Cancel, JB_Help, JB_OK});

        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(JTP_main, javax.swing.GroupLayout.PREFERRED_SIZE, 553, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(JB_Help)
                    .addComponent(JB_Cancel)
                    .addComponent(JB_OK))
                .addContainerGap())
        );

        bindingGroup.bind();

        pack();
    }// </editor-fold>//GEN-END:initComponents

	   protected void JB_Help_ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JB_Help_ActionPerformed
           ////throw new UnsupportedOperationException("not impld yet");
	   }//GEN-LAST:event_JB_Help_ActionPerformed

	   protected void JBSave_ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JBSave_ActionPerformed
           save();
	   }//GEN-LAST:event_JBSave_ActionPerformed

    private void save() {
        boolean hadShapeFiles = false;

        //send changes to the ConfigData
        for (java.util.Map.Entry<String, String> map : HT_changes.entrySet()) {
            if (ConfigData.GISData.equals(map.getKey())) {
                hadShapeFiles = true;
            }

            String key = map.getKey();
            String value = map.getValue();
            if (key != null) {
                System.out.println(key + " : " + value);
                changes.firePropertyChange(key, null, value);
            } else {
                System.out.println("Invalid entry in HT_changes");
            }
        }
        //save changes
        ConfigData.getDefault().save();
        
        // update WebStart CSIP runner
        Weps.getInstance().wsRunnerActivate(ConfigData.getDefault());

        //save fuel changes
        FuelDAO.getInstance().update(fuelTableModel.getFuels());

        try {
            TVFS.umount();
        } catch (FsSyncException ex) {
            logger.fatal("Unable to update config.", ex);

        }
        if (hadShapeFiles) {
            JOptionPane.showMessageDialog(null, "GIS shape file options have changed.\n"
                    + "Please restart WEPS for the changes to take effect.", "Restart Required",
                    JOptionPane.INFORMATION_MESSAGE);
        }
        setVisible(false);
        dispose();
    }

	   protected void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm
           System.exit(0);
	   }//GEN-LAST:event_exitForm

           private void JB_CancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JB_CancelActionPerformed
               HT_changes.clear();
               setVisible(false);
               dispose();
           }//GEN-LAST:event_JB_CancelActionPerformed

    private void globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_globalFocusLost
        if (evt.isTemporary()) {
            return;
        }
        Object o = evt.getSource();
        if (o instanceof JPasswordField) {
            JPasswordField jpf = (JPasswordField) evt.getSource();
            StringBuilder password = new StringBuilder();
            password.append(jpf.getPassword());

            if (checkNumericField(jpf)) {
                putChange(jpf.getName(), password.toString());
            }
        } else if (o instanceof MeasurableField) {
            @SuppressWarnings("unchecked")
            MeasurableField<Quantity> mf = (MeasurableField<Quantity>) o;
            Unit<Quantity> units = ConfigData.getDefault().getMeasureableUnit(mf.getName());

            if (units != null) {
                MeasureableConfigurationOption option
                        = ConfigData.getDefault().getMeasureableConfigurationOption(mf.getName());
                String value;
                if (option.isDouble()) {
                    value = Double.toString(mf.getValue().doubleValue(units));
                } else {
                    value = Long.toString(mf.getValue().longValue(units));
                }
                putChange(mf.getName(), value);

            } else {
                logger.warn("MeasureableConfigurationOption is not set for " + mf.getName());
            }

        } else if (o instanceof JTextField) {
            JTextField jtf = (JTextField) evt.getSource();
            if (checkNumericField(jtf)) {
                putChange(jtf.getName(), jtf.getText());
            }
        } else if (o instanceof AllowedStationModeChooser) {
            AllowedStationModeChooser chooser = (AllowedStationModeChooser) o;
            putChange(chooser.getName(), chooser.serializeSelectedModes());
        }
    }//GEN-LAST:event_globalFocusLost

    private void globalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_globalFocusGained
        Object o = evt.getSource();
        if (o instanceof JTextField) {
            JTextField jtf = (JTextField) evt.getSource();
            jtf.select(0, 1000); // select all text -- 1000 is abitrarily large
        }
        //throw new UnsupportedOperationException("not impld yet");
    }//GEN-LAST:event_globalFocusGained

    private void globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_globalActionPerformed
        JB_OK.setEnabled(true);
        Object o = evt.getSource();
        if (o instanceof JPasswordField) {
            JPasswordField jpf = (JPasswordField) evt.getSource();
            StringBuilder password = new StringBuilder();
            password.append(jpf.getPassword());

            if (checkNumericField(jpf)) {
                putChange(jpf.getName(), password.toString());
            }
        } else if (o instanceof MeasurableField) {
            @SuppressWarnings("unchecked")
            MeasurableField<Quantity> mf = (MeasurableField<Quantity>) o;
            Unit<Quantity> units = ConfigData.getDefault().getMeasureableUnit(mf.getName());

            if (units != null) {
                MeasureableConfigurationOption option
                        = ConfigData.getDefault().getMeasureableConfigurationOption(mf.getName());
                String value;
                if (option.isDouble()) {
                    value = Double.toString(mf.getValue().doubleValue(units));
                } else {
                    value = Long.toString(mf.getValue().longValue(units));
                }
                putChange(mf.getName(), value);

            } else {
                logger.warn("MeasureableConfigurationOption is not set for " + mf.getName());
            }
        } else if (o instanceof JTextField) {
            JTextField jtf = (JTextField) evt.getSource();
            if (checkNumericField(jtf)) {
                putChange(jtf.getName(), jtf.getText());
            }
        } else if (o instanceof JCheckBox) {
            JCheckBox jxb = (JCheckBox) o;
            putChange(jxb.getName(), jxb.isSelected() ? "1" : "0");
        } else if (o instanceof FuelChooser) {
            FuelChooser chooser = (FuelChooser) o;
            Fuel fuel = chooser.getSelectedFuel();
            if (fuel != null) {
                putChange(chooser.getName(), fuel.getName());
            } else {
                putChange(chooser.getName(), "");
            }
        } else if (o instanceof JComboBox) {
            JComboBox<?> js = (JComboBox) o;
            String value = optionsDateFormat.get(js.getSelectedItem().toString());
            if (value == null) {
                value = js.getSelectedItem().toString();
            }
            putChange(js.getName(), "" + value);
        } else if (o instanceof JRadioButton) {
            JRadioButton jrb = (JRadioButton) o;
            if (jrb.isSelected()) {
                String name = jrb.getName();
                String property = name.substring(0, name.indexOf(":"));
                String value = name.substring(name.indexOf(":") + 1, name.length());
                putChange(property, value);
            }
        } else if (o instanceof AllowedStationModeChooser) {
            AllowedStationModeChooser chooser = (AllowedStationModeChooser) o;
            putChange(chooser.getName(), chooser.serializeSelectedModes());
        }
    }//GEN-LAST:event_globalActionPerformed

    private void fileButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_fileButtonActionPerformed
        Object o = evt.getSource();
        if (o instanceof JButton) {
            JButton jb = (JButton) o;

            TFile curFil = null;
            JPanel jp = (JPanel) jb.getParent();
            for (Object jtf : jp.getComponents()) {
                if (jtf instanceof JTextField) {
                    String name = ((JTextField) jtf).getName();
                    if (jb.getName().equals(name)) {
                        curFil = new TFile(Util.parse(((JTextField) jtf).getText()));
                        if (curFil == null) {
                            curFil = new TFile(".");
                        }
                        break;
                    }
                }
            }

            WepsFileChooser wfc = new WepsFileChooser(jb.getName(), WepsFileChooser.SELECT);
            if (curFil.exists()) {
                wfc.setCurrentDirectory(curFil.isDirectory() ? curFil : curFil.getParentFile());
            } else if (curFil.getParentFile() != null && curFil.getParentFile().exists()) {
                if (curFil.getParentFile().isDirectory()) {
                    wfc.setCurrentDirectory(curFil.getParentFile());
                }
            } else {
                wfc.setDefaultCurrentDirectory(jb.getName());
            }
            if (wfc.showDialog(this) == WepsFileChooser.APPROVE_OPTION) {
                TFile install = new TFile(".").getCanOrAbsFile();
                TFile selected = new TFile(wfc.getSelectedFile());
                selected = Util.resolveFileAsRelativeChildOrAbsolute(install, selected);

                String path = selected.getPath();

                putChange(jb.getName(), path);
                propertyLoader.loadData(jb.getName(), path);
            }
        }
    }//GEN-LAST:event_fileButtonActionPerformed

    private void globalFousGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_globalFousGained
    }//GEN-LAST:event_globalFousGained

    private void cligenModesglobalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_cligenModesglobalFocusLost
    }//GEN-LAST:event_cligenModesglobalFocusLost

    private void cligenModesglobalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_cligenModesglobalFocusGained
    }//GEN-LAST:event_cligenModesglobalFocusGained

    private void JT_InterpolateExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_InterpolateExeRefValActionPerformed
            JT_InterpolateExeRefVal.setText(getValue(getValue(JT_InterpolateExeRef.getName())));
    }//GEN-LAST:event_JT_InterpolateExeRefValActionPerformed

    private void JT_GenDataExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_GenDataExeRefValActionPerformed
            JT_GenDataExeRefVal.setText(getValue(getValue(JT_GenDataExeRef.getName())));
    }//GEN-LAST:event_JT_GenDataExeRefValActionPerformed

    private void JT_WindgenExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_WindgenExeRefValActionPerformed
            JT_WindgenExeRefVal.setText(getValue(getValue(JT_WindgenExeRef.getName())));
    }//GEN-LAST:event_JT_WindgenExeRefValActionPerformed

    private void JT_CligenExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_CligenExeRefValActionPerformed
            JT_CligenExeRefVal.setText(getValue(getValue(JT_CligenExeRef.getName())));
    }//GEN-LAST:event_JT_CligenExeRefValActionPerformed

    private void JT_WepsExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_WepsExeRefValActionPerformed
            JT_WepsExeRefVal.setText(getValue(getValue(JT_WepsExeRef.getName())));
    }//GEN-LAST:event_JT_WepsExeRefValActionPerformed

    private void JT_PrepareDataExeRefValActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_PrepareDataExeRefValActionPerformed
            JT_PrepareDataExeRefVal.setText(getValue(getValue(JT_PrepareDataExeRef.getName())));
    }//GEN-LAST:event_JT_PrepareDataExeRefValActionPerformed

    private void JT_CloudProgressLenglobalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JT_CloudProgressLenglobalFocusGained
        // TODO add your handling code here:
    }//GEN-LAST:event_JT_CloudProgressLenglobalFocusGained

    private void JT_CloudProgressLenglobalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JT_CloudProgressLenglobalFocusLost
        // TODO add your handling code here:
    }//GEN-LAST:event_JT_CloudProgressLenglobalFocusLost

    private void JT_CloudProgressLenglobalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JT_CloudProgressLenglobalActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_JT_CloudProgressLenglobalActionPerformed

    private void JTF_mantisEmail1globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_mantisEmail1globalActionPerformed
        globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_mantisEmail1globalActionPerformed

    private void JTF_mantisEmail1globalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisEmail1globalFocusGained
        globalFocusGained(evt);
    }//GEN-LAST:event_JTF_mantisEmail1globalFocusGained

    private void JTF_mantisEmail1globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisEmail1globalFocusLost
        globalFocusLost(evt);
    }//GEN-LAST:event_JTF_mantisEmail1globalFocusLost

    private void JTF_mantisURL1globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_mantisURL1globalActionPerformed
        globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_mantisURL1globalActionPerformed

    private void JTF_mantisURL1globalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisURL1globalFocusGained
        globalFocusGained(evt);
    }//GEN-LAST:event_JTF_mantisURL1globalFocusGained

    private void JTF_mantisURL1globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisURL1globalFocusLost
        globalFocusLost(evt);
    }//GEN-LAST:event_JTF_mantisURL1globalFocusLost

    private void JTF_mantisUserID1globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_mantisUserID1globalActionPerformed
        globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_mantisUserID1globalActionPerformed

    private void JTF_mantisUserID1globalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisUserID1globalFocusGained
        globalFocusGained(evt);
    }//GEN-LAST:event_JTF_mantisUserID1globalFocusGained

    private void JTF_mantisUserID1globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisUserID1globalFocusLost
        globalFocusLost(evt);
    }//GEN-LAST:event_JTF_mantisUserID1globalFocusLost

    private void doServerControlInit () {
        JT_InterpolateExeRefVal.setText(getValue(getValue(JT_InterpolateExeRef.getName())));
        JT_GenDataExeRefVal.setText(getValue(getValue(JT_GenDataExeRef.getName())));
        JT_WindgenExeRefVal.setText(getValue(getValue(JT_WindgenExeRef.getName())));
        JT_CligenExeRefVal.setText(getValue(getValue(JT_CligenExeRef.getName())));
        JT_WepsExeRefVal.setText(getValue(getValue(JT_WepsExeRef.getName())));
             
        String endPoint = ConfigData.getDefault().getData(cdKeyDataHandlerBase+cdKeyAddEndpoint);
        if (endPoint == null || endPoint.length() == 0) {
            endPoint =ConfigData.getDefault().getData(cdKeyWebStartBase+cdKeyAddInstallerEndpoint);
            if (endPoint == null || endPoint.length() == 0) {
                endPoint = ConfigData.getDefault().getData(cdKeyWebStartBase+cdKeyAddInvocationBase);
            }
            ConfigData.getDefault().setData(cdKeyDataHandlerBase+cdKeyAddEndpoint, endPoint);
        }
        JT_DataHandlerEndpointAddress.setText(endPoint);

        endPoint = ConfigData.getDefault().getData(cdKeySciCombinedBase+cdKeyAddEndpoint);
        if (endPoint == null || endPoint.length() == 0) {
            endPoint =ConfigData.getDefault().getData(cdKeyWebStartBase+cdKeyAddInstallerEndpoint);
            if (endPoint == null || endPoint.length() == 0) {
                endPoint = ConfigData.getDefault().getData(cdKeyWebStartBase+cdKeyAddInvocationBase);
            }
            ConfigData.getDefault().setData(cdKeySciCombinedBase+cdKeyAddEndpoint, endPoint);
        }
        JT_ScienceCodeEndpointAddress.setText(endPoint);
        
        String s1 = ConfigData.getDefault().getData(cdKeySciCombinedBase+cdKeyAddJnlpUrlRef);
        String s2a = JT_ScienceCodeJnlpUrl.getName();
        String s2 = getValue(JT_ScienceCodeJnlpUrl.getName() );
        //JT_ScienceCodeJnlpUrl.setText(ConfigData.getDefault().getData(cdKeySciCombinedBase+cdKeyAddJnlpUrlRef));
        JT_ScienceCodeJnlpUrl.setText(getValue(JT_ScienceCodeJnlpUrl.getName() ));

    }
    
    private void JTF_mantisProject1globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_mantisProject1globalActionPerformed
        globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_mantisProject1globalActionPerformed

    private void JTF_mantisProject1globalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisProject1globalFocusGained
        globalFocusGained(evt);
    }//GEN-LAST:event_JTF_mantisProject1globalFocusGained

    private void JTF_mantisProject1globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisProject1globalFocusLost
        globalFocusLost(evt);
    }//GEN-LAST:event_JTF_mantisProject1globalFocusLost

    private void JTF_mantisPassword1globalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_mantisPassword1globalActionPerformed
        globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_mantisPassword1globalActionPerformed

    private void JTF_mantisPassword1globalFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_mantisPassword1globalFocusLost
        globalFocusLost(evt);
    }//GEN-LAST:event_JTF_mantisPassword1globalFocusLost

    private void JTF_windgenPrecisionglobalFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_JTF_windgenPrecisionglobalFocusGained
        globalFocusGained(evt);
    }//GEN-LAST:event_JTF_windgenPrecisionglobalFocusGained

    private void JTF_windgenPrecisionglobalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JTF_windgenPrecisionglobalActionPerformed
       globalActionPerformed(evt);
    }//GEN-LAST:event_JTF_windgenPrecisionglobalActionPerformed

    private void serverControlActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_serverControlActionPerformed
        Object o = evt.getSource();
        if (o instanceof JTextField) {
            JTextField jtf = (JTextField) evt.getSource();
            putChange(jtf.getName(), jtf.getText());
        }
    }//GEN-LAST:event_serverControlActionPerformed

    private void serverControlFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_serverControlFocusLost
        Object o = evt.getSource();
        if (o instanceof JTextField) {
            JTextField jtf = (JTextField) evt.getSource();
            putChange(jtf.getName(), jtf.getText());
        }
    }//GEN-LAST:event_serverControlFocusLost

    private void JXB_AutoPopulateServersglobalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_JXB_AutoPopulateServersglobalActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_JXB_AutoPopulateServersglobalActionPerformed

    /**
     * This method is used if this dialog is rum as an independent application. If executed,
     * makes the GUI visible.
     * @param args These are the command line arguments passed to the main method.
     */
    public static void main(String args[]) {
        new ConfigPanel_n().setVisible(true);
    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.ButtonGroup JBGP_NRMV;
    private javax.swing.ButtonGroup JBGP_NRMVOutput;
    private javax.swing.ButtonGroup JBGP_SubmodelOutput;
    public javax.swing.ButtonGroup JBGP_reportPeriod;
    public javax.swing.ButtonGroup JBGP_runType;
    public javax.swing.ButtonGroup JBGP_units;
    private javax.swing.JButton JB_Cancel;
    public javax.swing.JButton JB_Help;
    public javax.swing.JButton JB_OK;
    protected javax.swing.JButton JB_barriersFile;
    protected javax.swing.JButton JB_browseRunsLocation;
    protected javax.swing.JButton JB_cliExe;
    protected javax.swing.JButton JB_cliGenDb;
    protected javax.swing.JButton JB_cliGenDb1;
    protected javax.swing.JButton JB_detailFilters;
    protected javax.swing.JButton JB_gisDataFile;
    protected javax.swing.JButton JB_mcrewDataConfig;
    protected javax.swing.JButton JB_reportFileName;
    protected javax.swing.JButton JB_skelTranslations;
    protected javax.swing.JButton JB_wepsExe;
    protected javax.swing.JButton JB_winExe;
    protected javax.swing.JButton JB_winGenDB;
    protected javax.swing.JButton JB_winGenDB1;
    protected javax.swing.JButton JB_winGenDB2;
    protected javax.swing.JButton JB_winGenDB3;
    protected javax.swing.JButton JB_winGenDB4;
    private javax.swing.JCheckBox JCB_allowBatchCreation;
    private javax.swing.JComboBox<String> JCB_crop;
    private javax.swing.JComboBox<String> JCB_dabove;
    private javax.swing.JComboBox<String> JCB_dbelow;
    private javax.swing.JComboBox<String> JCB_decomp;
    protected javax.swing.JComboBox<String> JCB_formatOperationDate;
    private javax.swing.JComboBox<String> JCB_hlayers;
    private javax.swing.JComboBox<String> JCB_hydro;
    private javax.swing.JCheckBox JCB_outlookClient;
    private javax.swing.JComboBox<String> JCB_plot;
    private javax.swing.JCheckBox JCB_purgeRunFiles;
    private javax.swing.JComboBox<String> JCB_season;
    private javax.swing.JComboBox<String> JCB_shoot;
    private javax.swing.JCheckBox JCB_showCountries;
    private javax.swing.JComboBox<String> JCB_soillay;
    private javax.swing.JLabel JL_SERVER_14;
    private javax.swing.JLabel JL_SERVER_26;
    private javax.swing.JLabel JL_SERVER_27;
    private javax.swing.JLabel JL_SERVER_28;
    private javax.swing.JLabel JL_SERVER_29;
    private javax.swing.JLabel JL_SERVER_30;
    private javax.swing.JLabel JL_SERVER_31;
    private javax.swing.JLabel JL_SERVER_32;
    private javax.swing.JLabel JL_SERVER_33;
    private javax.swing.JLabel JL_SERVER_34;
    private javax.swing.JLabel JL_SERVER_35;
    private javax.swing.JLabel JL_SERVER_36;
    private javax.swing.JLabel JL_SERVER_37;
    private javax.swing.JLabel JL_SERVER_38;
    private javax.swing.JLabel JL_SERVER_39;
    private javax.swing.JLabel JL_SERVER_41;
    private javax.swing.JLabel JL_SERVER_42;
    private javax.swing.JLabel JL_SERVER_43;
    private javax.swing.JLabel JL_SERVER_44;
    private javax.swing.JLabel JL_SERVER_45;
    private javax.swing.JLabel JL_SERVER_46;
    private javax.swing.JLabel JL_SERVER_47;
    private javax.swing.JLabel JL_SERVER_48;
    private javax.swing.JLabel JL_SERVER_49;
    private javax.swing.JLabel JL_SERVER_50;
    private javax.swing.JLabel JL_SERVER_51;
    private javax.swing.JLabel JL_SERVER_52;
    private javax.swing.JLabel JL_SERVER_53;
    private javax.swing.JLabel JL_SERVER_54;
    private javax.swing.JLabel JL_SERVER_55;
    private javax.swing.JLabel JL_SERVER_56;
    private javax.swing.JLabel JL_SERVER_57;
    private javax.swing.JLabel JL_SERVER_58;
    private javax.swing.JLabel JL_SERVER_59;
    private javax.swing.JLabel JL_SERVER_61;
    private javax.swing.JLabel JL_Server_25;
    public javax.swing.JLabel JL_calWepsCmd;
    protected javax.swing.JLabel JL_mcrewDataConfig;
    protected javax.swing.JLabel JL_reportFileName;
    public javax.swing.JLabel JL_runLength;
    private javax.swing.JLabel JL_runsLocation;
    protected javax.swing.JLabel JL_skelTranslations;
    public javax.swing.JLabel JLabel1;
    public javax.swing.JLabel JLabel10;
    public javax.swing.JLabel JLabel11;
    public javax.swing.JLabel JLabel12;
    public javax.swing.JLabel JLabel13;
    public javax.swing.JLabel JLabel14;
    public javax.swing.JLabel JLabel15;
    public javax.swing.JLabel JLabel16;
    public javax.swing.JLabel JLabel17;
    public javax.swing.JLabel JLabel18;
    public javax.swing.JLabel JLabel19;
    public javax.swing.JLabel JLabel2;
    public javax.swing.JLabel JLabel20;
    public javax.swing.JLabel JLabel21;
    public javax.swing.JLabel JLabel22;
    public javax.swing.JLabel JLabel23;
    public javax.swing.JLabel JLabel24;
    public javax.swing.JLabel JLabel25;
    public javax.swing.JLabel JLabel26;
    public javax.swing.JLabel JLabel27;
    public javax.swing.JLabel JLabel28;
    public javax.swing.JLabel JLabel29;
    public javax.swing.JLabel JLabel3;
    public javax.swing.JLabel JLabel30;
    public javax.swing.JLabel JLabel31;
    public javax.swing.JLabel JLabel34;
    public javax.swing.JLabel JLabel35;
    public javax.swing.JLabel JLabel36;
    public javax.swing.JLabel JLabel37;
    public javax.swing.JLabel JLabel4;
    public javax.swing.JLabel JLabel41;
    public javax.swing.JLabel JLabel42;
    public javax.swing.JLabel JLabel43;
    public javax.swing.JLabel JLabel44;
    public javax.swing.JLabel JLabel45;
    public javax.swing.JLabel JLabel46;
    public javax.swing.JLabel JLabel47;
    public javax.swing.JLabel JLabel48;
    public javax.swing.JLabel JLabel49;
    public javax.swing.JLabel JLabel5;
    public javax.swing.JLabel JLabel50;
    public javax.swing.JLabel JLabel51;
    public javax.swing.JLabel JLabel6;
    public javax.swing.JLabel JLabel7;
    public javax.swing.JLabel JLabel8;
    public javax.swing.JLabel JLabel9;
    private javax.swing.JPanel JP_Cligen;
    private javax.swing.JPanel JP_CligenParms;
    public javax.swing.JPanel JP_Directories;
    public javax.swing.JPanel JP_Display;
    public javax.swing.JPanel JP_Email;
    private javax.swing.JPanel JP_Fuels;
    private javax.swing.JPanel JP_GenDataParms;
    private javax.swing.JPanel JP_Gis;
    private javax.swing.JPanel JP_InterpolateParms;
    private javax.swing.JPanel JP_NRMV;
    private javax.swing.JPanel JP_PrepareDataParms;
    public javax.swing.JPanel JP_Reporting;
    private javax.swing.JPanel JP_ReportingPeriod;
    public javax.swing.JPanel JP_Run;
    private javax.swing.JPanel JP_Server;
    private javax.swing.JPanel JP_Server_executables;
    private javax.swing.JPanel JP_Server_executables_parms;
    private javax.swing.JPanel JP_Servers;
    private javax.swing.JPanel JP_Soil;
    public javax.swing.JPanel JP_Weps;
    private javax.swing.JPanel JP_WepsParms;
    private javax.swing.JPanel JP_Windgen;
    private javax.swing.JPanel JP_WindgenParms;
    public javax.swing.JRadioButton JRB_1;
    public javax.swing.JRadioButton JRB_2;
    public javax.swing.JRadioButton JRB_3;
    public javax.swing.JRadioButton JRB_4;
    public javax.swing.JRadioButton JRB_NRCS;
    private javax.swing.JRadioButton JRB_NRMVOff;
    private javax.swing.JRadioButton JRB_NRMVOn;
    private javax.swing.JRadioButton JRB_NRMVSummaries;
    private javax.swing.JRadioButton JRB_SONotVisible;
    private javax.swing.JRadioButton JRB_SOReadOnly;
    private javax.swing.JRadioButton JRB_SOReadWrite;
    public javax.swing.JRadioButton JRB_cycle;
    public javax.swing.JRadioButton JRB_dates;
    public javax.swing.JRadioButton JRB_english;
    public javax.swing.JRadioButton JRB_metric;
    public javax.swing.JTextField JTF_MCREW;
    protected javax.swing.JTextField JTF_barriersFile;
    public javax.swing.JTextField JTF_calWepsCmd;
    public javax.swing.JTextField JTF_cliCmd;
    protected javax.swing.JTextField JTF_cliDb;
    protected javax.swing.JTextField JTF_cliDb1;
    public javax.swing.JTextField JTF_cliExe;
    public javax.swing.JTextField JTF_cropDB;
    private javax.swing.JTextField JTF_daysKeepLog;
    public javax.swing.JTextField JTF_debugCrop;
    public javax.swing.JTextField JTF_debugDec;
    public javax.swing.JTextField JTF_debugEro;
    public javax.swing.JTextField JTF_debugHydro;
    public javax.swing.JTextField JTF_debugMan;
    public javax.swing.JTextField JTF_debugSoil;
    public javax.swing.JTextField JTF_detCrop;
    public javax.swing.JTextField JTF_detDec;
    public javax.swing.JTextField JTF_detEro;
    public javax.swing.JTextField JTF_detHydro;
    public javax.swing.JTextField JTF_detMan;
    public javax.swing.JTextField JTF_detSoil;
    protected javax.swing.JTextField JTF_detailFilters;
    public javax.swing.JTextField JTF_emailBugs;
    public javax.swing.JTextField JTF_emailHost;
    public javax.swing.JTextField JTF_emailSender;
    public javax.swing.JTextField JTF_emailWeps;
    private javax.swing.JTextField JTF_localSoil;
    public javax.swing.JTextField JTF_manOperDB;
    public javax.swing.JTextField JTF_manSkel;
    public javax.swing.JTextField JTF_manTemp;
    public javax.swing.JTextField JTF_manTempSave;
    public javax.swing.JTextField JTF_mantisEmail;
    private javax.swing.JPasswordField JTF_mantisPassword1;
    public javax.swing.JTextField JTF_mantisProject1;
    public javax.swing.JTextField JTF_mantisURL1;
    public javax.swing.JTextField JTF_mantisUserID1;
    public javax.swing.JTextField JTF_mcrewDataConfig;
    protected javax.swing.JTextField JTF_omThreshold;
    private javax.swing.JTextField JTF_organicSoil;
    public javax.swing.JTextField JTF_projDir;
    public javax.swing.JTextField JTF_projDir1;
    protected javax.swing.JTextField JTF_reportFileName;
    public javax.swing.JTextField JTF_runLength;
    protected javax.swing.JTextField JTF_runsLocations;
    protected javax.swing.JTextField JTF_skelTranslations;
    public javax.swing.JTextField JTF_soilDB;
    public javax.swing.JTextField JTF_timeSteps;
    public javax.swing.JTextField JTF_ttDismiss;
    public javax.swing.JTextField JTF_ttInit;
    public javax.swing.JTextField JTF_wepsCmd;
    public javax.swing.JTextField JTF_wepsExe;
    public javax.swing.JTextField JTF_winCmd;
    protected javax.swing.JTextField JTF_winDb;
    protected javax.swing.JTextField JTF_winDb1;
    protected javax.swing.JTextField JTF_winDb2;
    protected javax.swing.JTextField JTF_winDb3;
    protected javax.swing.JTextField JTF_winDb4;
    public javax.swing.JTextField JTF_winExe;
    private javax.swing.JTextField JTF_windgenPrecision;
    private javax.swing.JTabbedPane JTP_ExecutableParms;
    protected javax.swing.JTabbedPane JTP_main;
    private javax.swing.JTextField JT_CligenExeName;
    private javax.swing.JTextField JT_CligenExeRef;
    private javax.swing.JTextField JT_CligenExeRefVal;
    private javax.swing.JTextField JT_CligenInFiles;
    private javax.swing.JTextField JT_CligenOutFiles;
    private javax.swing.JTextField JT_CloudProgressLen;
    private javax.swing.JTextField JT_DataHandlerEndpointAddress;
    private javax.swing.JTextField JT_GenDataExeRef;
    private javax.swing.JTextField JT_GenDataExeRefVal;
    private javax.swing.JTextField JT_GenDataInFiles;
    private javax.swing.JTextField JT_GenDataOutFiles;
    private javax.swing.JTextField JT_InterpolateExeName;
    private javax.swing.JTextField JT_InterpolateExeRef;
    private javax.swing.JTextField JT_InterpolateExeRefVal;
    private javax.swing.JTextField JT_InterpolateGenDataName;
    private javax.swing.JTextField JT_InterpolateInFiles;
    private javax.swing.JTextField JT_InterpolateOutFiles;
    private javax.swing.JTextField JT_InterpolatePrepareName;
    private javax.swing.JTextField JT_PrepareDataExeRef;
    private javax.swing.JTextField JT_PrepareDataExeRefVal;
    private javax.swing.JTextField JT_PrepareDataFiles;
    private javax.swing.JTextField JT_PrepareDataOutFiles;
    private javax.swing.JTextField JT_ScienceCodeEndpointAddress;
    private javax.swing.JTextField JT_ScienceCodeJnlpUrl;
    private javax.swing.JTextField JT_WepsExeName;
    private javax.swing.JTextField JT_WepsExeRef;
    private javax.swing.JTextField JT_WepsExeRefVal;
    private javax.swing.JTextField JT_WepsInFiles;
    private javax.swing.JTextField JT_WepsOutFiles;
    private javax.swing.JTextField JT_WindgenExeName;
    private javax.swing.JTextField JT_WindgenExeRef;
    private javax.swing.JTextField JT_WindgenExeRefVal;
    private javax.swing.JTextField JT_WindgenInFiles;
    private javax.swing.JTextField JT_WindgenOutFiles;
    private javax.swing.JCheckBox JXB_AutoPopulateServers;
    protected javax.swing.JCheckBox JXB_McrewEdit;
    private javax.swing.JCheckBox JXB_RunCligenOnServer;
    private javax.swing.JCheckBox JXB_RunInterpGenDataOnServer;
    private javax.swing.JCheckBox JXB_RunInterpOnServer;
    private javax.swing.JCheckBox JXB_RunInterpPrepareOnServer;
    private javax.swing.JCheckBox JXB_RunWepsOnServer;
    private javax.swing.JCheckBox JXB_RunWindGenOnServer;
    protected javax.swing.JCheckBox JXB_SoilEstimate;
    public javax.swing.JCheckBox JXB_SystemLocale;
    private javax.swing.JCheckBox JXB_UseScienceCodeServer;
    public javax.swing.JCheckBox JXB_barriersReadonly;
    protected javax.swing.JCheckBox JXB_disableSurgoEstimates;
    public javax.swing.JCheckBox JXB_doNotReview;
    public javax.swing.JCheckBox JXB_elevation;
    protected javax.swing.JCheckBox JXB_hidePButtons;
    protected javax.swing.JCheckBox JXB_hideTButtons;
    public javax.swing.JCheckBox JXB_latLon;
    public javax.swing.JCheckBox JXB_map;
    public javax.swing.JCheckBox JXB_slope;
    public javax.swing.JCheckBox JXB_slope1;
    private javax.swing.JCheckBox JXB_soilReadonly;
    public javax.swing.JCheckBox JXB_stateCounty;
    protected javax.swing.JCheckBox JXB_xmlFormats;
    private usda.weru.weps.location.chooser.AllowedStationModeChooser cligenModes;
    private usda.weru.util.MeasurableField<Length> cligenRadiusField;
    private javax.swing.JLabel cligenRadiusLabel;
    private javax.swing.JLabel cligenRadiusUnits;
    private javax.swing.JCheckBox collapse;
    protected javax.swing.JButton cropDB_Button;
    protected javax.swing.JButton currentProjectButton;
    private usda.weru.weps.fuel.FuelChooser fuelDefaultChooser;
    private javax.swing.JTextField fuelFile;
    protected javax.swing.JButton fuelFileButton;
    private javax.swing.JLabel fuelLabel;
    private javax.swing.JTable fuelTable;
    private javax.swing.ButtonGroup g_emailType;
    protected javax.swing.JRadioButton g_emailUseSmtpRadioButton;
    protected javax.swing.JRadioButton g_emailUseSystemRadioButton;
    private javax.swing.ButtonGroup g_secureConnectionGroup;
    protected javax.swing.JLabel g_serverNameLabel;
    protected javax.swing.JTextField gisData;
    private javax.swing.JLabel gisDataLabel;
    private javax.swing.JCheckBox jCheckBox1;
    private javax.swing.JCheckBox jCheckBox10;
    private javax.swing.JCheckBox jCheckBox11;
    private javax.swing.JCheckBox jCheckBox12;
    private javax.swing.JCheckBox jCheckBox13;
    private javax.swing.JCheckBox jCheckBox2;
    private javax.swing.JCheckBox jCheckBox3;
    private javax.swing.JCheckBox jCheckBox4;
    public javax.swing.JCheckBox jCheckBox5;
    public javax.swing.JCheckBox jCheckBox6;
    private javax.swing.JCheckBox jCheckBox7;
    private javax.swing.JCheckBox jCheckBox8;
    private javax.swing.JCheckBox jCheckBox9;
    private javax.swing.JColorChooser jColorChooser1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel13;
    private javax.swing.JLabel jLabel14;
    private javax.swing.JLabel jLabel15;
    private javax.swing.JLabel jLabel16;
    private javax.swing.JLabel jLabel17;
    private javax.swing.JLabel jLabel18;
    private javax.swing.JLabel jLabel19;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel20;
    private javax.swing.JLabel jLabel21;
    private javax.swing.JLabel jLabel22;
    private javax.swing.JLabel jLabel23;
    private javax.swing.JLabel jLabel24;
    private javax.swing.JLabel jLabel25;
    private javax.swing.JLabel jLabel26;
    private javax.swing.JLabel jLabel27;
    private javax.swing.JLabel jLabel28;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JPanel jPanel4;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTabbedPane jTabbedPane1;
    private javax.swing.JTextField jTextField2;
    public javax.swing.JLabel lbl_formatOperationDate;
    private javax.swing.JButton localSoilButton;
    protected javax.swing.JButton manOpDB_Button;
    protected javax.swing.JButton manSkel_Button;
    protected javax.swing.JButton manTemplate_Button;
    protected javax.swing.JButton manTemplate_ButtonSave;
    private javax.swing.JLabel maxOrganicDepthUnits;
    protected javax.swing.JButton mcrewDir_Button;
    private usda.weru.util.MeasurableField<Length> organicMaxDepth;
    protected javax.swing.JButton projectsDir_Button;
    protected javax.swing.JButton soilDB_Button;
    protected javax.swing.JButton soilOrganicFile_Button;
    private javax.swing.JLabel userFuelFile;
    private javax.swing.JLabel userFuelFileLabel;
    private usda.weru.util.MeasurableField<Length> windRadiusField;
    private javax.swing.JLabel windRadiusLabel;
    private javax.swing.JLabel windRadiusUnits;
    private usda.weru.weps.location.chooser.AllowedStationModeChooser windgenModes;
    private javax.swing.JLabel windgenPrecision;
    private org.jdesktop.beansbinding.BindingGroup bindingGroup;
    // End of variables declaration//GEN-END:variables

    static final protected TreeMap<String, String> optionsDateFormat;

    static {
        optionsDateFormat = new TreeMap<>();
        optionsDateFormat.put("Month Day, Rotation Year", "MMM dd, yy");
        optionsDateFormat.put("Day, Month Rotation Year", "dd MMM yy");
        optionsDateFormat.put("Rotation Year-Month-Day", "yy-MMM-dd");
    }

    protected Map<String, String> HT_changes = new HashMap<>();
    protected Vector<JTextField> HT_intFields = new Vector<>();

    protected PropertyChangeSupport localChanges = new PropertyChangeSupport(this);

    public void putChange(String propertyName, String value) {
        Object oldValue = getValue(propertyName);
        if (isChangedValue(propertyName, value)) {
            HT_changes.put(propertyName, value);
            localChanges.firePropertyChange(propertyName, value, oldValue);
        }

        Collection<Component> components = propertyLoader.getComponentsForProperty(propertyName);
        if (components != null) {
            for (Component c : components) {
                applyParameterErrorColoring(c);
            }
        }
    }

    private boolean isChangedValue(String propertyName, String newValue) {
        String oldValue = getValue(propertyName);
        if (oldValue != null) {
            return !oldValue.equals(newValue);
        } else if (newValue != null) {
            return !newValue.equals(oldValue);
        } else {
            //both null
            return false;
        }
    }

    {
        boolean add = HT_intFields.add(this.JTF_debugCrop);
        add = HT_intFields.add(this.JTF_debugDec);
        add = HT_intFields.add(this.JTF_debugEro);
        add = HT_intFields.add(this.JTF_debugHydro);
        add = HT_intFields.add(this.JTF_debugMan);
        add = HT_intFields.add(this.JTF_debugSoil);
        add = HT_intFields.add(this.JTF_detCrop);
        add = HT_intFields.add(this.JTF_detDec);
        add = HT_intFields.add(this.JTF_detEro);
        add = HT_intFields.add(this.JTF_detHydro);
        add = HT_intFields.add(this.JTF_detMan);
        add = HT_intFields.add(this.JTF_detSoil);
        add = HT_intFields.add(this.JTF_runLength);
        add = HT_intFields.add(this.JTF_timeSteps);
        add = HT_intFields.add(this.JTF_daysKeepLog);
        add = HT_intFields.add(this.JTF_ttDismiss);
        add = HT_intFields.add(this.JTF_ttInit);
    }

    protected Vector<JTextField> HT_doubleFields = new Vector<>();

    {
        boolean add = HT_doubleFields.add(this.JTF_omThreshold);
    }

    protected boolean checkNumericField(JTextField jtf) {
        if (HT_intFields.contains(jtf)) {
            try {
                Integer.parseInt(jtf.getText().trim());
                return true; // parse was successfull
            } catch (NumberFormatException nfe) {
                int res = JOptionPane.showConfirmDialog(this,
                        "Invalid character in integer field",
                        "Not a number",
                        JOptionPane.OK_CANCEL_OPTION,
                        JOptionPane.ERROR_MESSAGE);
                if (res == JOptionPane.OK_OPTION) {
                    Util.setFocus(jtf);
                    return false;
                }
            }
        } else if (HT_doubleFields.contains(jtf)) {
            try {
                Double.parseDouble(jtf.getText().trim());
                return true; // parse was successfull
            } catch (NumberFormatException nfe) {
                int res = JOptionPane.showConfirmDialog(this,
                        "Invalid character in double field",
                        "Not a number",
                        JOptionPane.OK_CANCEL_OPTION,
                        JOptionPane.ERROR_MESSAGE);
                if (res == JOptionPane.OK_OPTION) {
                    Util.setFocus(jtf);
                    return false;
                }
            }

        }
        return true;
    }

    protected static final Logger logger = Logger.getLogger(ConfigPanel_n.class);
    protected String measurementUnits = Util.SIUnits;
    protected double windRadius = 0.0;
    protected double cliRadius = 0.0;
    protected HelpSet hs;
    protected PropertyChangeSupport changes;
    protected LoadProperties propertyLoader = null;
    /**
     * Help broker object for the context sensitive and generic application level help from the UI screens.
     */
    public HelpBroker hb;    //Date format options

    private void init() {
        //setup all the measurable fields
        applyParameterUnits(this);

        propertyLoader = new LoadProperties();
        logger.debug("Applying property loader to config panel...");
        propertyLoader.setupPropertyHashtable(getRootPane());
        logger.debug("Done applying property loader to config panel.");

        changes = new PropertyChangeSupport(this);
        changes.addPropertyChangeListener(new PropertyChangeListener() {

            @Override
            public void propertyChange(PropertyChangeEvent evt) {
                firePropertyChange(evt.getPropertyName(), evt.getOldValue(), evt.getNewValue());
                Collection<Component> components = propertyLoader.getComponentsForProperty(evt.getPropertyName());
                if (components != null) {
                    for (Component c : components) {
                        applyParameterErrorColoring(c);
                    }
                }
            }
        });
        //Setting the Icon Image in the title bar
        setIconImage(About.getWeruIconImage());

        addHelp();

        //Add date options to the config combo boxes
        Iterator<String> iKeys = optionsDateFormat.keySet().iterator();
        String keyValue;
        while (iKeys.hasNext()) {
            keyValue = iKeys.next();
            JCB_formatOperationDate.addItem(keyValue);
        }
        JTP_main.setSelectedIndex(0);

        applyParameterAccessControls(this);
        applyParameterErrorColoring(this);
        
        doServerControlInit();

    }

    /**
     * This method adds data from the help file to the different labels, buttons, 
     * text field, etc. as tootltip help or context sensitive help which is to make the 
     * end user understand its functionality and usability.
     */
    private void addHelp() {

        String jarFilePath = "jar/WepsHelp.jar";
        String dirFilePath = "help/MasterWeps.hs";
        TFile file_jar = new TFile(jarFilePath);
        TFile file_dir = new TFile(dirFilePath);
        if (file_jar.exists()) {
            //System.out.println("weps:addHelp-jar file found");
            jarHelp(jarFilePath);
        } else if (file_dir.exists()) {
            //System.out.println("weps:addhelp-dir help file found");
            dirHelp(dirFilePath);
        } else {
            //System.out.println("weps:addHelp-There are no help files");
        }

    } //end of addhelp()

    /**
     * This method provides the jarFile that the help system for this GUI could use. 
     * @param jarFilePath The jar file system path that tells where the file resides. 
     */
    private void jarHelp(String jarFilePath) {

        //System.out.println("weps:jarHelp-we are executing from here"); 
        hs = getHelpSet(jarFilePath);
        if (hs != null) {
            addCSH(hs);
        } else {
            //System.out.println("Can't find the helpSet-file.");
        }

    } //end of jarHelp

    /**
     * This method gets the directory help system for the referenced GUI object.
     * @param dirFilePath The system directory path string for getting the help 
     * system in running.
     */
    private void dirHelp(String dirFilePath) {

        //System.out.println("weps:dirHelp-we are executing from here");
        URL hsURL;
        try {
            hsURL = new URL((new TFile(".")).toURI().toURL(), dirFilePath);
        } catch (MalformedURLException ex) {
            java.util.logging.Logger.getLogger(ConfigPanel_n.class.getName()).log(Level.SEVERE, null, ex);
            return;
        }
        try {
            hs = new HelpSet(null, hsURL);
            addCSH(hs);
        } catch (HelpSetException ex) {
            java.util.logging.Logger.getLogger(ConfigPanel_n.class.getName()).log(Level.SEVERE, null, ex);
        }
        //System.out.println("Found help set at " + hsURL);
        //new CSH.DisplayHelpFromSource(getHelpBroker()));

    } //end of dirHelp

    /**
     * Returns the helpset file which is included in the jar file
     * @param jarFilePath The jar file system path that tells where the file resides.
     * @return HelpSet The object that stores all the notes and tooltiptext strings 
     * needed for the user help on the components descriptions.
     * 
     */
    protected HelpSet getHelpSet(String jarFilePath) {

        HelpSet hs2 = null;
        // MEH: need to use canonical or absolute path (not relative) in order for System.setProperty("user.dir" .... to function
        // need this so the -working option works, so we can function in s WebStart scenario
        jarFilePath = new TFile(jarFilePath).getCanOrAbsPath();
        

        String hsName = null;
        JarFile jar;
        try {
            jar = new JarFile(jarFilePath);
        } catch (java.io.IOException ex) {
            java.util.logging.Logger.getLogger(ConfigPanel_n.class.getName()).log(Level.SEVERE, null, ex);
            return null;
        }
        Enumeration<JarEntry> entries = jar.entries();
        while (entries.hasMoreElements()) {
            ZipEntry entry = (ZipEntry) entries.nextElement();
            String entryName = entry.getName();
            if (entryName.endsWith(".hs")) {
                hsName = entryName;
                break;
            }
        }
        URL url[] = getURLs("file:" + jarFilePath);
        //ClassLoader cl = new URLClassLoader(url);
        // For Webstart, need to pass the context loader as parent, default is system loader which fails in webstart
        ClassLoader cl = new URLClassLoader(url,Thread.currentThread().getContextClassLoader());
        URL hsUrl = HelpSet.findHelpSet(cl, hsName);
        try {
            hs2 = new HelpSet(cl, hsUrl);
        } catch (HelpSetException ex) {
            java.util.logging.Logger.getLogger(ConfigPanel_n.class.getName()).log(Level.SEVERE, null, ex);
            return null;
        }

        return hs2;
    }

    /**
     * This function generates a URL from a string and then puts
     * it into a URL array
     * @param The string that represents the resource location.
     * @return URL[] The array that stores the resource objects at the specified 
     * location.
     */
    private URL[] getURLs(String spec) {
        Vector<URL> v = new Vector<>();
        try {
            URL url = new URL(spec);
            v.addElement(url);
        } catch (MalformedURLException ex) {
            //System.err.println("cannot create URL for "+spec);
        }
        URL[] back = v.toArray(new URL[1]);
        return back;
    }

    /**
     * This method adds data for the context sensitive help provided on these panels 
     * by creating a helpbroker to assist itself in linking the appropriatre .html pages
     * by making it by making it accessible on user's request to understand all about
     * itself.
     * @param hs The help system/set object necessary to be provided for creating
     * the help broker for the application to be able to provide the context sensitive
     * help on each component sitting on the GUI.
     */
    private void addCSH(HelpSet hs) {
        hb = hs.createHelpBroker();
        hb.enableHelpKey(getRootPane(), "mnuConfiguration_html", hs);
        ActionListener helper = new CSH.DisplayHelpFromSource(hb);
        //System.out.println("I am in the WEPS addHelp()" + helper);
        JB_Help.addActionListener(helper);
        // If in future required for Context Sensitive Help	
        //helpButton.addActionListener(new CSH.DisplayHelpAfterTracking(hs2,"javax.help.Popup",null));
        // for all labels/fields in the Executables tab
        CSH.setHelpIDString(JLabel1, "configWindGen_html");
        CSH.setHelpIDString(JTF_winExe, "configWindGen_html");
        CSH.setHelpIDString(JLabel2, "configWindGen_html");
        CSH.setHelpIDString(JTF_winCmd, "configWindGen_html");
        CSH.setHelpIDString(JLabel3, "configCliGen_html");
        CSH.setHelpIDString(JTF_cliExe, "configCliGen_html");
        CSH.setHelpIDString(JLabel4, "configCliGen_html");
        CSH.setHelpIDString(JTF_cliCmd, "configCliGen_html");
        CSH.setHelpIDString(JLabel5, "configWEPS_html");
        CSH.setHelpIDString(JTF_wepsExe, "configWEPS_html");
        CSH.setHelpIDString(JLabel6, "configWEPS_html");
        // Text field and label for Weps calibration Cmd
        CSH.setHelpIDString(JTF_wepsCmd, "configWEPS_html");
        CSH.setHelpIDString(JL_calWepsCmd, "configWEPS_html");

        CSH.setHelpIDString(JTF_calWepsCmd, "configWEPS_html");
        CSH.setHelpIDString(JP_Weps, "configWEPS_html");

        // for all labels/fields in the Directories tab
        CSH.setHelpIDString(JLabel7, "configDirectories_html");
        CSH.setHelpIDString(JTF_manTemp, "configDirectories_html");
        CSH.setHelpIDString(JLabel8, "configDirectories_html");
        CSH.setHelpIDString(JTF_manSkel, "configDirectories_html");
        CSH.setHelpIDString(JLabel9, "configDirectories_html");
        CSH.setHelpIDString(JTF_manOperDB, "configDirectories_html");
        CSH.setHelpIDString(JLabel10, "configDirectories_html");
        CSH.setHelpIDString(JTF_cropDB, "configDirectories_html");
        CSH.setHelpIDString(JLabel34, "configDirectories_html");
        CSH.setHelpIDString(JTF_MCREW, "configDirectories_html");
        CSH.setHelpIDString(JLabel11, "configDirectories_html");
        CSH.setHelpIDString(JTF_soilDB, "configDirectories_html");
        // For the label and text field of Soil DB Spec.
        //CSH.setHelpIDString(JLabel38, "dirSoilDBSpec_html");
        //CSH.setHelpIDString(JTF_soilDBSpec, "dirSoilDBSpec_html");

        CSH.setHelpIDString(JLabel12, "configDirectories_html");
        CSH.setHelpIDString(JTF_projDir, "configDirectories_html");

        CSH.setHelpIDString(JP_Directories, "configDirectories_html");

        // for all labels/fields in the Miscellaneous tab
        CSH.setHelpIDString(JLabel27, "configDisplay_html");

        CSH.setHelpIDString(windRadiusField, "configDisplay_html");
        CSH.setHelpIDString(windRadiusLabel, "configDisplay_html");
        CSH.setHelpIDString(windRadiusUnits, "configDisplay_html");

        CSH.setHelpIDString(cligenRadiusField, "configDisplay_html");
        CSH.setHelpIDString(cligenRadiusLabel, "configDisplay_html");
        CSH.setHelpIDString(cligenRadiusUnits, "configDisplay_html");

        CSH.setHelpIDString(JLabel35, "configDisplay_html");
        // For the label and text field of Initial tool tip delay
        CSH.setHelpIDString(JLabel36, "configDisplay_html");
        CSH.setHelpIDString(JTF_ttInit, "configDisplay_html");
        // For the label and text field of Dismiss of tool tip delay
        CSH.setHelpIDString(JLabel37, "configDisplay_html");
        CSH.setHelpIDString(JTF_ttDismiss, "configDisplay_html");

        CSH.setHelpIDString(JXB_latLon, "configDisplay_html");
        CSH.setHelpIDString(JXB_stateCounty, "configDisplay_html");
        CSH.setHelpIDString(JXB_elevation, "configDisplay_html");
        CSH.setHelpIDString(JXB_map, "configDisplay_html");
        CSH.setHelpIDString(JXB_McrewEdit, "configDisplay_html");
        CSH.setHelpIDString(JRB_english, "configDisplay_html");
        CSH.setHelpIDString(JRB_metric, "configDisplay_html");
        CSH.setHelpIDString(JLabel31, "configDisplay_html");
        CSH.setHelpIDString(JTF_timeSteps, "configDisplay_html");
        CSH.setHelpIDString(JP_Display, "configDisplay_html");

        // for all labels/fields in the Output tab
        CSH.setHelpIDString(JLabel17, "configReporting_html");
        CSH.setHelpIDString(JRB_1, "configReporting_html");
        CSH.setHelpIDString(JRB_2, "configReporting_html");
        CSH.setHelpIDString(JRB_3, "outReportPeriod_html");
        CSH.setHelpIDString(JRB_4, "configReporting_html");
        CSH.setHelpIDString(JLabel18, "configReporting_html");
        CSH.setHelpIDString(JLabel19, "configReporting_html");
        /*
         CSH.setHelpIDString(JLabel20, "outSubmodelReports");
         CSH.setHelpIDString(JCB_hydro, "outSubHydrology");
         CSH.setHelpIDString(JCB_soil, "outSubSoil");
         CSH.setHelpIDString(JCB_man, "outSubMan");
         CSH.setHelpIDString(JCB_crop, "outSubCrop");
         CSH.setHelpIDString(JCB_dec, "outSubDec");
         CSH.setHelpIDString(JCB_ero, "outSubEro_html");
         */
        CSH.setHelpIDString(JLabel21, "configReporting_html");
        CSH.setHelpIDString(JTF_detHydro, "configReporting_html");
        CSH.setHelpIDString(JLabel22, "configReporting_html");
        CSH.setHelpIDString(JTF_detSoil, "configReporting_html");
        CSH.setHelpIDString(JLabel23, "configReporting_html");
        CSH.setHelpIDString(JTF_detMan, "configReporting_html");
        CSH.setHelpIDString(JLabel24, "configReporting_html");
        CSH.setHelpIDString(JTF_detCrop, "configReporting_html");
        CSH.setHelpIDString(JLabel25, "configReporting_html");
        CSH.setHelpIDString(JTF_detDec, "configReporting_html");
        CSH.setHelpIDString(JLabel26, "configReporting_html");
        CSH.setHelpIDString(JTF_detEro, "configReporting_html");
        CSH.setHelpIDString(JP_Reporting, "configReporting_html");

        // for all labels/fields in the Email tab
        CSH.setHelpIDString(JLabel13, "configEmail_html");
        CSH.setHelpIDString(JTF_emailSender, "configEmail_html");
        CSH.setHelpIDString(g_serverNameLabel, "configEmail_html");
        CSH.setHelpIDString(JTF_emailHost, "configEmail_html");
        CSH.setHelpIDString(JLabel15, "configEmail_html");
        CSH.setHelpIDString(JTF_emailWeps, "configEmail_html");
        CSH.setHelpIDString(JLabel16, "configEmail_html");
        CSH.setHelpIDString(JTF_emailBugs, "configEmail_html");
        CSH.setHelpIDString(JP_Email, "configEmail_html");

        // for all labels/fields in the Run tab
        CSH.setHelpIDString(JLabel30, "configRun_html");
        CSH.setHelpIDString(JRB_NRCS, "configRun_html");
        CSH.setHelpIDString(JRB_dates, "configRun_html");
        CSH.setHelpIDString(JRB_cycle, "configRun_html");
        CSH.setHelpIDString(JL_runLength, "configRun_html");
        CSH.setHelpIDString(JTF_runLength, "configRun_html");
        //CSH.setHelpIDString(JLabel29, "runAltWeather_html");
        //CSH.setHelpIDString(JCB_wind, "runAltWeather_html");
        //CSH.setHelpIDString(JCB_climate, "runAltWeather_html");
        CSH.setHelpIDString(JP_Run, "configRun_html");

        //CSH.setHelpIDString(JBGP_runType, "runRunType");
        /*       
         CSH.setHelpIDString(JTF_windFile, "runAltWeather");
         CSH.setHelpIDString(JB_windFile, "runAltWeather");
         CSH.setHelpIDString(JCB_climate, "runAltWeather");
         CSH.setHelpIDString(JTF_climateFile, "runAltWeather");
         CSH.setHelpIDString(JB_climateFile, "runAltWeather");
         CSH.setHelpIDString(JCB_subdaily, "runAltWeather");
         CSH.setHelpIDString(JTF_subdailyFile, "runAltWeather");
         CSH.setHelpIDString(JB_subdailyFile, "runAltWeather");
         */
    }//end of addCSH

    private void applyParameterUnits(Component component) {
        if (component instanceof MeasurableField) {
            @SuppressWarnings("unchecked")
            final MeasurableField<Quantity> mf = (MeasurableField<Quantity>) component;
            final Unit<Quantity> units = ConfigData.getDefault().getMeasureableUnit(mf.getName());
            final Unit<Quantity> altUnits = ConfigData.getDefault().getMeasureableAlternativeUnit(mf.getName());

            if (JRB_metric.isSelected()) {
                mf.setUnits(units);
            } else {
                mf.setUnits(altUnits);
            }

            JRB_metric.addItemListener(new ItemListener() {

                @Override
                public void itemStateChanged(ItemEvent e) {
                    if (JRB_metric.isSelected()) {
                        mf.setUnits(units);
                    } else {
                        mf.setUnits(altUnits);
                    }
                }
            });

        } else if (component instanceof Container) {
            Container container = (Container) component;
            for (Component child : container.getComponents()) {
                applyParameterUnits(child);
            }
        }
    }

    public void applyParameterAccessControls(Component component) {
        if (component instanceof Container) {
            Container container = (Container) component;
            for (Component c : container.getComponents()) {
                applyParameterAccessControls(c);
            }
        }

        if (!this.equals(component)) {
            String name = parseComponentName(component.getName());
            if (name == null) {
                return;
            }

            ConfigData.AccessLevel level = parseLevel(name);

            switch (level) {
                case Write:
                    component.setVisible(true);
                    component.setEnabled(true);
                    break;
                case Read:
                    component.setVisible(true);
                    if (component instanceof JTextField) {
                        JTextField jtf = (JTextField) component;
                        jtf.setEditable(false);
                        jtf.setEnabled(true);
                        component.setBackground(Color.LIGHT_GRAY);
                    } else {
                        component.setEnabled(false);
                    }
                    break;
                case Hidden:
                    component.setVisible(false);
                    component.setEnabled(false);
                    walkUpHiddenTree(component.getParent());
                    break;
                default:
            }
        }
    }

    private void walkUpHiddenTree(Container c) {
        if (c != null && isEverythingHidden(c)) {
            c.setVisible(false);
            if (JTP_main.equals(c.getParent())) {
                JTP_main.remove(c);
            } else {
                walkUpHiddenTree(c.getParent());
            }
        }

    }

    private boolean isEverythingHidden(Container c) {
        for (Component c2 : c.getComponents()) {
            if (c2.isVisible()) {
                return false;
            }
        }
        return true;
    }

    public void applyParameterErrorColoring(Component component) {
        if (component instanceof Container) {
            Container container = (Container) component;
            for (Component c : container.getComponents()) {
                applyParameterErrorColoring(c);
            }
        }
        try {
            if (!this.equals(component)) {
                if (component instanceof JTextField) {
                    String name = parseComponentName(component.getName());

                    ConfigData.FileConfigurationOption meta = getConfigData().getFileConfigurationOption(name);
                    if (meta != null) {
                        if (meta.required()) {
                            // test if the value exists as a file
                            TFile parentFile = null;
                            String parentOption = meta.parentOption();
                            if (parentOption != null && parentOption.trim().length() > 0) {
                                String parentPath = getValue(parentOption);
                                if (parentPath != null) {
                                    parentFile = new TFile(Util.parse(parentPath));
                                }
                            }

                            String path = getValue(name);
                            boolean error = false;
                            if (path != null) {
                                TFile file = new TFile(Util.parse(path));
                                if (!file.isAbsolute() && parentFile != null) {
                                    file = new TFile(parentFile, Util.parse(path));
                                }
                                // MEH need a full path for webstart
                                if (!file.isAbsolute()) {
                                    file = file.getCanOrAbsFile();
                                }

                                error = !file.exists();
                            }

                            if (error) {
                                component.setBackground(Color.PINK);
                                c_componentsWithErrors.add((JTextField) component);

                            } else {
                                ConfigData.AccessLevel level = parseLevel(name);
                                switch (level) {
                                    case Read:
                                        component.setBackground(Color.LIGHT_GRAY);
                                        break;
                                    default:
                                        component.setBackground(Color.WHITE);
                                        break;
                                }
                                c_componentsWithErrors.remove((JTextField) component);
                            }

                        }
                    }
                }
            }
        } catch (Exception e) {
            logger.error("Unable to test all configuration options.", e);
        }
    }

    private ConfigData.AccessLevel parseLevel(String name) {
        if (name == null) {
            return null;
        }
        ConfigData.AccessLevel level = null;
        String[] names = name.split(";");
        for (String splitName : names) {
            ConfigData.AccessLevel test = ConfigData.getDefault().getAccessLevel(splitName);
            level = ConfigData.AccessLevel.higher(level, test);
        }

        return level;
    }

    private String parseComponentName(String name) {
        if (name == null) {
            return null;
        }
        int index = name.indexOf(":");
        if (index > 0) {
            name = name.substring(0, index);
        }
        return name;
    }

    private String getValue(String propertyName) {
        String value = HT_changes.get(propertyName);
        if (value == null) {
            value = getConfigData().getData(propertyName);
        }
        return value;
    }
}
