Templating"

From Documentation
m (Created page with '{{ZKDevelopersReferencePageHeader}} {{ZKDevelopersReferenceHeadingToc}} {{ZKDevelopersReferencePageFooter}}')
 
m
Line 1: Line 1:
 
{{ZKDevelopersReferencePageHeader}}
 
{{ZKDevelopersReferencePageHeader}}
 +
 +
Templating is a technique that allows developers to define UI fragments, and how to assemble them into a complete UI at runtime. With ZK, it can be done by use of annotations and composer (or initators, <javadoc type="interface">org.zkoss.zk.ui.utilInitiator</javadoc>).
 +
 +
The basic idea is to specify the name of a fragment as [[ZK Developer's Reference/Annotations|annotations]] in a ZUML document that shall represent a complete UI, and a composer that is capable to parse annotations and replace them with the fragment. For example,
 +
 +
<source lang="xml">
 +
<div apply="foo.MyTemplateManager">
 +
    <include src="@{header}"/><!-- you could use any component as long as your manager knows how to handle it -->
 +
    <include src="@{content}"/>
 +
    <include src="@{footer}"/>
 +
</div>
 +
</source>
 +
 +
Here is the implementation that ZK supports by default. You could implement your own, if it does not fulfill your requirement.
 +
 
{{ZKDevelopersReferenceHeadingToc}}
 
{{ZKDevelopersReferenceHeadingToc}}
 
{{ZKDevelopersReferencePageFooter}}
 
{{ZKDevelopersReferencePageFooter}}

Revision as of 04:26, 10 January 2011

Templating is a technique that allows developers to define UI fragments, and how to assemble them into a complete UI at runtime. With ZK, it can be done by use of annotations and composer (or initators, Initiator).

The basic idea is to specify the name of a fragment as annotations in a ZUML document that shall represent a complete UI, and a composer that is capable to parse annotations and replace them with the fragment. For example,

<div apply="foo.MyTemplateManager">
    <include src="@{header}"/><!-- you could use any component as long as your manager knows how to handle it -->
    <include src="@{content}"/>
    <include src="@{footer}"/>
</div>

Here is the implementation that ZK supports by default. You could implement your own, if it does not fulfill your requirement.


Subsections:



Last Update : 2011/01/10

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.