Updated Branches: refs/heads/master 7a162f775 -> 65e53c82a
javadoc for tree classes Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/65e53c82 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/65e53c82 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/65e53c82 Branch: refs/heads/master Commit: 65e53c82a4f0ff27eb1c05e7ca3efa5aaecfc0c9 Parents: 7a162f7 Author: Sven Meier <[email protected]> Authored: Thu Feb 9 21:11:21 2012 +0100 Committer: Sven Meier <[email protected]> Committed: Thu Feb 9 21:11:21 2012 +0100 ---------------------------------------------------------------------- .../markup/html/repeater/tree/AbstractTree.java | 18 +++-- .../html/repeater/tree/DefaultNestedTree.java | 32 +++++++++- .../html/repeater/tree/DefaultTableTree.java | 49 ++++++++++++++- .../extensions/markup/html/repeater/tree/Node.java | 8 ++- .../repeater/tree/table/ITreeDataProvider.java | 9 ++- .../html/repeater/tree/table/TreeColumn.java | 20 ++++++- .../html/repeater/tree/table/TreeDataProvider.java | 15 ++++- 7 files changed, 133 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java index 1b23319..c683d1a 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/AbstractTree.java @@ -40,7 +40,7 @@ import org.apache.wicket.util.visit.IVisitor; * * @author svenmeier * @param <T> - * the model object type + * the node type */ public abstract class AbstractTree<T> extends Panel { @@ -292,10 +292,12 @@ public abstract class AbstractTree<T> extends Panel * * This default implementation adds this whole component for rendering. * - * @param t + * @param node + * node to update * @param target + * request target */ - public void updateBranch(T t, final AjaxRequestTarget target) + public void updateBranch(T node, final AjaxRequestTarget target) { if (target != null) { @@ -305,16 +307,18 @@ public abstract class AbstractTree<T> extends Panel /** * Convenience method to update a single node on an {@link AjaxRequestTarget}. Does nothing if - * the given node is currently not visible or target is <code>null</code>. + * the given node is currently not visible or target is {@code null}. * - * @param t + * @param node + * node to update * @param target + * request target or {@code null} */ - public void updateNode(T t, final AjaxRequestTarget target) + public void updateNode(T node, final AjaxRequestTarget target) { if (target != null) { - final IModel<T> model = getProvider().model(t); + final IModel<T> model = getProvider().model(node); visitChildren(Node.class, new IVisitor<Node<T>, Void>() { public void component(Node<T> node, IVisit<Void> visit) http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultNestedTree.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultNestedTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultNestedTree.java index f2d04ba..2901ff3 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultNestedTree.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultNestedTree.java @@ -28,18 +28,36 @@ import org.apache.wicket.model.IModel; * on a standard {@link NestedTree}. * * @param <T> - * The model object type + * The node type * @author svenmeier */ public class DefaultNestedTree<T> extends NestedTree<T> { private static final long serialVersionUID = 1L; + /** + * Construct. + * + * @param id + * component id + * @param provider + * provider of the tree + */ public DefaultNestedTree(String id, ITreeProvider<T> provider) { this(id, provider, null); } + /** + * Construct. + * + * @param id + * component id + * @param provider + * provider of the tree + * @param state + * expansion state + */ public DefaultNestedTree(String id, ITreeProvider<T> provider, IModel<Set<T>> state) { super(id, provider, state); @@ -47,9 +65,17 @@ public class DefaultNestedTree<T> extends NestedTree<T> add(new WindowsTheme()); } + /** + * Creates {@link Folder} for each node. + * + * @param id + * component id + * @param node + * the node model + */ @Override - protected Component newContentComponent(String id, IModel<T> model) + protected Component newContentComponent(String id, IModel<T> node) { - return new Folder<T>(id, this, model); + return new Folder<T>(id, this, node); } } http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java index 838d2b6..d58d2fa 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.Set; import org.apache.wicket.Component; +import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable; import org.apache.wicket.extensions.markup.html.repeater.data.table.HeadersToolbar; import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn; import org.apache.wicket.extensions.markup.html.repeater.data.table.NavigationToolbar; @@ -35,7 +36,7 @@ import org.apache.wicket.model.IModel; * and by adding navigation, headers and no-records-found toolbars to a standard {@link TableTree}. * * @param <T> - * The model object type + * The node type * @author svenmeier */ public class DefaultTableTree<T> extends TableTree<T> @@ -43,12 +44,38 @@ public class DefaultTableTree<T> extends TableTree<T> private static final long serialVersionUID = 1L; + /** + * Construct. + * + * @param id + * component id + * @param columns + * columns for the {@link DataTable} + * @param provider + * the provider of the tree + * @param rowsPerPage + * rows to show on each page + */ public DefaultTableTree(String id, List<IColumn<T>> columns, ISortableTreeProvider<T> provider, int rowsPerPage) { this(id, columns, provider, rowsPerPage, null); } + /** + * Construct. + * + * @param id + * component id + * @param columns + * columns for the {@link DataTable} + * @param provider + * the provider of the tree + * @param rowsPerPage + * rows to show on each page + * @param state + * expansion state + */ public DefaultTableTree(String id, List<IColumn<T>> columns, ISortableTreeProvider<T> provider, int rowsPerPage, IModel<Set<T>> state) { @@ -61,15 +88,31 @@ public class DefaultTableTree<T> extends TableTree<T> add(new WindowsTheme()); } + /** + * Creates {@link Folder} for each node. + * + * @param id + * component id + * @param node + * the node model + */ @Override protected Component newContentComponent(String id, IModel<T> model) { return new Folder<T>(id, this, model); } + /** + * Creates an {@link OddEvenItem}. + * + * @param id + * component id + * @param node + * the node model + */ @Override - protected Item<T> newRowItem(String id, int index, IModel<T> model) + protected Item<T> newRowItem(String id, int index, IModel<T> node) { - return new OddEvenItem<T>(id, index, model); + return new OddEvenItem<T>(id, index, node); } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java index 79c7eb7..0399887 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/Node.java @@ -123,7 +123,13 @@ public abstract class Node<T> extends Panel }; } - private void toggle() + /** + * Toggle the node. + * + * @see AbstractTree#collapse(Object) + * @see AbstractTree#expand(Object) + */ + protected void toggle() { T t = getModelObject(); http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeDataProvider.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeDataProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeDataProvider.java index dd56242..4fdf5b8 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeDataProvider.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/ITreeDataProvider.java @@ -23,12 +23,17 @@ import org.apache.wicket.markup.repeater.data.IDataProvider; * An adapter from a {@link ITreeProvider} to a {@link IDataProvider}. * * @author svenmeier + * @param <T> + * node type */ public interface ITreeDataProvider<T> extends IDataProvider<T> { /** * Wrap the given node in a {@link NodeModel} which provides additional branch information - * needed by {@link TreeColumn} + * needed by {@link TreeColumn}. + * + * @param node + * node */ - public NodeModel<T> model(T object); + public NodeModel<T> model(T node); } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java index 4f086ec..6b24f58 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeColumn.java @@ -18,22 +18,41 @@ package org.apache.wicket.extensions.markup.html.repeater.tree.table; import org.apache.wicket.Component; import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator; +import org.apache.wicket.extensions.markup.html.repeater.tree.TableTree; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.model.IModel; /** + * A column displaying the tree nodes hierarchy. + * * @author svenmeier + * @param <T> + * node type */ public class TreeColumn<T> extends AbstractTreeColumn<T> { private static final long serialVersionUID = 1L; + /** + * Construct. + * + * @param displayModel + * model used to generate header text + */ public TreeColumn(IModel<String> displayModel) { super(displayModel); } + /** + * Construct. + * + * @param displayModel + * model used to generate header text + * @param sortProperty + * sort property + */ public TreeColumn(IModel<String> displayModel, String sortProperty) { super(displayModel, sortProperty); @@ -48,7 +67,6 @@ public class TreeColumn<T> extends AbstractTreeColumn<T> public void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) { - NodeModel<T> nodeModel = (NodeModel<T>)rowModel; Component nodeComponent = getTree().newNodeComponent(componentId, http://git-wip-us.apache.org/repos/asf/wicket/blob/65e53c82/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java index 6749a4b..93579e4 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/table/TreeDataProvider.java @@ -26,6 +26,8 @@ import org.apache.wicket.model.IModel; * An adapter of a {@link ITreeProvider} to a {@link IDataProvider}. * * @author svenmeier + * @param <T> + * node type */ public abstract class TreeDataProvider<T> implements ITreeDataProvider<T> { @@ -39,6 +41,12 @@ public abstract class TreeDataProvider<T> implements ITreeDataProvider<T> private int size = -1; + /** + * Construct. + * + * @param provider + * the provider to adapt + */ public TreeDataProvider(ITreeProvider<T> provider) { this.provider = provider; @@ -117,8 +125,13 @@ public abstract class TreeDataProvider<T> implements ITreeDataProvider<T> /** * Hook method to decide wether the given node's children should be iterated. + * + * @param node + * node + * + * @return {@code true} if the node's children should be iterated */ - protected abstract boolean iterateChildren(T object); + protected abstract boolean iterateChildren(T node); public NodeModel<T> model(T object) {
