Class RoleAnalysisCollapsableTablePanel<T>

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<T>
com.evolveum.midpoint.web.component.data.mining.RoleAnalysisCollapsableTablePanel<T>
All Implemented Interfaces:
Table, 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 class RoleAnalysisCollapsableTablePanel<T> extends BasePanel<T> implements Table

NOTE: This class is experimental and may be removed in the future.

Initializes a collapsible table for displaying items.

When using this class, ensure that specific IDs are used for the collapsible components, as defined in the RoleAnalysisCollapsableTablePanel class. These IDs are required for proper functionality of collapsible elements.

An example of how to utilize this method is provided below:


 Component firstCollapseContainer = cellItem.findParent(Item.class).get(ID_FIRST_COLLAPSABLE_CONTAINER);
 Component secondCollapseContainer = cellItem.findParent(Item.class).get(ID_SECOND_COLLAPSABLE_CONTAINER);

 // Assuming there's a button in the table header with the ID "headerActionButton"
 AjaxButton headerActionButton = new AjaxButton("headerActionButton") {
     @Override
     public void onSubmit(AjaxRequestTarget target) {
         // Your action logic here
         target.appendJavaScript(getCollapseScript(firstCollapseContainer, secondCollapseContainer));
     }
 };
 add(headerActionButton);
 

You can customize components further by overriding the newRowItem method, as shown below:


 @Override
 protected Item<SelectableBean<RoleAnalysisClusterType>> newRowItem(String id, int index,
 IModel<SelectableBean<RoleAnalysisClusterType>> model) {
     // Customization logic here
 }
 
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
    static final String
     
    static final String
     

    Fields inherited from class org.apache.wicket.markup.html.panel.Panel

    PANEL

    Fields 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

    Constructors
    Constructor
    Description
    RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns)
     
    RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns, UserProfileStorage.TableId tableId)
     
    RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns, UserProfileStorage.TableId tableId, boolean isRefreshEnabled)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected org.apache.wicket.markup.html.WebMarkupContainer
     
    protected org.apache.wicket.markup.html.WebMarkupContainer
     
    protected org.apache.wicket.Component
    createHeader(String headerId)
     
    protected org.apache.wicket.markup.repeater.Item<T>
    customizeNewRowItem(org.apache.wicket.markup.repeater.Item<T> item, org.apache.wicket.model.IModel<T> model)
     
    boolean
     
     
    int
     
    static @NotNull String
    getCollapseScript(org.apache.wicket.Component webMarkupContainer, org.apache.wicket.Component hide)
     
    org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable<T,String>
     
    org.apache.wicket.markup.html.WebMarkupContainer
     
    org.apache.wicket.markup.html.WebMarkupContainer
     
    int
     
    protected String
     
     
    protected boolean
     
    boolean
     
    protected boolean
     
    protected org.apache.wicket.markup.repeater.Item<T>
    newRowItem(String id, int index, org.apache.wicket.markup.repeater.Item<T> item, @NotNull org.apache.wicket.model.IModel<T> rowModel)
     
    void
    renderHead(org.apache.wicket.markup.head.IHeaderResponse response)
     
    void
     
    void
    setCurrentPage(long page)
     
    void
     
    void
    setItemsPerPage(int size)
     
    void
    setShowAsCard(boolean showAsCard)
     
    void
    setShowPaging(boolean show)
     

    Methods inherited from class org.apache.wicket.markup.html.panel.Panel

    getRegionMarkup, newMarkupSourcingStrategy

    Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer

    getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession

    Methods 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, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildren

    Methods 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, 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, wrap

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.wicket.IQueueRegion

    dequeue, newDequeueContext

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Field Details

  • Constructor Details

    • RoleAnalysisCollapsableTablePanel

      public RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns)
    • RoleAnalysisCollapsableTablePanel

      public RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns, UserProfileStorage.TableId tableId)
    • RoleAnalysisCollapsableTablePanel

      public RoleAnalysisCollapsableTablePanel(String id, org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider<T,String> provider, List<org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn<T,String>> columns, UserProfileStorage.TableId tableId, boolean isRefreshEnabled)
  • Method Details

    • setShowAsCard

      public void setShowAsCard(boolean showAsCard)
    • renderHead

      public void renderHead(org.apache.wicket.markup.head.IHeaderResponse response)
      Specified by:
      renderHead in interface org.apache.wicket.markup.html.IHeaderContributor
      Overrides:
      renderHead in class org.apache.wicket.Component
    • newRowItem

      protected org.apache.wicket.markup.repeater.Item<T> newRowItem(String id, int index, org.apache.wicket.markup.repeater.Item<T> item, @NotNull @NotNull org.apache.wicket.model.IModel<T> rowModel)
    • getCollapseScript

      @NotNull public static @NotNull String getCollapseScript(org.apache.wicket.Component webMarkupContainer, org.apache.wicket.Component hide)
    • getAdditionalBoxCssClasses

      public String getAdditionalBoxCssClasses()
    • setAdditionalBoxCssClasses

      public void setAdditionalBoxCssClasses(String boxCssClasses)
    • customizeNewRowItem

      protected org.apache.wicket.markup.repeater.Item<T> customizeNewRowItem(org.apache.wicket.markup.repeater.Item<T> item, org.apache.wicket.model.IModel<T> model)
    • getAutoRefreshInterval

      public int getAutoRefreshInterval()
    • isAutoRefreshEnabled

      public boolean isAutoRefreshEnabled()
    • hideFooterIfSinglePage

      protected boolean hideFooterIfSinglePage()
    • getDataTable

      public org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable<T,String> getDataTable()
      Specified by:
      getDataTable in interface Table
    • getTableId

      public UserProfileStorage.TableId getTableId()
      Specified by:
      getTableId in interface Table
    • enableSavePageSize

      public boolean enableSavePageSize()
      Specified by:
      enableSavePageSize in interface Table
    • setItemsPerPage

      public void setItemsPerPage(int size)
      Specified by:
      setItemsPerPage in interface Table
    • getItemsPerPage

      public int getItemsPerPage()
      Specified by:
      getItemsPerPage in interface Table
    • setShowPaging

      public void setShowPaging(boolean show)
      Specified by:
      setShowPaging in interface Table
    • getHeader

      public org.apache.wicket.markup.html.WebMarkupContainer getHeader()
    • getFooter

      public org.apache.wicket.markup.html.WebMarkupContainer getFooter()
    • createHeader

      protected org.apache.wicket.Component createHeader(String headerId)
    • createFooter

      protected org.apache.wicket.markup.html.WebMarkupContainer createFooter()
    • isPagingVisible

      protected boolean isPagingVisible()
    • getPaginationCssClass

      protected String getPaginationCssClass()
    • setCurrentPage

      public void setCurrentPage(ObjectPaging paging)
      Specified by:
      setCurrentPage in interface Table
    • setCurrentPage

      public void setCurrentPage(long page)
      Specified by:
      setCurrentPage in interface Table
    • createButtonToolbar

      protected org.apache.wicket.markup.html.WebMarkupContainer createButtonToolbar(String id)