Author: musachy
Date: Sun May  6 09:12:28 2007
New Revision: 535634

URL: http://svn.apache.org/viewvc?view=rev&rev=535634
Log:
WW-1910 Tree tag should be able to load its nodes using ajax

Added:
    
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/ShowAjaxDynamicTreeAction.java
    
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.ftl
    
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.jsp
Modified:
    struts/struts2/trunk/apps/showcase/src/main/resources/struts-ajax.xml
    struts/struts2/trunk/apps/showcase/src/main/resources/struts-tags-ui.xml
    struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/index.jsp

Added: 
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/ShowAjaxDynamicTreeAction.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/ShowAjaxDynamicTreeAction.java?view=auto&rev=535634
==============================================================================
--- 
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/ShowAjaxDynamicTreeAction.java
 (added)
+++ 
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/ShowAjaxDynamicTreeAction.java
 Sun May  6 09:12:28 2007
@@ -0,0 +1,21 @@
+package org.apache.struts2.showcase;
+
+import org.apache.struts2.showcase.ajax.tree.Category;
+
+import com.opensymphony.xwork2.ActionSupport;
+
+public class ShowAjaxDynamicTreeAction extends ActionSupport {
+    private int nodeId = 1;
+
+    public Category getCategory() {
+        return Category.getById(nodeId);
+    }
+
+    public int getNodeId() {
+        return nodeId;
+    }
+
+    public void setNodeId(int nodeId) {
+        this.nodeId = nodeId;
+    }
+}

Modified: struts/struts2/trunk/apps/showcase/src/main/resources/struts-ajax.xml
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/resources/struts-ajax.xml?view=diff&rev=535634&r1=535633&r2=535634
==============================================================================
--- struts/struts2/trunk/apps/showcase/src/main/resources/struts-ajax.xml 
(original)
+++ struts/struts2/trunk/apps/showcase/src/main/resources/struts-ajax.xml Sun 
May  6 09:12:28 2007
@@ -78,5 +78,8 @@
             <interceptor-ref name="jsonValidationWorkflowStack"/>
             <result>/validation/quiz-success.jsp</result>
        </action>
+       <action name="getNodes" 
class="org.apache.struts2.showcase.ShowAjaxDynamicTreeAction">
+            <result 
type="freemarker">/tags/ui/treeExampleAjaxDynamic.ftl</result>
+        </action>
     </package>
 </struts>

Modified: 
struts/struts2/trunk/apps/showcase/src/main/resources/struts-tags-ui.xml
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/resources/struts-tags-ui.xml?view=diff&rev=535634&r1=535633&r2=535634
==============================================================================
--- struts/struts2/trunk/apps/showcase/src/main/resources/struts-tags-ui.xml 
(original)
+++ struts/struts2/trunk/apps/showcase/src/main/resources/struts-tags-ui.xml 
Sun May  6 09:12:28 2007
@@ -47,6 +47,9 @@
         
         <!--  END SNIPPET: treeExampleDynamicXWorkXml -->
         
+        <action name="showDynamicAjaxTreeAction">
+            <result>/tags/ui/treeExampleAjaxDynamic.jsp</result>
+        </action>
         
         <action name="showComponentTagExampleCode">
                <result 
type="plainText">/tags/ui/componentTagExample.jsp</result>

Modified: struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/index.jsp
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/index.jsp?view=diff&rev=535634&r1=535633&r2=535634
==============================================================================
--- struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/index.jsp 
(original)
+++ struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/index.jsp Sun 
May  6 09:12:28 2007
@@ -14,6 +14,7 @@
         <li><s:url id="url" namespace="/tags/ui" action="moreSelects" 
method="input" /><s:a href="%{url}">More Select Box UI Examples</s:a></li>
         <li><s:url id="url" namespace="/tags/ui" value="treeExampleStatic.jsp" 
/><s:a href="%{url}">Tree Example (static)</s:a>
         <li><s:url id="url" namespace="/tags/ui" 
action="showDynamicTreeAction"/><s:a href="%{url}">Tree Example (dynamic)</s:a>
+        <li><s:url id="url" namespace="/tags/ui" 
action="showDynamicAjaxTreeAction"/><s:a href="%{url}">Tree Example (dynamic 
ajax loading)</s:a>
         <li><s:url id="url" value="componentTagExample.jsp"/><s:a 
href="%{#url}">Component Tag Example</s:a>
         <li><a href="datepicker">DateTime picker tag - Pick a date</a></li>
         <li><a href="timepicker">DateTime picker tag - Pick a time</a></li>

Added: 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.ftl
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.ftl?view=auto&rev=535634
==============================================================================
--- 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.ftl
 (added)
+++ 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.ftl
 Sun May  6 09:12:28 2007
@@ -0,0 +1,9 @@
+[
+<#list category.children as node>
+  {
+    label: '${node.name}',
+    id: '${node.id}',
+    hasChildren: ${(node.children.size() > 0)?string}
+  },
+</#list>
+] 
\ No newline at end of file

Added: 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.jsp
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.jsp?view=auto&rev=535634
==============================================================================
--- 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.jsp
 (added)
+++ 
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleAjaxDynamic.jsp
 Sun May  6 09:12:28 2007
@@ -0,0 +1,18 @@
+<[EMAIL PROTECTED] prefix="s" uri="/struts-tags" %>
+<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
+
+<html>
+<head>
+<title>Showcase - UI Tag Example - Tree Example (Dynamic)</title>
+<sx:head />
+</head>
+<body>
+
+
+<s:url id="nodesUrl" namespace="/nodecorate" action="getNodes" />
+<div style="float:left; margin-right: 50px;">
+    <sx:tree id="tree" href="%{#nodesUrl}" />
+</div>
+
+</body>
+</html>
\ No newline at end of file


Reply via email to