[richfaces-svn-commits] JBoss Rich Faces SVN: r4967 - in trunk/samples/treeModelDemo/src/main: java/org/richfaces/model and 1 other directories.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Fri Dec 21 22:29:43 EST 2007


Author: nbelaevski
Date: 2007-12-21 22:29:43 -0500 (Fri, 21 Dec 2007)
New Revision: 4967

Added:
   trunk/samples/treeModelDemo/src/main/java/org/richfaces/model/SimpleRecursiveNode.java
Modified:
   trunk/samples/treeModelDemo/src/main/java/org/richfaces/TreeModelBean.java
   trunk/samples/treeModelDemo/src/main/webapp/pages/index.jsp
Log:
http://jira.jboss.com/jira/browse/RF-980

Modified: trunk/samples/treeModelDemo/src/main/java/org/richfaces/TreeModelBean.java
===================================================================
--- trunk/samples/treeModelDemo/src/main/java/org/richfaces/TreeModelBean.java	2007-12-22 03:10:52 UTC (rev 4966)
+++ trunk/samples/treeModelDemo/src/main/java/org/richfaces/TreeModelBean.java	2007-12-22 03:29:43 UTC (rev 4967)
@@ -3,7 +3,10 @@
  */
 package org.richfaces;
 
+import java.util.List;
+
 import org.richfaces.component.UITree;
+import org.richfaces.model.SimpleRecursiveNode;
 
 /**
  * @author Nick Belaevski
@@ -15,4 +18,25 @@
 	public Boolean adviseNodeOpened(UITree tree) {
 		return Boolean.TRUE;
 	}
+
+	private SimpleRecursiveNode simpleRecursiveNode;
+	
+	public TreeModelBean() {
+		simpleRecursiveNode = new SimpleRecursiveNode(null, null);
+		for (int i = 0; i < 5; i++) {
+			SimpleRecursiveNode node2 = new SimpleRecursiveNode(simpleRecursiveNode, "Node " + i);
+		
+			for (int j = 0; j < 6; j++) {
+				SimpleRecursiveNode node3 = new SimpleRecursiveNode(node2, "Node " + i + " " + j);
+			
+				for (int k = 0; k < 4; k++) {
+					SimpleRecursiveNode node4 = new SimpleRecursiveNode(node3, "Node " + i + " " + j + " " + k);
+				}
+			}
+		}
+	}
+	
+	public List getSimpleResursiveNodes() {
+		return simpleRecursiveNode.getChildren();
+	}
 }

Added: trunk/samples/treeModelDemo/src/main/java/org/richfaces/model/SimpleRecursiveNode.java
===================================================================
--- trunk/samples/treeModelDemo/src/main/java/org/richfaces/model/SimpleRecursiveNode.java	                        (rev 0)
+++ trunk/samples/treeModelDemo/src/main/java/org/richfaces/model/SimpleRecursiveNode.java	2007-12-22 03:29:43 UTC (rev 4967)
@@ -0,0 +1,79 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package org.richfaces.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 
+ * <br /><br />
+ * 
+ * Created 22.12.2007
+ * @author Nick Belaevski
+ * @since 3.2
+ */
+
+public class SimpleRecursiveNode {
+
+	private SimpleRecursiveNode parent;
+	
+	private List children = new ArrayList();
+
+	private String text;
+
+	public SimpleRecursiveNode(SimpleRecursiveNode parent,
+			String text) {
+		super();
+		this.parent = parent;
+		if (parent != null) {
+			parent.addChild(this);
+		}
+		this.text = text;
+	}
+	
+	public void addChild(SimpleRecursiveNode node) {
+		children.add(node);
+	}
+
+	public void removeChild(SimpleRecursiveNode node) {
+		children.remove(node);
+	}
+
+	public void remove() {
+		if (parent != null) {
+			parent.removeChild(this);
+		}
+	}
+	
+	public SimpleRecursiveNode getParent() {
+		return parent;
+	}
+	
+	public List getChildren() {
+		return children;
+	}
+	
+	public String getText() {
+		return text;
+	}
+}

Modified: trunk/samples/treeModelDemo/src/main/webapp/pages/index.jsp
===================================================================
--- trunk/samples/treeModelDemo/src/main/webapp/pages/index.jsp	2007-12-22 03:10:52 UTC (rev 4966)
+++ trunk/samples/treeModelDemo/src/main/webapp/pages/index.jsp	2007-12-22 03:29:43 UTC (rev 4967)
@@ -85,6 +85,14 @@
 						</model:treeNodes--%>
 					</model:treeNodesAdaptor>
 				</tree:tree>
+
+				<tree:tree adviseNodeOpened="#{treeModelBean.adviseNodeOpened}" switchType="client">
+					<model:recursiveTreeNodesAdaptor roots="#{treeModelBean.simpleResursiveNodes}" var="node" nodes="#{node.children}">
+						<tree:treeNode>
+							<h:commandLink value="#{node.text}" action="#{node.remove}" />
+						</tree:treeNode>
+					</model:recursiveTreeNodesAdaptor>
+				</tree:tree>
 			</h:form>
 		</f:view>
 	</body>	




More information about the richfaces-svn-commits mailing list