Maintain log :
- 2011/9/23 Upgrade to 1.2.2.2 , finetune some minor defect and page description;
- 2011/8/22 Upgrade to 1.2.2.1 , add the "user view" and rating component.
User view is to show all posts of specific user;
- 2011/8/22 Upgrade to 1.2.2 , finetune the UI , using pushState to get better UX/performance in FF/Chrome, add author field for each case.
- 2011/8/04 Upgrade to 1.2.1 , add widget and some data API ,bug fixs.
- 2011/7/20 Upgrade to 1.2 , upgrading Code Mirror and fix some issue.
- 2011/7/13 Domain name server get wrong resolved ip , so the run buttion is temporary not working. Fixed.
- 2011/6/28 Upgrade to 1.1.1 fine tune UI, add tag cloud
- 2011/6/27 Upgrade to 1.1.0 Add Tag and download
- 2011/6/18 Upgrade to 1.0.0
- 2011/6/17 Version 1.0.0 Update UI
- 2011/6/12 Version 0.9.1 fixed db not saving case after server restart issue.
- 2011/6/11 Version 0.9.0 update project skeleton and add more features.
- 2011/6/05 Version 0.8.0 prototyping and experimental version
Suggested case list:
user model to move item to another listbox
1TonyQ114.25.109.94d0n3krApr 21, 2012 10:43:27 AMlinkUsing timer to refresh a grid
1TonyQ220.133.44.3725nk0uiFeb 17, 2012 3:17:34 AMlinkupdate the textbox value and fire a onChange event (Client)
2TonyQ220.133.44.37qdorurFeb 12, 2012 11:56:25 PMlinkFire a event from child iframe
1TonyQ220.133.44.372eupjotFeb 3, 2012 5:04:52 AMlinkTextbox input restriction sample
1TonyQ72.21.245.2431b3nlr0Dec 20, 2011 10:09:10 AMlinkTest web core taglib in ZUL
1TonyQ198.203.175.175ofqkemDec 17, 2011 3:36:08 AMlinkidentify firefox or not in server side
1TonyQ198.203.175.1751nv2qreDec 10, 2011 4:25:04 AMlinkZK addThis integration
1TonyQ198.203.175.1751apl96jNov 5, 2011 4:12:50 AMlinkTrigger onChange for textbox in client manually.
1TonyQ198.203.175.1751tmsvs1Sep 22, 2011 5:23:43 AMlinkmodify selected status of listbox after compose
1guest61.224.42.2033486viqSep 18, 2011 12:26:53 PMlinkckeditor startup with source mode
1benbai61.216.4.1961lvlb1lSep 11, 2011 1:56:30 PMlinkapply style to all textbox in css
1TonyQ198.203.175.1751l8b5kkSep 10, 2011 12:55:52 AMlinkRequire user to enter uppercase chars only in textbox
1TonyQ198.203.175.1751cl18ghSep 9, 2011 12:58:13 AMlinkThe last position that the mouse was clicked
3sunflower60.175.249.16539o3m78Sep 8, 2011 10:08:32 PMlinkHow to invoke server side onClick event with XHTML component
1TonyQ198.203.175.17511spe5sSep 7, 2011 8:01:56 AMlinkClient event - onFocus/onBlur
1TonyQ198.203.175.1752met717Sep 1, 2011 6:13:24 AMlinkDatabinding with TypeConverter sample
1TonyQ198.203.175.1751t0gtrkAug 31, 2011 12:47:46 AMlinkgrid sample with ListModel/RowRenderer
5guest198.203.175.1752vah9ajAug 31, 2011 12:27:35 AMlinkMultiple drag - finetune
3TonyQ198.203.175.175393nlq1Aug 30, 2011 6:49:05 AMlinkA window doModal reusing example - composer way
5TonyQ12.208.243.66126pn69Aug 28, 2011 12:04:14 PMlinkLatest 10 Fiddles :
Another new ZK fiddle
1guest190.41.64.1183akqhe5May 23, 2013 6:32:30 PMlinkResNet
68okspry140.182.1.111gibpeaMay 23, 2013 5:10:59 PMlinkResNet
67okspry140.182.1.111gibpeaMay 23, 2013 5:04:02 PMlinkResNet
66okspry140.182.1.111gibpeaMay 23, 2013 4:58:01 PMlinkResNet
65okspry140.182.1.111gibpeaMay 23, 2013 4:55:50 PMlinkResNet
64okspry140.182.1.111gibpeaMay 23, 2013 4:48:14 PMlinkResNet
63okspry140.182.1.111gibpeaMay 23, 2013 4:47:50 PMlinkResNet
62okspry140.182.1.111gibpeaMay 23, 2013 3:41:09 PMlinkResNet
61okspry140.182.1.111gibpeaMay 23, 2013 3:29:08 PMlinkResNet
60okspry140.182.1.111gibpeaMay 23, 2013 3:27:33 PMlinkopen window
14guest82.130.140.821mshmaqMay 14, 2012 7:29:41 AMlinkresources
index.zulzul<zk>
<window id="winTest" title="test" width="300px" border="normal" apply="org.zkoss.bind.BindComposer"
viewModel="@id('vm') @init('pkg$.TestViewModel')">
<vbox>
<textbox id="txtValore" value="@bind(vm.value)" />
<button id="btnPopup" label="Chiama popup" onClick="@command('callPopup')" />
<button id="btnUpload" label="Upload" upload="true" onUpload="@command('upload')" />
</vbox>
</window>
</zk>TestViewModel.javajavaimport java.util.HashMap;
import java.util.Map;
import org.zkoss.bind.BindContext;
import org.zkoss.bind.annotation.BindingParam;
import org.zkoss.bind.annotation.Command;
import org.zkoss.bind.annotation.ContextParam;
import org.zkoss.bind.annotation.ContextType;
import org.zkoss.bind.annotation.Init;
import org.zkoss.bind.annotation.NotifyChange;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.UploadEvent;
import org.zkoss.zul.Window;
public class TestViewModel {
private String value;
public String getValue() {
return value;
}
@NotifyChange("value")
public void setValue(String value) {
this.value = value;
}
@Init
public void Init() {
this.value = "";
}
@Command("callPopup")
public void callPopup(@ContextParam(ContextType.VIEW) Component view) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("value", getValue());
params.put("parent", view);
Window popup = (Window) Executions.createComponents("/popup.zul", view, params);
popup.doModal();
}
@Command("change") @NotifyChange("value")
public void change(@BindingParam("newValue") String newValue) {
setValue(newValue);
}
@Command("upload")
public void upload(@ContextParam(ContextType.BIND_CONTEXT) BindContext ctx) {
UploadEvent upEvent = (UploadEvent) ctx.getTriggerEvent();
System.out.println("uploading " + upEvent.getMedia().getName());
}
}
popup.zulzul<?page title="ModalWin" contentType="text/html;charset=UTF-8"?>
<zk>
<window title="ModalWin" border="normal" closable="true" apply="org.zkoss.bind.BindComposer"
viewModel="@id('vm') @init('it.dfware.test.TestZK6.PopupViewModel')">
<vbox>
<textbox id="txtValore" value="@bind(vm.value)" />
<button id="btnChange" label="cambia" onClick="@command('change')" />
</vbox>
</window>
</zk><zk>
<window border="normal" title="hello" apply="pkg$.TestComposer">
<div>Welcome to ZK Fiddle , run it right now!</div>
<button id="btn" label="Click Me To Evalute Event Binding With Composer" />
</window>
</zk>
PopupViewModel.javajavaimport java.util.HashMap;
import java.util.Map;
import org.zkoss.bind.Binder;
import org.zkoss.bind.annotation.Command;
import org.zkoss.bind.annotation.ContextParam;
import org.zkoss.bind.annotation.ContextType;
import org.zkoss.bind.annotation.ExecutionArgParam;
import org.zkoss.bind.annotation.Init;
import org.zkoss.zk.ui.Component;
public class PopupViewModel {
private String value;
private Binder parBinder;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
@Init
public void Init(@ExecutionArgParam("value") String val , @ExecutionArgParam("parent") Component par) {
this.parBinder = (Binder) par.getAttribute("binder");
setValue(val);
}
@Command("change")
public void change(@ContextParam(ContextType.VIEW) Component view) {
Binder bind = (Binder) view.getParent().getAttribute("binder");
if (bind == null)
return;
Map<String, Object> params = new HashMap<String, Object>();
params.put("newValue", getValue());
// this.parBinder.postCommand("change", params);
bind.postCommand("change", params);
view.detach();
}
}
import org.zkoss.zk.ui.*;
import org.zkoss.zk.ui.event.*;
import org.zkoss.zk.ui.util.*;
import org.zkoss.zk.ui.ext.*;
import org.zkoss.zk.au.*;
import org.zkoss.zk.au.out.*;
import org.zkoss.zul.*;
public class PopupViewModel extends GenericForwardComposer{
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
}