Class ConfirmAjaxButton

java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.panel.Panel
org.apache.wicket.markup.html.panel.GenericPanel<String>
com.googlecode.wicket.jquery.ui.form.button.ConfirmAjaxButton
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.IGenericComponent<String,org.apache.wicket.markup.html.panel.GenericPanel<String>>, 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 ConfirmAjaxButton extends org.apache.wicket.markup.html.panel.GenericPanel<String>
Provides a AjaxButton which pop-ups an OK-Cancel confirmation dialog when clicked. In case of confirmation, the form is sent via an ajax post.

Note: this component is not an AjaxButton itself but a Panel, it should not be attached to a <button />; it can be attached on a <div /> or a <span /> for instance.

Warning: it is not possible to get a form component value - that is going to be changed - to be displayed in the dialog box message. The reason is that in order to get a form component (updated) model object, the form component should be validated. The dialog does not proceed to a (whole) form validation while being opened, because the form validation will occur when the user will confirm (by clicking on OK button). This the intended behavior.
Author:
Sebastien Briquet - sebfz1
See Also:
  • Field Summary

    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
    ConfirmAjaxButton(String id, String label, String title, String message)
    Constructor
    ConfirmAjaxButton(String id, org.apache.wicket.model.IModel<String> label, org.apache.wicket.model.IModel<String> title, org.apache.wicket.model.IModel<String> message)
    Constructor
  • Method Summary

    Modifier and Type
    Method
    Description
    protected String
    Gets the icon being displayed in the button
    protected AjaxButton
    Gets the new AjaxButton that will open the supplied dialog
    protected AbstractFormDialog<?>
    newDialog(String id, org.apache.wicket.model.IModel<String> title, org.apache.wicket.model.IModel<String> message)
    Creates the dialog instance
    Warning: to be overridden with care!
    protected void
     
    protected abstract void
    onError(org.apache.wicket.ajax.AjaxRequestTarget target)
    Triggered when the form is submitted, but the validation failed
    protected void
     
    protected abstract void
    onSubmit(org.apache.wicket.ajax.AjaxRequestTarget target)
    Triggered when the form is submitted, and the validation succeed

    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, 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, 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, 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 org.apache.wicket.IQueueRegion

    dequeue, newDequeueContext

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator
  • Constructor Details

    • ConfirmAjaxButton

      public ConfirmAjaxButton(String id, String label, String title, String message)
      Constructor
      Parameters:
      id - markup id
      label - the button text
      title - the dialog title
      message - the dialog message
    • ConfirmAjaxButton

      public ConfirmAjaxButton(String id, org.apache.wicket.model.IModel<String> label, org.apache.wicket.model.IModel<String> title, org.apache.wicket.model.IModel<String> message)
      Constructor
      Parameters:
      id - markup id
      label - the button text
      title - the dialog title
      message - the dialog message
  • Method Details

    • onInitialize

      protected void onInitialize()
      Overrides:
      onInitialize in class org.apache.wicket.MarkupContainer
    • onError

      protected abstract void onError(org.apache.wicket.ajax.AjaxRequestTarget target)
      Triggered when the form is submitted, but the validation failed
      Parameters:
      target - the AjaxRequestTarget
    • onSubmit

      protected abstract void onSubmit(org.apache.wicket.ajax.AjaxRequestTarget target)
      Triggered when the form is submitted, and the validation succeed
      Parameters:
      target - the AjaxRequestTarget
    • onDetach

      protected void onDetach()
      Overrides:
      onDetach in class org.apache.wicket.MarkupContainer
    • getIcon

      protected String getIcon()
      Gets the icon being displayed in the button
      Returns:
      the JQueryIcon
    • newDialog

      protected AbstractFormDialog<?> newDialog(String id, org.apache.wicket.model.IModel<String> title, org.apache.wicket.model.IModel<String> message)
      Creates the dialog instance
      Warning: to be overridden with care!
      Parameters:
      id - the markupId
      title - the title of the dialog
      message - the message to be displayed
      Returns:
      the dialog instance
    • newAjaxButton

      protected AjaxButton newAjaxButton(String id, AbstractDialog<?> dialog)
      Gets the new AjaxButton that will open the supplied dialog
      Parameters:
      id - the markupId
      dialog - the AbstractDialog
      Returns:
      the new AjaxButton