source: trunk/greenstone3-extensions/vishnu/src/vishnu/testvis/treemap/table/BarRenderer.java@ 8189

Last change on this file since 8189 was 8189, checked in by kjdon, 20 years ago

first version of Imperial College's Visualiser code

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 1.3 KB
Line 
1/**
2 * @(#)BarRenderer.java 12/12/99
3 * @author Peter Au
4 * All rights reserved.
5 */
6
7package vishnu.testvis.treemap.table;
8
9import java.awt.*;
10import javax.swing.*;
11import javax.swing.table.TableCellRenderer;
12
13//!!! the % in getString and getColor may WRONG !!!
14
15public class BarRenderer extends JProgressBar implements TableCellRenderer
16{
17
18 public BarRenderer(){
19 super(JProgressBar.HORIZONTAL);
20 setBorderPainted(false);
21 this.setFont(new Font("Arial",Font.PLAIN,9));
22 }
23
24
25 public BarRenderer(int min, int max){
26 super(min,max);
27 setBorderPainted(false);
28 this.setFont(new Font("Arial",Font.PLAIN,9));
29 }
30
31 public String getString(){
32 if (getValue()==0) return "";
33 else return String.valueOf(getValue())+"%";
34 }
35
36 public Component getTableCellRendererComponent(JTable table, Object value,
37 boolean isSelected, boolean hasFocus, int row, int column){
38 int n = 0;
39 if (value instanceof Number){
40 n = ((Number) value).intValue();
41 } else{
42 System.err.println("Error - item in bar render is not a number");
43 }
44 setValue(n);
45 setForeground(getColor(n));
46 return this;
47 }
48
49 private Color getColor(int value){
50 if (value < 40) return Color.green;
51 else if (value <80) return Color.yellow;
52 else
53 return Color.red;
54 }
55
56}
Note: See TracBrowser for help on using the repository browser.