WW-1813 Tree Tag's treeSelectedTopic attribute doesn't work.

* Fix tree tag topic notification
* Fix showcase examples

git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@528866 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Musachy Barroso
2007-04-14 20:19:20 +00:00
parent 68c9cf35c8
commit bcbb6cc637
5 changed files with 19 additions and 17 deletions
@@ -47,7 +47,7 @@ public class DynamicTreeSelectAction extends ActionSupport {
public String getNodeName() {
return currentCategory.getName();
return currentCategory != null ? currentCategory.getName() : "Node not found";
}
}
@@ -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"
@@ -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>
@@ -38,7 +38,8 @@ import com.opensymphony.xwork2.util.ValueStack;
* 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 -->
*
@@ -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}"