Example usage for javax.swing WindowConstants EXIT_ON_CLOSE

List of usage examples for javax.swing WindowConstants EXIT_ON_CLOSE

Introduction

In this page you can find the example usage for javax.swing WindowConstants EXIT_ON_CLOSE.

Prototype

int EXIT_ON_CLOSE

To view the source code for javax.swing WindowConstants EXIT_ON_CLOSE.

Click Source Link

Document

The exit application default window close operation.

Usage

From source file:edu.ku.brc.specify.BackupAndRestoreApp.java

/**
 * Tries to do the login, if doAutoLogin is set to true it will try without displaying a dialog
 * and if the login fails then it will display the dialog
 * @param userName single signon username (for application)
 * @param password single signon password (for application)
 * @param usrPwdProvider the provider/*from  w ww  . j  av a2  s  .c o m*/
 * @param engageUPPrefs indicates whether the username and password should be loaded and remembered by local prefs
 * @param doAutoLogin whether to try to automatically log the user in
 * @param doAutoClose whether it should automatically close the window when it is logged in successfully
 * @param useDialog use a Dialog or a Frame
 * @param listener a listener for when it is logged in or fails
 * @param iconName name of icon to use
 * @param title name
 * @param appName name
 * @param appIconName application icon name
 * @param helpContext help context for Help button on dialog
 */
public static DatabaseLoginPanel doLogin(final boolean engageUPPrefs,
        final MasterPasswordProviderIFace usrPwdProvider, final boolean doAutoClose,
        final DatabaseLoginListener listener, final String iconName, final String title, final String appName,
        final String appIconName, final String helpContext) //frame's icon name
{

    ImageIcon icon = IconManager.getIcon("AppIcon", IconManager.IconSize.Std32);
    if (StringUtils.isNotEmpty(appIconName)) {
        ImageIcon imgIcon = IconManager.getIcon(appIconName);
        if (imgIcon != null) {
            icon = imgIcon;
        }
    }

    // else
    class DBListener implements DatabaseLoginListener {
        protected JFrame frame;
        protected DatabaseLoginListener frameDBListener;
        protected boolean doAutoCloseOfListener;

        public DBListener(JFrame frame, DatabaseLoginListener frameDBListener, boolean doAutoCloseOfListener) {
            this.frame = frame;
            this.frameDBListener = frameDBListener;
            this.doAutoCloseOfListener = doAutoCloseOfListener;
        }

        public void loggedIn(final Window window, final String databaseName, final String userNameArg) {
            log.debug("UIHelper.doLogin[DBListener]");
            if (doAutoCloseOfListener) {
                frame.setVisible(false);
            }
            frameDBListener.loggedIn(window, databaseName, userNameArg);
        }

        public void cancelled() {
            frame.setVisible(false);
            frameDBListener.cancelled();
        }
    }
    JFrame.setDefaultLookAndFeelDecorated(false);

    JFrame frame = new JFrame(title);
    DatabaseLoginPanel panel = new DatabaseLoginPanel(null, null, false, usrPwdProvider,
            new DBListener(frame, listener, doAutoClose), false, false, title, appName, iconName, helpContext);

    panel.setAutoClose(doAutoClose);
    panel.setWindow(frame);
    frame.setContentPane(panel);
    frame.setIconImage(icon.getImage());
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    frame.pack();

    UIHelper.centerAndShow(frame);

    return panel;
}

From source file:dictionary.GUI.GUI_Main.java

