mev-4.0.01/source/org/tigr/microarray/mev/cluster/gui/impl/usc/USCConfirmDelta.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2  * Created on Apr 7, 2005
2 26 Feb 07 jari 3  */
2 26 Feb 07 jari 4 package org.tigr.microarray.mev.cluster.gui.impl.usc;
2 26 Feb 07 jari 5
2 26 Feb 07 jari 6 import java.awt.BorderLayout;
2 26 Feb 07 jari 7 import java.awt.Dimension;
2 26 Feb 07 jari 8 import java.awt.Frame;
2 26 Feb 07 jari 9 import java.awt.Toolkit;
2 26 Feb 07 jari 10 import java.awt.event.ActionEvent;
2 26 Feb 07 jari 11 import java.awt.event.ItemEvent;
2 26 Feb 07 jari 12 import java.awt.event.ItemListener;
2 26 Feb 07 jari 13 import java.awt.event.WindowEvent;
2 26 Feb 07 jari 14
2 26 Feb 07 jari 15 import javax.swing.BoxLayout;
2 26 Feb 07 jari 16 import javax.swing.JFrame;
2 26 Feb 07 jari 17 import javax.swing.JLabel;
2 26 Feb 07 jari 18 import javax.swing.JOptionPane;
2 26 Feb 07 jari 19 import javax.swing.JPanel;
2 26 Feb 07 jari 20 import javax.swing.JSpinner;
2 26 Feb 07 jari 21 import javax.swing.SpinnerNumberModel;
2 26 Feb 07 jari 22
2 26 Feb 07 jari 23 import org.tigr.microarray.mev.cluster.gui.impl.dialogs.AlgorithmDialog;
2 26 Feb 07 jari 24 import org.tigr.microarray.mev.cluster.gui.impl.dialogs.DialogListener;
2 26 Feb 07 jari 25 import org.tigr.microarray.mev.cluster.gui.impl.dialogs.dialogHelpUtil.HelpWindow;
2 26 Feb 07 jari 26
2 26 Feb 07 jari 27 /**
2 26 Feb 07 jari 28  * @author iVu
2 26 Feb 07 jari 29  * 
2 26 Feb 07 jari 30  * Dialog to allow users to change the value of Delta or Rho for testing
2 26 Feb 07 jari 31  */
2 26 Feb 07 jari 32 public class USCConfirmDelta extends AlgorithmDialog {
2 26 Feb 07 jari 33     private int result = 0;
2 26 Feb 07 jari 34     private double delta;
2 26 Feb 07 jari 35     private double rho;
2 26 Feb 07 jari 36     
2 26 Feb 07 jari 37     private JSpinner deltaSpinner;
2 26 Feb 07 jari 38     private JSpinner rhoSpinner;
2 26 Feb 07 jari 39     
2 26 Feb 07 jari 40
2 26 Feb 07 jari 41     /**
2 26 Feb 07 jari 42      * @param frame
2 26 Feb 07 jari 43      * @param title
2 26 Feb 07 jari 44      * @param modal
2 26 Feb 07 jari 45      */
2 26 Feb 07 jari 46     public USCConfirmDelta(Frame frame, double sDelta, double sRho) {
2 26 Feb 07 jari 47         super((JFrame)frame, "Confirm Delta & Rho", true);
2 26 Feb 07 jari 48         this.setSize(250,200);
2 26 Feb 07 jari 49         
2 26 Feb 07 jari 50         this.delta = sDelta;
2 26 Feb 07 jari 51         this.rho = sRho;
2 26 Feb 07 jari 52         
2 26 Feb 07 jari 53     Listener listener = new Listener();
2 26 Feb 07 jari 54     super.addWindowListener(listener);
2 26 Feb 07 jari 55     super.setActionListeners(listener);
2 26 Feb 07 jari 56     
2 26 Feb 07 jari 57     this.createGUI();
2 26 Feb 07 jari 58     }//end constructor
2 26 Feb 07 jari 59     
2 26 Feb 07 jari 60     
2 26 Feb 07 jari 61     private void createGUI() {
2 26 Feb 07 jari 62         JPanel mainPanel = new JPanel();
2 26 Feb 07 jari 63         
2 26 Feb 07 jari 64         JPanel labelPanel = new JPanel();
2 26 Feb 07 jari 65         JLabel instructionLabel = new JLabel("Change Delta and Rho if you wish");
2 26 Feb 07 jari 66         labelPanel.add(instructionLabel);
2 26 Feb 07 jari 67         
2 26 Feb 07 jari 68         JLabel deltaLabel = new JLabel("Delta:");
2 26 Feb 07 jari 69         JLabel rhoLabel = new JLabel("Rho:");
2 26 Feb 07 jari 70         
2 26 Feb 07 jari 71         JPanel spinnerLabelPanel = new JPanel();
2 26 Feb 07 jari 72         BoxLayout spinnerLabelBoxLayout = new BoxLayout( spinnerLabelPanel, BoxLayout.Y_AXIS);
2 26 Feb 07 jari 73         spinnerLabelPanel.setLayout(spinnerLabelBoxLayout);
2 26 Feb 07 jari 74         
2 26 Feb 07 jari 75         spinnerLabelPanel.add(deltaLabel);
2 26 Feb 07 jari 76         spinnerLabelPanel.add(rhoLabel);
2 26 Feb 07 jari 77         
2 26 Feb 07 jari 78         JPanel spinnerPanel = new JPanel();
2 26 Feb 07 jari 79         BoxLayout spinnerBoxLayout = new BoxLayout( spinnerPanel, BoxLayout.Y_AXIS);
2 26 Feb 07 jari 80         spinnerPanel.setLayout(spinnerBoxLayout);
2 26 Feb 07 jari 81         
2 26 Feb 07 jari 82     SpinnerNumberModel deltaModel = new SpinnerNumberModel( delta, 0.0, 50, 0.1 );
2 26 Feb 07 jari 83     SpinnerNumberModel rhoModel = new SpinnerNumberModel( rho, 0.0, 1.0, 0.1 );
2 26 Feb 07 jari 84         
2 26 Feb 07 jari 85         this.deltaSpinner = new JSpinner(deltaModel);
2 26 Feb 07 jari 86         this.rhoSpinner = new JSpinner(rhoModel);
2 26 Feb 07 jari 87         
2 26 Feb 07 jari 88         spinnerPanel.add(deltaSpinner);
2 26 Feb 07 jari 89         spinnerPanel.add(rhoSpinner);
2 26 Feb 07 jari 90         
2 26 Feb 07 jari 91         JPanel centerPanel = new JPanel();
2 26 Feb 07 jari 92         centerPanel.add(spinnerLabelPanel);
2 26 Feb 07 jari 93         centerPanel.add(spinnerPanel);
2 26 Feb 07 jari 94         
2 26 Feb 07 jari 95         mainPanel.add(labelPanel, BorderLayout.NORTH);
2 26 Feb 07 jari 96         mainPanel.add(centerPanel, BorderLayout.CENTER);
2 26 Feb 07 jari 97         
2 26 Feb 07 jari 98         this.addContent(mainPanel);
2 26 Feb 07 jari 99     }//createGUI()
2 26 Feb 07 jari 100     
2 26 Feb 07 jari 101     
2 26 Feb 07 jari 102     public double getDelta() {
2 26 Feb 07 jari 103     SpinnerNumberModel model = ( SpinnerNumberModel ) this.deltaSpinner.getModel();
2 26 Feb 07 jari 104     return model.getNumber().doubleValue();
2 26 Feb 07 jari 105     }
2 26 Feb 07 jari 106     public double getRho() {
2 26 Feb 07 jari 107     SpinnerNumberModel model = ( SpinnerNumberModel ) this.rhoSpinner.getModel();
2 26 Feb 07 jari 108     return model.getNumber().doubleValue();
2 26 Feb 07 jari 109     }
2 26 Feb 07 jari 110     
2 26 Feb 07 jari 111     
2 26 Feb 07 jari 112     public static void main( String[] Args ) {
2 26 Feb 07 jari 113         USCConfirmDelta ucd = new USCConfirmDelta( new JFrame(), .8, .8 );
2 26 Feb 07 jari 114         int iTest = ucd.showModal();
2 26 Feb 07 jari 115         if( iTest == JOptionPane.OK_OPTION ) {
2 26 Feb 07 jari 116             System.out.println("OK_OPTION" + "\tdelta=" + ucd.getDelta());
2 26 Feb 07 jari 117         } else {
2 26 Feb 07 jari 118             System.out.println("Not OK_OPTION");
2 26 Feb 07 jari 119         }
2 26 Feb 07 jari 120     }
2 26 Feb 07 jari 121   
2 26 Feb 07 jari 122   
2 26 Feb 07 jari 123   /**
2 26 Feb 07 jari 124    * Displays a dialog box with a message
2 26 Feb 07 jari 125    * @param message
2 26 Feb 07 jari 126    */
2 26 Feb 07 jari 127   public void error( String message ) {
2 26 Feb 07 jari 128     JOptionPane.showMessageDialog( this, message, "Input Error", JOptionPane.ERROR_MESSAGE );
2 26 Feb 07 jari 129   }//end error()
2 26 Feb 07 jari 130   
2 26 Feb 07 jari 131     
2 26 Feb 07 jari 132   /**
2 26 Feb 07 jari 133    * Shows this AlgorithmDialog
2 26 Feb 07 jari 134    * @return  
2 26 Feb 07 jari 135    */
2 26 Feb 07 jari 136   public int showModal() {
2 26 Feb 07 jari 137     Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
2 26 Feb 07 jari 138     setLocation((screenSize.width - getSize().width)/2, (screenSize.height - getSize().height)/2);
2 26 Feb 07 jari 139     show();
2 26 Feb 07 jari 140     return result;
2 26 Feb 07 jari 141   }//end showModal()
2 26 Feb 07 jari 142
2 26 Feb 07 jari 143
2 26 Feb 07 jari 144 /**
2 26 Feb 07 jari 145  * The class to listen to the dialog and check boxes items events.
2 26 Feb 07 jari 146  */
2 26 Feb 07 jari 147 private class Listener extends DialogListener implements ItemListener {
2 26 Feb 07 jari 148     
2 26 Feb 07 jari 149   public void actionPerformed(ActionEvent e) {
2 26 Feb 07 jari 150     String command = e.getActionCommand();
2 26 Feb 07 jari 151     if (command.equals("ok-command")) {
2 26 Feb 07 jari 152       result = JOptionPane.OK_OPTION;
2 26 Feb 07 jari 153       dispose();
2 26 Feb 07 jari 154     } else if (command.equals("cancel-command")) {
2 26 Feb 07 jari 155       result = JOptionPane.CANCEL_OPTION;
2 26 Feb 07 jari 156       dispose();
2 26 Feb 07 jari 157     } else if (command.equals("reset-command")) {
2 26 Feb 07 jari 158       //resetControls();
2 26 Feb 07 jari 159       result = JOptionPane.CANCEL_OPTION;
2 26 Feb 07 jari 160       return;
2 26 Feb 07 jari 161     } else if (command.equals("info-command")) {
2 26 Feb 07 jari 162       HelpWindow hw = new HelpWindow(USCConfirmDelta.this, "USC Confirm Dialog");
2 26 Feb 07 jari 163       result = JOptionPane.CANCEL_OPTION;
2 26 Feb 07 jari 164       if(hw.getWindowContent()){
2 26 Feb 07 jari 165         hw.setSize(450,600);
2 26 Feb 07 jari 166         hw.setLocation();
2 26 Feb 07 jari 167         hw.show();
2 26 Feb 07 jari 168         return;
2 26 Feb 07 jari 169       } else {
2 26 Feb 07 jari 170         hw.setVisible(false);
2 26 Feb 07 jari 171         hw.dispose();
2 26 Feb 07 jari 172         return;
2 26 Feb 07 jari 173       }
2 26 Feb 07 jari 174     }
2 26 Feb 07 jari 175     //dispose();
2 26 Feb 07 jari 176   }//end actionPerformed()
2 26 Feb 07 jari 177     
2 26 Feb 07 jari 178   public void itemStateChanged(ItemEvent e) {
2 26 Feb 07 jari 179     //okButton.setEnabled(genes_box.isSelected() || cluster_box.isSelected());
2 26 Feb 07 jari 180   }
2 26 Feb 07 jari 181     
2 26 Feb 07 jari 182   public void windowClosing(WindowEvent e) {
2 26 Feb 07 jari 183     result = JOptionPane.CLOSED_OPTION;
2 26 Feb 07 jari 184     dispose();
2 26 Feb 07 jari 185   }
2 26 Feb 07 jari 186 }//end internal Listener class
2 26 Feb 07 jari 187 }//end class