/** * @param locator * @param percent * @since 7.0 */ public void verScroll(ClientWidget locator, double percent) { int totalHight; Widget wgt = jq(locator).toWidget(); Element bpad = wgt.$n("bpad"), tpad = wgt.$n("tpad"); JQuery body = jq(wgt.$n("body")), cave = jq(wgt.$n("cave")); if (bpad.exists() && tpad.exists()) { // ROD Scroll totalHight = Integer.parseInt(bpad.get("offsetHeight")) + Integer.parseInt(tpad.get("offsetHeight")); } else { totalHight = jq(cave).height() - jq(body).height(); } int dist = (int) Math.round(totalHight * percent); String version = ZK.VERSION.substring(0, 1); if (!ZK.is("ie8") && Integer.parseInt(version) >= 7) locator.eval("_scrollbar.scrollTo(0, " + dist + ")"); else jq(body.exists() ? body : (cave.exists() ? cave : wgt)) .toElement() .set("scrollTop", Math.abs(dist)); waitResponse(); }
@Override public void renderHead(IHeaderResponse response) { super.renderHead(response); // initialize select2 response.render( OnDomReadyHeaderItem.forScript( JQuery.execute("$('#%s').select2(%s);", getJquerySafeMarkupId(), settings.toJson()))); // select current value renderInitializationScript(response); }
@Override public void onEvent(IEvent<?> event) { super.onEvent(event); if (event.getPayload() instanceof AjaxRequestTarget) { AjaxRequestTarget target = (AjaxRequestTarget) event.getPayload(); if (target.getComponents().contains(this)) { // if this component is being repainted by ajax, directly, we must destroy Select2 so it // removes // its elements from DOM target.prependJavaScript( JQuery.execute("$('#%s').select2('destroy');", getJquerySafeMarkupId())); } } }
/** * @param locator * @param percent * @since 7.0 */ public void horScroll(ClientWidget locator, double percent) { Widget wgt = jq(locator).toWidget(); JQuery body = jq(wgt.$n("body")); JQuery cave = jq(wgt.$n("cave")); int totalWidth = cave.width() - body.width(); int dist = (int) Math.round(totalWidth * percent); String version = ZK.VERSION.substring(0, 1); if (!ZK.is("ie8") && Integer.parseInt(version) >= 7) locator.eval("_scrollbar.scrollTo(" + dist + ", 0)"); else jq(body.exists() ? body : (cave.exists() ? cave : wgt)) .toElement() .set("scrollLeft", Math.abs(dist)); waitResponse(); }