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

    charPercentagePanel = new javax.swing.JPanel();
    displayLabel = new javax.swing.JLabel();
    jScrollPane1 = new javax.swing.JScrollPane();
    charPercentageTable = new javax.swing.JTable();
    displaySpinner = new javax.swing.JSpinner();
    analyzeCharPercentageButton = new javax.swing.JButton();
    menuBar = new javax.swing.JMenuBar();
    fileMenu = new javax.swing.JMenu();
    loadFileMenuItem = new javax.swing.JMenuItem();
    extrasMenu = new javax.swing.JMenu();

    setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    setTitle(i18n.getString("StatisticalAnalysisFrame.title")); // NOI18N

    charPercentagePanel.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            i18n.getString("StatisticalAnalysisFrame.charPercentagePanel.border.title"))); // NOI18N

    displayLabel.setText(i18n.getString("StatisticalAnalysisFrame.displayLabel.text")); // NOI18N

    charPercentageTable.setModel(
        new javax.swing.table.DefaultTableModel(
            new Object[][] {
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null},
              {null, null, null}
            },
            new String[] {"Character", "Count", "Percentage"}) {
          boolean[] canEdit = new boolean[] {false, false, true};

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

    displaySpinner.setModel(new SpinnerNumberModel(10, 1, 1000, 1));
    displaySpinner.setToolTipText(
        i18n.getString("StatisticalAnalysisFrame.displaySpinner.toolTipText")); // NOI18N

    analyzeCharPercentageButton.setText(
        i18n.getString("StatisticalAnalysisFrame.analyzeCharPercentageButton.text")); // NOI18N
    analyzeCharPercentageButton.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            analyzeCharPercentageButtonMouseClicked(evt);
          }
        });

    javax.swing.GroupLayout charPercentagePanelLayout =
        new javax.swing.GroupLayout(charPercentagePanel);
    charPercentagePanel.setLayout(charPercentagePanelLayout);
    charPercentagePanelLayout.setHorizontalGroup(
        charPercentagePanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                charPercentagePanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        charPercentagePanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(
                                analyzeCharPercentageButton,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                206,
                                Short.MAX_VALUE)
                            .addComponent(
                                jScrollPane1,
                                javax.swing.GroupLayout.Alignment.LEADING,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                206,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.LEADING,
                                charPercentagePanelLayout
                                    .createSequentialGroup()
                                    .addComponent(displayLabel)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        displaySpinner,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        144,
                                        Short.MAX_VALUE)))
                    .addContainerGap()));
    charPercentagePanelLayout.setVerticalGroup(
        charPercentagePanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                charPercentagePanelLayout
                    .createSequentialGroup()
                    .addComponent(
                        jScrollPane1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        188,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        charPercentagePanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(displayLabel)
                            .addComponent(
                                displaySpinner,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(
                        javax.swing.LayoutStyle.ComponentPlacement.RELATED, 8, Short.MAX_VALUE)
                    .addComponent(analyzeCharPercentageButton)
                    .addContainerGap()));

    fileMenu.setText(i18n.getString("StatisticalAnalysisFrame.fileMenu.text")); // NOI18N

    loadFileMenuItem.setAccelerator(
        javax.swing.KeyStroke.getKeyStroke(
            java.awt.event.KeyEvent.VK_O, java.awt.event.InputEvent.CTRL_MASK));
    loadFileMenuItem.setText(
        i18n.getString("StatisticalAnalysisFrame.loadFileMenuItem.text")); // NOI18N
    loadFileMenuItem.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            loadFileMenuItemActionPerformed(evt);
          }
        });
    fileMenu.add(loadFileMenuItem);

    menuBar.add(fileMenu);

    extrasMenu.setText(i18n.getString("StatisticalAnalysisFrame.extrasMenu.text")); // NOI18N
    menuBar.add(extrasMenu);

    setJMenuBar(menuBar);

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

    pack();
  } // </editor-fold>//GEN-END:initComponents
