Search in sources :

Example 1 with SiteNode

use of com.revolsys.ui.web.config.SiteNode in project com.revolsys.open by revolsys.

the class DisplayConfigAction method addSiteNode.

private void addSiteNode(final ElementContainer view, final SiteNode siteNode) {
    if (siteNode != null) {
        final ElementContainer nodeView = new ElementContainer();
        view.add(nodeView);
        final String path = siteNode.getPath();
        if (path == null) {
            nodeView.add(new XmlTagElement(HtmlElem.H4, "/"));
        } else {
            nodeView.add(new XmlTagElement(HtmlElem.H4, path));
        }
        final SiteNodeController controller = siteNode.getController();
        if (controller instanceof PageController) {
            final PageController pageController = (PageController) controller;
            final ElementContainer pageView = new ElementContainer(new DefinitionListLayout());
            nodeView.add(pageView);
            pageView.add("Actions");
            final ElementContainer actionsView = new ElementContainer(new UnorderedListLayout());
            pageView.add(actionsView);
            for (final Iterator actions = pageController.getActions().iterator(); actions.hasNext(); ) {
                final Action action = (Action) actions.next();
                actionsView.add(action.getClass().getName());
            }
            pageView.add("Menus");
            final ElementContainer menusView = new ElementContainer(new UnorderedListLayout());
            pageView.add(menusView);
            for (final Iterator menus = pageController.getMenus().entrySet().iterator(); menus.hasNext(); ) {
                final Map.Entry entry = (Entry) menus.next();
                final String name = (String) entry.getKey();
                final Menu menu = (Menu) entry.getValue();
                addMenu(menusView, name, menu);
            }
        }
        final Collection nodes = siteNode.getNodes();
        if (!nodes.isEmpty()) {
            final ElementContainer childNodesView = new ElementContainer(new UnorderedListLayout());
            nodeView.add(childNodesView);
            for (final Iterator nodeIter = nodes.iterator(); nodeIter.hasNext(); ) {
                final SiteNode childNode = (SiteNode) nodeIter.next();
                addSiteNode(childNodesView, childNode);
            }
        }
    }
}
Also used : Entry(java.util.Map.Entry) Action(com.revolsys.ui.web.config.Action) ElementContainer(com.revolsys.ui.html.view.ElementContainer) DivElementContainer(com.revolsys.ui.html.view.DivElementContainer) UnorderedListLayout(com.revolsys.ui.html.layout.UnorderedListLayout) SiteNodeController(com.revolsys.ui.web.config.SiteNodeController) Entry(java.util.Map.Entry) PageController(com.revolsys.ui.web.config.PageController) DefinitionListLayout(com.revolsys.ui.html.layout.DefinitionListLayout) Iterator(java.util.Iterator) Collection(java.util.Collection) Menu(com.revolsys.ui.model.Menu) XmlTagElement(com.revolsys.ui.html.view.XmlTagElement) Map(java.util.Map) SiteNode(com.revolsys.ui.web.config.SiteNode)

Aggregations

DefinitionListLayout (com.revolsys.ui.html.layout.DefinitionListLayout)1 UnorderedListLayout (com.revolsys.ui.html.layout.UnorderedListLayout)1 DivElementContainer (com.revolsys.ui.html.view.DivElementContainer)1 ElementContainer (com.revolsys.ui.html.view.ElementContainer)1 XmlTagElement (com.revolsys.ui.html.view.XmlTagElement)1 Menu (com.revolsys.ui.model.Menu)1 Action (com.revolsys.ui.web.config.Action)1 PageController (com.revolsys.ui.web.config.PageController)1 SiteNode (com.revolsys.ui.web.config.SiteNode)1 SiteNodeController (com.revolsys.ui.web.config.SiteNodeController)1 Collection (java.util.Collection)1 Iterator (java.util.Iterator)1 Map (java.util.Map)1 Entry (java.util.Map.Entry)1