SalesPoint v3.3 API

util.swing
Class AbstractTableEntryDescriptor

java.lang.Object
  extended by util.swing.AbstractTableEntryDescriptor
All Implemented Interfaces:
Serializable, TableEntryDescriptor
Direct Known Subclasses:
DefaultCatalogItemDBETableEntryDescriptor, DefaultCatalogItemTED, DefaultCountingStockDBETableEntryDescriptor, DefaultLogEntryTED, DefaultStockItemTED, DefaultStoringStockDBETableEntryDescriptor, DefaultUserTED

public abstract class AbstractTableEntryDescriptor
extends Object
implements TableEntryDescriptor

Abstract base implementation of TableEntryDescriptor.

This base implementations is useful when you want to define a TableEntryDescriptor that describes rows that are non-editable and use the default renderer for each cell, based on the cell value's class.

Since:
v2.0
Author:
Steffen Zschaler
See Also:
AbstractTableModel, Serialized Form

Constructor Summary
AbstractTableEntryDescriptor()
          Dummy constructor, does nothing but call super().
 
Method Summary
 boolean canSortByColumn(int nIdx)
          Returns false because AbstractTableEntryDescriptor does not allow sorting by column by default.
 TableCellEditor getCellEditor(int nIdx)
          Returns null to indicate that the default cell editor is to be used based on the cell value's class.
 TableCellRenderer getCellRenderer(int nIdx)
          Returns null to indicate that the default cell renderer is to be used based on the cell value's class.
 Comparator<Object> getColumnOrder(int nIdx)
          Returns null because AbstractTableEntryDescriptor does not allow sorting by column by default.
 boolean isElementEditable(Object oRecord, int nIdx)
          Returns false to indicate that no cell is editable in the entire table.
 void setValueAt(Object oRecord, int nIdx, Object oValue)
          Does nothing because AbstractTableEntryDescriptor does not allow editing by default.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface util.swing.TableEntryDescriptor
getColumnClass, getColumnCount, getColumnName, getValueAt
 

Constructor Detail

AbstractTableEntryDescriptor

public AbstractTableEntryDescriptor()
Dummy constructor, does nothing but call super().

Method Detail

getCellRenderer

public TableCellRenderer getCellRenderer(int nIdx)
Returns null to indicate that the default cell renderer is to be used based on the cell value's class.

Specified by:
getCellRenderer in interface TableEntryDescriptor
Parameters:
nIdx - the index of the column for which to return the renderer. Indices run from 0 to getColumnCount() - 1.
Returns:
the cell renderer to be used for cells in the given column. You can return null to indicate that the default cell renderer for the column class should be used.
Override:
Sometimes Override this method if you want to define specialized cell renderers for certain columns.

getCellEditor

public TableCellEditor getCellEditor(int nIdx)
Returns null to indicate that the default cell editor is to be used based on the cell value's class.

Specified by:
getCellEditor in interface TableEntryDescriptor
Parameters:
nIdx - the index of the column for which to return the editor. Indices run from 0 to getColumnCount() - 1.
Returns:
the cell editor to be used for cells in the given column. You can return null to indicate that the default cell editor for the column class should be used.
Override:
Sometimes Override this method if you want to define specialized cell editors for certain columns. Note that you will also have to override isElementEditable(java.lang.Object, int) and setValueAt(java.lang.Object, int, java.lang.Object) for complete editing support.

isElementEditable

public boolean isElementEditable(Object oRecord,
                                 int nIdx)
Returns false to indicate that no cell is editable in the entire table.

Specified by:
isElementEditable in interface TableEntryDescriptor
Parameters:
oRecord - the record for which to determine editability. The actual class depends on the AbstractTableModel you are working with. It will be declared in the documentation for the AbstractTableModel.getRecord(int) method of that class.
nIdx - the index of the column for which to determine editability. Indices run from 0 to getColumnCount() - 1.
Returns:
whether the given column is editable for the given record.
Override:
Sometimes Override this method if you want to allow editing for certain cells. The actual class of the record passed as oRecord depends on the TableModel with which you work. See AbstractTableModel.getRecord(int) in the concrete TableModel for a description. Note that you will also have to override setValueAt(java.lang.Object, int, java.lang.Object) for complete editing support. It is also recommended that you override getCellEditor(int) if you override this method.

setValueAt

public void setValueAt(Object oRecord,
                       int nIdx,
                       Object oValue)
Does nothing because AbstractTableEntryDescriptor does not allow editing by default.

Specified by:
setValueAt in interface TableEntryDescriptor
Parameters:
oRecord - the record for which to determine the value. The actual class depends on the AbstractTableModel you are working with. It will be declared in the documentation for the AbstractTableModel.getRecord(int) method of that class.
nIdx - the index of the column for which to return the cell value. Indices run from 0 to getColumnCount() - 1.
oValue - the value to become the new value of the cell. The class of this object depends on the editor used for editing the cell. Normally, this will be determined by TableEntryDescriptor.getCellEditor(int).
Override:
Sometimes Override this method if you want to allow editing for certain cells. The actual class of the record passed as oRecord depends on the TableModel with which you work. See AbstractTableModel.getRecord(int) in the concrete TableModel for a description. Note that you will also have to override isElementEditable(java.lang.Object, int) for complete editing support. It is also recommended that you override getCellEditor(int) if you override this method.

canSortByColumn

public boolean canSortByColumn(int nIdx)
Returns false because AbstractTableEntryDescriptor does not allow sorting by column by default.

Specified by:
canSortByColumn in interface TableEntryDescriptor
Parameters:
nIdx - the index of the column concerned.
Returns:
whether or not records can be sorted by the specified column.
Override:
Sometimes Override this method if you want to support sorting by column

getColumnOrder

public Comparator<Object> getColumnOrder(int nIdx)
Returns null because AbstractTableEntryDescriptor does not allow sorting by column by default.

Specified by:
getColumnOrder in interface TableEntryDescriptor
Parameters:
nIdx - the index of the column concerned.
Override:
Sometimes Override this method if you want to support sorting by column

SalesPoint v3.3 API