public interface CollectionLayoutManager extends LayoutManager
Unlike other group instances, collection group instances need to generate new instances of the configured components for each line of the collection. The field instances for each line are wrapped differently depending on what layout manager is being applied. Therefore as the collection lines are being built (during the applyModel phase) this method will be invoked on the manager so that it may setup the line as needed.
CollectionGroupBuilder
Modifier and Type | Method and Description |
---|---|
void |
buildLine(LineBuilderContext lineBuilderContext)
Call to the layout manager to build the components necessary for the given collection line,
within an active view lifecycle.
|
Group |
getAddLineGroup()
Group for rendering the add line when separate (always the case for stacked layout, and a configuration
for table layout).
|
Pager |
getPagerWidget()
Widget used to page the collection.
|
Field |
getSelectFieldPrototype()
Field instance that serves as a prototype for creating the select field on each line when
CollectionGroup.isIncludeLineSelectionField() is
true. |
FieldGroup |
getSubCollectionFieldGroupPrototype()
Field group instance that is used as a prototype for creating the sub-collection field groups.
|
void |
processPagingRequest(Object model,
CollectionGroup collectionGroup)
Invoked when a paging request occurs to carry out the paging request.
|
void |
setAddLineGroup(Group addLineGroup) |
void |
setPagerWidget(Pager pagerWidget) |
void |
setSelectFieldPrototype(Field selectFieldPrototype) |
void |
setSubCollectionFieldGroupPrototype(FieldGroup subCollectionFieldGroupPrototype) |
addStyleClass, appendToStyle, getAdditionalCssClasses, getCssClasses, getLibraryCssClasses, getPropertyReplacers, getStyle, getSupportedContainer, getTemplate, getTemplateName, setAdditionalCssClasses, setCssClasses, setLibraryCssClasses, setPropertyReplacers, setStyle, setTemplate, setTemplateName
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode
checkMutable, getContainerIdSuffix, getContext, getId, getPhasePathMapping, getViewPath, getViewStatus, isFinal, isInitialized, isModelApplied, isMutable, isRender, notifyCompleted, performApplyModel, performFinalize, performInitialization, pushAllToContext, pushObjectToContext, setContainerIdSuffix, setContext, setId, setPhasePathMapping, setRender, setViewPath, setViewStatus, skipLifecycle
void buildLine(LineBuilderContext lineBuilderContext)
As the collection is being iterated over by the CollectionGroupLineBuilder
this method is invoked for each line. The builder will create copies of the configured fields and actions for
the line and pass into the layout manager so they can be assembled
lineBuilderContext
- context for the line to be builtvoid processPagingRequest(Object model, CollectionGroup collectionGroup)
model
- object containing the view's datacollectionGroup
- collection group the request was made forGroup getAddLineGroup()
This group can be used to configure how the add line will be rendered. For example the layout
manager configured on the group will be used to rendered the add line fields. If the header
(title) is not set on the group, it will be set from
CollectionGroup.getAddLabel()
. In addition,
CollectionGroup.getAddLineActions()
will be added
to the group footer items.
void setAddLineGroup(Group addLineGroup)
getAddLineGroup()
FieldGroup getSubCollectionFieldGroupPrototype()
void setSubCollectionFieldGroupPrototype(FieldGroup subCollectionFieldGroupPrototype)
getSubCollectionFieldGroupPrototype()
Field getSelectFieldPrototype()
CollectionGroup.isIncludeLineSelectionField()
is
true.
This prototype can be used to set the control used for the select field (generally will be a
checkbox control) in addition to styling and other setting. The binding path will be formed
with using the
CollectionGroup.getLineSelectPropertyName()
or if
not set the framework will use
UifFormBase.getSelectedCollectionLines()
void setSelectFieldPrototype(Field selectFieldPrototype)
getSelectFieldPrototype()
Pager getPagerWidget()
The settings in this widget are only used by TableLayoutManagers which DO NOT take advantage of the RichTable option (this has its own paging implementation). To turn off RichTable and use a basic table with server paging set richTable.render="false" and useServerPaging="true" on the CollectionGroup which uses this layout manager.
void setPagerWidget(Pager pagerWidget)
getPagerWidget()
Copyright © 2005–2016 The Kuali Foundation. All rights reserved.