New Features of ZK 9.0.0 RC

From Documentation
DocumentationSmall Talks2019NovemberNew Features of ZK 9.0.0 RC
New Features of ZK 9.0.0 RC

Author
Hawk Chen, Engineer, Potix Corporation
Date
2019
Version
ZK 9.0.0


Introduction

"Easy", "Ajax without Javascript" and "Rich Components" are the three top rated ZK values by the community since day one. ZK 9 carries on with the same drive and brings you 20+ new features and components such as Toast, Stepbar, Rangeslider, Drawer, Inputgroup, Anchornav, Linelayout,.. making the development even easier than ever.

ZK 9 requires Java 8 to compile, so please make sure you are with Java SE 8 or later versions. If you are coming from an older version, remember to check out the #Upgrade Notes at the end of the page, and read also the Release Notes.

Download and Demo







Highlighted Features

Upgrade to JDK 8

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

ZK Now Requires Java SE 8 or later

The Java compiler source/target has been updated to Java 8, meaning the Java binary-compatible level is now Java 8 instead of Java 6. Please make sure to use Java 8 or later Java versions.

Support JDK8 Date/Time API

Datebox, Calendar, Timebox and Timepicker components now supports JDK 8 Date/Time API.

Support CSS3 Flex

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

Since ZK 9 you can configure the org.zkoss.zul.css.flex library property to use CSS3 flex implementation for calculating ZK Flex.

New Input Components

Inputgroup

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

With the new ZK Inputgroup component, you can now prepend or append buttons, checkboxes, or radios to your input components to create your custom input. (add picture)

Tristate checkbox

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

Since ZK 8.6 we were able to display a 3rd state -- the indeterminate state of a checkbox. In ZK 9 we are taking one step further allowing users to set the indeterminate state, in addition to the checked and unchecked states.

Rangeslider

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion pe-ee.png

(put picture)

Multislider

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

(put picture)

Searchbox

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

Searchbox is a combobox-like input component. It allows users to select one or more entries in a list; and also allows users to filter the list in order to find the target entry. (add animated picture)

Cascader

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

Cascader is a cascading input control used for multi-level input, such as an address input that allows users to drill-down and select Country > State > City. (add picture)

New Navigation Components

Anchornav

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion pe-ee.png

Anchornav allows you to navigate to desired ZK components in a page and at the same time highlight the current navigation link based on the current scroll position.

Stepbar

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

(add picture)

New Layout Components

Linelayout

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

(add picture)

Drawer

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

(add pic)

Kanban

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

Portal Layout now provides PortalChildren title and frame design, making it extremely easy to create a Kanban-like layout for your application.

(add pic)

More New Components

PDFViewer

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion pe-ee.png

With PDFViewer you can allow users to view PDF documents inside your ZK application without leaving the browser and going to an external application.

Loading bar

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

A modern loading animation under the address bar.

(add animated gif)

Toast

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

Toast is a stackable notification that can be pinned on the screen.

(add pic)

Coachmark

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

(Add pic)

Enhancements

New ZK Less Engine

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

The zkless-engine-maven-plugin has been replaced by the zkless-engine npm module (github). It provides a command line interface (CLI) to significantly reduce the general theme build times and the development turn-around when customizing ZK themes (via incremental watch compiler and live reloading in the browser).

This CLI can invoked directly as and integrated into maven or gradle build, making the former - more limited and slower - maven plugin obsolete.

More details in the README

When upgrading a theme to ZK 9 you'll have to escape ZK specific syntax using the escape (e) function. (here the commit upgrading ZK's default styles)

Upgrade jQuery version

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ce-pe-ee.png

The underlying jQuery version is upgraded to 1.12.4 to include security fixes.

Upgrade Notes

Upgrade Tips

  • The Java binary-compatible level is Java 8 since ZK 9.
  • ZK Databinding 1 is moved to a legacy module "zkplus-legacy".
  • ZK DSP Library is moved to a new module "zweb-dsp".
  • SimpleLocalTimeConstraint is used by default instead of SimpleConstraint in Timebox and Timepicker.
  • It is advised to use Notification.show instead of Clients.showNotification, as the former follows single responsibility principle.
  • Custom Themes based on zkThemeTemplate need to merge the latest changes (see [[New ZK Less Engine

]]).






Comments



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