gvsig-raster / org.gvsig.raster / branches / org.gvsig.raster.2.4 / org.gvsig.raster / org.gvsig.fmap.mapcontext.raster.swing / org.gvsig.fmap.mapcontext.raster.swing.impl / src / main / java / org / gvsig / fmap / mapcontext / raster / swing / impl / bands / NoDataCellRenderer.java @ 8796
History | View | Annotate | Download (1.34 KB)
1 |
package org.gvsig.fmap.mapcontext.raster.swing.impl.bands; |
---|---|
2 |
|
3 |
import java.awt.Component; |
4 |
|
5 |
import javax.swing.JTable; |
6 |
import javax.swing.table.DefaultTableCellRenderer; |
7 |
|
8 |
import org.gvsig.raster.lib.buffer.api.BufferManager; |
9 |
|
10 |
|
11 |
/**
|
12 |
* @author fdiaz
|
13 |
*
|
14 |
*/
|
15 |
public class NoDataCellRenderer extends DefaultTableCellRenderer { |
16 |
|
17 |
/**
|
18 |
*
|
19 |
*/
|
20 |
private static final long serialVersionUID = 7654022330175662292L; |
21 |
|
22 |
@Override
|
23 |
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, |
24 |
int row, int column) { |
25 |
Component component = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); |
26 |
if(value==null){ |
27 |
setText("");
|
28 |
} else {
|
29 |
Number number = (Number)value; |
30 |
int dataType = ((Integer) table.getValueAt(row, BandsTableModel.COLUMN_DATA_TYPE)).intValue(); |
31 |
switch (dataType) {
|
32 |
case BufferManager.TYPE_BYTE:
|
33 |
setText(new Integer(number.intValue() & 0xff).toString()); |
34 |
break;
|
35 |
case BufferManager.TYPE_USHORT:
|
36 |
setText(new Integer(number.intValue() & 0xffff).toString()); |
37 |
break;
|
38 |
default:
|
39 |
setText(number.toString()); |
40 |
break;
|
41 |
} |
42 |
} |
43 |
return component;
|
44 |
} |
45 |
|
46 |
} |