Save This Page
Home » openjdk-7 » net.sourceforge » jbird » table » [javadoc | source]
    1   /*
    2   	J-Bird net/sourceforge/jbird/table/DateRenderer.java
    3   
    4   	Copyright 2001, 2002, 2003  Dick Repasky
    5   */
    6   package net.sourceforge.jbird.table;
    7   
    8   import java.text.DateFormat;
    9   import java.util.Date;
   10   
   11   import java.awt.Component;
   12   
   13   import javax.swing.JLabel;
   14   import javax.swing.JTable;
   15   import javax.swing.SwingConstants;
   16   
   17   import javax.swing.table.DefaultTableCellRenderer;
   18   
   19   /**
   20     * A class for presenting dates in a JTable. Null values are rendered
   21     * blank.
   22     * <p> 
   23     * If the argumentless constructor is used, a default DateFormat object is
   24     * used.
   25     * @author Dick Repasky
   26     * @since J-Bird 0.1.3
   27   */
   28   
   29   public class DateRenderer extends DefaultTableCellRenderer {
   30   
   31   	protected DateFormat formatter;
   32   
   33   	public DateRenderer (DateFormat formatter) {
   34   		super();
   35   		this.formatter = formatter;
   36   	}
   37   
   38   		/** A default DateFormat object is loaded. */
   39   	public DateRenderer() {
   40   		formatter = DateFormat.getDateInstance();
   41   	}
   42   
   43   	public Component getTableCellRendererComponent(
   44   			JTable table,
   45   			Object value,
   46   			boolean isselected,
   47   			boolean hasfocus,
   48   			int row,
   49   			int col) {
   50   		String formatted;
   51   		if (value != null && (value instanceof Date)) {
   52   			formatted = formatter.format((Date)value);
   53   		} else {
   54   			formatted = "";
   55   		}
   56   		JLabel answer = (JLabel)super.getTableCellRendererComponent(table, 
   57   					formatted,
   58   					isselected,
   59   					hasfocus,
   60   					row,
   61   					col);
   62   		answer.setHorizontalAlignment(SwingConstants.CENTER);
   63   		return answer;
   64   	}
   65   
   66   }
   67   

Save This Page
Home » openjdk-7 » net.sourceforge » jbird » table » [javadoc | source]