List of usage examples for org.apache.wicket.ajax AjaxChannel AjaxChannel
public AjaxChannel(final String name)
From source file:org.sakaiproject.sitestats.tool.wicket.components.AjaxLazyLoadFragment.java
License:Educational Community License
/** * @param id//from w w w. j a v a2 s.c om */ public AjaxLazyLoadFragment(final String id) { super(id); setOutputMarkupId(true); final AbstractDefaultAjaxBehavior behavior = new AbstractDefaultAjaxBehavior() { @Override protected void respond(AjaxRequestTarget target) { Fragment fragment = getLazyLoadFragment("content"); AjaxLazyLoadFragment.this.replace(fragment.setRenderBodyOnly(true)); target.add(AjaxLazyLoadFragment.this); setState((byte) 2); } @Override public void renderHead(Component component, IHeaderResponse response) { response.render(OnDomReadyHeaderItem.forScript(getCallbackScript().toString())); super.renderHead(component, response); } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.setChannel(new AjaxChannel(getId())); } @Override public boolean isEnabled(Component component) { return state < 2; } }; add(behavior); }
From source file:org.sakaiproject.sitestats.tool.wicket.components.AjaxLazyLoadImage.java
License:Educational Community License
private void init() { setOutputMarkupId(true);// w w w . j a va 2 s.c om // render chart by ajax, uppon request chartRenderAjaxBehavior = new AbstractDefaultAjaxBehavior() { private static final long serialVersionUID = 1L; @Override protected void respond(AjaxRequestTarget target) { //System.out.println("chartRenderAjaxBehavior.Responding for "+ getId()); renderImage(target, true); } @Override public boolean isEnabled(Component component) { return state < 2; } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.setChannel(new AjaxChannel(getId())); } }; add(chartRenderAjaxBehavior); // fields for maximized chart size setDefaultModel(new CompoundPropertyModel(this)); form = new Form("chartForm"); form.add(new HiddenField("maxWidth")); form.add(new HiddenField("maxHeight")); add(form); }
From source file:org.sakaiproject.sitestats.tool.wicket.components.AjaxLazyLoadImage.java
License:Educational Community License
public void setAutoDetermineChartSizeByAjax(final String jquerySelectorForContainer) { autoDetermineChartSizeByAjax = true; AbstractDefaultAjaxBehavior determineChartSizeBehavior = new AbstractDefaultAjaxBehavior() { private static final long serialVersionUID = 1L; @Override//from ww w .j a va 2 s. com protected void respond(AjaxRequestTarget target) { // parse desired image size Request req = RequestCycle.get().getRequest(); selectedWidth = req.getQueryParameters().getParameterValue("width").toInt(400); selectedHeight = req.getQueryParameters().getParameterValue("height").toInt(200); if (selectedHeight < 200) { selectedHeight = 200; } // render chart image renderImage(target, true); } @Override public void renderHead(Component component, IHeaderResponse response) { super.renderHead(component, response); response.render(OnDomReadyHeaderItem.forScript(getCallbackScript(component))); } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.setChannel(new AjaxChannel(getId())); String dynamicExtraParams = "return { 'height': jQuery('" + jquerySelectorForContainer + "').height(), 'width': jQuery('" + jquerySelectorForContainer + "').width() }"; attributes.getDynamicExtraParameters().add(dynamicExtraParams); } }; add(determineChartSizeBehavior); }