Class ColumnTileTable<O extends ColumnValueProvider<PV>,PV extends Serializable>
java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.panel.Panel
com.evolveum.midpoint.gui.api.component.BasePanel<O>
com.evolveum.midpoint.gui.impl.component.tile.TileTablePanel<ColumnTile<O,PV>,O>
com.evolveum.midpoint.gui.impl.component.tile.column.ColumnTileTable<O,PV>
- Type Parameters:
O- primary row object typePV- delegated value type rendered by columns
- All Implemented Interfaces:
Serializable,Iterable<org.apache.wicket.Component>,org.apache.wicket.event.IEventSink,org.apache.wicket.event.IEventSource,org.apache.wicket.feedback.IFeedbackContributor,org.apache.wicket.IConverterLocator,org.apache.wicket.IMetadataContext<Serializable,,org.apache.wicket.Component> org.apache.wicket.IQueueRegion,org.apache.wicket.markup.html.IHeaderContributor,org.apache.wicket.request.component.IRequestableComponent,org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>,org.apache.wicket.util.io.IClusterable
public abstract class ColumnTileTable<O extends ColumnValueProvider<PV>,PV extends Serializable>
extends TileTablePanel<ColumnTile<O,PV>,O>
Column-based tile table that separates:
- O - the primary row object handled by the table, selection, paging and actions
- PV - the delegated value rendered by reusable Wicket columns
The primary row object must implement ColumnValueProvider, which provides
the delegated value used when rendering tile columns.
- See Also:
-
Field Summary
Fields inherited from class com.evolveum.midpoint.gui.impl.component.tile.TileTablePanel
ID_TABLE, ID_TILE, ID_TILES, ID_TILES_FRAGMENTFields inherited from class org.apache.wicket.markup.html.panel.Panel
PANELFields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING, RFLAG_CONTAINER_HAS_REMOVALS -
Constructor Summary
ConstructorsConstructorDescriptionColumnTileTable(String id, org.apache.wicket.model.IModel<ViewToggle> viewToggle, UserProfileStorage.TableId tableId, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<PV, String>>> columnsModel) -
Method Summary
Modifier and TypeMethodDescription<T> voidapplyDefaultRowCss(@NotNull org.apache.wicket.Component tile, O value, @NotNull String baseCss, @NotNull SerializableFunction<O, @Nullable StatusInfo<T>> getStatusInfoFn) protected InlineMenuItemprotected InlineMenuItemprotected org.apache.wicket.markup.html.panel.FragmentcreateLinkStyleActionsColumn(@NotNull PageBase pageBase, @NotNull List<InlineMenuItem> allItems) protected @NotNull AjaxIconButtoncreateNewObjectPerformButton(String idButton) protected List<org.apache.wicket.Component>protected org.apache.wicket.model.IModel<Search>protected org.apache.wicket.ComponentcreateTile(String id, @NotNull org.apache.wicket.model.IModel<ColumnTile<O, PV>> model) protected ColumnTile<O,PV> createTileObject(O object) protected org.apache.wicket.Componentprotected List<org.apache.wicket.Component>createToolbarButtonsList(String idButton) protected voidcustomizeTileItemCss(org.apache.wicket.Component tile, @NotNull ColumnTile<O, PV> item) protected org.apache.wicket.model.StringResourceModeldeleteConfirmationTitle(int selectedCount, int allCount) voiddeleteItemPerformed(org.apache.wicket.ajax.AjaxRequestTarget target, List<O> toDelete) protected voiddeleteItemPerformed(PV value) booleanDetermines whether the panel should display a special UI component (e.g.voideditItemPerformed(org.apache.wicket.ajax.AjaxRequestTarget target, org.apache.wicket.model.IModel<O> rowModel) protected OfindRowObject(PV columnValue) org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<PV,String>>> @NotNull InlineMenuItem.VisibilityCheckerprotected <R extends Serializable>
@NotNull StringgetInlineMenuItemCssClass(org.apache.wicket.model.IModel<R> rowModel) @NotNull List<InlineMenuItem>protected Stringprotected org.apache.wicket.model.StringResourceModel@Nullable StatusInfo<?>getStatusInfo(PV value) @Nullable StatusInfo<?>getStatusInfoFromObject(O value) protected Stringprotected Stringprotected Stringprotected voidinitPanelToolbarButtons(@NotNull org.apache.wicket.markup.repeater.RepeatingView toolbar) protected booleanprotected booleanprotected booleanprotected static <O extends Serializable>
booleanisObjectSelected(O modelObject) protected booleanprotected booleanbooleanisValidFormComponents(@Nullable org.apache.wicket.ajax.AjaxRequestTarget target) protected booleannoSelectedItemsWarn(PageBase pageBase, org.apache.wicket.ajax.AjaxRequestTarget target, List<O> toDelete) protected voidonCreateNewObjectPerform(org.apache.wicket.ajax.AjaxRequestTarget target) voidrefreshAndDetach(org.apache.wicket.ajax.AjaxRequestTarget target) protected static <O extends Serializable>
voidsetColumnTileSelected(O modelObject, boolean selected) voidsetDefaultPagingSize(Integer pageItemSize) Methods inherited from class com.evolveum.midpoint.gui.impl.component.tile.TileTablePanel
adjustPagingIfEmpty, adjustPagingIfEmpty, createColumns, createHeader, createHeaderContainer, createPanelForNoValue, createProvider, createTableButtonToolbar, createTablePanel, createTilesButtonToolbar, createTilesContainer, createTilesPanel, getAdditionalBoxCssClasses, getAdditionalFooterCss, getAdditionalHeaderContainerCssClasses, getAdditionalTableCssClasses, getAllItems, getBoxedTablePanelComponent, getCurrentPageItems, getCurrentPageItems, getHeaderFragmentVisibility, getNoValuePanelAdditionalCssClass, getProvider, getSearchModel, getTableId, getTileRole, getTiles, getTilesContainerAdditionalClass, getTilesContainerRole, getTilesFooterCssClasses, getTilesHeaderCssClasses, getTilesModel, getTilesNavigation, getTileTableComponent, getViewToggleModel, initHeaderFragment, initTable, isHeaderPanelHeaderVisible, isNavigatorPanelVisible, isTableVisible, isTileViewVisible, isTogglePanelVisible, navigateToLastPage, onInitialize, refresh, setCurrentPage, showFooter, togglePanelItemSelectPerformed, updateTileViewMethods inherited from class com.evolveum.midpoint.gui.api.component.BasePanel
createComponentPath, createModel, createStringResource, createStringResource, createStringResource, createStringResource, createStringResource, createStringResource, createStringResource, getBrowserTabSessionStorage, getFeedbackPanel, getMidpointConfiguration, getModel, getModelObject, getPageBase, getParentPage, getPrismContext, getRegistry, getSchemaService, getSession, getSessionStorage, getString, getString, getSubscriptionState, getWebApplicationConfiguration, showResultMethods inherited from class org.apache.wicket.markup.html.panel.Panel
getRegionMarkup, newMarkupSourcingStrategyMethods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSessionMethods inherited from class org.apache.wicket.MarkupContainer
add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onComponentTagBody, onDetach, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildrenMethods inherited from class org.apache.wicket.Component
add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMarkupTag, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnModelChanged, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onBeforeRender, onComponentTag, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.wicket.IQueueRegion
dequeue, newDequeueContextMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
ColumnTileTable
public ColumnTileTable(String id, org.apache.wicket.model.IModel<ViewToggle> viewToggle, UserProfileStorage.TableId tableId, org.apache.wicket.model.IModel<List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<PV, String>>> columnsModel)
-
-
Method Details
-
customizeTileItemCss
protected void customizeTileItemCss(org.apache.wicket.Component tile, @NotNull @NotNull ColumnTile<O, PV> item) - Overrides:
customizeTileItemCssin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
createHeaderFragment
- Overrides:
createHeaderFragmentin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
isObjectSelected
-
setColumnTileSelected
protected static <O extends Serializable> void setColumnTileSelected(O modelObject, boolean selected) -
createTile
protected org.apache.wicket.Component createTile(String id, @NotNull @NotNull org.apache.wicket.model.IModel<ColumnTile<O, PV>> model) - Overrides:
createTilein classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
createTileObject
- Overrides:
createTileObjectin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
getColumnsModel
-
getDefaultColumns
-
createLinkStyleActionsColumn
@Nullable public @Nullable org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<PV,String> createLinkStyleActionsColumn(@NotNull @NotNull PageBase pageBase, @NotNull @NotNull List<InlineMenuItem> allItems) -
getInlineMenuItemCssClass
@NotNull protected <R extends Serializable> @NotNull String getInlineMenuItemCssClass(org.apache.wicket.model.IModel<R> rowModel) -
isCheckboxSelectionEnabled
protected boolean isCheckboxSelectionEnabled() -
isActionsColumnEnabled
protected boolean isActionsColumnEnabled() -
getTileCssStyle
- Overrides:
getTileCssStylein classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
getTileCssClasses
- Overrides:
getTileCssClassesin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
getTileContainerCssClass
- Overrides:
getTileContainerCssClassin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
getInlineMenuItems
-
getDefaultMenuActions
-
createDeleteItemMenu
-
getDefaultMenuVisibilityChecker
-
createEditInlineMenu
-
findRowObject
-
editItemPerformed
public void editItemPerformed(org.apache.wicket.ajax.AjaxRequestTarget target, org.apache.wicket.model.IModel<O> rowModel) -
getSelectedContainerItems
-
createDeleteColumnAction
-
deleteItemPerformed
-
deleteItemPerformed
-
isValidFormComponents
public boolean isValidFormComponents(@Nullable @Nullable org.apache.wicket.ajax.AjaxRequestTarget target) -
noSelectedItemsWarn
-
refreshAndDetach
public void refreshAndDetach(org.apache.wicket.ajax.AjaxRequestTarget target) -
deleteConfirmationTitle
protected org.apache.wicket.model.StringResourceModel deleteConfirmationTitle(int selectedCount, int allCount) -
getMultiTableModel
-
getStatusInfoFromObject
-
getStatusInfo
-
applyDefaultRowCss
public <T> void applyDefaultRowCss(@NotNull @NotNull org.apache.wicket.Component tile, @NotNull O value, @NotNull @NotNull String baseCss, @NotNull @NotNull SerializableFunction<O, @Nullable StatusInfo<T>> getStatusInfoFn) -
createNewObjectPerformButton
-
getNewObjectButtonCssClass
-
getNewObjectButtonTitle
protected org.apache.wicket.model.StringResourceModel getNewObjectButtonTitle() -
onCreateNewObjectPerform
protected void onCreateNewObjectPerform(org.apache.wicket.ajax.AjaxRequestTarget target) -
createToolbarButtonsList
-
initPanelToolbarButtons
protected void initPanelToolbarButtons(@NotNull @NotNull org.apache.wicket.markup.repeater.RepeatingView toolbar) -
createToolbarButtons
- Overrides:
createToolbarButtonsin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
isToolbarButtonsVisible
protected boolean isToolbarButtonsVisible() -
isPanelToolbarVisible
protected boolean isPanelToolbarVisible() -
isNewObjectCreationEnabled
protected boolean isNewObjectCreationEnabled() -
setDefaultPagingSize
-
createSearchModel
- Overrides:
createSearchModelin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
displayNoValuePanel
public boolean displayNoValuePanel()Description copied from class:TileTablePanelDetermines whether the panel should display a special UI component (e.g.NoValuePanel) when there are no values present in the container.- Overrides:
displayNoValuePanelin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-
createNoValueButtonToolbar
- Overrides:
createNoValueButtonToolbarin classTileTablePanel<ColumnTile<O extends ColumnValueProvider<PV>,PV extends Serializable>, O extends ColumnValueProvider<PV>>
-