/**
 * 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.//ww  w .  ja va2s .  co m
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

    frameMean = new javax.swing.JFrame();
    jScrollPane1 = new javax.swing.JScrollPane();
    fieldMean = new javax.swing.JEditorPane();
    buttonEdit = new javax.swing.JButton();
    buttonSave = new javax.swing.JButton();
    buttonDelete = new javax.swing.JButton();
    buttonExit = new javax.swing.JButton();
    frameEntries = new javax.swing.JFrame();
    jScrollPane3 = new javax.swing.JScrollPane();
    listEntries = new javax.swing.JList();
    frameAdd = new javax.swing.JFrame();
    fieldAddWord = new javax.swing.JTextField();
    jScrollPane2 = new javax.swing.JScrollPane();
    fieldAddMean = new javax.swing.JEditorPane();
    buttonAdd2 = new javax.swing.JButton();
    labelWord = new javax.swing.JLabel();
    buttonCloseAdd = new javax.swing.JButton();
    frameSetting = new javax.swing.JFrame();
    panelVoice = new javax.swing.JPanel();
    button1 = new javax.swing.JRadioButton();
    button2 = new javax.swing.JRadioButton();
    buttonCloseSetting = new javax.swing.JButton();
    buttonAboutUs = new javax.swing.JButton();
    buttonGroup1 = new javax.swing.ButtonGroup();
    frameCo = new javax.swing.JFrame();
    jLabel3 = new javax.swing.JLabel();
    jLabel4 = new javax.swing.JLabel();
    jLabel5 = new javax.swing.JLabel();
    jLabel6 = new javax.swing.JLabel();
    jLabel7 = new javax.swing.JLabel();
    jLabel8 = new javax.swing.JLabel();
    main = new javax.swing.JPanel();
    comboBoxEV = new javax.swing.JComboBox();
    fieldWord = new javax.swing.JTextField();
    labelDic = new javax.swing.JLabel();
    labelAuthor = new javax.swing.JLabel();
    buttonAdd = new javax.swing.JButton();
    buttonSetting = new javax.swing.JButton();
    traonl = new javax.swing.JButton();
    comboBoxOnl = new javax.swing.JComboBox();
    buttonSpeech = new javax.swing.JButton();
    buttonUndo = new javax.swing.JButton();
    buttonFind = new javax.swing.JButton();

    frameMean.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    frameMean.setTitle("Mean");
    frameMean.setLocation(new java.awt.Point(780, 0));
    frameMean.setName("frameMean"); // NOI18N
    frameMean.setUndecorated(true);
    frameMean.setSize(new java.awt.Dimension(500, 400));

    fieldMean.setEditable(false);
    fieldMean.setBackground(new java.awt.Color(204, 255, 204));
    fieldMean.setContentType("text/html"); // NOI18N
    fieldMean.setAutoscrolls(false);
    fieldMean.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyPressed(java.awt.event.KeyEvent evt) {
            fieldMeanKeyPressed(evt);
        }
    });
    jScrollPane1.setViewportView(fieldMean);

    buttonEdit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/edit.png"))); // NOI18N
    buttonEdit.setText("Edit");
    buttonEdit.setBorder(null);
    buttonEdit.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonEditActionPerformed(evt);
        }
    });

    buttonSave.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/save.png"))); // NOI18N
    buttonSave.setText("Save");
    buttonSave.setBorder(null);
    buttonSave.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonSaveActionPerformed(evt);
        }
    });

    buttonDelete.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/delete.png"))); // NOI18N
    buttonDelete.setText("Delete");
    buttonDelete.setBorder(null);
    buttonDelete.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonDeleteActionPerformed(evt);
        }
    });

    buttonExit.setText("Thot");
    buttonExit.setBorder(null);
    buttonExit.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonExitActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout frameMeanLayout = new javax.swing.GroupLayout(frameMean.getContentPane());
    frameMean.getContentPane().setLayout(frameMeanLayout);
    frameMeanLayout
            .setHorizontalGroup(
                    frameMeanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                    frameMeanLayout.createSequentialGroup().addContainerGap()
                                            .addComponent(buttonEdit, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    97, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGap(27, 27, 27)
                                            .addComponent(buttonDelete, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    97, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                    36, Short.MAX_VALUE)
                                            .addComponent(buttonSave, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    97, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGap(18, 18, 18)
                                            .addComponent(buttonExit, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    97, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGap(18, 18, 18))
                            .addComponent(jScrollPane1));
    frameMeanLayout.setVerticalGroup(frameMeanLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(frameMeanLayout.createSequentialGroup()
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 348,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(frameMeanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonEdit, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonDelete, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonSave, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonExit, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    frameEntries.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    frameEntries.setTitle("Entries");
    frameEntries.setAlwaysOnTop(true);
    frameEntries.setAutoRequestFocus(false);
    frameEntries.setLocation(new java.awt.Point(320, 300));
    frameEntries.setName("frameEntries"); // NOI18N
    frameEntries.setUndecorated(true);
    frameEntries.setResizable(false);
    frameEntries.setSize(new java.awt.Dimension(180, 220));

    listEntries.setFont(new java.awt.Font("Tahoma", 0, 16)); // NOI18N
    listEntries.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
    listEntries.setAutoscrolls(false);
    listEntries.setVerifyInputWhenFocusTarget(false);
    listEntries.setVisibleRowCount(6);
    listEntries.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            listEntriesMouseClicked(evt);
        }
    });
    listEntries.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyPressed(java.awt.event.KeyEvent evt) {
            listEntriesKeyPressed(evt);
        }
    });
    jScrollPane3.setViewportView(listEntries);

    javax.swing.GroupLayout frameEntriesLayout = new javax.swing.GroupLayout(frameEntries.getContentPane());
    frameEntries.getContentPane().setLayout(frameEntriesLayout);
    frameEntriesLayout.setHorizontalGroup(
            frameEntriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                    jScrollPane3, javax.swing.GroupLayout.Alignment.TRAILING,
                    javax.swing.GroupLayout.DEFAULT_SIZE, 454, Short.MAX_VALUE));
    frameEntriesLayout
            .setVerticalGroup(frameEntriesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE));

    frameAdd.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    frameAdd.setTitle("Add Word");
    frameAdd.setLocation(new java.awt.Point(300, 100));
    frameAdd.setUndecorated(true);
    frameAdd.setSize(new java.awt.Dimension(451, 375));
    frameAdd.addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosed(java.awt.event.WindowEvent evt) {
            frameAddWindowClosed(evt);
        }
    });

    fieldAddMean.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Mean"));
    jScrollPane2.setViewportView(fieldAddMean);

    buttonAdd2.setText("Add");
    buttonAdd2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonAdd2ActionPerformed(evt);
        }
    });

    labelWord.setText("Word");

    buttonCloseAdd.setText("Close");
    buttonCloseAdd.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonCloseAddActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout frameAddLayout = new javax.swing.GroupLayout(frameAdd.getContentPane());
    frameAdd.getContentPane().setLayout(frameAddLayout);
    frameAddLayout.setHorizontalGroup(frameAddLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, frameAddLayout.createSequentialGroup()
                    .addContainerGap(33, Short.MAX_VALUE)
                    .addGroup(frameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 409,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(frameAddLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addGroup(frameAddLayout.createSequentialGroup().addComponent(labelWord)
                                            .addGap(29, 29, 29).addComponent(fieldAddWord,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 341,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addGroup(frameAddLayout.createSequentialGroup()
                                            .addComponent(buttonAdd2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    61, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGap(32, 32, 32).addComponent(buttonCloseAdd,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 69,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addGap(22, 22, 22)));
    frameAddLayout.setVerticalGroup(frameAddLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(frameAddLayout.createSequentialGroup().addGap(17, 17, 17)
                    .addGroup(frameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(fieldAddWord, javax.swing.GroupLayout.PREFERRED_SIZE, 29,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelWord))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, Short.MAX_VALUE)
                    .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 228,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addGroup(frameAddLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonAdd2, javax.swing.GroupLayout.PREFERRED_SIZE, 39,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonCloseAdd, javax.swing.GroupLayout.PREFERRED_SIZE, 39,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));

    jScrollPane2.getAccessibleContext().setAccessibleName("");
    jScrollPane2.getAccessibleContext().setAccessibleDescription("");
    jScrollPane2.getAccessibleContext().setAccessibleParent(frameMean);

    frameSetting.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    frameSetting.setTitle("Settings");
    frameSetting.setAlwaysOnTop(true);
    frameSetting.setLocation(new java.awt.Point(200, 100));
    frameSetting.setUndecorated(true);
    frameSetting.setSize(new java.awt.Dimension(400, 200));
    frameSetting.addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosed(java.awt.event.WindowEvent evt) {
            frameSettingWindowClosed(evt);
        }
    });

    panelVoice.setBorder(javax.swing.BorderFactory.createTitledBorder("Voice"));

    buttonGroup1.add(button1);
    button1.setSelected(true);
    button1.setText("Female");
    button1.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            button1ItemStateChanged(evt);
        }
    });

    buttonGroup1.add(button2);
    button2.setText("Male");
    button2.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            button1ItemStateChanged(evt);
        }
    });

    javax.swing.GroupLayout panelVoiceLayout = new javax.swing.GroupLayout(panelVoice);
    panelVoice.setLayout(panelVoiceLayout);
    panelVoiceLayout.setHorizontalGroup(panelVoiceLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelVoiceLayout.createSequentialGroup().addGap(70, 70, 70).addComponent(button1)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 110, Short.MAX_VALUE)
                    .addComponent(button2).addGap(82, 82, 82)));
    panelVoiceLayout
            .setVerticalGroup(panelVoiceLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                            panelVoiceLayout.createSequentialGroup().addContainerGap(22, Short.MAX_VALUE)
                                    .addGroup(panelVoiceLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(button1).addComponent(button2))
                                    .addGap(36, 36, 36)));

    buttonCloseSetting.setText("Close");
    buttonCloseSetting.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonCloseSettingActionPerformed(evt);
        }
    });

    buttonAboutUs.setText("About Us");
    buttonAboutUs.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
    buttonAboutUs.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonAboutUsActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout frameSettingLayout = new javax.swing.GroupLayout(frameSetting.getContentPane());
    frameSetting.getContentPane().setLayout(frameSettingLayout);
    frameSettingLayout.setHorizontalGroup(frameSettingLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                    frameSettingLayout.createSequentialGroup().addContainerGap()
                            .addComponent(panelVoice, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addContainerGap())
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                    frameSettingLayout.createSequentialGroup().addGap(28, 28, 28)
                            .addComponent(buttonAboutUs, javax.swing.GroupLayout.PREFERRED_SIZE, 81,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(buttonCloseSetting).addGap(31, 31, 31)));
    frameSettingLayout.setVerticalGroup(frameSettingLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(frameSettingLayout.createSequentialGroup().addGap(24, 24, 24)
                    .addComponent(panelVoice, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(frameSettingLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonAboutUs, javax.swing.GroupLayout.PREFERRED_SIZE, 38,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonCloseSetting, javax.swing.GroupLayout.PREFERRED_SIZE, 38,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(23, Short.MAX_VALUE)));

    frameCo.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    frameCo.setTitle("Author");
    frameCo.setAlwaysOnTop(true);
    frameCo.setLocation(new java.awt.Point(200, 100));
    frameCo.setSize(new java.awt.Dimension(433, 255));
    frameCo.addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosed(java.awt.event.WindowEvent evt) {
            frameCoWindowClosed(evt);
        }
    });

    jLabel3.setBackground(new java.awt.Color(0, 102, 102));
    jLabel3.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N
    jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel3.setText("Dictionary version 1.0");

    jLabel4.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
    jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel4.setText("Trn ?c Ton");

    jLabel5.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
    jLabel5.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel5.setText("Phm Minh ?c");

    jLabel6.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
    jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel6.setText("Nguyn ?nh Phi");
    jLabel6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

    jLabel7.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
    jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel7.setText("Phm Th Thu H?ng");

    jLabel8.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
    jLabel8.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel8.setText("Trnh Vn Thi");
    jLabel8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

    javax.swing.GroupLayout frameCoLayout = new javax.swing.GroupLayout(frameCo.getContentPane());
    frameCo.getContentPane().setLayout(frameCoLayout);
    frameCoLayout.setHorizontalGroup(frameCoLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                    Short.MAX_VALUE)
            .addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING,
                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addComponent(jLabel3, javax.swing.GroupLayout.Alignment.TRAILING,
                    javax.swing.GroupLayout.DEFAULT_SIZE, 433, Short.MAX_VALUE)
            .addComponent(jLabel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                    Short.MAX_VALUE)
            .addComponent(jLabel4, 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));
    frameCoLayout.setVerticalGroup(frameCoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(frameCoLayout.createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jLabel3).addGap(24, 24, 24).addComponent(jLabel4)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 29,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(1, 1, 1)
                    .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 29,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(1, 1, 1)
                    .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 29,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel7,
                            javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(24, 24, 24)));

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Dictionary English VietNam");
    setBackground(new java.awt.Color(255, 51, 0));
    setLocation(new java.awt.Point(200, 100));
    setResizable(false);
    setType(java.awt.Window.Type.POPUP);
    addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosing(java.awt.event.WindowEvent evt) {
            formWindowClosing(evt);
        }
    });

    comboBoxEV.setBackground(new java.awt.Color(240, 240, 240));
    comboBoxEV.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
    comboBoxEV.setModel(
            new javax.swing.DefaultComboBoxModel(new String[] { "English-VietNamese", "VietNamese-English" }));
    comboBoxEV.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
    comboBoxEV.setFocusable(false);
    comboBoxEV.setRequestFocusEnabled(false);
    comboBoxEV.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            comboBoxEVItemStateChanged(evt);
        }
    });

    fieldWord.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
    fieldWord.setCursor(new java.awt.Cursor(java.awt.Cursor.TEXT_CURSOR));
    fieldWord.setDoubleBuffered(true);
    fieldWord.setDragEnabled(true);
    fieldWord.setFocusCycleRoot(true);
    fieldWord.setFocusTraversalPolicyProvider(true);
    fieldWord.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fieldWordMouseClicked(evt);
        }
    });
    fieldWord.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyPressed(java.awt.event.KeyEvent evt) {
            fieldWordKeyPressed(evt);
        }

        public void keyReleased(java.awt.event.KeyEvent evt) {
            fieldWordKeyReleased(evt);
        }
    });

    labelDic.setFont(new java.awt.Font("Times New Roman", 0, 48)); // NOI18N
    labelDic.setForeground(new java.awt.Color(255, 102, 0));
    labelDic.setText("Dictionary");

    labelAuthor.setForeground(new java.awt.Color(255, 102, 0));
    labelAuthor.setText("by HTTPD");

    buttonAdd.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
    buttonAdd.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/add.png"))); // NOI18N
    buttonAdd.setText("Add");
    buttonAdd.setBorder(null);
    buttonAdd.setFocusPainted(false);
    buttonAdd.setMargin(new java.awt.Insets(0, 14, 0, 14));
    buttonAdd.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonAddActionPerformed(evt);
        }
    });

    buttonSetting.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
    buttonSetting.setText("Settings");
    buttonSetting.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
    buttonSetting.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonSettingActionPerformed(evt);
        }
    });

    traonl.setText("Google Transl");
    traonl.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            traonlActionPerformed(evt);
        }
    });

    comboBoxOnl.setBackground(new java.awt.Color(240, 240, 240));
    comboBoxOnl.setFont(new java.awt.Font("Times New Roman", 0, 14)); // NOI18N
    comboBoxOnl.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Offline", "Online" }));
    comboBoxOnl.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
    comboBoxOnl.setFocusable(false);
    comboBoxOnl.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            comboBoxOnlItemStateChanged(evt);
        }
    });

    buttonSpeech.setForeground(new java.awt.Color(255, 255, 255));
    buttonSpeech.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/speak.png"))); // NOI18N
    buttonSpeech.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonSpeechActionPerformed(evt);
        }
    });

    buttonUndo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/Undo.png"))); // NOI18N
    buttonUndo.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonUndoActionPerformed(evt);
        }
    });

    buttonFind.setIcon(new javax.swing.ImageIcon(getClass().getResource("/dictionary/images/find.png"))); // NOI18N
    buttonFind.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonFindActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout mainLayout = new javax.swing.GroupLayout(main);
    main.setLayout(mainLayout);
    mainLayout.setHorizontalGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(mainLayout.createSequentialGroup()
                    .addGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(buttonSetting, javax.swing.GroupLayout.Alignment.TRAILING,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)
                            .addComponent(buttonAdd, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(traonl, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(fieldWord, javax.swing.GroupLayout.PREFERRED_SIZE, 270,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addGroup(mainLayout.createSequentialGroup().addComponent(labelDic)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(labelAuthor))
                                    .addGroup(mainLayout.createSequentialGroup()
                                            .addComponent(comboBoxEV, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    164, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(comboBoxOnl, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    91, javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(mainLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(buttonSpeech, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(buttonFind, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                            Short.MAX_VALUE))
                            .addComponent(buttonUndo, javax.swing.GroupLayout.Alignment.TRAILING,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 49,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));
    mainLayout.setVerticalGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(mainLayout.createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(buttonAdd, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(buttonSetting, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                            traonl, javax.swing.GroupLayout.PREFERRED_SIZE, 51,
                            javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, mainLayout.createSequentialGroup()
                    .addGroup(mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(labelDic).addComponent(labelAuthor))
                    .addGap(0, 33, Short.MAX_VALUE).addGroup(
                            mainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(mainLayout.createSequentialGroup().addGroup(mainLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(
                                                    comboBoxEV, javax.swing.GroupLayout.PREFERRED_SIZE, 38,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(comboBoxOnl, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    35, javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addGap(0, 0, Short.MAX_VALUE))
                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, mainLayout
                                            .createSequentialGroup().addGap(0, 0, Short.MAX_VALUE)
                                            .addGroup(mainLayout
                                                    .createParallelGroup(
                                                            javax.swing.GroupLayout.Alignment.LEADING)
                                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                            mainLayout.createSequentialGroup().addComponent(
                                                                    buttonUndo,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 36,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addGap(6, 6, 6)
                                                                    .addComponent(
                                                                            buttonFind,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            38,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                                    .addComponent(buttonSpeech,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            38,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addGap(5, 5, 5))
                                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                            mainLayout.createSequentialGroup().addComponent(
                                                                    fieldWord,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 76,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addContainerGap()))))));

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
            .addComponent(main, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.PREFERRED_SIZE));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
            main, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
            javax.swing.GroupLayout.PREFERRED_SIZE));

    pack();
}

From source file:hpssim.grafica.HPSsim.java

private void initComponents() {
    // JFormDesigner - Component initialization - DO NOT MODIFY
    // //GEN-BEGIN:initComponents
    // Generated using JFormDesigner Evaluation license - Lgc M
    DefaultComponentFactory compFactory = DefaultComponentFactory.getInstance();
    HPSsimWindow = new JFrame();
    hpssimWindow = new JPanel();
    hpssimTab = new JTabbedPane();
    panelConfiguration = new JPanel();
    label10 = new JLabel();
    label3 = new JLabel();
    ncpu = new JTextField();
    label4 = new JLabel();
    ngpu = new JTextField();
    vSpacer1 = new JPanel(null);
    label11 = new JLabel();
    label2 = new JLabel();
    sliderSimulationTime = new JSlider();
    textFieldSimTime = new JLabel();
    label1 = new JLabel();
    sliderJob = new JSlider();
    textFieldNjob = new JLabel();
    label9 = new JLabel();
    textFieldQVGA = new JTextField();
    label43 = new JLabel();
    tex_mediaexe = new JTextField();
    checkBoxEndJob = new JCheckBox();
    label6 = new JLabel();
    comboBoxScheduler = new JComboBox<>();
    label8 = new JLabel();
    textFieldTimeSlice = new JTextField();
    label7 = new JLabel();
    comboBoxQueue = new JComboBox<>();
    vSpacer2 = new JPanel(null);
    label21 = new JLabel();
    sliderclassRate = new JSlider();
    labelclassRate = new JLabel();
    label12 = new JLabel();
    sliderRTJob = new JSlider();
    labelRT = new JLabel();
    label14 = new JLabel();
    sliderOpenCl = new JSlider();
    labelOPENCL = new JLabel();
    checkBox_enableLog = new JCheckBox();
    panelPerformance = new JPanel();
    separator1 = new JSeparator();
    tabbedPane1 = new JTabbedPane();
    panelCPU = new JPanel();
    labelCPUUsage = new JLabel();
    panelCPUQueue = new JPanel();
    tabbedPane2 = new JTabbedPane();
    panelGPU = new JPanel();
    labelGPUUsage = new JLabel();
    panelGPUQueue = new JPanel();
    panel2 = new JPanel();
    label18 = new JLabel();
    virtualTime = new JTextField();
    label5 = new JLabel();
    processiNelSistema = new JTextField();
    label17 = new JLabel();
    processiElaborazione = new JTextField();
    label16 = new JLabel();
    processiInCoda = new JTextField();
    label15 = new JLabel();
    ldavg_1 = new JTextField();
    label19 = new JLabel();
    ldavg_5 = new JTextField();
    label20 = new JLabel();
    ldavg_15 = new JTextField();
    panel3 = new JPanel();
    progressBar = new JProgressBar();
    panelGraph = new JPanel();
    graphPanel = new JPanel();
    label23 = new JLabel();
    label38 = new JLabel();
    text_ClassRate = new JTextField();
    label24 = new JLabel();
    button_CostanteCodaSuMedia = new JButton();
    label39 = new JLabel();
    button_ClassRateCodaSuMedia = new JButton();
    label25 = new JLabel();
    button_CostanteTempoMedioArrivo = new JButton();
    hSpacer1 = new JPanel(null);
    label40 = new JLabel();
    button_ClassRateTempoMedioArrivo = new JButton();
    label26 = new JLabel();
    label41 = new JLabel();
    label27 = new JLabel();
    label42 = new JLabel();
    label28 = new JLabel();
    label33 = new JLabel();
    label29 = new JLabel();
    label30 = new JLabel();
    label31 = new JLabel();
    label32 = new JLabel();
    button_CrescenteCodaSuMedia = new JButton();
    label34 = new JLabel();
    button_BurstCodaSuMedia = new JButton();
    button_CrescenteCarico = new JButton();
    label35 = new JLabel();
    button_BurstTempoMedioArrivo = new JButton();
    label36 = new JLabel();
    label37 = new JLabel();
    label22 = new JLabel();
    title1 = compFactory.createTitle("HPSsim 2.0 ");
    button1 = new JButton();
    okButton = new JButton();
    button3 = new JButton();
    dialog1 = new JDialog();
    button2 = new JButton();
    label13 = new JLabel();
    erroreLabel = new JLabel();
    Grafici = new JFrame();
    panelGraficoFinestra = new JPanel();

    //======== HPSsimWindow ========
    {/*from  w  w  w .  j av  a2s  . co  m*/
        HPSsimWindow.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        HPSsimWindow.setResizable(false);
        Container HPSsimWindowContentPane = HPSsimWindow.getContentPane();

        //======== hpssimWindow ========
        {
            hpssimWindow.setForeground(Color.blue);

            // JFormDesigner evaluation mark
            hpssimWindow.setBorder(new javax.swing.border.CompoundBorder(
                    new javax.swing.border.TitledBorder(new javax.swing.border.EmptyBorder(0, 0, 0, 0),
                            "JFormDesigner Evaluation", javax.swing.border.TitledBorder.CENTER,
                            javax.swing.border.TitledBorder.BOTTOM,
                            new java.awt.Font("Dialog", java.awt.Font.BOLD, 12), java.awt.Color.red),
                    hpssimWindow.getBorder()));
            hpssimWindow.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
                public void propertyChange(java.beans.PropertyChangeEvent e) {
                    if ("border".equals(e.getPropertyName()))
                        throw new RuntimeException();
                }
            });

            hpssimWindow.setLayout(null);

            //======== hpssimTab ========
            {

                //======== panelConfiguration ========
                {
                    panelConfiguration.setLayout(new TableLayout(
                            new double[][] { { 1, 70, 70, 70, 68, 70, 70, 74 }, { 0.01, 27, 21, 26, 27, 25, 25,
                                    25, 21, 21, TableLayout.PREFERRED, 12, TableLayout.PREFERRED, 22, 23 } }));
                    ((TableLayout) panelConfiguration.getLayout()).setHGap(5);
                    ((TableLayout) panelConfiguration.getLayout()).setVGap(5);

                    //---- label10 ----
                    label10.setText("Hardware");
                    label10.setFont(new Font("Segoe UI", Font.ITALIC, 16));
                    panelConfiguration.add(label10, new TableLayoutConstraints(1, 1, 7, 1,
                            TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));

                    //---- label3 ----
                    label3.setText("CPU");
                    label3.setFont(new Font("Segoe UI", Font.PLAIN, 12));
                    label3.setLabelFor(ncpu);
                    panelConfiguration.add(label3, new TableLayoutConstraints(1, 2, 1, 2,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- ncpu ----
                    ncpu.setText("4");
                    panelConfiguration.add(ncpu, new TableLayoutConstraints(2, 2, 3, 2,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label4 ----
                    label4.setText("GPU");
                    label4.setFont(new Font("Segoe UI", Font.PLAIN, 12));
                    label4.setLabelFor(ngpu);
                    panelConfiguration.add(label4, new TableLayoutConstraints(4, 2, 4, 2,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- ngpu ----
                    ngpu.setText("0");
                    panelConfiguration.add(ngpu, new TableLayoutConstraints(5, 2, 6, 2,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));
                    panelConfiguration.add(vSpacer1, new TableLayoutConstraints(1, 3, 7, 3,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label11 ----
                    label11.setText("Simulation");
                    label11.setFont(new Font("Segoe UI", Font.ITALIC, 16));
                    panelConfiguration.add(label11, new TableLayoutConstraints(1, 4, 7, 4,
                            TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));

                    //---- label2 ----
                    label2.setText("Sim Time");
                    panelConfiguration.add(label2, new TableLayoutConstraints(1, 5, 1, 5,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- sliderSimulationTime ----
                    sliderSimulationTime.setValue(100000);
                    sliderSimulationTime.setMaximum(1200000);
                    sliderSimulationTime.addChangeListener(new ChangeListener() {
                        @Override
                        public void stateChanged(ChangeEvent e) {
                            sliderSimulationTimeStateChanged(e);
                        }
                    });
                    panelConfiguration.add(sliderSimulationTime, new TableLayoutConstraints(2, 5, 6, 5,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- textFieldSimTime ----
                    textFieldSimTime.setText("100000 ms");
                    panelConfiguration.add(textFieldSimTime, new TableLayoutConstraints(7, 5, 7, 5,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label1 ----
                    label1.setText("Numero di job");
                    panelConfiguration.add(label1, new TableLayoutConstraints(1, 6, 1, 6,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.CENTER));

                    //---- sliderJob ----
                    sliderJob.setMaximum(20000);
                    sliderJob.addChangeListener(new ChangeListener() {
                        @Override
                        public void stateChanged(ChangeEvent e) {
                            sliderJobStateChanged(e);
                        }
                    });
                    panelConfiguration.add(sliderJob, new TableLayoutConstraints(2, 6, 6, 6,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- textFieldNjob ----
                    textFieldNjob.setText("50");
                    panelConfiguration.add(textFieldNjob, new TableLayoutConstraints(7, 6, 7, 6,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label9 ----
                    label9.setText("Media arrivo");
                    panelConfiguration.add(label9, new TableLayoutConstraints(1, 7, 1, 7,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- textFieldQVGA ----
                    textFieldQVGA.setText("230");
                    panelConfiguration.add(textFieldQVGA, new TableLayoutConstraints(2, 7, 2, 7,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label43 ----
                    label43.setText("Media exe");
                    panelConfiguration.add(label43, new TableLayoutConstraints(3, 7, 3, 7,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- tex_mediaexe ----
                    tex_mediaexe.setText("1000");
                    panelConfiguration.add(tex_mediaexe, new TableLayoutConstraints(4, 7, 4, 7,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- checkBoxEndJob ----
                    checkBoxEndJob.setText("End Job");
                    panelConfiguration.add(checkBoxEndJob, new TableLayoutConstraints(6, 7, 6, 7,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label6 ----
                    label6.setText("Scheduler");
                    panelConfiguration.add(label6, new TableLayoutConstraints(1, 9, 1, 9,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- comboBoxScheduler ----
                    comboBoxScheduler.setModel(new DefaultComboBoxModel<>(
                            new String[] { "Priority Round Robin", "Completely Fair Scheduler" }));
                    comboBoxScheduler.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent e) {
                            comboBoxSchedulerActionPerformed(e);
                        }
                    });
                    panelConfiguration.add(comboBoxScheduler, new TableLayoutConstraints(2, 9, 5, 9,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label8 ----
                    label8.setText("Time Slice");
                    panelConfiguration.add(label8, new TableLayoutConstraints(6, 9, 6, 9,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- textFieldTimeSlice ----
                    textFieldTimeSlice.setText("210");
                    panelConfiguration.add(textFieldTimeSlice, new TableLayoutConstraints(7, 9, 7, 9,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label7 ----
                    label7.setText("Queue");
                    panelConfiguration.add(label7, new TableLayoutConstraints(1, 10, 1, 10,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- comboBoxQueue ----
                    comboBoxQueue.setModel(new DefaultComboBoxModel<>(new String[] { "FIFO",
                            "Highest Priority First", "Shortest Job First", "Round Robin", "Random Queue" }));
                    panelConfiguration.add(comboBoxQueue, new TableLayoutConstraints(2, 10, 5, 10,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));
                    panelConfiguration.add(vSpacer2, new TableLayoutConstraints(1, 11, 7, 11,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label21 ----
                    label21.setText("Class Rate");
                    panelConfiguration.add(label21, new TableLayoutConstraints(1, 12, 1, 12,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- sliderclassRate ----
                    sliderclassRate.setValue(99);
                    sliderclassRate.addChangeListener(new ChangeListener() {
                        @Override
                        public void stateChanged(ChangeEvent e) {
                            sliderclassRateStateChanged(e);
                        }
                    });
                    panelConfiguration.add(sliderclassRate, new TableLayoutConstraints(2, 12, 4, 12,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- labelclassRate ----
                    labelclassRate.setText("99%");
                    panelConfiguration.add(labelclassRate, new TableLayoutConstraints(5, 12, 5, 12,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label12 ----
                    label12.setText("RT Job Prob");
                    panelConfiguration.add(label12, new TableLayoutConstraints(1, 13, 1, 13,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- sliderRTJob ----
                    sliderRTJob.setValue(45);
                    sliderRTJob.addChangeListener(new ChangeListener() {
                        @Override
                        public void stateChanged(ChangeEvent e) {
                            sliderRTJobStateChanged(e);
                        }
                    });
                    panelConfiguration.add(sliderRTJob, new TableLayoutConstraints(2, 13, 4, 13,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- labelRT ----
                    labelRT.setText("45%");
                    panelConfiguration.add(labelRT, new TableLayoutConstraints(5, 13, 5, 13,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- label14 ----
                    label14.setText("OpenCL Job ");
                    panelConfiguration.add(label14, new TableLayoutConstraints(1, 14, 1, 14,
                            TableLayoutConstraints.RIGHT, TableLayoutConstraints.FULL));

                    //---- sliderOpenCl ----
                    sliderOpenCl.setValue(20);
                    sliderOpenCl.addChangeListener(new ChangeListener() {
                        @Override
                        public void stateChanged(ChangeEvent e) {
                            sliderOpenClStateChanged(e);
                        }
                    });
                    panelConfiguration.add(sliderOpenCl, new TableLayoutConstraints(2, 14, 4, 14,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- labelOPENCL ----
                    labelOPENCL.setText("20%");
                    panelConfiguration.add(labelOPENCL, new TableLayoutConstraints(5, 14, 5, 14,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                    //---- checkBox_enableLog ----
                    checkBox_enableLog.setText("log");
                    panelConfiguration.add(checkBox_enableLog, new TableLayoutConstraints(7, 14, 7, 14,
                            TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));
                }
                hpssimTab.addTab("Configuration", panelConfiguration);

                //======== panelPerformance ========
                {

                    //======== tabbedPane1 ========
                    {

                        //======== panelCPU ========
                        {
                            panelCPU.setLayout(new BorderLayout());

                            //---- labelCPUUsage ----
                            labelCPUUsage.setText("0\\0");
                            labelCPUUsage.setHorizontalAlignment(SwingConstants.CENTER);
                            panelCPU.add(labelCPUUsage, BorderLayout.SOUTH);
                        }
                        tabbedPane1.addTab("Usage", panelCPU);

                        //======== panelCPUQueue ========
                        {
                            panelCPUQueue.setLayout(new BorderLayout());
                        }
                        tabbedPane1.addTab("Queue", panelCPUQueue);

                    }

                    //======== tabbedPane2 ========
                    {

                        //======== panelGPU ========
                        {
                            panelGPU.setLayout(new BorderLayout());

                            //---- labelGPUUsage ----
                            labelGPUUsage.setText("0\\0");
                            labelGPUUsage.setHorizontalAlignment(SwingConstants.CENTER);
                            panelGPU.add(labelGPUUsage, BorderLayout.SOUTH);
                        }
                        tabbedPane2.addTab("Usage", panelGPU);

                        //======== panelGPUQueue ========
                        {
                            panelGPUQueue.setLayout(new BorderLayout());
                        }
                        tabbedPane2.addTab("Queue", panelGPUQueue);

                    }

                    //======== panel2 ========
                    {
                        panel2.setLayout(new TableLayout(new double[][] {
                                { TableLayout.PREFERRED, TableLayout.FILL },
                                { TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED } }));

                        //---- label18 ----
                        label18.setText("Virtual Time");
                        panel2.add(label18, new TableLayoutConstraints(0, 0, 0, 0, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));
                        panel2.add(virtualTime, new TableLayoutConstraints(1, 0, 1, 0,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label5 ----
                        label5.setText("Processi nel sistema");
                        panel2.add(label5, new TableLayoutConstraints(0, 2, 0, 2, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));

                        //---- processiNelSistema ----
                        processiNelSistema.setText("0");
                        panel2.add(processiNelSistema, new TableLayoutConstraints(1, 2, 1, 2,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label17 ----
                        label17.setText("Processi in elaborazione");
                        panel2.add(label17, new TableLayoutConstraints(0, 3, 0, 3, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));

                        //---- processiElaborazione ----
                        processiElaborazione.setText("0");
                        panel2.add(processiElaborazione, new TableLayoutConstraints(1, 3, 1, 3,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label16 ----
                        label16.setText("Processi in coda");
                        panel2.add(label16, new TableLayoutConstraints(0, 4, 0, 4, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));

                        //---- processiInCoda ----
                        processiInCoda.setText("0");
                        panel2.add(processiInCoda, new TableLayoutConstraints(1, 4, 1, 4,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label15 ----
                        label15.setText("ldavg_1");
                        panel2.add(label15, new TableLayoutConstraints(0, 5, 0, 5, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));
                        panel2.add(ldavg_1, new TableLayoutConstraints(1, 5, 1, 5, TableLayoutConstraints.FULL,
                                TableLayoutConstraints.FULL));

                        //---- label19 ----
                        label19.setText("ldavg_5");
                        panel2.add(label19, new TableLayoutConstraints(0, 6, 0, 6, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));
                        panel2.add(ldavg_5, new TableLayoutConstraints(1, 6, 1, 6, TableLayoutConstraints.FULL,
                                TableLayoutConstraints.FULL));

                        //---- label20 ----
                        label20.setText("ldavg_15");
                        panel2.add(label20, new TableLayoutConstraints(0, 7, 0, 7, TableLayoutConstraints.RIGHT,
                                TableLayoutConstraints.FULL));
                        panel2.add(ldavg_15, new TableLayoutConstraints(1, 7, 1, 7, TableLayoutConstraints.FULL,
                                TableLayoutConstraints.FULL));
                    }

                    //======== panel3 ========
                    {
                        panel3.setLayout(new TableLayout(new double[][] {
                                { TableLayout.PREFERRED, TableLayout.PREFERRED },
                                { TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED } }));
                    }

                    GroupLayout panelPerformanceLayout = new GroupLayout(panelPerformance);
                    panelPerformance.setLayout(panelPerformanceLayout);
                    panelPerformanceLayout.setHorizontalGroup(panelPerformanceLayout.createParallelGroup()
                            .addGroup(panelPerformanceLayout.createSequentialGroup().addContainerGap()
                                    .addGroup(panelPerformanceLayout.createParallelGroup()
                                            .addComponent(separator1)
                                            .addGroup(panelPerformanceLayout.createSequentialGroup()
                                                    .addGroup(panelPerformanceLayout.createParallelGroup()
                                                            .addGroup(panelPerformanceLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(panel2,
                                                                            GroupLayout.PREFERRED_SIZE, 256,
                                                                            GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            LayoutStyle.ComponentPlacement.UNRELATED)
                                                                    .addGroup(panelPerformanceLayout
                                                                            .createParallelGroup()
                                                                            .addComponent(progressBar,
                                                                                    GroupLayout.DEFAULT_SIZE,
                                                                                    GroupLayout.DEFAULT_SIZE,
                                                                                    Short.MAX_VALUE)
                                                                            .addGroup(panelPerformanceLayout
                                                                                    .createSequentialGroup()
                                                                                    .addComponent(panel3,
                                                                                            GroupLayout.PREFERRED_SIZE,
                                                                                            256,
                                                                                            GroupLayout.PREFERRED_SIZE)
                                                                                    .addGap(0, 0,
                                                                                            Short.MAX_VALUE))))
                                                            .addGroup(panelPerformanceLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(tabbedPane1,
                                                                            GroupLayout.PREFERRED_SIZE, 261,
                                                                            GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            LayoutStyle.ComponentPlacement.UNRELATED)
                                                                    .addComponent(tabbedPane2,
                                                                            GroupLayout.PREFERRED_SIZE, 261,
                                                                            GroupLayout.PREFERRED_SIZE)))
                                                    .addContainerGap(8, Short.MAX_VALUE)))));
                    panelPerformanceLayout.setVerticalGroup(panelPerformanceLayout.createParallelGroup()
                            .addGroup(panelPerformanceLayout.createSequentialGroup()
                                    .addContainerGap(15, Short.MAX_VALUE)
                                    .addGroup(panelPerformanceLayout.createParallelGroup()
                                            .addComponent(tabbedPane2, GroupLayout.DEFAULT_SIZE, 218,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addComponent(tabbedPane1, GroupLayout.PREFERRED_SIZE, 218,
                                                    GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(separator1, GroupLayout.PREFERRED_SIZE,
                                            GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 10,
                                            Short.MAX_VALUE)
                                    .addGroup(panelPerformanceLayout
                                            .createParallelGroup(GroupLayout.Alignment.TRAILING, false)
                                            .addComponent(panel2, GroupLayout.PREFERRED_SIZE, 155,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addGroup(panelPerformanceLayout.createSequentialGroup()
                                                    .addComponent(progressBar, GroupLayout.DEFAULT_SIZE,
                                                            GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                    .addGap(18, 18, 18).addComponent(panel3,
                                                            GroupLayout.PREFERRED_SIZE, 119,
                                                            GroupLayout.PREFERRED_SIZE)))
                                    .addContainerGap()));
                }
                hpssimTab.addTab("Performance", panelPerformance);

                //======== panelGraph ========
                {

                    //======== graphPanel ========
                    {
                        graphPanel.setLayout(new TableLayout(new double[][] {
                                { TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED },
                                { 27, TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, 25, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED,
                                        TableLayout.PREFERRED, TableLayout.PREFERRED } }));

                        //---- label23 ----
                        label23.setText("Carico costante");
                        label23.setFont(label23.getFont().deriveFont(Font.BOLD | Font.ITALIC));
                        graphPanel.add(label23, new TableLayoutConstraints(0, 0, 1, 0,
                                TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));

                        //---- label38 ----
                        label38.setText("Classification Rate");
                        label38.setFont(label38.getFont().deriveFont(Font.BOLD | Font.ITALIC));
                        graphPanel.add(label38, new TableLayoutConstraints(5, 0, 6, 0,
                                TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));
                        graphPanel.add(text_ClassRate, new TableLayoutConstraints(7, 0, 7, 0,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label24 ----
                        label24.setText("Coda\\Media");
                        graphPanel.add(label24, new TableLayoutConstraints(0, 1, 0, 1,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_CostanteCodaSuMedia ----
                        button_CostanteCodaSuMedia.setText("Esegui");
                        button_CostanteCodaSuMedia.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_CostanteCodaSuMediaActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_CostanteCodaSuMedia, new TableLayoutConstraints(2, 1, 2, 1,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label39 ----
                        label39.setText("Coda\\Media");
                        graphPanel.add(label39, new TableLayoutConstraints(5, 1, 5, 1,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_ClassRateCodaSuMedia ----
                        button_ClassRateCodaSuMedia.setText("Esegui");
                        button_ClassRateCodaSuMedia.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_ClassRateCodaSuMediaActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_ClassRateCodaSuMedia, new TableLayoutConstraints(7, 1, 7, 1,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label25 ----
                        label25.setText("Tempo Medio Arrivo");
                        graphPanel.add(label25, new TableLayoutConstraints(0, 2, 0, 2,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_CostanteTempoMedioArrivo ----
                        button_CostanteTempoMedioArrivo.setText("Esegui");
                        button_CostanteTempoMedioArrivo.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_CostanteTempoMedioArrivoActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_CostanteTempoMedioArrivo, new TableLayoutConstraints(2, 2, 2, 4,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));
                        graphPanel.add(hSpacer1, new TableLayoutConstraints(3, 0, 3, 15,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label40 ----
                        label40.setText("Tempo Medio Arrivo");
                        graphPanel.add(label40, new TableLayoutConstraints(5, 2, 5, 2,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_ClassRateTempoMedioArrivo ----
                        button_ClassRateTempoMedioArrivo.setText("Esegui");
                        button_ClassRateTempoMedioArrivo.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_ClassRateTempoMedioArrivoActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_ClassRateTempoMedioArrivo, new TableLayoutConstraints(7, 2, 7, 4,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label26 ----
                        label26.setText("Troughput");
                        graphPanel.add(label26, new TableLayoutConstraints(0, 3, 0, 3,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label41 ----
                        label41.setText("Troughput");
                        graphPanel.add(label41, new TableLayoutConstraints(5, 3, 5, 3,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label27 ----
                        label27.setText("Carico");
                        graphPanel.add(label27, new TableLayoutConstraints(0, 4, 0, 4,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label42 ----
                        label42.setText("Carico");
                        graphPanel.add(label42, new TableLayoutConstraints(5, 4, 5, 4,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label28 ----
                        label28.setText("Carico Crescente");
                        label28.setFont(label28.getFont().deriveFont(Font.BOLD | Font.ITALIC));
                        graphPanel.add(label28, new TableLayoutConstraints(0, 5, 1, 5,
                                TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));

                        //---- label33 ----
                        label33.setText("Carico Burst");
                        label33.setFont(label33.getFont().deriveFont(Font.BOLD | Font.ITALIC));
                        graphPanel.add(label33, new TableLayoutConstraints(5, 5, 6, 5,
                                TableLayoutConstraints.CENTER, TableLayoutConstraints.FULL));

                        //---- label29 ----
                        label29.setText("Coda\\Media");
                        graphPanel.add(label29, new TableLayoutConstraints(0, 6, 0, 6,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label30 ----
                        label30.setText("Tempo Medio Arrivo");
                        graphPanel.add(label30, new TableLayoutConstraints(0, 7, 0, 7,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label31 ----
                        label31.setText("Troughput");
                        graphPanel.add(label31, new TableLayoutConstraints(0, 8, 0, 8,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label32 ----
                        label32.setText("Carico");
                        graphPanel.add(label32, new TableLayoutConstraints(0, 9, 0, 9,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_CrescenteCodaSuMedia ----
                        button_CrescenteCodaSuMedia.setText("Esegui");
                        button_CrescenteCodaSuMedia.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_CrescenteCodaSuMediaActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_CrescenteCodaSuMedia, new TableLayoutConstraints(2, 6, 2, 6,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label34 ----
                        label34.setText("Coda\\Media");
                        graphPanel.add(label34, new TableLayoutConstraints(5, 6, 5, 6,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_BurstCodaSuMedia ----
                        button_BurstCodaSuMedia.setText("Esegui");
                        button_BurstCodaSuMedia.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_BurstCodaSuMediaActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_BurstCodaSuMedia, new TableLayoutConstraints(7, 6, 7, 6,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_CrescenteCarico ----
                        button_CrescenteCarico.setText("Esegui");
                        button_CrescenteCarico.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_CrescenteCaricoActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_CrescenteCarico, new TableLayoutConstraints(2, 7, 2, 9,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label35 ----
                        label35.setText("Tempo Medio Arrivo");
                        graphPanel.add(label35, new TableLayoutConstraints(5, 7, 5, 7,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- button_BurstTempoMedioArrivo ----
                        button_BurstTempoMedioArrivo.setText("Esegui");
                        button_BurstTempoMedioArrivo.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent e) {
                                button_BurstTempoMedioArrivoActionPerformed(e);
                            }
                        });
                        graphPanel.add(button_BurstTempoMedioArrivo, new TableLayoutConstraints(7, 7, 7, 9,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label36 ----
                        label36.setText("Troughput");
                        graphPanel.add(label36, new TableLayoutConstraints(5, 8, 5, 8,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));

                        //---- label37 ----
                        label37.setText("Carico");
                        graphPanel.add(label37, new TableLayoutConstraints(5, 9, 5, 9,
                                TableLayoutConstraints.FULL, TableLayoutConstraints.FULL));
                    }

                    //---- label22 ----
                    label22.setText("Grafici");
                    label22.setFont(label22.getFont().deriveFont(label22.getFont().getStyle() | Font.BOLD,
                            label22.getFont().getSize() + 4f));

                    GroupLayout panelGraphLayout = new GroupLayout(panelGraph);
                    panelGraph.setLayout(panelGraphLayout);
                    panelGraphLayout.setHorizontalGroup(panelGraphLayout.createParallelGroup()
                            .addGroup(panelGraphLayout.createSequentialGroup().addGroup(panelGraphLayout
                                    .createParallelGroup()
                                    .addGroup(panelGraphLayout.createSequentialGroup().addGap(243, 243, 243)
                                            .addComponent(label22).addGap(0, 246, Short.MAX_VALUE))
                                    .addGroup(GroupLayout.Alignment.TRAILING,
                                            panelGraphLayout.createSequentialGroup().addContainerGap()
                                                    .addComponent(graphPanel, GroupLayout.DEFAULT_SIZE, 530,
                                                            Short.MAX_VALUE)))
                                    .addContainerGap()));
                    panelGraphLayout.setVerticalGroup(panelGraphLayout.createParallelGroup().addGroup(
                            GroupLayout.Alignment.TRAILING,
                            panelGraphLayout.createSequentialGroup().addContainerGap().addComponent(label22)
                                    .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(graphPanel, GroupLayout.DEFAULT_SIZE, 370, Short.MAX_VALUE)
                                    .addContainerGap()));
                }
                hpssimTab.addTab("Graph", panelGraph);

            }
            hpssimWindow.add(hpssimTab);
            hpssimTab.setBounds(10, 40, 555, 450);

            //---- title1 ----
            title1.setFont(title1.getFont().deriveFont(title1.getFont().getSize() + 8f));
            hpssimWindow.add(title1);
            title1.setBounds(10, 11, 132, title1.getPreferredSize().height);

            //---- button1 ----
            button1.setText("Stop");
            button1.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    button1ActionPerformed(e);
                }
            });
            hpssimWindow.add(button1);
            button1.setBounds(385, 495, 74, button1.getPreferredSize().height);

            //---- okButton ----
            okButton.setText("Start");
            okButton.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    okButtonActionPerformed(e);
                }
            });
            hpssimWindow.add(okButton);
            okButton.setBounds(470, 495, 74, okButton.getPreferredSize().height);

            //---- button3 ----
            button3.setText("Resume");
            button3.setVisible(false);
            button3.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    pauseActionPerformed(e);
                }
            });
            hpssimWindow.add(button3);
            button3.setBounds(300, 495, 74, button3.getPreferredSize().height);

            { // compute preferred size
                Dimension preferredSize = new Dimension();
                for (int i = 0; i < hpssimWindow.getComponentCount(); i++) {
                    Rectangle bounds = hpssimWindow.getComponent(i).getBounds();
                    preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
                    preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
                }
                Insets insets = hpssimWindow.getInsets();
                preferredSize.width += insets.right;
                preferredSize.height += insets.bottom;
                hpssimWindow.setMinimumSize(preferredSize);
                hpssimWindow.setPreferredSize(preferredSize);
            }
        }

        GroupLayout HPSsimWindowContentPaneLayout = new GroupLayout(HPSsimWindowContentPane);
        HPSsimWindowContentPane.setLayout(HPSsimWindowContentPaneLayout);
        HPSsimWindowContentPaneLayout.setHorizontalGroup(HPSsimWindowContentPaneLayout.createParallelGroup()
                .addGroup(HPSsimWindowContentPaneLayout.createSequentialGroup()
                        .addComponent(hpssimWindow, GroupLayout.PREFERRED_SIZE, 565, GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 4, Short.MAX_VALUE)));
        HPSsimWindowContentPaneLayout.setVerticalGroup(HPSsimWindowContentPaneLayout.createParallelGroup()
                .addGroup(HPSsimWindowContentPaneLayout.createSequentialGroup()
                        .addComponent(hpssimWindow, GroupLayout.PREFERRED_SIZE, 528, GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 1, Short.MAX_VALUE)));
        HPSsimWindow.pack();
        HPSsimWindow.setLocationRelativeTo(HPSsimWindow.getOwner());
    }

    //======== dialog1 ========
    {
        dialog1.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        Container dialog1ContentPane = dialog1.getContentPane();

        //---- button2 ----
        button2.setText("ok");
        button2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                button2ActionPerformed(e);
            }
        });

        //---- label13 ----
        label13.setText("Attenzione!");

        GroupLayout dialog1ContentPaneLayout = new GroupLayout(dialog1ContentPane);
        dialog1ContentPane.setLayout(dialog1ContentPaneLayout);
        dialog1ContentPaneLayout.setHorizontalGroup(dialog1ContentPaneLayout.createParallelGroup()
                .addGroup(dialog1ContentPaneLayout.createSequentialGroup().addContainerGap()
                        .addGroup(dialog1ContentPaneLayout.createParallelGroup()
                                .addComponent(label13, GroupLayout.Alignment.TRAILING, GroupLayout.DEFAULT_SIZE,
                                        324, Short.MAX_VALUE)
                                .addGroup(GroupLayout.Alignment.TRAILING,
                                        dialog1ContentPaneLayout.createSequentialGroup()
                                                .addGap(0, 281, Short.MAX_VALUE).addComponent(button2))
                                .addComponent(erroreLabel, GroupLayout.DEFAULT_SIZE, 324, Short.MAX_VALUE))
                        .addContainerGap()));
        dialog1ContentPaneLayout.setVerticalGroup(dialog1ContentPaneLayout.createParallelGroup().addGroup(
                GroupLayout.Alignment.TRAILING,
                dialog1ContentPaneLayout.createSequentialGroup().addContainerGap()
                        .addComponent(label13, GroupLayout.PREFERRED_SIZE, 25, GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 8, Short.MAX_VALUE)
                        .addComponent(erroreLabel, GroupLayout.PREFERRED_SIZE, 30, GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(button2)
                        .addContainerGap()));
        dialog1.pack();
        dialog1.setLocationRelativeTo(dialog1.getOwner());
    }

    //======== Grafici ========
    {
        Container GraficiContentPane = Grafici.getContentPane();

        //======== panelGraficoFinestra ========
        {

            // JFormDesigner evaluation mark
            panelGraficoFinestra.setBorder(new javax.swing.border.CompoundBorder(
                    new javax.swing.border.TitledBorder(new javax.swing.border.EmptyBorder(0, 0, 0, 0),
                            "JFormDesigner Evaluation", javax.swing.border.TitledBorder.CENTER,
                            javax.swing.border.TitledBorder.BOTTOM,
                            new java.awt.Font("Dialog", java.awt.Font.BOLD, 12), java.awt.Color.red),
                    panelGraficoFinestra.getBorder()));
            panelGraficoFinestra.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
                public void propertyChange(java.beans.PropertyChangeEvent e) {
                    if ("border".equals(e.getPropertyName()))
                        throw new RuntimeException();
                }
            });

            panelGraficoFinestra.setLayout(new BorderLayout());
        }

        GroupLayout GraficiContentPaneLayout = new GroupLayout(GraficiContentPane);
        GraficiContentPane.setLayout(GraficiContentPaneLayout);
        GraficiContentPaneLayout.setHorizontalGroup(GraficiContentPaneLayout.createParallelGroup()
                .addGroup(GraficiContentPaneLayout.createSequentialGroup().addContainerGap()
                        .addComponent(panelGraficoFinestra, GroupLayout.DEFAULT_SIZE, 519, Short.MAX_VALUE)
                        .addContainerGap()));
        GraficiContentPaneLayout.setVerticalGroup(GraficiContentPaneLayout.createParallelGroup()
                .addGroup(GraficiContentPaneLayout.createSequentialGroup().addContainerGap()
                        .addComponent(panelGraficoFinestra, GroupLayout.DEFAULT_SIZE, 457, Short.MAX_VALUE)
                        .addContainerGap()));
        Grafici.pack();
        Grafici.setLocationRelativeTo(Grafici.getOwner());
    }
    // //GEN-END:initComponents
}

From source file:com.dfki.av.sudplan.ui.MainFrame.java

/**
 * 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./*from ww  w .j a v a 2  s  .c o  m*/
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

    dGoTo = new javax.swing.JDialog();
    pGoTo = new javax.swing.JPanel();
    lLatitude = new javax.swing.JLabel();
    lLongitude = new javax.swing.JLabel();
    txtLatitude = new javax.swing.JTextField();
    txtLongitude = new javax.swing.JTextField();
    btnCancelGoToDialoag = new javax.swing.JButton();
    btnGo = new javax.swing.JButton();
    dWMSHeight = new javax.swing.JDialog();
    lMaxEle = new javax.swing.JLabel();
    jPanel1 = new javax.swing.JPanel();
    lServerURL = new javax.swing.JLabel();
    rbCbServerUrl = new javax.swing.JRadioButton();
    rbTxtServerUrl = new javax.swing.JRadioButton();
    txtServerURL = new javax.swing.JTextField();
    cbServerURL = new javax.swing.JComboBox();
    bGoWMSHeight = new javax.swing.JButton();
    pbWMS = new javax.swing.JProgressBar();
    jPanel4 = new javax.swing.JPanel();
    bCancelWMSHeight = new javax.swing.JButton();
    bAddWMSHeight = new javax.swing.JButton();
    cLayerList = new javax.swing.JComboBox();
    txtHeight = new javax.swing.JTextField();
    lHeight = new javax.swing.JLabel();
    lOpacity = new javax.swing.JLabel();
    txtOpacity = new javax.swing.JTextField();
    bgWMS = new javax.swing.ButtonGroup();
    pMain = new javax.swing.JPanel();
    jSplitPane1 = new javax.swing.JSplitPane();
    pLeftPanel = new javax.swing.JPanel();
    pVisualization = new javax.swing.JPanel();
    mbMain = new javax.swing.JMenuBar();
    mFile = new javax.swing.JMenu();
    miOpenKMLFile = new javax.swing.JMenuItem();
    miAddGeoTiff = new javax.swing.JMenuItem();
    miAddShape = new javax.swing.JMenuItem();
    miAddShapeZip = new javax.swing.JMenuItem();
    jSeparator2 = new javax.swing.JPopupMenu.Separator();
    miExit = new javax.swing.JMenuItem();
    mEdit = new javax.swing.JMenu();
    miRemoveAllLayer = new javax.swing.JMenuItem();
    mNavi = new javax.swing.JMenu();
    miGotoLinz = new javax.swing.JMenuItem();
    miGotoPraque = new javax.swing.JMenuItem();
    miGoToStockhom = new javax.swing.JMenuItem();
    miGotoWuppertal = new javax.swing.JMenuItem();
    miGotoKaiserslautern = new javax.swing.JMenuItem();
    jSeparator5 = new javax.swing.JPopupMenu.Separator();
    miFullSphere = new javax.swing.JMenuItem();
    miGoto = new javax.swing.JMenuItem();
    jSeparator3 = new javax.swing.JPopupMenu.Separator();
    miSaveView = new javax.swing.JMenuItem();
    mCustomViewPoints = new javax.swing.JMenu();
    mWMS = new javax.swing.JMenu();
    miAddWMS = new javax.swing.JMenuItem();
    miAddWMSHeight = new javax.swing.JMenuItem();
    mTools = new javax.swing.JMenu();
    miWizard = new javax.swing.JMenuItem();
    mView = new javax.swing.JMenu();
    miSideBySide = new javax.swing.JMenuItem();
    mHelp = new javax.swing.JMenu();
    miAbout = new javax.swing.JMenuItem();

    java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle("com/dfki/av/sudplan/ui/Bundle"); // NOI18N
    dGoTo.setTitle(bundle.getString("MainFrame.dGoTo.title")); // NOI18N
    dGoTo.setAlwaysOnTop(true);
    dGoTo.setMinimumSize(new java.awt.Dimension(230, 150));
    dGoTo.setResizable(false);

    pGoTo.setMaximumSize(new java.awt.Dimension(200, 100));

    lLatitude.setLabelFor(txtLatitude);
    lLatitude.setText(bundle.getString("MainFrame.lLatitude.text")); // NOI18N

    lLongitude.setLabelFor(txtLongitude);
    lLongitude.setText(bundle.getString("MainFrame.lLongitude.text")); // NOI18N

    txtLatitude.setText(bundle.getString("MainFrame.txtLatitude.text")); // NOI18N

    txtLongitude.setText(bundle.getString("MainFrame.txtLongitude.text")); // NOI18N

    javax.swing.GroupLayout pGoToLayout = new javax.swing.GroupLayout(pGoTo);
    pGoTo.setLayout(pGoToLayout);
    pGoToLayout.setHorizontalGroup(pGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pGoToLayout.createSequentialGroup().addContainerGap()
                    .addGroup(pGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(lLongitude).addComponent(lLatitude))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 22, Short.MAX_VALUE)
                    .addGroup(pGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(txtLatitude, javax.swing.GroupLayout.PREFERRED_SIZE, 113,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(txtLongitude))
                    .addContainerGap()));
    pGoToLayout.setVerticalGroup(pGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pGoToLayout.createSequentialGroup().addContainerGap().addGroup(pGoToLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(lLatitude)
                    .addComponent(txtLatitude, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(pGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(lLongitude).addComponent(txtLongitude,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    btnCancelGoToDialoag.setText(bundle.getString("MainFrame.btnCancelGoToDialoag.text")); // NOI18N
    btnCancelGoToDialoag.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnCancelGoToDialoagActionPerformed(evt);
        }
    });

    btnGo.setText(bundle.getString("MainFrame.btnGo.text")); // NOI18N
    btnGo.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnGoActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout dGoToLayout = new javax.swing.GroupLayout(dGoTo.getContentPane());
    dGoTo.getContentPane().setLayout(dGoToLayout);
    dGoToLayout.setHorizontalGroup(dGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(dGoToLayout.createSequentialGroup().addContainerGap()
                    .addGroup(dGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                    dGoToLayout.createSequentialGroup().addComponent(btnGo)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(btnCancelGoToDialoag))
                            .addComponent(pGoTo, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    dGoToLayout.setVerticalGroup(dGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(dGoToLayout.createSequentialGroup().addContainerGap()
                    .addComponent(pGoTo, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(dGoToLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(btnCancelGoToDialoag).addComponent(btnGo))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    dWMSHeight.setTitle(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.dWMSHeight.title")); // NOI18N
    dWMSHeight.setIconImage(com.dfki.av.sudplan.Configuration.SUDPLAN_3D_IMAGE);
    dWMSHeight.setLocationByPlatform(true);
    dWMSHeight.setMinimumSize(new java.awt.Dimension(800, 360));
    dWMSHeight.setResizable(false);

    lMaxEle.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.lMaxEle.text")); // NOI18N

    jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(
            org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.jPanel1.border.title"))); // NOI18N
    jPanel1.setToolTipText(
            org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.jPanel1.toolTipText")); // NOI18N
    jPanel1.setName(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.jPanel1.name")); // NOI18N

    lServerURL.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.lServerURL.text")); // NOI18N

    bgWMS.add(rbCbServerUrl);
    rbCbServerUrl.setSelected(true);
    rbCbServerUrl
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.rbCbServerUrl.text")); // NOI18N
    rbCbServerUrl.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rbCbServerUrlActionPerformed(evt);
        }
    });

    bgWMS.add(rbTxtServerUrl);
    rbTxtServerUrl
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.rbTxtServerUrl.text")); // NOI18N
    rbTxtServerUrl.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rbTxtServerUrlActionPerformed(evt);
        }
    });

    txtServerURL.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.txtServerURL.text")); // NOI18N
    txtServerURL.setToolTipText(
            org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.txtServerURL.toolTipText")); // NOI18N
    txtServerURL.setEnabled(false);

    cbServerURL.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
            "http://aniara.smhi.se/cap_SERVICE=WMS.xml", "http://geoportal.wuppertal.de:8083/deegree/wms?",
            "http://serv-2118.kl.dfki.de:8888/geoserver/wms?service=WMS&version=1.1.0",
            "http://www2.demis.nl/worldmap/wms.asp?Service=WMS&Version=1.1.0&Request=GetCapabilities",
            "http://www.wms.nrw.de/geobasis/DOP",
            "http://mapbender.wheregroup.com/cgi-bin/mapserv?map=/data/umn/osm/osm_basic.map&VERSION=1.1.1&REQUEST=GetCapabilities&SERVICE=WMS",
            "http://kartor.stockholm.se/bios/wms/app/baggis/web/WMS_STHLM_ORTOFOTO_2009?",
            "http://kartor.stockholm.se/bios/wms/app/baggis/web/WMS_STHLM_TATORTSKARTA_RASTER?",
            "http://85.24.165.10/cap_SERVICE=WMS.xml" }));

    bGoWMSHeight.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.bGoWMSHeight.text")); // NOI18N
    bGoWMSHeight.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            bGoWMSHeightActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout
            .setHorizontalGroup(
                    jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap()
                                    .addGroup(jPanel1Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(jPanel1Layout.createSequentialGroup()
                                                    .addComponent(lServerURL).addGap(0, 0, Short.MAX_VALUE))
                                            .addGroup(
                                                    jPanel1Layout.createSequentialGroup()
                                                            .addGroup(jPanel1Layout.createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING)
                                                                    .addComponent(rbCbServerUrl)
                                                                    .addComponent(rbTxtServerUrl))
                                                            .addGap(10, 10, 10)
                                                            .addGroup(jPanel1Layout.createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING)
                                                                    .addComponent(txtServerURL)
                                                                    .addComponent(cbServerURL, 0, 1,
                                                                            Short.MAX_VALUE)))
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout
                                                    .createSequentialGroup()
                                                    .addComponent(pbWMS, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            Short.MAX_VALUE)
                                                    .addGap(18, 18, 18).addComponent(bGoWMSHeight)))
                                    .addContainerGap()));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addComponent(lServerURL)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(cbServerURL, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(rbCbServerUrl))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(txtServerURL, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(rbTxtServerUrl))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(bGoWMSHeight).addComponent(pbWMS,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(
            org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.jPanel4.border.title"))); // NOI18N

    bCancelWMSHeight
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.bCancelWMSHeight.text")); // NOI18N
    bCancelWMSHeight.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            bCancelWMSHeightActionPerformed(evt);
        }
    });

    bAddWMSHeight
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.bAddWMSHeight.text")); // NOI18N
    bAddWMSHeight.setEnabled(false);
    bAddWMSHeight.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            bAddWMSHeightActionPerformed(evt);
        }
    });

    cLayerList.setEnabled(false);

    txtHeight.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.txtHeight.text")); // NOI18N

    lHeight.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.lHeight.text")); // NOI18N

    lOpacity.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.lOpacity.text")); // NOI18N

    txtOpacity.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.txtOpacity.text")); // NOI18N

    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)
                            .addGroup(jPanel4Layout.createSequentialGroup().addComponent(lHeight)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(txtHeight, javax.swing.GroupLayout.PREFERRED_SIZE, 62,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18).addComponent(lOpacity)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(txtOpacity, javax.swing.GroupLayout.PREFERRED_SIZE, 62,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 194,
                                            Short.MAX_VALUE)
                                    .addComponent(bAddWMSHeight)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(bCancelWMSHeight))
                            .addComponent(cLayerList, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addContainerGap()));
    jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(cLayerList, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 20, Short.MAX_VALUE)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(bCancelWMSHeight)
                            .addComponent(bAddWMSHeight, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(txtHeight, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(lHeight).addComponent(lOpacity).addComponent(txtOpacity,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));

    javax.swing.GroupLayout dWMSHeightLayout = new javax.swing.GroupLayout(dWMSHeight.getContentPane());
    dWMSHeight.getContentPane().setLayout(dWMSHeightLayout);
    dWMSHeightLayout.setHorizontalGroup(dWMSHeightLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(dWMSHeightLayout.createSequentialGroup().addContainerGap()
                    .addGroup(dWMSHeightLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(dWMSHeightLayout.createSequentialGroup().addGap(732, 732, 732)
                                    .addComponent(lMaxEle, javax.swing.GroupLayout.PREFERRED_SIZE, 287,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(dWMSHeightLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(jPanel4, javax.swing.GroupLayout.Alignment.LEADING,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    dWMSHeightLayout.setVerticalGroup(dWMSHeightLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(dWMSHeightLayout.createSequentialGroup().addContainerGap()
                    .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(296, 296, 296)
                    .addComponent(lMaxEle, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle(bundle.getString("MainFrame.title")); // NOI18N

    pMain.setPreferredSize(new java.awt.Dimension(1200, 1024));

    jSplitPane1.setContinuousLayout(true);
    jSplitPane1.setLastDividerLocation(1);
    jSplitPane1.setPreferredSize(new java.awt.Dimension(1024, 768));

    pLeftPanel.setLayout(new java.awt.BorderLayout());
    jSplitPane1.setLeftComponent(pLeftPanel);

    pVisualization.setLayout(new java.awt.BorderLayout());

    pVisualization.add(wwPanel, java.awt.BorderLayout.CENTER);

    jSplitPane1.setRightComponent(pVisualization);

    javax.swing.GroupLayout pMainLayout = new javax.swing.GroupLayout(pMain);
    pMain.setLayout(pMainLayout);
    pMainLayout.setHorizontalGroup(pMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jSplitPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 804, Short.MAX_VALUE));
    pMainLayout.setVerticalGroup(pMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jSplitPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 610, Short.MAX_VALUE));

    mFile.setText(bundle.getString("MainFrame.mFile.text")); // NOI18N

    miOpenKMLFile
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miOpenKMLFile.text")); // NOI18N
    miOpenKMLFile.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miOpenDataActionPerformed(evt);
        }
    });
    mFile.add(miOpenKMLFile);

    miAddGeoTiff.setText(bundle.getString("MainFrame.miAddGeoTiff.text")); // NOI18N
    miAddGeoTiff.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miOpenDataActionPerformed(evt);
        }
    });
    mFile.add(miAddGeoTiff);

    miAddShape.setText(bundle.getString("MainFrame.miAddShape.text")); // NOI18N
    miAddShape.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miOpenDataActionPerformed(evt);
        }
    });
    mFile.add(miAddShape);

    miAddShapeZip
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miAddShapeZip.text")); // NOI18N
    miAddShapeZip.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miOpenDataActionPerformed(evt);
        }
    });
    mFile.add(miAddShapeZip);
    mFile.add(jSeparator2);

    miExit.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_Q,
            java.awt.event.InputEvent.ALT_MASK));
    miExit.setText(bundle.getString("MainFrame.miExit.text")); // NOI18N
    miExit.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miExitActionPerformed(evt);
        }
    });
    mFile.add(miExit);

    mbMain.add(mFile);

    mEdit.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mEdit.text")); // NOI18N

    miRemoveAllLayer.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_R,
            java.awt.event.InputEvent.ALT_MASK));
    miRemoveAllLayer.setText(bundle.getString("MainFrame.miRemoveAllLayer.text")); // NOI18N
    miRemoveAllLayer.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miRemoveAllLayerActionPerformed(evt);
        }
    });
    mEdit.add(miRemoveAllLayer);

    mbMain.add(mEdit);

    mNavi.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mNavi.text")); // NOI18N

    miGotoLinz.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_L,
            java.awt.event.InputEvent.CTRL_MASK));
    miGotoLinz.setText(bundle.getString("MainFrame.miGotoLinz.text")); // NOI18N
    miGotoLinz.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGotoLinzActionPerformed(evt);
        }
    });
    mNavi.add(miGotoLinz);

    miGotoPraque.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_P,
            java.awt.event.InputEvent.CTRL_MASK));
    miGotoPraque.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miGotoPraque.text")); // NOI18N
    miGotoPraque.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGotoPraqueActionPerformed(evt);
        }
    });
    mNavi.add(miGotoPraque);

    miGoToStockhom.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S,
            java.awt.event.InputEvent.CTRL_MASK));
    miGoToStockhom.setText(bundle.getString("MainFrame.miGoToStockhom.text")); // NOI18N
    miGoToStockhom.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGoToStockhomActionPerformed(evt);
        }
    });
    mNavi.add(miGoToStockhom);

    miGotoWuppertal.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_W,
            java.awt.event.InputEvent.CTRL_MASK));
    miGotoWuppertal.setText(bundle.getString("MainFrame.miGotoWuppertal.text")); // NOI18N
    miGotoWuppertal.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGotoWuppertalActionPerformed(evt);
        }
    });
    mNavi.add(miGotoWuppertal);

    miGotoKaiserslautern.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_K,
            java.awt.event.InputEvent.CTRL_MASK));
    miGotoKaiserslautern.setText(
            org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miGotoKaiserslautern.text")); // NOI18N
    miGotoKaiserslautern.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGotoKaiserslauternActionPerformed(evt);
        }
    });
    mNavi.add(miGotoKaiserslautern);
    mNavi.add(jSeparator5);

    miFullSphere.setText(bundle.getString("MainFrame.miFullSphere.text")); // NOI18N
    miFullSphere.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miFullSphereActionPerformed(evt);
        }
    });
    mNavi.add(miFullSphere);

    miGoto.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_G,
            java.awt.event.InputEvent.CTRL_MASK));
    miGoto.setText(bundle.getString("MainFrame.miGoto.text")); // NOI18N
    miGoto.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miGotoActionPerformed(evt);
        }
    });
    mNavi.add(miGoto);
    mNavi.add(jSeparator3);

    miSaveView.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_SPACE,
            java.awt.event.InputEvent.CTRL_MASK));
    miSaveView.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miSaveView.text")); // NOI18N
    miSaveView.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miSaveViewActionPerformed(evt);
        }
    });
    mNavi.add(miSaveView);

    mCustomViewPoints
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mCustomViewPoints.text")); // NOI18N
    mNavi.add(mCustomViewPoints);

    mbMain.add(mNavi);

    mWMS.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mWMS.text")); // NOI18N

    miAddWMS.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miAddWMS.text")); // NOI18N
    miAddWMS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miAddWMSActionPerformed(evt);
        }
    });
    mWMS.add(miAddWMS);

    miAddWMSHeight
            .setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miAddWMSHeight.text")); // NOI18N
    miAddWMSHeight.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miAddWMSHeightActionPerformed(evt);
        }
    });
    mWMS.add(miAddWMSHeight);

    mbMain.add(mWMS);

    mTools.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mTools.text")); // NOI18N

    miWizard.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_W,
            java.awt.event.InputEvent.ALT_MASK));
    miWizard.setText(bundle.getString("MainFrame.miWizard.text")); // NOI18N
    miWizard.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miWizardActionPerformed(evt);
        }
    });
    mTools.add(miWizard);

    mbMain.add(mTools);

    mView.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.mView.text")); // NOI18N

    miSideBySide.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S,
            java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK));
    miSideBySide.setText(org.openide.util.NbBundle.getMessage(MainFrame.class, "MainFrame.miSideBySide.text")); // NOI18N
    miSideBySide.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miSideBySideActionPerformed(evt);
        }
    });
    mView.add(miSideBySide);

    mbMain.add(mView);

    mHelp.setText(bundle.getString("MainFrame.mHelp.text")); // NOI18N

    miAbout.setText(bundle.getString("MainFrame.miAbout.text")); // NOI18N
    miAbout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            miAboutActionPerformed(evt);
        }
    });
    mHelp.add(miAbout);

    mbMain.add(mHelp);

    setJMenuBar(mbMain);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(pMain, javax.swing.GroupLayout.Alignment.TRAILING,
                    javax.swing.GroupLayout.DEFAULT_SIZE, 804, Short.MAX_VALUE));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
            pMain, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 610,
            Short.MAX_VALUE));

    pack();
}

From source file:com.xyphos.vmtgen.GUI.java

/**
 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./* w ww .  j a  va2 s.co  m*/
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed"
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

    panFolders = new javax.swing.JPanel();
    jLabel1 = new javax.swing.JLabel();
    txtRootFolder = new javax.swing.JTextField();
    btnRootFolderBrowse = new javax.swing.JButton();
    btnWorkFolderBrowse = new javax.swing.JButton();
    txtWorkFolder = new javax.swing.JTextField();
    jLabel2 = new javax.swing.JLabel();
    panFlags = new javax.swing.JPanel();
    chkFlagAdditive = new javax.swing.JCheckBox();
    chkFlagAlphaTest = new javax.swing.JCheckBox();
    chkFlagNoCull = new javax.swing.JCheckBox();
    chkFlagNoDecal = new javax.swing.JCheckBox();
    chkFlagNoLOD = new javax.swing.JCheckBox();
    chkFlagTranslucent = new javax.swing.JCheckBox();
    chkFlagVertexAlpha = new javax.swing.JCheckBox();
    chkFlagVertexColor = new javax.swing.JCheckBox();
    chkFlagIgnoreZ = new javax.swing.JCheckBox();
    chkFlagPhong = new javax.swing.JCheckBox();
    chkFlagSelfIllum = new javax.swing.JCheckBox();
    panTexture = new javax.swing.JPanel();
    jLabel8 = new javax.swing.JLabel();
    jLabel9 = new javax.swing.JLabel();
    chkLockBaseTexture2 = new javax.swing.JCheckBox();
    chkLockBaseTexture1 = new javax.swing.JCheckBox();
    txtBaseTexture2 = new javax.swing.JTextField();
    btnBaseTexture2 = new javax.swing.JButton();
    chkLockDetailTexture = new javax.swing.JCheckBox();
    jLabel10 = new javax.swing.JLabel();
    txtDetailTexture = new javax.swing.JTextField();
    btnDetailTexture = new javax.swing.JButton();
    jLabel11 = new javax.swing.JLabel();
    txtToolTexture = new javax.swing.JTextField();
    chkLockToolTexture = new javax.swing.JCheckBox();
    btnToolTexture = new javax.swing.JButton();
    chkLockBumpMap1 = new javax.swing.JCheckBox();
    txtBumpMap1 = new javax.swing.JTextField();
    btnBumpMap1 = new javax.swing.JButton();
    jLabel12 = new javax.swing.JLabel();
    jLabel13 = new javax.swing.JLabel();
    txtBumpMap2 = new javax.swing.JTextField();
    btnBumpMap2 = new javax.swing.JButton();
    chkLockBumpMap2 = new javax.swing.JCheckBox();
    jLabel14 = new javax.swing.JLabel();
    txtEnvMap = new javax.swing.JTextField();
    chkLockEnvMap = new javax.swing.JCheckBox();
    btnEnvMap = new javax.swing.JButton();
    jLabel15 = new javax.swing.JLabel();
    txtEnvMapMask = new javax.swing.JTextField();
    chkLockEnvMapMask = new javax.swing.JCheckBox();
    btnEnvMapMask = new javax.swing.JButton();
    jLabel16 = new javax.swing.JLabel();
    txtNormalMap = new javax.swing.JTextField();
    chkLockNormalMap = new javax.swing.JCheckBox();
    btnNormalMap = new javax.swing.JButton();
    jLabel17 = new javax.swing.JLabel();
    txtDuDvMap = new javax.swing.JTextField();
    chkLockDuDvMap = new javax.swing.JCheckBox();
    btnDuDvMap = new javax.swing.JButton();
    txtBaseTexture1 = new javax.swing.JTextField();
    btnBaseTexture1 = new javax.swing.JButton();
    panOptions = new javax.swing.JPanel();
    chkLockSurface1 = new javax.swing.JCheckBox();
    cmbShader = new javax.swing.JComboBox();
    txtShader = new javax.swing.JTextField();
    jLabel3 = new javax.swing.JLabel();
    chkLockShader = new javax.swing.JCheckBox();
    jLabel4 = new javax.swing.JLabel();
    chkLockSurface2 = new javax.swing.JCheckBox();
    cmbSurface1 = new javax.swing.JComboBox();
    txtSurface1 = new javax.swing.JTextField();
    jLabel5 = new javax.swing.JLabel();
    cmbSurface2 = new javax.swing.JComboBox();
    txtSurface2 = new javax.swing.JTextField();
    jLabel6 = new javax.swing.JLabel();
    txtKeywords = new javax.swing.JTextField();
    chkLockKeywords = new javax.swing.JCheckBox();
    panFiles = new javax.swing.JPanel();
    chkOnlyMissing = new javax.swing.JCheckBox();
    jScrollPane1 = new javax.swing.JScrollPane();
    lstFiles = new javax.swing.JList();
    jPanel1 = new javax.swing.JPanel();
    jLabel18 = new javax.swing.JLabel();
    jLabel20 = new javax.swing.JLabel();
    jLabel21 = new javax.swing.JLabel();
    jLabel22 = new javax.swing.JLabel();
    jLabel23 = new javax.swing.JLabel();
    jLabel25 = new javax.swing.JLabel();
    jPanel2 = new javax.swing.JPanel();
    chkCompileTrigger = new javax.swing.JCheckBox();
    chkCompileSky = new javax.swing.JCheckBox();
    chkCompileSkip = new javax.swing.JCheckBox();
    chkCompilePlayerClip = new javax.swing.JCheckBox();
    chkCompileNoDraw = new javax.swing.JCheckBox();
    chkCompilePassBullets = new javax.swing.JCheckBox();
    chkCompileOrigin = new javax.swing.JCheckBox();
    chkCompileNoLight = new javax.swing.JCheckBox();
    chkCompileNpcClip = new javax.swing.JCheckBox();
    chkCompileLadder = new javax.swing.JCheckBox();
    chkCompileHint = new javax.swing.JCheckBox();
    chkCompileNonSolid = new javax.swing.JCheckBox();
    chkCompileDetail = new javax.swing.JCheckBox();
    chkCompileClip = new javax.swing.JCheckBox();
    chkCompileFog = new javax.swing.JCheckBox();
    chkCompilePlayerControlClip = new javax.swing.JCheckBox();
    jPanel3 = new javax.swing.JPanel();
    chkLockEnvMapContrast = new javax.swing.JCheckBox();
    nudEnvMapContrast = new javax.swing.JSpinner();
    jLabel24 = new javax.swing.JLabel();
    chkLockFrameRate = new javax.swing.JCheckBox();
    jLabel7 = new javax.swing.JLabel();
    nudFrameRate = new javax.swing.JSpinner();
    nudAlpha = new javax.swing.JSpinner();
    jLabel19 = new javax.swing.JLabel();
    chkLockAlpha = new javax.swing.JCheckBox();
    chkLockEnvMapSaturation = new javax.swing.JCheckBox();
    jLabel26 = new javax.swing.JLabel();
    nudEnvMapSaturation = new javax.swing.JSpinner();
    chkLockEnvMapFrame = new javax.swing.JCheckBox();
    jLabel27 = new javax.swing.JLabel();
    nudEnvMapFrame = new javax.swing.JSpinner();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("VMTGen");
    setName("frmGUI"); // NOI18N
    setResizable(false);

    panFolders.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Settings"));

    jLabel1.setText("Root Folder");
    jLabel1.setToolTipText(
            "<html>This should point to your materials folder.<br />\nFor example, Steam\\SteamApps\\common\\Team Fortress 2\\tf\\materials</html>");

    txtRootFolder.setEditable(false);
    txtRootFolder.setBackground(java.awt.SystemColor.text);
    txtRootFolder.setName(""); // NOI18N
    txtRootFolder.setPreferredSize(new java.awt.Dimension(59, 25));

    btnRootFolderBrowse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/folder_16x16.png"))); // NOI18N
    btnRootFolderBrowse.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnRootFolderBrowseActionPerformed(evt);
        }
    });

    btnWorkFolderBrowse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/folder_16x16.png"))); // NOI18N
    btnWorkFolderBrowse.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnWorkFolderBrowseActionPerformed(evt);
        }
    });

    txtWorkFolder.setEditable(false);
    txtWorkFolder.setBackground(java.awt.SystemColor.text);
    txtWorkFolder.setName(""); // NOI18N
    txtWorkFolder.setPreferredSize(new java.awt.Dimension(59, 25));

    jLabel2.setText("Working Folder");
    jLabel2.setToolTipText(
            "<html>This should point to where your custom textures are.<br />\n(and where your material files will be)<br />\nFor example, Steam\\SteamApps\\common\\Team Fortress 2\\tf\\materials\\custom\\OuterSpace");

    javax.swing.GroupLayout panFoldersLayout = new javax.swing.GroupLayout(panFolders);
    panFolders.setLayout(panFoldersLayout);
    panFoldersLayout.setHorizontalGroup(panFoldersLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFoldersLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panFoldersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel2).addComponent(jLabel1))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFoldersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(txtWorkFolder, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(txtRootFolder, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFoldersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnWorkFolderBrowse, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnRootFolderBrowse, javax.swing.GroupLayout.Alignment.TRAILING))
                    .addGap(13, 13, 13)));
    panFoldersLayout.setVerticalGroup(panFoldersLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFoldersLayout.createSequentialGroup().addContainerGap().addGroup(panFoldersLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(btnRootFolderBrowse)
                    .addGroup(panFoldersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(txtRootFolder, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel1)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFoldersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnWorkFolderBrowse)
                            .addGroup(panFoldersLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtWorkFolder, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel2)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    panFlags.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Flags"));

    chkFlagAdditive.setText("Additive");
    chkFlagAdditive.setToolTipText(
            "<html>Add the material's colour values to the existing image, instead of performing a multiplication.<br />\nThis means, among other things, that the material will always brighten the world.<br />\nThis is useful for effects like volumetric dust, light sprites, etc...</html>");

    chkFlagAlphaTest.setText("Alpha Test");
    chkFlagAlphaTest.setToolTipText(
            "<html>Translucency can sometimes cause a material to flicker, or cause sorting issues with nearby surfaces.<br />\nIn both cases, consider using $alphatest instead of $translucent when this happens.<br />\nIt drastically lowers quality, but will usually resolve the issue and is much faster to draw.<br />\nIt will also cast flashlight shadows, unlike translucents.</html>");

    chkFlagNoCull.setText("No Cull");
    chkFlagNoCull.setToolTipText(
            "<html>Makes the material appear on the reverse side of the surface it is applied to.<br />\nGenerally only useful when used in conjunction with $translucent or $alpha.<br />\nNote: Has no effect on world brushes (so tie each one to func_detail).<br />\nBug: Cannot be used with $translucent on models. Use $alphatest instead.</html>");

    chkFlagNoDecal.setText("No Decal");
    chkFlagNoDecal.setToolTipText("N/A");

    chkFlagNoLOD.setForeground(new java.awt.Color(10, 36, 106));
    chkFlagNoLOD.setText("No LOD");
    chkFlagNoLOD.setToolTipText("No Level of Detail");

    chkFlagTranslucent.setForeground(new java.awt.Color(10, 36, 106));
    chkFlagTranslucent.setText("Translucent");
    chkFlagTranslucent.setToolTipText(
            "<html>Specifies that the material should be partially see-through.<br />\nThe alpha channel of $basetexture is used to decide translucency per-pixel.<br />\nAny object that has a $translucent material does not affect VIS, and can be seen through by NPCs from any angle.</html>");

    chkFlagVertexAlpha.setText("Vertex Alpha");
    chkFlagVertexAlpha.setToolTipText(
            "<html>Makes the surface derive its alpha values from per-vertex data provided by the engine.<br />\nOnly particles and decals are known to modify their vertex data, but it should be possible to implement your own scenarios too.<br />\nVertex alpha cannot be compiled into a model and is currently unfunctional in Counter-Strike: Global Offensive; Using it will result in the material to turn completely black in-game.</html>");

    chkFlagVertexColor.setText("Vertex Color");
    chkFlagVertexColor.setToolTipText(
            "<html>Makes the surface derive its color values from per-vertex data provided by the engine.<br />\nOnly particles and decals are known to modify their vertex data, but it should be possible to implement your own scenarios too.<br />\nVertex color cannot be compiled into a model and is currently unfunctional in Counter-Strike: Global Offensive; Using it will result in the material to turn completely black in-game.</html>");

    chkFlagIgnoreZ.setText("Ignore Z-Axis");
    chkFlagIgnoreZ.setToolTipText(
            "<html>Used for decals and sprays.<br />\nCannot be used on models to prevent cheating.</html>");

    chkFlagPhong.setText("Phong");
    chkFlagPhong.setToolTipText("Diffuse reflections. It is only available with the VertexLitGeneric shader.");

    chkFlagSelfIllum.setText("Self Illuminated");
    chkFlagSelfIllum.setToolTipText(
            "<html>Makes a material glow in the dark. Shaders commonly support this effect.<br />\nThe effect is masked by default by the alpha channel of $basetexture<br />\nWherever the mask is located, white areas are self-illuminated while black areas are not.<br />\nWarning: Cannot be used with $translucent or similar values on models. Use UnlitGeneric shader instead.</html>\n");

    javax.swing.GroupLayout panFlagsLayout = new javax.swing.GroupLayout(panFlags);
    panFlags.setLayout(panFlagsLayout);
    panFlagsLayout.setHorizontalGroup(panFlagsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFlagsLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(chkFlagIgnoreZ).addComponent(chkFlagNoCull)
                            .addComponent(chkFlagNoDecal).addComponent(chkFlagAlphaTest)
                            .addComponent(chkFlagNoLOD).addComponent(chkFlagAdditive))
                    .addGap(33, 33, 33)
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(chkFlagPhong).addComponent(chkFlagVertexColor)
                            .addComponent(chkFlagTranslucent).addComponent(chkFlagVertexAlpha)
                            .addComponent(chkFlagSelfIllum))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    panFlagsLayout.setVerticalGroup(panFlagsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFlagsLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkFlagAdditive).addComponent(chkFlagPhong))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkFlagAlphaTest).addComponent(chkFlagSelfIllum))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkFlagIgnoreZ).addComponent(chkFlagTranslucent))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkFlagNoCull).addComponent(chkFlagVertexAlpha))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panFlagsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkFlagNoDecal).addComponent(chkFlagVertexColor))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(chkFlagNoLOD)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    panTexture.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Textures"));

    jLabel8.setText("Base Texture 1");
    jLabel8.setToolTipText("Defines an albedo texture, in most cases, this is REQUIRED.");

    jLabel9.setText("Base Texture 2");
    jLabel9.setToolTipText(
            "Defines a secondary albedo texture, commonly used for dual surfaces such as grass/dirt blends.");

    chkLockBaseTexture2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockBaseTexture2.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockBaseTexture2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockBaseTexture2ActionPerformed(evt);
        }
    });

    chkLockBaseTexture1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockBaseTexture1.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockBaseTexture1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockBaseTexture1ActionPerformed(evt);
        }
    });

    txtBaseTexture2.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    btnBaseTexture2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnBaseTexture2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnBaseTexture2ActionPerformed(evt);
        }
    });

    chkLockDetailTexture.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockDetailTexture
            .setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockDetailTexture.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockDetailTextureActionPerformed(evt);
        }
    });

    jLabel10.setText("Detail Texture");
    jLabel10.setToolTipText(
            "<html>Specifies a texture with which will add high-resolution detail when the material is viewed up close,<br />\nby darkening or lightening the albedo texture appropriately.</html>");

    txtDetailTexture.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    btnDetailTexture.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnDetailTexture.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnDetailTextureActionPerformed(evt);
        }
    });

    jLabel11.setText("Tool Texture");
    jLabel11.setToolTipText(
            "<html>Used to blend texture previews in Hammer Editor.<br />\nWithout a tooltexture, Hammer will only show your first $basetexture,<br />\nmaking it impossible to see the blend without compiling.");

    txtToolTexture.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockToolTexture.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockToolTexture.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockToolTexture.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockToolTextureActionPerformed(evt);
        }
    });

    btnToolTexture.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnToolTexture.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnToolTextureActionPerformed(evt);
        }
    });

    chkLockBumpMap1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockBumpMap1.setPreferredSize(new java.awt.Dimension(25, 20));
    chkLockBumpMap1.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockBumpMap1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockBumpMap1ActionPerformed(evt);
        }
    });

    txtBumpMap1.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    btnBumpMap1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnBumpMap1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnBumpMap1ActionPerformed(evt);
        }
    });

    jLabel12.setText("Bump Map 1");
    jLabel12.setToolTipText(
            "<html>Specifies a texture that will provide three-dimensional lighting information for a material.<br />\nThe texture is a bump map, but the process it is used for is called normal mapping.<br />\nThe two terms are often used interchangeably, however.<br />\nWarning: $bumpmap will disable prop_static's per-vertex lighting.<br />\nNot enough data is stored in the vertices for normal mapping, so the engine has no choice but to fall back.<br />\nNote: In the Water shader, $bumpmap is for a DX8 du/dv map. Use $normalmap instead.</html>");

    jLabel13.setText("Bump Map 2");
    jLabel13.setToolTipText(
            "<html>Specifies a texture that will provide three-dimensional lighting information for a material.<br />\nThe texture is a bump map, but the process it is used for is called normal mapping.<br />\nThe two terms are often used interchangeably, however.<br />\nWarning: $bumpmap will disable prop_static's per-vertex lighting.<br />\nNot enough data is stored in the vertices for normal mapping, so the engine has no choice but to fall back.<br />\nNote: In the Water shader, $bumpmap is for a DX8 du/dv map. Use $normalmap instead.</html>");

    txtBumpMap2.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    btnBumpMap2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnBumpMap2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnBumpMap2ActionPerformed(evt);
        }
    });

    chkLockBumpMap2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockBumpMap2.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockBumpMap2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockBumpMap2ActionPerformed(evt);
        }
    });

    jLabel14.setText("Environment Map");
    jLabel14.setToolTipText(
            "<html>Creates specular reflections, which are seen on smooth surfaces.<br />\nIt does this by defining an \"environment map\" (specifically a cubemap) to draw as a reflection;<br />\nnormally that of the nearest env_cubemap entity. The reflection is not dynamic.<br />\nThe other form of reflection supported by Source is the diffuse phong type.</html>");

    txtEnvMap.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockEnvMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockEnvMap.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockEnvMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockEnvMapActionPerformed(evt);
        }
    });

    btnEnvMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnEnvMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnEnvMapActionPerformed(evt);
        }
    });

    jLabel15.setText("Environment Map Mask");
    jLabel15.setToolTipText(
            "<html>Defines a specular mask which affects how strongly each pixel of a material reflects light from the $envmap.<br />\nThe mask should be a greyscale image in which entirely reflective areas are white and entirely matte areas are black.<br />\nFor diffuse type specularity which does not rely on $envmap, see $phong.<br />\nWarning: $envmapmask will not work in model materials using $bumpmap.</html>");

    txtEnvMapMask.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockEnvMapMask.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockEnvMapMask.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockEnvMapMask.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockEnvMapMaskActionPerformed(evt);
        }
    });

    btnEnvMapMask.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnEnvMapMask.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnEnvMapMaskActionPerformed(evt);
        }
    });

    jLabel16.setText("Normal Map");
    jLabel16.setToolTipText(
            "Normal Maps are used to simulate three-dimensional details on a two-dimensional surface by manipulating its lighting.");

    txtNormalMap.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockNormalMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockNormalMap.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockNormalMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockNormalMapActionPerformed(evt);
        }
    });

    btnNormalMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnNormalMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnNormalMapActionPerformed(evt);
        }
    });

    jLabel17.setText("DuDv Map");
    jLabel17.setToolTipText(
            "<html>Note: $dudvmap is now defunct and is replaced by the <b>Refract</b> shader.<br />\nThough, the Water shader still uses a du/dv map for $bumpmap.<br />\ndu/dv maps are used for DirectX 8 refractions.</html>");

    txtDuDvMap.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockDuDvMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockDuDvMap.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockDuDvMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockDuDvMapActionPerformed(evt);
        }
    });

    btnDuDvMap.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnDuDvMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnDuDvMapActionPerformed(evt);
        }
    });

    txtBaseTexture1.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    btnBaseTexture1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/file_16x16.png"))); // NOI18N
    btnBaseTexture1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btnBaseTexture1ActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panTextureLayout = new javax.swing.GroupLayout(panTexture);
    panTexture.setLayout(panTextureLayout);
    panTextureLayout.setHorizontalGroup(panTextureLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panTextureLayout.createSequentialGroup().addContainerGap().addGroup(panTextureLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockBaseTexture1)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel8))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockBaseTexture2)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel9))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockDetailTexture)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel10))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockToolTexture)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel11))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockBumpMap2)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel13))
                    .addGroup(panTextureLayout.createSequentialGroup()
                            .addComponent(chkLockBumpMap1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel12))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockEnvMap)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel14))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockEnvMapMask)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel15))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockNormalMap)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel16))
                    .addGroup(panTextureLayout.createSequentialGroup().addComponent(chkLockDuDvMap)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel17)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(txtDuDvMap).addComponent(txtNormalMap).addComponent(txtEnvMapMask)
                            .addComponent(txtBumpMap2).addComponent(txtBumpMap1).addComponent(txtToolTexture)
                            .addComponent(txtDetailTexture, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(txtBaseTexture2, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(txtBaseTexture1, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(txtEnvMap, javax.swing.GroupLayout.Alignment.TRAILING))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnBaseTexture1, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnBaseTexture2, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnDetailTexture, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnToolTexture, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnBumpMap1, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnBumpMap2, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnEnvMap, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnEnvMapMask, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnNormalMap, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(btnDuDvMap, javax.swing.GroupLayout.Alignment.TRAILING))
                    .addContainerGap()));
    panTextureLayout.setVerticalGroup(panTextureLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panTextureLayout.createSequentialGroup().addContainerGap().addGroup(panTextureLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(txtBaseTexture1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel8))
                    .addComponent(chkLockBaseTexture1).addComponent(btnBaseTexture1))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtBaseTexture2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel9))
                            .addComponent(chkLockBaseTexture2).addComponent(btnBaseTexture2))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtDetailTexture, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 14,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(chkLockDetailTexture).addComponent(btnDetailTexture))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtToolTexture, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel11))
                            .addComponent(chkLockToolTexture).addComponent(btnToolTexture))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtBumpMap1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel12))
                            .addComponent(chkLockBumpMap1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(btnBumpMap1))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtBumpMap2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel13))
                            .addComponent(chkLockBumpMap2).addComponent(btnBumpMap2))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtEnvMap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel14))
                            .addComponent(chkLockEnvMap).addComponent(btnEnvMap))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtEnvMapMask, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel15))
                            .addComponent(chkLockEnvMapMask).addComponent(btnEnvMapMask))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtNormalMap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel16))
                            .addComponent(chkLockNormalMap).addComponent(btnNormalMap))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panTextureLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panTextureLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtDuDvMap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel17))
                            .addComponent(chkLockDuDvMap).addComponent(btnDuDvMap))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    panOptions.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Options"));

    chkLockSurface1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockSurface1.setRequestFocusEnabled(false);
    chkLockSurface1.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockSurface1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockSurface1ActionPerformed(evt);
        }
    });

    cmbShader.setPreferredSize(new java.awt.Dimension(100, 22));
    cmbShader.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmbShaderActionPerformed(evt);
        }
    });

    txtShader.setDisabledTextColor(new java.awt.Color(255, 0, 0));
    txtShader.setEnabled(false);
    txtShader.setPreferredSize(new java.awt.Dimension(100, 20));

    jLabel3.setText("Shader");
    jLabel3.setToolTipText("Determines how an object or texture should be drawn");

    chkLockShader.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockShader.setRequestFocusEnabled(false);
    chkLockShader.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockShader.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockShaderActionPerformed(evt);
        }
    });

    jLabel4.setText("Surface 1");
    jLabel4.setToolTipText(
            "Defines the physical properties of an object including friction and density, collision/footstep sounds, the effect of bullet impacts and, if the object is destructible, health and gib type.");

    chkLockSurface2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockSurface2.setRequestFocusEnabled(false);
    chkLockSurface2.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockSurface2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockSurface2ActionPerformed(evt);
        }
    });

    cmbSurface1.setPreferredSize(new java.awt.Dimension(100, 22));
    cmbSurface1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmbSurface1ActionPerformed(evt);
        }
    });

    txtSurface1.setDisabledTextColor(new java.awt.Color(255, 0, 0));
    txtSurface1.setEnabled(false);
    txtSurface1.setPreferredSize(new java.awt.Dimension(100, 20));

    jLabel5.setText("Surface 2");
    jLabel5.setToolTipText(
            "Defines the physical properties of an object including friction and density, collision/footstep sounds, the effect of bullet impacts and, if the object is destructible, health and gib type.");

    cmbSurface2.setPreferredSize(new java.awt.Dimension(100, 22));
    cmbSurface2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmbSurface2ActionPerformed(evt);
        }
    });

    txtSurface2.setDisabledTextColor(new java.awt.Color(255, 0, 0));
    txtSurface2.setEnabled(false);
    txtSurface2.setPreferredSize(new java.awt.Dimension(100, 20));

    jLabel6.setText("Keywords");
    jLabel6.setToolTipText(
            "<html>Used to set a keyword filter that can be filtered in hammer for easier texture finding.<br />\neach keyword should be separated by a comma.<br />\nVMTGen automatically determines keywords based on the texture's filename, by converting hyphens and underscores to commas.</html>");

    txtKeywords.setDisabledTextColor(new java.awt.Color(255, 0, 0));

    chkLockKeywords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockKeywords.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockKeywords.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockKeywordsActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panOptionsLayout = new javax.swing.GroupLayout(panOptions);
    panOptions.setLayout(panOptionsLayout);
    panOptionsLayout.setHorizontalGroup(panOptionsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panOptionsLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(chkLockShader).addComponent(chkLockSurface1)
                            .addComponent(chkLockSurface2).addComponent(chkLockKeywords))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panOptionsLayout.createSequentialGroup().addComponent(jLabel6)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(txtKeywords))
                            .addGroup(panOptionsLayout.createSequentialGroup().addGroup(panOptionsLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(panOptionsLayout.createSequentialGroup().addGroup(panOptionsLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(jLabel4).addComponent(jLabel3))
                                            .addPreferredGap(
                                                    javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                            .addGroup(panOptionsLayout
                                                    .createParallelGroup(
                                                            javax.swing.GroupLayout.Alignment.LEADING, false)
                                                    .addComponent(cmbShader, 0, 151, Short.MAX_VALUE)
                                                    .addComponent(cmbSurface1, 0,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            Short.MAX_VALUE)))
                                    .addGroup(panOptionsLayout.createSequentialGroup().addComponent(jLabel5)
                                            .addPreferredGap(
                                                    javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                            .addComponent(cmbSurface2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    151, javax.swing.GroupLayout.PREFERRED_SIZE)))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(panOptionsLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(txtSurface2, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    177, Short.MAX_VALUE)
                                            .addComponent(txtSurface1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(txtShader, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
                    .addContainerGap()));
    panOptionsLayout.setVerticalGroup(panOptionsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panOptionsLayout.createSequentialGroup().addContainerGap().addGroup(panOptionsLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel3)
                            .addComponent(cmbShader, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(txtShader, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(chkLockShader))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel4).addComponent(chkLockSurface1)
                            .addGroup(panOptionsLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtSurface1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(cmbSurface1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panOptionsLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(cmbSurface2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel5).addComponent(txtSurface2,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(chkLockSurface2))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panOptionsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panOptionsLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(txtKeywords, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel6))
                            .addComponent(chkLockKeywords))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    panFiles.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Texture Files"));

    chkOnlyMissing.setText("Only Missing");
    chkOnlyMissing.setToolTipText(
            "If checked, only VTF texures that do not have their associated VMT material files present will be shown in the list below.");
    chkOnlyMissing.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkOnlyMissingActionPerformed(evt);
        }
    });

    lstFiles.setModel(new DefaultListModel());
    lstFiles.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
    lstFiles.setPreferredSize(null);
    lstFiles.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
        public void valueChanged(javax.swing.event.ListSelectionEvent evt) {
            lstFilesValueChanged(evt);
        }
    });
    jScrollPane1.setViewportView(lstFiles);

    javax.swing.GroupLayout panFilesLayout = new javax.swing.GroupLayout(panFiles);
    panFiles.setLayout(panFilesLayout);
    panFilesLayout.setHorizontalGroup(panFilesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFilesLayout.createSequentialGroup().addContainerGap().addGroup(panFilesLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(chkOnlyMissing)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));
    panFilesLayout.setVerticalGroup(panFilesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panFilesLayout.createSequentialGroup().addContainerGap().addComponent(chkOnlyMissing)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 84, Short.MAX_VALUE)
                    .addContainerGap()));

    jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Hotkeys",
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION, null, new java.awt.Color(0, 0, 0)));

    jLabel18.setText("F1 = Generate Material File");

    jLabel20.setText("F3 = Unlock All Input");

    jLabel21.setText("F2 = Lock All Input");

    jLabel22.setText("F5 = Refresh File List");

    jLabel23.setText("F4 = Toggle All Locks");

    jLabel25.setText("F6 = Reset/Default");

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel18).addComponent(jLabel23))
                    .addGap(18, 18, 18)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel21).addComponent(jLabel22))
                    .addGap(18, 18, 18)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel25).addComponent(jLabel20))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel18).addComponent(jLabel21).addComponent(jLabel20))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel23).addComponent(jLabel22).addComponent(jLabel25))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Compile Flags"));

    chkCompileTrigger.setText("Trigger");
    chkCompileTrigger.setToolTipText(
            "Compiles the texture as a TRIGGER texture, meaning your texture will behave the same as the tools/toolstrigger.");

    chkCompileSky.setText("Sky");
    chkCompileSky.setToolTipText(
            "Compiles the texture as a SKY texture, meaning your texture will behave as a SKYBOX.");

    chkCompileSkip.setText("Skip");
    chkCompileSkip.setToolTipText(
            "Compiles the texture as a SKIP texture, meaning your texture will behave the same as the tools/toolsskip.");

    chkCompilePlayerClip.setText("Player Clip");
    chkCompilePlayerClip.setToolTipText(
            "Compiles the texture as a PLAYER CLIP texture, meaning your texture will behave the same as the tools/toolsplayerclip.");

    chkCompileNoDraw.setText("No Draw");
    chkCompileNoDraw.setToolTipText(
            "Compiles the texture as a NO DRAW texture, meaning your texture will behave the same as the tools/toolsnodraw.");

    chkCompilePassBullets.setText("Pass Bullets");
    chkCompilePassBullets.setToolTipText(
            "Compiles the texture as non-solid to bullets, meaning your texture can be shot through, which is useful for foliage and fences.");

    chkCompileOrigin.setText("Origin");
    chkCompileOrigin.setToolTipText("N/A");

    chkCompileNoLight.setText("No Light");
    chkCompileNoLight
            .setToolTipText("Description not available, but this compile flag was found on tools/areaportal.");

    chkCompileNpcClip.setText("NPC Clip");
    chkCompileNpcClip.setToolTipText(
            "Compiles the texture as a NPC CLIP texture, meaning your texture will behave the same as the tools/toolsnpcclip.");

    chkCompileLadder.setText("Ladder");
    chkCompileLadder.setToolTipText(
            "Compiles the texture as a LADDER texture, meaning your texture will behave the same as the tools/toolsladder.");

    chkCompileHint.setText("Hint");
    chkCompileHint.setToolTipText(
            "Compiles the texture as a HINT texture, meaning your texture will behave the same as the tools/toolshint.");

    chkCompileNonSolid.setText("Non-Solid");
    chkCompileNonSolid.setToolTipText(
            "Compiles the texture as a NON-SOLID texture, brushes with this texture will be compiled as Non-Solid, which is useful for lighting and foliage effects.");

    chkCompileDetail.setText("Detail");
    chkCompileDetail.setToolTipText("N/A");

    chkCompileClip.setText("Clip");
    chkCompileClip.setToolTipText(
            "Compiles the texture as a CLIP texture, meaning your texture will behave the same as the tools/toolsclip.");

    chkCompileFog.setText("Fog");
    chkCompileFog.setToolTipText(
            "Compiles the texture as a FOG texture, meaning your texture will behave the same as the tools/toolsfog.");

    chkCompilePlayerControlClip.setText("Player Control Clip");
    chkCompilePlayerControlClip.setToolTipText(
            "Compiles the texture as a PLAYER CONTROL CLIP texture, meaning your texture will behave the same as the tools/toolsplayercontrolclip.");

    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(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel2Layout.createSequentialGroup().addGroup(
                                    jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(chkCompileClip).addComponent(chkCompileNoLight)
                                            .addComponent(chkCompileNonSolid).addComponent(chkCompileDetail)
                                            .addComponent(chkCompileHint).addComponent(chkCompileNoDraw)
                                            .addComponent(chkCompileLadder))
                                    .addGap(51, 51, 51)
                                    .addGroup(jPanel2Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(chkCompileOrigin).addComponent(chkCompileNpcClip)
                                            .addComponent(chkCompilePassBullets)
                                            .addComponent(chkCompilePlayerClip)
                                            .addComponent(chkCompilePlayerControlClip)
                                            .addComponent(chkCompileSkip).addComponent(chkCompileSky)
                                            .addComponent(chkCompileTrigger)))
                            .addComponent(chkCompileFog))));
    jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileClip).addComponent(chkCompileNpcClip))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileDetail).addComponent(chkCompileOrigin))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileFog).addComponent(chkCompilePassBullets))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileHint).addComponent(chkCompilePlayerClip))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompilePlayerControlClip).addComponent(chkCompileLadder))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileSkip).addComponent(chkCompileNoDraw))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileSky).addComponent(chkCompileNoLight))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(chkCompileTrigger).addComponent(chkCompileNonSolid))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(
            javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Misc"));

    chkLockEnvMapContrast.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockEnvMapContrast
            .setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockEnvMapContrast.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockEnvMapContrastActionPerformed(evt);
        }
    });

    nudEnvMapContrast.setModel(new javax.swing.SpinnerNumberModel(Float.valueOf(0.0f), Float.valueOf(0.0f),
            Float.valueOf(1.0f), Float.valueOf(0.01f)));
    nudEnvMapContrast.setToolTipText("");

    jLabel24.setText("Environment Map Contrast");
    jLabel24.setToolTipText(
            "<html>Controls the contrast of the reflection.<br />\n0 is natural contrast, while 1 is the full squaring of the color (i.e. color*color).<br />\nTip: Use higher contrasts to diminish relatively darker areas and increase \"hot spots\". <br />\nNote: Will not work when Phong is enabled.</html>");

    chkLockFrameRate.setEnabled(false);
    chkLockFrameRate.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockFrameRate.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockFrameRate.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockFrameRateActionPerformed(evt);
        }
    });

    jLabel7.setText("Frame Rate");
    jLabel7.setToolTipText("How many frames per second to render an Animated Texture");

    nudFrameRate.setModel(new javax.swing.SpinnerNumberModel(0, 0, 999999, 1));
    nudFrameRate.setEnabled(false);
    nudFrameRate.setPreferredSize(new java.awt.Dimension(80, 18));

    nudAlpha.setModel(new javax.swing.SpinnerNumberModel(Float.valueOf(1.0f), Float.valueOf(0.0f),
            Float.valueOf(1.0f), Float.valueOf(0.01f)));
    nudAlpha.setPreferredSize(new java.awt.Dimension(80, 18));

    jLabel19.setText("Alpha");
    jLabel19.setToolTipText(
            "<html>Scales the opacity of an entire material by the given value.<br />\n1 is entirely opaque, 0 is invisible.<br />\nIf any material on a brush has alpha, the brush will stop affecting VIS and become entirely transparent to NPCs from every angle.<br />\nThis may be used with the <b>translucent</b> flag.</html>");

    chkLockAlpha.setIcon(new javax.swing.ImageIcon(getClass().getResource("/unlocked_16x16.png"))); // NOI18N
    chkLockAlpha.setSelectedIcon(new javax.swing.ImageIcon(getClass().getResource("/locked_16x16.png"))); // NOI18N
    chkLockAlpha.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockAlphaActionPerformed(evt);
        }
    });

    chkLockEnvMapSaturation.setIcon(new javax.swing.ImageIcon(
            "C:\\Users\\Xyphos\\Documents\\NetBeansProjects\\VMTGen\\src\\main\\resources\\unlocked_16x16.png")); // NOI18N
    chkLockEnvMapSaturation.setSelectedIcon(new javax.swing.ImageIcon(
            "C:\\Users\\Xyphos\\Documents\\NetBeansProjects\\VMTGen\\src\\main\\resources\\locked_16x16.png")); // NOI18N
    chkLockEnvMapSaturation.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockEnvMapSaturationActionPerformed(evt);
        }
    });

    jLabel26.setText("Environment Map Saturation");
    jLabel26.setToolTipText(
            "<html>Controls the colour saturation of the reflection.<br />\n0 is greyscale, while 1 is natural saturation.<br />\nNote: Will not work when Phong is enabled.</html>");

    nudEnvMapSaturation.setModel(new javax.swing.SpinnerNumberModel(Float.valueOf(0.0f), Float.valueOf(0.0f),
            Float.valueOf(1.0f), Float.valueOf(0.01f)));
    nudEnvMapSaturation.setToolTipText("");

    chkLockEnvMapFrame.setEnabled(false);
    chkLockEnvMapFrame.setIcon(new javax.swing.ImageIcon(
            "C:\\Users\\Xyphos\\Documents\\NetBeansProjects\\VMTGen\\src\\main\\resources\\unlocked_16x16.png")); // NOI18N
    chkLockEnvMapFrame.setSelectedIcon(new javax.swing.ImageIcon(
            "C:\\Users\\Xyphos\\Documents\\NetBeansProjects\\VMTGen\\src\\main\\resources\\locked_16x16.png")); // NOI18N
    chkLockEnvMapFrame.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLockEnvMapFrameActionPerformed(evt);
        }
    });

    jLabel27.setText("Environment Map Frame");
    jLabel27.setToolTipText("The frame to start an animated cubemap on.");

    nudEnvMapFrame.setModel(new javax.swing.SpinnerNumberModel(0, 0, 0, 1));
    nudEnvMapFrame.setEnabled(false);

    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().addGroup(jPanel3Layout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(chkLockAlpha)
                    .addComponent(chkLockEnvMapContrast).addComponent(chkLockEnvMapSaturation)
                    .addComponent(chkLockEnvMapFrame).addComponent(chkLockFrameRate))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel3Layout.createSequentialGroup().addComponent(jLabel19)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(nudAlpha, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(jPanel3Layout.createSequentialGroup().addComponent(jLabel7)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(nudFrameRate, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout
                                    .createSequentialGroup().addComponent(jLabel27)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(nudEnvMapFrame, javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                    jPanel3Layout.createSequentialGroup().addComponent(jLabel26)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                    30, Short.MAX_VALUE)
                                            .addComponent(nudEnvMapContrast,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                    jPanel3Layout.createSequentialGroup().addComponent(jLabel24)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(nudEnvMapSaturation,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 50,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))));
    jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup().addGroup(jPanel3Layout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(nudAlpha, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel19))
                    .addComponent(chkLockAlpha))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel3Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(nudEnvMapSaturation, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel24))
                            .addComponent(chkLockEnvMapContrast))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel3Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(nudEnvMapContrast, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel26))
                            .addComponent(chkLockEnvMapSaturation))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel3Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(nudEnvMapFrame, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel27))
                            .addComponent(chkLockEnvMapFrame))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(chkLockFrameRate)
                            .addGroup(jPanel3Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel7).addComponent(nudFrameRate,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    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, false)
                            .addComponent(panFolders, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(panTexture, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(layout.createSequentialGroup()
                                    .addComponent(panFiles, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(panOptions, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(panFlags, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                            .addComponent(panFolders, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(panFiles, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(panOptions, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(panTexture, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                            .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(panFlags, 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)))
                    .addContainerGap()));

    pack();
}

From source file:net.rptools.maptool.launcher.MapToolLauncher.java

/**
 * This method is called from within the constructor to initialize the form
 * components.//from   www.j a v  a  2 s .  co m
 */
private void initComponents() {
    // Lee: for aesthetics and Linux won't display window controls on an untitled window.
    final String version = CopiedFromOtherJars.getVersion();
    setTitle(CopiedFromOtherJars.getText("msg.title.mainWindow", version)); //$NON-NLS-1$

    if (jbPathText == null)
        jbPathText = CopiedFromOtherJars.getText("msg.info.setJavaVersion"); //$NON-NLS-1$
    if (jbMTJarText == null)
        jbMTJarText = CopiedFromOtherJars.getText("msg.info.selectMapToolJar"); //$NON-NLS-1$
    if (mapToolJarName == null)
        mapToolJarName = CopiedFromOtherJars.getText("msg.info.selectMapToolJar"); //$NON-NLS-1$

    final Container cp = getContentPane();
    cp.setLayout(new BorderLayout());

    final JPanel basicPanel = buildBasicPanel();
    final JPanel langPanel = buildLanguagePanel();
    final JPanel advancedPanel = buildAdvancedPanel();
    final JPanel tsPanel = buildTroubleshootingPanel();

    mtlOptions.addTab(CopiedFromOtherJars.getText("msg.tab.basic"), basicPanel); //$NON-NLS-1$
    mtlOptions.addTab(CopiedFromOtherJars.getText("msg.tab.language"), langPanel); //$NON-NLS-1$
    mtlOptions.addTab(CopiedFromOtherJars.getText("msg.tab.advanced"), advancedPanel); //$NON-NLS-1$
    mtlOptions.addTab(CopiedFromOtherJars.getText("msg.tab.troubleshoot"), tsPanel); //$NON-NLS-1$

    cp.add(mtlOptions, BorderLayout.CENTER);
    cp.add(jtfCommand, BorderLayout.SOUTH);

    // Lee: user must register MT executable
    jbLaunch.setEnabled(
            !mapToolJarName.equalsIgnoreCase(CopiedFromOtherJars.getText("msg.info.selectMapToolJar"))); //$NON-NLS-1$

    jbLaunch.setText(CopiedFromOtherJars.getText("msg.info.launchMapTool")); //$NON-NLS-1$
    jbLaunch.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent evt) {
            try {
                jbLaunchActionPerformed(evt);
            } catch (final IOException e) {
                e.printStackTrace();
            }
        }
    });

    jtfCommand.setEditable(false);
    jtfCommand.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
    jtfCommand.setText(CopiedFromOtherJars.getText("msg.info.cmdLineShownHere")); //$NON-NLS-1$
    jtfCommand.addFocusListener(new FocusListener() {
        @Override
        public void focusGained(FocusEvent arg0) {
            jtfCommand.selectAll();
        }

        @Override
        public void focusLost(FocusEvent arg0) {
            jtfCommand.setCaretPosition(0);
        }
    });

    jcbKeepOpen.setSelected(false);
    jcbKeepOpen.setText(CopiedFromOtherJars.getText("msg.info.keepLauncherOpen")); //$NON-NLS-1$
    jcbKeepOpen.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.keepLauncherOpen")); //$NON-NLS-1$

    final JPanel lowerPanel = new JPanel();
    lowerPanel.setLayout(new GridLayout(3, 1));
    lowerPanel.setBorder(new LineBorder(Color.BLACK));
    lowerPanel.add(jbLaunch);
    lowerPanel.add(jcbKeepOpen);
    lowerPanel.add(jtfCommand);
    cp.add(lowerPanel, BorderLayout.SOUTH);

    mtlOptions.addChangeListener(new ChangeListener() {
        @Override
        public void stateChanged(ChangeEvent e) {
            final JTabbedPane source = (JTabbedPane) e.getSource();
            final String tabName = source.getTitleAt(source.getSelectedIndex());

            if (jbLaunch.isEnabled()) {
                jbLaunch.requestFocusInWindow();
            } else {
                if (tabName.equals(CopiedFromOtherJars.getText("msg.tab.basic"))) { //$NON-NLS-1$
                    jbMTJar.requestFocusInWindow();
                } else if (tabName.equals(CopiedFromOtherJars.getText("msg.tab.language"))) { //$NON-NLS-1$
                    // This should work as long as there's at least one language in the list.
                    langGroup.getElements().nextElement().requestFocusInWindow();
                } else if (tabName.equals(CopiedFromOtherJars.getText("msg.tab.advanced"))) { //$NON-NLS-1$
                    jcbConsole.requestFocusInWindow();
                    jtfArgs.setText(extraArgs);
                } else {
                    jcbEnableAssertions.requestFocusInWindow();
                }
            }
        }
    });
    Dimension d = new Dimension(advancedPanel.getPreferredSize().width, 25);
    jtfArgs.setPreferredSize(d);
    //      mtlOptions.setPreferredSize(new Dimension(350, getPreferredSize().height));
    d.width = -1;
    d.height = -1;
    JLabel tabLabel = null;
    int tabs = mtlOptions.getTabCount();
    while (tabs-- > 0) {
        Component tab = mtlOptions.getTabComponentAt(tabs);
        if (tab == null) {
            if (tabLabel == null)
                tabLabel = new JLabel();
            tabLabel.setText(mtlOptions.getTitleAt(tabs));
            tab = tabLabel;
        }
        Dimension dim = tab.getPreferredSize();
        d.width = Math.max(dim.width, d.width);
        d.height = Math.max(dim.height, d.height);
    }
    // Set width to width of largest tab * number of tabs, then add 20%.
    d.width = d.width * 120 / 100 * mtlOptions.getTabCount();
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    setIconImage(icon.getImage());

    // To prevent the tabs from wrapping or scrolling
    setMinimumSize(new Dimension(d.width, getSize().height));
    pack();
    setResizable(true);
}

From source file:homenetapp.HomeNetAppGui.java

/** This method is called from within the constructor to
 * initialize the form./*  ww  w  . j  a  va2  s . c o  m*/
 * WARNING: Do NOT modify this code. The content of this method is
 * always regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

    SendPacketFrame = new javax.swing.JFrame();
    sendPacketButton = new javax.swing.JButton();
    jPanel1 = new javax.swing.JPanel();
    toNodeLabel = new javax.swing.JLabel();
    toNodeSpinner = new javax.swing.JSpinner();
    toDeviceLabel = new javax.swing.JLabel();
    toDeviceSpinner = new javax.swing.JSpinner();
    fromNodeLabel = new javax.swing.JLabel();
    fromNodeSpinner = new javax.swing.JSpinner();
    fromDeviceLabel = new javax.swing.JLabel();
    commandLabel = new javax.swing.JLabel();
    commandComboBox = new javax.swing.JComboBox();
    payloadLabel = new javax.swing.JLabel();
    payloadTextField = new javax.swing.JTextField();
    fromDeviceSpinner = new javax.swing.JSpinner();
    jSplitPane1 = new javax.swing.JSplitPane();
    SettingsDialog = new javax.swing.JDialog();
    jTabbedPane1 = new javax.swing.JTabbedPane();
    jPanel4 = new javax.swing.JPanel();
    serverLabel = new javax.swing.JLabel();
    apiKeyLabel = new javax.swing.JLabel();
    serverTextField = new javax.swing.JTextField();
    apiKeyTextField = new javax.swing.JTextField();
    testButton = new javax.swing.JButton();
    jLabel1 = new javax.swing.JLabel();
    certPropertiesLabel = new javax.swing.JLabel();
    jButton1 = new javax.swing.JButton();
    jPanel5 = new javax.swing.JPanel();
    serverPortLabel = new javax.swing.JLabel();
    serverPortTextField = new javax.swing.JTextField();
    enableUPnPCheckBox = new javax.swing.JCheckBox();
    enableServerCheckBox = new javax.swing.JCheckBox();
    jSeparator1 = new javax.swing.JSeparator();
    jPanel6 = new javax.swing.JPanel();
    checkForUpdatesCheckBox = new javax.swing.JCheckBox();
    settingsSaveButton = new javax.swing.JButton();
    filler1 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 0), new java.awt.Dimension(0, 0),
            new java.awt.Dimension(0, 32767));
    cardPanel = new javax.swing.JPanel();
    mainPanel = new javax.swing.JPanel();
    jPanel3 = new javax.swing.JPanel();
    jSplitPane2 = new javax.swing.JSplitPane();
    jPanel2 = new javax.swing.JPanel();
    jLabel9 = new javax.swing.JLabel();
    jScrollPane2 = new javax.swing.JScrollPane();
    packetTextArea = new javax.swing.JTextArea();
    jScrollPane3 = new javax.swing.JScrollPane();
    packetListModel = new DefaultListModel();
    jList1 = new javax.swing.JList();
    autoUpdateToggleButton = new javax.swing.JToggleButton();
    jScrollPane1 = new javax.swing.JScrollPane();
    consoleTextPane = new javax.swing.JTextPane();
    statusPanel = new javax.swing.JPanel();
    jLabel7 = new javax.swing.JLabel();
    localStatusLabel = new javax.swing.JLabel();
    jLabel11 = new javax.swing.JLabel();
    remoteStatusLabel = new javax.swing.JLabel();
    localSendingLabel = new javax.swing.JLabel();
    localReceivingLabel = new javax.swing.JLabel();
    remoteSendingLabel = new javax.swing.JLabel();
    remoteReceivingLabel = new javax.swing.JLabel();
    topMenuBar = new javax.swing.JMenuBar();
    menuFile = new javax.swing.JMenu();
    jMenuItem3 = new javax.swing.JMenuItem();
    menuTools = new javax.swing.JMenu();
    menuToolsSendPacket = new javax.swing.JMenuItem();
    menuToolsSettings = new javax.swing.JMenuItem();
    menuSerialPorts = new javax.swing.JMenu();
    menuHelp = new javax.swing.JMenu();
    menuHelpOnline = new javax.swing.JMenuItem();
    menuHelpAbout = new javax.swing.JMenuItem();

    SendPacketFrame.setTitle("Send Packet");
    SendPacketFrame.setMinimumSize(new java.awt.Dimension(380, 240));
    SendPacketFrame.setResizable(false);
    SendPacketFrame.addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowOpened(java.awt.event.WindowEvent evt) {
            SendPacketFrameWindowOpened(evt);
        }
    });

    sendPacketButton.setText("Send");
    sendPacketButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            sendPacketButtonActionPerformed(evt);
        }
    });

    jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Packet"));

    toNodeLabel.setText("To Node: ");

    toNodeSpinner.setModel(new javax.swing.SpinnerNumberModel(0, 0, 4095, 1));

    toDeviceLabel.setText("To Device:");

    toDeviceSpinner.setModel(new javax.swing.SpinnerNumberModel(0, 0, 15, 1));

    fromNodeLabel.setText("From Node:");

    fromNodeSpinner.setModel(new javax.swing.SpinnerNumberModel(0, 0, 4095, 1));

    fromDeviceLabel.setText("From Device:");

    commandLabel.setText("Command:");

    commandComboBox.setModel(new javax.swing.DefaultComboBoxModel(homenetapp.getCommandKeys()));
    commandComboBox.setRenderer(new CommandRenderer());

    payloadLabel.setText("Payload:");

    fromDeviceSpinner.setModel(new javax.swing.SpinnerNumberModel(0, 0, 15, 1));

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addGap(10, 10, 10).addGroup(jPanel1Layout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING).addComponent(payloadLabel)
                    .addComponent(commandLabel).addComponent(fromNodeLabel).addComponent(toNodeLabel))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(commandComboBox, 0, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)
                            .addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(toNodeSpinner).addComponent(fromNodeSpinner))
                                    .addGap(18, 18, 18)
                                    .addGroup(jPanel1Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                            .addComponent(fromDeviceLabel).addComponent(toDeviceLabel))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(jPanel1Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                    false)
                                            .addComponent(toDeviceSpinner, 0, 0, Short.MAX_VALUE).addComponent(
                                                    fromDeviceSpinner, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    37, Short.MAX_VALUE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 2,
                                            Short.MAX_VALUE))
                            .addComponent(payloadTextField))
                    .addContainerGap(17, Short.MAX_VALUE)));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap().addGroup(jPanel1Layout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(toNodeLabel)
                    .addComponent(toNodeSpinner, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(toDeviceLabel).addComponent(toDeviceSpinner,
                            javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(fromNodeLabel)
                            .addComponent(fromNodeSpinner, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(fromDeviceLabel).addComponent(fromDeviceSpinner,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(commandComboBox, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(commandLabel))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(payloadTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(payloadLabel))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    javax.swing.GroupLayout SendPacketFrameLayout = new javax.swing.GroupLayout(
            SendPacketFrame.getContentPane());
    SendPacketFrame.getContentPane().setLayout(SendPacketFrameLayout);
    SendPacketFrameLayout.setHorizontalGroup(
            SendPacketFrameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(SendPacketFrameLayout.createSequentialGroup().addContainerGap()
                            .addGroup(SendPacketFrameLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(sendPacketButton).addComponent(jPanel1,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    SendPacketFrameLayout.setVerticalGroup(SendPacketFrameLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SendPacketFrameLayout.createSequentialGroup().addContainerGap()
                    .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(sendPacketButton)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    SettingsDialog.setTitle("HomeNet Settings");
    SettingsDialog.setMinimumSize(new java.awt.Dimension(400, 300));
    SettingsDialog.setResizable(false);
    SettingsDialog.addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowOpened(java.awt.event.WindowEvent evt) {
            SettingsDialogWindowOpened(evt);
        }
    });

    serverLabel.setText("Server:");

    apiKeyLabel.setText("API Key:");

    serverTextField.setEditable(false);
    serverTextField.setText("homenet.me");

    apiKeyTextField.setText("reallylongstringofchars");

    testButton.setText("Test");
    testButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            testButtonActionPerformed(evt);
        }
    });

    jLabel1.setText("SSL Cert:");

    certPropertiesLabel.setText("Loading...");

    jButton1.setText("Paste");
    jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton1ActionPerformed(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)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(apiKeyLabel).addComponent(serverLabel))
                    .addComponent(jLabel1)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                    jPanel4Layout.createSequentialGroup()
                                            .addComponent(certPropertiesLabel,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, 182, Short.MAX_VALUE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(testButton)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(jButton1))
                            .addComponent(apiKeyTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 304,
                                    Short.MAX_VALUE)
                            .addComponent(serverTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 304,
                                    Short.MAX_VALUE))
                    .addContainerGap()));
    jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(serverTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(serverLabel))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(apiKeyTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(apiKeyLabel))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel1).addComponent(certPropertiesLabel).addComponent(testButton)
                            .addComponent(jButton1))
                    .addContainerGap(81, Short.MAX_VALUE)));

    jTabbedPane1.addTab("Client", jPanel4);

    serverPortLabel.setText("Port:");

    serverPortTextField.setEditable(false);
    serverPortTextField.setText("2443");

    enableUPnPCheckBox.setText("Enable UPnP Portforwarding");

    enableServerCheckBox.setSelected(true);
    enableServerCheckBox.setText("Enable Local Server");
    enableServerCheckBox.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            enableServerCheckBoxActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
    jPanel5.setLayout(jPanel5Layout);
    jPanel5Layout.setHorizontalGroup(jPanel5Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap().addComponent(serverPortLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(serverPortTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 43,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(294, Short.MAX_VALUE))
            .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap().addComponent(enableServerCheckBox)
                    .addContainerGap(250, Short.MAX_VALUE))
            .addComponent(jSeparator1, javax.swing.GroupLayout.Alignment.TRAILING,
                    javax.swing.GroupLayout.DEFAULT_SIZE, 375, Short.MAX_VALUE)
            .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap().addComponent(enableUPnPCheckBox)
                    .addContainerGap(208, Short.MAX_VALUE)));
    jPanel5Layout.setVerticalGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap().addComponent(enableServerCheckBox)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 2,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
                            .addComponent(serverPortTextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(serverPortLabel))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(enableUPnPCheckBox).addContainerGap(77, Short.MAX_VALUE)));

    jTabbedPane1.addTab("Server", jPanel5);

    checkForUpdatesCheckBox.setText("Check For Updates");

    javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
    jPanel6.setLayout(jPanel6Layout);
    jPanel6Layout
            .setHorizontalGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel6Layout.createSequentialGroup().addContainerGap()
                            .addComponent(checkForUpdatesCheckBox).addContainerGap(252, Short.MAX_VALUE)));
    jPanel6Layout.setVerticalGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel6Layout.createSequentialGroup().addContainerGap()
                    .addComponent(checkForUpdatesCheckBox).addContainerGap(137, Short.MAX_VALUE)));

    jTabbedPane1.addTab("Preferences", jPanel6);

    settingsSaveButton.setText("Save");
    settingsSaveButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            settingsSaveButtonActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout SettingsDialogLayout = new javax.swing.GroupLayout(SettingsDialog.getContentPane());
    SettingsDialog.getContentPane().setLayout(SettingsDialogLayout);
    SettingsDialogLayout.setHorizontalGroup(SettingsDialogLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(SettingsDialogLayout.createSequentialGroup().addContainerGap().addGroup(
                    SettingsDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(settingsSaveButton, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 380,
                                    Short.MAX_VALUE))
                    .addContainerGap()));
    SettingsDialogLayout.setVerticalGroup(SettingsDialogLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, SettingsDialogLayout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 195, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(settingsSaveButton).addContainerGap()));

    jTabbedPane1.getAccessibleContext().setAccessibleName("Server");

    SettingsDialog.getAccessibleContext().setAccessibleName("HomeNet App Settings");

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("HomeNet.me Desktop App");

    cardPanel.setLayout(new java.awt.CardLayout());

    mainPanel.setLayout(new javax.swing.BoxLayout(mainPanel, javax.swing.BoxLayout.Y_AXIS));

    jSplitPane2.setDividerLocation(200);
    jSplitPane2.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT);

    jLabel9.setText("Packets Received:");

    packetTextArea.setColumns(20);
    packetTextArea.setFont(new java.awt.Font("Courier New", 0, 12));
    packetTextArea.setRows(5);
    jScrollPane2.setViewportView(packetTextArea);

    jList1.setModel(packetListModel);
    jList1.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
    jList1.setCellRenderer(new PacketListRenderer());
    jList1.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
        public void valueChanged(javax.swing.event.ListSelectionEvent evt) {
            jList1ValueChanged(evt);
        }
    });
    jScrollPane3.setViewportView(jList1);

    autoUpdateToggleButton.setSelected(true);
    autoUpdateToggleButton.setText("Auto Update");
    autoUpdateToggleButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            autoUpdateToggleButtonActionPerformed(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)
                            .addComponent(jLabel9).addComponent(jScrollPane3,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 152,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(autoUpdateToggleButton).addComponent(jScrollPane2,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, 350, Short.MAX_VALUE))
                    .addContainerGap()));
    jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel9).addComponent(autoUpdateToggleButton))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 148,
                                    Short.MAX_VALUE)
                            .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 148,
                                    Short.MAX_VALUE))
                    .addContainerGap()));

    jSplitPane2.setTopComponent(jPanel2);

    consoleTextPane.setBackground(new java.awt.Color(0, 0, 0));
    consoleTextPane.setEditable(false);
    consoleTextPane.setFont(new java.awt.Font("Consolas", 0, 10));
    consoleTextPane.setForeground(new java.awt.Color(255, 255, 255));
    jScrollPane1.setViewportView(consoleTextPane);

    jSplitPane2.setRightComponent(jScrollPane1);

    javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
    jPanel3.setLayout(jPanel3Layout);
    jPanel3Layout.setHorizontalGroup(jPanel3Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 530, Short.MAX_VALUE)
            .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jSplitPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 530, Short.MAX_VALUE)));
    jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 320, Short.MAX_VALUE)
            .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jSplitPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 320, Short.MAX_VALUE)));

    mainPanel.add(jPanel3);

    statusPanel.setBackground(new java.awt.Color(204, 204, 204));
    statusPanel.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

    jLabel7.setText("Local:");

    localStatusLabel.setText("Not Connected");

    jLabel11.setText("Remote:");

    remoteStatusLabel.setText("Not Connected");

    localSendingLabel.setFont(new java.awt.Font("Courier New", 0, 11));
    localSendingLabel.setText("( )");

    localReceivingLabel.setFont(new java.awt.Font("Courier New", 0, 11));
    localReceivingLabel.setText("( )");

    remoteSendingLabel.setFont(new java.awt.Font("Courier New", 0, 11));
    remoteSendingLabel.setText("( )");

    remoteReceivingLabel.setFont(new java.awt.Font("Courier New", 0, 11));
    remoteReceivingLabel.setText("( )");

    javax.swing.GroupLayout statusPanelLayout = new javax.swing.GroupLayout(statusPanel);
    statusPanel.setLayout(statusPanelLayout);
    statusPanelLayout.setHorizontalGroup(statusPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(statusPanelLayout.createSequentialGroup().addContainerGap().addComponent(jLabel7)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(localStatusLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(localSendingLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(localReceivingLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 177, Short.MAX_VALUE)
                    .addComponent(jLabel11).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(remoteStatusLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(remoteSendingLabel)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(remoteReceivingLabel).addContainerGap()));
    statusPanelLayout
            .setVerticalGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(localStatusLabel).addComponent(localSendingLabel)
                            .addComponent(localReceivingLabel).addComponent(remoteSendingLabel)
                            .addComponent(remoteReceivingLabel).addComponent(remoteStatusLabel)
                            .addComponent(jLabel11)));

    mainPanel.add(statusPanel);

    cardPanel.add(mainPanel, "card2");

    topMenuBar.setVisible(false);

    menuFile.setMnemonic('f');
    menuFile.setText("File");

    jMenuItem3.setMnemonic('e');
    jMenuItem3.setText("Exit");
    jMenuItem3.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItem3ActionPerformed(evt);
        }
    });
    menuFile.add(jMenuItem3);

    topMenuBar.add(menuFile);

    menuTools.setMnemonic('t');
    menuTools.setText("Tools");

    menuToolsSendPacket.setMnemonic('p');
    menuToolsSendPacket.setText("Send Packet");
    menuToolsSendPacket.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            menuToolsSendPacketActionPerformed(evt);
        }
    });
    menuTools.add(menuToolsSendPacket);

    menuToolsSettings.setMnemonic('s');
    menuToolsSettings.setText("Settings");
    menuToolsSettings.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            menuToolsSettingsActionPerformed(evt);
        }
    });
    menuTools.add(menuToolsSettings);

    menuSerialPorts.setMnemonic('e');
    menuSerialPorts.setText("Select Ports");
    menuSerialPorts.addMenuListener(new javax.swing.event.MenuListener() {
        public void menuCanceled(javax.swing.event.MenuEvent evt) {
        }

        public void menuDeselected(javax.swing.event.MenuEvent evt) {
        }

        public void menuSelected(javax.swing.event.MenuEvent evt) {
            menuSerialPortsMenuSelected(evt);
        }
    });
    menuSerialPorts.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            menuSerialPortsActionPerformed(evt);
        }
    });
    menuTools.add(menuSerialPorts);

    topMenuBar.add(menuTools);

    menuHelp.setMnemonic('h');
    menuHelp.setText("Help");

    menuHelpOnline.setText("Online Help");
    menuHelpOnline.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            menuHelpOnlineActionPerformed(evt);
        }
    });
    menuHelp.add(menuHelpOnline);

    menuHelpAbout.setText("About");
    menuHelpAbout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            menuHelpAboutActionPerformed(evt);
        }
    });
    menuHelp.add(menuHelpAbout);

    topMenuBar.add(menuHelp);

    setJMenuBar(topMenuBar);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(cardPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 530, Short.MAX_VALUE));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(cardPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 340, Short.MAX_VALUE));

    pack();
}

