[richfaces-svn-commits] JBoss Rich Faces SVN: r12027 - in trunk/ui/tree/src/main: resources/org/richfaces/renderkit/html/scripts and 1 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Wed Dec 24 15:29:22 EST 2008
Author: nbelaevski
Date: 2008-12-24 15:29:22 -0500 (Wed, 24 Dec 2008)
New Revision: 12027
Modified:
trunk/ui/tree/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
trunk/ui/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree.js
trunk/ui/tree/src/main/templates/htmlTree.jspx
Log:
https://jira.jboss.org/jira/browse/RF-5442
Modified: trunk/ui/tree/src/main/java/org/richfaces/renderkit/TreeRendererBase.java
===================================================================
--- trunk/ui/tree/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2008-12-24 18:53:06 UTC (rev 12026)
+++ trunk/ui/tree/src/main/java/org/richfaces/renderkit/TreeRendererBase.java 2008-12-24 20:29:22 UTC (rev 12027)
@@ -570,15 +570,6 @@
return buffer.toString();
}
- protected String getScriptContributions(FacesContext context, UITree tree) {
- return super.getScriptContributions(getJavaScriptVarName(context, tree), context, tree);
- }
-
- protected String getJavaScriptVarName(FacesContext context, UITree tree) {
- String id = tree.getBaseClientId(context);
- return "Richfaces_Tree_" + id.replaceAll("[^A-Za-z0-9_]", "_");
- }
-
private void writeScript(FacesContext context, UITree tree, List encodedAreaIds,
Set renderedAreas) throws IOException {
final ResponseWriter writer = context.getResponseWriter();
@@ -590,20 +581,16 @@
writer.startElement("script", tree);
getUtils().writeAttribute(writer, "type", "text/javascript");
- String varName = getJavaScriptVarName(context, tree);
-
- writer.writeText(varName + ".getNodeElements(" +
- ScriptUtils.toScript(encodedAreaIds) + ");", null);
+ StringBuffer sb = new StringBuffer("$(");
+ sb.append(ScriptUtils.toScript(clientId));
+ sb.append(").component.");
- writer.writeText(varName + ".updateSelection(" +
- ScriptUtils.toScript(getSelectionValue(context, tree)) + ");", null);
+ new JSFunction("refreshAfterAjax", encodedAreaIds, getSelectionValue(context, tree)).appendScript(sb);
+ writer.writeText(sb, null);
writer.endElement("script");
writer.endElement("div");
- renderedAreas.add(tree.getClientId(context)
- + NamingContainer.SEPARATOR_CHAR + "input");
-
renderedAreas.add(scriptId);
}
Modified: trunk/ui/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree.js
===================================================================
--- trunk/ui/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree.js 2008-12-24 18:53:06 UTC (rev 12026)
+++ trunk/ui/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree.js 2008-12-24 20:29:22 UTC (rev 12027)
@@ -183,6 +183,11 @@
*/
}
},
+
+ refreshAfterAjax: function(nodeIds, selectedNode) {
+ this.getNodeElements(nodeIds);
+ this.updateSelection(selectedNode);
+ },
getNodeElements: function(nodeIds) {
if (nodeIds) {
Modified: trunk/ui/tree/src/main/templates/htmlTree.jspx
===================================================================
--- trunk/ui/tree/src/main/templates/htmlTree.jspx 2008-12-24 18:53:06 UTC (rev 12026)
+++ trunk/ui/tree/src/main/templates/htmlTree.jspx 2008-12-24 20:29:22 UTC (rev 12027)
@@ -49,20 +49,20 @@
<f:call name="encodeSelectionStateInput" />
<f:clientId var="clientId" />
- <script type="text/javascript">
- var #{this:getJavaScriptVarName(context, component)} =
- new Tree("#{clientId}", "#{clientId}:input", "#{component.switchType}",
- {
- onselect: "#{component.attributes['onselected']}",
- onexpand: "#{component.attributes['onexpand']}",
- oncollapse: "#{component.attributes['oncollapse']}"
- },
- function(event) {
- #{this:getAjaxScript(context, component)}
- },
- #{this:getOptions(context, component)}
- );
- #{this:getScriptContributions(context, component)}
+ <script type="text/javascript">(function() {
+ var tree = new Tree("#{clientId}", "#{clientId}:input", "#{component.switchType}",
+ {
+ onselect: "#{component.attributes['onselected']}",
+ onexpand: "#{component.attributes['onexpand']}",
+ oncollapse: "#{component.attributes['oncollapse']}"
+ },
+ function(event) {
+ #{this:getAjaxScript(context, component)}
+ },
+ #{this:getOptions(context, component)}
+ );
+ #{this:getScriptContributions("tree", context, component)}
+ }());
</script>
<div id="#{clientId}:script" class="dr-tree-h-script">
<script type="text/javascript">
More information about the richfaces-svn-commits
mailing list