GuiScriptChoice.java :  » Test-Coverage » salome-tmf » salomeTMF_plug » beanshell » Java Open Source

Java Open Source » Test Coverage » salome tmf 
salome tmf » salomeTMF_plug » beanshell » GuiScriptChoice.java
package salomeTMF_plug.beanshell;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;

import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;

import org.objectweb.salome_tmf.ihm.languages.Language;

public class GuiScriptChoice extends JDialog {

  private JPanel jContentPane = null;
  private JPanel jpChoice = null;
  private ButtonGroup jbgGroup = null;
  private JRadioButton jrbExistingTestPlan = null;
  private JRadioButton jrbNewTestPlan = null;
  private JPanel jpExistingTestPlan = null;
  private JPanel jpNewTestPlan = null;
  private JTextField jtfExistingTestPlanName = null;
  private JButton jbBrowse = null;
  private JTextField jtfNewTestPlanName = null;
  private JPanel jpButtons = null;
  private JButton jbCancel = null;
  private JButton jbOk = null;
  private JPanel jpNameTestPlan = null;
  private JPanel jpBrowse = null;
  private JLabel jlTitleNewTesPlan = null;

  
    public GuiScriptChoice(Frame parent)  {
      super(parent, true);
      initialize();
      this.pack();
      this.setVisible(true);
    }

    private void initialize() {
      this.setModal(true);
      this.setResizable(false);
      this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
      this.setTitle("Beanshell Script");
      this.setContentPane(getJContentPane());
      // window center
        this.setLocationRelativeTo(this.getParent());
    }  
    
    
    public File getSelectedFile() {
      File file = null;      
      if(jrbExistingTestPlan.isSelected()) {
        if(!jtfExistingTestPlanName.getText().trim().equals("")) {
          file = new File(jtfExistingTestPlanName.getText());  
        }      
      } else if (jrbNewTestPlan.isSelected()) {
        if(!jtfNewTestPlanName.getText().trim().equals("")) {
          String fileName = jtfNewTestPlanName.getText();
          if(!jtfNewTestPlanName.getText().toUpperCase().contains(".BSH")) {
            fileName = fileName + ".bsh";
          }
          file = new File(fileName);
        }
      }
      return (file);
    }
    
    private void selectedAction() {
      if(jrbExistingTestPlan.isSelected()) {
        jtfExistingTestPlanName.setEnabled(true);
        jbBrowse.setEnabled(true);
        jtfNewTestPlanName.setEnabled(false);
        jlTitleNewTesPlan.setEnabled(false);
      } else if (jrbNewTestPlan.isSelected()) {
        jtfExistingTestPlanName.setEnabled(false);
        jbBrowse.setEnabled(false);
        jtfNewTestPlanName.setEnabled(true);
        jlTitleNewTesPlan.setEnabled(true);
      }
    }
    
    private void displayFileChooser() {
      javax.swing.JFileChooser fileChooser = new javax.swing.JFileChooser();
      fileChooser.setApproveButtonText(Language.getInstance().getText("Valider"));
      fileChooser.addChoosableFileFilter(new BeanShellFileFilter("BeanShell",".bsh"));
      
      int returnVal = fileChooser.showOpenDialog(this);
      if (returnVal == javax.swing.JFileChooser.APPROVE_OPTION) {
        jtfExistingTestPlanName.setText(fileChooser.getSelectedFile().getPath());
      }
    }
    
    /**
     * This method initializes jContentPane
     * 
     * @return javax.swing.JPanel
     */
    private JPanel getJContentPane() {
      if (jContentPane == null) {
        jbgGroup = new ButtonGroup();
        jContentPane = new JPanel();
        jContentPane.setLayout(new BorderLayout());
        jContentPane.add(getJpChoice(), BorderLayout.CENTER);
        jContentPane.add(getJpButtons(), BorderLayout.SOUTH);
      }
      return jContentPane;
    }

