Example usage for org.apache.wicket.extensions.markup.html.repeater.tree NestedTree NestedTree

List of usage examples for org.apache.wicket.extensions.markup.html.repeater.tree NestedTree NestedTree

Introduction

In this page you can find the example usage for org.apache.wicket.extensions.markup.html.repeater.tree NestedTree NestedTree.

Prototype

public NestedTree(String id, ITreeProvider<T> provider) 

Source Link

Document

Construct.

Usage

From source file:org.efaps.ui.wicket.components.search.DimensionPanel.java

License:Apache License

/**
 * Instantiates a new taxonomy panel.//from   w  w w.  ja  v  a 2 s  . co m
 *
 * @param _wicketId the _wicket id
 * @param _model the model
 */
public DimensionPanel(final String _wicketId, final IModel<IndexSearch> _model) {
    super(_wicketId, _model);
    setOutputMarkupId(true);
    final Form<Void> form = new Form<>("dimForm");
    add(form);
    final DimensionProvider provider = _model.getObject().getDimensionProvider();

    final NestedTree<DimTreeNode> dimTree = new NestedTree<DimTreeNode>("dimTree", provider) {

        /** The Constant serialVersionUID. */
        private static final long serialVersionUID = 1L;

        @Override
        protected Component newContentComponent(final String _wicketId, final IModel<DimTreeNode> _model) {
            final Component ret;
            if (_model.getObject().getValue() instanceof Dimension) {
                ret = new Label(_wicketId, _model.getObject().getLabel());
            } else {
                ret = new DimValuePanel(_wicketId, _model);
            }
            return ret;
        }
    };

    form.add(dimTree);
    dimTree.getModelObject().addAll(provider.getRootList());
    dimTree.add(new HumanTheme());
}

From source file:org.wicketTutorial.AdvancedCheckedTreePage.java

License:Apache License

public AdvancedCheckedTreePage(PageParameters parameters) {
    super(parameters);

    NestedTree<DefaultMutableTreeNode> tree = getTree();
    RepeatingView selectedNodes = new RepeatingView("nodes");
    final WebMarkupContainer markupContainer = new WebMarkupContainer("checkedNodes");
    final Set<DefaultMutableTreeNode> checkedNodes = new HashSet<DefaultMutableTreeNode>();

    tree = new NestedTree<DefaultMutableTreeNode>("tree", tree.getProvider()) {
        SetModel<DefaultMutableTreeNode> checkedNodesModel = new SetModel<DefaultMutableTreeNode>(checkedNodes);

        @Override//from w w w  .  j av  a 2 s  . c om
        protected Component newContentComponent(String id, IModel<DefaultMutableTreeNode> model) {
            return new AutocheckedFolder<DefaultMutableTreeNode>(id, this, model, checkedNodesModel);
        }
    };

    tree.add(new AjaxEventBehavior("click") {

        @Override
        protected void onEvent(AjaxRequestTarget target) {
            RepeatingView selectedNodes = new RepeatingView("nodes");

            for (DefaultMutableTreeNode node : checkedNodes) {
                selectedNodes.add(new Label(selectedNodes.newChildId(), node.toString()));
            }

            if (checkedNodes.size() == 0)
                markupContainer.setVisible(false);
            else
                markupContainer.setVisible(true);

            markupContainer.replace(selectedNodes);
            target.add(markupContainer);
        }
    });
    //select Windows theme
    tree.add(new WindowsTheme());

    markupContainer.add(selectedNodes);
    markupContainer.setVisible(false);
    add(markupContainer.setOutputMarkupPlaceholderTag(true));
    addOrReplace(tree);
}

From source file:org.wicketTutorial.checkboxtree.HomePage.java

License:Apache License

public HomePage(final PageParameters parameters) {
    super(parameters);
    DefaultMutableTreeNode root = new DefaultMutableTreeNode("Cities of Europe");

    addNodes(addNodes(root, "Italy"), "Rome", "Venice", "Milan", "Florence");
    addNodes(addNodes(root, "Germany"), "Stuttgart", "Munich", "Berlin", "Dusseldorf", "Dresden");
    addNodes(addNodes(root, "France"), "Paris ", "Toulouse", "Strasbourg", "Bordeaux", "Lyon");

    DefaultTreeModel treeModel = new DefaultTreeModel(root);
    TreeModelProvider<DefaultMutableTreeNode> modelProvider = new TreeModelProvider<DefaultMutableTreeNode>(
            treeModel) {/* w  w  w. j a  v  a2  s .  c o m*/

        @Override
        public IModel<DefaultMutableTreeNode> model(DefaultMutableTreeNode object) {
            return Model.of(object);
        }
    };

    tree = new NestedTree<DefaultMutableTreeNode>("tree", modelProvider) {
        private static final long serialVersionUID = 1L;

        @Override
        protected Component newContentComponent(String id, IModel<DefaultMutableTreeNode> model) {
            return new CheckedFolder<DefaultMutableTreeNode>(id, this, model);
        }
    };
    //select Windows theme
    tree.add(new WindowsTheme());

    add(tree);
}

From source file:org.wicket_sapporo.workshop01.page.ajax.tree.AjaxTreePage.java

License:Apache License

public AjaxTreePage() {
    clickedTerminatory = Model.of("");

    final Label clickedTerminatoryLabel = new Label("clickedTerminatory", clickedTerminatory) {
        private static final long serialVersionUID = -4224953169066901644L;

        @Override//from  w w w . j a  v  a  2 s  .c o m
        protected void onInitialize() {
            super.onInitialize();
            setOutputMarkupId(true);
        }
    };
    add(clickedTerminatoryLabel);

    // 1. TreeModel?
    TreeModel treeModel = new DefaultTreeModel(getTreeNode());
    // 2. TreeModelProvider?
    ITreeProvider<DefaultMutableTreeNode> treeProvider = new TreeModelProvider<DefaultMutableTreeNode>(
            treeModel) {
        private static final long serialVersionUID = 3376187721454642989L;

        @Override
        public IModel<DefaultMutableTreeNode> model(DefaultMutableTreeNode arg0) {
            return Model.of(arg0);
        }
    };

    // 3. Tree?????
    add(new NestedTree<DefaultMutableTreeNode>("tree", treeProvider) {
        private static final long serialVersionUID = 5671307285170480665L;

        @Override
        protected void onInitialize() {
            super.onInitialize();
            add(new WindowsTheme());
        }

        @Override
        protected Component newContentComponent(String id, IModel<DefaultMutableTreeNode> model) {
            // ???CheckFolder?
            return new Folder<DefaultMutableTreeNode>(id, this, model) {
                private static final long serialVersionUID = -6100530316563823499L;

                @Override
                protected MarkupContainer newLinkComponent(String id, IModel<DefaultMutableTreeNode> model) {
                    // ?????????????????
                    if (getProvider().hasChildren(model.getObject())) {
                        return super.newLinkComponent(id, model);
                    }
                    return new AjaxLink<DefaultMutableTreeNode>(id, model) {
                        private static final long serialVersionUID = -7710712071051731986L;

                        @Override
                        public void onClick(AjaxRequestTarget target) {
                            clickedTerminatory.setObject(getDefaultModelObjectAsString());
                            target.add(clickedTerminatoryLabel);
                        }
                    };
                }

            };
        }
    });
}