From source file:com.act.analysis.surfactant.SurfactantAnalysis.java

/**
 * Perform all analysis for a molecule, returning a map of all available features.
 * @param inchi The molecule to analyze.
 * @param display True if the molecule should be displayed; set to false for non-interactive analysis.
 * @return A map of all features for this molecule.
 * @throws Exception/*from   ww  w.  java  2s  .  c  o m*/
 */
public static Map<FEATURES, Double> performAnalysis(String inchi, boolean display) throws Exception {
    SurfactantAnalysis surfactantAnalysis = new SurfactantAnalysis();
    surfactantAnalysis.init(inchi);

    // Start with simple structural analyses.
    Pair<Integer, Integer> farthestAtoms = surfactantAnalysis.findFarthestContributingAtomPair();
    Double longestVectorLength = surfactantAnalysis.computeDistance(farthestAtoms.getLeft(),
            farthestAtoms.getRight());

    // Then compute the atom distances to the longest vector (lv) and produce lv-normal planes at each atom.
    Pair<Map<Integer, Double>, Map<Integer, Plane>> results = surfactantAnalysis
            .computeAtomDistanceToLongestVectorAndNormalPlanes();
    // Find the max distance so we can calculate the maxDist/|lv| ratio, or "skinny" factor.
    double maxDistToLongestVector = 0.0;
    Map<Integer, Double> distancesToLongestVector = results.getLeft();
    for (Map.Entry<Integer, Double> e : distancesToLongestVector.entrySet()) {
        maxDistToLongestVector = Math.max(maxDistToLongestVector, e.getValue());
    }

    // A map of the molecule features we'll eventually output.
    Map<FEATURES, Double> features = new HashMap<>();

    // Explore the lv endpoint and min/max logP atom neighborhoods, and merge those features into the complete map.
    Map<FEATURES, Double> neighborhoodFeatures = surfactantAnalysis.exploreExtremeNeighborhoods();
    features.putAll(neighborhoodFeatures);

    /* Perform regression analysis on the projection of the molecules onto lv, where their y-axis is their logP value.
     * Higher |slope| may mean more extreme logP differences at the ends. */
    Double slope = surfactantAnalysis.performRegressionOverLVProjectionOfLogP();

    /* Compute the logP surface of the molecule (seems to require a JFrame?), and collect those features.  We consider
     * the number of closest surface components to each atom so we can guess at how much interior atoms actually
     * contribute to the molecule's solubility. */
    JFrame jFrame = new JFrame();
    jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    Map<FEATURES, Double> surfaceFeatures = surfactantAnalysis.computeSurfaceFeatures(jFrame, true);
    features.putAll(surfaceFeatures);

    features.put(FEATURES.LOGP_TRUE, surfactantAnalysis.plugin.getlogPTrue()); // Save absolute logP since we calculated it.
    features.put(FEATURES.GEO_LV_FD_RATIO, maxDistToLongestVector / longestVectorLength);
    features.put(FEATURES.REG_ABS_SLOPE, slope);

    Map<FEATURES, Double> additionalFeatures = surfactantAnalysis.calculateAdditionalFilteringFeatures();
    features.putAll(additionalFeatures);

    List<FEATURES> sortedFeatures = new ArrayList<>(features.keySet());
    Collections.sort(sortedFeatures);

    // Print these for easier progress tracking.
    System.out.format("features:\n");
    for (FEATURES f : sortedFeatures) {
        System.out.format("  %s = %f\n", f, features.get(f));
    }

    if (display) {
        jFrame.pack();
        jFrame.setVisible(true);
    }

    return features;
}

