Click
Click Examples

Source Viewer : WEB-INF/classes/org/apache/click/examples/page/control/ActionDemo.java

package org.apache.click.examples.page.control;

import java.util.Date;

import org.apache.click.ActionListener;
import org.apache.click.Control;
import org.apache.click.control.ActionButton;
import org.apache.click.control.ActionLink;
import org.apache.click.examples.page.BorderPage;

/**
 * Provides an ActionLink and ActionButton demonstration Page.
 * <p/>
 * In this example public fields are automatically added to the Page model using
 * their field name. In the case of controls their name will be automatically
 * set to their field name.
 */
public class ActionDemo extends BorderPage {

    private static final long serialVersionUID = 1L;

    private ActionLink link = new ActionLink("link");
    private ActionButton button = new ActionButton("button");

    public ActionDemo() {
        addControl(link);
        addControl(button);

        link.setActionListener(new ActionListener() {
            private static final long serialVersionUID = 1L;

            public boolean onAction(Control source) {
                String msg = source.getClass().getName() + ".onAction invoked at " + (new Date());
                addModel("msg", msg);
                return true;
            }
        });

        button.setListener(this, "onButtonClick");
    }

    // --------------------------------------------------------- Event Handlers

    public boolean onButtonClick() {
        String msg = getClass().getName() + ".onButtonClick invoked at " + (new Date());
        addModel("msg", msg);
        return true;
    }
}