Example usage for javax.swing GroupLayout PREFERRED_SIZE

List of usage examples for javax.swing GroupLayout PREFERRED_SIZE

Introduction

In this page you can find the example usage for javax.swing GroupLayout PREFERRED_SIZE.

Prototype

int PREFERRED_SIZE

To view the source code for javax.swing GroupLayout PREFERRED_SIZE.

Click Source Link

Document

Indicates the preferred size from the component or gap should be used for a particular range value.

Usage

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  w  w. j av a2 s  . c  om*/
 */
@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:de.tor.tribes.ui.views.DSWorkbenchStatsFrame.java

/** This method is called from within the constructor to
 * initialize the form.//  w  ww  . j  a  v a  2 s  .com
 * 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() {
    java.awt.GridBagConstraints gridBagConstraints;

    jMainStatPanel = new javax.swing.JPanel();
    jChartPanel = new javax.swing.JPanel();
    jPanel7 = new javax.swing.JPanel();
    jScrollPane1 = new javax.swing.JScrollPane();
    jAllyList = new javax.swing.JList();
    jScrollPane2 = new javax.swing.JScrollPane();
    jTribeList = new javax.swing.JList();
    jShowPoints = new javax.swing.JCheckBox();
    jShowRank = new javax.swing.JCheckBox();
    jShowVillages = new javax.swing.JCheckBox();
    jShowKillsOff = new javax.swing.JCheckBox();
    jShowRankOff = new javax.swing.JCheckBox();
    jShowKillsDef = new javax.swing.JCheckBox();
    jShowRankDef = new javax.swing.JCheckBox();
    jShowItemValues = new javax.swing.JCheckBox();
    jShowLegend = new javax.swing.JCheckBox();
    jShowLines = new javax.swing.JCheckBox();
    jShowDataPoints = new javax.swing.JCheckBox();
    jViewSelectionBox = new javax.swing.JComboBox();
    jStatCreatePanel = new javax.swing.JPanel();
    jPanel3 = new javax.swing.JPanel();
    jTabbedPane1 = new javax.swing.JTabbedPane();
    jScrollPane7 = new javax.swing.JScrollPane();
    jPointsPane = new javax.swing.JEditorPane();
    jScrollPane10 = new javax.swing.JScrollPane();
    jBashOffPane = new javax.swing.JEditorPane();
    jScrollPane11 = new javax.swing.JScrollPane();
    jBashDefPane = new javax.swing.JEditorPane();
    jScrollPane12 = new javax.swing.JScrollPane();
    jWinnerLoserPane = new javax.swing.JEditorPane();
    jButton8 = new javax.swing.JButton();
    jPanel1 = new javax.swing.JPanel();
    jLabel4 = new javax.swing.JLabel();
    jStartDate = new de.tor.tribes.ui.components.DateTimeField();
    jLabel5 = new javax.swing.JLabel();
    jEndDate = new de.tor.tribes.ui.components.DateTimeField();
    jPanel11 = new javax.swing.JPanel();
    jWeeklyStats = new javax.swing.JButton();
    jMonthlyStats = new javax.swing.JButton();
    jUseTop10Box = new javax.swing.JCheckBox();
    jAlwaysOnTopBox = new javax.swing.JCheckBox();
    jStatsPanel = new org.jdesktop.swingx.JXPanel();
    capabilityInfoPanel1 = new de.tor.tribes.ui.components.CapabilityInfoPanel();

    jMainStatPanel.setMinimumSize(new java.awt.Dimension(516, 300));
    jMainStatPanel.setLayout(new java.awt.BorderLayout());

    jChartPanel.setBackground(new java.awt.Color(239, 235, 223));
    jChartPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
    jChartPanel.setPreferredSize(new java.awt.Dimension(499, 300));
    jChartPanel.setLayout(new java.awt.BorderLayout());
    jMainStatPanel.add(jChartPanel, java.awt.BorderLayout.CENTER);

    jPanel7.setPreferredSize(new java.awt.Dimension(516, 150));
    jPanel7.setLayout(new java.awt.GridBagLayout());

    jScrollPane1.setBorder(javax.swing.BorderFactory.createTitledBorder("berwachte Stmme"));
    jScrollPane1.setMinimumSize(new java.awt.Dimension(258, 100));
    jScrollPane1.setPreferredSize(new java.awt.Dimension(258, 150));

    jScrollPane1.setViewportView(jAllyList);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 1.0;
    jPanel7.add(jScrollPane1, gridBagConstraints);

    jScrollPane2.setBorder(javax.swing.BorderFactory.createTitledBorder("berwachte Spieler"));
    jScrollPane2.setMinimumSize(new java.awt.Dimension(258, 100));
    jScrollPane2.setPreferredSize(new java.awt.Dimension(258, 150));

    jScrollPane2.setViewportView(jTribeList);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 1.0;
    jPanel7.add(jScrollPane2, gridBagConstraints);

    jMainStatPanel.add(jPanel7, java.awt.BorderLayout.NORTH);

    jShowPoints.setSelected(true);
    jShowPoints.setText("Punkte anzeigen");
    jShowPoints.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowRank.setText("Rang anzeigen");
    jShowRank.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowVillages.setText("Drfer anzeigen");
    jShowVillages.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowKillsOff.setText("Kills (Off) anzeigen");
    jShowKillsOff.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowRankOff.setText("Rang (Off) anzeigen");
    jShowRankOff.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowKillsDef.setText("Kills (Deff) anzeigen");
    jShowKillsDef.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowRankDef.setText("Rang (Deff) anzeigen");
    jShowRankDef.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowItemValues.setText("Werte anzeigen");
    jShowItemValues.setToolTipText("Zeigt die Werte der Datenpunkte im Diagramm an");
    jShowItemValues.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowLegend.setSelected(true);
    jShowLegend.setText("Legende anzeigen");
    jShowLegend.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowLines.setSelected(true);
    jShowLines.setText("Linien anzeigen");
    jShowLines.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jShowDataPoints.setSelected(true);
    jShowDataPoints.setText("Datenpunkte anzeigen");
    jShowDataPoints.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireUpdateChartEvent(evt);
        }
    });

    jViewSelectionBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Punkte", "Rang (Punkte)",
            "Drfer", "Kills (Off)", "Rang (Off)", "Kills (Def)", "Rang (Def)" }));
    jViewSelectionBox.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireViewChangedEvent(evt);
        }
    });

    jStatCreatePanel.setBackground(new java.awt.Color(239, 235, 223));

    jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Auswertung"));

    jPointsPane.setContentType("text/html"); // NOI18N
    jPointsPane.setEditable(false);
    jScrollPane7.setViewportView(jPointsPane);

    jTabbedPane1.addTab("Punkte", new javax.swing.ImageIcon(getClass().getResource("/res/goblet_gold.png")),
            jScrollPane7); // NOI18N

    jBashOffPane.setContentType("text/html"); // NOI18N
    jBashOffPane.setEditable(false);
    jScrollPane10.setViewportView(jBashOffPane);

    jTabbedPane1.addTab("Bash (Off)", new javax.swing.ImageIcon(getClass().getResource("/res/barracks.png")),
            jScrollPane10); // NOI18N

    jBashDefPane.setContentType("text/html"); // NOI18N
    jBashDefPane.setEditable(false);
    jScrollPane11.setViewportView(jBashDefPane);

    jTabbedPane1.addTab("Bash (Deff)", new javax.swing.ImageIcon(getClass().getResource("/res/ally.png")),
            jScrollPane11); // NOI18N

    jWinnerLoserPane.setContentType("text/html"); // NOI18N
    jWinnerLoserPane.setEditable(false);
    jScrollPane12.setViewportView(jWinnerLoserPane);

    jTabbedPane1.addTab("Gewinner/Verlierer",
            new javax.swing.ImageIcon(getClass().getResource("/res/up_plus.png")), jScrollPane12); // NOI18N

    javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
    jPanel3.setLayout(jPanel3Layout);
    jPanel3Layout.setHorizontalGroup(jPanel3Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap()
                    .addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 553, Short.MAX_VALUE)
                    .addContainerGap()));
    jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap()
                    .addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 158, Short.MAX_VALUE)
                    .addContainerGap()));

    jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/ui/select.png"))); // NOI18N
    jButton8.setText("Auswertung erstellen");
    jButton8.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireGenerateStatsEvent(evt);
        }
    });

    jPanel1.setOpaque(false);
    jPanel1.setLayout(new java.awt.GridBagLayout());

    jLabel4.setText("Zeitraum (Start)");
    jPanel1.add(jLabel4, new java.awt.GridBagConstraints());

    jStartDate.setTimeEnabled(false);
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.insets = new java.awt.Insets(0, 10, 0, 10);
    jPanel1.add(jStartDate, gridBagConstraints);

    jLabel5.setText("Zeitraum (Ende)");
    jPanel1.add(jLabel5, new java.awt.GridBagConstraints());

    jEndDate.setTimeEnabled(false);
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.insets = new java.awt.Insets(0, 10, 0, 0);
    jPanel1.add(jEndDate, gridBagConstraints);

    jPanel11.setOpaque(false);
    jPanel11.setPreferredSize(new java.awt.Dimension(520, 100));
    jPanel11.setLayout(new java.awt.GridBagLayout());

    jWeeklyStats.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/calendar_7.png"))); // NOI18N
    jWeeklyStats.setText("Statistik fr eine Woche (Heute - 7 Tage)");
    jWeeklyStats.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
    jWeeklyStats.setMaximumSize(new java.awt.Dimension(40, 25));
    jWeeklyStats.setMinimumSize(new java.awt.Dimension(40, 25));
    jWeeklyStats.setPreferredSize(new java.awt.Dimension(260, 25));
    jWeeklyStats.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireChangeStatTimeEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 5);
    jPanel11.add(jWeeklyStats, gridBagConstraints);

    jMonthlyStats.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/calendar_31.png"))); // NOI18N
    jMonthlyStats.setText("Statistik fr einen Monat (Heute - 31 Tage)");
    jMonthlyStats.setMaximumSize(new java.awt.Dimension(40, 25));
    jMonthlyStats.setMinimumSize(new java.awt.Dimension(40, 25));
    jMonthlyStats.setPreferredSize(new java.awt.Dimension(260, 25));
    jMonthlyStats.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireChangeStatTimeEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 0);
    jPanel11.add(jMonthlyStats, gridBagConstraints);

    jUseTop10Box.setText("Nur Top-10 anzeigen");

    javax.swing.GroupLayout jStatCreatePanelLayout = new javax.swing.GroupLayout(jStatCreatePanel);
    jStatCreatePanel.setLayout(jStatCreatePanelLayout);
    jStatCreatePanelLayout.setHorizontalGroup(jStatCreatePanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jStatCreatePanelLayout.createSequentialGroup().addContainerGap()
                    .addGroup(jStatCreatePanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jStatCreatePanelLayout.createSequentialGroup()
                                    .addGroup(jStatCreatePanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 589,
                                                    Short.MAX_VALUE)
                                            .addComponent(jPanel11, javax.swing.GroupLayout.DEFAULT_SIZE, 589,
                                                    Short.MAX_VALUE))
                                    .addContainerGap())
                            .addGroup(jStatCreatePanelLayout.createSequentialGroup()
                                    .addGroup(jStatCreatePanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(jPanel3, javax.swing.GroupLayout.Alignment.TRAILING,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addGroup(jStatCreatePanelLayout.createSequentialGroup()
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                            287, Short.MAX_VALUE)
                                                    .addComponent(jUseTop10Box).addGap(18, 18, 18)
                                                    .addComponent(jButton8)))
                                    .addGap(14, 14, 14)))));
    jStatCreatePanelLayout.setVerticalGroup(jStatCreatePanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jStatCreatePanelLayout.createSequentialGroup().addContainerGap()
                    .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(jPanel11, javax.swing.GroupLayout.PREFERRED_SIZE, 51,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addGroup(jStatCreatePanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jUseTop10Box, javax.swing.GroupLayout.PREFERRED_SIZE, 24,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jButton8))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));

    setTitle("Statistiken");
    getContentPane().setLayout(new java.awt.GridBagLayout());

    jAlwaysOnTopBox.setText("Immer im Vordergrund");
    jAlwaysOnTopBox.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireAlwaysOnTopEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    getContentPane().add(jAlwaysOnTopBox, gridBagConstraints);

    jStatsPanel.setBackground(new java.awt.Color(239, 235, 223));
    jStatsPanel.setMinimumSize(new java.awt.Dimension(700, 500));
    jStatsPanel.setPreferredSize(new java.awt.Dimension(700, 500));
    jStatsPanel.setLayout(new java.awt.BorderLayout());
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 1.0;
    getContentPane().add(jStatsPanel, gridBagConstraints);

    capabilityInfoPanel1.setCopyable(false);
    capabilityInfoPanel1.setPastable(false);
    capabilityInfoPanel1.setSearchable(false);
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    getContentPane().add(capabilityInfoPanel1, gridBagConstraints);

    pack();
}

From source file:it.isislab.dmason.util.SystemManagement.Master.thrower.DMasonMaster.java

private void initComponents() {
    menuBar1 = new JMenuBar();
    jMenuFile = new JMenu();
    //menuItemOpen = new JMenuItem();
    menuItemExit = new JMenuItem();
    jMenuAbout = new JMenu();
    menuItemInfo = new JMenuItem();
    menuItemHelp = new JMenuItem();
    panelMain = new JPanel();
    jPanelContainerConnection = new JPanel();
    jPanelConnection = new JPanel();
    jLabelAddress = new JLabel();
    textFieldAddress = new JTextField();
    jLabelPort = new JLabel();
    textFieldPort = new JTextField();
    refreshServerLabel = new JLabel();
    buttonRefreshServerLabel = new JButton();
    jPanelContainerSettings = new JPanel();
    jPanelSetDistribution = new JPanel();
    jPanelSettings = new JPanel();
    jLabelHorizontal = new JLabel();
    jLabelSquare = new JLabel();
    jLabelMaxDistance = new JLabel();
    jLabelWidth = new JLabel();
    jLabelInsertSteps = new JLabel();
    textFieldMaxDistance = new JTextField();
    textFieldWidth = new JTextField();
    jLabelHeight = new JLabel();
    textFieldHeight = new JTextField();
    jLabelAgents = new JLabel();
    textFieldAgents = new JTextField();
    textFieldColumns = new JTextField();
    textFieldRows = new JTextField();
    textFieldSteps = new JTextField();
    jLabelChooseSimulation = new JLabel();
    jComboBoxChooseSimulation = new JComboBox();
    jComboBoxNumRegionXPeer = new JComboBox();
    jPanelContainerTabbedPane = new JPanel();
    tabbedPane2 = new JTabbedPane();
    jPanelDefault = new JPanel();
    jPanelSimulation = new ModelPanel(tabbedPane2);
    labelSimulationConfigSet = new JLabel();
    labelRegionsResume = new JLabel();
    labelNumOfPeerResume = new JLabel();
    labelRegForPeerResume = new JLabel();
    labelWriteReg = new JLabel();
    labelWriteNumOfPeer = new JLabel();
    labelWriteRegForPeer = new JLabel();
    labelWidthRegion = new JLabel();
    labelheightRegion = new JLabel();
    labelDistrMode = new JLabel();
    labelWriteRegWidth = new JLabel();
    labelWriteRegHeight = new JLabel();
    labelWriteDistrMode = new JLabel();
    graphicONcheckBox2 = new JCheckBox();
    jPanelSetButton = new JPanel();
    buttonSetConfigDefault = new JButton();
    jPanelAdvanced = new JPanel();
    jPanelAdvancedMain = new JPanel();
    peerInfoStatus = new JDesktopPane();
    internalFrame1 = new JInternalFrame();
    architectureLabel = new JTextArea();
    architectureLabel.setBackground(Color.BLACK);
    architectureLabel.setForeground(Color.GREEN);
    architectureLabel.setEditable(false);
    advancedConfirmBut = new JLabel();
    graphicONcheckBox = new JCheckBox();
    jCheckBoxLoadBalancing = new JCheckBox("Load Balancing", false);
    jCheckBoxLoadBalancing.setEnabled(true);
    jCheckBoxLoadBalancing.setSelected(false);

    jCheckBoxMPI = new JCheckBox("Enable MPI", false);
    jCheckBoxMPI.setEnabled(true);/*from w ww  .  jav a 2  s  . co  m*/
    jCheckBoxMPI.setSelected(false);

    scrollPaneTree = new JScrollPane();
    tree1 = new JTree();
    buttonSetConfigAdvanced = new JButton();
    jLabelPlayButton = new JLabel();
    jLabelPauseButton = new JLabel();
    jPanelNumStep = new JPanel();
    jLabelStep = new JLabel();
    jLabelStep.setHorizontalAlignment(SwingConstants.LEFT);
    jLabelStopButton = new JLabel();
    scrollPane1 = new JScrollPane();
    peerInfoStatus1 = new JDesktopPane();
    root = new DefaultMutableTreeNode("Simulation");
    ButtonGroup b = new ButtonGroup();
    ip = textFieldAddress.getText();
    port = textFieldPort.getText();
    menuBar1 = new JMenuBar();
    jMenuFile = new JMenu();
    menuItemExit = new JMenuItem();
    menuNewSim = new JMenuItem();
    jMenuAbout = new JMenu();
    menuItemInfo = new JMenuItem();
    menuItemHelp = new JMenuItem();
    scrollPane3 = new JScrollPane();
    scrollPane4 = new JScrollPane();
    notifyArea = new JTextArea();
    panelConsole = new JPanel();
    buttonSetConfigDefault2 = new JButton();
    jPanelSetButton2 = new JPanel();
    graphicONcheckBox = new JCheckBox();
    graphicONcheckBox.setEnabled(false);
    graphicONcheckBox.addChangeListener(new ChangeListener() {

        @Override
        public void stateChanged(ChangeEvent e) {
            withGui = graphicONcheckBox.isSelected();
        }
    });

    jLabelChooseSimulation = new JLabel();
    jComboBoxChooseSimulation = new JComboBox();

    loadSimulation();

    selectedSimulation = ((SimComboEntry) jComboBoxChooseSimulation.getSelectedItem()).fullSimName;
    jPanelSimulation.updateHTML(selectedSimulation);
    jComboBoxChooseSimulation.addItemListener(new ItemListener() {

        @Override
        public void itemStateChanged(ItemEvent e) {
            // Prevent executing listener's actions two times
            if (e.getStateChange() != ItemEvent.SELECTED)
                return;
            selectedSimulation = ((SimComboEntry) jComboBoxChooseSimulation.getSelectedItem()).fullSimName;
            jPanelSimulation.updateHTML(selectedSimulation);
            isThin = isThinSimulation(selectedSimulation);
            jCheckBoxLoadBalancing.setSelected(false);
            jCheckBoxLoadBalancing.setEnabled(!isThin);
            initializeDefaultLabel();
        }
    });

    /*for(int i=2;i<100;i++)
       jComboRegions.addItem(i);*/

    buttonRefreshServerLabel.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent arg0) {
            connect();
        }
    });

    refreshServerLabel.addMouseListener(new MouseListener() {

        @Override
        public void mouseReleased(MouseEvent arg0) {
            if (starter.isConnected())
                starter.execute("restart");
            else
                JOptionPane.showMessageDialog(null, "Not connected to the Server!");
        }

        @Override
        public void mousePressed(MouseEvent arg0) {
        }

        @Override
        public void mouseExited(MouseEvent arg0) {
        }

        @Override
        public void mouseEntered(MouseEvent arg0) {
        }

        @Override
        public void mouseClicked(MouseEvent arg0) {
        }
    });

    jCheckBoxLoadBalancing.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            if (!isHorizontal) {
                if (jCheckBoxLoadBalancing.isSelected())
                    labelWriteDistrMode.setText("SQUARE BALANCED MODE");
                else
                    labelWriteDistrMode.setText("SQUARE MODE");
            }

            if (isHorizontal) {
                if (jCheckBoxLoadBalancing.isSelected())
                    labelWriteDistrMode.setText("HORIZONTAL BALANCED MODE");
                else
                    labelWriteDistrMode.setText("HORIZONTAL MODE");
            }

        }
    });

    buttonSetConfigDefault2.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            if (initializeDefaultLabel())
                submitCustomizeMode();
            else
                JOptionPane.showMessageDialog(null, "To start a simulation must fill in all fields...!");
        }
    });

    buttonSetConfigDefault.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            if (initializeDefaultLabel())
                submitDefaultMode();
            else
                JOptionPane.showMessageDialog(null, "To start a simulation must fill in all fields...!");
        }
    });

    advancedConfirmBut.addMouseListener(new MouseListener() {

        @Override
        public void mouseReleased(MouseEvent arg0) {
            confirm();
            res -= (Integer) jComboBoxNumRegionXPeer.getSelectedItem();

            withGui = graphicONcheckBox.isSelected();

            jComboBoxNumRegionXPeer.removeAllItems();
            graphicONcheckBox.setSelected(false);
            for (int i = 1; i <= res; i++)
                jComboBoxNumRegionXPeer.addItem(i);

            JOptionPane.showMessageDialog(null, "Region assigned !");

        }

        @Override
        public void mousePressed(MouseEvent arg0) {
        }

        @Override
        public void mouseExited(MouseEvent arg0) {
        }

        @Override
        public void mouseEntered(MouseEvent arg0) {
        }

        @Override
        public void mouseClicked(MouseEvent arg0) {
        }
    });

    //======== this ========

    Container contentPane = getContentPane();

    //======== menuBar1 ========
    {
        {
            jMenuFile.setText("    File    ");

            menuNewSim.setText("New    ");
            menuNewSim.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent e) {
                    me.dispose();
                    me = null;
                    DMasonMaster p = new DMasonMaster();
                    p.setVisible(true);
                }
            });

            jMenuFile.add(menuNewSim);

            //---- menuItemExit ----
            menuItemExit.setText("Exit");
            menuItemExit.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent e) {
                    me.dispose();
                }
            });

            jMenuFile.add(menuItemExit);
        }
        menuBar1.add(jMenuFile);
        menuBar1.add(getJMenuSystem());

        //======== jMenuAbout ========
        {
            jMenuAbout.setText(" ?  ");

            //---- menuItemInfo ----
            menuItemInfo.setText("Info");
            menuItemInfo.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent e) {
                    JOptionPane.showMessageDialog(null, Release.PRODUCT_RELEASE, "Info", 1);

                }
            });

            jMenuAbout.add(menuItemInfo);

            //---- menuItenHelp ----
            menuItemHelp.setText("Help");
            menuItemHelp.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent arg0) {
                    try {
                        java.net.URI uri = new java.net.URI(
                                "http://isis.dia.unisa.it/projects/it.isislab.dmason/");
                        try {
                            java.awt.Desktop.getDesktop().browse(uri);
                        } catch (IOException e) {
                            e.printStackTrace();
                        }
                    } catch (URISyntaxException e) {
                        e.printStackTrace();
                    }

                }
            });

            jMenuAbout.add(menuItemHelp);

        }
        menuBar1.add(jMenuAbout);
    }

    setJMenuBar(menuBar1);

    //======== panelMain ========
    {

        //======== jPanelContainerConnection ========
        {

            //======== jPanelConnection ========
            {
                jPanelConnection.setBorder(new TitledBorder("Connection"));
                jPanelConnection.setPreferredSize(new Dimension(215, 125));

                //---- jLabelAddress ----
                jLabelAddress.setText("IP Address :");

                //---- textFieldAddress ----
                textFieldAddress.setText("127.0.0.1");

                //---- jLabelPort ----
                jLabelPort.setText("Port :");

                //---- textFieldPort ----
                textFieldPort.setText("61616");

                //---- refreshServerLabel ----

                refreshServerLabel.setIcon(new ImageIcon("resources/image/refresh.png"));

                //---- buttonRefreshServerLabel ----
                buttonRefreshServerLabel.setText("OK");

                JLabel lblStatus = new JLabel("Communication Server status :");

                lblStatusIcon = new JLabel("");
                lblStatusIcon.setIcon(new ImageIcon("resources/image/status-down.png"));

                buttonActiveMQRestart = new JButton("");
                buttonActiveMQRestart.setEnabled(false);
                buttonActiveMQRestart.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent arg0) {

                        notifyArea.append("ActiveMQ restarting...\n");
                        if (csManager.restartActiveMQ())
                            notifyArea.append("ActiveMQ restarted!\n");

                        checkCommunicationServerStatus();

                    }
                });
                buttonActiveMQRestart.setMinimumSize(new Dimension(24, 24));
                buttonActiveMQRestart.setMaximumSize(new Dimension(24, 24));
                buttonActiveMQRestart.setPreferredSize(new Dimension(24, 24));
                buttonActiveMQRestart.setIcon(new ImageIcon("resources/image/LH2 - Restart.png"));

                buttonActiveMQStart = new JButton("");
                buttonActiveMQStart.setEnabled(false);
                buttonActiveMQStart.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent arg0) {
                        notifyArea.append("ActiveMQ starting...\n");
                        if (csManager.startActiveMQ())
                            notifyArea.append("ActiveMQ started!\n");

                        checkCommunicationServerStatus();
                    }
                });
                buttonActiveMQStart.setPreferredSize(new Dimension(24, 24));
                buttonActiveMQStart.setMinimumSize(new Dimension(24, 24));
                buttonActiveMQStart.setMaximumSize(new Dimension(24, 24));
                buttonActiveMQStart.setIcon(new ImageIcon("resources/image/LH2 - Shutdown.png"));

                buttonActiveMQStop = new JButton("");
                buttonActiveMQStop.setEnabled(false);
                buttonActiveMQStop.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent arg0) {
                        notifyArea.append("ActiveMQ stopping...\n");
                        if (csManager.stopActiveMQ())
                            notifyArea.append("ActiveMQ stopped!\n");

                        checkCommunicationServerStatus();
                    }
                });
                buttonActiveMQStop.setPreferredSize(new Dimension(24, 24));
                buttonActiveMQStop.setMinimumSize(new Dimension(24, 24));
                buttonActiveMQStop.setMaximumSize(new Dimension(24, 24));
                buttonActiveMQStop.setIcon(new ImageIcon("resources/image/LH2 - Stop.png"));

                btnCheckPeers = new JButton("Check Peers");
                btnCheckPeers.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        try {
                            checkPeers();
                        } catch (Exception e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();
                        }
                    }
                });

                GroupLayout jPanelConnectionLayout = new GroupLayout(jPanelConnection);
                jPanelConnectionLayout.setHorizontalGroup(jPanelConnectionLayout
                        .createParallelGroup(Alignment.LEADING)
                        .addGroup(jPanelConnectionLayout.createSequentialGroup().addGroup(jPanelConnectionLayout
                                .createParallelGroup(Alignment.LEADING)
                                .addGroup(jPanelConnectionLayout.createSequentialGroup()
                                        .addGroup(jPanelConnectionLayout.createParallelGroup(Alignment.TRAILING)
                                                .addComponent(refreshServerLabel)
                                                .addGroup(jPanelConnectionLayout.createSequentialGroup()
                                                        .addComponent(buttonActiveMQStart,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.DEFAULT_SIZE,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(buttonActiveMQRestart,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.DEFAULT_SIZE,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(buttonActiveMQStop,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.DEFAULT_SIZE,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addGap(111).addComponent(jLabelAddress).addGap(18)
                                                        .addComponent(textFieldAddress,
                                                                GroupLayout.PREFERRED_SIZE, 91,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addGap(18).addComponent(jLabelPort).addGap(18)
                                                        .addComponent(textFieldPort, GroupLayout.PREFERRED_SIZE,
                                                                85, GroupLayout.PREFERRED_SIZE)
                                                        .addGap(46).addComponent(buttonRefreshServerLabel)))
                                        .addGap(51).addComponent(btnCheckPeers))
                                .addGroup(jPanelConnectionLayout.createSequentialGroup().addComponent(lblStatus)
                                        .addPreferredGap(ComponentPlacement.RELATED)
                                        .addComponent(lblStatusIcon)))
                                .addContainerGap(71, Short.MAX_VALUE)));
                jPanelConnectionLayout.setVerticalGroup(jPanelConnectionLayout
                        .createParallelGroup(Alignment.TRAILING)
                        .addGroup(jPanelConnectionLayout.createSequentialGroup().addGroup(jPanelConnectionLayout
                                .createParallelGroup(Alignment.LEADING)
                                .addGroup(jPanelConnectionLayout.createSequentialGroup()
                                        .addGroup(jPanelConnectionLayout.createParallelGroup(Alignment.LEADING)
                                                .addComponent(lblStatus).addComponent(lblStatusIcon))
                                        .addPreferredGap(ComponentPlacement.RELATED)
                                        .addGroup(jPanelConnectionLayout.createParallelGroup(Alignment.LEADING)
                                                .addComponent(buttonActiveMQRestart, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                                .addComponent(buttonActiveMQStart, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                                .addComponent(buttonActiveMQStop, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                                        .addPreferredGap(ComponentPlacement.RELATED, 1, Short.MAX_VALUE))
                                .addGroup(jPanelConnectionLayout.createSequentialGroup()
                                        .addContainerGap(18, Short.MAX_VALUE).addComponent(refreshServerLabel)
                                        .addPreferredGap(ComponentPlacement.RELATED)
                                        .addGroup(jPanelConnectionLayout.createParallelGroup(Alignment.BASELINE)
                                                .addComponent(buttonRefreshServerLabel).addComponent(jLabelPort)
                                                .addComponent(textFieldPort, GroupLayout.PREFERRED_SIZE, 22,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addComponent(jLabelAddress)
                                                .addComponent(textFieldAddress, GroupLayout.PREFERRED_SIZE, 22,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addComponent(btnCheckPeers))))
                                .addGap(10)));
                jPanelConnectionLayout.linkSize(SwingConstants.HORIZONTAL,
                        new Component[] { buttonActiveMQRestart, buttonActiveMQStart, buttonActiveMQStop });
                jPanelConnection.setLayout(jPanelConnectionLayout);
            }

            GroupLayout jPanelContainerConnectionLayout = new GroupLayout(jPanelContainerConnection);
            jPanelContainerConnection.setLayout(jPanelContainerConnectionLayout);
            jPanelContainerConnectionLayout
                    .setHorizontalGroup(jPanelContainerConnectionLayout.createParallelGroup()
                            .addGroup(jPanelContainerConnectionLayout
                                    .createSequentialGroup().addContainerGap().addComponent(jPanelConnection,
                                            GroupLayout.PREFERRED_SIZE, 829, GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap(153, Short.MAX_VALUE)));
            jPanelContainerConnectionLayout.setVerticalGroup(
                    jPanelContainerConnectionLayout.createParallelGroup().addComponent(jPanelConnection,
                            GroupLayout.PREFERRED_SIZE, 71, GroupLayout.PREFERRED_SIZE));
        }

        //======== jPanelContainerSettings ========
        {

            GroupLayout jPanelContainerSettingsLayout = new GroupLayout(jPanelContainerSettings);
            jPanelContainerSettings.setLayout(jPanelContainerSettingsLayout);
            jPanelContainerSettingsLayout.setHorizontalGroup(
                    jPanelContainerSettingsLayout.createParallelGroup().addGap(0, 1, Short.MAX_VALUE));
            jPanelContainerSettingsLayout.setVerticalGroup(
                    jPanelContainerSettingsLayout.createParallelGroup().addGap(0, 481, Short.MAX_VALUE));
        }

        //======== jPanelSetDistribution ========
        {
            jPanelSetDistribution.setBorder(new TitledBorder("Settings"));

            //======== jPanelSettings ========
            {

                //jLabelHorizontal.setIcon(new ImageIcon("it.isislab.dmason/resources/image/hori.png")));

                //---- jLabelSquare ----
                //jLabelSquare.setIcon(new ImageIcon("it.isislab.dmason/resources/image/square.png")));

                //---- jLabelMaxDistance ----
                jLabelMaxDistance.setText("MAX_DISTANCE :");

                //---- jLabelWidth ----
                jLabelWidth.setText("WIDTH :");

                //---- jLabelInsertSteps ----
                jLabelInsertSteps.setText("STEPS :");

                //---- textFieldMaxDistance ----
                textFieldMaxDistance.setText("1");

                //---- textFieldWidth ----
                textFieldWidth.setText("200");

                //---- jLabelHeight ----
                jLabelHeight.setText("HEIGHT :");

                //---- textFieldHeight ----
                textFieldHeight.setText("200");

                //---- jLabelAgents ----
                jLabelAgents.setText("AGENTS :");

                //---- textFieldAgents ----
                textFieldAgents.setText("15");

                //---- textFieldSteps
                textFieldSteps.setText("100");

                MouseListener textFieldMouseListener = new MouseListener() {

                    @Override
                    public void mouseReleased(MouseEvent e) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void mousePressed(MouseEvent e) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void mouseExited(MouseEvent e) {
                        initializeDefaultLabel();
                    }

                    @Override
                    public void mouseEntered(MouseEvent e) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void mouseClicked(MouseEvent e) {
                        // TODO Auto-generated method stub

                    }
                };

                textFieldAgents.addMouseListener(textFieldMouseListener);
                textFieldAgents.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldAgents.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {
                        //initializeDefaultLabel();
                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                    }
                });

                textFieldColumns.addMouseListener(textFieldMouseListener);
                textFieldColumns.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        // TODO Auto-generated method stub
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldColumns.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                        // TODO Auto-generated method stub
                    }
                });

                textFieldMaxDistance.addMouseListener(textFieldMouseListener);
                textFieldMaxDistance.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldMaxDistance.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {
                        //initializeDefaultLabel();
                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                    }
                });

                textFieldWidth.addMouseListener(textFieldMouseListener);
                textFieldWidth.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldWidth.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {
                        //initializeDefaultLabel();
                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                    }
                });

                textFieldRows.addMouseListener(textFieldMouseListener);
                textFieldRows.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldRows.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {

                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                    }
                });

                textFieldHeight.addMouseListener(textFieldMouseListener);
                textFieldHeight.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldHeight.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent arg0) {
                        //initializeDefaultLabel();
                    }

                    @Override
                    public void keyPressed(KeyEvent arg0) {
                    }
                });

                textFieldSteps.addMouseListener(textFieldMouseListener);
                textFieldSteps.addKeyListener(new KeyListener() {

                    @Override
                    public void keyTyped(KeyEvent e) {
                        char v = e.getKeyChar();
                        if (!(Character.isDigit(v)) || v == KeyEvent.VK_BACK_SPACE) {
                            e.consume();
                        }
                        if (textFieldSteps.getText().length() > 0)
                            initializeDefaultLabel();
                    }

                    @Override
                    public void keyReleased(KeyEvent e) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void keyPressed(KeyEvent e) {
                        // TODO Auto-generated method stub

                    }
                });

                //---- jLabelChooseSimulation ----
                jLabelChooseSimulation.setText("Choose your simulation:");

                //---- jComboBoxChooseSimulation ----
                jComboBoxChooseSimulation.setMaximumRowCount(10);

                JLabel lblRows = new JLabel("ROWS :");

                JLabel lblColumns = new JLabel("COLUMNS :");

                textFieldRows.setText("1");
                textFieldRows.setEnabled(false);
                textFieldRows.setColumns(10);

                rows = Integer.parseInt(textFieldRows.getText());

                textFieldColumns.setText("2");
                textFieldColumns.setEnabled(false);
                textFieldColumns.setColumns(10);
                columns = Integer.parseInt(textFieldColumns.getText());

                textFieldSteps.setText("100");
                textFieldSteps.setEnabled(false);
                textFieldSteps.setColumns(10);
                steps = 100;

                GroupLayout jPanelSettingsLayout = new GroupLayout(jPanelSettings);
                jPanelSettingsLayout.setHorizontalGroup(jPanelSettingsLayout
                        .createParallelGroup(Alignment.LEADING)
                        .addGroup(jPanelSettingsLayout.createSequentialGroup().addGap(17)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.LEADING)
                                        .addComponent(jLabelChooseSimulation, GroupLayout.PREFERRED_SIZE, 245,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addGroup(jPanelSettingsLayout.createSequentialGroup().addGap(119)
                                                .addComponent(jLabelHorizontal))
                                        .addComponent(jComboBoxChooseSimulation, GroupLayout.PREFERRED_SIZE,
                                                214, GroupLayout.PREFERRED_SIZE)
                                        .addGroup(jPanelSettingsLayout.createSequentialGroup()
                                                .addGroup(jPanelSettingsLayout
                                                        .createParallelGroup(Alignment.TRAILING)
                                                        .addGroup(Alignment.LEADING, jPanelSettingsLayout
                                                                .createSequentialGroup()
                                                                .addGroup(jPanelSettingsLayout
                                                                        .createParallelGroup(Alignment.LEADING)
                                                                        .addComponent(lblRows,
                                                                                GroupLayout.PREFERRED_SIZE, 59,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(lblColumns))
                                                                .addGap(60)
                                                                .addGroup(jPanelSettingsLayout
                                                                        .createParallelGroup(Alignment.LEADING)
                                                                        .addComponent(jLabelSquare)
                                                                        .addComponent(textFieldColumns,
                                                                                GroupLayout.DEFAULT_SIZE, 94,
                                                                                Short.MAX_VALUE)
                                                                        .addComponent(textFieldRows,
                                                                                GroupLayout.DEFAULT_SIZE, 94,
                                                                                Short.MAX_VALUE)))
                                                        .addGroup(Alignment.LEADING, jPanelSettingsLayout
                                                                .createSequentialGroup()
                                                                .addGroup(jPanelSettingsLayout
                                                                        .createParallelGroup(Alignment.LEADING)
                                                                        .addComponent(jLabelMaxDistance)
                                                                        .addComponent(jLabelWidth)
                                                                        .addComponent(jLabelHeight)
                                                                        .addComponent(jLabelAgents)
                                                                        .addComponent(jLabelInsertSteps)
                                                                        .addGap(132))
                                                                .addGroup(jPanelSettingsLayout
                                                                        .createParallelGroup(Alignment.LEADING)
                                                                        .addComponent(textFieldAgents,
                                                                                GroupLayout.PREFERRED_SIZE, 94,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(textFieldHeight,
                                                                                GroupLayout.PREFERRED_SIZE, 94,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(textFieldWidth,
                                                                                GroupLayout.PREFERRED_SIZE, 94,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(textFieldMaxDistance,
                                                                                GroupLayout.PREFERRED_SIZE, 94,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(textFieldSteps,
                                                                                GroupLayout.PREFERRED_SIZE, 94,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addGap(20))))

                                                .addGap(20)))));
                jPanelSettingsLayout.setVerticalGroup(jPanelSettingsLayout
                        .createParallelGroup(Alignment.LEADING)
                        .addGroup(jPanelSettingsLayout.createSequentialGroup().addContainerGap()
                                .addComponent(jLabelHorizontal).addGap(41)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.LEADING)
                                        .addComponent(jLabelSquare)
                                        .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                                .addComponent(lblRows, GroupLayout.PREFERRED_SIZE, 22,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addComponent(textFieldRows, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)))
                                .addPreferredGap(ComponentPlacement.RELATED, GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(textFieldColumns, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                        .addComponent(lblColumns))
                                .addGap(18)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(jLabelMaxDistance).addComponent(textFieldMaxDistance,
                                                GroupLayout.PREFERRED_SIZE, 19, GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(ComponentPlacement.RELATED)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(jLabelWidth, GroupLayout.PREFERRED_SIZE, 16,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(textFieldWidth, GroupLayout.PREFERRED_SIZE, 19,
                                                GroupLayout.PREFERRED_SIZE))
                                .addGap(10)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(jLabelHeight, GroupLayout.PREFERRED_SIZE, 16,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(textFieldHeight, GroupLayout.PREFERRED_SIZE, 19,
                                                GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(ComponentPlacement.RELATED)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(jLabelAgents).addComponent(textFieldAgents,
                                                GroupLayout.PREFERRED_SIZE, 19, GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(ComponentPlacement.RELATED)
                                //.addGap(10)
                                .addGroup(jPanelSettingsLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(jLabelInsertSteps, GroupLayout.PREFERRED_SIZE, 16,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(textFieldSteps, GroupLayout.PREFERRED_SIZE, 19,
                                                GroupLayout.PREFERRED_SIZE))
                                .addGap(35).addComponent(jLabelChooseSimulation)
                                .addPreferredGap(ComponentPlacement.UNRELATED)
                                .addComponent(jComboBoxChooseSimulation, GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addGap(52)));
                jPanelSettings.setLayout(jPanelSettingsLayout);
            }

            //======== jPanelContainerTabbedPane ========
            {

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

                    //======== jPanelDefault ========
                    {
                        jPanelDefault.setBorder(new EtchedBorder());
                        jPanelDefault.setPreferredSize(new Dimension(350, 331));

                        //---- labelSimulationConfigSet ----
                        labelSimulationConfigSet.setText("Simulation Configuration Settings");
                        labelSimulationConfigSet.setFont(labelSimulationConfigSet.getFont().deriveFont(
                                labelSimulationConfigSet.getFont().getStyle() | Font.BOLD,
                                labelSimulationConfigSet.getFont().getSize() + 8f));

                        //---- labelRegionsResume ----
                        labelRegionsResume.setText("REGIONS :");

                        //---- labelNumOfPeerResume ----
                        labelNumOfPeerResume.setText("NUMBER OF PEERS :");

                        //---- labelRegForPeerResume ----
                        labelRegForPeerResume.setText("REGIONS FOR PEER :");

                        //---- labelWriteReg ----
                        labelWriteReg.setText("text");

                        //---- labelWriteNumOfPeer ----
                        labelWriteNumOfPeer.setText("text");

                        //---- labelWriteRegForPeer ----
                        labelWriteRegForPeer.setText("text");

                        //---- labelWidthRegion ----
                        labelWidthRegion.setText("REGION WIDTH :");

                        //---- labelheightRegion ----
                        labelheightRegion.setText("REGION HEIGHT :");

                        //---- labelDistrMode ----
                        labelDistrMode.setText("DISTRIBUTION MODE :");

                        //---- labelWriteRegWidth ----
                        labelWriteRegWidth.setText("text");

                        //---- labelWriteRegHeight ----
                        labelWriteRegHeight.setText("text");

                        //---- labelWriteDistrMode ----
                        labelWriteDistrMode.setText("text");

                        //---- graphicONcheckBox2 ----
                        graphicONcheckBox2.setText("Graphic ON");

                        //======== jPanelSetButton ========
                        {

                            //---- buttonSetConfigDefault ----
                            buttonSetConfigDefault.setText("Set");
                            {
                                jCheckBoxLoadBalancing.setText("Load Balancing");
                            }

                            GroupLayout jPanelSetButtonLayout = new GroupLayout(jPanelSetButton);
                            jPanelSetButton.setLayout(jPanelSetButtonLayout);
                            jPanelSetButtonLayout.setVerticalGroup(jPanelSetButtonLayout.createSequentialGroup()

                                    .addGroup(jPanelSetButtonLayout.createParallelGroup().addGroup(
                                            GroupLayout.Alignment.TRAILING,
                                            jPanelSetButtonLayout.createSequentialGroup().addComponent(
                                                    jCheckBoxMPI, GroupLayout.PREFERRED_SIZE, 20,
                                                    GroupLayout.PREFERRED_SIZE)))
                                    .addGroup(jPanelSetButtonLayout.createParallelGroup()
                                            .addGroup(GroupLayout.Alignment.LEADING,
                                                    jPanelSetButtonLayout.createSequentialGroup().addComponent(
                                                            jCheckBoxLoadBalancing, GroupLayout.PREFERRED_SIZE,
                                                            20, GroupLayout.PREFERRED_SIZE))
                                            .addGroup(GroupLayout.Alignment.LEADING, jPanelSetButtonLayout
                                                    .createSequentialGroup()
                                                    .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 0,
                                                            Short.MAX_VALUE)
                                                    .addComponent(buttonSetConfigDefault,
                                                            GroupLayout.PREFERRED_SIZE,
                                                            GroupLayout.PREFERRED_SIZE,
                                                            GroupLayout.PREFERRED_SIZE)))

                                    .addContainerGap());

                            jPanelSetButtonLayout.setHorizontalGroup(jPanelSetButtonLayout
                                    .createSequentialGroup()
                                    .addComponent(jCheckBoxMPI, GroupLayout.PREFERRED_SIZE, 120,
                                            GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap(0, 0)
                                    .addComponent(jCheckBoxLoadBalancing, GroupLayout.PREFERRED_SIZE, 114,
                                            GroupLayout.PREFERRED_SIZE)
                                    .addGap(0, 150, Short.MAX_VALUE).addComponent(buttonSetConfigDefault,
                                            GroupLayout.PREFERRED_SIZE, 76, GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap(0, 0));

                            FlowLayout lsetbutt = new FlowLayout();
                            lsetbutt.addLayoutComponent("", jCheckBoxMPI);
                            lsetbutt.addLayoutComponent("", jCheckBoxLoadBalancing);
                            lsetbutt.addLayoutComponent("", buttonSetConfigDefault);
                            jPanelSetButton.setLayout(lsetbutt);

                        }

                        GroupLayout jPanelDefaultLayout = new GroupLayout(jPanelDefault);
                        jPanelDefaultLayout.setHorizontalGroup(jPanelDefaultLayout
                                .createParallelGroup(Alignment.LEADING)
                                .addGroup(jPanelDefaultLayout.createSequentialGroup().addContainerGap()
                                        .addGroup(jPanelDefaultLayout.createParallelGroup(Alignment.LEADING)
                                                .addComponent(labelSimulationConfigSet,
                                                        GroupLayout.DEFAULT_SIZE, 478, Short.MAX_VALUE)
                                                .addGroup(jPanelDefaultLayout.createSequentialGroup().addGap(6)
                                                        .addGroup(jPanelDefaultLayout
                                                                .createParallelGroup(Alignment.LEADING)
                                                                .addGroup(jPanelDefaultLayout
                                                                        .createSequentialGroup()
                                                                        .addGroup(jPanelDefaultLayout
                                                                                .createParallelGroup(
                                                                                        Alignment.LEADING)
                                                                                .addComponent(
                                                                                        labelNumOfPeerResume)
                                                                                .addComponent(
                                                                                        labelRegForPeerResume)
                                                                                .addComponent(labelWidthRegion)
                                                                                .addComponent(labelheightRegion)
                                                                                .addComponent(labelDistrMode)
                                                                                .addComponent(
                                                                                        labelRegionsResume))
                                                                        .addPreferredGap(
                                                                                ComponentPlacement.RELATED, 218,
                                                                                Short.MAX_VALUE)
                                                                        .addGroup(jPanelDefaultLayout
                                                                                .createParallelGroup(
                                                                                        Alignment.LEADING)
                                                                                .addComponent(
                                                                                        labelWriteNumOfPeer,
                                                                                        GroupLayout.PREFERRED_SIZE,
                                                                                        25,
                                                                                        GroupLayout.PREFERRED_SIZE)
                                                                                .addComponent(labelWriteReg)
                                                                                .addComponent(
                                                                                        labelWriteRegForPeer)
                                                                                .addComponent(
                                                                                        labelWriteRegWidth)
                                                                                .addComponent(
                                                                                        labelWriteRegHeight)
                                                                                .addComponent(
                                                                                        labelWriteDistrMode))
                                                                        .addGap(118))
                                                                .addComponent(graphicONcheckBox2))))
                                        .addGap(211))
                                .addGroup(jPanelDefaultLayout.createSequentialGroup()
                                        .addComponent(jPanelSetButton, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                        .addContainerGap(23, Short.MAX_VALUE)));
                        jPanelDefaultLayout.setVerticalGroup(jPanelDefaultLayout
                                .createParallelGroup(Alignment.LEADING)
                                .addGroup(jPanelDefaultLayout.createSequentialGroup().addContainerGap()
                                        .addComponent(labelSimulationConfigSet, GroupLayout.PREFERRED_SIZE, 31,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addGap(28)
                                        .addGroup(jPanelDefaultLayout.createParallelGroup(Alignment.TRAILING)
                                                .addGroup(jPanelDefaultLayout.createSequentialGroup()
                                                        .addComponent(labelRegionsResume)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelNumOfPeerResume)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelRegForPeerResume).addGap(6)
                                                        .addComponent(labelWidthRegion).addGap(6)
                                                        .addComponent(labelheightRegion)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelDistrMode))
                                                .addGroup(jPanelDefaultLayout.createSequentialGroup()
                                                        .addComponent(labelWriteReg)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelWriteNumOfPeer)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelWriteRegForPeer).addGap(6)
                                                        .addComponent(labelWriteRegWidth).addGap(6)
                                                        .addComponent(labelWriteRegHeight)
                                                        .addPreferredGap(ComponentPlacement.RELATED)
                                                        .addComponent(labelWriteDistrMode,
                                                                GroupLayout.PREFERRED_SIZE, 16,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addGap(8)))
                                        .addPreferredGap(ComponentPlacement.UNRELATED)
                                        .addComponent(graphicONcheckBox2)
                                        .addPreferredGap(ComponentPlacement.RELATED, 82, Short.MAX_VALUE)
                                        .addComponent(jPanelSetButton, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)));
                        jPanelDefault.setLayout(jPanelDefaultLayout);
                    }
                    tabbedPane2.addTab("Default", jPanelDefault);

                    //======== jPanelSimulation ========

                    tabbedPane2.addTab("Simulation", jPanelSimulation);
                    //======== End jPanelSimulation ========
                    //======== jPanelAdvanced ========
                    {
                        jPanelAdvanced.setBorder(new EtchedBorder());

                        //======== jPanelAdvancedMain ========
                        {

                            //======== scrollPaneTree ========
                            {

                                //---- tree1 ----
                                tree1.setModel(new DefaultTreeModel(root));
                                DefaultTreeCellRenderer render = new DefaultTreeCellRenderer();

                                render.setOpenIcon(new ImageIcon("resources/image/network.png"));

                                render.setLeafIcon(new ImageIcon("esource/image/computer.gif"));

                                render.setClosedIcon(new ImageIcon("resources/image/network.png"));
                                tree1.setCellRenderer(render);
                                tree1.setRowHeight(25);
                                scrollPaneTree.setViewportView(tree1);
                                tree1.addTreeSelectionListener(new TreeSelectionListener() {

                                    @Override
                                    public void valueChanged(TreeSelectionEvent arg0) {
                                        if (arg0.getPath().getLastPathComponent().equals(root)) {
                                            jComboBoxNumRegionXPeer.setEnabled(true);
                                            advancedConfirmBut.setEnabled(true);
                                            graphicONcheckBox.setEnabled(true);
                                            total = Integer.parseInt(textFieldRows.getText())
                                                    * Integer.parseInt(textFieldColumns.getText()); //(Integer)jComboRegions.getSelectedItem();
                                            res = total;
                                            jComboBoxNumRegionXPeer.removeAllItems();
                                            for (int i = 1; i < res; i++)
                                                jComboBoxNumRegionXPeer.addItem(i);
                                        } else
                                            clickTreeListener();
                                    }
                                });

                            }

                            //======== peerInfoStatus ========
                            {
                                peerInfoStatus.setBorder(new TitledBorder("Settings"));
                                peerInfoStatus.setBackground(Color.lightGray);

                                //======== peerInfoStatus1 ========
                                {
                                    peerInfoStatus1.setBackground(Color.lightGray);
                                    peerInfoStatus1.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
                                    peerInfoStatus1.setBorder(null);

                                    //======== internalFrame1 ========
                                    {
                                        internalFrame1.setVisible(true);
                                        Container internalFrame1ContentPane = internalFrame1.getContentPane();

                                        //======== scrollPane1 ========
                                        {

                                            //---- label8 ----
                                            architectureLabel.setText("Architecture Information");
                                            scrollPane1.setViewportView(architectureLabel);
                                        }

                                        GroupLayout internalFrame1ContentPaneLayout = new GroupLayout(
                                                internalFrame1ContentPane);
                                        internalFrame1ContentPane.setLayout(internalFrame1ContentPaneLayout);
                                        internalFrame1ContentPaneLayout.setHorizontalGroup(
                                                internalFrame1ContentPaneLayout.createParallelGroup()
                                                        .addGroup(internalFrame1ContentPaneLayout
                                                                .createSequentialGroup().addContainerGap()
                                                                .addComponent(scrollPane1,
                                                                        GroupLayout.DEFAULT_SIZE, 0,
                                                                        Short.MAX_VALUE)
                                                                .addContainerGap()));
                                        internalFrame1ContentPaneLayout.setVerticalGroup(
                                                internalFrame1ContentPaneLayout.createParallelGroup()
                                                        .addGroup(internalFrame1ContentPaneLayout
                                                                .createSequentialGroup().addContainerGap()
                                                                .addComponent(scrollPane1,
                                                                        GroupLayout.DEFAULT_SIZE, 0,
                                                                        Short.MAX_VALUE)
                                                                .addContainerGap()));
                                    }
                                    peerInfoStatus1.add(internalFrame1, JLayeredPane.DEFAULT_LAYER);
                                    internalFrame1.setBounds(15, 0, 365, 160);
                                }

                                //---- graphicONcheckBox ----
                                graphicONcheckBox.setText("Graphic ON");

                                //---- advancedConfirmBut ----
                                advancedConfirmBut.setIcon(new ImageIcon("resources/image/ok.png"));

                                GroupLayout peerInfoStatusLayout = new GroupLayout(peerInfoStatus);
                                peerInfoStatus.setLayout(peerInfoStatusLayout);
                                peerInfoStatusLayout.setHorizontalGroup(peerInfoStatusLayout
                                        .createParallelGroup()
                                        .addGroup(peerInfoStatusLayout.createSequentialGroup()
                                                .addGroup(peerInfoStatusLayout.createParallelGroup()
                                                        .addGroup(peerInfoStatusLayout.createSequentialGroup()
                                                                .addGap(26, 26, 26)
                                                                .addComponent(graphicONcheckBox)
                                                                .addGap(73, 73, 73)
                                                                .addComponent(jComboBoxNumRegionXPeer,
                                                                        GroupLayout.PREFERRED_SIZE,
                                                                        GroupLayout.DEFAULT_SIZE,
                                                                        GroupLayout.PREFERRED_SIZE)
                                                                .addGap(80, 80, 80)
                                                                .addComponent(advancedConfirmBut,
                                                                        GroupLayout.PREFERRED_SIZE, 33,
                                                                        GroupLayout.PREFERRED_SIZE))
                                                        .addGroup(peerInfoStatusLayout.createSequentialGroup()
                                                                .addContainerGap().addComponent(peerInfoStatus1,
                                                                        GroupLayout.DEFAULT_SIZE, 387,
                                                                        Short.MAX_VALUE)))
                                                .addContainerGap()));
                                peerInfoStatusLayout.setVerticalGroup(peerInfoStatusLayout.createParallelGroup()
                                        .addGroup(peerInfoStatusLayout.createSequentialGroup()
                                                .addComponent(peerInfoStatus1, GroupLayout.PREFERRED_SIZE, 175,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                                                .addGroup(peerInfoStatusLayout
                                                        .createParallelGroup(GroupLayout.Alignment.TRAILING)
                                                        .addGroup(GroupLayout.Alignment.LEADING,
                                                                peerInfoStatusLayout
                                                                        .createParallelGroup(
                                                                                GroupLayout.Alignment.BASELINE)
                                                                        .addComponent(graphicONcheckBox)
                                                                        .addComponent(jComboBoxNumRegionXPeer,
                                                                                GroupLayout.PREFERRED_SIZE,
                                                                                GroupLayout.DEFAULT_SIZE,
                                                                                GroupLayout.PREFERRED_SIZE))
                                                        .addComponent(advancedConfirmBut,
                                                                GroupLayout.Alignment.LEADING,
                                                                GroupLayout.PREFERRED_SIZE, 28,
                                                                GroupLayout.PREFERRED_SIZE))
                                                .addContainerGap(16, Short.MAX_VALUE)));
                            }

                            GroupLayout jPanelAdvancedMainLayout = new GroupLayout(jPanelAdvancedMain);
                            jPanelAdvancedMain.setLayout(jPanelAdvancedMainLayout);
                            jPanelAdvancedMainLayout.setHorizontalGroup(jPanelAdvancedMainLayout
                                    .createParallelGroup()
                                    .addGroup(jPanelAdvancedMainLayout.createSequentialGroup().addContainerGap()
                                            .addComponent(scrollPaneTree, GroupLayout.PREFERRED_SIZE, 207,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
                                            .addComponent(peerInfoStatus, GroupLayout.DEFAULT_SIZE,
                                                    GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addContainerGap()));
                            jPanelAdvancedMainLayout.setVerticalGroup(jPanelAdvancedMainLayout
                                    .createParallelGroup()
                                    .addGroup(GroupLayout.Alignment.TRAILING, jPanelAdvancedMainLayout
                                            .createSequentialGroup().addContainerGap()
                                            .addGroup(jPanelAdvancedMainLayout
                                                    .createParallelGroup(GroupLayout.Alignment.TRAILING)
                                                    .addComponent(peerInfoStatus, GroupLayout.Alignment.LEADING,
                                                            GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE,
                                                            Short.MAX_VALUE)
                                                    .addComponent(scrollPaneTree, GroupLayout.Alignment.LEADING,
                                                            GroupLayout.DEFAULT_SIZE, 255, Short.MAX_VALUE))
                                            .addContainerGap()));
                        }

                        //======== jPanelSetButton2 ========
                        {

                            //---- buttonSetConfigDefault2 ----
                            buttonSetConfigDefault2.setText("Set");

                            GroupLayout jPanelSetButton2Layout = new GroupLayout(jPanelSetButton2);
                            jPanelSetButton2.setLayout(jPanelSetButton2Layout);
                            jPanelSetButton2Layout.setHorizontalGroup(jPanelSetButton2Layout
                                    .createParallelGroup().addGroup(GroupLayout.Alignment.TRAILING,
                                            jPanelSetButton2Layout.createSequentialGroup()
                                                    .addContainerGap(522, Short.MAX_VALUE)
                                                    .addComponent(buttonSetConfigDefault2,
                                                            GroupLayout.PREFERRED_SIZE, 76,
                                                            GroupLayout.PREFERRED_SIZE)
                                                    .addGap(72, 72, 72)));
                            jPanelSetButton2Layout.setVerticalGroup(jPanelSetButton2Layout.createParallelGroup()
                                    .addGroup(GroupLayout.Alignment.TRAILING,
                                            jPanelSetButton2Layout.createSequentialGroup()
                                                    .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                    .addComponent(buttonSetConfigDefault2).addContainerGap()));
                        }

                        GroupLayout jPanelAdvancedLayout = new GroupLayout(jPanelAdvanced);
                        jPanelAdvancedLayout.setHorizontalGroup(jPanelAdvancedLayout
                                .createParallelGroup(Alignment.LEADING)
                                .addGroup(jPanelAdvancedLayout.createSequentialGroup()
                                        .addGroup(jPanelAdvancedLayout.createParallelGroup(Alignment.LEADING)
                                                .addComponent(jPanelAdvancedMain, GroupLayout.DEFAULT_SIZE, 689,
                                                        Short.MAX_VALUE)
                                                .addComponent(jPanelSetButton2, GroupLayout.PREFERRED_SIZE, 681,
                                                        GroupLayout.PREFERRED_SIZE))
                                        .addContainerGap()));
                        jPanelAdvancedLayout.setVerticalGroup(jPanelAdvancedLayout
                                .createParallelGroup(Alignment.TRAILING)
                                .addGroup(jPanelAdvancedLayout.createSequentialGroup().addContainerGap()
                                        .addComponent(jPanelAdvancedMain, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                        .addGap(18).addComponent(jPanelSetButton2, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)));
                        jPanelAdvanced.setLayout(jPanelAdvancedLayout);
                    }
                    tabbedPane2.addTab("Advanced", jPanelAdvanced);

                }

                //======== panelConsole ========
                {

                    //======== scrollPane3 ========
                    {

                        //---- textField1 ----
                        notifyArea.setEditable(false);
                        DefaultCaret caret = (DefaultCaret) notifyArea.getCaret();
                        caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);
                        scrollPane3.setViewportView(notifyArea);
                    }

                    GroupLayout panelConsoleLayout = new GroupLayout(panelConsole);
                    panelConsole.setLayout(panelConsoleLayout);
                    panelConsoleLayout.setHorizontalGroup(panelConsoleLayout.createParallelGroup()
                            .addGroup(panelConsoleLayout.createParallelGroup()
                                    .addGroup(panelConsoleLayout.createSequentialGroup()
                                            .addGap(0, 0, Short.MAX_VALUE)
                                            .addComponent(scrollPane3, GroupLayout.PREFERRED_SIZE, 679,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addGap(0, 0, Short.MAX_VALUE)))
                            .addGap(0, 679, Short.MAX_VALUE));
                    panelConsoleLayout.setVerticalGroup(panelConsoleLayout.createParallelGroup()
                            .addGroup(panelConsoleLayout.createParallelGroup()
                                    .addGroup(panelConsoleLayout.createSequentialGroup()
                                            .addGap(0, 0, Short.MAX_VALUE)
                                            .addComponent(scrollPane3, GroupLayout.PREFERRED_SIZE, 76,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addGap(0, 0, Short.MAX_VALUE)))
                            .addGap(0, 76, Short.MAX_VALUE));
                }

                GroupLayout jPanelContainerTabbedPaneLayout = new GroupLayout(jPanelContainerTabbedPane);
                jPanelContainerTabbedPaneLayout.setHorizontalGroup(jPanelContainerTabbedPaneLayout
                        .createParallelGroup(Alignment.LEADING)
                        .addGroup(jPanelContainerTabbedPaneLayout.createSequentialGroup().addContainerGap()
                                .addGroup(jPanelContainerTabbedPaneLayout.createParallelGroup(Alignment.LEADING)
                                        .addComponent(tabbedPane2, GroupLayout.PREFERRED_SIZE, 686,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(panelConsole, GroupLayout.DEFAULT_SIZE, 708,
                                                Short.MAX_VALUE))
                                .addContainerGap()));
                jPanelContainerTabbedPaneLayout.setVerticalGroup(jPanelContainerTabbedPaneLayout
                        .createParallelGroup(Alignment.LEADING)
                        .addGroup(jPanelContainerTabbedPaneLayout.createSequentialGroup().addGap(3)
                                .addComponent(tabbedPane2, GroupLayout.PREFERRED_SIZE, 384,
                                        GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(ComponentPlacement.RELATED)
                                .addComponent(panelConsole, GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE)));
                jPanelContainerTabbedPane.setLayout(jPanelContainerTabbedPaneLayout);
            }
            {
                jPanelDeploying = new JPanel();
                tabbedPane2.addTab("Simulation Jar", null, jPanelDeploying, null);
                GroupLayout jPanelDeployingLayout = new GroupLayout(jPanelDeploying);
                jPanelDeploying.setLayout(jPanelDeployingLayout);
                {
                    jButtonLoadJar = new JButton();
                    jButtonLoadJar.setText("Load Jar");
                    jButtonLoadJar.addActionListener(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent evt) {

                            if (simulationFile != null) {

                                File dest = new File(FTP_HOME + dirSeparator + SIMULATION_DIR + dirSeparator
                                        + simulationFile.getName());
                                try {
                                    FileUtils.copyFile(simulationFile, dest);

                                    Digester dg = new Digester(DigestAlgorithm.MD5);

                                    InputStream in = new FileInputStream(dest);

                                    Properties prop = new Properties();

                                    try {

                                        prop.setProperty("MD5", dg.getDigest(in));

                                        String fileName = FilenameUtils
                                                .removeExtension(simulationFile.getName());
                                        //save properties to project root folder
                                        prop.store(new FileOutputStream(FTP_HOME + dirSeparator + SIMULATION_DIR
                                                + dirSeparator + fileName + ".hash"), null);

                                    } catch (IOException ex) {
                                        ex.printStackTrace();
                                    }

                                    System.out.println("MD5: " + dg.getDigest(in));

                                    loadSimulation();
                                } catch (IOException e) {
                                    // TODO Auto-generated catch block
                                    e.printStackTrace();
                                }
                            }
                        }
                    });

                }

                jPanelDeployingLayout.setVerticalGroup(jPanelDeployingLayout.createSequentialGroup()
                        .addGap(22, 22, 22)
                        .addGroup(jPanelDeployingLayout.createParallelGroup().addGroup(
                                GroupLayout.Alignment.LEADING,
                                jPanelDeployingLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                                        .addComponent(jButtonLoadJar, GroupLayout.Alignment.BASELINE,
                                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(getJTextFieldPathSimJar(), GroupLayout.Alignment.BASELINE,
                                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.PREFERRED_SIZE))
                                .addComponent(getJButtonChoseSimJar(), GroupLayout.Alignment.LEADING,
                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 286,
                                GroupLayout.PREFERRED_SIZE));
                jPanelDeployingLayout
                        .setHorizontalGroup(jPanelDeployingLayout.createSequentialGroup().addGap(22, 22, 22)
                                .addComponent(getJTextFieldPathSimJar(), GroupLayout.PREFERRED_SIZE, 202,
                                        GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(getJButtonChoseSimJar(), GroupLayout.PREFERRED_SIZE, 27,
                                        GroupLayout.PREFERRED_SIZE)
                                .addGap(24)
                                .addComponent(jButtonLoadJar, GroupLayout.PREFERRED_SIZE, 146,
                                        GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 155, Short.MAX_VALUE));
            }

            jPanelRunBatchTests = new JPanel();
            tabbedPane2.addTab("Run batch tests", null, jPanelRunBatchTests, null);

            JLabel lblSelectConfigurationFile = new JLabel("Select configuration file:");

            textFieldConfigFilePath = new JTextField();
            textFieldConfigFilePath.setColumns(10);

            JButton buttonChooseConfigFile = new JButton();
            buttonChooseConfigFile.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent arg0) {

                    configFile = showFileChooser();
                    if (configFile != null)
                        textFieldConfigFilePath.setText(configFile.getAbsolutePath());
                }
            });
            buttonChooseConfigFile.setIcon(new ImageIcon("it/isislab/dmason/resources/image/openFolder.png"));

            JButton buttonLoadConfig = new JButton("Start");
            buttonLoadConfig.addActionListener(new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent e) {

                    try {
                        if (configFile.getName().contains(".xml")) {
                            ClassLoader.getSystemClassLoader();
                            //File xsd = new File(xsdFilename);
                            InputStream xsd = new FileInputStream("resources/batch/batchSchema.xsd");

                            if (xsd != null) {
                                if (validateXML(configFile, xsd)) {

                                    Batch batch = loadConfigFromXML(configFile);

                                    if (batch != null) {
                                        textAreaBatchInfo.append(configFile.getName() + " loaded.\n");
                                        if (batch.getNeededWorkers() > peers.size()
                                                || batch.getNeededWorkers() == 0)
                                            JOptionPane.showMessageDialog(DMasonMaster.this,
                                                    "There are not enough workers to start the simulation");
                                        else {
                                            textAreaBatchInfo
                                                    .append("Simulation: " + batch.getSimulationName() + "\n");
                                            textAreaBatchInfo.append(
                                                    "Needed Worker: " + batch.getNeededWorkers() + "\n");
                                            textAreaBatchInfo.append("Balance: " + batch.isBalanced() + "\n");

                                            Set<List<EntryParam<String, Object>>> testList = generateTestsFrom(
                                                    batch);

                                            textAreaBatchInfo
                                                    .append("--------------------------------------\n");
                                            textAreaBatchInfo
                                                    .append("Number of experiments: " + testList.size() + "\n");
                                            ConcurrentLinkedQueue<List<EntryParam<String, Object>>> testQueue = new ConcurrentLinkedQueue<List<EntryParam<String, Object>>>();

                                            for (List<EntryParam<String, Object>> test : testList)
                                                testQueue.offer(test);

                                            //System.out.println("Test queue: "+testQueue.size());

                                            try {

                                                List<List<EntryWorkerScore<Integer, String>>> workersPartition = Util
                                                        .chopped(scoreList, batch.getNeededWorkers());

                                                //System.out.println(workersPartition.toString());

                                                testCount.set(0);
                                                totalTests = testList.size();

                                                progressBarBatchTest.setValue(0);
                                                progressBarBatchTest.setString("0 %");
                                                progressBarBatchTest.setStringPainted(true);

                                                batchLogger = Logger
                                                        .getLogger(BatchExecutor.class.getCanonicalName());
                                                batchStartedTime = System.currentTimeMillis();

                                                textAreaBatchInfo.append("Batch started at: "
                                                        + Util.getCurrentDateTime(batchStartedTime) + "\n");
                                                textAreaBatchInfo
                                                        .append("--------------------------------------\n");
                                                batchLogger.debug("Started at: " + batchStartedTime);
                                                int i = 1;
                                                BatchExecutor batchExec;
                                                for (List<EntryWorkerScore<Integer, String>> workers : workersPartition) {
                                                    try {

                                                        batchExec = new BatchExecutor(batch.getSimulationName(),
                                                                batch.isBalanced(), testQueue, master,
                                                                connection, root.getChildCount(),
                                                                getFPTAddress(), workers, "Batch" + i, 1,
                                                                textAreaBatchInfo);

                                                        batchExec.getObservable()
                                                                .addObserver(DMasonMaster.this);
                                                        batchExec.start();

                                                        //Thread.sleep(2000);
                                                        //textAreaBatchInfo.append("Batch Executor "+i+" started\n");

                                                        i++;

                                                        //not paraller simulation, I use only one batch executor
                                                        if (!chckbxParallelBatch.isSelected())
                                                            break;
                                                    } catch (Exception e1) {
                                                        // TODO Auto-generated catch block
                                                        e1.printStackTrace();
                                                    }

                                                }

                                            } catch (Exception e3) {
                                                // TODO Auto-generated catch block
                                                e3.printStackTrace();
                                            }

                                        }

                                    } else
                                        JOptionPane.showMessageDialog(DMasonMaster.this,
                                                "Error when loading config file");
                                } else
                                    JOptionPane.showMessageDialog(DMasonMaster.this,
                                            "The configuration file is not a valid file");
                            } else
                                JOptionPane.showMessageDialog(DMasonMaster.this,
                                        xsdFilename + " not exists, can't validate configuration file.");
                        } else
                            JOptionPane.showMessageDialog(DMasonMaster.this,
                                    "The file " + configFile.getName() + "is not a configuration file.");
                    } catch (HeadlessException e1) {
                        // TODO Auto-generated catch block
                        e1.printStackTrace();
                    } catch (IOException e1) {
                        // TODO Auto-generated catch block
                        e1.printStackTrace();
                    }

                }

            });

            JPanel panel = new JPanel();
            panel.setBorder(
                    new TitledBorder(null, "Batch Status", TitledBorder.LEADING, TitledBorder.TOP, null, null));

            chckbxParallelBatch = new JCheckBox("Parallel Batch");

            GroupLayout gl_jPanelRunBatchTests = new GroupLayout(jPanelRunBatchTests);
            gl_jPanelRunBatchTests.setHorizontalGroup(gl_jPanelRunBatchTests
                    .createParallelGroup(Alignment.LEADING)
                    .addGroup(gl_jPanelRunBatchTests.createSequentialGroup().addContainerGap()
                            .addGroup(gl_jPanelRunBatchTests.createParallelGroup(Alignment.LEADING)
                                    .addGroup(gl_jPanelRunBatchTests.createSequentialGroup()
                                            .addComponent(lblSelectConfigurationFile,
                                                    GroupLayout.PREFERRED_SIZE, 139, GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(ComponentPlacement.RELATED)
                                            .addComponent(textFieldConfigFilePath, GroupLayout.PREFERRED_SIZE,
                                                    250, GroupLayout.PREFERRED_SIZE)
                                            .addGap(10).addComponent(buttonChooseConfigFile,
                                                    GroupLayout.PREFERRED_SIZE, 30, GroupLayout.PREFERRED_SIZE))
                                    .addGroup(gl_jPanelRunBatchTests.createSequentialGroup()
                                            .addComponent(chckbxParallelBatch).addGap(18)
                                            .addComponent(buttonLoadConfig))
                                    .addComponent(panel, GroupLayout.PREFERRED_SIZE, 666,
                                            GroupLayout.PREFERRED_SIZE))
                            .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
            gl_jPanelRunBatchTests.setVerticalGroup(gl_jPanelRunBatchTests
                    .createParallelGroup(Alignment.LEADING)
                    .addGroup(gl_jPanelRunBatchTests.createSequentialGroup().addContainerGap()
                            .addGroup(gl_jPanelRunBatchTests.createParallelGroup(Alignment.TRAILING)
                                    .addComponent(buttonChooseConfigFile, GroupLayout.PREFERRED_SIZE, 25,
                                            GroupLayout.PREFERRED_SIZE)
                                    .addComponent(textFieldConfigFilePath, GroupLayout.PREFERRED_SIZE,
                                            GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                    .addComponent(lblSelectConfigurationFile))
                            .addPreferredGap(ComponentPlacement.UNRELATED)
                            .addGroup(gl_jPanelRunBatchTests.createParallelGroup(Alignment.BASELINE)
                                    .addComponent(chckbxParallelBatch).addComponent(buttonLoadConfig))
                            .addPreferredGap(ComponentPlacement.RELATED, 14, Short.MAX_VALUE)
                            .addComponent(panel, GroupLayout.PREFERRED_SIZE, 261, GroupLayout.PREFERRED_SIZE)
                            .addContainerGap()));

            progressBarBatchTest = new JProgressBar();

            JLabel lblProgress = new JLabel("Progress:");
            GroupLayout gl_panel = new GroupLayout(panel);
            gl_panel.setHorizontalGroup(gl_panel.createParallelGroup(Alignment.LEADING).addGroup(gl_panel
                    .createSequentialGroup().addContainerGap()
                    .addGroup(gl_panel.createParallelGroup(Alignment.LEADING)
                            .addComponent(scrollPane4, GroupLayout.DEFAULT_SIZE, 641, Short.MAX_VALUE)
                            .addGroup(gl_panel.createSequentialGroup().addComponent(lblProgress).addGap(18)
                                    .addComponent(progressBarBatchTest, GroupLayout.PREFERRED_SIZE, 169,
                                            GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap()));
            gl_panel.setVerticalGroup(gl_panel.createParallelGroup(Alignment.LEADING)
                    .addGroup(gl_panel.createSequentialGroup().addContainerGap()
                            .addGroup(gl_panel.createParallelGroup(Alignment.LEADING).addComponent(lblProgress)
                                    .addComponent(progressBarBatchTest, GroupLayout.PREFERRED_SIZE,
                                            GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(ComponentPlacement.RELATED)
                            .addComponent(scrollPane4, GroupLayout.PREFERRED_SIZE, 202,
                                    GroupLayout.PREFERRED_SIZE)
                            .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
            panel.setLayout(gl_panel);
            jPanelRunBatchTests.setLayout(gl_jPanelRunBatchTests);
            GroupLayout jPanelSetDistributionLayout = new GroupLayout(jPanelSetDistribution);
            jPanelSetDistributionLayout
                    .setHorizontalGroup(
                            jPanelSetDistributionLayout.createParallelGroup(Alignment.LEADING)
                                    .addGroup(jPanelSetDistributionLayout.createSequentialGroup()
                                            .addComponent(jPanelSettings, GroupLayout.PREFERRED_SIZE, 254,
                                                    GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(ComponentPlacement.RELATED)
                                            .addComponent(jPanelContainerTabbedPane, GroupLayout.PREFERRED_SIZE,
                                                    707, GroupLayout.PREFERRED_SIZE)
                                            .addContainerGap(21, Short.MAX_VALUE)));
            jPanelSetDistributionLayout.setVerticalGroup(jPanelSetDistributionLayout
                    .createParallelGroup(Alignment.LEADING)
                    .addGroup(jPanelSetDistributionLayout.createSequentialGroup()
                            .addGroup(jPanelSetDistributionLayout.createParallelGroup(Alignment.LEADING)
                                    .addComponent(jPanelSettings, GroupLayout.PREFERRED_SIZE,
                                            GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jPanelContainerTabbedPane, GroupLayout.DEFAULT_SIZE,
                                            GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addContainerGap()));
            jPanelSetDistribution.setLayout(jPanelSetDistributionLayout);
        }

        textAreaBatchInfo = new JTextArea();
        textAreaBatchInfo.setEditable(false);
        DefaultCaret caret = (DefaultCaret) textAreaBatchInfo.getCaret();
        caret.setUpdatePolicy(DefaultCaret.NEVER_UPDATE);
        scrollPane4.setViewportView(textAreaBatchInfo);

        //---- jLabelPlayButton ----
        jLabelPlayButton.setIcon(new ImageIcon("resources/image/NotStopped.png"));

        //---- jLabelPauseButton ----
        jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOff.png"));

        //---- labelStopButton ----
        jLabelPlayButton.setIcon(new ImageIcon("image/NotPlaying.png"));

        jLabelPlayButton.addMouseListener(new MouseListener() {

            @Override
            public void mouseReleased(MouseEvent arg0) {
            }

            @Override
            public void mousePressed(MouseEvent arg0) {
            }

            @Override
            public void mouseExited(MouseEvent arg0) {
            }

            @Override
            public void mouseEntered(MouseEvent arg0) {
            }

            @Override
            public void mouseClicked(MouseEvent arg0) {

                jLabelPlayButton.setIcon(new ImageIcon("resources/image/Playing.png"));
                jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOff.png"));
                jLabelStopButton.setIcon(new ImageIcon("resources/image/NotStopped.png"));
                jLabelResetButton.setIcon(new ImageIcon("resources/image/NotReload.png"));
                try {

                    master.play();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });

        //---- labelStopButton2 ----   
        jLabelStopButton.setIcon(new ImageIcon("resources/image/NotStopped.png"));
        jLabelStopButton.addMouseListener(new MouseListener() {

            @Override
            public void mouseReleased(MouseEvent e) {
            }

            @Override
            public void mousePressed(MouseEvent e) {
            }

            @Override
            public void mouseExited(MouseEvent e) {
            }

            @Override
            public void mouseEntered(MouseEvent e) {
            }

            @Override
            public void mouseClicked(MouseEvent e) {
                jLabelStopButton.setIcon(new ImageIcon("resources/image/Stopped.png"));
                jLabelPlayButton.setIcon(new ImageIcon("resources/image/NotPlaying.png"));
                jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOff.png"));

                try {

                    Address FTPAddress = getFPTAddress();

                    if (FTPAddress != null) {
                        UpdateData ud = new UpdateData("", FTPAddress);
                        master.stop(ud);
                    }

                } catch (Exception e1) {
                    e1.printStackTrace();
                }
            }
        });

        //---- labelPauseButton ----
        jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOff.png"));
        jLabelPauseButton.addMouseListener(new MouseListener() {

            @Override
            public void mouseReleased(MouseEvent e) {
            }

            @Override
            public void mousePressed(MouseEvent e) {
            }

            @Override
            public void mouseExited(MouseEvent e) {
            }

            @Override
            public void mouseEntered(MouseEvent e) {
            }

            @Override
            public void mouseClicked(MouseEvent e) {
                jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOn.png"));
                jLabelStopButton.setIcon(new ImageIcon("resources/image/NotStopped.png"));
                jLabelPlayButton.setIcon(new ImageIcon("resources/image/NotPlaying.png"));
                try {
                    master.pause();
                } catch (Exception e1) {
                    e1.printStackTrace();
                }
            }
        });

        //======== jPanelNumStep ========
        {

            GroupLayout jPanelNumStepLayout = new GroupLayout(jPanelNumStep);
            jPanelNumStepLayout.setHorizontalGroup(
                    jPanelNumStepLayout.createParallelGroup(Alignment.TRAILING).addGap(0, 25, Short.MAX_VALUE));
            jPanelNumStepLayout.setVerticalGroup(
                    jPanelNumStepLayout.createParallelGroup(Alignment.LEADING).addGap(0, 28, Short.MAX_VALUE));
            jPanelNumStep.setLayout(jPanelNumStepLayout);
            jPanelNumStep.setPreferredSize(new java.awt.Dimension(89, 23));
        }
        {
            jLabelResetButton = new JLabel();
            jLabelResetButton.setIcon(new ImageIcon("resources/image/NotReload.png"));
            jLabelResetButton.setPreferredSize(new java.awt.Dimension(20, 20));

            jLabelResetButton.setVisible(enableReset);
        }

        // for resetting simulation
        jLabelResetButton.addMouseListener(new MouseListener() {

            @Override
            public void mouseClicked(MouseEvent arg0) {

                if (connected) {
                    jLabelStopButton.setIcon(new ImageIcon("resources/image/NotStopped.png"));
                    jLabelPlayButton.setIcon(new ImageIcon("resources/image/NotPlaying.png"));
                    jLabelPauseButton.setIcon(new ImageIcon("resources/image/PauseOff.png"));
                    jLabelResetButton.setIcon(new ImageIcon("resources/image/Reload.png"));

                    //send message to workers for resetting simulation
                    try {
                        master.reset();

                    } catch (Exception e1) {
                        e1.printStackTrace();
                    }

                    //clean up topic from AcitveMQ
                    connection.resetTopic();

                    setSystemSettingsEnabled(true);

                    notifyArea.append("Simulation resetted\n");

                }

            }

            @Override
            public void mouseEntered(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mouseExited(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mousePressed(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void mouseReleased(MouseEvent arg0) {
                // TODO Auto-generated method stub

            }
        });
        writeStepLabel = new JLabel();
        writeStepLabel.setText("0");

        lblTotalSteps = new JLabel("Steps:");

        GroupLayout panelMainLayout = new GroupLayout(panelMain);
        panelMainLayout.setHorizontalGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                .addGroup(panelMainLayout.createSequentialGroup()
                        .addComponent(jPanelContainerSettings, GroupLayout.PREFERRED_SIZE, 0,
                                GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                                .addComponent(jPanelSetDistribution, 0, 986, Short.MAX_VALUE)
                                .addGroup(panelMainLayout.createSequentialGroup().addGap(636)
                                        .addGroup(panelMainLayout.createParallelGroup(Alignment.TRAILING)
                                                .addComponent(jLabelStep, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                                .addGroup(panelMainLayout.createSequentialGroup()
                                                        .addComponent(lblTotalSteps)
                                                        .addPreferredGap(ComponentPlacement.UNRELATED)
                                                        .addComponent(writeStepLabel)))
                                        .addPreferredGap(ComponentPlacement.RELATED)
                                        .addComponent(jPanelNumStep, GroupLayout.PREFERRED_SIZE, 25,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                                                .addGroup(panelMainLayout.createSequentialGroup().addGap(24)
                                                        .addComponent(jLabelPlayButton,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addPreferredGap(ComponentPlacement.UNRELATED)
                                                        .addComponent(jLabelPauseButton,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addPreferredGap(ComponentPlacement.UNRELATED)
                                                        .addComponent(jLabelStopButton,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE,
                                                                GroupLayout.PREFERRED_SIZE))
                                                .addGroup(panelMainLayout.createSequentialGroup().addGap(116)
                                                        .addComponent(jLabelResetButton,
                                                                GroupLayout.PREFERRED_SIZE, 30,
                                                                GroupLayout.PREFERRED_SIZE)))))
                        .addGap(12))
                .addComponent(jPanelContainerConnection, 0, 1004, Short.MAX_VALUE));
        panelMainLayout.setVerticalGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                .addGroup(panelMainLayout.createSequentialGroup()
                        .addComponent(jPanelContainerConnection, GroupLayout.PREFERRED_SIZE, 71,
                                GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                                .addComponent(jPanelSetDistribution, GroupLayout.PREFERRED_SIZE, 518,
                                        GroupLayout.PREFERRED_SIZE)
                                .addGroup(panelMainLayout.createSequentialGroup().addGap(29).addComponent(
                                        jPanelContainerSettings, GroupLayout.PREFERRED_SIZE, 489,
                                        GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addGroup(panelMainLayout.createParallelGroup(Alignment.LEADING)
                                .addComponent(jLabelStopButton, GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabelPlayButton, GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabelPauseButton, GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabelResetButton, GroupLayout.PREFERRED_SIZE, 24,
                                        GroupLayout.PREFERRED_SIZE)
                                .addGroup(panelMainLayout.createParallelGroup(Alignment.BASELINE)
                                        .addComponent(writeStepLabel, GroupLayout.PREFERRED_SIZE, 16,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addComponent(lblTotalSteps))
                                .addGroup(panelMainLayout.createSequentialGroup()
                                        .addComponent(jLabelStep, GroupLayout.PREFERRED_SIZE,
                                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(ComponentPlacement.RELATED).addComponent(jPanelNumStep,
                                                GroupLayout.PREFERRED_SIZE, 28, GroupLayout.PREFERRED_SIZE)))
                        .addContainerGap(13, Short.MAX_VALUE)));
        panelMain.setLayout(panelMainLayout);
    }

    GroupLayout contentPaneLayout = new GroupLayout(contentPane);
    contentPaneLayout.setHorizontalGroup(
            contentPaneLayout.createParallelGroup(Alignment.LEADING).addGroup(Alignment.TRAILING,
                    contentPaneLayout
                            .createSequentialGroup().addContainerGap().addComponent(panelMain,
                                    GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addContainerGap()));
    contentPaneLayout.setVerticalGroup(
            contentPaneLayout.createParallelGroup(Alignment.LEADING).addGroup(Alignment.TRAILING,
                    contentPaneLayout.createSequentialGroup().addContainerGap().addComponent(panelMain,
                            GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    contentPane.setLayout(contentPaneLayout);
    pack();
    setLocationRelativeTo(null);

    refreshServerLabel.setVisible(false);

    jButtonChoseSimJar.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            simulationFile = showFileChooser();
            if (simulationFile != null)
                jTextFieldPathSimJar.setText(simulationFile.getAbsolutePath());
        }
    });

}

From source file:jeplus.JEPlusFrameMain.java

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

    btg = new javax.swing.ButtonGroup();
    rdoExportIndividual = new javax.swing.JRadioButton();
    rdoCombineResults = new javax.swing.JRadioButton();
    rdoTestFirstN = new javax.swing.JRadioButton();
    txtTestFirstN = new javax.swing.JTextField();
    jLabel9 = new javax.swing.JLabel();
    chkLHS = new javax.swing.JCheckBox();
    jSplitPane1 = new javax.swing.JSplitPane();
    tpnMain = new javax.swing.JTabbedPane();
    pnlProject = new javax.swing.JPanel();
    jPanel1 = new javax.swing.JPanel();
    jplTree = new javax.swing.JPanel();
    jplProjectFilesPanelHolder = new javax.swing.JPanel();
    jPanel_EPlusProjectFiles2 = new jeplus.gui.JPanel_EPlusProjectFiles();
    cboProjectType = new javax.swing.JComboBox();
    jLabel2 = new javax.swing.JLabel();
    cmdValidate = new javax.swing.JButton();
    pnlExecution = new javax.swing.JPanel();
    cboExecutionType = new javax.swing.JComboBox();
    jLabel27 = new javax.swing.JLabel();
    jplSettings = new javax.swing.JPanel();
    jplEPlusSettings = new jeplus.gui.JPanel_EPlusSettings();
    jplOptions = new javax.swing.JPanel();
    jplLocalControllerSettings = new jeplus.gui.JPanel_LocalControllerOptions();
    jPanel3 = new javax.swing.JPanel();
    jPanel4 = new javax.swing.JPanel();
    rdoTestChains = new javax.swing.JRadioButton();
    rdoTestRandomN = new javax.swing.JRadioButton();
    txtTestRandomN = new javax.swing.JTextField();
    jLabel5 = new javax.swing.JLabel();
    txtRandomSeed = new javax.swing.JTextField();
    jLabel4 = new javax.swing.JLabel();
    cmdStart = new javax.swing.JButton();
    rdoJobListFile = new javax.swing.JRadioButton();
    rdoAllJobs = new javax.swing.JRadioButton();
    txtJobListFile = new javax.swing.JTextField();
    cmdSelectJobListFile = new javax.swing.JButton();
    cmdEditJobListFile = new javax.swing.JButton();
    chkOverride = new javax.swing.JCheckBox();
    cboSampleOpt = new javax.swing.JComboBox();
    pnlUtilities = new javax.swing.JPanel();
    TpnUtilities = new javax.swing.JTabbedPane();
    TpnEditors = new javax.swing.JTabbedPane();
    jMenuBarMain = new javax.swing.JMenuBar();
    jMenuFile = new javax.swing.JMenu();
    jMenuItemNew = new javax.swing.JMenuItem();
    jMenuItemOpen = new javax.swing.JMenuItem();
    jMenuRecent = new javax.swing.JMenu();
    jMenuItemSave = new javax.swing.JMenuItem();
    jMenuItemSaveAs = new javax.swing.JMenuItem();
    jSeparator2 = new javax.swing.JSeparator();
    jMenuItemImportJson = new javax.swing.JMenuItem();
    jMenuItemExportJson = new javax.swing.JMenuItem();
    jSeparator10 = new javax.swing.JPopupMenu.Separator();
    jMenuItemOpenTree = new javax.swing.JMenuItem();
    jMenuItemSaveTree = new javax.swing.JMenuItem();
    jSeparator3 = new javax.swing.JSeparator();
    jMenuItemExit = new javax.swing.JMenuItem();
    jMenuEdit = new javax.swing.JMenu();
    jMenuItemImportTable = new javax.swing.JMenuItem();
    jMenuItemExportTable = new javax.swing.JMenuItem();
    jMenuItemResetTree = new javax.swing.JMenuItem();
    jSeparator7 = new javax.swing.JPopupMenu.Separator();
    jMenuItemToRelative = new javax.swing.JMenuItem();
    jMenuItemToAbsolute = new javax.swing.JMenuItem();
    jMenuAction = new javax.swing.JMenu();
    jMenuItemValidate = new javax.swing.JMenuItem();
    jMenuItemSimulate = new javax.swing.JMenuItem();
    jMenuItemPostprocess = new javax.swing.JMenuItem();
    jSeparator6 = new javax.swing.JPopupMenu.Separator();
    jMenuItemMonitor = new javax.swing.JMenuItem();
    jMenuItemStop = new javax.swing.JMenuItem();
    jMenuViewResult = new javax.swing.JMenu();
    jMenuItemViewFolder = new javax.swing.JMenuItem();
    jMenuItemViewIndex = new javax.swing.JMenuItem();
    jMenuItemViewReports = new javax.swing.JMenuItem();
    jSeparator9 = new javax.swing.JPopupMenu.Separator();
    jMenuItemCreateJobList = new javax.swing.JMenuItem();
    jMenuItemCreateIndex = new javax.swing.JMenuItem();
    jSeparator12 = new javax.swing.JPopupMenu.Separator();
    jMenuItemJESSClient = new javax.swing.JMenuItem();
    jMenuItemJEPlusEA = new javax.swing.JMenuItem();
    jMenuTools = new javax.swing.JMenu();
    jMenuItemConfig = new javax.swing.JMenuItem();
    jSeparator4 = new javax.swing.JSeparator();
    jMenuItemViewErr = new javax.swing.JMenuItem();
    jMenuItemViewLog = new javax.swing.JMenuItem();
    jSeparator8 = new javax.swing.JPopupMenu.Separator();
    jMenuItemVersionConverter = new javax.swing.JMenuItem();
    jMenuItemRunPython = new javax.swing.JMenuItem();
    jMenuItemRunReadVars = new javax.swing.JMenuItem();
    jSeparator5 = new javax.swing.JPopupMenu.Separator();
    jMenuItemMemoryUsage = new javax.swing.JMenuItem();
    jMenuItemDefaultLaF = new javax.swing.JMenuItem();
    jMenuItemEditorTheme = new javax.swing.JMenuItem();
    jMenuHelp = new javax.swing.JMenu();
    jMenuItemUserGuide = new javax.swing.JMenuItem();
    jSeparator1 = new javax.swing.JSeparator();
    jMenuItemAbout = new javax.swing.JMenuItem();

    rdoExportIndividual.setText("Export individual results as: [job-id]_");
    rdoExportIndividual.setEnabled(false);
    rdoExportIndividual.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoExportIndividualActionPerformed(evt);
        }
    });

    rdoCombineResults.setSelected(true);
    rdoCombineResults.setText("Assemble results into CSV");
    rdoCombineResults.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoCombineResultsActionPerformed(evt);
        }
    });

    btg.add(rdoTestFirstN);
    rdoTestFirstN.setText("The first ");
    rdoTestFirstN.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoTestFirstNActionPerformed(evt);
        }
    });

    txtTestFirstN.setText("10");
    txtTestFirstN.setEnabled(false);

    jLabel9.setText("jobs");

    chkLHS.setText("LHS");
    chkLHS.setEnabled(false);
    chkLHS.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            chkLHSActionPerformed(evt);
        }
    });

    setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
    setMinimumSize(new java.awt.Dimension(1000, 740));
    setPreferredSize(new java.awt.Dimension(1200, 760));
    addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosing(java.awt.event.WindowEvent evt) {
            formWindowClosing(evt);
        }
    });

    jSplitPane1.setBorder(null);
    jSplitPane1.setDividerLocation(580);
    jSplitPane1.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
    jSplitPane1.setOpaque(false);
    jSplitPane1.setPreferredSize(new java.awt.Dimension(1024, 719));

    tpnMain.setToolTipText("Project specifications / Execution settings / optional Post process");
    tpnMain.setPreferredSize(new java.awt.Dimension(450, 708));
    tpnMain.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            tpnMainStateChanged(evt);
        }
    });

    pnlProject.setPreferredSize(new java.awt.Dimension(450, 688));

    jplTree.setBorder(javax.swing.BorderFactory.createTitledBorder("Parameter Tree"));
    jplTree.setLayout(new java.awt.BorderLayout());

    javax.swing.GroupLayout jplProjectFilesPanelHolderLayout = new javax.swing.GroupLayout(
            jplProjectFilesPanelHolder);
    jplProjectFilesPanelHolder.setLayout(jplProjectFilesPanelHolderLayout);
    jplProjectFilesPanelHolderLayout.setHorizontalGroup(jplProjectFilesPanelHolderLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                    jPanel_EPlusProjectFiles2, javax.swing.GroupLayout.DEFAULT_SIZE, 485, Short.MAX_VALUE));
    jplProjectFilesPanelHolderLayout.setVerticalGroup(
            jplProjectFilesPanelHolderLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jPanel_EPlusProjectFiles2, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE));

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jplProjectFilesPanelHolder, javax.swing.GroupLayout.DEFAULT_SIZE,
                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                    jPanel1Layout.createSequentialGroup().addContainerGap()
                            .addComponent(jplTree, javax.swing.GroupLayout.DEFAULT_SIZE, 465, Short.MAX_VALUE)
                            .addContainerGap()));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                    .addComponent(jplProjectFilesPanelHolder, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jplTree, javax.swing.GroupLayout.DEFAULT_SIZE, 482, Short.MAX_VALUE)
                    .addContainerGap()));

    cboProjectType.setModel(new javax.swing.DefaultComboBoxModel(
            new String[] { "EnergyPlus Project", "TRNSYS Project", "INSEL Project" }));
    cboProjectType.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cboProjectTypeActionPerformed(evt);
        }
    });

    jLabel2.setText("Select Project type:");

    cmdValidate.setText("Validate project");
    cmdValidate.setToolTipText("Validate the configuration");
    cmdValidate.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmdValidateActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout pnlProjectLayout = new javax.swing.GroupLayout(pnlProject);
    pnlProject.setLayout(pnlProjectLayout);
    pnlProjectLayout.setHorizontalGroup(pnlProjectLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                    Short.MAX_VALUE)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlProjectLayout.createSequentialGroup()
                    .addContainerGap().addComponent(jLabel2)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(cboProjectType, javax.swing.GroupLayout.PREFERRED_SIZE, 161,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 92, Short.MAX_VALUE)
                    .addComponent(cmdValidate).addContainerGap()));
    pnlProjectLayout.setVerticalGroup(pnlProjectLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlProjectLayout.createSequentialGroup().addContainerGap().addGroup(pnlProjectLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(cboProjectType, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel2).addComponent(cmdValidate))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jPanel1,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                            Short.MAX_VALUE)));

    tpnMain.addTab("Project", pnlProject);

    pnlExecution.setPreferredSize(new java.awt.Dimension(500, 688));

    cboExecutionType.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Local batch controller",
            "Offline PBS script generator", "Local PBS controller", "JEPlusPlus Job Server (PBS only)",
            "JEPlusPlus Job Server (Windows only)", "JEPlusPlus Job Server" }));
    cboExecutionType.setToolTipText("Select execution type here");
    cboExecutionType.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cboExecutionTypeActionPerformed(evt);
        }
    });

    jLabel27.setText("Select execution controller: ");

    jplSettings.setBorder(javax.swing.BorderFactory.createTitledBorder("Executables"));
    jplSettings.setLayout(new java.awt.BorderLayout());
    jplSettings.add(jplEPlusSettings, java.awt.BorderLayout.CENTER);

    jplOptions.setBorder(javax.swing.BorderFactory.createTitledBorder("Options"));
    jplOptions.setLayout(new java.awt.BorderLayout());
    jplOptions.add(jplLocalControllerSettings, java.awt.BorderLayout.CENTER);

    jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Actions"));

    btg.add(rdoTestChains);
    rdoTestChains.setSelected(true);
    rdoTestChains.setText("The first job of each parameter chain (see validation report for parameter chains)");
    rdoTestChains.setToolTipText(
            "This option is for testing jobs only. The job IDs it uses may be different to other modes.");
    rdoTestChains.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoTestChainsActionPerformed(evt);
        }
    });

    btg.add(rdoTestRandomN);
    rdoTestRandomN.setText("A random sample of ");
    rdoTestRandomN.setToolTipText("Run a random sample of the whole project.");
    rdoTestRandomN.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoTestRandomNActionPerformed(evt);
        }
    });

    txtTestRandomN.setText("1000");
    txtTestRandomN.setToolTipText("Sample size");
    txtTestRandomN.setEnabled(false);

    jLabel5.setText(" jobs, using: ");

    txtRandomSeed.setText("12345");
    txtRandomSeed.setToolTipText(
            "Set a random seed to fix the job sequence. If a negative value is specified, the current time is used as the seed.");
    txtRandomSeed.setEnabled(false);

    jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
    jLabel4.setText("Random Seed:");

    cmdStart.setText("Run Batch");
    cmdStart.setToolTipText("Start batch simulation");
    cmdStart.setActionCommand("start");
    cmdStart.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmdStartActionPerformed(evt);
        }
    });

    btg.add(rdoJobListFile);
    rdoJobListFile.setText("Job list in file: ");
    rdoJobListFile.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoJobListFileActionPerformed(evt);
        }
    });

    btg.add(rdoAllJobs);
    rdoAllJobs.setText("All jobs");
    rdoAllJobs.setToolTipText("This option will start ALL jobs in the project.");
    rdoAllJobs.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            rdoAllJobsActionPerformed(evt);
        }
    });

    txtJobListFile.setText("jobs.csv");
    txtJobListFile.setToolTipText("For the format of a job list file, please refer to the users manual.");
    txtJobListFile.setEnabled(false);

    cmdSelectJobListFile.setText("...");
    cmdSelectJobListFile.setToolTipText("Select a job list file");
    cmdSelectJobListFile.setEnabled(false);
    cmdSelectJobListFile.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmdSelectJobListFileActionPerformed(evt);
        }
    });

    cmdEditJobListFile
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_edit.png"))); // NOI18N
    cmdEditJobListFile.setToolTipText("Edit the contents of the file");
    cmdEditJobListFile.setEnabled(false);
    cmdEditJobListFile.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cmdEditJobListFileActionPerformed(evt);
        }
    });

    chkOverride.setSelected(true);
    chkOverride.setText("Override existing results");
    chkOverride.setToolTipText(
            "If unchecked, jEPlus will skip the cases whose results are already present in the output folder.");
    chkOverride.setEnabled(false);

    cboSampleOpt.setModel(
            new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
    cboSampleOpt.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cboSampleOptActionPerformed(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)
                    .addComponent(rdoTestChains, javax.swing.GroupLayout.DEFAULT_SIZE, 507, Short.MAX_VALUE)
                    .addGroup(jPanel4Layout.createSequentialGroup().addComponent(rdoTestRandomN)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(txtTestRandomN, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel5)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(cboSampleOpt, 0, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)
                            .addGap(18, 18, 18).addComponent(jLabel4)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(txtRandomSeed, javax.swing.GroupLayout.PREFERRED_SIZE, 81,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(jPanel4Layout.createSequentialGroup().addComponent(rdoJobListFile)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(txtJobListFile)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(cmdSelectJobListFile, javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(cmdEditJobListFile, javax.swing.GroupLayout.PREFERRED_SIZE, 28,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(rdoAllJobs, javax.swing.GroupLayout.Alignment.TRAILING,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                            Short.MAX_VALUE)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                            .addComponent(chkOverride, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGap(18, 18, 18).addComponent(cmdStart, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    130, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap()));
    jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel4Layout.createSequentialGroup().addComponent(rdoTestChains)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(rdoTestRandomN)
                            .addComponent(txtTestRandomN, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(txtRandomSeed, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel4).addComponent(jLabel5).addComponent(cboSampleOpt,
                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel4Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(rdoJobListFile).addComponent(txtJobListFile,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(cmdSelectJobListFile, javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(cmdEditJobListFile))
                    .addGap(7, 7, 7).addComponent(rdoAllJobs).addGap(18, 18, 18)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(cmdStart).addComponent(chkOverride))
                    .addContainerGap(115, Short.MAX_VALUE)));

    javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
    jPanel3.setLayout(jPanel3Layout);
    jPanel3Layout.setHorizontalGroup(jPanel3Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap().addComponent(jPanel4,
                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));
    jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup().addComponent(jPanel4,
                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));

    javax.swing.GroupLayout pnlExecutionLayout = new javax.swing.GroupLayout(pnlExecution);
    pnlExecution.setLayout(pnlExecutionLayout);
    pnlExecutionLayout.setHorizontalGroup(pnlExecutionLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlExecutionLayout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(pnlExecutionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jPanel3, javax.swing.GroupLayout.Alignment.LEADING,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                    pnlExecutionLayout.createSequentialGroup().addComponent(jLabel27)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(cboExecutionType, 0,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(jplSettings, javax.swing.GroupLayout.Alignment.LEADING,
                                    javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                            .addComponent(jplOptions, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                    Short.MAX_VALUE))
                    .addContainerGap()));
    pnlExecutionLayout.setVerticalGroup(pnlExecutionLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlExecutionLayout.createSequentialGroup().addContainerGap()
                    .addGroup(pnlExecutionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(cboExecutionType, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel27))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jplSettings, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jplOptions, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));

    tpnMain.addTab("Execution", pnlExecution);

    javax.swing.GroupLayout pnlUtilitiesLayout = new javax.swing.GroupLayout(pnlUtilities);
    pnlUtilities.setLayout(pnlUtilitiesLayout);
    pnlUtilitiesLayout
            .setHorizontalGroup(
                    pnlUtilitiesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlUtilitiesLayout
                                    .createSequentialGroup().addContainerGap().addComponent(TpnUtilities,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, 465, Short.MAX_VALUE)
                                    .addContainerGap()));
    pnlUtilitiesLayout.setVerticalGroup(pnlUtilitiesLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlUtilitiesLayout.createSequentialGroup().addContainerGap()
                    .addComponent(TpnUtilities, javax.swing.GroupLayout.DEFAULT_SIZE, 669, Short.MAX_VALUE)
                    .addContainerGap()));

    tpnMain.addTab("Utilities", pnlUtilities);

    jSplitPane1.setLeftComponent(tpnMain);

    TpnEditors.setMaximumSize(new java.awt.Dimension(900, 1200));
    TpnEditors.setPreferredSize(null);
    jSplitPane1.setRightComponent(TpnEditors);
    TpnEditors.getAccessibleContext().setAccessibleName("Information");

    jMenuFile.setText("File");

    jMenuItemNew
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_add.png"))); // NOI18N
    jMenuItemNew.setText("New");
    jMenuItemNew.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemNewActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemNew);

    jMenuItemOpen
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/folder_explore.png"))); // NOI18N
    jMenuItemOpen.setText("Open ...");
    jMenuItemOpen.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemOpenActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemOpen);

    jMenuRecent.setText("Open recent");
    jMenuFile.add(jMenuRecent);

    jMenuItemSave.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/save1.png"))); // NOI18N
    jMenuItemSave.setText("Save ");
    jMenuItemSave.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemSaveActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemSave);

    jMenuItemSaveAs.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/disk.png"))); // NOI18N
    jMenuItemSaveAs.setText("Save as ... ");
    jMenuItemSaveAs.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemSaveAsActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemSaveAs);
    jMenuFile.add(jSeparator2);

    jMenuItemImportJson
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/view_as_json.png"))); // NOI18N
    jMenuItemImportJson.setText("Import JSON project ...");
    jMenuItemImportJson.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemImportJsonActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemImportJson);

    jMenuItemExportJson
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/view_as_json.png"))); // NOI18N
    jMenuItemExportJson.setText("Export JSON project ...");
    jMenuItemExportJson.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemExportJsonActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemExportJson);
    jMenuFile.add(jSeparator10);

    jMenuItemOpenTree
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_get.png"))); // NOI18N
    jMenuItemOpenTree.setText("Import jE+ v0.5 OBJ file ...");
    jMenuItemOpenTree
            .setToolTipText("Import contents of an .obj file (including v0.5 objs) into this project.");
    jMenuItemOpenTree.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemOpenTreeActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemOpenTree);

    jMenuItemSaveTree
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_put.png"))); // NOI18N
    jMenuItemSaveTree.setText("Export jE+ v0.5 OBJ file ...");
    jMenuItemSaveTree.setToolTipText("Export the current project to an .obj file.");
    jMenuItemSaveTree.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemSaveTreeActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemSaveTree);
    jMenuFile.add(jSeparator3);

    jMenuItemExit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/cross.png"))); // NOI18N
    jMenuItemExit.setText("Exit");
    jMenuItemExit.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemExitActionPerformed(evt);
        }
    });
    jMenuFile.add(jMenuItemExit);

    jMenuBarMain.add(jMenuFile);

    jMenuEdit.setText("Edit");

    jMenuItemImportTable
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_get.png"))); // NOI18N
    jMenuItemImportTable.setText("Import parameters from CSV ...");
    jMenuItemImportTable.setToolTipText("Import parameter definitions from a CSV table.");
    jMenuItemImportTable.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemImportTableActionPerformed(evt);
        }
    });
    jMenuEdit.add(jMenuItemImportTable);

    jMenuItemExportTable
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_go.png"))); // NOI18N
    jMenuItemExportTable.setText("Export parameters to CSV ...");
    jMenuItemExportTable.setToolTipText("Export parameters in this project to a CSV table");
    jMenuItemExportTable.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemExportTableActionPerformed(evt);
        }
    });
    jMenuEdit.add(jMenuItemExportTable);

    jMenuItemResetTree.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/cross.png"))); // NOI18N
    jMenuItemResetTree.setText("Reset parameter tree");
    jMenuItemResetTree.setToolTipText("Clear the parameter tree");
    jMenuItemResetTree.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemResetTreeActionPerformed(evt);
        }
    });
    jMenuEdit.add(jMenuItemResetTree);
    jMenuEdit.add(jSeparator7);

    jMenuItemToRelative
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/document-save.png"))); // NOI18N
    jMenuItemToRelative.setText("Change all paths to relative form");
    jMenuItemToRelative.setToolTipText(
            "Change paths in the project to a relative form relative to the location of the project file.");
    jMenuItemToRelative.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemToRelativeActionPerformed(evt);
        }
    });
    jMenuEdit.add(jMenuItemToRelative);

    jMenuItemToAbsolute
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/document-save-as.png"))); // NOI18N
    jMenuItemToAbsolute.setText("Change all paths to absolute form");
    jMenuItemToAbsolute.setToolTipText("Change the path to absolute form.");
    jMenuItemToAbsolute.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemToAbsoluteActionPerformed(evt);
        }
    });
    jMenuEdit.add(jMenuItemToAbsolute);

    jMenuBarMain.add(jMenuEdit);

    jMenuAction.setText("Action");

    jMenuItemValidate.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/check.png"))); // NOI18N
    jMenuItemValidate.setText("Validate jobs");
    jMenuItemValidate.setToolTipText("Validate the current project and count jobs.");
    jMenuItemValidate.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemValidateActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemValidate);

    jMenuItemSimulate
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/lightening2.png"))); // NOI18N
    jMenuItemSimulate.setText("Simulate ");
    jMenuItemSimulate.setToolTipText("Start simulation.");
    jMenuItemSimulate.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemSimulateActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemSimulate);

    jMenuItemPostprocess.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/chart.png"))); // NOI18N
    jMenuItemPostprocess.setText("Post-process");
    jMenuItemPostprocess.setToolTipText("Go to the post process / utilities tab");
    jMenuItemPostprocess.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemPostprocessActionPerformed1(evt);
        }
    });
    jMenuAction.add(jMenuItemPostprocess);
    jMenuAction.add(jSeparator6);

    jMenuItemMonitor.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/tool.png"))); // NOI18N
    jMenuItemMonitor.setText("Show Monitor");
    jMenuItemMonitor.setToolTipText("Show simulation monitor.");
    jMenuItemMonitor.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemMonitorActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemMonitor);

    jMenuItemStop.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/cross.png"))); // NOI18N
    jMenuItemStop.setText("Stop Simulation");
    jMenuItemStop.setToolTipText("Cancel the current simulation jobs.");
    jMenuItemStop.setEnabled(false);
    jMenuItemStop.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemStopActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemStop);

    jMenuViewResult.setText("View results");
    jMenuViewResult.setToolTipText("View result folder and files");
    jMenuViewResult.setEnabled(false);

    jMenuItemViewFolder
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/folder_explore.png"))); // NOI18N
    jMenuItemViewFolder.setText("Go to output folder");
    jMenuItemViewFolder.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemViewFolderActionPerformed(evt);
        }
    });
    jMenuViewResult.add(jMenuItemViewFolder);

    jMenuItemViewIndex.setIcon(
            new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_magnify.png"))); // NOI18N
    jMenuItemViewIndex.setText("View Job Index (JobIndex.csv)");
    jMenuItemViewIndex.setActionCommand("View Job Index (SimJobIndex.csv)");
    jMenuItemViewIndex.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemViewIndexActionPerformed(evt);
        }
    });
    jMenuViewResult.add(jMenuItemViewIndex);

    jMenuItemViewReports.setIcon(
            new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_magnify.png"))); // NOI18N
    jMenuItemViewReports.setText("View Simulation Reports (RunTimes.csv)");
    jMenuItemViewReports.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemViewReportsActionPerformed(evt);
        }
    });
    jMenuViewResult.add(jMenuItemViewReports);

    jMenuAction.add(jMenuViewResult);
    jMenuAction.add(jSeparator9);

    jMenuItemCreateJobList
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_key.png"))); // NOI18N
    jMenuItemCreateJobList.setText("Create the full job list...");
    jMenuItemCreateJobList.setToolTipText(
            "Create the list of jobs in the current project and save it in a CSV file. This list or part of it can be used as a job list file in the future.");
    jMenuItemCreateJobList.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemCreateJobListActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemCreateJobList);

    jMenuItemCreateIndex
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_white_key.png"))); // NOI18N
    jMenuItemCreateIndex.setText("Create parameter indexes");
    jMenuItemCreateIndex.setToolTipText("Create index tables for the parameters in this project.");
    jMenuItemCreateIndex.setEnabled(false);
    jMenuItemCreateIndex.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemCreateIndexActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemCreateIndex);
    jMenuAction.add(jSeparator12);

    jMenuItemJESSClient.setText("Launch JESS Client");
    jMenuItemJESSClient.setEnabled(false);
    jMenuItemJESSClient.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemJESSClientActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemJESSClient);

    jMenuItemJEPlusEA.setText("Launch jEPlus+EA");
    jMenuItemJEPlusEA.setEnabled(false);
    jMenuItemJEPlusEA.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemJEPlusEAActionPerformed(evt);
        }
    });
    jMenuAction.add(jMenuItemJEPlusEA);

    jMenuBarMain.add(jMenuAction);

    jMenuTools.setText("Tools ");

    jMenuItemConfig.setIcon(
            new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/hammer_screwdriver.png"))); // NOI18N
    jMenuItemConfig.setText("Configure External Programs ...");
    jMenuItemConfig.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemConfigActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemConfig);
    jMenuTools.add(jSeparator4);

    jMenuItemViewErr.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/bug.png"))); // NOI18N
    jMenuItemViewErr.setText("View jEPlus error log (jeplus.err)");
    jMenuItemViewErr.setToolTipText("Open jeplus.err file to check errors.");
    jMenuItemViewErr.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemViewErrActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemViewErr);

    jMenuItemViewLog.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/bug.png"))); // NOI18N
    jMenuItemViewLog.setText("View E+ console log (console.log)");
    jMenuItemViewLog.setEnabled(false);
    jMenuItemViewLog.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemViewLogActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemViewLog);
    jMenuTools.add(jSeparator8);

    jMenuItemVersionConverter
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/go-up.png"))); // NOI18N
    jMenuItemVersionConverter.setText("IDF Version Converter ...");
    jMenuItemVersionConverter.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemVersionConverterActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemVersionConverter);

    jMenuItemRunPython
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/16px-Icon-Python.png"))); // NOI18N
    jMenuItemRunPython.setText("Run Python script ...");
    jMenuItemRunPython.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemRunPythonActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemRunPython);

    jMenuItemRunReadVars
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/edit-clear.png"))); // NOI18N
    jMenuItemRunReadVars.setText("Run ReadVars ...");
    jMenuItemRunReadVars.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemRunReadVarsActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemRunReadVars);
    jMenuTools.add(jSeparator5);

    jMenuItemMemoryUsage
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/ddr_memory.png"))); // NOI18N
    jMenuItemMemoryUsage.setText("Memory Usage");
    jMenuItemMemoryUsage.setToolTipText("Show memory usage dialog to check available resources");
    jMenuItemMemoryUsage.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemMemoryUsageActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemMemoryUsage);

    jMenuItemDefaultLaF.setIcon(new javax.swing.ImageIcon(
            getClass().getResource("/jeplus/images/preferences-desktop-wallpaper.png"))); // NOI18N
    jMenuItemDefaultLaF.setText("Switch to defaul Look and Feel (Metal)");
    jMenuItemDefaultLaF.setToolTipText("Change GUI style");
    jMenuItemDefaultLaF.setActionCommand("default");
    jMenuItemDefaultLaF.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemDefaultLaFActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemDefaultLaF);

    jMenuItemEditorTheme
            .setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/page_gear.png"))); // NOI18N
    jMenuItemEditorTheme.setText("Edit syntax highlighting theme");
    jMenuItemEditorTheme.setToolTipText("The syntax highlighting style can be edited to your preference.");
    jMenuItemEditorTheme.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemEditorThemeActionPerformed(evt);
        }
    });
    jMenuTools.add(jMenuItemEditorTheme);

    jMenuBarMain.add(jMenuTools);

    jMenuHelp.setText("Help");

    jMenuItemUserGuide.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H,
            java.awt.event.InputEvent.CTRL_MASK));
    jMenuItemUserGuide.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/bulb.png"))); // NOI18N
    jMenuItemUserGuide.setText("User's Guide Online");
    jMenuItemUserGuide.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemUserGuideActionPerformed(evt);
        }
    });
    jMenuHelp.add(jMenuItemUserGuide);
    jMenuHelp.add(jSeparator1);

    jMenuItemAbout.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_A,
            java.awt.event.InputEvent.CTRL_MASK));
    jMenuItemAbout.setIcon(new javax.swing.ImageIcon(getClass().getResource("/jeplus/images/mail.png"))); // NOI18N
    jMenuItemAbout.setText("About");
    jMenuItemAbout.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jMenuItemAboutActionPerformed(evt);
        }
    });
    jMenuHelp.add(jMenuItemAbout);

    jMenuBarMain.add(jMenuHelp);

    setJMenuBar(jMenuBarMain);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
            javax.swing.GroupLayout.Alignment.TRAILING,
            layout.createSequentialGroup().addContainerGap()
                    .addComponent(jSplitPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 989, Short.MAX_VALUE)
                    .addContainerGap()));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup().addContainerGap().addComponent(jSplitPane1,
                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap()));

    pack();
}