From source file:app.RunApp.java

/**
 * Init components. Generated by NetBeans.
 *///from w ww  .j a  v a  2  s . c om
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {

    buttonGroup1 = new javax.swing.ButtonGroup();
    buttonGroup2 = new javax.swing.ButtonGroup();
    buttonGroup3 = new javax.swing.ButtonGroup();
    buttonGroup4 = new javax.swing.ButtonGroup();
    jPopupMenu1 = new javax.swing.JPopupMenu();
    buttonGroup5 = new javax.swing.ButtonGroup();
    TabPrincipal = new javax.swing.JTabbedPane();
    panelSummary = new javax.swing.JPanel();
    buttonChooseFile = new javax.swing.JButton();
    textChooseFile = new javax.swing.JTextField();
    panelCurrentDataset = new javax.swing.JPanel();
    labelRelation = new javax.swing.JLabel();
    labelInstances = new javax.swing.JLabel();
    labelRelationValue = new javax.swing.JLabel();
    labelInstancesValue = new javax.swing.JLabel();
    labelAttributes = new javax.swing.JLabel();
    labelLabels = new javax.swing.JLabel();
    labelAttributesValue = new javax.swing.JLabel();
    labelLabelsValue = new javax.swing.JLabel();
    labelDensity = new javax.swing.JLabel();
    labelCardinality = new javax.swing.JLabel();
    labelDensityValue = new javax.swing.JLabel();
    labelCardinalityValue = new javax.swing.JLabel();
    labelDistinct = new javax.swing.JLabel();
    labelBound = new javax.swing.JLabel();
    labelDistinctValue = new javax.swing.JLabel();
    labelBoundValue = new javax.swing.JLabel();
    labelDiversity = new javax.swing.JLabel();
    labelDiversityValue = new javax.swing.JLabel();
    labelLxIxF = new javax.swing.JLabel();
    labelLxIxFValue = new javax.swing.JLabel();
    panelPreprocess = new javax.swing.JPanel();
    panelSplitting = new javax.swing.JPanel();
    radioRandomHoldout = new javax.swing.JRadioButton();
    labelPercIterativeStratified = new javax.swing.JLabel();
    radioIterativeStratifiedHoldout = new javax.swing.JRadioButton();
    textRandomHoldout = new javax.swing.JTextField();
    radioRandomCV = new javax.swing.JRadioButton();
    radioIterativeStratifiedCV = new javax.swing.JRadioButton();
    textIterativeStratifiedCV = new javax.swing.JTextField();
    labelFoldsRandom = new javax.swing.JLabel();
    textRandomCV = new javax.swing.JTextField();
    labelFoldsIterativeStratified = new javax.swing.JLabel();
    labelPercRandom = new javax.swing.JLabel();
    textIterativeStratifiedHoldout = new javax.swing.JTextField();
    radioLPStratifiedHoldout = new javax.swing.JRadioButton();
    textLPStratifiedHoldout = new javax.swing.JTextField();
    labelPercLPStratified = new javax.swing.JLabel();
    radioLPStratifiedCV = new javax.swing.JRadioButton();
    textLPStratifiedCV = new javax.swing.JTextField();
    labelFoldsLPStratified = new javax.swing.JLabel();
    radioNoSplit = new javax.swing.JRadioButton();
    jButtonStartPreprocess = new javax.swing.JButton();
    jButtonSaveDatasets = new javax.swing.JButton();
    panelFS = new javax.swing.JPanel();
    radioBRFS = new javax.swing.JRadioButton();
    textBRFS = new javax.swing.JTextField();
    labelBRFS = new javax.swing.JLabel();
    labelBRFSComb = new javax.swing.JLabel();
    jComboBoxBRFSComb = new javax.swing.JComboBox();
    labelBRFSNorm = new javax.swing.JLabel();
    jComboBoxBRFSNorm = new javax.swing.JComboBox();
    labelBRFSOut = new javax.swing.JLabel();
    jComboBoxBRFSOut = new javax.swing.JComboBox();
    radioRandomFS = new javax.swing.JRadioButton();
    textRandomFS = new javax.swing.JTextField();
    labelRandomFS = new javax.swing.JLabel();
    radioNoFS = new javax.swing.JRadioButton();
    jComboBoxSaveFormat = new javax.swing.JComboBox();
    panelIS = new javax.swing.JPanel();
    radioRandomIS = new javax.swing.JRadioButton();
    textRandomIS = new javax.swing.JTextField();
    labelRandomIS = new javax.swing.JLabel();
    radioNoIS = new javax.swing.JRadioButton();
    panelTransformation = new javax.swing.JPanel();
    jButtonStartTrans = new javax.swing.JButton();
    jButtonSaveDatasetsTrans = new javax.swing.JButton();
    panelTransformationChoose = new javax.swing.JPanel();
    radioLPTrans = new javax.swing.JRadioButton();
    radioBRTrans = new javax.swing.JRadioButton();
    radioIncludeLabelsTrans = new javax.swing.JRadioButton();
    radioRemoveLabelsTrans = new javax.swing.JRadioButton();
    panelLabels = new javax.swing.JPanel();
    comboBoxLabelsInformation = new javax.swing.JComboBox();
    panelImbalanceLeft = new javax.swing.JPanel();
    jScrollPane5 = new javax.swing.JScrollPane();
    tableImbalance = new javax.swing.JTable();
    export2 = new javax.swing.JButton();
    tabsImbalance = new javax.swing.JTabbedPane();
    panelExamplesPerLabel = new javax.swing.JPanel();
    panelExamplesPerLabelset = new javax.swing.JPanel();
    panelLabelsPerExample = new javax.swing.JPanel();
    panelIRperLabelIntraClass = new javax.swing.JPanel();
    panelIRperLabelset = new javax.swing.JPanel();
    panelBoxDiagram = new javax.swing.JPanel();
    panelIRperLabelInterClass = new javax.swing.JPanel();
    jLabelIR = new javax.swing.JLabel();
    panelAttributes = new javax.swing.JPanel();
    comboBoxAttributeInformation = new javax.swing.JComboBox();
    panelAttributeLeft = new javax.swing.JPanel();
    jScrollPane6 = new javax.swing.JScrollPane();
    tableAttributesLeft = new javax.swing.JTable();
    tabsAttributes = new javax.swing.JTabbedPane();
    panelBoxDiagramAtt = new javax.swing.JPanel();
    panelDependences = new javax.swing.JPanel();
    tabsDependences = new javax.swing.JTabbedPane();
    panelChiPhi = new javax.swing.JPanel();
    jLabelChiFiText = new javax.swing.JLabel();
    panelCoOcurrence = new javax.swing.JPanel();
    panelCoOcurrenceRight = new javax.swing.JPanel();
    buttonShowCoOcurrence = new javax.swing.JButton();
    jScrollPane7 = new javax.swing.JScrollPane();
    tableCoOcurrenceLeft = new javax.swing.JTable();
    buttonShowMostFrequent = new javax.swing.JButton();
    textMostFrequent = new javax.swing.JTextField();
    buttonShowMostRelated = new javax.swing.JButton();
    textMostRelated = new javax.swing.JTextField();
    buttonShowMostFrequentURelated = new javax.swing.JButton();
    textMostFrequentURelated = new javax.swing.JTextField();
    panelCoOcurrenceValues = new javax.swing.JPanel();
    panelHeatmapGraph = new javax.swing.JPanel();
    jScrollPane8 = new javax.swing.JScrollPane();
    tableHeatmapLeft = new javax.swing.JTable();
    panelHeatmap = new javax.swing.JPanel();
    buttonShowHeatMap = new javax.swing.JButton();
    buttonShowMostFrequentHeatMap = new javax.swing.JButton();
    buttonShowMostRelatedHeatMap = new javax.swing.JButton();
    textMostRelatedHeatMap = new javax.swing.JTextField();
    textMostFrequentHeatMap = new javax.swing.JTextField();
    buttonShowMostFrequentURelatedHeatMap = new javax.swing.JButton();
    textMostFrequentURelatedHeatMap = new javax.swing.JTextField();
    panelHeatmapValues = new javax.swing.JPanel();
    panelMultipleDatasets = new javax.swing.JPanel();
    panelMultipleDatasetsLeft = new javax.swing.JPanel();
    jScrollPane2 = new javax.swing.JScrollPane();
    listMultipleDatasetsLeft = new javax.swing.JList();
    buttonAddMultipleDatasets = new javax.swing.JButton();
    buttonRemoveMultipleDatasets = new javax.swing.JButton();
    jPanelMulti = new javax.swing.JPanel();
    panelMVML = new javax.swing.JPanel();
    jPanel1 = new javax.swing.JPanel();
    labelNumViews = new javax.swing.JLabel();
    labelMaxNumAttrView = new javax.swing.JLabel();
    labelMinNumAttrView = new javax.swing.JLabel();
    labelMeanNumAttrView = new javax.swing.JLabel();
    labelNumViewsValue = new javax.swing.JLabel();
    labelMaxNumAttrViewValue = new javax.swing.JLabel();
    labelMinNumAttrViewValue = new javax.swing.JLabel();
    labelMeanNumAttrViewValue = new javax.swing.JLabel();
    jPanel2 = new javax.swing.JPanel();
    buttonSaveViews = new javax.swing.JButton();
    jScrollPane3 = new javax.swing.JScrollPane();
    jTable2 = new javax.swing.JTable();
    jScrollPane4 = new javax.swing.JScrollPane();
    jTable3 = new javax.swing.JTable();
    jComboBox_SaveFormat1 = new javax.swing.JComboBox();
    buttonSaveTable = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setResizable(false);

    TabPrincipal.setDoubleBuffered(true);

    buttonChooseFile.setText("Choose file");
    buttonChooseFile.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonChooseFileActionPerformed(evt);
        }
    });

    textChooseFile.setEditable(false);
    textChooseFile.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyPressed(java.awt.event.KeyEvent evt) {
            textChooseFileKeyPressed(evt);
        }
    });

    panelCurrentDataset.setBorder(javax.swing.BorderFactory.createTitledBorder("Summary"));
    panelCurrentDataset.setPreferredSize(new java.awt.Dimension(845, 134));

    labelRelation.setText("Relation:");
    labelRelation.setName(""); // NOI18N

    labelInstances.setText("Instances:");

    labelRelationValue.setName(""); // NOI18N

    labelInstancesValue.setName(""); // NOI18N

    labelAttributes.setText("Attributes:");

    labelLabels.setText("Labels:");

    labelAttributesValue.setName(""); // NOI18N

    labelLabelsValue.setName(""); // NOI18N

    labelDensity.setText("Density:");

    labelCardinality.setText("Cardinality:");
    labelCardinality.setMaximumSize(new java.awt.Dimension(80, 18));

    labelDensityValue.setName(""); // NOI18N

    labelCardinalityValue.setName(""); // NOI18N

    labelDistinct.setText("Distinct labelset:");

    labelBound.setText("Bound:");

    labelDistinctValue.setName(""); // NOI18N

    labelBoundValue.setName(""); // NOI18N

    labelDiversity.setText("Diversity:");

    labelDiversityValue.setName(""); // NOI18N

    labelLxIxF.setText("Labels * instances * features:");

    labelLxIxFValue.setName(""); // NOI18N

    javax.swing.GroupLayout panelCurrentDatasetLayout = new javax.swing.GroupLayout(panelCurrentDataset);
    panelCurrentDataset.setLayout(panelCurrentDatasetLayout);
    panelCurrentDatasetLayout.setHorizontalGroup(panelCurrentDatasetLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelCurrentDatasetLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelCurrentDatasetLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup().addComponent(labelLxIxF)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(labelLxIxFValue))
                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                                    .addGroup(panelCurrentDatasetLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                    false)
                                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                                                    .addGroup(panelCurrentDatasetLayout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    false)
                                                            .addGroup(panelCurrentDatasetLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(labelInstances)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                                    .addComponent(labelInstancesValue,
                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                            Short.MAX_VALUE))
                                                            .addGroup(panelCurrentDatasetLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(labelCardinality,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                                    .addComponent(labelCardinalityValue,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            74,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addGroup(panelCurrentDatasetLayout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    false)
                                                            .addGroup(panelCurrentDatasetLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(labelDiversity)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                                    .addComponent(labelDiversityValue,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            95,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                                            .addGroup(panelCurrentDatasetLayout
                                                                    .createSequentialGroup()
                                                                    .addComponent(labelAttributes)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                                    .addComponent(labelAttributesValue,
                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                            Short.MAX_VALUE))))
                                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                                                    .addComponent(labelRelation)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                    .addComponent(labelRelationValue,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            Short.MAX_VALUE)))
                                    .addGap(11, 11, 11)
                                    .addGroup(panelCurrentDatasetLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                    panelCurrentDatasetLayout.createSequentialGroup()
                                                            .addComponent(labelLabels).addPreferredGap(
                                                                    javax.swing.LayoutStyle.ComponentPlacement.RELATED))
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                    panelCurrentDatasetLayout.createSequentialGroup()
                                                            .addComponent(labelBound).addGap(5, 5, 5)))
                                    .addGroup(panelCurrentDatasetLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                    false)
                                            .addComponent(labelLabelsValue,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(labelBoundValue,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 95,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addGroup(panelCurrentDatasetLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                    false)
                                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                                                    .addComponent(labelDistinct)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                    .addComponent(labelDistinctValue,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 75,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                                                    .addGap(1, 1, 1).addComponent(labelDensity)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                    .addComponent(labelDensityValue,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 134,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addContainerGap(68, Short.MAX_VALUE)));
    panelCurrentDatasetLayout.setVerticalGroup(
            panelCurrentDatasetLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelCurrentDatasetLayout.createSequentialGroup()
                            .addGroup(panelCurrentDatasetLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(labelRelation).addComponent(labelRelationValue))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addGroup(panelCurrentDatasetLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(labelInstances).addComponent(labelInstancesValue)
                                    .addComponent(labelAttributes).addComponent(labelAttributesValue)
                                    .addComponent(labelLabels).addComponent(labelLabelsValue)
                                    .addComponent(labelDensity).addComponent(labelDensityValue))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addGroup(panelCurrentDatasetLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(labelCardinality, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(labelCardinalityValue).addComponent(labelDiversity)
                                    .addComponent(labelDiversityValue).addComponent(labelBound)
                                    .addComponent(labelBoundValue).addComponent(labelDistinct)
                                    .addComponent(labelDistinctValue))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addGroup(panelCurrentDatasetLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(labelLxIxF).addComponent(labelLxIxFValue,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 14,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))));

    javax.swing.GroupLayout panelSummaryLayout = new javax.swing.GroupLayout(panelSummary);
    panelSummary.setLayout(panelSummaryLayout);
    panelSummaryLayout.setHorizontalGroup(panelSummaryLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelSummaryLayout.createSequentialGroup().addGap(24, 24, 24)
                    .addGroup(panelSummaryLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(panelCurrentDataset, javax.swing.GroupLayout.PREFERRED_SIZE, 795,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(panelSummaryLayout.createSequentialGroup()
                                    .addComponent(textChooseFile, javax.swing.GroupLayout.PREFERRED_SIZE, 665,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18).addComponent(buttonChooseFile,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 100,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(26, Short.MAX_VALUE)));
    panelSummaryLayout.setVerticalGroup(panelSummaryLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelSummaryLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelSummaryLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(textChooseFile, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonChooseFile))
                    .addGap(7, 7, 7)
                    .addComponent(panelCurrentDataset, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(347, Short.MAX_VALUE)));

    TabPrincipal.addTab("Summary", panelSummary);

    panelSplitting.setBorder(javax.swing.BorderFactory.createTitledBorder("Splitting"));

    radioRandomHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioRandomHoldout.setText("Random holdout");
    radioRandomHoldout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioRandomHoldoutActionPerformed(evt);
        }
    });

    labelPercIterativeStratified.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelPercIterativeStratified.setText("%");

    radioIterativeStratifiedHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioIterativeStratifiedHoldout.setText("Iterative stratified holdout ");
    radioIterativeStratifiedHoldout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioIterativeStratifiedHoldoutActionPerformed(evt);
        }
    });

    textRandomHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textRandomHoldout.setText("70");

    radioRandomCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioRandomCV.setText("Random CV");
    radioRandomCV.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioRandomCVActionPerformed(evt);
        }
    });

    radioIterativeStratifiedCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioIterativeStratifiedCV.setText("Iterative stratified CV");
    radioIterativeStratifiedCV.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioIterativeStratifiedCVActionPerformed(evt);
        }
    });

    textIterativeStratifiedCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textIterativeStratifiedCV.setText("5");
    textIterativeStratifiedCV.setEnabled(false);

    labelFoldsRandom.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelFoldsRandom.setText("Folds");

    textRandomCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textRandomCV.setText("5");
    textRandomCV.setEnabled(false);

    labelFoldsIterativeStratified.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelFoldsIterativeStratified.setText("Folds");

    labelPercRandom.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelPercRandom.setText("%");

    textIterativeStratifiedHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textIterativeStratifiedHoldout.setText("70");
    textIterativeStratifiedHoldout.setEnabled(false);

    radioLPStratifiedHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioLPStratifiedHoldout.setText("LabelPowerset stratified holdout ");
    radioLPStratifiedHoldout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioLPStratifiedHoldoutActionPerformed(evt);
        }
    });

    textLPStratifiedHoldout.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textLPStratifiedHoldout.setText("70");
    textLPStratifiedHoldout.setEnabled(false);

    labelPercLPStratified.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelPercLPStratified.setText("%");

    radioLPStratifiedCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioLPStratifiedCV.setText("LabelPowerset stratified CV");
    radioLPStratifiedCV.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioLPStratifiedCVActionPerformed(evt);
        }
    });

    textLPStratifiedCV.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textLPStratifiedCV.setText("5");
    textLPStratifiedCV.setEnabled(false);

    labelFoldsLPStratified.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelFoldsLPStratified.setText("Folds");

    radioNoSplit.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioNoSplit.setText("None");
    radioNoSplit.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioNoSplitActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelSplittingLayout = new javax.swing.GroupLayout(panelSplitting);
    panelSplitting.setLayout(panelSplittingLayout);
    panelSplittingLayout.setHorizontalGroup(panelSplittingLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelSplittingLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelSplittingLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(radioNoSplit)
                            .addGroup(panelSplittingLayout.createSequentialGroup().addGroup(panelSplittingLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(radioRandomHoldout, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(radioIterativeStratifiedHoldout,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(radioLPStratifiedHoldout,
                                            javax.swing.GroupLayout.Alignment.LEADING))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(panelSplittingLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(panelSplittingLayout
                                                    .createParallelGroup(
                                                            javax.swing.GroupLayout.Alignment.LEADING)
                                                    .addGroup(panelSplittingLayout.createSequentialGroup()
                                                            .addComponent(textLPStratifiedHoldout,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 31,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addPreferredGap(
                                                                    javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                            .addComponent(labelPercLPStratified))
                                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                            panelSplittingLayout.createSequentialGroup()
                                                                    .addComponent(
                                                                            textIterativeStratifiedHoldout,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            31,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                                    .addComponent(
                                                                            labelPercIterativeStratified)))
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                    panelSplittingLayout.createSequentialGroup()
                                                            .addComponent(textRandomHoldout,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addGap(11, 11, 11).addComponent(labelPercRandom)))
                                    .addGap(84, 84, 84)
                                    .addGroup(panelSplittingLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                    false)
                                            .addComponent(radioLPStratifiedCV,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(radioIterativeStratifiedCV,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(radioRandomCV, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    220, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(panelSplittingLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(panelSplittingLayout
                                                    .createParallelGroup(
                                                            javax.swing.GroupLayout.Alignment.LEADING)
                                                    .addGroup(panelSplittingLayout.createSequentialGroup()
                                                            .addComponent(textRandomCV,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 32,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addPreferredGap(
                                                                    javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                            .addComponent(labelFoldsRandom))
                                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                            panelSplittingLayout.createSequentialGroup()
                                                                    .addComponent(textIterativeStratifiedCV,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            32,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addPreferredGap(
                                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                                    .addComponent(
                                                                            labelFoldsIterativeStratified)))
                                            .addGroup(panelSplittingLayout.createSequentialGroup()
                                                    .addComponent(textLPStratifiedCV,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 32,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addComponent(labelFoldsLPStratified)))))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    panelSplittingLayout.setVerticalGroup(panelSplittingLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelSplittingLayout.createSequentialGroup().addComponent(radioNoSplit)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelSplittingLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioRandomHoldout)
                            .addComponent(textRandomHoldout, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelPercRandom).addComponent(radioRandomCV)
                            .addComponent(labelFoldsRandom).addComponent(textRandomCV,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelSplittingLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioIterativeStratifiedHoldout)
                            .addComponent(textIterativeStratifiedHoldout,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelPercIterativeStratified, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    14, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(radioIterativeStratifiedCV)
                            .addComponent(textIterativeStratifiedCV, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelFoldsIterativeStratified))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelSplittingLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioLPStratifiedHoldout).addComponent(radioLPStratifiedCV)
                            .addComponent(textLPStratifiedCV, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelFoldsLPStratified)
                            .addComponent(textLPStratifiedHoldout, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelPercLPStratified, javax.swing.GroupLayout.PREFERRED_SIZE, 14,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))));

    jButtonStartPreprocess.setText("Start");
    jButtonStartPreprocess.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButtonStartPreprocessActionPerformed(evt);
        }
    });

    jButtonSaveDatasets.setText("Save datasets");
    jButtonSaveDatasets.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButtonSaveDatasetsActionPerformed(evt);
        }
    });

    panelFS.setBorder(javax.swing.BorderFactory.createTitledBorder("Feature Selection"));

    radioBRFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioBRFS.setText("Binary Relevance attribute selection");
    radioBRFS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioBRFSActionPerformed(evt);
        }
    });

    textBRFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textBRFS.setText("100");
    textBRFS.setEnabled(false);

    labelBRFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelBRFS.setText("features");

    labelBRFSComb.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelBRFSComb.setText("Comb");
    labelBRFSComb.setEnabled(false);

    jComboBoxBRFSComb.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    jComboBoxBRFSComb.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "max", "min", "avg" }));
    jComboBoxBRFSComb.setEnabled(false);
    jComboBoxBRFSComb.setPreferredSize(new java.awt.Dimension(58, 20));

    labelBRFSNorm.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelBRFSNorm.setText("Norm");
    labelBRFSNorm.setEnabled(false);

    jComboBoxBRFSNorm.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    jComboBoxBRFSNorm.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "dm", "dl", "none" }));
    jComboBoxBRFSNorm.setEnabled(false);
    jComboBoxBRFSNorm.setPreferredSize(new java.awt.Dimension(63, 20));

    labelBRFSOut.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelBRFSOut.setText("Score");
    labelBRFSOut.setEnabled(false);

    jComboBoxBRFSOut.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    jComboBoxBRFSOut.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "eval", "rank" }));
    jComboBoxBRFSOut.setEnabled(false);
    jComboBoxBRFSOut.setPreferredSize(new java.awt.Dimension(59, 20));

    radioRandomFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioRandomFS.setText("Random attribute selection");
    radioRandomFS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioRandomFSActionPerformed(evt);
        }
    });

    textRandomFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textRandomFS.setText("100");
    textRandomFS.setEnabled(false);

    labelRandomFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelRandomFS.setText("features");

    radioNoFS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioNoFS.setText("None");
    radioNoFS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioNoFSActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelFSLayout = new javax.swing.GroupLayout(panelFS);
    panelFS.setLayout(panelFSLayout);
    panelFSLayout.setHorizontalGroup(panelFSLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelFSLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelFSLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(radioNoFS)
                            .addGroup(panelFSLayout.createSequentialGroup().addComponent(radioRandomFS)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(textRandomFS, javax.swing.GroupLayout.PREFERRED_SIZE, 64,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(labelRandomFS))
                            .addGroup(panelFSLayout.createSequentialGroup().addComponent(radioBRFS)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(textBRFS, javax.swing.GroupLayout.PREFERRED_SIZE, 64,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(labelBRFS).addGap(44, 44, 44).addComponent(labelBRFSComb)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jComboBoxBRFSComb, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18).addComponent(labelBRFSNorm)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jComboBoxBRFSNorm, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18).addComponent(labelBRFSOut)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jComboBoxBRFSOut, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(114, Short.MAX_VALUE)));
    panelFSLayout.setVerticalGroup(panelFSLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelFSLayout.createSequentialGroup().addComponent(radioNoFS)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelFSLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioBRFS)
                            .addComponent(textBRFS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelBRFS).addComponent(labelBRFSComb)
                            .addComponent(jComboBoxBRFSComb, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelBRFSNorm)
                            .addComponent(jComboBoxBRFSNorm, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelBRFSOut).addComponent(jComboBoxBRFSOut,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelFSLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioRandomFS)
                            .addComponent(textRandomFS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelRandomFS))
                    .addContainerGap()));

    jComboBoxSaveFormat
            .setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Mulan .arff", "Meka .arff" }));
    jComboBoxSaveFormat.setEnabled(false);

    panelIS.setBorder(javax.swing.BorderFactory.createTitledBorder("Instance Selection"));

    radioRandomIS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioRandomIS.setText("Random instance selection");
    radioRandomIS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioRandomISActionPerformed(evt);
        }
    });

    textRandomIS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    textRandomIS.setText("500");
    textRandomIS.setEnabled(false);

    labelRandomIS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    labelRandomIS.setText("instances");

    radioNoIS.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioNoIS.setText("None");
    radioNoIS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioNoISActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelISLayout = new javax.swing.GroupLayout(panelIS);
    panelIS.setLayout(panelISLayout);
    panelISLayout.setHorizontalGroup(panelISLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelISLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelISLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(radioNoIS)
                            .addGroup(panelISLayout.createSequentialGroup().addComponent(radioRandomIS)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(textRandomIS, javax.swing.GroupLayout.PREFERRED_SIZE, 64,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(labelRandomIS)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    panelISLayout.setVerticalGroup(panelISLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelISLayout.createSequentialGroup().addComponent(radioNoIS)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelISLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(radioRandomIS)
                            .addComponent(textRandomIS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(labelRandomIS))
                    .addContainerGap()));

    javax.swing.GroupLayout panelPreprocessLayout = new javax.swing.GroupLayout(panelPreprocess);
    panelPreprocess.setLayout(panelPreprocessLayout);
    panelPreprocessLayout.setHorizontalGroup(panelPreprocessLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelPreprocessLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelPreprocessLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelPreprocessLayout.createSequentialGroup().addGap(10, 10, 10)
                                    .addComponent(jButtonStartPreprocess,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 89,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18).addComponent(jButtonSaveDatasets)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jComboBoxSaveFormat, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addGroup(panelPreprocessLayout.createSequentialGroup()
                                    .addGroup(panelPreprocessLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(panelFS, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(panelSplitting, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addComponent(panelIS, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                    .addContainerGap()))));
    panelPreprocessLayout.setVerticalGroup(panelPreprocessLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelPreprocessLayout.createSequentialGroup().addContainerGap()
                    .addComponent(panelIS, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(panelFS, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(panelSplitting, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelPreprocessLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jButtonStartPreprocess).addComponent(jButtonSaveDatasets)
                            .addComponent(jComboBoxSaveFormat, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(191, Short.MAX_VALUE)));

    panelSplitting.getAccessibleContext().setAccessibleName("");

    TabPrincipal.addTab("Preprocess", panelPreprocess);

    jButtonStartTrans.setText("Transform");
    jButtonStartTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButtonStartTransActionPerformed(evt);
        }
    });

    jButtonSaveDatasetsTrans.setText("Save");
    jButtonSaveDatasetsTrans.setEnabled(false);
    jButtonSaveDatasetsTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButtonSaveDatasetsTransActionPerformed(evt);
        }
    });

    panelTransformationChoose.setBorder(javax.swing.BorderFactory.createTitledBorder("Transformation methods"));

    radioLPTrans.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioLPTrans.setText("Label Powerset transformation");
    radioLPTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioLPTransActionPerformed(evt);
        }
    });

    radioBRTrans.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioBRTrans.setText("Binary Relevance transformation");
    radioBRTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioBRTransActionPerformed(evt);
        }
    });

    radioIncludeLabelsTrans.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioIncludeLabelsTrans.setText("Include Labels transformation");
    radioIncludeLabelsTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioIncludeLabelsTransActionPerformed(evt);
        }
    });

    radioRemoveLabelsTrans.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N
    radioRemoveLabelsTrans.setText("Remove All Labels transformation");
    radioRemoveLabelsTrans.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            radioRemoveLabelsTransActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelTransformationChooseLayout = new javax.swing.GroupLayout(
            panelTransformationChoose);
    panelTransformationChoose.setLayout(panelTransformationChooseLayout);
    panelTransformationChooseLayout.setHorizontalGroup(
            panelTransformationChooseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelTransformationChooseLayout.createSequentialGroup().addContainerGap()
                            .addGroup(panelTransformationChooseLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(radioLPTrans).addComponent(radioBRTrans)
                                    .addComponent(radioIncludeLabelsTrans).addComponent(radioRemoveLabelsTrans))
                            .addContainerGap(608, Short.MAX_VALUE)));
    panelTransformationChooseLayout.setVerticalGroup(
            panelTransformationChooseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelTransformationChooseLayout.createSequentialGroup().addContainerGap()
                            .addComponent(radioBRTrans)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(radioLPTrans)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(radioIncludeLabelsTrans)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(radioRemoveLabelsTrans)
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    javax.swing.GroupLayout panelTransformationLayout = new javax.swing.GroupLayout(panelTransformation);
    panelTransformation.setLayout(panelTransformationLayout);
    panelTransformationLayout.setHorizontalGroup(panelTransformationLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelTransformationLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelTransformationLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelTransformationLayout.createSequentialGroup()
                                    .addComponent(panelTransformationChoose,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addContainerGap())
                            .addGroup(panelTransformationLayout.createSequentialGroup().addGap(10, 10, 10)
                                    .addComponent(jButtonStartTrans, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            100, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jButtonSaveDatasetsTrans,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 89,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap(625, Short.MAX_VALUE)))));
    panelTransformationLayout.setVerticalGroup(panelTransformationLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelTransformationLayout.createSequentialGroup().addContainerGap()
                    .addComponent(panelTransformationChoose, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelTransformationLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jButtonStartTrans).addComponent(jButtonSaveDatasetsTrans))
                    .addContainerGap(302, Short.MAX_VALUE)));

    TabPrincipal.addTab("Transformation", panelTransformation);

    comboBoxLabelsInformation.setModel(new javax.swing.DefaultComboBoxModel(
            new String[] { "Label frequency", "Labelset frequency", "Labels histogram", "Box diagram",
                    "IR inter class", "IR intra class", "IR per labelset" }));
    comboBoxLabelsInformation.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            comboBoxLabelsInformationActionPerformed(evt);
        }
    });

    tableImbalance
            .setModel(new javax.swing.table.DefaultTableModel(new Object[][] { {}, {}, {}, {} }, new String[] {

    }));
    tableImbalance.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            tableImbalanceMouseClicked(evt);
        }
    });
    jScrollPane5.setViewportView(tableImbalance);

    export2.setText("Save");
    export2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            export2ActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelImbalanceLeftLayout = new javax.swing.GroupLayout(panelImbalanceLeft);
    panelImbalanceLeft.setLayout(panelImbalanceLeftLayout);
    panelImbalanceLeftLayout.setHorizontalGroup(
            panelImbalanceLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelImbalanceLeftLayout.createSequentialGroup()
                            .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 250,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(panelImbalanceLeftLayout.createSequentialGroup().addContainerGap()
                            .addComponent(export2, javax.swing.GroupLayout.PREFERRED_SIZE, 80,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    panelImbalanceLeftLayout.setVerticalGroup(
            panelImbalanceLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelImbalanceLeftLayout.createSequentialGroup()
                            .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 370,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(export2, javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    tabsImbalance.setTabPlacement(javax.swing.JTabbedPane.RIGHT);
    tabsImbalance.setEnabled(false);
    tabsImbalance.setFocusable(false);
    tabsImbalance.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            tabsImbalanceStateChanged(evt);
        }
    });

    javax.swing.GroupLayout panelExamplesPerLabelLayout = new javax.swing.GroupLayout(panelExamplesPerLabel);
    panelExamplesPerLabel.setLayout(panelExamplesPerLabelLayout);
    panelExamplesPerLabelLayout.setHorizontalGroup(panelExamplesPerLabelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelExamplesPerLabelLayout.setVerticalGroup(panelExamplesPerLabelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 469, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelExamplesPerLabel);

    javax.swing.GroupLayout panelExamplesPerLabelsetLayout = new javax.swing.GroupLayout(
            panelExamplesPerLabelset);
    panelExamplesPerLabelset.setLayout(panelExamplesPerLabelsetLayout);
    panelExamplesPerLabelsetLayout.setHorizontalGroup(panelExamplesPerLabelsetLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelExamplesPerLabelsetLayout.setVerticalGroup(panelExamplesPerLabelsetLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelExamplesPerLabelset);

    javax.swing.GroupLayout panelLabelsPerExampleLayout = new javax.swing.GroupLayout(panelLabelsPerExample);
    panelLabelsPerExample.setLayout(panelLabelsPerExampleLayout);
    panelLabelsPerExampleLayout.setHorizontalGroup(panelLabelsPerExampleLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelLabelsPerExampleLayout.setVerticalGroup(panelLabelsPerExampleLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelLabelsPerExample);

    javax.swing.GroupLayout panelIRperLabelIntraClassLayout = new javax.swing.GroupLayout(
            panelIRperLabelIntraClass);
    panelIRperLabelIntraClass.setLayout(panelIRperLabelIntraClassLayout);
    panelIRperLabelIntraClassLayout.setHorizontalGroup(panelIRperLabelIntraClassLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelIRperLabelIntraClassLayout.setVerticalGroup(panelIRperLabelIntraClassLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelIRperLabelIntraClass);

    panelIRperLabelset.setEnabled(false);

    javax.swing.GroupLayout panelIRperLabelsetLayout = new javax.swing.GroupLayout(panelIRperLabelset);
    panelIRperLabelset.setLayout(panelIRperLabelsetLayout);
    panelIRperLabelsetLayout.setHorizontalGroup(panelIRperLabelsetLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelIRperLabelsetLayout.setVerticalGroup(panelIRperLabelsetLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelIRperLabelset);

    javax.swing.GroupLayout panelBoxDiagramLayout = new javax.swing.GroupLayout(panelBoxDiagram);
    panelBoxDiagram.setLayout(panelBoxDiagramLayout);
    panelBoxDiagramLayout.setHorizontalGroup(panelBoxDiagramLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelBoxDiagramLayout.setVerticalGroup(panelBoxDiagramLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelBoxDiagram);

    javax.swing.GroupLayout panelIRperLabelInterClassLayout = new javax.swing.GroupLayout(
            panelIRperLabelInterClass);
    panelIRperLabelInterClass.setLayout(panelIRperLabelInterClassLayout);
    panelIRperLabelInterClassLayout.setHorizontalGroup(panelIRperLabelInterClassLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelIRperLabelInterClassLayout.setVerticalGroup(panelIRperLabelInterClassLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 446, Short.MAX_VALUE));

    tabsImbalance.addTab("", panelIRperLabelInterClass);

    jLabelIR.setFont(new java.awt.Font("Arial", 0, 13)); // NOI18N
    jLabelIR.setText("label IR");
    jLabelIR.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

    javax.swing.GroupLayout panelLabelsLayout = new javax.swing.GroupLayout(panelLabels);
    panelLabels.setLayout(panelLabelsLayout);
    panelLabelsLayout.setHorizontalGroup(panelLabelsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelLabelsLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelLabelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelLabelsLayout.createSequentialGroup()
                                    .addComponent(panelImbalanceLeft, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))
                            .addGroup(panelLabelsLayout.createSequentialGroup().addGap(10, 10, 10)
                                    .addComponent(jLabelIR)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                    .addGroup(panelLabelsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(comboBoxLabelsInformation, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    553, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(tabsImbalance, javax.swing.GroupLayout.PREFERRED_SIZE, 561,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(38, 38, 38)));
    panelLabelsLayout.setVerticalGroup(panelLabelsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelLabelsLayout.createSequentialGroup().addContainerGap().addGroup(panelLabelsLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelLabelsLayout.createSequentialGroup()
                            .addComponent(comboBoxLabelsInformation, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(tabsImbalance, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                    Short.MAX_VALUE)
                            .addContainerGap())
                    .addGroup(panelLabelsLayout.createSequentialGroup()
                            .addComponent(panelImbalanceLeft, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabelIR).addGap(0, 0, Short.MAX_VALUE)))));

    panelImbalanceLeft.getAccessibleContext().setAccessibleName("");

    TabPrincipal.addTab("Labels", panelLabels);

    comboBoxAttributeInformation.setModel(
            new javax.swing.DefaultComboBoxModel(new String[] { "Box diagram for numeric attributes" }));
    comboBoxAttributeInformation.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            comboBoxAttributeInformationActionPerformed(evt);
        }
    });

    tableAttributesLeft
            .setModel(new javax.swing.table.DefaultTableModel(new Object[][] { {}, {}, {}, {} }, new String[] {

    }));
    tableAttributesLeft.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            tableAttributesLeftMouseClicked(evt);
        }
    });
    jScrollPane6.setViewportView(tableAttributesLeft);

    javax.swing.GroupLayout panelAttributeLeftLayout = new javax.swing.GroupLayout(panelAttributeLeft);
    panelAttributeLeft.setLayout(panelAttributeLeftLayout);
    panelAttributeLeftLayout.setHorizontalGroup(panelAttributeLeftLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelAttributeLeftLayout.createSequentialGroup().addComponent(jScrollPane6,
                    javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));
    panelAttributeLeftLayout.setVerticalGroup(
            panelAttributeLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelAttributeLeftLayout.createSequentialGroup()
                            .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 370,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap(86, Short.MAX_VALUE)));

    tabsAttributes.setTabPlacement(javax.swing.JTabbedPane.RIGHT);
    tabsAttributes.setEnabled(false);
    tabsAttributes.setFocusable(false);
    tabsAttributes.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            tabsAttributesStateChanged(evt);
        }
    });

    javax.swing.GroupLayout panelBoxDiagramAttLayout = new javax.swing.GroupLayout(panelBoxDiagramAtt);
    panelBoxDiagramAtt.setLayout(panelBoxDiagramAttLayout);
    panelBoxDiagramAttLayout.setHorizontalGroup(panelBoxDiagramAttLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelBoxDiagramAttLayout.setVerticalGroup(panelBoxDiagramAttLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 469, Short.MAX_VALUE));

    tabsAttributes.addTab("", panelBoxDiagramAtt);

    javax.swing.GroupLayout panelAttributesLayout = new javax.swing.GroupLayout(panelAttributes);
    panelAttributes.setLayout(panelAttributesLayout);
    panelAttributesLayout.setHorizontalGroup(panelAttributesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelAttributesLayout.createSequentialGroup().addContainerGap()
                    .addComponent(panelAttributeLeft, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(panelAttributesLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(comboBoxAttributeInformation, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    553, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(tabsAttributes, javax.swing.GroupLayout.PREFERRED_SIZE, 561,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(38, 38, 38)));
    panelAttributesLayout.setVerticalGroup(panelAttributesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelAttributesLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelAttributesLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelAttributesLayout.createSequentialGroup()
                                    .addComponent(comboBoxAttributeInformation,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(tabsAttributes, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                            Short.MAX_VALUE)
                                    .addContainerGap())
                            .addGroup(panelAttributesLayout.createSequentialGroup()
                                    .addComponent(panelAttributeLeft, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(0, 0, Short.MAX_VALUE)))));

    TabPrincipal.addTab("Attributes", panelAttributes);

    tabsDependences.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            tabsDependencesStateChanged(evt);
        }
    });

    jLabelChiFiText.setText(
            "When the Chi coefficient is > 6.635 the labels are dependent at 99% confidence (marked in red)");

    javax.swing.GroupLayout panelChiPhiLayout = new javax.swing.GroupLayout(panelChiPhi);
    panelChiPhi.setLayout(panelChiPhiLayout);
    panelChiPhiLayout
            .setHorizontalGroup(panelChiPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelChiPhiLayout.createSequentialGroup().addGap(24, 24, 24)
                            .addComponent(jLabelChiFiText).addContainerGap(153, Short.MAX_VALUE)));
    panelChiPhiLayout.setVerticalGroup(panelChiPhiLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelChiPhiLayout.createSequentialGroup()
                    .addContainerGap(429, Short.MAX_VALUE).addComponent(jLabelChiFiText).addGap(27, 27, 27)));

    tabsDependences.addTab("Chi & Phi coefficient", panelChiPhi);

    panelCoOcurrence.setName("jpanel25"); // NOI18N
    panelCoOcurrence.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseReleased(java.awt.event.MouseEvent evt) {
            panelCoOcurrenceMouseReleased(evt);
        }
    });

    panelCoOcurrenceRight.setName("jpanel10"); // NOI18N

    javax.swing.GroupLayout panelCoOcurrenceRightLayout = new javax.swing.GroupLayout(panelCoOcurrenceRight);
    panelCoOcurrenceRight.setLayout(panelCoOcurrenceRightLayout);
    panelCoOcurrenceRightLayout.setHorizontalGroup(panelCoOcurrenceRightLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 540, Short.MAX_VALUE));
    panelCoOcurrenceRightLayout.setVerticalGroup(panelCoOcurrenceRightLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 415, Short.MAX_VALUE));

    buttonShowCoOcurrence.setText("Show selected");
    buttonShowCoOcurrence.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowCoOcurrenceActionPerformed(evt);
        }
    });

    tableCoOcurrenceLeft
            .setModel(new javax.swing.table.DefaultTableModel(new Object[][] { {}, {}, {}, {} }, new String[] {

    }));
    jScrollPane7.setViewportView(tableCoOcurrenceLeft);

    buttonShowMostFrequent.setText("Show most frequent");
    buttonShowMostFrequent.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostFrequentActionPerformed(evt);
        }
    });

    textMostFrequent.setText("10");

    buttonShowMostRelated.setText("Show most related");
    buttonShowMostRelated.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostRelatedActionPerformed(evt);
        }
    });

    textMostRelated.setText("10");

    buttonShowMostFrequentURelated.setText("Show most frequent U most related");
    buttonShowMostFrequentURelated.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostFrequentURelatedActionPerformed(evt);
        }
    });

    textMostFrequentURelated.setText("10");

    javax.swing.GroupLayout panelCoOcurrenceLayout = new javax.swing.GroupLayout(panelCoOcurrence);
    panelCoOcurrence.setLayout(panelCoOcurrenceLayout);
    panelCoOcurrenceLayout.setHorizontalGroup(panelCoOcurrenceLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelCoOcurrenceLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelCoOcurrenceLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelCoOcurrenceLayout.createSequentialGroup()
                                    .addGroup(panelCoOcurrenceLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(panelCoOcurrenceLayout.createSequentialGroup()
                                                    .addComponent(buttonShowMostRelated,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 186,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addComponent(textMostRelated,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addComponent(jScrollPane7, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    246, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGroup(panelCoOcurrenceLayout.createSequentialGroup()
                                                    .addGroup(panelCoOcurrenceLayout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.TRAILING,
                                                                    false)
                                                            .addComponent(buttonShowCoOcurrence,
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                    Short.MAX_VALUE)
                                                            .addComponent(buttonShowMostFrequent,
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE, 186,
                                                                    Short.MAX_VALUE))
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addComponent(textMostFrequent,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                                    .addGap(18, 18, 18)
                                    .addComponent(panelCoOcurrenceRight, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(panelCoOcurrenceLayout.createSequentialGroup()
                                    .addComponent(buttonShowMostFrequentURelated)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(textMostFrequentURelated,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    panelCoOcurrenceLayout.setVerticalGroup(panelCoOcurrenceLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelCoOcurrenceLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelCoOcurrenceLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelCoOcurrenceLayout.createSequentialGroup()
                                    .addComponent(jScrollPane7, javax.swing.GroupLayout.PREFERRED_SIZE, 307,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18)
                                    .addComponent(buttonShowCoOcurrence, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            25, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addGroup(panelCoOcurrenceLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(buttonShowMostFrequent).addComponent(textMostFrequent,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addGroup(panelCoOcurrenceLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(buttonShowMostRelated).addComponent(textMostRelated,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(panelCoOcurrenceRight, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelCoOcurrenceLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonShowMostFrequentURelated).addComponent(textMostFrequentURelated,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));

    tabsDependences.addTab("Co-occurrence graph", panelCoOcurrence);

    javax.swing.GroupLayout panelCoOcurrenceValuesLayout = new javax.swing.GroupLayout(panelCoOcurrenceValues);
    panelCoOcurrenceValues.setLayout(panelCoOcurrenceValuesLayout);
    panelCoOcurrenceValuesLayout.setHorizontalGroup(panelCoOcurrenceValuesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 828, Short.MAX_VALUE));
    panelCoOcurrenceValuesLayout.setVerticalGroup(panelCoOcurrenceValuesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 474, Short.MAX_VALUE));

    tabsDependences.addTab("Co-occurrence values", panelCoOcurrenceValues);

    panelHeatmapGraph.setName("jpanel26"); // NOI18N

    tableHeatmapLeft
            .setModel(new javax.swing.table.DefaultTableModel(new Object[][] { {}, {}, {}, {} }, new String[] {

    }));
    jScrollPane8.setViewportView(tableHeatmapLeft);

    panelHeatmap.setName("jpanel10"); // NOI18N

    javax.swing.GroupLayout panelHeatmapLayout = new javax.swing.GroupLayout(panelHeatmap);
    panelHeatmap.setLayout(panelHeatmapLayout);
    panelHeatmapLayout.setHorizontalGroup(panelHeatmapLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 532, Short.MAX_VALUE));
    panelHeatmapLayout.setVerticalGroup(panelHeatmapLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 415, Short.MAX_VALUE));

    buttonShowHeatMap.setText("Show selected");
    buttonShowHeatMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowHeatMapActionPerformed(evt);
        }
    });

    buttonShowMostFrequentHeatMap.setText("Show most frequent");
    buttonShowMostFrequentHeatMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostFrequentHeatMapActionPerformed(evt);
        }
    });

    buttonShowMostRelatedHeatMap.setText("Show most related");
    buttonShowMostRelatedHeatMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostRelatedHeatMapActionPerformed(evt);
        }
    });

    textMostRelatedHeatMap.setText("10");

    textMostFrequentHeatMap.setText("10");

    buttonShowMostFrequentURelatedHeatMap.setText("Show most frequent U most related");
    buttonShowMostFrequentURelatedHeatMap.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonShowMostFrequentURelatedHeatMapActionPerformed(evt);
        }
    });

    textMostFrequentURelatedHeatMap.setText("10");

    javax.swing.GroupLayout panelHeatmapGraphLayout = new javax.swing.GroupLayout(panelHeatmapGraph);
    panelHeatmapGraph.setLayout(panelHeatmapGraphLayout);
    panelHeatmapGraphLayout.setHorizontalGroup(panelHeatmapGraphLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelHeatmapGraphLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelHeatmapGraphLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(panelHeatmapGraphLayout.createSequentialGroup()
                                    .addGroup(panelHeatmapGraphLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(jScrollPane8, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    246, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGroup(panelHeatmapGraphLayout.createSequentialGroup()
                                                    .addComponent(buttonShowMostRelatedHeatMap,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 186,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addComponent(textMostRelatedHeatMap,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addGroup(panelHeatmapGraphLayout.createSequentialGroup()
                                                    .addGroup(panelHeatmapGraphLayout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.TRAILING,
                                                                    false)
                                                            .addComponent(buttonShowHeatMap,
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                    Short.MAX_VALUE)
                                                            .addComponent(buttonShowMostFrequentHeatMap,
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 186,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                    .addComponent(textMostFrequentHeatMap,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                                    .addGap(18, 18, 18)
                                    .addComponent(panelHeatmap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(panelHeatmapGraphLayout.createSequentialGroup()
                                    .addComponent(buttonShowMostFrequentURelatedHeatMap)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(textMostFrequentURelatedHeatMap,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 30,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(24, Short.MAX_VALUE)));
    panelHeatmapGraphLayout.setVerticalGroup(panelHeatmapGraphLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelHeatmapGraphLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelHeatmapGraphLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(panelHeatmap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(panelHeatmapGraphLayout.createSequentialGroup()
                                    .addComponent(jScrollPane8, javax.swing.GroupLayout.PREFERRED_SIZE, 307,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(18, 18, 18)
                                    .addComponent(buttonShowHeatMap, javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addGroup(panelHeatmapGraphLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(buttonShowMostFrequentHeatMap)
                                            .addComponent(textMostFrequentHeatMap,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addGroup(panelHeatmapGraphLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(buttonShowMostRelatedHeatMap)
                                            .addComponent(textMostRelatedHeatMap,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelHeatmapGraphLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonShowMostFrequentURelatedHeatMap).addComponent(
                                    textMostFrequentURelatedHeatMap, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    tabsDependences.addTab(" Heatmap graph", panelHeatmapGraph);

    javax.swing.GroupLayout panelHeatmapValuesLayout = new javax.swing.GroupLayout(panelHeatmapValues);
    panelHeatmapValues.setLayout(panelHeatmapValuesLayout);
    panelHeatmapValuesLayout.setHorizontalGroup(panelHeatmapValuesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 828, Short.MAX_VALUE));
    panelHeatmapValuesLayout.setVerticalGroup(panelHeatmapValuesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 474, Short.MAX_VALUE));

    tabsDependences.addTab("Heatmap values", panelHeatmapValues);

    javax.swing.GroupLayout panelDependencesLayout = new javax.swing.GroupLayout(panelDependences);
    panelDependences.setLayout(panelDependencesLayout);
    panelDependencesLayout.setHorizontalGroup(panelDependencesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(panelDependencesLayout
                    .createSequentialGroup().addContainerGap().addComponent(tabsDependences)));
    panelDependencesLayout.setVerticalGroup(panelDependencesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(tabsDependences));

    TabPrincipal.addTab("Dependences", panelDependences);

    panelMultipleDatasetsLeft.setBorder(javax.swing.BorderFactory.createTitledBorder("Choose datasets"));

    jScrollPane2.setViewportView(listMultipleDatasetsLeft);

    buttonAddMultipleDatasets.setText("Add");
    buttonAddMultipleDatasets.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonAddMultipleDatasetsActionPerformed(evt);
        }
    });

    buttonRemoveMultipleDatasets.setText("Remove");
    buttonRemoveMultipleDatasets.setPreferredSize(new java.awt.Dimension(80, 20));
    buttonRemoveMultipleDatasets.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonRemoveMultipleDatasetsActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout panelMultipleDatasetsLeftLayout = new javax.swing.GroupLayout(
            panelMultipleDatasetsLeft);
    panelMultipleDatasetsLeft.setLayout(panelMultipleDatasetsLeftLayout);
    panelMultipleDatasetsLeftLayout.setHorizontalGroup(
            panelMultipleDatasetsLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(panelMultipleDatasetsLeftLayout.createSequentialGroup()
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 246,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(panelMultipleDatasetsLeftLayout.createSequentialGroup().addContainerGap()
                            .addComponent(buttonAddMultipleDatasets, javax.swing.GroupLayout.PREFERRED_SIZE, 90,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(buttonRemoveMultipleDatasets, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    90, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap()));
    panelMultipleDatasetsLeftLayout.setVerticalGroup(panelMultipleDatasetsLeftLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelMultipleDatasetsLeftLayout.createSequentialGroup()
                    .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 385, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(panelMultipleDatasetsLeftLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonAddMultipleDatasets, javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonRemoveMultipleDatasets, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    25, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));

    javax.swing.GroupLayout jPanelMultiLayout = new javax.swing.GroupLayout(jPanelMulti);
    jPanelMulti.setLayout(jPanelMultiLayout);
    jPanelMultiLayout.setHorizontalGroup(jPanelMultiLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 554, Short.MAX_VALUE));
    jPanelMultiLayout.setVerticalGroup(jPanelMultiLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));

    javax.swing.GroupLayout panelMultipleDatasetsLayout = new javax.swing.GroupLayout(panelMultipleDatasets);
    panelMultipleDatasets.setLayout(panelMultipleDatasetsLayout);
    panelMultipleDatasetsLayout.setHorizontalGroup(panelMultipleDatasetsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelMultipleDatasetsLayout.createSequentialGroup().addContainerGap()
                    .addComponent(panelMultipleDatasetsLeft, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jPanelMulti, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));
    panelMultipleDatasetsLayout.setVerticalGroup(panelMultipleDatasetsLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelMultipleDatasetsLayout.createSequentialGroup().addContainerGap()
                    .addGroup(panelMultipleDatasetsLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jPanelMulti, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(panelMultipleDatasetsLeft, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addContainerGap(43, Short.MAX_VALUE)));

    TabPrincipal.addTab("Multiple datasets", panelMultipleDatasets);

    jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Multi-View Multi-Label Summary"));

    labelNumViews.setText("Number of views:");
    labelNumViews.setName(""); // NOI18N

    labelMaxNumAttrView.setText("Max number of attributes per view:");
    labelMaxNumAttrView.setName(""); // NOI18N

    labelMinNumAttrView.setText("Min number of attributes per view:");
    labelMinNumAttrView.setName(""); // NOI18N

    labelMeanNumAttrView.setText("Mean number of attributes per view:");
    labelMeanNumAttrView.setName(""); // NOI18N

    labelNumViewsValue.setText("-");
    labelNumViewsValue.setName(""); // NOI18N

    labelMaxNumAttrViewValue.setText("-");
    labelMaxNumAttrViewValue.setName(""); // NOI18N

    labelMinNumAttrViewValue.setText("-");
    labelMinNumAttrViewValue.setName(""); // NOI18N

    labelMeanNumAttrViewValue.setText("-");
    labelMeanNumAttrViewValue.setName(""); // NOI18N

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel1Layout.createSequentialGroup().addComponent(labelMaxNumAttrView)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(labelMaxNumAttrViewValue))
                            .addGroup(jPanel1Layout.createSequentialGroup().addComponent(labelNumViews)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(labelNumViewsValue))
                            .addGroup(jPanel1Layout.createSequentialGroup().addComponent(labelMinNumAttrView)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(labelMinNumAttrViewValue))
                            .addGroup(jPanel1Layout.createSequentialGroup().addComponent(labelMeanNumAttrView)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(labelMeanNumAttrViewValue)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(labelNumViews).addComponent(labelNumViewsValue))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(labelMaxNumAttrView).addComponent(labelMaxNumAttrViewValue))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(labelMinNumAttrView).addComponent(labelMinNumAttrViewValue))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(labelMeanNumAttrView).addComponent(labelMeanNumAttrViewValue))));

    jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Views"));

    buttonSaveViews.setText("Save views");
    buttonSaveViews.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonSaveViewsActionPerformed(evt);
        }
    });

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

    }, new String[] { "Name", "#Attributes", "LxIxF", "Ratio Inst/Att", "Avg Gain Ratio" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Integer.class, java.lang.String.class,
                java.lang.String.class, java.lang.String.class };
        boolean[] canEdit = new boolean[] { false, false, false, false, false };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }

        public boolean isCellEditable(int rowIndex, int columnIndex) {
            return canEdit[columnIndex];
        }
    });
    jTable2.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            jTable2MouseClicked(evt);
        }
    });
    jScrollPane3.setViewportView(jTable2);

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

    }, new String[] { "Attributes" }) {
        Class[] types = new Class[] { java.lang.String.class };
        boolean[] canEdit = new boolean[] { false };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }

        public boolean isCellEditable(int rowIndex, int columnIndex) {
            return canEdit[columnIndex];
        }
    });
    jTable3.setFocusable(false);
    jTable3.setRowSelectionAllowed(false);
    jScrollPane4.setViewportView(jTable3);

    jComboBox_SaveFormat1
            .setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Mulan .arff", "Meka .arff" }));

    buttonSaveTable.setText("Save table");
    buttonSaveTable.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            buttonSaveTableActionPerformed(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, false)
                            .addGroup(jPanel2Layout.createSequentialGroup().addComponent(buttonSaveViews)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jComboBox_SaveFormat1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(buttonSaveTable))
                            .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 498,
                                    Short.MAX_VALUE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 285,
                                    Short.MAX_VALUE)
                            .addContainerGap()));
    jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                    Short.MAX_VALUE)
                            .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 312,
                                    Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(buttonSaveViews)
                            .addComponent(jComboBox_SaveFormat1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(buttonSaveTable))
                    .addContainerGap()));

    javax.swing.GroupLayout panelMVMLLayout = new javax.swing.GroupLayout(panelMVML);
    panelMVML.setLayout(panelMVMLLayout);
    panelMVMLLayout.setHorizontalGroup(panelMVMLLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelMVMLLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(panelMVMLLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addContainerGap()));
    panelMVMLLayout.setVerticalGroup(panelMVMLLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(panelMVMLLayout.createSequentialGroup().addContainerGap()
                    .addComponent(jPanel1, 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.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));

    TabPrincipal.addTab("MVML", panelMVML);

    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()
                    .addComponent(TabPrincipal, javax.swing.GroupLayout.PREFERRED_SIZE, 850,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
            javax.swing.GroupLayout.Alignment.TRAILING,
            layout.createSequentialGroup()
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(TabPrincipal, javax.swing.GroupLayout.PREFERRED_SIZE, 550,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap()));

    pack();
}

