org.apache.tapestry.components
Class RenderBlock
java.lang.Object
org.apache.tapestry.spec.BaseLocatable
org.apache.tapestry.AbstractComponent
org.apache.tapestry.components.RenderBlock
- All Implemented Interfaces:
- IComponent, ILocatable, ILocationHolder, IRender
public abstract class RenderBlock
- extends AbstractComponent
Renders the text and components wrapped by a Block component.
[Component Reference]
It is possible for an RenderBlock to obtain a Block
from a page other than the render page. This works, even when
the Block contains links, forms and form components. The action and
direct services will create URLs that properly address this situation.
However, because the rendering page can't know
ahead of time about these foriegn Blocks,
PageRenderListener methods
(for components and objects of the foriegn page)
via RenderBlock will not be executed. This specifically
affects the methods of the PageRenderListener
interface.
Before rendering its Block, RenderBlock will set itself as the
Block's inserter, and will reset the inserter after the Block is
rendered. This gives the components contained in the Block access
to its inserted environment via the RenderBlock. In particular this allows
the contained components to access the informal parameters of the RenderBlock
which effectively allows parameters to be passed to the components contained
in a Block.
- Version:
- $Id: RenderBlock.java 243791 2004-02-19 17:38:13Z hlship $
- Author:
- Howard Lewis Ship
| Methods inherited from class org.apache.tapestry.AbstractComponent |
addAsset, addBody, addComponent, cleanupAfterRender, finishLoad, finishLoad, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, fireObservedChange, format, format, format, format, formatString, formatString, formatString, formatString, generateAttributes, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getBody, getBodyCount, getChangeObserver, getComponent, getComponents, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, getString, pageEndRender, prepareForRender, render, renderBody, renderInformalParameters, setBinding, setContainer, setId, setNamespace, setPage, setProperty, setSpecification, toString |
RenderBlock
public RenderBlock()
renderComponent
protected void renderComponent(IMarkupWriter writer,
IRequestCycle cycle)
- If block is not null,
then the block's inserter is set (to this),
IComponent.renderBody(IMarkupWriter, IRequestCycle)
is invoked on it, and the Block's inserter is set back to its previous state.
- Specified by:
renderComponent in class AbstractComponent
getBlock
public abstract Block getBlock()