    /**
     * This method initializes jpChoice  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpChoice() {
      if (jpChoice == null) {
        try {
          jpChoice = new JPanel();
          jpChoice.setLayout(new BoxLayout(getJpChoice(), BoxLayout.Y_AXIS));
          jpChoice.add(getJpExistingTestPlan(), null);
          jpChoice.add(getJpNewTestPlan(), null);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpChoice;
    }

    /**
     * This method initializes jrbExistingTestPlan  
     *   
     * @return javax.swing.JRadioButton  
     */
    private JRadioButton getJrbExistingTestPlan() {
      if (jrbExistingTestPlan == null) {
        try {
          jrbExistingTestPlan = new JRadioButton();
          jrbExistingTestPlan.setText(Language.getInstance().getText("Existing_script"));
          jrbExistingTestPlan.setSelected(true);
          jbgGroup.add(jrbExistingTestPlan);
          jrbExistingTestPlan.addChangeListener(new javax.swing.event.ChangeListener() {
                  public void stateChanged(javax.swing.event.ChangeEvent evt) {
                    selectedAction();
                  }
              });        
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jrbExistingTestPlan;
    }

    /**
     * This method initializes jrbNewTestPlan  
     *   
     * @return javax.swing.JRadioButton  
     */
    private JRadioButton getJrbNewTestPlan() {
      if (jrbNewTestPlan == null) {
        try {
          jrbNewTestPlan = new JRadioButton();
          jrbNewTestPlan.setText(Language.getInstance().getText("New_script"));
          jbgGroup.add(jrbNewTestPlan);
          jrbNewTestPlan.addChangeListener(new javax.swing.event.ChangeListener() {
                  public void stateChanged(javax.swing.event.ChangeEvent evt) {
                    selectedAction();
                  }
              });  
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jrbNewTestPlan;
    }

    /**
     * This method initializes jpExistingTestPlan  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpExistingTestPlan() {
      if (jpExistingTestPlan == null) {
        try {
          jpExistingTestPlan = new JPanel();
          jpExistingTestPlan.setLayout(new BorderLayout());
          jpExistingTestPlan.add(getJrbExistingTestPlan(), BorderLayout.NORTH);
          jpExistingTestPlan.add(getJpBrowse(), BorderLayout.CENTER);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpExistingTestPlan;
    }

    /**
     * This method initializes jpNewTestPlan  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpNewTestPlan() {
      if (jpNewTestPlan == null) {
        try {
          jpNewTestPlan = new JPanel();
          jpNewTestPlan.setLayout(new BorderLayout());
          jpNewTestPlan.add(getJrbNewTestPlan(), BorderLayout.NORTH);
          jpNewTestPlan.add(getJpNameTestPlan(), BorderLayout.CENTER);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpNewTestPlan;
    }

    /**
     * This method initializes jtfExistingTestPlanName  
     *   
     * @return javax.swing.JTextField  
     */
    private JTextField getJtfExistingTestPlanName() {
      if (jtfExistingTestPlanName == null) {
        try {
          jtfExistingTestPlanName = new JTextField();
          jtfExistingTestPlanName.setText("");
          jtfExistingTestPlanName.setPreferredSize(new Dimension(250, 19));
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jtfExistingTestPlanName;
    }

    /**
     * This method initializes jbBrowse  
     *   
     * @return javax.swing.JButton  
     */
    private JButton getJbBrowse() {
      if (jbBrowse == null) {
        try {
          jbBrowse = new JButton();
          jbBrowse.setText(Language.getInstance().getText("Browse"));
          jbBrowse.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
              displayFileChooser();
            }          
          });
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jbBrowse;
    }

    /**
     * This method initializes jtfNewTestPlanName  
     *   
     * @return javax.swing.JTextField  
     */
    private JTextField getJtfNewTestPlanName() {
      if (jtfNewTestPlanName == null) {
        try {
          jtfNewTestPlanName = new JTextField();
          jtfNewTestPlanName.setText("");
          jtfNewTestPlanName.setEnabled(false);
          jtfNewTestPlanName.setPreferredSize(new Dimension(170, 19));
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jtfNewTestPlanName;
    }

    /**
     * This method initializes jpButtons  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpButtons() {
      if (jpButtons == null) {
        try {
          jpButtons = new JPanel();
          jpButtons.setLayout(new FlowLayout());
          jpButtons.add(getJbOk(), null);
          jpButtons.add(getJbCancel(), null);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpButtons;
    }

    /**
     * This method initializes jbCancel  
     *   
     * @return javax.swing.JButton  
     */
    private JButton getJbCancel() {
      if (jbCancel == null) {
        try {
          jbCancel = new JButton();
          jbCancel.setText(Language.getInstance().getText("Annuler"));
          jbCancel.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
              jbCancelActionPerformed();
            }          
          });
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jbCancel;
    }

    private void jbCancelActionPerformed()
    {
      this.dispose();
    }
    
    /**
     * This method initializes jbOk  
     *   
     * @return javax.swing.JButton  
     */
    private JButton getJbOk() {
      if (jbOk == null) {
        try {
          jbOk = new JButton();
          jbOk.setText(Language.getInstance().getText("Valider"));        
          jbOk.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
              jbOkActionPerformed();
            }
          });
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jbOk;
    }
    
    private void jbOkActionPerformed() {
      if(jrbExistingTestPlan.isSelected()) {  
        if(jtfExistingTestPlanName.getText().trim().equals("")) {
          JOptionPane.showMessageDialog(this, "Please select a script.", "Warning", JOptionPane.INFORMATION_MESSAGE);
        } else {
          this.dispose();
        }
      } else if (jrbNewTestPlan.isSelected()) {
        if(jtfNewTestPlanName.getText().trim().equals("")) {
          JOptionPane.showMessageDialog(this, "Please fill the new script name.", "Warning", JOptionPane.INFORMATION_MESSAGE);              
        } else {
          this.dispose();
        }
      }
    }
    

    /**
     * This method initializes jpNameTestPlan  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpNameTestPlan() {
      if (jpNameTestPlan == null) {
        try {
          jpNameTestPlan = new JPanel();
          jpNameTestPlan.setLayout(new FlowLayout(FlowLayout.LEFT));  
          jpNameTestPlan.setBorder(BorderFactory.createTitledBorder(null, "", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));
          jlTitleNewTesPlan = new JLabel(Language.getInstance().getText("Nom_du_script_:_"));
          jpNameTestPlan.add(jlTitleNewTesPlan, null);
          jpNameTestPlan.add(getJtfNewTestPlanName(), null);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpNameTestPlan;
    }

    /**
     * This method initializes jpBrowse  
     *   
     * @return javax.swing.JPanel  
     */
    private JPanel getJpBrowse() {
      if (jpBrowse == null) {
        try {
          jpBrowse = new JPanel();
          jpBrowse.setLayout(new FlowLayout(FlowLayout.LEFT));
          jpBrowse.setBorder(BorderFactory.createTitledBorder(null, "", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));
          jpBrowse.add(getJtfExistingTestPlanName(), null);
          jpBrowse.add(getJbBrowse(), null);
        } catch (java.lang.Throwable e) {
          // TODO: Something
        }
      }
      return jpBrowse;
    }  

  

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.