gvsig-raster / org.gvsig.raster.georeferencing / trunk / org.gvsig.raster.georeferencing / org.gvsig.raster.georeferencing.app / org.gvsig.raster.georeferencing.app.georeferencingclient / src / main / java / org / gvsig / raster / georeferencing / app / georeferencingclient / gui / ColorColumnRenderer.java @ 1717
History | View | Annotate | Download (1.71 KB)
1 |
package org.gvsig.raster.georeferencing.app.georeferencingclient.gui; |
---|---|
2 |
|
3 |
import java.awt.Color; |
4 |
import java.awt.Component; |
5 |
import java.util.ArrayList; |
6 |
|
7 |
import javax.swing.JTable; |
8 |
import javax.swing.table.DefaultTableCellRenderer; |
9 |
|
10 |
/**
|
11 |
* Renderer para cambiar el color a la columna de la tabla
|
12 |
* 06/02/2008
|
13 |
* @author Nacho Brodin nachobrodin@gmail.com
|
14 |
*/
|
15 |
public class ColorColumnRenderer extends DefaultTableCellRenderer { |
16 |
private static final long serialVersionUID = 1L; |
17 |
private Color back = Color.red; |
18 |
private Color fore = Color.white; |
19 |
private Color back2 = Color.white; |
20 |
private Color fore2 = Color.black; |
21 |
private ArrayList<Integer> color1 = null; |
22 |
private ArrayList<Integer> color2 = null; |
23 |
|
24 |
public ColorColumnRenderer() {
|
25 |
super();
|
26 |
color1 = new ArrayList<Integer>(); |
27 |
color2 = new ArrayList<Integer>(); |
28 |
} |
29 |
|
30 |
/**
|
31 |
* A?ade una fila al tipo de color 1
|
32 |
* @param row
|
33 |
*/
|
34 |
public void addRowToColor1(int row) { |
35 |
color1.add(new Integer(row)); |
36 |
} |
37 |
|
38 |
/**
|
39 |
* A?ade una fila al tipo de color 2
|
40 |
* @param row
|
41 |
*/
|
42 |
public void addRowToColor2(int row) { |
43 |
color2.add(new Integer(row)); |
44 |
} |
45 |
|
46 |
public Component getTableCellRendererComponent (JTable table, Object value, boolean isSelected, |
47 |
boolean hasFocus, int row, int column) { |
48 |
Component cell = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); |
49 |
for (int i = 0; i < color1.size(); i++) { |
50 |
if(((Integer)color1.get(i)).intValue() == row) { |
51 |
cell.setBackground(back); |
52 |
cell.setForeground(fore); |
53 |
} |
54 |
} |
55 |
for (int i = 0; i < color2.size(); i++) { |
56 |
if(((Integer)color2.get(i)).intValue() == row) { |
57 |
cell.setBackground(back2); |
58 |
cell.setForeground(fore2); |
59 |
} |
60 |
} |
61 |
return cell;
|
62 |
} |
63 |
} |