Author: musachy
Date: Sat Apr 14 13:19:20 2007
New Revision: 528866
URL: http://svn.apache.org/viewvc?view=rev&rev=528866
Log:
WW-1813 Tree Tag's treeSelectedTopic attribute doesn't work.
* Fix tree tag topic notification
* Fix showcase examples
Modified:
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleStatic.jsp
struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tree.ftl
Modified:
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java?view=diff&rev=528866&r1=528865&r2=528866
==============================================================================
---
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
(original)
+++
struts/struts2/trunk/apps/showcase/src/main/java/org/apache/struts2/showcase/DynamicTreeSelectAction.java
Sat Apr 14 13:19:20 2007
@@ -47,7 +47,7 @@
public String getNodeName() {
- return currentCategory.getName();
+ return currentCategory != null ? currentCategory.getName() : "Node not
found";
}
}
Modified:
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp?view=diff&rev=528866&r1=528865&r2=528866
==============================================================================
---
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
(original)
+++
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleDynamic.jsp
Sat Apr 14 13:19:20 2007
@@ -10,25 +10,24 @@
<!-- START SNIPPET: treeExampleDynamicJsp -->
-<script>
- function treeNodeSelected(nodeId) {
+<script language="JavaScript" type="text/javascript">
+ dojo.event.topic.subscribe("treeSelected", function treeNodeSelected(node)
{
dojo.io.bind({
- url: "<s:url value='/tags/ui/ajax/dynamicTreeSelectAction.action'
/>?nodeId="+nodeId,
+ url: "<s:url
value='/tags/ui/ajax/dynamicTreeSelectAction.action'/>?nodeId="+node.node.widgetId,
load: function(type, data, evt) {
- var displayDiv = dojo.byId("displayId");
- displayDiv.innerHTML = data;
+ var divDisplay = dojo.byId("displayId");
+ divDisplay.innerHTML=data;
},
mimeType: "text/html"
});
- };
-
- dojo.event.topic.subscribe("treeSelected", this, "treeNodeSelected");
+ });
</script>
<div style="float:left; margin-right: 50px;">
<sx:tree
+ id="tree"
rootNode="%{treeRootNode}"
childCollectionProperty="children"
nodeIdProperty="id"
Modified:
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleStatic.jsp
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleStatic.jsp?view=diff&rev=528866&r1=528865&r2=528866
==============================================================================
---
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleStatic.jsp
(original)
+++
struts/struts2/trunk/apps/showcase/src/main/webapp/tags/ui/treeExampleStatic.jsp
Sat Apr 14 13:19:20 2007
@@ -9,19 +9,17 @@
<!-- START SNIPPET: treeExampleStaticJsp -->
-<script>
- function treeNodeSelected(nodeId) {
+<script language="JavaScript" type="text/javascript">
+ dojo.event.topic.subscribe("treeSelected", function treeNodeSelected(node)
{
dojo.io.bind({
- url: "<s:url
value='/tags/ui/ajax/staticTreeSelectAction.action'/>?nodeId="+nodeId,
+ url: "<s:url
value='/tags/ui/ajax/staticTreeSelectAction.action'/>?nodeId="+node.node.title,
load: function(type, data, evt) {
var divDisplay = dojo.byId("displayIt");
divDisplay.innerHTML=data;
},
mimeType: "text/html"
});
- };
-
- dojo.event.topic.subscribe("treeSelected", this, "treeNodeSelected");
+ });
</script>
Modified:
struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java?view=diff&rev=528866&r1=528865&r2=528866
==============================================================================
---
struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
(original)
+++
struts/struts2/trunk/plugins/dojo/src/main/java/org/apache/struts2/dojo/components/Tree.java
Sat Apr 14 13:19:20 2007
@@ -38,7 +38,8 @@
* Renders a tree widget with AJAX support.<p/>
*
* The id attribute is normally specified, such that it could be looked up
using
- * javascript if necessary.<p/>
+ * javascript if necessary. The id attribute is required, if the
"treeSelectedTopic"
+ * is going to be used.<p/>
*
* <!-- END SNIPPET: javadoc -->
*
Modified:
struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tree.ftl
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tree.ftl?view=diff&rev=528866&r1=528865&r2=528866
==============================================================================
--- struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tree.ftl
(original)
+++ struts/struts2/trunk/plugins/dojo/src/main/resources/template/ajax/tree.ftl
Sat Apr 14 13:19:20 2007
@@ -6,6 +6,10 @@
// dojo.hostenv.writeIncludes();
-->
</script>
+ <#if parameters.treeSelectedTopic?exists>
+ <dojo:TreeSelector widgetId="treeSelector_${parameters.id?default("")}"
eventNames="select:${parameters.treeSelectedTopic?html}">
+ </dojo:TreeSelector>
+ </#if>
<div dojoType="Tree"
<#if parameters.blankIconSrc?exists>
gridIconSrcT="<@s.url value='${parameters.blankIconSrc}' encode="false"
includeParams='none'/>"
@@ -59,7 +63,7 @@
id="${parameters.id?html}"
</#if>
<#if parameters.treeSelectedTopic?exists>
- publishSelectionTopic="${parameters.treeSelectedTopic?html}"
+ selector="treeSelector_${parameters.id?default("")}"
</#if>
<#if parameters.treeExpandedTopic?exists>
publishExpandedTopic="${parameters.treeExpandedTopic?html}"