Window: actions
This is my window content
Components / Samples
Description
Since
wicket-kendo-ui-6.17.0Licensing
Kendo UI "Core" is Apache License 2.0 licensed, starting from version 2014.1.416.Prior to version 2014.1.416, Kendo UI "Web" was licensed under GPLv3.
A pro version - with a commercial license - is also available, it provides additional widgets (see http://docs.telerik.com/kendo-ui/intro/supporting/list-of-widgets)
To be able to use it, you need to change the
ResourceReference
with kendo.all.min.js
See also
[howto]-change-resource-referencesSources
- Java
- HTML
- CSS
package com.googlecode.wicket.jquery.ui.samples.kendoui.window; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.core.request.handler.IPartialPageRequestHandler; import org.apache.wicket.markup.head.CssReferenceHeaderItem; import org.apache.wicket.markup.head.IHeaderResponse; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.request.resource.CssResourceReference; import com.googlecode.wicket.jquery.core.JQueryBehavior; import com.googlecode.wicket.kendo.ui.form.button.AjaxButton; import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel; import com.googlecode.wicket.kendo.ui.widget.window.AbstractWindow; public class ActionWindowPage extends AbstractWindowPage { private static final long serialVersionUID = 1L; public ActionWindowPage() { // FeedbackPanel // final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback"); this.add(feedback); // Form // final Form<Void> form = new Form<Void>("form"); this.add(form); // Window // final MyWindow window = new MyWindow("window", "My Window") { private static final long serialVersionUID = 1L; @Override protected void onOpen(IPartialPageRequestHandler handler) { super.onOpen(handler); handler.add(feedback); // clear previous messages } @Override public void onClose(IPartialPageRequestHandler handler) { this.info("Window has been closed"); handler.add(feedback); } }; this.add(window); // attached to the page // Buttons // form.add(new AjaxButton("open") { private static final long serialVersionUID = 1L; @Override protected void onSubmit(AjaxRequestTarget target) { window.open(target); } }); } // Classes // /** * This window class is located here for convenience in this sample<br> * Associated markup file is ActionWindowPage$MyWindow.html */ abstract static class MyWindow extends AbstractWindow<Void> { private static final long serialVersionUID = 1L; private KendoFeedbackPanel feedback; public MyWindow(String id, String title) { super(id, title, true); // Feedback // this.feedback = new KendoFeedbackPanel("feedback"); this.add(feedback.setOutputMarkupId(true)); // Form // final Form<Void> form = new Form<Void>("form"); this.add(form); // Buttons // form.add(new AjaxButton("close") { private static final long serialVersionUID = 1L; @Override protected void onSubmit(AjaxRequestTarget target) { MyWindow.this.close(target); } }); } // Methods // @Override public void renderHead(IHeaderResponse response) { super.renderHead(response); response.render(CssReferenceHeaderItem.forReference(new CssResourceReference(ActionWindowPage.class, "ActionWindowPage$MyWindow.css"))); } // Properties // @Override public boolean isCloseEventEnabled() { return true; } @Override public boolean isActionEventEnabled() { return true; } // Events // @Override public void onConfigure(JQueryBehavior behavior) { super.onConfigure(behavior); behavior.setOption("actions", "['Custom', 'Pin', 'Maximize', 'Minimize', 'Close']"); } @Override protected void onOpen(IPartialPageRequestHandler handler) { handler.add(this.feedback); // clear previous messages } @Override public void onAction(AjaxRequestTarget target, String action) { this.info("Clicked " + action); if (ACTION_CUSTOM.equals(action)) { this.info("Performing custom action..."); } target.add(this.feedback); } } }
<!DOCTYPE html> <html xmlns:wicket="http://wicket.apache.org"> <head> <wicket:head> <title>Wicket Kendo UI: window (actions)</title> </wicket:head> </head> <body> <wicket:extend> <div id="demo-panel"> <form wicket:id="form"> <button wicket:id="open">Open window</button> </form> <br/> <div wicket:id="feedback" style="width: 360px;"></div> </div> <div wicket:id="window"></div> </wicket:extend> </body> </html>