From source file:com.declarativa.interprolog.gui.ListenerWindow.java

/**
 * 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.//from   w w w .j a v a  2  s  .  co  m
 */
// @SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    fileChooser = new javax.swing.JFileChooser();
    jTabbedPane2 = new javax.swing.JTabbedPane();
    jPanel5 = new javax.swing.JPanel();
    jLayeredPane2 = new javax.swing.JLayeredPane();
    jScrollPane1 = new javax.swing.JScrollPane();
    prologOutput = new javax.swing.JTextArea();
    jButton1 = new javax.swing.JButton();
    jButton3 = new javax.swing.JButton();
    jButton4 = new javax.swing.JButton();
    jScrollPane2 = new javax.swing.JScrollPane();
    prologInput = new javax.swing.JTextArea();
    jLayeredPane1 = new javax.swing.JLayeredPane();
    jLayeredPane3 = new javax.swing.JLayeredPane();
    jPanel6 = new javax.swing.JPanel();
    jLayeredPane4 = new javax.swing.JLayeredPane();
    jButton2 = new javax.swing.JButton();
    jLayeredPane5 = new javax.swing.JLayeredPane();
    jLayeredPane6 = new javax.swing.JLayeredPane();
    jLayeredPane7 = new javax.swing.JLayeredPane();
    jScrollPane3 = new javax.swing.JScrollPane();
    jTextArea1 = new javax.swing.JTextArea();
    jLayeredPane8 = new javax.swing.JLayeredPane();

    jLayeredPane10 = new javax.swing.JLayeredPane();
    jScrollPane2 = new javax.swing.JScrollPane();
    jTable1 = new javax.swing.JTable();

    jScrollPaneX = new javax.swing.JScrollPane();

    fileChooser.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            fileChooserActionPerformed(evt);
        }
    });

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jTabbedPane2.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseEntered(java.awt.event.MouseEvent evt) {
            jTabbedPane2MouseEntered(evt);
        }
    });

    jLayeredPane2.setBackground(new java.awt.Color(0, 0, 0));

    prologOutput.setColumns(20);
    prologOutput.setRows(5);
    prologOutput.addComponentListener(new java.awt.event.ComponentAdapter() {
        public void componentShown(java.awt.event.ComponentEvent evt) {
            prologOutputComponentShown(evt);
        }
    });
    jScrollPane1.setViewportView(prologOutput);

    jButton1.setText("Load Program"); // NOI18N
    jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            try {
                jButton1ActionPerformed(evt);
            } catch (IOException ex) {
                Exceptions.printStackTrace(ex);
            }
        }
    });

    prologInput.setColumns(20);
    prologInput.setRows(5);
    jScrollPane2.setViewportView(prologInput);

    jLayeredPane1.setBackground(new java.awt.Color(153, 153, 255));
    jLayeredPane1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
    jLayeredPane1.setPreferredSize(new java.awt.Dimension(600, 0));

    javax.swing.GroupLayout jLayeredPane1Layout = new javax.swing.GroupLayout(jLayeredPane1);
    jLayeredPane1.setLayout(jLayeredPane1Layout);
    jLayeredPane1Layout.setHorizontalGroup(jLayeredPane1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 596, Short.MAX_VALUE));
    jLayeredPane1Layout.setVerticalGroup(jLayeredPane1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));

    jLayeredPane3.setBorder(javax.swing.BorderFactory.createTitledBorder("Controls")); // NOI18N

    javax.swing.GroupLayout jLayeredPane3Layout = new javax.swing.GroupLayout(jLayeredPane3);
    jLayeredPane3.setLayout(jLayeredPane3Layout);
    jLayeredPane3Layout.setHorizontalGroup(jLayeredPane3Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));
    jLayeredPane3Layout.setVerticalGroup(jLayeredPane3Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 77, Short.MAX_VALUE));

    javax.swing.GroupLayout jLayeredPane2Layout = new javax.swing.GroupLayout(jLayeredPane2);
    jLayeredPane2.setLayout(jLayeredPane2Layout);
    jLayeredPane2Layout.setHorizontalGroup(
            jLayeredPane2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jLayeredPane2Layout.createSequentialGroup().addGap(22, 22, 22)
                            .addGroup(jLayeredPane2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jButton1)
                                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 488,
                                            Short.MAX_VALUE)
                                    .addComponent(jScrollPane2))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(jLayeredPane2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jLayeredPane3).addComponent(jLayeredPane1,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    jLayeredPane2Layout.setVerticalGroup(jLayeredPane2Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jLayeredPane2Layout.createSequentialGroup().addContainerGap().addComponent(jButton1)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jLayeredPane2Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(jLayeredPane2Layout.createSequentialGroup()
                                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 313,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(jLayeredPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 415,
                                    Short.MAX_VALUE))
                    .addGap(18, 18, 18)
                    .addComponent(jLayeredPane3, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    jLayeredPane2.setLayer(jScrollPane1, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane2.setLayer(jButton1, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane2.setLayer(jScrollPane2, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane2.setLayer(jLayeredPane1, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane2.setLayer(jLayeredPane3, javax.swing.JLayeredPane.DEFAULT_LAYER);

    javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
    jPanel5.setLayout(jPanel5Layout);
    jPanel5Layout
            .setHorizontalGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                            jPanel5Layout.createSequentialGroup().addComponent(jLayeredPane2).addGap(1, 1, 1)));
    jPanel5Layout.setVerticalGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel5Layout.createSequentialGroup()
                    .addComponent(jLayeredPane2, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));

    jTabbedPane2.addTab("Argument Engine", jPanel5); // NOI18N

    jPanel6.setPreferredSize(new java.awt.Dimension(1100, 476));

    jLayeredPane4.setBorder(javax.swing.BorderFactory.createTitledBorder("Local Selection of Fragments")); // NOI18N

    jButton2.setText("Load Program"); // NOI18N
    jButton2.setPreferredSize(new java.awt.Dimension(133, 23));

    jButton3.setText("Local Selection"); // NOI18N
    jButton3.setPreferredSize(new java.awt.Dimension(133, 23));
    jButton3.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton3ActionPerformed(evt);
        }
    });

    jButton4.setText("Global Selection"); // NOI18N
    jButton4.setPreferredSize(new java.awt.Dimension(133, 23));

    jButton2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            try {
                jButton2ActionPerformed(evt);
            } catch (IOException ex) {
                Exceptions.printStackTrace(ex);
            }
        }
    });

    javax.swing.GroupLayout jLayeredPane4Layout = new javax.swing.GroupLayout(jLayeredPane4);
    jLayeredPane4.setLayout(jLayeredPane4Layout);
    jLayeredPane4Layout.setHorizontalGroup(jLayeredPane4Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jLayeredPane4Layout.createSequentialGroup()
                    .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(73, 73, 73)
                    .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 143,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(89, 89, 89).addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 153,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));
    jLayeredPane4Layout.setVerticalGroup(
            jLayeredPane4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                    javax.swing.GroupLayout.Alignment.TRAILING,
                    jLayeredPane4Layout.createSequentialGroup().addContainerGap(24, Short.MAX_VALUE)
                            .addGroup(jLayeredPane4Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jButton3).addComponent(jButton4))
                            .addGap(19, 19, 19)));

    //        jLayeredPane4Layout.setHorizontalGroup(
    //                jLayeredPane4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
    //                .addGroup(jLayeredPane4Layout.createSequentialGroup()
    //                        .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
    //                        .addGap(0, 0, Short.MAX_VALUE))
    //        );
    //        jLayeredPane4Layout.setVerticalGroup(
    //                jLayeredPane4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
    //                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jLayeredPane4Layout.createSequentialGroup()
    //                        .addContainerGap(24, Short.MAX_VALUE)
    //                        .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
    //                        .addGap(19, 19, 19))
    //        );
    jLayeredPane4.setLayer(jButton2, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane4.setLayer(jButton3, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane4.setLayer(jButton4, javax.swing.JLayeredPane.DEFAULT_LAYER);

    jLayeredPane5.setBorder(javax.swing.BorderFactory.createEtchedBorder());

    javax.swing.GroupLayout jLayeredPane5Layout = new javax.swing.GroupLayout(jLayeredPane5);
    jLayeredPane5.setLayout(jLayeredPane5Layout);
    jLayeredPane5Layout.setHorizontalGroup(jLayeredPane5Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));
    jLayeredPane5Layout.setVerticalGroup(jLayeredPane5Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 449, Short.MAX_VALUE));

    jLayeredPane6.setBorder(javax.swing.BorderFactory.createTitledBorder("Controls")); // NOI18N

    javax.swing.GroupLayout jLayeredPane6Layout = new javax.swing.GroupLayout(jLayeredPane6);
    jLayeredPane6.setLayout(jLayeredPane6Layout);
    jLayeredPane6Layout.setHorizontalGroup(jLayeredPane6Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 541, Short.MAX_VALUE));
    jLayeredPane6Layout.setVerticalGroup(jLayeredPane6Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 88, Short.MAX_VALUE));

    jLayeredPane7.setBorder(javax.swing.BorderFactory.createEtchedBorder());

    jTable1.setModel(
            new javax.swing.table.DefaultTableModel(new Object[][] {}, new String[] { "Fragments", "" }) {
                boolean[] canEdit = new boolean[] { false, false };

                public boolean isCellEditable(int rowIndex, int columnIndex) {
                    return canEdit[columnIndex];
                }
            });
    jScrollPaneX.setViewportView(jTable1);

    jTextArea1.setColumns(20);
    jTextArea1.setRows(5);
    jScrollPane3.setViewportView(jTextArea1);
    javax.swing.GroupLayout jLayeredPane10Layout = new javax.swing.GroupLayout(jLayeredPane10);
    jLayeredPane10.setLayout(jLayeredPane10Layout);
    jLayeredPane10Layout.setHorizontalGroup(
            jLayeredPane10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jLayeredPane10Layout.createSequentialGroup()
                            .addComponent(jScrollPaneX, javax.swing.GroupLayout.PREFERRED_SIZE, 337,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 416,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)));
    jLayeredPane10Layout.setVerticalGroup(jLayeredPane10Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jScrollPaneX,
                    javax.swing.GroupLayout.PREFERRED_SIZE, 266, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addComponent(jScrollPane3));
    jLayeredPane10.setLayer(jScrollPaneX, javax.swing.JLayeredPane.DEFAULT_LAYER);
    jLayeredPane10.setLayer(jScrollPane3, javax.swing.JLayeredPane.DEFAULT_LAYER);

    javax.swing.GroupLayout jLayeredPane7Layout = new javax.swing.GroupLayout(jLayeredPane7);
    jLayeredPane7.setLayout(jLayeredPane7Layout);
    jLayeredPane7Layout.setHorizontalGroup(jLayeredPane7Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jLayeredPane7Layout.createSequentialGroup()
                    .addComponent(jLayeredPane10, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));
    jLayeredPane7Layout
            .setVerticalGroup(jLayeredPane7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLayeredPane10, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE));
    jLayeredPane7.setLayer(jLayeredPane10, javax.swing.JLayeredPane.DEFAULT_LAYER);

    jLayeredPane8.setBorder(javax.swing.BorderFactory.createEtchedBorder());

    javax.swing.GroupLayout jLayeredPane8Layout = new javax.swing.GroupLayout(jLayeredPane8);
    jLayeredPane8.setLayout(jLayeredPane8Layout);
    jLayeredPane8Layout.setHorizontalGroup(jLayeredPane8Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));
    jLayeredPane8Layout.setVerticalGroup(jLayeredPane8Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 0, Short.MAX_VALUE));
    /*        
     javax.swing.GroupLayout jLayeredPane7Layout = new javax.swing.GroupLayout(jLayeredPane7);
     jLayeredPane7.setLayout(jLayeredPane7Layout);
     jLayeredPane7Layout.setHorizontalGroup(
     jLayeredPane7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
     .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 761, Short.MAX_VALUE)
     );
     jLayeredPane7Layout.setVerticalGroup(
     jLayeredPane7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
     .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 237, Short.MAX_VALUE)
     );
     jLayeredPane7.setLayer(jScrollPane3, javax.swing.JLayeredPane.DEFAULT_LAYER);
            
     jLayeredPane8.setBorder(javax.swing.BorderFactory.createEtchedBorder());
            
     javax.swing.GroupLayout jLayeredPane8Layout = new javax.swing.GroupLayout(jLayeredPane8);
     jLayeredPane8.setLayout(jLayeredPane8Layout);
     jLayeredPane8Layout.setHorizontalGroup(
     jLayeredPane8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
     .addGap(0, 0, Short.MAX_VALUE)
     );
     jLayeredPane8Layout.setVerticalGroup(
     jLayeredPane8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
     .addGap(0, 0, Short.MAX_VALUE)
     );
     */
    javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
    jPanel6.setLayout(jPanel6Layout);
    jPanel6Layout.setHorizontalGroup(jPanel6Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel6Layout.createSequentialGroup().addContainerGap()
                    .addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLayeredPane4).addComponent(jLayeredPane7)
                            .addComponent(jLayeredPane8))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                            jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jLayeredPane6).addComponent(jLayeredPane5))
                    .addGap(23, 23, 23)));
    jPanel6Layout
            .setVerticalGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel6Layout.createSequentialGroup().addContainerGap()
                            .addGroup(jPanel6Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addGroup(jPanel6Layout.createSequentialGroup()
                                            .addComponent(jLayeredPane5, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(jLayeredPane6, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addGroup(jPanel6Layout.createSequentialGroup()
                                            .addComponent(jLayeredPane4, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(jLayeredPane7, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(jLayeredPane8)))
                            .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    jTabbedPane2.addTab("Activity Framework", jPanel6); // NOI18N

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jTabbedPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 1362, Short.MAX_VALUE));
    layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jTabbedPane2));

    jTabbedPane2.getAccessibleContext().setAccessibleName("tabd"); // NOI18N

    pack();

}