mev-4.0.01/source/org/tigr/microarray/mev/cluster/algorithm/impl/ease/TestParamPanel.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2  * TestParamPanel.java
2 26 Feb 07 jari 3  *
2 26 Feb 07 jari 4  * Created on August 29, 2003, 9:56 AM
2 26 Feb 07 jari 5  */
2 26 Feb 07 jari 6
2 26 Feb 07 jari 7 package org.tigr.microarray.mev.cluster.algorithm.impl.ease;
2 26 Feb 07 jari 8
2 26 Feb 07 jari 9 import java.awt.Color;
2 26 Feb 07 jari 10 import java.awt.Dimension;
2 26 Feb 07 jari 11 import java.awt.Font;
2 26 Feb 07 jari 12 import java.awt.GridBagConstraints;
2 26 Feb 07 jari 13 import java.awt.GridBagLayout;
2 26 Feb 07 jari 14 import java.awt.Insets;
2 26 Feb 07 jari 15 import java.io.File;
2 26 Feb 07 jari 16 import java.util.Vector;
2 26 Feb 07 jari 17
2 26 Feb 07 jari 18 import javax.swing.BorderFactory;
2 26 Feb 07 jari 19 import javax.swing.JButton;
2 26 Feb 07 jari 20 import javax.swing.JCheckBox;
2 26 Feb 07 jari 21 import javax.swing.JComboBox;
2 26 Feb 07 jari 22 import javax.swing.JLabel;
2 26 Feb 07 jari 23 import javax.swing.JList;
2 26 Feb 07 jari 24 import javax.swing.JPanel;
2 26 Feb 07 jari 25 import javax.swing.JScrollPane;
2 26 Feb 07 jari 26 import javax.swing.JTextField;
2 26 Feb 07 jari 27 import javax.swing.border.BevelBorder;
2 26 Feb 07 jari 28 import javax.swing.border.EtchedBorder;
2 26 Feb 07 jari 29 import javax.swing.border.TitledBorder;
2 26 Feb 07 jari 30
2 26 Feb 07 jari 31 import org.tigr.microarray.mev.TMEV;
2 26 Feb 07 jari 32
2 26 Feb 07 jari 33 /**
2 26 Feb 07 jari 34  *
2 26 Feb 07 jari 35  * @author  braisted
2 26 Feb 07 jari 36  */
2 26 Feb 07 jari 37 public class TestParamPanel extends JPanel {
2 26 Feb 07 jari 38     
2 26 Feb 07 jari 39         JTextField converterFileField;       
2 26 Feb 07 jari 40         JList fieldNamesList;        
2 26 Feb 07 jari 41         JList fileList;
2 26 Feb 07 jari 42         JButton browserButton;
2 26 Feb 07 jari 43         JTextField minClusterSizeField;
2 26 Feb 07 jari 44         String sep;       
2 26 Feb 07 jari 45         JComboBox fieldNamesBox;
2 26 Feb 07 jari 46                 
2 26 Feb 07 jari 47         JList annFileList;
2 26 Feb 07 jari 48         Vector annVector;
2 26 Feb 07 jari 49         JButton removeButton;
2 26 Feb 07 jari 50         
2 26 Feb 07 jari 51         public TestParamPanel(String [] fieldNames) {
2 26 Feb 07 jari 52             
2 26 Feb 07 jari 53             Font font = new Font("Dialog", Font.BOLD, 12);
2 26 Feb 07 jari 54             
2 26 Feb 07 jari 55             //Conversion File Panel
2 26 Feb 07 jari 56             JPanel convPanel = new JPanel(new GridBagLayout());
2 26 Feb 07 jari 57             convPanel.setBackground(Color.white);           
2 26 Feb 07 jari 58             convPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "Annotation Conversion File", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, font, Color.black));
2 26 Feb 07 jari 59             JCheckBox useAnnBox = new JCheckBox("use annotation converter", false);
2 26 Feb 07 jari 60             useAnnBox.setActionCommand("use-converter-command");
2 26 Feb 07 jari 61             useAnnBox.setBackground(Color.white);
2 26 Feb 07 jari 62             useAnnBox.setFocusPainted(false);
2 26 Feb 07 jari 63             
2 26 Feb 07 jari 64             converterFileField = new JTextField(30);
2 26 Feb 07 jari 65             converterFileField.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED, Color.lightGray, Color.gray)); 
2 26 Feb 07 jari 66             
2 26 Feb 07 jari 67             browserButton = new JButton("File Browser");
2 26 Feb 07 jari 68             browserButton.setActionCommand("converter-file-browser-command");
2 26 Feb 07 jari 69             browserButton.setFocusPainted(false);
2 26 Feb 07 jari 70             browserButton.setPreferredSize(new Dimension(150, 25));
2 26 Feb 07 jari 71             browserButton.setSize(150, 25);
2 26 Feb 07 jari 72            // browserButton.addActionListener(listener);
2 26 Feb 07 jari 73             
2 26 Feb 07 jari 74                         
2 26 Feb 07 jari 75             convPanel.add(useAnnBox, new GridBagConstraints(0,0,3,1,0.0,0.0,GridBagConstraints.WEST,GridBagConstraints.BOTH,new Insets(0,15,15,0),0,0));                        
2 26 Feb 07 jari 76             convPanel.add(new JLabel("File :"), new GridBagConstraints(0,1,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,15,15,0),0,0));
2 26 Feb 07 jari 77             convPanel.add(this.browserButton, new GridBagConstraints(0,2,3,1,0.0,0.0,GridBagConstraints.WEST,GridBagConstraints.VERTICAL,new Insets(0,15,0,0),0,0));
2 26 Feb 07 jari 78             convPanel.add(this.converterFileField, new GridBagConstraints(1,1,2,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,15,15,0),0,0));
2 26 Feb 07 jari 79  
2 26 Feb 07 jari 80             
2 26 Feb 07 jari 81             
2 26 Feb 07 jari 82             //Annotation file panel
2 26 Feb 07 jari 83              JPanel annPanel = new JPanel(new GridBagLayout());
2 26 Feb 07 jari 84             annPanel.setBackground(Color.white);           
2 26 Feb 07 jari 85             annPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "Gene Annotation / Gene Ontology Linking Files", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, font, Color.black));
2 26 Feb 07 jari 86                        
2 26 Feb 07 jari 87             annVector = new Vector();
2 26 Feb 07 jari 88             annFileList = new JList(annVector);
2 26 Feb 07 jari 89             annFileList.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
2 26 Feb 07 jari 90             JScrollPane annPane = new JScrollPane(annFileList);
2 26 Feb 07 jari 91             
2 26 Feb 07 jari 92             JButton  annButton = new JButton("Add Files");
2 26 Feb 07 jari 93             annButton.setActionCommand("ann-file-browser-command");
2 26 Feb 07 jari 94             annButton.setFocusPainted(false);
2 26 Feb 07 jari 95             annButton.setPreferredSize(new Dimension(150, 25));
2 26 Feb 07 jari 96             annButton.setSize(150, 25);
2 26 Feb 07 jari 97             
2 26 Feb 07 jari 98             removeButton = new JButton("Remove Selected");
2 26 Feb 07 jari 99             removeButton.setActionCommand("ann-file-browser-command");
2 26 Feb 07 jari 100             removeButton.setFocusPainted(false);
2 26 Feb 07 jari 101             removeButton.setPreferredSize(new Dimension(150, 25));
2 26 Feb 07 jari 102             removeButton.setSize(150, 25);
2 26 Feb 07 jari 103             removeButton.setEnabled(false);
2 26 Feb 07 jari 104
2 26 Feb 07 jari 105             JPanel fillPanel = new JPanel();
2 26 Feb 07 jari 106             fillPanel.setBackground(Color.white);
2 26 Feb 07 jari 107             annPanel.add(fillPanel, new GridBagConstraints(0,0,1,1,0.0,0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0,0,0,0), 0,0));                        
2 26 Feb 07 jari 108             annPanel.add(annButton, new GridBagConstraints(1,0,1,1,0.0,0.0, GridBagConstraints.EAST, GridBagConstraints.VERTICAL, new Insets(0,0,10,5), 0,0));            
2 26 Feb 07 jari 109             annPanel.add(removeButton, new GridBagConstraints(2,0,1,1,0.0,0.0, GridBagConstraints.CENTER, GridBagConstraints.VERTICAL, new Insets(0,5,10,0), 0,0));            
2 26 Feb 07 jari 110             annPanel.add(new JLabel("Files: "), new GridBagConstraints(0,1,1,1,0.0,0.0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0,0,0,0), 0,0));
2 26 Feb 07 jari 111             annPanel.add(annPane, new GridBagConstraints(1,1,2,1,0.0,0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0,0,0,0), 0,0));            
2 26 Feb 07 jari 112       
2 26 Feb 07 jari 113             sep = System.getProperty("file.separator");
2 26 Feb 07 jari 114             String tempPath;
2 26 Feb 07 jari 115             File easeFile = TMEV.getFile("data/ease");
2 26 Feb 07 jari 116             if(easeFile != null)
2 26 Feb 07 jari 117                 tempPath = easeFile.getPath();
2 26 Feb 07 jari 118             else
2 26 Feb 07 jari 119                 tempPath = System.getProperty("user.dir")+sep+"data"+sep+"ease";
2 26 Feb 07 jari 120             
2 26 Feb 07 jari 121             File file = new File(tempPath);
2 26 Feb 07 jari 122             Vector fileVector = new Vector();
2 26 Feb 07 jari 123             fileList = new JList(fileVector);
2 26 Feb 07 jari 124             if(file.exists()){
2 26 Feb 07 jari 125                 String [] listFileNames = file.list();             
2 26 Feb 07 jari 126                 for(int i = 0; i < listFileNames.length; i++){
2 26 Feb 07 jari 127                         File tempFile = new File(tempPath+sep+listFileNames[i]);
2 26 Feb 07 jari 128                         if(tempFile.isFile())
2 26 Feb 07 jari 129                             fileVector.add(listFileNames[i]);
2 26 Feb 07 jari 130                 }
2 26 Feb 07 jari 131                 if(fileVector.size() > 0){                    
2 26 Feb 07 jari 132                     converterFileField.setText(tempPath+sep+((String)fileVector.elementAt(0)));                                        
2 26 Feb 07 jari 133                 }
2 26 Feb 07 jari 134             }
2 26 Feb 07 jari 135             
2 26 Feb 07 jari 136             fieldNamesList = new JList(fieldNames);
2 26 Feb 07 jari 137             if(this.fileList.getModel().getSize() > 0)
2 26 Feb 07 jari 138               //  this.fileList.setSelectionIndex(0);
2 26 Feb 07 jari 139              //   if(this.fieldNamesList.getSize() > 0)
2 26 Feb 07 jari 140           //  this.fieldNamesList.setSelectedIndex(0);
2 26 Feb 07 jari 141
2 26 Feb 07 jari 142             this.fieldNamesBox = new JComboBox(fieldNames);
2 26 Feb 07 jari 143             fieldNamesBox.setEditable(false);
2 26 Feb 07 jari 144
2 26 Feb 07 jari 145             
2 26 Feb 07 jari 146             minClusterSizeField = new JTextField(5);
2 26 Feb 07 jari 147             minClusterSizeField.setText("5");
2 26 Feb 07 jari 148                         
2 26 Feb 07 jari 149             JPanel contentPanel = new JPanel(new GridBagLayout());
2 26 Feb 07 jari 150             //contentPanel.setBackground(Color.white);
2 26 Feb 07 jari 151             
2 26 Feb 07 jari 152          //   Content Panels
2 26 Feb 07 jari 153             //Ease File Panel
2 26 Feb 07 jari 154             JPanel easeFilePanel = new JPanel(new GridBagLayout());
2 26 Feb 07 jari 155             
2 26 Feb 07 jari 156            this.setLayout(new GridBagLayout());
2 26 Feb 07 jari 157             
2 26 Feb 07 jari 158             JPanel annotKeyPanel = new JPanel(new GridBagLayout());
2 26 Feb 07 jari 159             annotKeyPanel.setBackground(Color.white);
2 26 Feb 07 jari 160             annotKeyPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "MeV Annotation Key  (\"Unique ID\")", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, font, Color.black));
2 26 Feb 07 jari 161                    
2 26 Feb 07 jari 162             annotKeyPanel.add(new JLabel("Annotation Key:  "), new GridBagConstraints(0,0,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 163             annotKeyPanel.add(this.fieldNamesBox, new GridBagConstraints(1,0,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 164           
2 26 Feb 07 jari 165             
2 26 Feb 07 jari 166             //annotKeyPanel.add(new JLabel("Minimum Cluster Size"), new GridBagConstraints(0,1,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 167             //annotKeyPanel.add(this.minClusterSizeField, new GridBagConstraints(1,1,1,1,0.0,0.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));                        
2 26 Feb 07 jari 168
2 26 Feb 07 jari 169                         this.add(annotKeyPanel, new GridBagConstraints(0,0,1,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 170             this.add(convPanel, new GridBagConstraints(0,1,1,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 171             this.add(annPanel, new GridBagConstraints(0,2,1,1,1.0,1.0,GridBagConstraints.CENTER,GridBagConstraints.BOTH,new Insets(0,0,0,0),0,0));
2 26 Feb 07 jari 172
2 26 Feb 07 jari 173        }
2 26 Feb 07 jari 174     
2 26 Feb 07 jari 175         public static void main(String [] args){
2 26 Feb 07 jari 176             javax.swing.JFrame f = new javax.swing.JFrame();
2 26 Feb 07 jari 177             String [] s = { "THC" , "GB", "UniGene" };
2 26 Feb 07 jari 178             TestParamPanel p = new TestParamPanel(s);
2 26 Feb 07 jari 179             f.getContentPane().add(p);
2 26 Feb 07 jari 180             f.setSize(550, 500);
2 26 Feb 07 jari 181             f.setVisible(true);
2 26 Feb 07 jari 182             f.setDefaultCloseOperation(javax.swing.JFrame.DISPOSE_ON_CLOSE);
2 26 Feb 07 jari 183         }
2 26 Feb 07 jari 184 }