Class ButtonWithConfirmationOptionsDialog<T extends Describable>

java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.link.AbstractLink
org.apache.wicket.ajax.markup.html.AjaxLink<String>
com.evolveum.midpoint.web.component.AjaxIconButton
com.evolveum.midpoint.web.component.input.ButtonWithConfirmationOptionsDialog<T>
All Implemented Interfaces:
Serializable, Iterable<org.apache.wicket.Component>, org.apache.wicket.ajax.markup.html.IAjaxLink, org.apache.wicket.event.IEventSink, org.apache.wicket.event.IEventSource, org.apache.wicket.feedback.IFeedbackContributor, org.apache.wicket.IConverterLocator, org.apache.wicket.IGenericComponent<String,org.apache.wicket.ajax.markup.html.AjaxLink<String>>, org.apache.wicket.IMetadataContext<Serializable,org.apache.wicket.Component>, 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
Direct Known Subclasses:
BlockingActionButtonWithConfirmationOptionsDialog, SmartSuggestButtonWithConfirmation

public class ButtonWithConfirmationOptionsDialog<T extends Describable> extends AjaxIconButton
A button that opens a confirmation-with-options dialog when clicked and delegates the outcome to a pair of handlers (ButtonWithConfirmationOptionsDialog.ButtonHandlers). When the user confirms the dialog the ButtonWithConfirmationOptionsDialog.ButtonHandlers.confirmHandler() is invoked directly inside the dialog's Ajax callback. This is the right choice when the action is *non-blocking*. For synchronous actions that need an activity indication (e.g. a spinner shown while the action runs), use BlockingActionButtonWithConfirmationOptionsDialog instead.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     
    static final record 
     
  • Field Summary

    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
    ButtonWithConfirmationOptionsDialog(String id, org.apache.wicket.model.IModel<ButtonWithConfirmationOptionsDialog.ButtonConfig<T>> buttonConfig, org.apache.wicket.model.IModel<ButtonWithConfirmationOptionsDialog.ButtonHandlers<T>> clickHandlers)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    onClick(org.apache.wicket.ajax.AjaxRequestTarget target)
     
    void
     
    void
     

    Methods inherited from class com.evolveum.midpoint.web.component.AjaxIconButton

    getTitle, onComponentTag, onComponentTagBody, showTitleAsLabel
    getStatelessHint, newAjaxEventBehavior, updateAjaxAttributes
    disableLink, getBody, setBody

    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, getRegionMarkup, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, 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, getSession, getSizeInBytes, 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, newMarkupSourcingStrategy, onAfterRender, onBeforeRender, 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, 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.IGenericComponent

    getDefaultModel, getDefaultModelObject, getModel, getModelObject, setDefaultModel, setDefaultModelObject, setModel, setModelObject

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Constructor Details

  • Method Details

    • onInitialize

      public void onInitialize()
      Overrides:
      onInitialize in class AjaxIconButton
    • onClick

      public void onClick(org.apache.wicket.ajax.AjaxRequestTarget target)
      Specified by:
      onClick in interface org.apache.wicket.ajax.markup.html.IAjaxLink
      Specified by:
      onClick in class org.apache.wicket.ajax.markup.html.AjaxLink<String>
    • onDetach

      public void onDetach()
      Overrides:
      onDetach in class org.apache.wicket.markup.html.link.AbstractLink