Class WTableRowRenderer
- java.lang.Object
-
- com.github.bordertech.wcomponents.AbstractWComponent
-
- com.github.bordertech.wcomponents.WBeanComponent
-
- com.github.bordertech.wcomponents.WContainer
-
- com.github.bordertech.wcomponents.WDataRenderer
-
- com.github.bordertech.wcomponents.WTableRowRenderer
-
- All Implemented Interfaces:
BeanAware
,BeanBound
,BeanProviderBound
,Container
,DataBound
,MutableContainer
,NamingContextable
,WComponent
,WebComponent
,Serializable
public final class WTableRowRenderer extends WDataRenderer
WTableRowRenderer is used by the table's repeater to render row data. This class is intended for internal use only.- Since:
- 1.0.0
- Author:
- Jonathan Austin
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.github.bordertech.wcomponents.AbstractWComponent
AbstractWComponent.WComponentRef
-
-
Field Summary
-
Fields inherited from interface com.github.bordertech.wcomponents.WComponent
DEFAULT_APPLICATION_ID, DEFAULT_INTERNAL_ID, DEFAULT_NO_ID, ID_CONTEXT_SEPERATOR, ID_FRAMEWORK_ASSIGNED_SEPERATOR, ID_VALIDATION_PATTERN
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
WTableRowRenderer(WTable table)
Creates a WTableRowRenderer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description WTable.RowIdWrapper
getCurrentRowIdWrapper()
Retrieve the currentWTable.RowIdWrapper
.WComponent
getExpandedTreeNodeRenderer(Class<? extends WComponent> rendererClass)
This is called to lazily add expanded renderers as necessary.WComponent
getRenderer(int columnIndex)
Retrieves the component that is used to render the given column.WTable
getTable()
protected void
preparePaintComponent(Request request)
The preparePaintComponent method has been overridden to ensure that expanded row renderers have been correctly initialised.-
Methods inherited from class com.github.bordertech.wcomponents.WDataRenderer
handleRequest, updateComponent, updateData
-
Methods inherited from class com.github.bordertech.wcomponents.WContainer
add, add, getChildAt, getChildCount, getChildren, getIndexOfChild, getNamingContextId, isNamingContext, remove, removeAll, setNamingContext, setTemplate, setTemplate, setTemplateMarkUp
-
Methods inherited from class com.github.bordertech.wcomponents.WBeanComponent
addBeanToScratchMap, doUpdateBeanValue, getBean, getBeanFromScratchMap, getBeanId, getBeanProperty, getBeanProvider, getBeanScratchMap, getBeanValue, getComponentModel, getData, getOrCreateComponentModel, isBeanInScratchMap, isChanged, isSearchAncestors, isUseRequestScopeScratchMap, newComponentModel, removeBeanFromScratchMap, resetData, setBean, setBeanId, setBeanProperty, setBeanProvider, setData, setSearchAncestors, updateBeanValue
-
Methods inherited from class com.github.bordertech.wcomponents.AbstractWComponent
addHtmlClass, addHtmlClass, addNotify, afterPaint, assertAddSupported, beforePaint, createErrorDiagnostic, createErrorDiagnostic, forward, getAccessibleText, getAttribute, getBaseUrl, getDefaultModel, getEnvironment, getHeaders, getHtmlClass, getHtmlClasses, getId, getIdName, getInternalId, getLabel, getName, getParent, getScratchMap, getTabIndex, getTag, getTemplate, getTemplateMarkUp, getToolTip, hasNoComponentModel, hasTabIndex, initialiseComponentModel, invokeLater, invokeLaters, isDebugStructure, isDefaultState, isFlagSet, isHidden, isInitialised, isLocked, isTracking, isTrackingEnabled, isValidate, isVisible, paint, paintComponent, preparePaint, removeAttribute, removeComponentModel, removeHtmlClass, removeHtmlClass, removeNotify, replaceWComponent, reset, serviceRequest, setAccessibleText, setAttribute, setEnvironment, setFlag, setFocussed, setHidden, setHtmlClass, setHtmlClass, setIdName, setInitialised, setLocked, setTag, setToolTip, setTrackingEnabled, setValidate, setVisible, showErrorIndicators, showErrorIndicatorsForComponent, showWarningIndicators, showWarningIndicatorsForComponent, tidyUpUIContext, tidyUpUIContextForTree, toString, validate, validateComponent, writeReplace
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.github.bordertech.wcomponents.WComponent
addHtmlClass, addHtmlClass, forward, getAccessibleText, getAttribute, getBaseUrl, getEnvironment, getHeaders, getHtmlClass, getHtmlClasses, getId, getIdName, getInternalId, getLabel, getName, getParent, getTabIndex, getTag, getToolTip, hasTabIndex, invokeLater, isDefaultState, isHidden, isInitialised, isLocked, isTracking, isTrackingEnabled, isValidate, isVisible, paint, preparePaint, removeAttribute, removeHtmlClass, removeHtmlClass, reset, serviceRequest, setAccessibleText, setAttribute, setEnvironment, setFocussed, setHtmlClass, setHtmlClass, setIdName, setInitialised, setLocked, setTag, setToolTip, setTrackingEnabled, setValidate, setVisible, showErrorIndicators, showWarningIndicators, tidyUpUIContextForTree, validate
-
-
-
-
Constructor Detail
-
WTableRowRenderer
protected WTableRowRenderer(WTable table)
Creates a WTableRowRenderer.- Parameters:
table
- the table that this renderer belongs to.
-
-
Method Detail
-
getRenderer
public WComponent getRenderer(int columnIndex)
Retrieves the component that is used to render the given column.- Parameters:
columnIndex
- the column index.- Returns:
- the component used to render the given column.
-
getTable
public WTable getTable()
- Returns:
- the table that this row renderer belongs to.
-
preparePaintComponent
protected void preparePaintComponent(Request request)
The preparePaintComponent method has been overridden to ensure that expanded row renderers have been correctly initialised.
Expanded row renderers are lazily instantiated and added to the shared structure as needed. This means for the first use of a renderer, it will not have been part of the WComponent tree, and would not have had its preparePaintComponent called. We therefore add the renderer to the tree here, and manually call its preparePaint.
- Overrides:
preparePaintComponent
in classWDataRenderer
- Parameters:
request
- the Request being responded to.
-
getExpandedTreeNodeRenderer
public WComponent getExpandedTreeNodeRenderer(Class<? extends WComponent> rendererClass)
This is called to lazily add expanded renderers as necessary. To save memory, only one instance of a renderer class is ever added to the row renderer instance. The RendererWrapper ensures that data binding occurs at the right time.
- Parameters:
rendererClass
- the renderer class.- Returns:
- the expanded renderer for the given row.
-
getCurrentRowIdWrapper
public WTable.RowIdWrapper getCurrentRowIdWrapper()
Retrieve the currentWTable.RowIdWrapper
.Intended for internal use only.
- Returns:
- the current row id wrapper, or null if not found
-
-