Package org.teamapps.ux.component.table
Class Table<RECORD>
java.lang.Object
org.teamapps.ux.component.AbstractComponent
org.teamapps.ux.component.infiniteitemview.AbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
org.teamapps.ux.component.table.Table<RECORD>
- All Implemented Interfaces:
ClientObject,Component
- Direct Known Subclasses:
ListTable
public class Table<RECORD> extends AbstractInfiniteListComponent<RECORD,TableModel<RECORD>> implements Component
-
Field Summary
Fields Modifier and Type Field Description Event<CellClickedEvent<RECORD,?>>onCellClickedEvent<CellEditingStartedEvent<RECORD,?>>onCellEditingStartedEvent<CellEditingStoppedEvent<RECORD,?>>onCellEditingStoppedEvent<FieldValueChangedEventData<RECORD,?>>onCellValueChangedEvent<ColumnOrderChangeEventData<RECORD,?>>onColumnOrderChangeEvent<ColumnSizeChangeEventData<RECORD,?>>onColumnSizeChangeEvent<java.util.List<RECORD>>onMultipleRowsSelectedFired only when multiple rows are selected by the user.Event<java.util.List<RECORD>>onRowsSelectedFired when any number of rows is selected by the user.Event<RECORD>onSingleRowSelectedFired only when a single row is selected by the user.Event<SortingChangedEventData>onSortingChangedEvent<TableDataRequestEventData>onTableDataRequestFields inherited from class org.teamapps.ux.component.infiniteitemview.AbstractInfiniteListComponent
onDisplayedRangeChanged, renderedRecordsFields inherited from class org.teamapps.ux.component.AbstractComponent
DELETED_ATTRIBUTE, onRendered -
Constructor Summary
Constructors Constructor Description Table()Table(java.util.List<TableColumn<RECORD,?>> columns) -
Method Summary
Modifier and Type Method Description voidaddBottomNonModelRecord(RECORD record)voidaddCellMessage(RECORD record, java.lang.String propertyName, FieldMessage message)<VALUE> TableColumn<RECORD,VALUE>addColumn(java.lang.String propertyName, java.lang.String title, AbstractField<VALUE> field)<VALUE> TableColumn<RECORD,VALUE>addColumn(java.lang.String propertyName, org.teamapps.icons.Icon<?,?> icon, java.lang.String title, AbstractField<VALUE> field)<VALUE> TableColumn<RECORD,VALUE>addColumn(java.lang.String propertyName, org.teamapps.icons.Icon<?,?> icon, java.lang.String title, AbstractField<VALUE> field, int defaultWidth)voidaddColumn(TableColumn<RECORD,?> column)voidaddColumn(TableColumn<RECORD,?> column, int index)voidaddColumns(java.util.List<TableColumn<RECORD,?>> newColumns, int index)voidaddNonModelRecord(RECORD record, boolean addToTop)voidaddTopNonModelRecord(RECORD record)voidapplyCellValuesToRecord(RECORD record)voidcancelEditing()voidclearAllCellMarkings()voidclearChangeBuffer()voidclearRecordMarkings(RECORD record)voidclearRecordMessages(RECORD record)voidcloseContextMenu()static <RECORD> Table<RECORD>create()org.teamapps.dto.UiComponentcreateUiComponent()protected org.teamapps.dto.UiIdentifiableClientRecordcreateUiIdentifiableClientRecord(RECORD record)voidfocusCell(RECORD record, java.lang.String propertyName)TableCellCoordinates<RECORD>getActiveEditorCell()AbstractFieldgetActiveEditorField()java.util.Map<java.lang.String,java.lang.Object>getAllCellValuesForRecord(RECORD record)java.util.List<RECORD>getBottomNonModelRecords()java.util.List<FieldMessage>getCellMessages(RECORD record, java.lang.String propertyName)java.util.Map<java.lang.String,java.lang.Object>getChangedCellValues(RECORD record)<VALUE> TableColumn<RECORD,VALUE>getColumnByPropertyName(java.lang.String propertyName)java.util.List<java.lang.String>getColumnPropertyNames()java.util.List<TableColumn<RECORD,?>>getColumns()java.util.function.Function<RECORD,Component>getContextMenuProvider()AbstractFieldgetFooterRowFieldByName(java.lang.String propertyName)java.util.Map<java.lang.String,AbstractField>getFooterRowFields()intgetFooterRowHeight()AbstractFieldgetHeaderRowFieldByName(java.lang.String propertyName)java.util.Map<java.lang.String,AbstractField>getHeaderRowFields()intgetHeaderRowHeight()intgetIndentation()java.lang.StringgetIndentedColumnName()java.util.List<RECORD>getNonModelRecords(boolean top)PropertyInjector<RECORD>getPropertyInjector()PropertyProvider<RECORD>getPropertyProvider()java.util.List<RECORD>getRecordsWithChangedCellValues()intgetRowHeight()RECORDgetSelectedRecord()java.util.List<RECORD>getSelectedRecords()SelectionFramegetSelectionFrame()SortinggetSorting()java.util.List<RECORD>getTopNonModelRecords()protected voidhandleModelRecordsChanged(RecordsChangedEvent<RECORD> changeEvent)protected voidhandleModelRecordsRemoved(RecordsRemovedEvent<RECORD> deleteEvent)voidhandleUiEvent(org.teamapps.dto.UiEvent event)booleanisAllowMultiRowSelection()booleanisDisplayAsList()booleanisEditable()booleanisEnsureEmptyLastRow()booleanisForceFitWidth()booleanisHideHeaders()booleanisShowFooterRow()booleanisShowHeaderRow()booleanisShowNumbering()booleanisShowRowCheckBoxes()booleanisStripedRows()booleanisTextSelectionEnabled()booleanisTreeMode()protected voidpreRegisteringModel(TableModel<RECORD> model)voidrefreshData()voidremoveAllBottomNonModelRecords()voidremoveAllNonModelRecords()voidremoveAllTopNonModelRecords()voidremoveBottomNonModelRecord(RECORD record)voidremoveCellMessage(RECORD record, java.lang.String propertyName, FieldMessage message)voidremoveColumn(java.lang.String propertyName)voidremoveColumn(TableColumn<RECORD,?> column)voidremoveColumns(java.util.List<TableColumn<RECORD,?>> obsoleteColumns)voidremoveNonModelRecord(RECORD record)voidremoveNonModelRecord(RECORD record, boolean top)voidremoveTopNonModelRecord(RECORD record)protected java.util.List<RECORD>retrieveRecords(int startIndex, int length)voidrevertChanges()protected voidsendUpdateDataCommandToClient(int start, java.util.List<java.lang.Integer> uiRecordIds, java.util.List<org.teamapps.dto.UiIdentifiableClientRecord> newUiRecords, int totalNumberOfRecords)voidsetAllowMultiRowSelection(boolean allowMultiRowSelection)voidsetCellMarked(RECORD record, java.lang.String propertyName, boolean mark)voidsetCellValue(RECORD record, java.lang.String propertyName, java.lang.Object value)voidsetContextMenuProvider(java.util.function.Function<RECORD,Component> contextMenuProvider)voidsetDisplayAsList(boolean displayAsList)voidsetEditable(boolean editable)voidsetEnsureEmptyLastRow(boolean ensureEmptyLastRow)voidsetFooterRowBackgroundColor(org.teamapps.common.format.Color footerRowBackgroundColor)voidsetFooterRowBorderColor(org.teamapps.common.format.Color footerRowBorderColor)voidsetFooterRowBorderWidth(int footerRowBorderWidth)voidsetFooterRowField(java.lang.String columnName, AbstractField field)voidsetFooterRowFields(java.util.Map<java.lang.String,AbstractField> footerRowFields)voidsetFooterRowHeight(int footerRowHeight)voidsetForceFitWidth(boolean forceFitWidth)voidsetHeaderRowBackgroundColor(org.teamapps.common.format.Color headerRowBackgroundColor)voidsetHeaderRowBorderColor(org.teamapps.common.format.Color headerRowBorderColor)voidsetHeaderRowBorderWidth(int headerRowBorderWidth)voidsetHeaderRowField(java.lang.String columnName, AbstractField field)voidsetHeaderRowFields(java.util.Map<java.lang.String,AbstractField> headerRowFields)voidsetHeaderRowHeight(int headerRowHeight)voidsetHideHeaders(boolean hideHeaders)voidsetIndentation(int indentation)voidsetIndentedColumnName(java.lang.String indentedColumnName)voidsetPropertyExtractor(PropertyExtractor<RECORD> propertyExtractor)voidsetPropertyInjector(PropertyInjector<RECORD> propertyInjector)voidsetPropertyProvider(PropertyProvider<RECORD> propertyProvider)voidsetRecordBold(RECORD record, boolean bold)voidsetRowBorderColor(org.teamapps.common.format.Color rowBorderColor)voidsetRowBorderWidth(int rowBorderWidth)voidsetRowHeight(int rowHeight)voidsetSelectedRecord(RECORD record)voidsetSelectedRecord(RECORD record, boolean scrollToRecordIfAvailable)voidsetSelectedRecords(java.util.List<RECORD> records)voidsetSelectedRecords(java.util.List<RECORD> records, boolean scrollToFirstIfAvailable)voidsetSelectedRow(int rowIndex)voidsetSelectedRow(int rowIndex, boolean scrollTo)voidsetSelectedRows(java.util.List<java.lang.Integer> rowIndexes)voidsetSelectedRows(java.util.List<java.lang.Integer> rowIndexes, boolean scrollToFirst)voidsetSelectionColor(org.teamapps.common.format.Color selectionColor)voidsetSelectionFrame(SelectionFrame selectionFrame)voidsetShowFooterRow(boolean showFooterRow)voidsetShowHeaderRow(boolean showHeaderRow)voidsetShowNumbering(boolean showNumbering)voidsetShowRowCheckBoxes(boolean showRowCheckBoxes)voidsetSorting(java.lang.String sortField, SortDirection sortDirection)voidsetSorting(Sorting sorting)voidsetStripedRowColorEven(org.teamapps.common.format.Color stripedRowColorEven)voidsetStripedRowColorOdd(org.teamapps.common.format.Color stripedRowColorOdd)voidsetStripedRows(boolean stripedRows)voidsetTextSelectionEnabled(boolean textSelectionEnabled)voidsetTreeMode(boolean treeMode)protected voidupdateColumnMessages(TableColumn<RECORD,?> tableColumn)protected voidupdateColumnVisibility(TableColumn<RECORD,?> tableColumn)voidupdateRecordMessages(RECORD record, java.util.Map<java.lang.String,java.util.List<FieldMessage>> messages)java.util.List<FieldMessage>validateRecord(RECORD record)java.util.List<FieldMessage>validateRow(RECORD record)Methods inherited from class org.teamapps.ux.component.infiniteitemview.AbstractInfiniteListComponent
getCount, getModel, getModelCount, handleModelRecordsAdded, handleScrollOrResize, refresh, setModel, updateSingleRecordOnClientMethods inherited from class org.teamapps.ux.component.AbstractComponent
createUiReference, getDebuggingId, getId, getParent, getSessionContext, isRendered, isVisible, mapAbstractUiComponentProperties, queueCommandIfRendered, render, reRenderIfRendered, setAttribute, setCssStyle, setDebuggingId, setParent, setVisible, toggleCssClass, toString, unrenderMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.teamapps.ux.component.ClientObject
createUiReference, getId, handleUiQuery, isRendered, render, unrenderMethods inherited from interface org.teamapps.ux.component.Component
getParent, isVisible, setAriaLabel, setAttribute, setAttribute, setCssStyle, setCssStyle, setHtmlTitle, setMargin, setMaxHeight, setMaxWidth, setMinHeight, setMinWidth, setParent, setShadow, setVisible, toggleCssClass, toggleCssClass
-
Field Details
-
onCellEditingStarted
-
onCellEditingStopped
-
onCellValueChanged
-
onRowsSelected
Fired when any number of rows is selected by the user. -
onSingleRowSelected
Fired only when a single row is selected by the user. -
onMultipleRowsSelected
Fired only when multiple rows are selected by the user. -
onCellClicked
-
onSortingChanged
-
onTableDataRequest
-
onColumnOrderChange
-
onColumnSizeChange
-
-
Constructor Details
-
Method Details
-
create
-
addColumn
-
addColumn
-
addColumn
public <VALUE> TableColumn<RECORD,VALUE> addColumn(java.lang.String propertyName, java.lang.String title, AbstractField<VALUE> field) -
addColumn
public <VALUE> TableColumn<RECORD,VALUE> addColumn(java.lang.String propertyName, org.teamapps.icons.Icon<?,?> icon, java.lang.String title, AbstractField<VALUE> field) -
addColumn
public <VALUE> TableColumn<RECORD,VALUE> addColumn(java.lang.String propertyName, org.teamapps.icons.Icon<?,?> icon, java.lang.String title, AbstractField<VALUE> field, int defaultWidth) -
addColumns
-
removeColumn
public void removeColumn(java.lang.String propertyName) -
removeColumn
-
removeColumns
-
preRegisteringModel
- Overrides:
preRegisteringModelin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
createUiComponent
public org.teamapps.dto.UiComponent createUiComponent()- Specified by:
createUiComponentin classAbstractComponent
-
handleUiEvent
public void handleUiEvent(org.teamapps.dto.UiEvent event)- Specified by:
handleUiEventin interfaceClientObject
-
getColumnPropertyNames
public java.util.List<java.lang.String> getColumnPropertyNames() -
getActiveEditorCell
-
getActiveEditorField
-
setCellValue
-
focusCell
-
setCellMarked
-
clearRecordMarkings
-
clearAllCellMarkings
public void clearAllCellMarkings() -
setRecordBold
-
setSelectedRecord
-
setSelectedRecord
-
setSelectedRecords
-
setSelectedRecords
-
setSelectedRow
public void setSelectedRow(int rowIndex) -
setSelectedRow
public void setSelectedRow(int rowIndex, boolean scrollTo) -
setSelectedRows
public void setSelectedRows(java.util.List<java.lang.Integer> rowIndexes) -
setSelectedRows
public void setSelectedRows(java.util.List<java.lang.Integer> rowIndexes, boolean scrollToFirst) -
updateColumnMessages
-
getCellMessages
-
addCellMessage
-
removeCellMessage
-
validateRecord
-
validateRow
-
updateColumnVisibility
-
getTopNonModelRecords
-
getBottomNonModelRecords
-
getNonModelRecords
-
addTopNonModelRecord
-
addBottomNonModelRecord
-
addNonModelRecord
-
removeTopNonModelRecord
-
removeBottomNonModelRecord
-
removeNonModelRecord
-
removeNonModelRecord
-
removeAllTopNonModelRecords
public void removeAllTopNonModelRecords() -
removeAllBottomNonModelRecords
public void removeAllBottomNonModelRecords() -
removeAllNonModelRecords
public void removeAllNonModelRecords() -
clearRecordMessages
-
updateRecordMessages
public void updateRecordMessages(RECORD record, java.util.Map<java.lang.String,java.util.List<FieldMessage>> messages) -
handleModelRecordsRemoved
- Overrides:
handleModelRecordsRemovedin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
handleModelRecordsChanged
- Overrides:
handleModelRecordsChangedin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
refreshData
public void refreshData() -
sendUpdateDataCommandToClient
protected void sendUpdateDataCommandToClient(int start, java.util.List<java.lang.Integer> uiRecordIds, java.util.List<org.teamapps.dto.UiIdentifiableClientRecord> newUiRecords, int totalNumberOfRecords)- Specified by:
sendUpdateDataCommandToClientin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
retrieveRecords
- Specified by:
retrieveRecordsin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
cancelEditing
public void cancelEditing() -
createUiIdentifiableClientRecord
protected org.teamapps.dto.UiIdentifiableClientRecord createUiIdentifiableClientRecord(RECORD record)- Specified by:
createUiIdentifiableClientRecordin classAbstractInfiniteListComponent<RECORD,TableModel<RECORD>>
-
getColumns
-
isDisplayAsList
public boolean isDisplayAsList() -
setDisplayAsList
public void setDisplayAsList(boolean displayAsList) -
isForceFitWidth
public boolean isForceFitWidth() -
setForceFitWidth
public void setForceFitWidth(boolean forceFitWidth) -
getRowHeight
public int getRowHeight() -
setRowHeight
public void setRowHeight(int rowHeight) -
isStripedRows
public boolean isStripedRows() -
setStripedRows
public void setStripedRows(boolean stripedRows) -
setStripedRowColorEven
public void setStripedRowColorEven(org.teamapps.common.format.Color stripedRowColorEven) -
setStripedRowColorOdd
public void setStripedRowColorOdd(org.teamapps.common.format.Color stripedRowColorOdd) -
isHideHeaders
public boolean isHideHeaders() -
setHideHeaders
public void setHideHeaders(boolean hideHeaders) -
isAllowMultiRowSelection
public boolean isAllowMultiRowSelection() -
setAllowMultiRowSelection
public void setAllowMultiRowSelection(boolean allowMultiRowSelection) -
setSelectionColor
public void setSelectionColor(org.teamapps.common.format.Color selectionColor) -
setRowBorderWidth
public void setRowBorderWidth(int rowBorderWidth) -
setRowBorderColor
public void setRowBorderColor(org.teamapps.common.format.Color rowBorderColor) -
isShowRowCheckBoxes
public boolean isShowRowCheckBoxes() -
setShowRowCheckBoxes
public void setShowRowCheckBoxes(boolean showRowCheckBoxes) -
isShowNumbering
public boolean isShowNumbering() -
setShowNumbering
public void setShowNumbering(boolean showNumbering) -
isTextSelectionEnabled
public boolean isTextSelectionEnabled() -
setTextSelectionEnabled
public void setTextSelectionEnabled(boolean textSelectionEnabled) -
getSorting
-
setSorting
-
setSorting
-
isEditable
public boolean isEditable() -
setEditable
public void setEditable(boolean editable) -
isEnsureEmptyLastRow
public boolean isEnsureEmptyLastRow() -
setEnsureEmptyLastRow
public void setEnsureEmptyLastRow(boolean ensureEmptyLastRow) -
isTreeMode
public boolean isTreeMode() -
setTreeMode
public void setTreeMode(boolean treeMode) -
getIndentedColumnName
public java.lang.String getIndentedColumnName() -
setIndentedColumnName
public void setIndentedColumnName(java.lang.String indentedColumnName) -
getIndentation
public int getIndentation() -
setIndentation
public void setIndentation(int indentation) -
getSelectionFrame
-
setSelectionFrame
-
isShowHeaderRow
public boolean isShowHeaderRow() -
setShowHeaderRow
public void setShowHeaderRow(boolean showHeaderRow) -
setHeaderRowBorderWidth
public void setHeaderRowBorderWidth(int headerRowBorderWidth) -
setHeaderRowBorderColor
public void setHeaderRowBorderColor(org.teamapps.common.format.Color headerRowBorderColor) -
getHeaderRowHeight
public int getHeaderRowHeight() -
setHeaderRowHeight
public void setHeaderRowHeight(int headerRowHeight) -
setHeaderRowBackgroundColor
public void setHeaderRowBackgroundColor(org.teamapps.common.format.Color headerRowBackgroundColor) -
getHeaderRowFields
-
setHeaderRowFields
-
setHeaderRowField
-
isShowFooterRow
public boolean isShowFooterRow() -
setShowFooterRow
public void setShowFooterRow(boolean showFooterRow) -
setFooterRowBorderWidth
public void setFooterRowBorderWidth(int footerRowBorderWidth) -
setFooterRowBorderColor
public void setFooterRowBorderColor(org.teamapps.common.format.Color footerRowBorderColor) -
getFooterRowHeight
public int getFooterRowHeight() -
setFooterRowHeight
public void setFooterRowHeight(int footerRowHeight) -
setFooterRowBackgroundColor
public void setFooterRowBackgroundColor(org.teamapps.common.format.Color footerRowBackgroundColor) -
getFooterRowFields
-
setFooterRowFields
-
setFooterRowField
-
getColumnByPropertyName
-
getHeaderRowFieldByName
-
getFooterRowFieldByName
-
getRecordsWithChangedCellValues
-
getChangedCellValues
-
getAllCellValuesForRecord
-
clearChangeBuffer
public void clearChangeBuffer() -
applyCellValuesToRecord
-
revertChanges
public void revertChanges() -
getSelectedRecord
-
getSelectedRecords
-
getPropertyProvider
-
setPropertyProvider
-
setPropertyExtractor
-
getPropertyInjector
-
setPropertyInjector
-
getContextMenuProvider
-
setContextMenuProvider
-
closeContextMenu
public void closeContextMenu()
-