Example #2
0
  /**
   * 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.
   */
  @SuppressWarnings("unchecked")
  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  private void initComponents() {

    rubric_panel = new javax.swing.JPanel();
    jScrollPane1 = new javax.swing.JScrollPane();
    rubric_table = new javax.swing.JTable();
    max_grade_field = new javax.swing.JTextField();
    grade_field = new javax.swing.JTextField();
    slash_label = new javax.swing.JLabel();
    total_label = new javax.swing.JLabel();
    id_label = new javax.swing.JLabel();
    student_id_label = new javax.swing.JLabel();
    name_label = new javax.swing.JLabel();
    student_name_label = new javax.swing.JLabel();
    submitted_panel = new javax.swing.JPanel();
    jScrollPane4 = new javax.swing.JScrollPane();
    submission_text_area = new javax.swing.JTextArea();
    solution_panel = new javax.swing.JPanel();
    jScrollPane5 = new javax.swing.JScrollPane();
    solution_text_area = new javax.swing.JTextArea();
    test_suite_button = new javax.swing.JButton();
    save_button = new javax.swing.JButton();
    next_button = new javax.swing.JButton();

    rubric_panel.setBorder(javax.swing.BorderFactory.createTitledBorder("Rubric"));
    rubric_panel.setMinimumSize(new java.awt.Dimension(400, 500));
    rubric_panel.setPreferredSize(new java.awt.Dimension(400, 500));

    rubric_table.setModel(
        new javax.swing.table.DefaultTableModel(
            new Object[][] {{null, null, null}},
            new String[] {"Description", "Grade", "Max Grade"}) {
          Class[] types =
              new Class[] {
                java.lang.String.class, java.lang.Integer.class, java.lang.Integer.class
              };
          boolean[] canEdit = new boolean[] {false, true, false};

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

          public boolean isCellEditable(int rowIndex, int columnIndex) {
            return canEdit[columnIndex];
          }
        });
    rubric_table.getTableHeader().setReorderingAllowed(false);
    jScrollPane1.setViewportView(rubric_table);
    if (rubric_table.getColumnModel().getColumnCount() > 0) {
      rubric_table.getColumnModel().getColumn(1).setResizable(false);
      rubric_table.getColumnModel().getColumn(1).setPreferredWidth(8);
      rubric_table.getColumnModel().getColumn(2).setResizable(false);
      rubric_table.getColumnModel().getColumn(2).setPreferredWidth(10);
    }

    max_grade_field.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N
    max_grade_field.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    max_grade_field.setText("Max");

    grade_field.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N
    grade_field.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    grade_field.setText("Grade");

    slash_label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    slash_label.setText("/");

    total_label.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N
    total_label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    total_label.setText("Total:");

    id_label.setText("...");

    student_id_label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    student_id_label.setText("Student ID:");

    name_label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    name_label.setText("Name:");

    student_name_label.setText("...");

    javax.swing.GroupLayout rubric_panelLayout = new javax.swing.GroupLayout(rubric_panel);
    rubric_panel.setLayout(rubric_panelLayout);
    rubric_panelLayout.setHorizontalGroup(
        rubric_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE)
            .addGroup(
                rubric_panelLayout
                    .createSequentialGroup()
                    .addComponent(
                        total_label,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        grade_field,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        101,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        slash_label,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        19,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        max_grade_field,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        101,
                        javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGroup(
                rubric_panelLayout
                    .createSequentialGroup()
                    .addComponent(
                        name_label,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        99,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        student_name_label,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        Short.MAX_VALUE))
            .addGroup(
                rubric_panelLayout
                    .createSequentialGroup()
                    .addComponent(
                        student_id_label,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        99,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(
                        id_label,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        Short.MAX_VALUE)));
    rubric_panelLayout.setVerticalGroup(
        rubric_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                rubric_panelLayout
                    .createSequentialGroup()
                    .addGroup(
                        rubric_panelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(
                                student_id_label,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(id_label))
                    .addGap(9, 9, 9)
                    .addGroup(
                        rubric_panelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(
                                name_label,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(student_name_label))
                    .addGap(5, 5, 5)
                    .addComponent(
                        jScrollPane1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        418,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        rubric_panelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                max_grade_field,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                47,
                                Short.MAX_VALUE)
                            .addComponent(
                                slash_label,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(grade_field, javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(
                                total_label,
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE))));

    submitted_panel.setBorder(javax.swing.BorderFactory.createTitledBorder("Submission"));
    submitted_panel.setMinimumSize(new java.awt.Dimension(400, 500));
    submitted_panel.setPreferredSize(new java.awt.Dimension(400, 500));

    submission_text_area.setColumns(20);
    submission_text_area.setRows(5);
    jScrollPane4.setViewportView(submission_text_area);

    javax.swing.GroupLayout submitted_panelLayout = new javax.swing.GroupLayout(submitted_panel);
    submitted_panel.setLayout(submitted_panelLayout);
    submitted_panelLayout.setHorizontalGroup(
        submitted_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE));
    submitted_panelLayout.setVerticalGroup(
        submitted_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 518, Short.MAX_VALUE));

    solution_panel.setBorder(javax.swing.BorderFactory.createTitledBorder("Solution"));
    solution_panel.setMinimumSize(new java.awt.Dimension(400, 500));
    solution_panel.setPreferredSize(new java.awt.Dimension(400, 500));

    solution_text_area.setEditable(false);
    solution_text_area.setColumns(20);
    solution_text_area.setRows(5);
    jScrollPane5.setViewportView(solution_text_area);

    javax.swing.GroupLayout solution_panelLayout = new javax.swing.GroupLayout(solution_panel);
    solution_panel.setLayout(solution_panelLayout);
    solution_panelLayout.setHorizontalGroup(
        solution_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                jScrollPane5, javax.swing.GroupLayout.DEFAULT_SIZE, 388, Short.MAX_VALUE));
    solution_panelLayout.setVerticalGroup(
        solution_panelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jScrollPane5));

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

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

    next_button.setText("Next");
    next_button.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            next_buttonActionPerformed(evt);
          }
        });

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
    this.setLayout(layout);
    layout.setHorizontalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                layout
                    .createSequentialGroup()
                    .addGroup(
                        layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(
                                layout
                                    .createSequentialGroup()
                                    .addContainerGap()
                                    .addComponent(
                                        save_button,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        145,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(67, 67, 67)
                                    .addComponent(
                                        next_button,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        176,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(
                                rubric_panel,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(
                        layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                layout
                                    .createSequentialGroup()
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        submitted_panel,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        solution_panel,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addGap(0, 0, Short.MAX_VALUE))
                            .addGroup(
                                layout
                                    .createSequentialGroup()
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE)
                                    .addComponent(
                                        test_suite_button,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        183,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addContainerGap()))));
    layout.setVerticalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                layout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(
                                submitted_panel,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                543,
                                Short.MAX_VALUE)
                            .addComponent(
                                solution_panel,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                543,
                                Short.MAX_VALUE)
                            .addComponent(
                                rubric_panel,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                543,
                                Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addGroup(
                        layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(
                                layout
                                    .createParallelGroup(
                                        javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(
                                        next_button,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        49,
                                        Short.MAX_VALUE)
                                    .addComponent(
                                        save_button,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE))
                            .addComponent(
                                test_suite_button,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                56,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap()));
  } // </editor-fold>//GEN-END:initComponents
 /** usage via static method, both normal and fully qualified */
 {
   int[] x = {};
   Arrays.sort(x);
   Object obj = javax.swing.BorderFactory.createEmptyBorder();
   File[] files = listRoots();
 }
  /**
   * 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.
   */
  @SuppressWarnings("unchecked")
  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jLabel2 = new javax.swing.JLabel();
    jLabel3 = new javax.swing.JLabel();
    jTextField1 = new javax.swing.JTextField();
    jTextField2 = new javax.swing.JTextField();
    jButton1 = new javax.swing.JButton();
    jButton2 = new javax.swing.JButton();
    jLabel1 = new javax.swing.JLabel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setMinimumSize(new java.awt.Dimension(536, 545));
    getContentPane().setLayout(null);

    jPanel1.setBackground(new java.awt.Color(204, 204, 204));
    jPanel1.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            null,
            "Login",
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            new java.awt.Font("Maiandra GD", 1, 14),
            new java.awt.Color(0, 0, 0))); // NOI18N

    jLabel2.setFont(new java.awt.Font("Verdana", 1, 13));
    jLabel2.setText("Enter Id");

    jLabel3.setFont(new java.awt.Font("Verdana", 1, 13));
    jLabel3.setText("Enter Name");

    jTextField1.setFont(new java.awt.Font("Verdana", 1, 12)); // NOI18N

    jTextField2.setFont(new java.awt.Font("Verdana", 1, 12)); // NOI18N

    jButton1.setIcon(
        new javax.swing.ImageIcon(getClass().getResource("/dcloud/img/verify.png"))); // NOI18N
    jButton1.setBorderPainted(false);
    jButton1.setContentAreaFilled(false);
    jButton1.setFocusable(false);
    jButton1.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton1ActionPerformed(evt);
          }
        });

    jButton2.setIcon(
        new javax.swing.ImageIcon(getClass().getResource("/dcloud/img/acc.png"))); // NOI18N
    jButton2.setBorderPainted(false);
    jButton2.setContentAreaFilled(false);
    jButton2.setFocusable(false);
    jButton2.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton2ActionPerformed(evt);
          }
        });

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                jPanel1Layout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                jLabel2,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                76,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel3)
                            .addComponent(
                                jButton1,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                110,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                jPanel1Layout
                                    .createSequentialGroup()
                                    .addGap(28, 28, 28)
                                    .addGroup(
                                        jPanel1Layout
                                            .createParallelGroup(
                                                javax.swing.GroupLayout.Alignment.LEADING, false)
                                            .addComponent(
                                                jTextField2,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                153,
                                                Short.MAX_VALUE)
                                            .addComponent(jTextField1)))
                            .addGroup(
                                jPanel1Layout
                                    .createSequentialGroup()
                                    .addGap(18, 18, 18)
                                    .addComponent(
                                        jButton2,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        143,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(23, Short.MAX_VALUE)));
    jPanel1Layout.setVerticalGroup(
        jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                jPanel1Layout
                    .createSequentialGroup()
                    .addGap(61, 61, 61)
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(
                                jLabel2,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                17,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(
                                jTextField1,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                28,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(51, 51, 51)
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel3)
                            .addComponent(
                                jTextField2,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                31,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(
                        javax.swing.LayoutStyle.ComponentPlacement.RELATED, 35, Short.MAX_VALUE)
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(
                                jButton1,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                41,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(
                                jButton2,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                53,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(37, 37, 37)));

    getContentPane().add(jPanel1);
    jPanel1.setBounds(110, 130, 340, 330);

    jLabel1.setIcon(
        new javax.swing.ImageIcon(getClass().getResource("/dcloud/img/login1.png"))); // NOI18N
    getContentPane().add(jLabel1);
    jLabel1.setBounds(0, 0, 540, 540);

    pack();
  } // </editor-fold>//GEN-END:initComponents
  public AboutPanel(Gui aFrame) {
    super(new BorderLayout());
    buttons = new JPanel();
    linkPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
    linkPanel.setAlignmentX(Component.RIGHT_ALIGNMENT);
    linkPanel.setOpaque(false);
    top = new JPanel();
    top.setBackground(GUIConstants.BACKGROUND_COLOR);
    center =
        new JPanel() {
          @Override
          public void paintComponent(Graphics g) {

            super.paintComponent(g);
            Graphics2D g2 = (Graphics2D) g;
            GradientPaint gp =
                new GradientPaint(
                    0, 0, GUIConstants.BACKGROUND_COLOR, 0, getHeight(), getBackground());
            Paint p = g2.getPaint();
            g2.setPaint(gp);
            g2.fillRect(0, 0, getWidth(), getHeight());
            g2.setPaint(p);
          }
        };
    center.setLayout(new BoxLayout(center, BoxLayout.PAGE_AXIS));
    frame = aFrame;
    textBottom = new JTextArea();
    textBottom.setOpaque(false);
    textBottom.setWrapStyleWord(true);
    textBottom.setEditable(false);
    textBottom.setLineWrap(true);
    textBottom.setFont(new Font("Sans/Serif", Font.PLAIN, 17));
    textBottom.setMargin(new Insets(10, 10, 0, 0));
    textBottom.setBackground(new Color(255, 255, 255, 0));
    textBottom.setBorder(javax.swing.BorderFactory.createEmptyBorder(5, 50, 50, 50));

    textTop = new JTextArea();
    textTop.setOpaque(false);
    textTop.setWrapStyleWord(true);
    textTop.setEditable(false);
    textTop.setLineWrap(true);
    textTop.setFont(new Font("Sans-Serif", Font.PLAIN, 17));
    textTop.setMargin(new Insets(10, 10, 0, 0));
    textTop.setBackground(new Color(255, 255, 255, 0));
    textTop.setBorder(javax.swing.BorderFactory.createEmptyBorder(50, 50, 5, 50));

    title = new JLabel();
    title.setFont(new Font("Sans-Serif", Font.PLAIN, 25));
    back = new JButton("Back to Main");
    back.setBackground(new Color(103, 180, 181));
    back.addActionListener(
        new ActionListener() {
          @Override
          public void actionPerformed(ActionEvent e) {
            if (e.getSource() == back) {
              frame.ToMatrixScreen();
            }
          }
        });
    link = new JButton();
    link.setText(
        "<HTML><FONT color=\"#000099\"><U>http://www.businessballs.com/timemanagement.htm</U></FONT>"
            + "</HTML>");
    // link.setHorizontalAlignment(SwingConstants.LEFT);
    link.setBorderPainted(false);
    link.setOpaque(false);
    link.setBackground(Color.WHITE);
    link.setToolTipText("http://www.businessballs.com/timemanagement.htm");
    link.addActionListener(new URLOpener());
    buttons.add(back);
    linkPanel.add(link);
    top.add(title);
    center.add(textTop);
    center.add(linkPanel);
    center.add(textBottom);

    try {
      readFile();
    } catch (FileNotFoundException ex) {
      Logger.getLogger(AboutPanel.class.getName()).log(Level.SEVERE, null, ex);
      System.out.println(ex.getMessage());
    } catch (IOException ex) {
      Logger.getLogger(HelpPanel.class.getName()).log(Level.SEVERE, null, ex);
      System.out.println(ex.getMessage());
    }

    this.add(top, BorderLayout.NORTH);
    this.add(center, BorderLayout.CENTER);
    this.add(buttons, BorderLayout.SOUTH);
  }
  /**
   * 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.
   */
  @SuppressWarnings("unchecked")
  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jButton1 = new javax.swing.JButton();
    jButton2 = new javax.swing.JButton();
    jButton4 = new javax.swing.JButton();
    jPanel2 = new javax.swing.JPanel();
    jComboBox1 = new javax.swing.JComboBox();
    jLabel1 = new javax.swing.JLabel();
    jButton3 = new javax.swing.JButton();
    jTextField1 = new javax.swing.JTextField();
    jLabel2 = new javax.swing.JLabel();
    jButton5 = new javax.swing.JButton();
    jLabel3 = new javax.swing.JLabel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));

    jButton1.setText("Select Course");
    jButton1.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton1ActionPerformed(evt);
          }
        });

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

    jButton4.setText("Log out");
    jButton4.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton4ActionPerformed(evt);
          }
        });

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                jPanel1Layout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        jPanel1Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(
                                jButton4,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(
                                jButton2,
                                javax.swing.GroupLayout.Alignment.LEADING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(
                                jButton1,
                                javax.swing.GroupLayout.Alignment.LEADING,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE))
                    .addContainerGap(20, Short.MAX_VALUE)));
    jPanel1Layout.setVerticalGroup(
        jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                jPanel1Layout
                    .createSequentialGroup()
                    .addGap(50, 50, 50)
                    .addComponent(
                        jButton1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        44,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jButton2,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        44,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jButton4,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        42,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(191, Short.MAX_VALUE)));

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

    jComboBox1.setModel(
        new javax.swing.DefaultComboBoxModel(
            new String[] {"Item 1", "Item 2", "Item 3", "Item 4"}));
    jComboBox1.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jComboBox1ActionPerformed(evt);
          }
        });

    jLabel1.setText("Select a course from dropdown of enrolled courses");

    jButton3.setText("Continue");
    jButton3.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton3ActionPerformed(evt);
          }
        });

    jLabel2.setText("Enter Token below to add a new course");

    jButton5.setText("Sign Up");
    jButton5.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton5ActionPerformed(evt);
          }
        });

    jLabel3.setText("Enrollment Message");

    javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
    jPanel2.setLayout(jPanel2Layout);
    jPanel2Layout.setHorizontalGroup(
        jPanel2Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                jPanel2Layout
                    .createSequentialGroup()
                    .addGap(0, 27, Short.MAX_VALUE)
                    .addGroup(
                        jPanel2Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                jComboBox1,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                325,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(
                                jLabel3,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                316,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(39, 39, 39))
            .addGroup(
                jPanel2Layout
                    .createSequentialGroup()
                    .addGroup(
                        jPanel2Layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                jPanel2Layout
                                    .createSequentialGroup()
                                    .addGap(130, 130, 130)
                                    .addComponent(
                                        jTextField1,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        127,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(
                                jPanel2Layout
                                    .createSequentialGroup()
                                    .addGap(144, 144, 144)
                                    .addComponent(
                                        jButton3,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        91,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(
                                jPanel2Layout
                                    .createSequentialGroup()
                                    .addGap(78, 78, 78)
                                    .addComponent(
                                        jLabel2,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        211,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(
                                jPanel2Layout
                                    .createSequentialGroup()
                                    .addGap(143, 143, 143)
                                    .addComponent(
                                        jButton5,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        94,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(
                                jPanel2Layout
                                    .createSequentialGroup()
                                    .addGap(60, 60, 60)
                                    .addComponent(jLabel1)))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
    jPanel2Layout.setVerticalGroup(
        jPanel2Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                jPanel2Layout
                    .createSequentialGroup()
                    .addGap(30, 30, 30)
                    .addComponent(
                        jLabel3,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        21,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jLabel1)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jComboBox1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        32,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jButton3,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        34,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jLabel2,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        22,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        jTextField1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        32,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(18, 18, 18)
                    .addComponent(
                        jButton5,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        36,
                        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()
                    .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()));
    layout.setVerticalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                layout
                    .createSequentialGroup()
                    .addGroup(
                        layout
                            .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()));

    pack();
  } // </editor-fold>//GEN-END:initComponents
  /**
   * 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.
   */
  @SuppressWarnings("unchecked")
  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  private void initComponents() {

    mainPanel = new javax.swing.JPanel();
    pnButton = new javax.swing.JPanel();
    btnVertex = new javax.swing.JButton();
    btnEdge = new javax.swing.JButton();
    btnStart = new javax.swing.JButton();
    btnEnd = new javax.swing.JButton();
    btnStep = new javax.swing.JButton();
    btnSolve = new javax.swing.JButton();
    btnClear = new javax.swing.JButton();
    /*
    pnGraph = new javax.swing.JPanel();
    */ this.pnGraph = new jGraphPanel();
    jTextStatus = new javax.swing.JTextField();
    jRandomCheck = new javax.swing.JCheckBox();
    /*
    pnHeap = new javax.swing.JPanel();
    */ this.pnHeap = new jHeapPanel();
    jTextHeap = new javax.swing.JLabel();
    pnSolution = new javax.swing.JPanel();
    jScrollPane1 = new javax.swing.JScrollPane();
    jSolution = new javax.swing.JTextArea();
    menuBar = new javax.swing.JMenuBar();
    javax.swing.JMenu fileMenu = new javax.swing.JMenu();
    openMenuItem = new javax.swing.JMenuItem();
    saveMenuItem = new javax.swing.JMenuItem();
    jSeparator = new javax.swing.JPopupMenu.Separator();
    javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem();
    javax.swing.JMenu helpMenu = new javax.swing.JMenu();
    javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem();
    jOpenFileChooser = new javax.swing.JFileChooser();
    jSaveFileChooser = new javax.swing.JFileChooser();

    mainPanel.setMinimumSize(new java.awt.Dimension(715, 600));
    mainPanel.setName("mainPanel"); // NOI18N
    mainPanel.setPreferredSize(new java.awt.Dimension(715, 600));

    pnButton.setMinimumSize(new java.awt.Dimension(90, 300));
    pnButton.setName("pnButton"); // NOI18N
    pnButton.setPreferredSize(new java.awt.Dimension(90, 300));

    org.jdesktop.application.ResourceMap resourceMap =
        org.jdesktop.application.Application.getInstance(dijkstra.DijkstraApp.class)
            .getContext()
            .getResourceMap(DijkstraView.class);
    btnVertex.setText(resourceMap.getString("btnVertex.text")); // NOI18N
    btnVertex.setToolTipText(resourceMap.getString("btnVertex.toolTipText")); // NOI18N
    btnVertex.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnVertex.setMinimumSize(new java.awt.Dimension(70, 30));
    btnVertex.setName("btnVertex"); // NOI18N
    btnVertex.setPreferredSize(new java.awt.Dimension(70, 30));
    btnVertex.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnVertexMouseClicked(evt);
          }
        });

    btnEdge.setText(resourceMap.getString("btnEdge.text")); // NOI18N
    btnEdge.setToolTipText(resourceMap.getString("btnEdge.toolTipText")); // NOI18N
    btnEdge.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnEdge.setMinimumSize(new java.awt.Dimension(70, 30));
    btnEdge.setName("btnEdge"); // NOI18N
    btnEdge.setPreferredSize(new java.awt.Dimension(70, 30));
    btnEdge.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnEdgeMouseClicked(evt);
          }
        });

    btnStart.setText(resourceMap.getString("btnStart.text")); // NOI18N
    btnStart.setToolTipText(resourceMap.getString("btnStart.toolTipText")); // NOI18N
    btnStart.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnStart.setMinimumSize(new java.awt.Dimension(70, 30));
    btnStart.setName("btnStart"); // NOI18N
    btnStart.setPreferredSize(new java.awt.Dimension(70, 30));
    btnStart.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnStartMouseClicked(evt);
          }
        });

    btnEnd.setText(resourceMap.getString("btnEnd.text")); // NOI18N
    btnEnd.setToolTipText(resourceMap.getString("btnEnd.toolTipText")); // NOI18N
    btnEnd.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnEnd.setMinimumSize(new java.awt.Dimension(70, 30));
    btnEnd.setName("btnEnd"); // NOI18N
    btnEnd.setPreferredSize(new java.awt.Dimension(70, 30));
    btnEnd.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnEndMouseClicked(evt);
          }
        });

    btnStep.setText(resourceMap.getString("btnStep.text")); // NOI18N
    btnStep.setToolTipText(resourceMap.getString("btnStep.toolTipText")); // NOI18N
    btnStep.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnStep.setMinimumSize(new java.awt.Dimension(70, 30));
    btnStep.setName("btnStep"); // NOI18N
    btnStep.setPreferredSize(new java.awt.Dimension(70, 30));
    btnStep.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnStepMouseClicked(evt);
          }
        });

    btnSolve.setText(resourceMap.getString("btnSolve.text")); // NOI18N
    btnSolve.setToolTipText(resourceMap.getString("btnSolve.toolTipText")); // NOI18N
    btnSolve.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnSolve.setMinimumSize(new java.awt.Dimension(70, 30));
    btnSolve.setName("btnSolve"); // NOI18N
    btnSolve.setPreferredSize(new java.awt.Dimension(70, 30));
    btnSolve.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnSolveMouseClicked(evt);
          }
        });

    btnClear.setText(resourceMap.getString("btnClear.text")); // NOI18N
    btnClear.setToolTipText(resourceMap.getString("btnClear.toolTipText")); // NOI18N
    btnClear.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    btnClear.setMaximumSize(new java.awt.Dimension(50, 50));
    btnClear.setMinimumSize(new java.awt.Dimension(70, 30));
    btnClear.setName("btnClear"); // NOI18N
    btnClear.setPreferredSize(new java.awt.Dimension(70, 30));
    btnClear.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseClicked(java.awt.event.MouseEvent evt) {
            btnClearMouseClicked(evt);
          }
        });

    javax.swing.GroupLayout pnButtonLayout = new javax.swing.GroupLayout(pnButton);
    pnButton.setLayout(pnButtonLayout);
    pnButtonLayout.setHorizontalGroup(
        pnButtonLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                pnButtonLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        pnButtonLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                pnButtonLayout
                                    .createParallelGroup(
                                        javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(
                                        btnVertex,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        70,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(
                                        btnEdge,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        70,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(
                                        btnStart,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        70,
                                        Short.MAX_VALUE)
                                    .addComponent(
                                        btnEnd,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        70,
                                        Short.MAX_VALUE)
                                    .addComponent(
                                        btnSolve,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        70,
                                        Short.MAX_VALUE)
                                    .addComponent(
                                        btnStep,
                                        javax.swing.GroupLayout.Alignment.CENTER,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        70,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(
                                btnClear,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                70,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

    pnButtonLayout.linkSize(
        javax.swing.SwingConstants.HORIZONTAL,
        new java.awt.Component[] {
          btnClear, btnEdge, btnEnd, btnSolve, btnStart, btnStep, btnVertex
        });

    pnButtonLayout.setVerticalGroup(
        pnButtonLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                pnButtonLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addComponent(
                        btnVertex, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        btnEdge, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        btnStart, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(btnEnd, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        btnSolve, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        btnStep, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(
                        btnClear, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE)
                    .addGap(13, 13, 13)));

    btnVertex
        .getAccessibleContext()
        .setAccessibleDescription(
            resourceMap.getString("btnNode.AccessibleContext.accessibleDescription")); // NOI18N

    pnGraph.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            null,
            resourceMap.getString("pnGraph.border.title"),
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            resourceMap.getFont("pnGraph.border.titleFont"))); // NOI18N
    pnGraph.setToolTipText(resourceMap.getString("pnGraph.toolTipText")); // NOI18N
    pnGraph.setFont(resourceMap.getFont("pnGraph.font")); // NOI18N
    pnGraph.setMinimumSize(new java.awt.Dimension(600, 300));
    pnGraph.setName("pnGraph"); // NOI18N
    pnGraph.setPreferredSize(new java.awt.Dimension(600, 300));
    pnGraph.addMouseListener(
        new java.awt.event.MouseAdapter() {
          public void mouseReleased(java.awt.event.MouseEvent evt) {
            pnGraphMouseReleased(evt);
          }
        });
    pnGraph.addMouseMotionListener(
        new java.awt.event.MouseMotionAdapter() {
          public void mouseMoved(java.awt.event.MouseEvent evt) {
            pnGraphMouseMoved(evt);
          }
        });

    jTextStatus.setEditable(false);
    jTextStatus.setFont(resourceMap.getFont("jTextStatus.font")); // NOI18N
    jTextStatus.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
    jTextStatus.setText(resourceMap.getString("jTextStatus.text")); // NOI18N
    jTextStatus.setAutoscrolls(false);
    jTextStatus.setBorder(null);
    jTextStatus.setName("jTextStatus"); // NOI18N

    jRandomCheck.setFont(resourceMap.getFont("jRandomCheck.font")); // NOI18N
    jRandomCheck.setSelected(true);
    jRandomCheck.setText(resourceMap.getString("jRandomCheck.text")); // NOI18N
    jRandomCheck.setToolTipText(resourceMap.getString("jRandomCheck.toolTipText")); // NOI18N
    jRandomCheck.setEnabled(false);
    jRandomCheck.setName("jRandomCheck"); // NOI18N

    javax.swing.GroupLayout pnGraphLayout = new javax.swing.GroupLayout(pnGraph);
    pnGraph.setLayout(pnGraphLayout);
    pnGraphLayout.setHorizontalGroup(
        pnGraphLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                pnGraphLayout
                    .createSequentialGroup()
                    .addContainerGap(327, Short.MAX_VALUE)
                    .addGroup(
                        pnGraphLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                pnGraphLayout
                                    .createSequentialGroup()
                                    .addComponent(jRandomCheck)
                                    .addContainerGap())
                            .addComponent(
                                jTextStatus,
                                javax.swing.GroupLayout.Alignment.TRAILING,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                261,
                                javax.swing.GroupLayout.PREFERRED_SIZE))));
    pnGraphLayout.setVerticalGroup(
        pnGraphLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                javax.swing.GroupLayout.Alignment.TRAILING,
                pnGraphLayout
                    .createSequentialGroup()
                    .addComponent(
                        jTextStatus,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(
                        javax.swing.LayoutStyle.ComponentPlacement.RELATED, 225, Short.MAX_VALUE)
                    .addComponent(jRandomCheck)
                    .addContainerGap()));

    pnHeap.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            null,
            resourceMap.getString("pnHeap.border.title"),
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            resourceMap.getFont("pnHeap.border.titleFont"))); // NOI18N
    pnHeap.setToolTipText(resourceMap.getString("pnHeap.toolTipText")); // NOI18N
    pnHeap.setFont(resourceMap.getFont("pnHeap.font")); // NOI18N
    pnHeap.setMinimumSize(new java.awt.Dimension(400, 250));
    pnHeap.setName("pnHeap"); // NOI18N
    pnHeap.setPreferredSize(new java.awt.Dimension(400, 250));

    jTextHeap.setFont(resourceMap.getFont("jTextHeap.font")); // NOI18N
    jTextHeap.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jTextHeap.setText(resourceMap.getString("jTextHeap.text")); // NOI18N
    jTextHeap.setName("jTextHeap"); // NOI18N

    javax.swing.GroupLayout pnHeapLayout = new javax.swing.GroupLayout(pnHeap);
    pnHeap.setLayout(pnHeapLayout);
    pnHeapLayout.setHorizontalGroup(
        pnHeapLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                pnHeapLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addComponent(
                        jTextHeap, javax.swing.GroupLayout.DEFAULT_SIZE, 368, Short.MAX_VALUE)
                    .addContainerGap()));
    pnHeapLayout.setVerticalGroup(
        pnHeapLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                pnHeapLayout
                    .createSequentialGroup()
                    .addComponent(
                        jTextHeap,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        16,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap(204, Short.MAX_VALUE)));

    jTextHeap
        .getAccessibleContext()
        .setAccessibleName(
            resourceMap.getString("jTextHeap.AccessibleContext.accessibleName")); // NOI18N

    pnSolution.setBorder(
        javax.swing.BorderFactory.createTitledBorder(
            null,
            resourceMap.getString("pnSolution.border.title"),
            javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION,
            javax.swing.border.TitledBorder.DEFAULT_POSITION,
            resourceMap.getFont("pnSolution.border.titleFont"))); // NOI18N
    pnSolution.setToolTipText(resourceMap.getString("pnSolution.toolTipText")); // NOI18N
    pnSolution.setMinimumSize(new java.awt.Dimension(290, 250));
    pnSolution.setName("pnSolution"); // NOI18N
    pnSolution.setPreferredSize(new java.awt.Dimension(290, 250));

    jScrollPane1.setName("jScrollPane1"); // NOI18N

    jSolution.setColumns(20);
    jSolution.setEditable(false);
    jSolution.setFont(resourceMap.getFont("jSolution.font")); // NOI18N
    jSolution.setLineWrap(true);
    jSolution.setRows(4);
    jSolution.setToolTipText(resourceMap.getString("jSolution.toolTipText")); // NOI18N
    jSolution.setWrapStyleWord(true);
    jSolution.setBorder(null);
    jSolution.setEnabled(false);
    jSolution.setFocusable(false);
    jSolution.setName("jSolution"); // NOI18N
    jScrollPane1.setViewportView(jSolution);

    javax.swing.GroupLayout pnSolutionLayout = new javax.swing.GroupLayout(pnSolution);
    pnSolution.setLayout(pnSolutionLayout);
    pnSolutionLayout.setHorizontalGroup(
        pnSolutionLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                jScrollPane1,
                javax.swing.GroupLayout.Alignment.TRAILING,
                javax.swing.GroupLayout.DEFAULT_SIZE,
                278,
                Short.MAX_VALUE));
    pnSolutionLayout.setVerticalGroup(
        pnSolutionLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(
                jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 220, Short.MAX_VALUE));

    javax.swing.GroupLayout mainPanelLayout = new javax.swing.GroupLayout(mainPanel);
    mainPanel.setLayout(mainPanelLayout);
    mainPanelLayout.setHorizontalGroup(
        mainPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                mainPanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        mainPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(
                                mainPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        pnButton,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        pnGraph,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE))
                            .addGroup(
                                mainPanelLayout
                                    .createSequentialGroup()
                                    .addComponent(
                                        pnHeap,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        Short.MAX_VALUE)
                                    .addPreferredGap(
                                        javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(
                                        pnSolution,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGap(9, 9, 9)));
    mainPanelLayout.setVerticalGroup(
        mainPanelLayout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                mainPanelLayout
                    .createSequentialGroup()
                    .addContainerGap()
                    .addGroup(
                        mainPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                pnButton,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE)
                            .addComponent(
                                pnGraph,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(
                        mainPanelLayout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                pnHeap,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(
                                pnSolution,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGap(15, 15, 15)));

    menuBar.setName("menuBar"); // NOI18N

    fileMenu.setText(resourceMap.getString("fileMenu.text")); // NOI18N
    fileMenu.setName("fileMenu"); // NOI18N

    openMenuItem.setAccelerator(
        javax.swing.KeyStroke.getKeyStroke(
            java.awt.event.KeyEvent.VK_O, java.awt.event.InputEvent.CTRL_MASK));
    openMenuItem.setText(resourceMap.getString("openMenuItem.text")); // NOI18N
    openMenuItem.setToolTipText(resourceMap.getString("openMenuItem.toolTipText")); // NOI18N
    openMenuItem.setActionCommand(resourceMap.getString("openMenuItem.actionCommand")); // NOI18N
    openMenuItem.setName("openMenuItem"); // NOI18N
    openMenuItem.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            openMenuItemActionPerformed(evt);
          }
        });
    fileMenu.add(openMenuItem);

    saveMenuItem.setAccelerator(
        javax.swing.KeyStroke.getKeyStroke(
            java.awt.event.KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK));
    saveMenuItem.setText(resourceMap.getString("saveMenuItem.text")); // NOI18N
    saveMenuItem.setToolTipText(resourceMap.getString("saveMenuItem.toolTipText")); // NOI18N
    saveMenuItem.setName("saveMenuItem"); // NOI18N
    saveMenuItem.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            saveMenuItemActionPerformed(evt);
          }
        });
    fileMenu.add(saveMenuItem);

    jSeparator.setName("jSeparator"); // NOI18N
    fileMenu.add(jSeparator);

    javax.swing.ActionMap actionMap =
        org.jdesktop.application.Application.getInstance(dijkstra.DijkstraApp.class)
            .getContext()
            .getActionMap(DijkstraView.class, this);
    exitMenuItem.setAction(actionMap.get("quit")); // NOI18N
    exitMenuItem.setName("exitMenuItem"); // NOI18N
    fileMenu.add(exitMenuItem);

    menuBar.add(fileMenu);

    helpMenu.setText(resourceMap.getString("helpMenu.text")); // NOI18N
    helpMenu.setName("helpMenu"); // NOI18N

    aboutMenuItem.setAction(actionMap.get("showAboutBox")); // NOI18N
    aboutMenuItem.setName("aboutMenuItem"); // NOI18N
    helpMenu.add(aboutMenuItem);

    menuBar.add(helpMenu);

    jOpenFileChooser.setFileFilter(new AppFilter());
    jOpenFileChooser.setName("jOpenFileChooser"); // NOI18N

    jSaveFileChooser.setDialogType(javax.swing.JFileChooser.SAVE_DIALOG);
    jSaveFileChooser.setFileFilter(new AppFilter());
    jSaveFileChooser.setName("jSaveFileChooser"); // NOI18N

    setComponent(mainPanel);
    setMenuBar(menuBar);
  } // </editor-fold>//GEN-END:initComponents
  /**
   * 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.
   */
  @SuppressWarnings("unchecked")
  // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
  private void initComponents() {

    jButton1 = new javax.swing.JButton();
    imagePanel1 = new ImagePanel();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Google Maps Example");

    jButton1.setText("Retrieve Map");
    jButton1.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton1ActionPerformed(evt);
          }
        });

    imagePanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));

    javax.swing.GroupLayout imagePanel1Layout = new javax.swing.GroupLayout(imagePanel1);
    imagePanel1.setLayout(imagePanel1Layout);
    imagePanel1Layout.setHorizontalGroup(
        imagePanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 397, Short.MAX_VALUE));
    imagePanel1Layout.setVerticalGroup(
        imagePanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 352, 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()
                    .addGap(28, 28, 28)
                    .addGroup(
                        layout
                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(
                                imagePanel1,
                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(
                                layout
                                    .createSequentialGroup()
                                    .addGap(47, 47, 47)
                                    .addComponent(
                                        jButton1,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        316,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addContainerGap(30, Short.MAX_VALUE)));
    layout.setVerticalGroup(
        layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(
                layout
                    .createSequentialGroup()
                    .addGap(25, 25, 25)
                    .addComponent(
                        imagePanel1,
                        javax.swing.GroupLayout.PREFERRED_SIZE,
                        javax.swing.GroupLayout.DEFAULT_SIZE,
                        javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jButton1)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

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