CVS: Tapestry/contrib/src/net/sf/tapestry/contrib/table/model/common ComponentTableRendererSource.java,NONE,1.1 AbstractTableColumn.java,NONE,1.1 BlockTableRendererSource.java,NONE,1.1
Mind Bridge <[email protected]>
| Newsgroups | gmane.comp.java.tapestry.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/tapestry/Tapestry/contrib/src/net/sf/tapestry/contrib/table/model/common
In directory sc8-pr-cvs1:/tmp/cvs-serv6509/contrib/src/net/sf/tapestry/contrib/table/model/common
Added Files:
ComponentTableRendererSource.java AbstractTableColumn.java
BlockTableRendererSource.java
Log Message:
--- NEW FILE: ComponentTableRendererSource.java ---
package net.sf.tapestry.contrib.table.model.common;
import net.sf.tapestry.ComponentAddress;
import net.sf.tapestry.IRender;
import net.sf.tapestry.IRequestCycle;
import net.sf.tapestry.contrib.table.model.ITableColumn;
import net.sf.tapestry.contrib.table.model.ITableModelSource;
import net.sf.tapestry.contrib.table.model.ITableRendererListener;
import net.sf.tapestry.contrib.table.model.ITableRendererSource;
/**
*
* @version $Id: ComponentTableRendererSource.java,v 1.1 2002/12/23 12:40:28 mindbridge Exp $
* @author mindbridge
* @since 2.3
*/
public class ComponentTableRendererSource implements ITableRendererSource
{
private ComponentAddress m_objComponentAddress;
public ComponentTableRendererSource(ITableRendererListener objComponent)
{
this(new ComponentAddress(objComponent));
}
public ComponentTableRendererSource(ComponentAddress objComponentAddress)
{
setComponentAddress(objComponentAddress);
}
/**
* @see net.sf.tapestry.contrib.table.model.column.ITableValueRendererSource#getValueRenderer(IRequestCycle, ITableModelSource, ITableColumn, Object)
*/
public IRender getRenderer(
IRequestCycle objCycle,
ITableModelSource objSource,
ITableColumn objColumn,
Object objRow)
{
ITableRendererListener objComponent =
(ITableRendererListener) getComponentAddress().findComponent(
objCycle);
objComponent.initializeRenderer(objCycle, objSource, objColumn, objRow);
return objComponent;
}
/**
* Returns the listenerAddress.
* @return ComponentAddress
*/
public ComponentAddress getComponentAddress()
{
return m_objComponentAddress;
}
/**
* Sets the listenerAddress.
* @param listenerAddress The listenerAddress to set
*/
public void setComponentAddress(ComponentAddress listenerAddress)
{
m_objComponentAddress = listenerAddress;
}
}
--- NEW FILE: AbstractTableColumn.java ---
package net.sf.tapestry.contrib.table.model.common;
import java.io.Serializable;
import java.util.Comparator;
import net.sf.tapestry.IRender;
import net.sf.tapestry.IRequestCycle;
import net.sf.tapestry.contrib.table.model.*;
import net.sf.tapestry.contrib.table.model.ITableColumn;
import net.sf.tapestry.contrib.table.model.ITableModelSource;
import net.sf.tapestry.valid.RenderString;
/**
* A base implementation of {@link net.sf.tapestry.contrib.table.model.ITableColumn}
* that allows renderers to be set via aggregation.
*
* @see net.sf.tapestry.contrib.table.model.column.ITableColumnRendererSource
* @see net.sf.tapestry.contrib.table.model.column.ITableValueRendererSource
* @version $Id: AbstractTableColumn.java,v 1.1 2002/12/23 12:40:28 mindbridge Exp $
* @author mindbridge
* @since 2.3
*/
public class AbstractTableColumn implements ITableColumn, Serializable
{
private String m_strColumnName;
private boolean m_bSortable;
private Comparator m_objComparator;
private ITableRendererSource m_objColumnRendererSource;
private ITableRendererSource m_objValueRendererSource;
public AbstractTableColumn()
{
this("", false, null);
}
public AbstractTableColumn(
String strColumnName,
boolean bSortable,
Comparator objComparator)
{
this(strColumnName, bSortable, objComparator, null, null);
}
public AbstractTableColumn(
String strColumnName,
boolean bSortable,
Comparator objComparator,
ITableRendererSource objColumnRendererSource,
ITableRendererSource objValueRendererSource)
{
setColumnName(strColumnName);
setSortable(bSortable);
setComparator(objComparator);
setColumnRendererSource(objColumnRendererSource);
setValueRendererSource(objValueRendererSource);
}
/**
* @see net.sf.tapestry.contrib.table.model.ITableColumn#getColumnName()
*/
public String getColumnName()
{
return m_strColumnName;
}
/**
* Sets the columnName.
* @param columnName The columnName to set
*/
public void setColumnName(String columnName)
{
m_strColumnName = columnName;
}
/**
* @see net.sf.tapestry.contrib.table.model.ITableColumn#getSortable()
*/
public boolean getSortable()
{
return m_bSortable;
}
/**
* Sets whether the column is sortable.
* @param sortable The sortable flag to set
*/
public void setSortable(boolean sortable)
{
m_bSortable = sortable;
}
/**
* @see net.sf.tapestry.contrib.table.model.ITableColumn#getComparator()
*/
public Comparator getComparator()
{
return m_objComparator;
}
/**
* Sets the comparator.
* @param comparator The comparator to set
*/
public void setComparator(Comparator comparator)
{
m_objComparator = comparator;
}
/**
* @see net.sf.tapestry.contrib.table.model.ITableColumn#getColumnRenderer(IRequestCycle, ITableModelSource)
*/
public IRender getColumnRenderer(
IRequestCycle objCycle,
ITableModelSource objSource)
{
ITableRendererSource objRendererSource =
getColumnRendererSource();
if (objRendererSource == null)
{
// log error
return new RenderString("");
}
return objRendererSource.getRenderer(objCycle, objSource, this, null);
}
/**
* @see net.sf.tapestry.contrib.table.model.ITableColumn#getValueRenderer(IRequestCycle, ITableModelSource, Object)
*/
public IRender getValueRenderer(
IRequestCycle objCycle,
ITableModelSource objSource,
Object objRow)
{
ITableRendererSource objRendererSource = getValueRendererSource();
if (objRendererSource == null)
{
// log error
return new RenderString("");
}
return objRendererSource.getRenderer(
objCycle,
objSource,
this,
objRow);
}
/**
* Returns the columnRendererSource.
* @return ITableColumnRendererSource
*/
public ITableRendererSource getColumnRendererSource()
{
return m_objColumnRendererSource;
}
/**
* Sets the columnRendererSource.
* @param columnRendererSource The columnRendererSource to set
*/
public void setColumnRendererSource(ITableRendererSource columnRendererSource)
{
m_objColumnRendererSource = columnRendererSource;
}
/**
* Returns the valueRendererSource.
* @return ITableValueRendererSource
*/
public ITableRendererSource getValueRendererSource()
{
return m_objValueRendererSource;
}
/**
* Sets the valueRendererSource.
* @param valueRendererSource The valueRendererSource to set
*/
public void setValueRendererSource(ITableRendererSource valueRendererSource)
{
m_objValueRendererSource = valueRendererSource;
}
}
--- NEW FILE: BlockTableRendererSource.java ---
package net.sf.tapestry.contrib.table.model.common;
import net.sf.tapestry.ComponentAddress;
import net.sf.tapestry.IRender;
import net.sf.tapestry.IRequestCycle;
import net.sf.tapestry.components.Block;
import net.sf.tapestry.components.BlockRenderer;
import net.sf.tapestry.contrib.table.model.ITableColumn;
import net.sf.tapestry.contrib.table.model.ITableModelSource;
import net.sf.tapestry.contrib.table.model.ITableRendererListener;
import net.sf.tapestry.contrib.table.model.ITableRendererSource;
/**
*
* @version $Id: BlockTableRendererSource.java,v 1.1 2002/12/23 12:40:28 mindbridge Exp $
* @author mindbridge
* @since 2.3
*/
public class BlockTableRendererSource implements ITableRendererSource
{
private ComponentAddress m_objBlockAddress;
private ComponentAddress m_objListenerAddress;
public BlockTableRendererSource(Block objBlock)
{
this(new ComponentAddress(objBlock));
}
public BlockTableRendererSource(
Block objBlock,
ITableRendererListener objListener)
{
this(new ComponentAddress(objBlock), new ComponentAddress(objListener));
}
public BlockTableRendererSource(ComponentAddress objBlockAddress)
{
this(objBlockAddress, null);
}
public BlockTableRendererSource(
ComponentAddress objBlockAddress,
ComponentAddress objListenerAddress)
{
setBlockAddress(objBlockAddress);
setListenerAddress(objListenerAddress);
}
/**
* @see net.sf.tapestry.contrib.table.model.column.ITableValueRendererSource#getValueRenderer(IRequestCycle, ITableModelSource, ITableColumn, Object)
*/
public IRender getRenderer(
IRequestCycle objCycle,
ITableModelSource objSource,
ITableColumn objColumn,
Object objRow)
{
ComponentAddress objListenerAddress = getListenerAddress();
if (objListenerAddress != null)
{
ITableRendererListener objListener =
(ITableRendererListener) objListenerAddress.findComponent(
objCycle);
objListener.initializeRenderer(
objCycle,
objSource,
objColumn,
objRow);
}
Block objBlock = (Block) getBlockAddress().findComponent(objCycle);
return new BlockRenderer(objBlock);
}
/**
* Returns the blockAddress.
* @return ComponentAddress
*/
public ComponentAddress getBlockAddress()
{
return m_objBlockAddress;
}
/**
* Sets the blockAddress.
* @param blockAddress The blockAddress to set
*/
public void setBlockAddress(ComponentAddress blockAddress)
{
m_objBlockAddress = blockAddress;
}
/**
* Returns the listenerAddress.
* @return ComponentAddress
*/
public ComponentAddress getListenerAddress()
{
return m_objListenerAddress;
}
/**
* Sets the listenerAddress.
* @param listenerAddress The listenerAddress to set
*/
public void setListenerAddress(ComponentAddress listenerAddress)
{
m_objListenerAddress = listenerAddress;
}
}
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf