New Features of ZK 8.6.0"

From Documentation
m (correct highlight (via JWB))
 
(120 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{Template:Smalltalk_Author|
 
{{Template:Smalltalk_Author|
 
|author=Hawk Chen, Engineer, Potix Corporation
 
|author=Hawk Chen, Engineer, Potix Corporation
|date=2018
+
|date=Nov. 7, 2018
 
|version=ZK 8.6.0}}
 
|version=ZK 8.6.0}}
  
Line 8: Line 8:
  
 
= Introduction =
 
= Introduction =
 +
Having rich and user-friendly components has been one of the main reasons that developers love ZK. Now, with the release of the 8.6 version, we aim at creating more integrated and modernernized features that excite your users. You will come across enhanced multimedia and input widgets such as video clips, image cropper, toggle switch, signature and slider knob.
  
 +
Expect a better look and feel of different applications with improved efficiency. With Iceblue Compact, you can upgrade your ZK 8 or older ZK application to a brand new refreshing look and feel without any code change!
  
Highlighted features:
+
Highlights:
 +
* Breeze-compatible Compact Theme
 +
* 10+ New Components and Molds
  
* ???
+
View [https://www.zkoss.org/product/zk/releasenote/8.6.0.1 Release Notes].
* ???
 
  
 
== Download and Demo ==
 
== Download and Demo ==
 
 
<br />
 
<br />
 
 
 
<div style="float: left;"><imagelink link="http://www.zkoss.org/download/zk" image="/_w/images/0/00/Download-zk-7.png" /></div>
 
<div style="float: left;"><imagelink link="http://www.zkoss.org/download/zk" image="/_w/images/0/00/Download-zk-7.png" /></div>
 
<div style="float: left"><imagelink link="http://www.zkoss.org/zkdemo/" image="/_w/images/6/68/Demo-zk-7.png" /></div>
 
<div style="float: left"><imagelink link="http://www.zkoss.org/zkdemo/" image="/_w/images/6/68/Demo-zk-7.png" /></div>
 
 
<br />
 
<br />
 
<br />
 
<br />
 
+
<br />
 
+
<br />
 +
<br />
 
<div style="height:70px; border-radius:5px;font-family: 'Didact Gothic', sans-serif; text-align:center; padding:5px; background-color: #0093f9;">
 
<div style="height:70px; border-radius:5px;font-family: 'Didact Gothic', sans-serif; text-align:center; padding:5px; background-color: #0093f9;">
 
<h1 style="margin: 5px;padding-bottom: 15px;border:2px dashed #F7EEEE;color:#fff;">Highlighted Features</h1>
 
<h1 style="margin: 5px;padding-bottom: 15px;border:2px dashed #F7EEEE;color:#fff;">Highlighted Features</h1>
 
</div>
 
</div>
  
= New Theme - Iceblue Compact =
+
= Refresh Theme without Code Change - Compact Theme =
 +
The new default Iceblue theme from 8.5 has brought you with a refreshed, ultra-modern look and feel. For users upgrading from an older version, Iceblue Compact is now available in 8.6 bringing you a same refreshed modern look and feel, along with breeze-compatible font size, paddings, and margins. Yes, this means zero code upgrade!
 +
 
 +
For theme-pack theme users, all 24 [https://www.zkoss.org/product/zkthemepack theme pack] themes have their corresponding compact theme. To apply a theme, just include the theme pack jar and specify the compact theme name, for example:
 +
 
 +
<source lang='xml'>
 +
<library-property>
 +
    <name>org.zkoss.theme.preferred</name>
 +
    <value>iceblue_c</value>
 +
</library-property>
 +
</source>
 +
 
 +
* Each compact theme is named after the original theme name appended with "_c". For example, iceblue_c is the compact version of iceblue theme. iceblue_c is by default included in the CE binary; if you use maven, it is available in [https://mavensync.zkoss.org/maven2/org/zkoss/theme/iceblue_c/ this repo folder].
 +
 
 +
[[Image:compact-theme.png | center | 900px]]
 +
 
 +
Please check them out at [https://www.zkoss.org/zkthemepackdemo/ Theme Demo]
 +
 
 +
= [[ZK_Component_Reference/Input/Checkbox#Mold| iOS Style Switch and Toggle]] =
 +
<!-- http://tracker.zkoss.org/browse/ZK-3958 -->
 
{{ZK All}}
 
{{ZK All}}
 +
Checkbox now supports 2 new molds: switch mold and toggle mold.
 +
 +
[[File:Toggle_Switch.png | center]]
  
= New Skin of Checkbox =
+
= [[ZK_Component_Reference/Input/Checkbox#Indeterminate| Tri-state Checkbox]] =
<!-- http://tracker.zkoss.org/browse/ZK-3958 -->
+
<!-- http://tracker.zkoss.org/browse/ZK-136 -->
 +
{{ZK All}}
 +
In addition to Checked and Unchecked, the Checkbox component now supports indeterminate states.
 +
[[File:checkbox-3states.png | center]]
 +
 
 +
= [[ZK%20Component%20Reference/Essential%20Components/Rating| Give Me a Rating]] =
 +
<!-- http://tracker.zkoss.org/browse/ZK-3960 -->
 +
{{ZK All}}
 +
 
 +
The Rating component allows users to click an icon and rate. It also has read-only and disabled states for presenting rated scores.
 +
 
 +
[[File:Rating.png | center]]
  
= Guide Users with Popup Menuitem =
+
= [[ZK%20Component%20Reference/Essential%20Components/Toolbar| Toolbar Accommodates More Buttons]] =
 +
<!-- http://tracker.zkoss.org/browse/ZK-3179 -->
 
{{ZK All}}
 
{{ZK All}}
 +
When you set <code>overflowPopup="true"</code>, a toolbar will display ellipsis (<code>...</code>) on the right. When hovering over the ellipsis, it will display a popup which contains additional selections that aren’t present on the toolbar.
 +
 +
[[File:Toolbar-overflowPopup.gif | center]]
 +
 +
= [https://github.com/zkoss/zk-mvvm-book/blob/8.0/advanced/using_navigationmodel.md Page Navigation Model]=
 +
<!-- http://tracker.zkoss.org/browse/ZK-4028 -->
 +
{{ZK EE}}
  
= Play a Video =
+
With the help of [http://www.zkoss.org/javadoc/latest/zk/org/zkoss/zuti/zul/NavigationModel.html NavigationModel] and <code><apply></code>, you can now construct a multi-level page navigation mechanism and navigate among those pages by loading the template.
  
= Organigram =  
+
= [[ZK%20Component%20Reference/Layouts/GoldenLayout| Multi-Screen Layout - Goldenlayout]] =  
 +
<!-- http://tracker.zkoss.org/browse/ZK-3954 -->
 +
{{ZK EE}}
  
= Sigature =  
+
GoldenLayout is a multi-layout, which displays panels as a docker type. You are able to drag a panel to dock at 4 regions (north, east, south, west) or to stack on another panel. This component is suitable and provides for a workspace-like interface.
<!-- http://tracker.zkoss.org/browse/ZK-3959 -->
+
 
 +
[[File:goldenlayout.gif | center]]
 +
 
 +
= [[ZK_Component_Reference/Input/Slider| Slider Knob]] =
 +
<!-- http://tracker.zkoss.org/browse/ZK-3961 -->
 +
{{ZK EE}}
 +
Set the <code>mold</code> attribute as <code>knob</code> on the Slider component to enable the slider knob. The slider then acts like a knob presenting the values. The knob can be controlled by dragging the wheel, clicking the mouse and entering a value within the center of the textbox.
 +
 
 +
[[File:knob-slider.gif | center]]
 +
 
 +
= [[ZK_Component_Reference/Multimedia_and_Miscellaneous/Camera| Take a photo - Camera]] =  
 +
<!-- http://tracker.zkoss.org/browse/ZK-3930 -->
 +
{{ZK EE}}
 +
[[File: Camera.png | center]]
 +
You can now include the Camera component in your app to allow users taking snapshots. Note that the camera has to be accessible by the browser.
 +
 
 +
= [[ZK_Component_Reference/Multimedia_and_Miscellaneous/Camera|Record a Clip]] =
 +
{{ZK EE}}
 +
The Camera component can also record a video clip. It also allows you to preview and upload recorded file.
  
= Rating =
+
= [[ZK_Component_Reference/Multimedia_and_Miscellaneous/Video|Video Player]] =
<!-- http://tracker.zkoss.org/browse/ZK-3960 -->
+
{{ZK EE}}
 +
The Video component allows you to play videos in your browser. With this component, you can even build your own youtube or develop an online tutorial.
  
= Knob like Slider =
+
[[Image:video-player.gif | center]]
<!-- http://tracker.zkoss.org/browse/ZK-3961 -->
 
  
= Crop a Uploaded Image =  
+
= [[ZK%20Component%20Reference/Multimedia%20and%20Miscellaneous/Cropper| Crop an Uploaded Image - Cropper]] =  
 
<!-- http://tracker.zkoss.org/browse/ZK-3962 -->
 
<!-- http://tracker.zkoss.org/browse/ZK-3962 -->
 +
{{ZK EE}}
 +
 +
This component allows users to crop the selected range of an image. The developer can also process the cropped image further, such as showing the cropped image on a page.
 +
 +
[[File:cropper.png | center]]
  
 +
= [[ZK%20Component%20Reference/Layouts/Organigram| Show Your Organization - Organigram]] =
 +
{{ZK EE}}
 +
This component can render a structured diagram with a <code>TreeModel</code>.
  
= Toolbar Now can Accommodate More Buttons in the Same Size =
+
[[Image:organigram.gif | center]]
  
<!-- http://tracker.zkoss.org/browse/ZK-3179 -->
+
= [[ZK%20Component%20Reference/Input/Signature| Sign Here, Please - Signature Component]] =
= Page Navigation Helper=
+
<!-- http://tracker.zkoss.org/browse/ZK-3959 -->
<!-- http://tracker.zkoss.org/browse/ZK-4028 -->
+
{{ZK EE}}
 +
The [[ZK_Component_Reference/Input/Signature| Signature]] component supports the signature pad on both the desktop and mobile browser. Developers can select the pen size, color, background, etc; while end users can save, undo, or clear their signatures.
 +
[[File:sinature.gif | center]]
 +
 
 +
= [[ZK%20Component%20Reference/Multimedia%20and%20Miscellaneous/Barcode| Display a Barcode]] =
 +
{{ZK EE}}
 +
 
 +
A barcode component generates the barcode at the browser, and decodes it at the server side. It supports QR Code and 18 1D barcode types.
  
 +
[[Image:qrcode.png | center]]
 +
<source lang="xml" >
 +
<barcode type="qr" value="https://www.zkoss.org/" height="100px"/>
 +
</source>
  
= Multi-Window Layout - Goldenlayout =
+
[[Image:code128.png  | center]]
<!-- http://tracker.zkoss.org/browse/ZK-3954 -->
+
<source lang="xml" >
 +
<barcode type="code128" value="https://www.zkoss.org/" height="100px"/>
 +
</source>
  
= Display and Scan a Barcode =
+
= [[ZK_Component_Reference/Multimedia_and_Miscellaneous/BarcodeScanner| Scan a Barcode]] =
 
{{ZK EE}}
 
{{ZK EE}}
  
 +
A Barcodescanner component is used to scan and decode the barcode at the client side. It supports QR Code and nine 1D barcode types.
  
[http://blog.zkoss.org/2017/07/27/zk-8-5-preview-build-in-websocket-communication-is-now-provided/ More details]
+
[[File:Show_Barcode.png | center]]
  
 +
<br/>
 +
<div style="height:70px; border-radius:5px;font-family: 'Didact Gothic', sans-serif; text-align:center; padding:5px; background-color: #0093f9;">
 +
<h1 style="margin: 5px;padding-bottom: 15px;border:2px dashed #F7EEEE;color:#fff;">Other Enhancements</h1>
 +
</div>
  
  
= Improved Rendering Speed =  
+
== Improved Rendering Speed ==
 +
In each new release we try to optimize our framework further to provide you with the best performance and usability. In ZK 8.6 we have specifically improved the rendering speed when opening a tree node; and when changing the model of a chosenbox.
 
<!--  
 
<!--  
 
http://tracker.zkoss.org/browse/ZK-3978  
 
http://tracker.zkoss.org/browse/ZK-3978  
Line 81: Line 169:
 
-->
 
-->
  
tree
+
== [[ZK_Component_Reference/Essential_Components/Menu/Menupopup#Highlight_position | Guide Users with a Pop-up Menuitem]] ==
chosenbox
 
== [https://www.zkoss.org/zk85themedemo/ Theme Demo] ==
 
 
 
 
 
 
{{ZK All}}
 
{{ZK All}}
  
= WebFragment =
+
If you wish to guide new users to click a specific menuitem or open a menupopup, ZK provides a way to hint them by highlighting the specific item:
 
 
 
 
  
 +
[[File:menuitem-setactive.gif | center]]
  
 
<source lang='java'>
 
<source lang='java'>
 +
menu.getMenupopup().setActive(i);
 
</source>
 
</source>
  
= Summary =
+
== Packaging change: (Servlet 3) Web Fragment Rearranged==
ZK is made by Java developers for Java developers; continue bringing technology innovations to enterprise Java web development has always been our top priority. ZK 8.5 provides a great balance between the required server-side simplicity, security, and integrity and the client-side usability, look, and feel. <br/>Join us this fall and harvest Javascript from Java roots!
+
Web-fragment was included by default in the previous versions. We now make it more flexible and separated ZK web fragment into [http://mavensync.zkoss.org/eval/org/zkoss/zk/zkwebfragment/ another artifact], so that you can decide to include it or not depending on your project requirement.
<br />
 
<br/>
 
  
<div style="float: left;"><imagelink link="http://www.zkoss.org/download/zk" image="/_w/images/0/00/Download-zk-7.png" /></div>
+
<!-- http://tracker.zkoss.org/browse/ZK-4022 -->
  
<br />
+
= Summary=
 +
ZK 8.6 contains versatile new components that are exclusively designed for modern users with improved usability, functions, and features. We hope you find ZK 8.6 useful! Feel free to [https://www.zkoss.org/support/about/contact tell us] which new component you like the most. We look forward to hearing from you!
  
 
<br/>
 
<br/>
 +
<br/>
 +
<div style="float: left;"><imagelink link="http://www.zkoss.org/download/zk" image="/_w/images/0/00/Download-zk-7.png" /></div>
  
 
+
<br/>
 
<br/>
 
<br/>
  
ZK grows with you. Feel free to [https://www.zkoss.org/support/about/contact share with us] your feedback or suggestion.
+
[[Category:New Features]]
 
 
 
{{Template:CommentedSmalltalk_Footer_new|
 
{{Template:CommentedSmalltalk_Footer_new|
 
|name=Potix Corporation
 
|name=Potix Corporation
 
}}
 
}}

Latest revision as of 04:39, 20 January 2022

DocumentationSmall Talks2018NovemberNew Features of ZK 8.6.0
New Features of ZK 8.6.0

Author
Hawk Chen, Engineer, Potix Corporation
Date
Nov. 7, 2018
Version
ZK 8.6.0


Introduction

Having rich and user-friendly components has been one of the main reasons that developers love ZK. Now, with the release of the 8.6 version, we aim at creating more integrated and modernernized features that excite your users. You will come across enhanced multimedia and input widgets such as video clips, image cropper, toggle switch, signature and slider knob.

Expect a better look and feel of different applications with improved efficiency. With Iceblue Compact, you can upgrade your ZK 8 or older ZK application to a brand new refreshing look and feel without any code change!

Highlights:

  • Breeze-compatible Compact Theme
  • 10+ New Components and Molds

View Release Notes.

Download and Demo







Highlighted Features

Refresh Theme without Code Change - Compact Theme

The new default Iceblue theme from 8.5 has brought you with a refreshed, ultra-modern look and feel. For users upgrading from an older version, Iceblue Compact is now available in 8.6 bringing you a same refreshed modern look and feel, along with breeze-compatible font size, paddings, and margins. Yes, this means zero code upgrade!

For theme-pack theme users, all 24 theme pack themes have their corresponding compact theme. To apply a theme, just include the theme pack jar and specify the compact theme name, for example:

<library-property>
    <name>org.zkoss.theme.preferred</name>
    <value>iceblue_c</value>
</library-property>
  • Each compact theme is named after the original theme name appended with "_c". For example, iceblue_c is the compact version of iceblue theme. iceblue_c is by default included in the CE binary; if you use maven, it is available in this repo folder.
Compact-theme.png

Please check them out at Theme Demo

iOS Style Switch and Toggle

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

Checkbox now supports 2 new molds: switch mold and toggle mold.

Toggle Switch.png

Tri-state Checkbox

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

In addition to Checked and Unchecked, the Checkbox component now supports indeterminate states.

Checkbox-3states.png

Give Me a Rating

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

The Rating component allows users to click an icon and rate. It also has read-only and disabled states for presenting rated scores.

Rating.png

Toolbar Accommodates More Buttons

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

When you set overflowPopup="true", a toolbar will display ellipsis (...) on the right. When hovering over the ellipsis, it will display a popup which contains additional selections that aren’t present on the toolbar.

Toolbar-overflowPopup.gif

Page Navigation Model

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

With the help of NavigationModel and <apply>, you can now construct a multi-level page navigation mechanism and navigate among those pages by loading the template.

Multi-Screen Layout - Goldenlayout

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

GoldenLayout is a multi-layout, which displays panels as a docker type. You are able to drag a panel to dock at 4 regions (north, east, south, west) or to stack on another panel. This component is suitable and provides for a workspace-like interface.

Goldenlayout.gif

Slider Knob

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

Set the mold attribute as knob on the Slider component to enable the slider knob. The slider then acts like a knob presenting the values. The knob can be controlled by dragging the wheel, clicking the mouse and entering a value within the center of the textbox.

Knob-slider.gif

Take a photo - Camera

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

You can now include the Camera component in your app to allow users taking snapshots. Note that the camera has to be accessible by the browser.

Record a Clip

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

The Camera component can also record a video clip. It also allows you to preview and upload recorded file.

Video Player

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

The Video component allows you to play videos in your browser. With this component, you can even build your own youtube or develop an online tutorial.

Video-player.gif

Crop an Uploaded Image - Cropper

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

This component allows users to crop the selected range of an image. The developer can also process the cropped image further, such as showing the cropped image on a page.

Cropper.png

Show Your Organization - Organigram

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

This component can render a structured diagram with a TreeModel.

Organigram.gif

Sign Here, Please - Signature Component

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

The Signature component supports the signature pad on both the desktop and mobile browser. Developers can select the pen size, color, background, etc; while end users can save, undo, or clear their signatures.

Sinature.gif

Display a Barcode

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

A barcode component generates the barcode at the browser, and decodes it at the server side. It supports QR Code and 18 1D barcode types.

Qrcode.png
 <barcode type="qr" value="https://www.zkoss.org/" height="100px"/>
Code128.png
 <barcode type="code128" value="https://www.zkoss.org/" height="100px"/>

Scan a Barcode

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

A Barcodescanner component is used to scan and decode the barcode at the client side. It supports QR Code and nine 1D barcode types.

Show Barcode.png


Other Enhancements


Improved Rendering Speed

In each new release we try to optimize our framework further to provide you with the best performance and usability. In ZK 8.6 we have specifically improved the rendering speed when opening a tree node; and when changing the model of a chosenbox.

Guide Users with a Pop-up Menuitem

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

If you wish to guide new users to click a specific menuitem or open a menupopup, ZK provides a way to hint them by highlighting the specific item:

Menuitem-setactive.gif
menu.getMenupopup().setActive(i);

Packaging change: (Servlet 3) Web Fragment Rearranged

Web-fragment was included by default in the previous versions. We now make it more flexible and separated ZK web fragment into another artifact, so that you can decide to include it or not depending on your project requirement.


Summary

ZK 8.6 contains versatile new components that are exclusively designed for modern users with improved usability, functions, and features. We hope you find ZK 8.6 useful! Feel free to tell us which new component you like the most. We look forward to hearing from you!





Comments



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