mev-4.0.01/source/org/tigr/microarray/mev/InformationPanel.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2 Copyright @ 1999-2003, The Institute for Genomic Research (TIGR).
2 26 Feb 07 jari 3 All rights reserved.
2 26 Feb 07 jari 4 */
2 26 Feb 07 jari 5 /*
2 26 Feb 07 jari 6  * $RCSfile: InformationPanel.java,v $
2 26 Feb 07 jari 7  * $Revision: 1.5 $
2 26 Feb 07 jari 8  * $Date: 2006/05/02 20:52:48 $
2 26 Feb 07 jari 9  * $Author: eleanorahowe $
2 26 Feb 07 jari 10  * $State: Exp $
2 26 Feb 07 jari 11  */
2 26 Feb 07 jari 12 package org.tigr.microarray.mev;
2 26 Feb 07 jari 13
2 26 Feb 07 jari 14 import java.awt.Color;
2 26 Feb 07 jari 15 import java.awt.Font;
2 26 Feb 07 jari 16 import java.awt.Graphics;
2 26 Feb 07 jari 17 import java.awt.Graphics2D;
2 26 Feb 07 jari 18 import java.awt.RenderingHints;
2 26 Feb 07 jari 19 import java.awt.event.ActionEvent;
2 26 Feb 07 jari 20 import java.awt.event.ActionListener;
2 26 Feb 07 jari 21 import java.text.DecimalFormat;
2 26 Feb 07 jari 22
2 26 Feb 07 jari 23 import javax.swing.ImageIcon;
2 26 Feb 07 jari 24 import javax.swing.JPanel;
2 26 Feb 07 jari 25 import javax.swing.Timer;
2 26 Feb 07 jari 26
2 26 Feb 07 jari 27 public class InformationPanel extends JPanel {
2 26 Feb 07 jari 28     
2 26 Feb 07 jari 29     public Timer MyTimer;
2 26 Feb 07 jari 30     private ImageIcon DNAIcon;
2 26 Feb 07 jari 31     int InfoPosition=350;
2 26 Feb 07 jari 32     int MemoryPosition;
2 26 Feb 07 jari 33     private String Java3DTitle;
2 26 Feb 07 jari 34     private String Java3DVendor;
2 26 Feb 07 jari 35     private String Java3DVersion;
2 26 Feb 07 jari 36     
2 26 Feb 07 jari 37     public InformationPanel() {
2 26 Feb 07 jari 38   super();
2 26 Feb 07 jari 39   this.setBackground(new Color(0,71,153));
2 26 Feb 07 jari 40   MyTimer= new Timer(1000, new ActionListener() {
2 26 Feb 07 jari 41       public void actionPerformed(ActionEvent evt) {
2 26 Feb 07 jari 42     repaint(40,MemoryPosition,500,100);
2 26 Feb 07 jari 43       }
2 26 Feb 07 jari 44   });
2 26 Feb 07 jari 45   try {
2 26 Feb 07 jari 46       ClassLoader classLoader = getClass().getClassLoader();
2 26 Feb 07 jari 47       classLoader.loadClass("com.sun.j3d.utils.universe.SimpleUniverse");
2 26 Feb 07 jari 48       Package p = Package.getPackage("javax.media.j3d");
2 26 Feb 07 jari 49       if (p == null) {
2 26 Feb 07 jari 50     Java3DTitle="not installed";
2 26 Feb 07 jari 51     Java3DVendor="not available";
2 26 Feb 07 jari 52     Java3DVersion="not available";
2 26 Feb 07 jari 53       } else {
2 26 Feb 07 jari 54     Java3DTitle=p.getImplementationTitle();
2 26 Feb 07 jari 55     Java3DVendor=p.getImplementationVendor();
2 26 Feb 07 jari 56     Java3DVersion=p.getImplementationVersion();
2 26 Feb 07 jari 57       }
2 26 Feb 07 jari 58   } catch (Exception e) {
2 26 Feb 07 jari 59       Java3DTitle="not installed";
2 26 Feb 07 jari 60       Java3DVendor="not available";
2 26 Feb 07 jari 61       Java3DVersion="not available";
2 26 Feb 07 jari 62   }
2 26 Feb 07 jari 63   //      System.getProperties().list(System.out);
2 26 Feb 07 jari 64     }
2 26 Feb 07 jari 65     
2 26 Feb 07 jari 66     public void Start() {
2 26 Feb 07 jari 67   MyTimer.start();
2 26 Feb 07 jari 68     }
2 26 Feb 07 jari 69     
2 26 Feb 07 jari 70     public void Stop() {
2 26 Feb 07 jari 71   MyTimer.stop();
2 26 Feb 07 jari 72     }
2 26 Feb 07 jari 73     
2 26 Feb 07 jari 74     protected void paintComponent(Graphics g) {
2 26 Feb 07 jari 75   super.paintComponent(g);
2 26 Feb 07 jari 76   Graphics2D g2 = (Graphics2D) g;
2 26 Feb 07 jari 77   g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
2 26 Feb 07 jari 78   g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
2 26 Feb 07 jari 79   g2.setColor(Color.white);
2 26 Feb 07 jari 80   //BufferedImage DNA = new BufferedImage(DNAIcon.getIconWidth(),DNAIcon.getIconHeight(),BufferedImage.TYPE_INT_RGB);
2 26 Feb 07 jari 81   //Graphics2D DNAContext = DNA.createGraphics();
2 26 Feb 07 jari 82   //DNAContext.drawImage(DNAIcon.getImage(), 0, 0, null);
2 26 Feb 07 jari 83   //g2.drawImage(DNA,this.getWidth()-200,100,this);
2 26 Feb 07 jari 84   Font HeadlineFont = new Font("serif",Font.BOLD,54);
2 26 Feb 07 jari 85   g2.setFont(HeadlineFont);
2 26 Feb 07 jari 86   g2.drawString("MeV",40,70);
2 26 Feb 07 jari 87   Font InfoFont = new Font("monospaced",Font.BOLD,14);
2 26 Feb 07 jari 88   g2.setFont(InfoFont);
2 26 Feb 07 jari 89   g2.drawString("Version "+TMEV.VERSION,40,90);
2 26 Feb 07 jari 90   int CurrentPosition=150;
2 26 Feb 07 jari 91   g2.setColor(new Color(155,180,215));
2 26 Feb 07 jari 92   //g2.drawString("Version 1.0 Beta",40,CurrentPosition);
2 26 Feb 07 jari 93   //CurrentPosition+=20;
2 26 Feb 07 jari 94   //g2.drawString("Program subversion (Build):",40,CurrentPosition);
2 26 Feb 07 jari 95   //g2.drawString("12.15.2000",InfoPosition,CurrentPosition);
2 26 Feb 07 jari 96   //CurrentPosition+=20;
2 26 Feb 07 jari 97   g2.drawString("Java Runtime Environment version:",40,CurrentPosition);
2 26 Feb 07 jari 98   g2.drawString(System.getProperty("java.version"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 99   CurrentPosition+=20;
2 26 Feb 07 jari 100   g2.drawString("Java Runtime Environment vendor:",40,CurrentPosition);
2 26 Feb 07 jari 101   g2.drawString(System.getProperty("java.vendor"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 102   CurrentPosition+=20;
2 26 Feb 07 jari 103   g2.drawString("Java Virtual Machine name:",40,CurrentPosition);
2 26 Feb 07 jari 104   g2.drawString(System.getProperty("java.vm.name"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 105   CurrentPosition+=20;
2 26 Feb 07 jari 106   g2.drawString("Java Virtual Machine version:",40,CurrentPosition);
2 26 Feb 07 jari 107   g2.drawString(System.getProperty("java.vm.version"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 108   CurrentPosition+=20;
2 26 Feb 07 jari 109   g2.drawString("Java Virtual Machine vendor:",40,CurrentPosition);
2 26 Feb 07 jari 110   g2.drawString(System.getProperty("java.vm.vendor"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 111   
2 26 Feb 07 jari 112   CurrentPosition+=20;
2 26 Feb 07 jari 113   g2.drawString("Java 3D Runtime Environment:",40,CurrentPosition);
2 26 Feb 07 jari 114   g2.drawString(Java3DTitle,InfoPosition,CurrentPosition);
2 26 Feb 07 jari 115   CurrentPosition+=20;
2 26 Feb 07 jari 116   g2.drawString("Java 3D Runtime Environment vendor:",40,CurrentPosition);
2 26 Feb 07 jari 117   g2.drawString(Java3DVendor,InfoPosition,CurrentPosition);
2 26 Feb 07 jari 118   CurrentPosition+=20;
2 26 Feb 07 jari 119   g2.drawString("Java 3D Runtime Environment version:",40,CurrentPosition);
2 26 Feb 07 jari 120   g2.drawString(Java3DVersion,InfoPosition,CurrentPosition);
2 26 Feb 07 jari 121   
2 26 Feb 07 jari 122   CurrentPosition+=20;
2 26 Feb 07 jari 123   g2.drawString("Operating System name:",40,CurrentPosition);
2 26 Feb 07 jari 124   g2.drawString(System.getProperty("os.name"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 125   CurrentPosition+=20;
2 26 Feb 07 jari 126   g2.drawString("Operating System version:",40,CurrentPosition);
2 26 Feb 07 jari 127   g2.drawString(System.getProperty("os.version"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 128   CurrentPosition+=20;
2 26 Feb 07 jari 129   g2.drawString("Operating System architecture:",40,CurrentPosition);
2 26 Feb 07 jari 130   g2.drawString(System.getProperty("os.arch"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 131   CurrentPosition+=20;
2 26 Feb 07 jari 132   g2.drawString("User's account name:",40,CurrentPosition);
2 26 Feb 07 jari 133   g2.drawString(System.getProperty("user.name"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 134   CurrentPosition+=20;
2 26 Feb 07 jari 135   g2.drawString("User's home directory:",40,CurrentPosition);
2 26 Feb 07 jari 136   g2.drawString(System.getProperty("user.home"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 137   CurrentPosition+=20;
2 26 Feb 07 jari 138   g2.drawString("User's current working directory:",40,CurrentPosition);
2 26 Feb 07 jari 139   g2.drawString(System.getProperty("user.dir"),InfoPosition,CurrentPosition);
2 26 Feb 07 jari 140   DecimalFormat format = new DecimalFormat();
2 26 Feb 07 jari 141   format.setGroupingSize(3);
2 26 Feb 07 jari 142   MemoryPosition=CurrentPosition;
2 26 Feb 07 jari 143   CurrentPosition+=20;
2 26 Feb 07 jari 144   g2.drawString("Free System Memory:",40,CurrentPosition);
2 26 Feb 07 jari 145   long FreeMemory=Runtime.getRuntime().freeMemory();
2 26 Feb 07 jari 146   g2.drawString(format.format(FreeMemory)+" Bytes",InfoPosition,CurrentPosition);
2 26 Feb 07 jari 147   CurrentPosition+=20;
2 26 Feb 07 jari 148   g2.drawString("Total System Memory:",40,CurrentPosition);
2 26 Feb 07 jari 149   long TotalMemory=Runtime.getRuntime().totalMemory();
2 26 Feb 07 jari 150   g2.drawString(format.format(TotalMemory)+" Bytes",InfoPosition,CurrentPosition);
2 26 Feb 07 jari 151   CurrentPosition+=20;
2 26 Feb 07 jari 152   g2.setColor(new Color(55,110,175));
2 26 Feb 07 jari 153   g2.setColor(new Color(110,150,200));
2 26 Feb 07 jari 154   double OnePercent=TotalMemory/175.0;
2 26 Feb 07 jari 155   g2.setColor(new Color(110,150,200));
2 26 Feb 07 jari 156   for (int i=0; i<175; i++) {
2 26 Feb 07 jari 157       if ((long)Math.round(OnePercent*i)>=FreeMemory) {
2 26 Feb 07 jari 158     g2.setColor(new Color(55,110,175));
2 26 Feb 07 jari 159       }
2 26 Feb 07 jari 160       g2.fillRect(40+i*3,CurrentPosition,2,20);
2 26 Feb 07 jari 161   }
2 26 Feb 07 jari 162     }
2 26 Feb 07 jari 163     
2 26 Feb 07 jari 164     public String getJava3DRunTimeEnvironment(){
2 26 Feb 07 jari 165         return this.Java3DTitle;
2 26 Feb 07 jari 166     }
2 26 Feb 07 jari 167     
2 26 Feb 07 jari 168     public String getJava3DVendor(){
2 26 Feb 07 jari 169         return this.Java3DVendor;
2 26 Feb 07 jari 170     }
2 26 Feb 07 jari 171     
2 26 Feb 07 jari 172     public String getJava3DVersion(){
2 26 Feb 07 jari 173         return this.Java3DVersion;
2 26 Feb 07 jari 174     }    
2 26 Feb 07 jari 175 }