@Override protected HeaderItem wrapTinyMceSettingsScript(String settingScript, Component component) { return new OnEventHeaderItem("'" + componentMarkupId + "'", "click", settingScript); } }
@Override public String toString() { return "OnEventHeaderItem(" + getTarget() + ", '" + getEvent() + "', '" + getJavaScript() + "')"; }
@Override public void render(Response response) { if (Strings.isEmpty(getJavaScript()) == false) { JavaScriptUtils.writeJavaScript(response, getCompleteJavaScript()); } }
/** * {@inheritDoc} */ @Override public void renderHead(final Component c, final IHeaderResponse response) { super.renderHead(c, response); if (!isStopped()) { // install an on-unload handler response.render(JavaScriptHeaderItem.forScript("history.navigationMode = 'compatible';", "Opera on-unload support")); response.render(OnEventHeaderItem.forScript("window", "unload", "Wicket.Ajax.get({'u': '" + getCallbackUrl().toString() + "&unload=1'});")); } } }
} else if (curItem instanceof OnEventHeaderItem) combinedScript.append(((OnEventHeaderItem)curItem).getCompleteJavaScript());
@Override public void render(Response response) { if (Strings.isEmpty(getJavaScript()) == false) { JavaScriptUtils.writeJavaScript(response, getCompleteJavaScript()); } }
/** * see: <a href="http://www.google.com/apis/maps/documentation/#Memory_Leaks">IE memory leak * issues</a> */ @Override public void renderHead(Component component, IHeaderResponse response) { response.render(JavaScriptHeaderItem.forUrl(GMAP_API_URL + gMapKey)); response.render(JavaScriptHeaderItem.forScript(GOOGLE_LOAD_MAPS, GMapHeaderContributor.class.getName() + "_googleload")); CoreLibrariesContributor.contributeAjax(component.getApplication(), response); response.render(JavaScriptHeaderItem.forReference(WICKET_GMAP_JS)); // see: http://www.google.com/apis/maps/documentation/#Memory_Leaks response.render(OnEventHeaderItem.forScript("window", "onUnload", "google.maps.Unload();")); } }
} else if (curItem instanceof OnEventHeaderItem) combinedScript.append(((OnEventHeaderItem)curItem).getCompleteJavaScript());
@Override public String toString() { return "OnEventHeaderItem(" + getTarget() + ", '" + getEvent() + "', '" + getJavaScript() + "')"; }
@Override protected HeaderItem wrapTinyMceSettingsScript(String settingScript, Component component) { return new OnEventHeaderItem("'" + componentMarkupId + "'", "click", settingScript); } }
PartialPageUpdate.this.appendJavaScript(((OnEventHeaderItem) item).getCompleteJavaScript()); markItemRendered(item);
@Override public Iterable<?> getRenderTokens() { return Collections.singletonList("javascript-event-" + getTarget() + "-" + getEvent() + "-" + getJavaScript()); }
/** * Creates a {@link OnEventHeaderItem} for the given parameters. * * @param target * The target of the event handler, for example 'window' or 'document'. * @param event * The event itself, for example 'click'. * @param javaScript * The script to execute on the event. * * @return A newly created {@link OnEventHeaderItem}. */ public static OnEventHeaderItem forScript(String target, String event, CharSequence javaScript) { return new OnEventHeaderItem(target, event, javaScript); }
PartialPageUpdate.this.appendJavaScript(((OnEventHeaderItem) item).getCompleteJavaScript()); markItemRendered(item);
@Override public Iterable<?> getRenderTokens() { return Collections.singletonList("javascript-event-" + getTarget() + "-" + getEvent() + "-" + getJavaScript()); }
/** * Creates a {@link OnEventHeaderItem} for the given parameters. * * @param target * The target of the event handler, for example 'window' or 'document'. * @param event * The event itself, for example 'click'. * @param javaScript * The script to execute on the event. * * @return A newly created {@link OnEventHeaderItem}. */ public static OnEventHeaderItem forScript(String target, String event, CharSequence javaScript) { return new OnEventHeaderItem(target, event, javaScript); }
/** * @return The JavaScript that registers the event handler. */ public CharSequence getCompleteJavaScript() { StringBuilder result = new StringBuilder(); result.append("Wicket.Event.add(") .append(getTarget()) .append(", \"") .append(getEvent()) .append("\", function(event) { ") .append(getJavaScript()) .append(";});"); return result; }
/** * @return The JavaScript that registers the event handler. */ public CharSequence getCompleteJavaScript() { StringBuilder result = new StringBuilder(); result.append("Wicket.Event.add(") .append(getTarget()) .append(", \"") .append(getEvent()) .append("\", function(event) { ") .append(getJavaScript()) .append(";});"); return result; }