* default text item, or if a value needs special formatting.
*/
protected void setColumnRenderers() {
int numCols = _tableQueryResult.getColumnCount();
for (int col = 0; col < numCols; col++) {
FieldDesc field = _tableQueryResult.getColumnDesc(col);
TableColumn column = _table.getColumn(_tableQueryResult.getColumnName(col));
// linked fields are displayed as buttons that download and display the item behind the link
if (field.hasLink()) {
// Add SAMP/PLASTIC features to download
column.setCellRenderer(new UrlTableCellRenderer(field, _tableQueryResult, _queryResultDisplay));
column.setCellEditor(new UrlTableCellRenderer(field, _tableQueryResult, _queryResultDisplay));
} else if (field.isRA()) {
// RA,DEC coordinates are displayed in sexagesimal (hh:mm:ss.sss) notation
column.setCellRenderer(new SexagesimalTableCellRenderer(true));
column.setCellEditor(new SexagesimalTableCellEditor(true));
} else if (field.isDec()) {
column.setCellRenderer(new SexagesimalTableCellRenderer(false));
column.setCellEditor(new SexagesimalTableCellEditor(false));
} else {
Class c = _tableQueryResult.getColumnClass(col);
// Use the StarJava renderer for better numeric display (also handles strings, etc.)