1 package edu.psu.geovista.app.table;
2 import javax.swing.*;
3 import javax.swing.table.*;
4 import java.awt.Component;
5 import java.awt.Color;
6 import java.awt.Font;
7 import java.awt.event.*;
8 import javax.swing.event.*;
9 import javax.swing.border.BevelBorder;
10
11 public class MxmTableCellRenderer extends DefaultTableCellRenderer
12 {
13 int align = JLabel.CENTER;
14
15 public MxmTableCellRenderer( int alignment )
16 {
17 align = alignment;
18 }
19
20 public Component getTableCellRendererComponent
21 ( JTable table, Object value, boolean isSelected,
22 boolean hasFocus, int row, int col )
23 {
24 int numOfCol = table.getColumnCount();
25 int numOfRow = table.getRowCount();
26 if (col!=0){
27
28 if (col >= numOfCol-3)
29 {
30 String header = null;
31 int iconTextGap = 10;
32 header = value.toString();
33 //JButton columnLabel = new JButton( header );
34 JLabel columnLabel = new JLabel( header );
35 Font defaultFont = new Font("Verdana", Font.PLAIN, 15);
36 columnLabel.setFont(defaultFont);
37 columnLabel.setForeground(new Color(0,0,254));//RGB
38 columnLabel.setHorizontalAlignment( align );
39
40 return columnLabel;
41 }
42
43 if (row == numOfRow-1)
44 {
45 String header = null;
46 int iconTextGap = 10;
47 header = value.toString();
48 //JButton columnLabel = new JButton( header );
49 JLabel columnLabel = new JLabel( header );
50 Font defaultFont = new Font("Verdana", Font.PLAIN, 15);
51 columnLabel.setFont(defaultFont);
52 columnLabel.setForeground(new Color(0,0,254));//RGB
53 columnLabel.setHorizontalAlignment( align );
54
55 return columnLabel;
56 }
57 if (col == numOfCol-4)
58 {
59 String header = null;
60 int iconTextGap = 10;
61 header = value.toString();
62 //JButton columnLabel = new JButton( header );
63 JLabel columnLabel = new JLabel( header );
64 Font defaultFont = new Font("Verdana", Font.PLAIN, 15);
65 columnLabel.setFont(defaultFont);
66 columnLabel.setForeground(new Color(254,0,0));//RGB
67 columnLabel.setHorizontalAlignment( align );
68
69 return columnLabel;
70 }
71 if (row == numOfRow-2)
72 {
73 String header = null;
74 int iconTextGap = 10;
75 header = value.toString();
76 //JButton columnLabel = new JButton( header );
77 JLabel columnLabel = new JLabel( header );
78 Font defaultFont = new Font("Verdana", Font.PLAIN, 15);
79 columnLabel.setFont(defaultFont);
80 columnLabel.setForeground(new Color(254,0,0));//RGB
81 columnLabel.setHorizontalAlignment( align );
82
83 return columnLabel;
84 }
85 if (row+1 ==col & row < numOfRow-1)
86 { String header = null;
87 int iconTextGap = 10;
88 header = value.toString();
89 //JButton columnLabel = new JButton( header );
90 JLabel columnLabel = new JLabel( header );
91 Font defaultFont = new Font("Verdana", Font.PLAIN, 15);
92 columnLabel.setFont(defaultFont);
93 columnLabel.setForeground(new Color(0,254,0));//RGB
94 columnLabel.setHorizontalAlignment( align );
95 return columnLabel;
96
97 }
98
99
100 hasFocus = false ;
101 setHorizontalAlignment( align ) ;
102 return super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, col ) ;
103 }
104 else
105 {
106 String header = null;
107 int iconTextGap = 10;
108 if( align == JLabel.RIGHT )
109 {
110 header = value.toString() ;
111 iconTextGap = 6;
112 } else
113 header = value.toString();
114 JButton columnLabel = new JButton( header );
115 //JLabel columnLabel = new JLabel( header );
116 columnLabel.setHorizontalAlignment( JLabel.CENTER );
117 Color color = new Color( 100, 100, 100 ) ;
118
119 //if( col == _clickedColumn )
120 /* {
121 javax.swing.border.BevelBorder loweredBorder =
122 new BevelBorder( BevelBorder.LOWERED,
123 color, Color.white, color,
124 Color.gray );
125 columnLabel.setBorder( loweredBorder );
126 } else
127 {*/
128 javax.swing.border.BevelBorder raisedBorder =
129 new BevelBorder( BevelBorder.RAISED,
130 color, Color.white, color,
131 Color.gray );
132 columnLabel.setBorder( raisedBorder );
133 //}
134
135 return columnLabel;
136 }
137 }
138 }
This page was automatically generated by Maven