New Features of ZK 5.0.6

From Documentation
DocumentationSmall Talks2011FebruaryNew Features of ZK 5.0.6
New Features of ZK 5.0.6

Author
Timothy Clare, Technology Evangelist, Potix Corporation
Date
February 23, 2010
Version
ZK 5.0.6

ZK 5.0.6 is a maintenance release focusing on fixing bugs and releasing new improved features for ZK components.

Customize effects when showing and hiding a widget

Using ZK 5.0.6 it is now possible to apply client-side actions to widgets which descend from the class HtmlBasedComponent using the action property. This feature enables developers to control actions without the need for JavaScript.

The syntax for actions is as follows:

action="action-name1: effect1; action-name2: effect2"

The following example demonstrates how to set the action of a window to slide down.

<zk>
	<button label="Show a modal window" onClick="wnd.doModal()"/>
	<window id="wnd" title="Modal" border="normal" window="300px"
	 action="show: slideDown" visible="false">
		This is a modal window.
	</window>
</zk>

For more information please refer to the ZK Developer’s Reference, Actions and Effects.

Specify the application's name in zk.xml

ZK 5.0.6 introduces an easier way to specify the name of the application. Previously ZK developers used the method WebApp.setAppName(String). However, it is now possible to set the application’s name in the zk.xml, for example:

<!-- in WEB-INF/zk.xml -->
<preference>
	<name>org.zkoss.zk.ui.WebApp.name</name>
	<value>My Killer Application</value>
</preference>

For more information please refer to the ZK Configuration Reference, org.zkoss.zk.ui.WebApp.name.

The Doublespinner component

A new component name Doublespinner has been introduced in ZK 5.0.6. This component is very similar to the normal spinner component except instead of handing an integer value it will handle a double.

The following is a basic example.

ZKComRef Doublespinner.png

 <window title="Double Spinner" border="normal" width="150px">
     <doublespinner />
 </window>

For more information please look at the ZK Component Reference.

Intercepting document-level key events

If there is no widget which has focus when the application’s user presses a key then ZK will attempt to locate the first root component and forward the event to it. In the following example the div component will receive the onOK event.

<div onOK="doSomething()">
...
</div>

For more information please click here.

Round mold for Textbox, Decimalbox, Intbox, Longbox and Treemodel

Simplified Tree Model

The TreeModel has been simplified with the introduction of the DefaultTreeModel which provides an mutable and sortable tree model for trees which are small enough to be completely loaded into memory. It is then possible to manipulate the tree dynamically, such as adding a node using DefaultTreeNode.add(TreeNode).

For more information please visit ZK Developer's Reference, Tree Model.

Databinding supports GroupsModel with Listbox/Grid

Enable ignoring of wiring for zscript and xel

ZK 5.0.6 now provides the option to turn off wiring of zscript variables and XEL. To do this one is required to specify the following options within zk.xml.

Zscript

<!-- in WEB-INF/zk.xml -->
<library-property>
	<name>org.zkoss.zk.ui.composer.autowire.zscript</name>
	<value>false</value>
</library-property>

XEL

<!-- in WEB-INF/zk.xml -->
	<library-property>
		<name>org.zkoss.zk.ui.composer.autowire.xel</name>
		<value>false</value>
	</library-property>

For more information please refer here for zscript and here for XEL.


I made it easier to disable the wiring of zscript and xel variables: http://books.zkoss.org/wiki/ZK_Configuration_Reference/zk.xml/The_Library_Properties/org.zkoss.zk.ui.composer.autowire.zscript http://books.zkoss.org/wiki/ZK_Configuration_Reference/zk.xml/The_Library_Properties/org.zkoss.zk.ui.composer.autowire.xel

New hflex attribute options, min and span

Generating custom SEO content

Spec: http://books.zkoss.org/wiki/ZK_Configuration_Reference/zk.xml/The_Preferences/org.zkoss.zk.ui.sys.SEORenderer.class


Preference:

org.zkoss.zk.ui.sys.SEORenderer.class Default: none [since 5.0.6] It specifies the class name of the application-specific SEO renderer. A SEO renderer is used to generate application-specific SEO content that will be indexed by the search engine, but not visible to the end users.

Notice that the class must implement SEORenderer. SEORenderer.render(Page, Writer) will be invoked each time the main page of a desktop has been rendered and sent to the client.

Comments



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