package org.nchc.incident; import java.io.IOException; import org.zkoss.json.JSONArray; import org.zkoss.pivot.PivotField; import org.zkoss.pivot.PivotModel; import org.zkoss.pivot.Pivottable; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.sys.ContentRenderer; public class CustomPivottable extends Pivottable { private static final long serialVersionUID = 8944029960538732195L; @Override public void onInitRender(Event event) { super.onInitRender(event); PivotModel model = getModel(); PivotField[] dataPF = model.getFields(PivotField.Type.DATA); smartUpdate("dataLs", JSONArray.toJSONString(getLabels(dataPF))); invalidate(); } @Override protected void renderProperties(ContentRenderer renderer) throws IOException { super.renderProperties(renderer); PivotModel model = getModel(); PivotField[] dataPF = model.getFields(PivotField.Type.DATA); render(renderer, "dataLs", JSONArray.toJSONString(getLabels(dataPF))); } private static String[] getLabels(PivotField[] fields) { int len = fields.length; String[] labels = new String[len]; for(int i = 0; i < len; i++) labels[i] = fields[i].getFieldName() + "long long column name"; return labels; } }