net.sf.tacos.ajax.components
Class AjaxLinkSubmit

java.lang.Object
  extended by org.apache.hivemind.impl.BaseLocatable
      extended by org.apache.tapestry.AbstractComponent
          extended by org.apache.tapestry.form.AbstractFormComponent
              extended by net.sf.tacos.ajax.components.AbstractSubmit
                  extended by net.sf.tacos.ajax.components.AjaxLinkSubmit
All Implemented Interfaces:
AjaxInvocation, AjaxSubmitInvocation, Locatable, LocationHolder, org.apache.tapestry.form.IFormComponent, org.apache.tapestry.IComponent, org.apache.tapestry.IRender

public abstract class AjaxLinkSubmit
extends AbstractSubmit

Implements a component that submits its enclosing form via a JavaScript link. [ Component Reference ]

Author:
Richard Lewis-Shell

Field Summary
static String ATTRIBUTE_NAME
          The name of an IRequestCycle attribute in which the current submit link is stored.
 
Constructor Summary
AjaxLinkSubmit()
           
 
Method Summary
protected  void cleanupAfterRender(org.apache.tapestry.IRequestCycle cycle)
           
abstract  AjaxDirectService getAjaxEngine()
          Injected ajax service
protected  boolean getCanTakeFocus()
          Links can not take focus, ever.
 String getComponentId()
          The component Id used by script
 String getHiddenId()
          The hidden form field id
protected  boolean getRenderBodyOnRewind()
          Returns true; the LinkSubmit's body should render during a rewind, even if the component is itself disabled.
abstract  org.apache.tapestry.IScript getScript()
          Script for processing client side
abstract  Collection getUpdateComponents()
          Components to update in request
protected  boolean isClicked(org.apache.tapestry.IRequestCycle cycle, String name)
          Checks the submit name to see if it matches this LinkSubmit's assigned element name.
 boolean isDeferred()
          Causes initial event connection to be deferred
protected  void prepareForRender(org.apache.tapestry.IRequestCycle cycle)
           
protected  void renderFormComponent(org.apache.tapestry.IMarkupWriter writer, org.apache.tapestry.IRequestCycle cycle)
           
 
Methods inherited from class net.sf.tacos.ajax.components.AbstractSubmit
constructScriptParameter, getAction, getAjaxLink, getDefer, getEncodingType, getFocusElement, getListener, getListenerInvoker, getParameters, getTag, handleClick, rewindFormComponent, setSelected
 
Methods inherited from class org.apache.tapestry.form.AbstractFormComponent
getAlwaysRenderBodyOnRewind, getForm, getIdParameter, getName, isRequired, renderComponent, renderDelegateAttributes, renderDelegatePrefix, renderDelegateSuffix, renderIdAttribute, setClientId, setForm, setName, setName
 
Methods inherited from class org.apache.tapestry.AbstractComponent
addAsset, addBody, addComponent, checkActiveLock, enterActiveState, finishLoad, finishLoad, format, format, format, format, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getBody, getBodyCount, getComponent, getComponents, getContainedComponent, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, isInActiveState, isParameterBound, isRendering, pageEndRender, render, renderBody, renderInformalParameters, setBinding, setContainedComponent, setContainer, setId, setNamespace, setPage, setProperty, toString
 
Methods inherited from class org.apache.hivemind.impl.BaseLocatable
getLocation, setLocation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.sf.tacos.ajax.AjaxSubmitInvocation
getFunctionName, isClientSideValidationEnabled, isSubmitNormal
 
Methods inherited from interface net.sf.tacos.ajax.AjaxInvocation
getBackLink, getEffects, getForwardLink, getPopup, getPreEffects, getStatusElement, getUpdateObject
 
Methods inherited from interface org.apache.tapestry.form.IFormComponent
getClientId, getDisplayName, isDisabled
 
Methods inherited from interface org.apache.tapestry.IComponent
addAsset, addBody, addComponent, enterActiveState, finishLoad, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getComponent, getComponents, getContainedComponent, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, isRendering, renderBody, setBinding, setContainedComponent, setContainer, setId, setNamespace, setPage, setProperty
 
Methods inherited from interface org.apache.tapestry.IRender
render
 
Methods inherited from interface org.apache.hivemind.LocationHolder
setLocation
 
Methods inherited from interface org.apache.hivemind.Locatable
getLocation
 

Field Detail

ATTRIBUTE_NAME

public static final String ATTRIBUTE_NAME
The name of an IRequestCycle attribute in which the current submit link is stored. LinkSubmits do not nest.

See Also:
Constant Field Values
Constructor Detail

AjaxLinkSubmit

public AjaxLinkSubmit()
Method Detail

getUpdateComponents

public abstract Collection getUpdateComponents()
Components to update in request


isClicked

protected boolean isClicked(org.apache.tapestry.IRequestCycle cycle,
                            String name)
Checks the submit name to see if it matches this LinkSubmit's assigned element name.

Specified by:
isClicked in class AbstractSubmit
Returns:
true if this submit was clicked

getScript

public abstract org.apache.tapestry.IScript getScript()
Script for processing client side

Returns:

getAjaxEngine

public abstract AjaxDirectService getAjaxEngine()
Injected ajax service


renderFormComponent

protected void renderFormComponent(org.apache.tapestry.IMarkupWriter writer,
                                   org.apache.tapestry.IRequestCycle cycle)
Specified by:
renderFormComponent in class org.apache.tapestry.form.AbstractFormComponent
See Also:
AbstractFormComponent.renderFormComponent(org.apache.tapestry.IMarkupWriter, org.apache.tapestry.IRequestCycle)

getComponentId

public String getComponentId()
The component Id used by script

Returns:
component Id

getHiddenId

public String getHiddenId()
The hidden form field id

Returns:
hidden id

isDeferred

public boolean isDeferred()
Causes initial event connection to be deferred

Returns:
deferred

prepareForRender

protected void prepareForRender(org.apache.tapestry.IRequestCycle cycle)
Overrides:
prepareForRender in class org.apache.tapestry.AbstractComponent
See Also:
AbstractComponent.prepareForRender(org.apache.tapestry.IRequestCycle)

cleanupAfterRender

protected void cleanupAfterRender(org.apache.tapestry.IRequestCycle cycle)
Overrides:
cleanupAfterRender in class org.apache.tapestry.AbstractComponent
See Also:
AbstractComponent.cleanupAfterRender(org.apache.tapestry.IRequestCycle)

getCanTakeFocus

protected boolean getCanTakeFocus()
Links can not take focus, ever.

Overrides:
getCanTakeFocus in class org.apache.tapestry.form.AbstractFormComponent

getRenderBodyOnRewind

protected boolean getRenderBodyOnRewind()
Returns true; the LinkSubmit's body should render during a rewind, even if the component is itself disabled.