Package de.agilecoders.wicket.core.markup.html.bootstrap.button.dropdown

Source Code of de.agilecoders.wicket.core.markup.html.bootstrap.button.dropdown.MenuDivider

package de.agilecoders.wicket.core.markup.html.bootstrap.button.dropdown;

import de.agilecoders.wicket.core.markup.html.bootstrap.behavior.CssClassNameAppender;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.ButtonList;

import org.apache.wicket.markup.html.link.AbstractLink;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.Model;

/**
* A simple divider for menu elements.
*
* @author miha
*/
public class MenuDivider extends AbstractLink {

    /**
     * Construct.
     */
    public MenuDivider() {
        super(ButtonList.getButtonMarkupId());

        setBody(Model.of(" "));
        setEscapeModelStrings(false);
    }

    @Override
    protected void onInitialize() {
        super.onInitialize();

        // add the divider if the parent is not a ListView
        // or a ListView that reuses its items
        ListView listView = findParent(ListView.class);
        if (listView != null) {
            if (listView.getReuseItems()) {
                getParent().add(new CssClassNameAppender("divider"));
            }
        } else {
            getParent().add(new CssClassNameAppender("divider"));
        }
    }

    @Override
    protected void onConfigure() {
        super.onConfigure();

        // re-add the divider if the parent is a ListView
        // that doesn't reuse its items
        ListView listView = findParent(ListView.class);
        if (listView != null && !listView.getReuseItems()) {
            getParent().add(new CssClassNameAppender("divider"));
        }
    }
}
TOP

Related Classes of de.agilecoders.wicket.core.markup.html.bootstrap.button.dropdown.MenuDivider

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.