Changes

Jump to: navigation, search

Decorator

2,930 bytes added, 14:32, 11 April 2007
Example
----
[[Image:mpclDecorator.png|500 400 px|thumb|MPCL ]]
Multi purpose class library (MPCL)
----
 
Concrete Components <br>
TDecoratorTableCellRenderer:
/**
* Table cell renderer that decorates a delegate cell renderer. It implements
* the Decorator design pattern.
*/
public class TDecoratorTableCellRenderer implements TableCellRenderer
{
/// Delegate table cell renderer.
private TableCellRenderer tDelegateTableCellRenderer;
/// Table cell decorator.
private ITableCellDecorator tTableCellDecorator;
//
// C O N S T R U C T O R S
//
/**
* Builds a new instance.
* @param tDELEGATE_TABLE_CELL_RENDERER The delegate table cell renderer.
* @param tTABLE_CELL_DECORATOR Table cell decorator.
*/
public TDecoratorTableCellRenderer ( TableCellRenderer tDELEGATE_TABLE_CELL_RENDERER ,
ITableCellDecorator tTABLE_CELL_DECORATOR )
{
tDelegateTableCellRenderer = tDELEGATE_TABLE_CELL_RENDERER;
tTableCellDecorator = tTABLE_CELL_DECORATOR;
}
 
 
DefaultTableCellRenderer:
public class DefaultTableCellRenderer extends JLabel
implements TableCellRenderer, Serializable
{
/**
* Creates a default table cell renderer.
*/
public DefaultTableCellRenderer() {
super();
setOpaque(true);
setBorder(getNoFocusBorder());
}
}
 
TDateTableCellRenderer:
public class TDateTableCellRenderer extends DefaultTableCellRenderer
{
/// Date format.
private DateFormat tDateFormat;
 
//
// C O N S T R U C T O R S
//
 
/**
* Sets the String object for the cell being rendered to value.
* @param tVALUE The value for this cell; if \a tVALUE is \a null it sets the
* the text value to an empty string.
* @see javax.swing.table.DefaultTableCellRenderer#setValue()
*/
protected void setValue (Object tVALUE)
{
setText (( tVALUE == null ) ? "" : tDateFormat.format ((Date) tVALUE));
}
 
TPopulationTableCellRenderer:
/// Table cell renderer for \a TPopulation objects.
public class TPopulationTableCellRenderer extends DefaultTableCellRenderer
{
/// Number format.
public NumberFormat tNumberFormat;
//
// C O N S T R U C T O R S
//
/**
* Sets the String object for the cell being rendered to value.
* @param tVALUE The value for this cell; if \a tVALUE is \a null it sets the
* the text value to an empty string.
* @see javax.swing.table.DefaultTableCellRenderer#setValue()
*/
protected void setValue (Object tVALUE)
{
if ( tNumberFormat == null)
{
tNumberFormat = TDecimalFormat._getPopulationInstance();
}
setText (( tVALUE == null ) ? "" : tNumberFormat.format (((TPopulation) tVALUE).intValue()));
}
//
// C O N S T R U C T O R S
//
/// Builds a new instance.
public TPopulationTableCellRenderer()
{
super();
setHorizontalAlignment (DefaultTableCellRenderer.RIGHT);
}
} // class TPopulationTableCellRenderer
==Contributions==
1
edit

Navigation menu