From source file:app.RunApp.java

/**
 * Init components. Generated by NetBeans.
 *//*from w w  w  .  j av  a  2s .  c  o m*/
// <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  ava  2  s  . c om*/
 */
// @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();

}

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  a  v  a  2s . c om*/
        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.peterbochs.instrument.InstrumentPanel.java

private JPanel getJMemoryProfilingPanel() {
    if (jMemoryProfilingPanel == null) {
        jMemoryProfilingPanel = new JPanel();
        GroupLayout jMemoryProfilingPanelLayout = new GroupLayout((JComponent) jMemoryProfilingPanel);
        jMemoryProfilingPanel.setLayout(jMemoryProfilingPanelLayout);
        jMemoryProfilingPanelLayout.setVerticalGroup(jMemoryProfilingPanelLayout.createSequentialGroup()
                .addContainerGap()//w  w w.  java 2  s  .  co  m
                .addComponent(getJLabel7(), GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                        GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jMemoryProfilingPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                        .addComponent(getJProfilingFromComboBox(), GroupLayout.Alignment.BASELINE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE)
                        .addComponent(getJLabel8(), GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(getJLabel9(), GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(getJProfilingToComboBox(), GroupLayout.Alignment.BASELINE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE)
                        .addComponent(getJAddZoneButton(), GroupLayout.Alignment.BASELINE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(getJScrollPane2(), GroupLayout.PREFERRED_SIZE, 254, GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(jMemoryProfilingPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                        .addComponent(getJSortCheckBox(), GroupLayout.Alignment.BASELINE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE)
                        .addComponent(getJLabel17(), GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
                                GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(getJScrollPane6(), GroupLayout.PREFERRED_SIZE, 214, GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED).addComponent(getJDeleteZoneButton(),
                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE));
        jMemoryProfilingPanelLayout.linkSize(SwingConstants.VERTICAL,
                new Component[] { getJProfilingFromComboBox(), getJProfilingToComboBox() });
        jMemoryProfilingPanelLayout.setHorizontalGroup(jMemoryProfilingPanelLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jMemoryProfilingPanelLayout.createParallelGroup()
                        .addGroup(GroupLayout.Alignment.LEADING,
                                jMemoryProfilingPanelLayout.createSequentialGroup()
                                        .addComponent(getJLabel7(), GroupLayout.PREFERRED_SIZE, 608,
                                                GroupLayout.PREFERRED_SIZE)
                                        .addGap(0, 156, Short.MAX_VALUE))
                        .addGroup(GroupLayout.Alignment.LEADING, jMemoryProfilingPanelLayout
                                .createSequentialGroup()
                                .addGroup(jMemoryProfilingPanelLayout.createParallelGroup().addGroup(
                                        GroupLayout.Alignment.LEADING,
                                        jMemoryProfilingPanelLayout.createSequentialGroup()
                                                .addGroup(jMemoryProfilingPanelLayout.createParallelGroup()
                                                        .addComponent(getJLabel17(),
                                                                GroupLayout.Alignment.LEADING,
                                                                GroupLayout.PREFERRED_SIZE, 108,
                                                                GroupLayout.PREFERRED_SIZE)
                                                        .addGroup(GroupLayout.Alignment.LEADING,
                                                                jMemoryProfilingPanelLayout
                                                                        .createSequentialGroup()
                                                                        .addComponent(getJDeleteZoneButton(),
                                                                                GroupLayout.PREFERRED_SIZE, 62,
                                                                                GroupLayout.PREFERRED_SIZE)
                                                                        .addGap(46)))
                                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                                                .addComponent(getJSortCheckBox(), GroupLayout.PREFERRED_SIZE,
                                                        79, GroupLayout.PREFERRED_SIZE))
                                        .addGroup(GroupLayout.Alignment.LEADING, jMemoryProfilingPanelLayout
                                                .createSequentialGroup()
                                                .addComponent(getJLabel8(), GroupLayout.PREFERRED_SIZE, 39,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                                                .addComponent(getJProfilingFromComboBox(),
                                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
                                                        GroupLayout.PREFERRED_SIZE)
                                                .addGap(29)))
                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 74,
                                        GroupLayout.PREFERRED_SIZE)
                                .addComponent(getJLabel9(), GroupLayout.PREFERRED_SIZE, 23,
                                        GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(getJProfilingToComboBox(), GroupLayout.PREFERRED_SIZE,
                                        GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addComponent(getJAddZoneButton(), GroupLayout.PREFERRED_SIZE, 62,
                                        GroupLayout.PREFERRED_SIZE)
                                .addGap(0, 275, Short.MAX_VALUE))
                        .addComponent(getJScrollPane2(), GroupLayout.Alignment.LEADING, 0, 764, Short.MAX_VALUE)
                        .addComponent(getJScrollPane6(), GroupLayout.Alignment.LEADING, 0, 764,
                                Short.MAX_VALUE))
                .addContainerGap());
        jMemoryProfilingPanelLayout.linkSize(SwingConstants.HORIZONTAL,
                new Component[] { getJProfilingFromComboBox(), getJProfilingToComboBox() });
    }
    return jMemoryProfilingPanel;
}

From source file:de.tor.tribes.ui.windows.DSWorkbenchMainFrame.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 ava2  s.  co  m*/
 */
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
    java.awt.GridBagConstraints gridBagConstraints;

    jExportDialog = new javax.swing.JDialog();
    jScrollPane1 = new javax.swing.JScrollPane();
    jAttackExportTable = new javax.swing.JTable();
    jExportButton = new javax.swing.JButton();
    jCancelExportButton = new javax.swing.JButton();
    jScrollPane4 = new javax.swing.JScrollPane();
    jMarkerSetExportTable = new javax.swing.JTable();
    jScrollPane5 = new javax.swing.JScrollPane();
    jReportSetExportTable = new javax.swing.JTable();
    jScrollPane6 = new javax.swing.JScrollPane();
    jNoteSetExportTable = new javax.swing.JTable();
    jScrollPane7 = new javax.swing.JScrollPane();
    jTroopSetExportTable = new javax.swing.JTable();
    jPanel5 = new javax.swing.JPanel();
    jExportTags = new javax.swing.JCheckBox();
    jExportForms = new javax.swing.JCheckBox();
    jExportVillageInformation = new javax.swing.JCheckBox();
    jExportStdAttacks = new javax.swing.JCheckBox();
    jExportFarminfos = new javax.swing.JCheckBox();
    jExportSplits = new javax.swing.JCheckBox();
    jExportSOS = new javax.swing.JCheckBox();
    jAddROIDialog = new javax.swing.JDialog();
    jLabel7 = new javax.swing.JLabel();
    jROIRegion = new javax.swing.JTextField();
    jLabel8 = new javax.swing.JLabel();
    jROITextField = new javax.swing.JTextField();
    jLabel9 = new javax.swing.JLabel();
    jROIPosition = new javax.swing.JComboBox();
    jAddNewROIButton = new javax.swing.JButton();
    jButton5 = new javax.swing.JButton();
    jCustomPanel = new javax.swing.JPanel();
    jNavigationPanel = new javax.swing.JPanel();
    jMoveE = new javax.swing.JButton();
    jMoveNE = new javax.swing.JButton();
    jMoveN = new javax.swing.JButton();
    jMoveNW = new javax.swing.JButton();
    jMoveW = new javax.swing.JButton();
    jMoveSW = new javax.swing.JButton();
    jMoveS = new javax.swing.JButton();
    jMoveSE = new javax.swing.JButton();
    jCenterX = new javax.swing.JTextField();
    jLabel1 = new javax.swing.JLabel();
    jLabel2 = new javax.swing.JLabel();
    jCenterY = new javax.swing.JTextField();
    jRefreshButton = new javax.swing.JButton();
    jMoveE1 = new javax.swing.JButton();
    jZoomInButton = new javax.swing.JButton();
    jZoomOutButton = new javax.swing.JButton();
    jCenterCoordinateIngame = new javax.swing.JButton();
    jMapPanel = new javax.swing.JPanel();
    jShowMapPopup = new javax.swing.JCheckBox();
    jLabel5 = new javax.swing.JLabel();
    jLabel12 = new javax.swing.JLabel();
    jGraphicPacks = new javax.swing.JComboBox();
    jHighlightTribeVillages = new javax.swing.JCheckBox();
    jShowRuler = new javax.swing.JCheckBox();
    jHourField = new javax.swing.JTextField();
    jMinuteField = new javax.swing.JTextField();
    jLabel11 = new javax.swing.JLabel();
    jLabel13 = new javax.swing.JLabel();
    jShowMouseOverInfo = new javax.swing.JCheckBox();
    jIncludeSupport = new javax.swing.JCheckBox();
    jLabel3 = new javax.swing.JLabel();
    jDisplayWatchtower = new javax.swing.JCheckBox();
    jDisplayChurch = new javax.swing.JCheckBox();
    jROIPanel = new javax.swing.JPanel();
    jLabel6 = new javax.swing.JLabel();
    jROIBox = new javax.swing.JComboBox();
    jRemoveROIButton = new javax.swing.JButton();
    jAddROIButton = new javax.swing.JButton();
    jInformationPanel = new javax.swing.JPanel();
    jCurrentPlayerVillages = new javax.swing.JComboBox();
    jCurrentPlayer = new javax.swing.JLabel();
    jCenterIngameButton = new javax.swing.JButton();
    jOnlineLabel = new javax.swing.JLabel();
    jCurrentToolLabel = new javax.swing.JLabel();
    jButton1 = new javax.swing.JButton();
    jEnableClipboardWatchButton = new javax.swing.JButton();
    jXTipOfTheDay1 = new org.jdesktop.swingx.JXTipOfTheDay();
    jPanel4 = new javax.swing.JPanel();
    jStatusPanel = new javax.swing.JPanel();
    capabilityInfoPanel1 = new de.tor.tribes.ui.components.CapabilityInfoPanel();
    infoPanel = new org.jdesktop.swingx.JXCollapsiblePane();
    jXLabel1 = new org.jdesktop.swingx.JXLabel();
    jMapPanelHolder = new javax.swing.JPanel();
    jMinimapPanel = new javax.swing.JPanel();
    jSettingsScrollPane = new javax.swing.JScrollPane();

    jExportDialog.setTitle("Export");
    jExportDialog.setMinimumSize(new java.awt.Dimension(560, 500));
    jExportDialog.setPreferredSize(new java.awt.Dimension(560, 500));
    jExportDialog.setResizable(false);
    jExportDialog.getContentPane().setLayout(new java.awt.GridBagLayout());

    jScrollPane1.setMinimumSize(new java.awt.Dimension(260, 100));
    jScrollPane1.setPreferredSize(new java.awt.Dimension(260, 100));

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

    }, new String[] { "Angriffplan", "Exportieren" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Boolean.class };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }
    });
    jAttackExportTable.setOpaque(false);
    jScrollPane1.setViewportView(jAttackExportTable);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jScrollPane1, gridBagConstraints);

    jExportButton.setText("Exportieren");
    jExportButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            fireExportEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 2;
    gridBagConstraints.gridy = 3;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.LAST_LINE_END;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jExportButton, gridBagConstraints);

    jCancelExportButton.setText("Abbrechen");
    jCancelExportButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            fireExportEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 3;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.LAST_LINE_START;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jCancelExportButton, gridBagConstraints);

    jScrollPane4.setMinimumSize(new java.awt.Dimension(260, 100));
    jScrollPane4.setPreferredSize(new java.awt.Dimension(260, 100));

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

    }, new String[] { "Markierungsset", "Exportieren" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Boolean.class };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }
    });
    jMarkerSetExportTable.setOpaque(false);
    jScrollPane4.setViewportView(jMarkerSetExportTable);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.gridwidth = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jScrollPane4, gridBagConstraints);

    jScrollPane5.setMinimumSize(new java.awt.Dimension(260, 100));
    jScrollPane5.setPreferredSize(new java.awt.Dimension(260, 100));

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

    }, new String[] { "Berichtsset", "Exportieren" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Boolean.class };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }
    });
    jReportSetExportTable.setOpaque(false);
    jScrollPane5.setViewportView(jReportSetExportTable);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jScrollPane5, gridBagConstraints);

    jScrollPane6.setMinimumSize(new java.awt.Dimension(260, 100));
    jScrollPane6.setPreferredSize(new java.awt.Dimension(260, 100));

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

    }, new String[] { "Notizset", "Exportieren" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Boolean.class };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }
    });
    jNoteSetExportTable.setOpaque(false);
    jScrollPane6.setViewportView(jNoteSetExportTable);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.gridwidth = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jScrollPane6, gridBagConstraints);

    jScrollPane7.setMinimumSize(new java.awt.Dimension(260, 100));
    jScrollPane7.setPreferredSize(new java.awt.Dimension(260, 100));

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

    }, new String[] { "Truppeninformationen", "Exportieren" }) {
        Class[] types = new Class[] { java.lang.String.class, java.lang.Boolean.class };

        public Class getColumnClass(int columnIndex) {
            return types[columnIndex];
        }
    });
    jTroopSetExportTable.setOpaque(false);
    jScrollPane7.setViewportView(jTroopSetExportTable);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jScrollPane7, gridBagConstraints);

    jPanel5.setPreferredSize(new java.awt.Dimension(260, 100));
    jPanel5.setLayout(new java.awt.GridBagLayout());

    jExportTags.setText("Gruppen");
    jExportTags.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportTags.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportTags.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportTags, gridBagConstraints);

    jExportForms.setText("Zeichnungen");
    jExportForms.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportForms.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportForms.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportForms, gridBagConstraints);

    jExportVillageInformation.setText("Dorfinfos");
    jExportVillageInformation.setToolTipText("Enthlt Gebudeinfos (z.B. Kichrche, Wachturm)");
    jExportVillageInformation.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportVillageInformation.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportVillageInformation.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportVillageInformation, gridBagConstraints);

    jExportStdAttacks.setText("Standardangriffe");
    jExportStdAttacks.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportStdAttacks.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportStdAttacks.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 3;
    gridBagConstraints.gridwidth = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportStdAttacks, gridBagConstraints);

    jExportFarminfos.setText("Farminfos");
    jExportFarminfos.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportFarminfos.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportFarminfos.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportFarminfos, gridBagConstraints);

    jExportSplits.setText("Split Sets");
    jExportSplits.setToolTipText("Enthlt Gebudeinfos (z.B. Kichrche, Wachturm)");
    jExportSplits.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportSplits.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportSplits.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportSplits, gridBagConstraints);

    jExportSOS.setText("SOS Requests");
    jExportSOS.setMaximumSize(new java.awt.Dimension(2147483647, 2147483647));
    jExportSOS.setMinimumSize(new java.awt.Dimension(130, 24));
    jExportSOS.setPreferredSize(new java.awt.Dimension(130, 24));
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.PAGE_START;
    gridBagConstraints.weightx = 1.0;
    jPanel5.add(jExportSOS, gridBagConstraints);

    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 2;
    gridBagConstraints.gridwidth = 2;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 1.0;
    gridBagConstraints.weighty = 0.3;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jExportDialog.getContentPane().add(jPanel5, gridBagConstraints);

    jAddROIDialog.setTitle("ROI hinzufgen");

    jLabel7.setText("Zentrum");

    jROIRegion.setEnabled(false);
    jROIRegion.setMaximumSize(new java.awt.Dimension(120, 20));
    jROIRegion.setMinimumSize(new java.awt.Dimension(120, 20));
    jROIRegion.setPreferredSize(new java.awt.Dimension(120, 20));

    jLabel8.setText("Bezeichnung");

    jROITextField.setToolTipText("Eindeutige Bezeichnung zur Kennzeichnung der ROI");

    jLabel9.setText("Position");

    jROIPosition.setModel(new javax.swing.DefaultComboBoxModel(
            new String[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Ende" }));
    jROIPosition.setToolTipText("Position der ROI (Positionen 1-10 knnen per Shortcut gewhlt werden)");

    jAddNewROIButton.setText("Hinzufgen");
    jAddNewROIButton.setToolTipText("ROI hinzufgen");
    jAddNewROIButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireAddROIDoneEvent(evt);
        }
    });

    jButton5.setText("Abbrechen");
    jButton5.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireAddROIDoneEvent(evt);
        }
    });

    javax.swing.GroupLayout jAddROIDialogLayout = new javax.swing.GroupLayout(jAddROIDialog.getContentPane());
    jAddROIDialog.getContentPane().setLayout(jAddROIDialogLayout);
    jAddROIDialogLayout.setHorizontalGroup(jAddROIDialogLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jAddROIDialogLayout.createSequentialGroup().addContainerGap().addGroup(jAddROIDialogLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jAddROIDialogLayout.createSequentialGroup().addComponent(jButton5)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jAddNewROIButton))
                    .addGroup(jAddROIDialogLayout.createSequentialGroup().addGroup(jAddROIDialogLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jAddROIDialogLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jLabel7, javax.swing.GroupLayout.Alignment.TRAILING,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(jLabel9))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(jAddROIDialogLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jROIRegion, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jROITextField, javax.swing.GroupLayout.DEFAULT_SIZE, 227,
                                            Short.MAX_VALUE)
                                    .addComponent(jROIPosition, 0, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            Short.MAX_VALUE))))
                    .addContainerGap(16, Short.MAX_VALUE)));
    jAddROIDialogLayout.setVerticalGroup(jAddROIDialogLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jAddROIDialogLayout.createSequentialGroup().addContainerGap().addGroup(jAddROIDialogLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(jLabel7)
                    .addComponent(jROIRegion, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(
                            jAddROIDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel8)
                                    .addComponent(jROITextField, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(
                            jAddROIDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel9)
                                    .addComponent(jROIPosition, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(
                            jAddROIDialogLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jAddNewROIButton).addComponent(jButton5))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    javax.swing.GroupLayout jCustomPanelLayout = new javax.swing.GroupLayout(jCustomPanel);
    jCustomPanel.setLayout(jCustomPanelLayout);
    jCustomPanelLayout.setHorizontalGroup(jCustomPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 572, Short.MAX_VALUE));
    jCustomPanelLayout.setVerticalGroup(jCustomPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 501, Short.MAX_VALUE));

    jNavigationPanel.setBackground(new java.awt.Color(239, 235, 223));
    jNavigationPanel.setMinimumSize(new java.awt.Dimension(236, 95));

    jMoveE.setBackground(new java.awt.Color(239, 235, 223));
    jMoveE.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_e.png"))); // NOI18N
    jMoveE.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveE.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveE.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveE.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveNE.setBackground(new java.awt.Color(239, 235, 223));
    jMoveNE.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_ne.png"))); // NOI18N
    jMoveNE.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveNE.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveNE.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveNE.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveN.setBackground(new java.awt.Color(239, 235, 223));
    jMoveN.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_n.png"))); // NOI18N
    jMoveN.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveN.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveN.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveN.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveNW.setBackground(new java.awt.Color(239, 235, 223));
    jMoveNW.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_nw.png"))); // NOI18N
    jMoveNW.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveNW.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveNW.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveNW.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveW.setBackground(new java.awt.Color(239, 235, 223));
    jMoveW.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_w.png"))); // NOI18N
    jMoveW.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveW.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveW.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveW.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveSW.setBackground(new java.awt.Color(239, 235, 223));
    jMoveSW.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_sw.png"))); // NOI18N
    jMoveSW.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveSW.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveSW.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveSW.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveS.setBackground(new java.awt.Color(239, 235, 223));
    jMoveS.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_s.png"))); // NOI18N
    jMoveS.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveS.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveS.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveS.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jMoveSE.setBackground(new java.awt.Color(239, 235, 223));
    jMoveSE.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/map_se.png"))); // NOI18N
    jMoveSE.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveSE.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveSE.setPreferredSize(new java.awt.Dimension(21, 21));
    jMoveSE.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireMoveMapEvent(evt);
        }
    });

    jCenterX.setText("500");
    jCenterX.setMaximumSize(new java.awt.Dimension(40, 25));
    jCenterX.setMinimumSize(new java.awt.Dimension(40, 25));
    jCenterX.setPreferredSize(new java.awt.Dimension(40, 25));
    jCenterX.addFocusListener(new java.awt.event.FocusAdapter() {
        public void focusLost(java.awt.event.FocusEvent evt) {
            fireCheckForVillagePositionEvent(evt);
        }
    });

    jLabel1.setText("X");

    jLabel2.setText("Y");

    jCenterY.setText("500");
    jCenterY.setMaximumSize(new java.awt.Dimension(40, 25));
    jCenterY.setMinimumSize(new java.awt.Dimension(40, 25));
    jCenterY.setPreferredSize(new java.awt.Dimension(40, 25));

    jRefreshButton.setBackground(new java.awt.Color(239, 235, 223));
    jRefreshButton.setToolTipText("Position aktualisieren");
    jRefreshButton.setMaximumSize(new java.awt.Dimension(30, 30));
    jRefreshButton.setMinimumSize(new java.awt.Dimension(30, 30));
    jRefreshButton.setPreferredSize(new java.awt.Dimension(30, 30));
    jRefreshButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireReloadMapKoordinatesEvent(evt);
        }
    });

    jMoveE1.setBackground(new java.awt.Color(239, 235, 223));
    jMoveE1.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
    jMoveE1.setEnabled(false);
    jMoveE1.setMaximumSize(new java.awt.Dimension(21, 21));
    jMoveE1.setMinimumSize(new java.awt.Dimension(21, 21));
    jMoveE1.setPreferredSize(new java.awt.Dimension(21, 21));

    jZoomInButton.setBackground(new java.awt.Color(239, 235, 223));
    jZoomInButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/zoom_out.png"))); // NOI18N
    jZoomInButton.setMaximumSize(new java.awt.Dimension(30, 30));
    jZoomInButton.setMinimumSize(new java.awt.Dimension(30, 30));
    jZoomInButton.setPreferredSize(new java.awt.Dimension(30, 30));
    jZoomInButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireZoomEvent(evt);
        }
    });

    jZoomOutButton.setBackground(new java.awt.Color(239, 235, 223));
    jZoomOutButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/zoom_in.png"))); // NOI18N
    jZoomOutButton.setMaximumSize(new java.awt.Dimension(30, 30));
    jZoomOutButton.setMinimumSize(new java.awt.Dimension(30, 30));
    jZoomOutButton.setPreferredSize(new java.awt.Dimension(30, 30));
    jZoomOutButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireZoomEvent(evt);
        }
    });

    jCenterCoordinateIngame.setBackground(new java.awt.Color(239, 235, 223));
    jCenterCoordinateIngame.setToolTipText("Zentrieren (InGame)");
    jCenterCoordinateIngame.setMaximumSize(new java.awt.Dimension(30, 30));
    jCenterCoordinateIngame.setMinimumSize(new java.awt.Dimension(30, 30));
    jCenterCoordinateIngame.setPreferredSize(new java.awt.Dimension(30, 30));
    jCenterCoordinateIngame.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireCenterCurrentPosInGameEvent(evt);
        }
    });

    javax.swing.GroupLayout jNavigationPanelLayout = new javax.swing.GroupLayout(jNavigationPanel);
    jNavigationPanel.setLayout(jNavigationPanelLayout);
    jNavigationPanelLayout.setHorizontalGroup(jNavigationPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jNavigationPanelLayout.createSequentialGroup().addContainerGap()
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                                    .addComponent(jMoveNW,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                    .addComponent(jMoveN,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                                    .addComponent(jMoveW,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                    .addPreferredGap(
                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                    .addComponent(jMoveE1,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addComponent(jMoveNE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                    .addComponent(jMoveSW, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jMoveS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jMoveSE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jZoomInButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jZoomOutButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(15, 15, 15)
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    Short.MAX_VALUE)
                            .addComponent(jLabel1, javax.swing.GroupLayout.Alignment.TRAILING))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCenterX, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jCenterY, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jRefreshButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jCenterCoordinateIngame, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));
    jNavigationPanelLayout.setVerticalGroup(jNavigationPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jNavigationPanelLayout.createSequentialGroup().addContainerGap()
                    .addGroup(jNavigationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(jMoveNE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveN, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveNW, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addGap(4, 4, 4)
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(jMoveE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveW, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveE1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(jMoveSW, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jMoveSE, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(jCenterX, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addComponent(jLabel1))
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addGroup(jNavigationPanelLayout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                            .addComponent(jLabel2).addComponent(jCenterY,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(jNavigationPanelLayout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addGroup(jNavigationPanelLayout.createSequentialGroup()
                                            .addComponent(jRefreshButton,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(jCenterCoordinateIngame,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addGap(5, 5, 5))
                                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jNavigationPanelLayout
                                            .createSequentialGroup()
                                            .addComponent(jZoomInButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(
                                                    javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                            .addComponent(jZoomOutButton,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE,
                                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                                    javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    jMapPanel.setBackground(new java.awt.Color(239, 235, 223));
    jMapPanel.setMinimumSize(new java.awt.Dimension(193, 250));
    jMapPanel.setPreferredSize(new java.awt.Dimension(193, 250));
    jMapPanel.setLayout(new java.awt.GridBagLayout());

    jShowMapPopup.setText("Kartenpopup anzeigen");
    jShowMapPopup.setToolTipText("Zeigt Informationen ber das Dorf unter dem Mauszeiger an");
    jShowMapPopup.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jShowMapPopup.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireShowMapPopupChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 1;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jShowMapPopup, gridBagConstraints);

    jLabel5.setText("Laufzeitradius");
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 6;
    gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jLabel5, gridBagConstraints);

    jLabel12.setText("Grafikpaket");
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jLabel12, gridBagConstraints);

    jGraphicPacks.setMaximumSize(new java.awt.Dimension(28, 20));
    jGraphicPacks.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireGraphicPackChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 0;
    gridBagConstraints.gridwidth = 4;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jGraphicPacks, gridBagConstraints);

    jHighlightTribeVillages.setText("Spielerdrfer hervorheben");
    jHighlightTribeVillages.setToolTipText(
            "Markiert im Kartenausschnitt alle Drfer des Spielers, dessen Dorf unter dem Mauszeiger liegt");
    jHighlightTribeVillages.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jHighlightTribeVillages.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireHighlightTribeVillagesChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 4;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jHighlightTribeVillages, gridBagConstraints);

    jShowRuler.setText("Lineal anzeigen");
    jShowRuler.setToolTipText("Zeichnet ein Koordinatenlineal am Kartenrand");
    jShowRuler.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jShowRuler.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireShowRulerChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 5;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jShowRuler, gridBagConstraints);

    jHourField.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    jHourField.setText("1");
    jHourField.setMaximumSize(new java.awt.Dimension(24, 25));
    jHourField.setMinimumSize(new java.awt.Dimension(24, 25));
    jHourField.setPreferredSize(new java.awt.Dimension(24, 25));
    jHourField.addCaretListener(new javax.swing.event.CaretListener() {
        public void caretUpdate(javax.swing.event.CaretEvent evt) {
            fireRadarValueChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 1;
    gridBagConstraints.gridy = 6;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 0.5;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jHourField, gridBagConstraints);

    jMinuteField.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    jMinuteField.setText("0");
    jMinuteField.setMaximumSize(new java.awt.Dimension(24, 25));
    jMinuteField.setMinimumSize(new java.awt.Dimension(24, 25));
    jMinuteField.setPreferredSize(new java.awt.Dimension(24, 25));
    jMinuteField.addCaretListener(new javax.swing.event.CaretListener() {
        public void caretUpdate(javax.swing.event.CaretEvent evt) {
            fireRadarValueChangedEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 3;
    gridBagConstraints.gridy = 6;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.weightx = 0.5;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jMinuteField, gridBagConstraints);

    jLabel11.setText("h");
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 2;
    gridBagConstraints.gridy = 6;
    gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jLabel11, gridBagConstraints);

    jLabel13.setText("min");
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 4;
    gridBagConstraints.gridy = 6;
    gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jLabel13, gridBagConstraints);

    jShowMouseOverInfo.setText("MouseOver Infos anzeigen");
    jShowMouseOverInfo.setToolTipText("Zeigt Informationen ber das Dorf unter dem Mauszeiger an");
    jShowMouseOverInfo.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jShowMouseOverInfo.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireShowMouseOverInfoEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 2;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jShowMouseOverInfo, gridBagConstraints);

    jIncludeSupport.setText("Untersttzungen einbeziehen");
    jIncludeSupport.setToolTipText(
            " Untersttzungen bei den MouseOver Infos und bei der Anzeige der Truppendichte mit einbeziehen");
    jIncludeSupport.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireShowHideSupportsEvent(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 3;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jIncludeSupport, gridBagConstraints);
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 9;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
    gridBagConstraints.weighty = 1.0;
    jMapPanel.add(jLabel3, gridBagConstraints);

    jDisplayWatchtower.setText("Wachturmradien Zeichnen");
    jDisplayWatchtower.setToolTipText("Wachturmradien Zeichnen");
    jDisplayWatchtower.setActionCommand("");
    jDisplayWatchtower.setAutoscrolls(true);
    jDisplayWatchtower.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireDisplayWatchtower(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 8;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jDisplayWatchtower, gridBagConstraints);

    jDisplayChurch.setText("Kirchenradien Zeichnen");
    jDisplayChurch.setToolTipText("Kirchenradien Zeichnen");
    jDisplayChurch.setActionCommand("Kirchenradien zeichnen");
    jDisplayChurch.addChangeListener(new javax.swing.event.ChangeListener() {
        public void stateChanged(javax.swing.event.ChangeEvent evt) {
            fireDisplayChurch(evt);
        }
    });
    gridBagConstraints = new java.awt.GridBagConstraints();
    gridBagConstraints.gridx = 0;
    gridBagConstraints.gridy = 7;
    gridBagConstraints.gridwidth = 5;
    gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
    gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
    gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
    jMapPanel.add(jDisplayChurch, gridBagConstraints);

    jROIPanel.setBackground(new java.awt.Color(239, 235, 223));
    jROIPanel.setMaximumSize(new java.awt.Dimension(293, 70));
    jROIPanel.setMinimumSize(new java.awt.Dimension(293, 70));
    jROIPanel.setPreferredSize(new java.awt.Dimension(293, 70));

    jLabel6.setText("ROIs");
    jLabel6.setMaximumSize(new java.awt.Dimension(40, 25));
    jLabel6.setMinimumSize(new java.awt.Dimension(40, 25));
    jLabel6.setPreferredSize(new java.awt.Dimension(40, 25));

    jROIBox.setMinimumSize(new java.awt.Dimension(23, 15));
    jROIBox.setPreferredSize(new java.awt.Dimension(28, 25));
    jROIBox.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            fireROISelectedEvent(evt);
        }
    });

    jRemoveROIButton.setBackground(new java.awt.Color(239, 235, 223));
    jRemoveROIButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/remove.gif"))); // NOI18N
    jRemoveROIButton.setMaximumSize(new java.awt.Dimension(23, 23));
    jRemoveROIButton.setMinimumSize(new java.awt.Dimension(23, 23));
    jRemoveROIButton.setPreferredSize(new java.awt.Dimension(23, 23));
    jRemoveROIButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireChangeROIEvent(evt);
        }
    });

    jAddROIButton.setBackground(new java.awt.Color(239, 235, 223));
    jAddROIButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/add.gif"))); // NOI18N
    jAddROIButton.setMaximumSize(new java.awt.Dimension(23, 23));
    jAddROIButton.setMinimumSize(new java.awt.Dimension(23, 23));
    jAddROIButton.setPreferredSize(new java.awt.Dimension(23, 23));
    jAddROIButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireChangeROIEvent(evt);
        }
    });

    javax.swing.GroupLayout jROIPanelLayout = new javax.swing.GroupLayout(jROIPanel);
    jROIPanel.setLayout(jROIPanelLayout);
    jROIPanelLayout.setHorizontalGroup(jROIPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jROIPanelLayout.createSequentialGroup().addContainerGap().addGroup(jROIPanelLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jROIPanelLayout.createSequentialGroup()
                            .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jROIBox, 0, 223, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                            jROIPanelLayout.createSequentialGroup()
                                    .addComponent(jRemoveROIButton, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jAddROIButton, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap()));
    jROIPanelLayout.setVerticalGroup(jROIPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jROIPanelLayout.createSequentialGroup().addContainerGap().addGroup(jROIPanelLayout
                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jROIBox, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jROIPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jRemoveROIButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jAddROIButton, javax.swing.GroupLayout.PREFERRED_SIZE, 23,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));

    jInformationPanel.setBackground(new java.awt.Color(239, 235, 223));

    jCurrentPlayerVillages.setToolTipText("Aktives Dorf als Ausgangspunkt fr InGame Aktionen");
    jCurrentPlayerVillages.addPopupMenuListener(new javax.swing.event.PopupMenuListener() {
        public void popupMenuWillBecomeVisible(javax.swing.event.PopupMenuEvent evt) {
        }

        public void popupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent evt) {
            fireCurrentPlayerVillagePopupEvent(evt);
        }

        public void popupMenuCanceled(javax.swing.event.PopupMenuEvent evt) {
        }
    });

    jCurrentPlayer.setBorder(javax.swing.BorderFactory.createEtchedBorder());
    jCurrentPlayer.setMaximumSize(new java.awt.Dimension(155, 14));
    jCurrentPlayer.setMinimumSize(new java.awt.Dimension(155, 14));
    jCurrentPlayer.setPreferredSize(new java.awt.Dimension(155, 14));

    jCenterIngameButton.setBackground(new java.awt.Color(239, 235, 223));
    jCenterIngameButton.setToolTipText("Zentrieren (InGame)");
    jCenterIngameButton.setMaximumSize(new java.awt.Dimension(30, 30));
    jCenterIngameButton.setMinimumSize(new java.awt.Dimension(30, 30));
    jCenterIngameButton.setPreferredSize(new java.awt.Dimension(30, 30));
    jCenterIngameButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireCenterVillageIngameEvent(evt);
        }
    });

    jOnlineLabel.setToolTipText("Online/Offline Modus");
    jOnlineLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
    jOnlineLabel.setMaximumSize(new java.awt.Dimension(30, 30));
    jOnlineLabel.setMinimumSize(new java.awt.Dimension(30, 30));
    jOnlineLabel.setPreferredSize(new java.awt.Dimension(30, 30));

    jCurrentToolLabel.setToolTipText("Momentan gewhltes Werkzeug");
    jCurrentToolLabel.setAlignmentY(0.0F);
    jCurrentToolLabel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
    jCurrentToolLabel.setFocusable(false);
    jCurrentToolLabel.setIconTextGap(0);
    jCurrentToolLabel.setMaximumSize(new java.awt.Dimension(30, 30));
    jCurrentToolLabel.setMinimumSize(new java.awt.Dimension(30, 30));
    jCurrentToolLabel.setPreferredSize(new java.awt.Dimension(30, 30));
    jCurrentToolLabel.setRequestFocusEnabled(false);

    jButton1.setBackground(new java.awt.Color(239, 235, 223));
    jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/res/ui/camera.png"))); // NOI18N
    jButton1.setToolTipText("Foto der Hauptkarte erstellen");
    jButton1.setMaximumSize(new java.awt.Dimension(30, 30));
    jButton1.setMinimumSize(new java.awt.Dimension(30, 30));
    jButton1.setPreferredSize(new java.awt.Dimension(30, 30));
    jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireCreateMapShotEvent(evt);
        }
    });

    jEnableClipboardWatchButton.setBackground(new java.awt.Color(239, 235, 223));
    jEnableClipboardWatchButton
            .setToolTipText("Suche nach Informationen in der Zwischenablage an-/ausschalten");
    jEnableClipboardWatchButton.setMaximumSize(new java.awt.Dimension(30, 30));
    jEnableClipboardWatchButton.setMinimumSize(new java.awt.Dimension(30, 30));
    jEnableClipboardWatchButton.setPreferredSize(new java.awt.Dimension(30, 30));
    jEnableClipboardWatchButton.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            fireChangeClipboardWatchEvent(evt);
        }
    });

    javax.swing.GroupLayout jInformationPanelLayout = new javax.swing.GroupLayout(jInformationPanel);
    jInformationPanel.setLayout(jInformationPanelLayout);
    jInformationPanelLayout.setHorizontalGroup(jInformationPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jInformationPanelLayout
                    .createSequentialGroup().addContainerGap()
                    .addGroup(jInformationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jCurrentPlayer, javax.swing.GroupLayout.Alignment.LEADING,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, 227, Short.MAX_VALUE)
                            .addComponent(jCurrentPlayerVillages, javax.swing.GroupLayout.Alignment.LEADING, 0,
                                    227, Short.MAX_VALUE)
                            .addGroup(jInformationPanelLayout.createSequentialGroup()
                                    .addComponent(jCurrentToolLabel, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jOnlineLabel, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 63,
                                            Short.MAX_VALUE)
                                    .addComponent(jCenterIngameButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(4, 4, 4).addComponent(jEnableClipboardWatchButton,
                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap()));
    jInformationPanelLayout.setVerticalGroup(jInformationPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jInformationPanelLayout.createSequentialGroup().addContainerGap()
                    .addComponent(jCurrentPlayer, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jCurrentPlayerVillages, javax.swing.GroupLayout.PREFERRED_SIZE, 22,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jInformationPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCenterIngameButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jCurrentToolLabel, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jEnableClipboardWatchButton, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jOnlineLabel, javax.swing.GroupLayout.PREFERRED_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("DS Workbench 0.92b");
    setBackground(new java.awt.Color(225, 213, 190));
    addComponentListener(new java.awt.event.ComponentAdapter() {
        public void componentResized(java.awt.event.ComponentEvent evt) {
            fireFrameResizedEvent(evt);
        }
    });
    addWindowListener(new java.awt.event.WindowAdapter() {
        public void windowClosing(java.awt.event.WindowEvent evt) {
            fireDSWorkbenchClosingEvent(evt);
        }
    });

    jStatusPanel.setMaximumSize(new java.awt.Dimension(32, 30));
    jStatusPanel.setLayout(new java.awt.BorderLayout());

    capabilityInfoPanel1.setDeletable(false);
    capabilityInfoPanel1.setPastable(false);
    capabilityInfoPanel1.setSearchable(false);
    jStatusPanel.add(capabilityInfoPanel1, java.awt.BorderLayout.WEST);

    infoPanel.setAnimated(false);
    infoPanel.setCollapsed(true);
    infoPanel.setDirection(org.jdesktop.swingx.JXCollapsiblePane.Direction.LEFT);
    infoPanel.setInheritAlpha(false);
    infoPanel.setMaximumSize(new java.awt.Dimension(2147483647, 30));

    jXLabel1.setText("jXLabel1");
    jXLabel1.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseReleased(java.awt.event.MouseEvent evt) {
            fireHideNotificationEvent(evt);
        }
    });
    infoPanel.add(jXLabel1, java.awt.BorderLayout.CENTER);

    jStatusPanel.add(infoPanel, java.awt.BorderLayout.LINE_END);

    jMapPanelHolder.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(128, 64, 0), 2));
    jMapPanelHolder.setForeground(new java.awt.Color(240, 240, 240));
    jMapPanelHolder.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
    jMapPanelHolder.setDoubleBuffered(false);
    jMapPanelHolder.setLayout(new java.awt.BorderLayout());

    jMinimapPanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(128, 64, 0), 2));
    jMinimapPanel.setDoubleBuffered(false);
    jMinimapPanel.setLayout(new java.awt.BorderLayout());

    jSettingsScrollPane.setFocusTraversalPolicyProvider(true);

    javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
    jPanel4.setLayout(jPanel4Layout);
    jPanel4Layout.setHorizontalGroup(jPanel4Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jStatusPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 725,
                                    Short.MAX_VALUE)
                            .addComponent(jMapPanelHolder, javax.swing.GroupLayout.Alignment.TRAILING,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, 725, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jSettingsScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 320,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jMinimapPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 320,
                                    javax.swing.GroupLayout.PREFERRED_SIZE))));
    jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                    .addComponent(jMinimapPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 300,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(
                            jSettingsScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 406, Short.MAX_VALUE))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                    .addComponent(jMapPanelHolder, javax.swing.GroupLayout.DEFAULT_SIZE, 689, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(jStatusPanel, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)));

    getContentPane().add(jPanel4, java.awt.BorderLayout.CENTER);
}

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

void constructWindowContents() {
    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();
    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();

    fileChooser.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            fileChooserActionPerformed(evt);
        }/*from   w  w  w  .  ja  va2 s .com*/
    });

    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 XX"); // 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));

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

    javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
    jPanel6.setLayout(jPanel6Layout);
    jPanel6Layout.setHorizontalGroup(jPanel6Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGap(0, 1273, Short.MAX_VALUE));
    jPanel6Layout.setVerticalGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 565, 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, 1278, Short.MAX_VALUE));
    layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jTabbedPane2));

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

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

    pack();

}