Author: tchemit Date: 2010-06-23 10:21:29 +0200 (Wed, 23 Jun 2010) New Revision: 1983 Url: http://nuiton.org/repositories/revision/jaxx/1983 Log: add loadAllNodes method in JaxxTreeHelper Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/tree/JaxxTreeHelper.java Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/tree/JaxxTreeHelper.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/tree/JaxxTreeHelper.java 2010-06-22 20:33:47 UTC (rev 1982) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/tree/JaxxTreeHelper.java 2010-06-23 08:21:29 UTC (rev 1983) @@ -101,6 +101,7 @@ * <li>{@link #removeNode(JaxxNode)}</li> * <li>{@link #moveNode(JaxxNode, JaxxNode, int)}</li> * <li>{@link #refreshNode(JaxxNode, boolean)}</li> + * <li>{@link #loadAllNodes(DefaultTreeModel, JaxxNode, DataProvider)}</li> * <p/> * </ul> * <h3>Model selection modification</h3> @@ -663,6 +664,29 @@ } /** + * To load all nodes of a model. + * + * @param model the tree model owner of nodes + * @param node the root node to load + * @param dataProvider the data provider used to populate nodes + */ + public void loadAllNodes(DefaultTreeModel model, + JaxxNode<?> node, + DataProvider dataProvider) { + if (!checkModel()) { + return; + } + if (!node.isLoaded()) { + node.populateChilds(model, dataProvider); + Enumeration<? extends JaxxNode<?>> enumeration = node.children(); + while (enumeration.hasMoreElements()) { + JaxxNode<?> jaxxNode = enumeration.nextElement(); + loadAllNodes(model, jaxxNode, dataProvider); + } + } + } + + /** * Selects the parent of the currently selected node. * <p/> * <b>Note:</> If selection is empty, then throws a NPE.