You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by jk...@apache.org on 2006/12/14 16:45:26 UTC

svn commit: r487242 [18/20] - in /tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo: ./ nls/ src/ src/behavior/ src/cal/ src/charting/ src/charting/svg/ src/charting/vml/ src/collections/ src/crypto/ src/data/ src/data/core/ src/data/old/ src/dat...

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeBasicControllerV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeBasicControllerV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeBasicControllerV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeBasicControllerV3.js Thu Dec 14 07:45:13 2006
@@ -40,7 +40,8 @@
 this.doEditLabelStart(node);},editLabelFinish: function(save) {this.doEditLabelFinish(save);},doEditLabelStart: function(node) {if (!this.editor) {dojo.raise(this.widgetType+": no editor specified");}
 this.editor.open(node);},doEditLabelFinish: function(save, server_data) {if (!this.editor) {dojo.raise(this.widgetType+": no editor specified");}
 var node = this.editor.node;var editorTitle = this.editor.getContents();this.editor.close(save);if (save) {var data = {title:editorTitle};if (server_data) {dojo.lang.mixin(data, server_data);}
-if (node.isPhantom) {var parent = node.parent;var index = node.getParentIndex();node.destroy();dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(this, parent, index, data);} else {var title = server_data && server_data.title ? server_data.title : editorTitle;node.setTitle(title);}} else {if (node.isPhantom) {node.destroy();}}},makeDefaultNode: function(parent, index) {var data = {title:parent.tree.defaultChildTitle};return dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(this,parent,index,data);},runStages: function(check, prepare, make, finalize, expose, args) {if (check && !check.apply(this, args)) {return false;}
+if (node.isPhantom) {var parent = node.parent;var index = node.getParentIndex();node.destroy();dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(this, parent, index, data);} else {var title = server_data && server_data.title ? server_data.title : editorTitle;node.setTitle(title);}} else {if (node.isPhantom) {node.destroy();}}
+},makeDefaultNode: function(parent, index) {var data = {title:parent.tree.defaultChildTitle};return dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(this,parent,index,data);},runStages: function(check, prepare, make, finalize, expose, args) {if (check && !check.apply(this, args)) {return false;}
 if (prepare && !prepare.apply(this, args)) {return false;}
 var result = make.apply(this, args);if (finalize) {finalize.apply(this,args);}
 if (!result) {return result;}
@@ -62,6 +63,7 @@
 if (child.parent !== newParent && newParent.actionIsDisabledNow(newParent.actions.ADDCHILD)) {return false;}
 var node = newParent;while(node.isTreeNode) {if (node === child) {return false;}
 node = node.parent;}
-return true;},move: function(child, newParent, index) {return this.runStages(this.canMove, this.prepareMove, this.doMove, this.finalizeMove, this.exposeMove, arguments);},doMove: function(child, newParent, index) {child.tree.move(child, newParent, index);return true;},exposeMove: function(child, newParent) {if (newParent.isTreeNode) {this.expand(newParent);}}});dojo.lang.extend(dojo.widget.TreeBasicControllerV3, {canCreateChild: function(parent, index, data) {if (parent.actionIsDisabledNow(parent.actions.ADDCHILD)) {return false;}
+return true;},move: function(child, newParent, index) {return this.runStages(this.canMove, this.prepareMove, this.doMove, this.finalizeMove, this.exposeMove, arguments);},doMove: function(child, newParent, index) {child.tree.move(child, newParent, index);return true;},exposeMove: function(child, newParent) {if (newParent.isTreeNode) {this.expand(newParent);}}
+});dojo.lang.extend(dojo.widget.TreeBasicControllerV3, {canCreateChild: function(parent, index, data) {if (parent.actionIsDisabledNow(parent.actions.ADDCHILD)) {return false;}
 return true;},createChild: function(parent, index, data) {if(!data) {data = {title:parent.tree.defaultChildTitle};}
 return this.runStages(this.canCreateChild, this.prepareCreateChild, this.doCreateChild, this.finalizeCreateChild, this.exposeCreateChild,[parent, index, data]);},prepareCreateChild: function() { return true; },finalizeCreateChild: function() {},doCreateChild: function(parent, index, data) {var newChild = parent.tree.createNode(data);parent.addChild(newChild, index);return newChild;},exposeCreateChild: function(parent) {return this.expand(parent);}});

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeCommon.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeCommon.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeCommon.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeCommon.js Thu Dec 14 07:45:13 2006
@@ -11,4 +11,5 @@
 var widget = dojo.widget.byId(domElement.widgetId);if (!widget.isTreeNode) {return null;}
 return widget;},processDescendants: function(elem, filter, func, skipFirst) {var _this = this;if (!skipFirst) {if (!filter.call(_this,elem)) {return;}
 func.call(_this,elem);}
-var stack = [elem];while (elem = stack.pop()) {dojo.lang.forEach(elem.children, function(elem) {if (filter.call(_this, elem)) {func.call(_this, elem);stack.push(elem);}});}}});
\ No newline at end of file
+var stack = [elem];while (elem = stack.pop()) {dojo.lang.forEach(elem.children, function(elem) {if (filter.call(_this, elem)) {func.call(_this, elem);stack.push(elem);}});}}
+});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenu.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenu.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenu.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenu.js Thu Dec 14 07:45:13 2006
@@ -1,8 +1,10 @@
 
 dojo.provide("dojo.widget.TreeContextMenu");dojo.require("dojo.event.*");dojo.require("dojo.io.*");dojo.require("dojo.widget.Menu2");dojo.widget.defineWidget("dojo.widget.TreeContextMenu", dojo.widget.PopupMenu2, function() {this.listenedTrees = [];},{open: function(x, y, parentMenu, explodeSrc){var result = dojo.widget.PopupMenu2.prototype.open.apply(this, arguments);dojo.event.topic.publish(this.eventNames.open, { menu:this });return result;},listenTree: function(tree) {var nodes = tree.getDescendants();for(var i=0; i<nodes.length; i++) {if (!nodes[i].isTreeNode) continue;this.bindDomNode(nodes[i].labelNode);}
-var _this = this;dojo.event.topic.subscribe(tree.eventNames.createDOMNode, this, "onCreateDOMNode");dojo.event.topic.subscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.subscribe(tree.eventNames.moveTo, this, "onMoveTo");dojo.event.topic.subscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.subscribe(tree.eventNames.addChild, this, "onAddChild");dojo.event.topic.subscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");this.listenedTrees.push(tree);},unlistenTree: function(tree) {dojo.event.topic.unsubscribe(tree.eventNames.createDOMNode, this, "onCreateDOMNode");dojo.event.topic.unsubscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.unsubscribe(tree.eventNames.moveTo, this, "onMoveTo");dojo.event.topic.unsubscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.unsubscribe(tree.eventNames.addChild, this, "onAddChild");dojo.event.topic.unsubscribe(tree.eventNames.treeDestroy, this, "onTree
 Destroy");for(var i=0; i<this.listenedTrees.length; i++){if(this.listenedTrees[i] === tree){this.listenedTrees.splice(i, 1);break;}}},onTreeDestroy: function(message) {this.unlistenTree(message.source);},bindTreeNode: function(node) {var _this = this;dojo.lang.forEach(node.getDescendants(),function(e) {_this.bindDomNode(e.labelNode); }
+var _this = this;dojo.event.topic.subscribe(tree.eventNames.createDOMNode, this, "onCreateDOMNode");dojo.event.topic.subscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.subscribe(tree.eventNames.moveTo, this, "onMoveTo");dojo.event.topic.subscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.subscribe(tree.eventNames.addChild, this, "onAddChild");dojo.event.topic.subscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");this.listenedTrees.push(tree);},unlistenTree: function(tree) {dojo.event.topic.unsubscribe(tree.eventNames.createDOMNode, this, "onCreateDOMNode");dojo.event.topic.unsubscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.unsubscribe(tree.eventNames.moveTo, this, "onMoveTo");dojo.event.topic.unsubscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.unsubscribe(tree.eventNames.addChild, this, "onAddChild");dojo.event.topic.unsubscribe(tree.eventNames.treeDestroy, this, "onTree
 Destroy");for(var i=0; i<this.listenedTrees.length; i++){if(this.listenedTrees[i] === tree){this.listenedTrees.splice(i, 1);break;}}
+},onTreeDestroy: function(message) {this.unlistenTree(message.source);},bindTreeNode: function(node) {var _this = this;dojo.lang.forEach(node.getDescendants(),function(e) {_this.bindDomNode(e.labelNode); }
 );},unBindTreeNode: function(node) {var _this = this;dojo.lang.forEach(node.getDescendants(),function(e) {_this.unBindDomNode(e.labelNode); }
-);},onCreateDOMNode: function(message) {this.bindTreeNode(message.source);},onMoveFrom: function(message) {if (!dojo.lang.inArray(this.listenedTrees, message.newTree)) {this.unBindTreeNode(message.child);}},onMoveTo: function(message) {if (dojo.lang.inArray(this.listenedTrees, message.newTree)) {this.bindTreeNode(message.child);}},onRemoveNode: function(message) {this.unBindTreeNode(message.child);},onAddChild: function(message) {if (message.domNodeInitialized) {this.bindTreeNode(message.child);}}});dojo.widget.defineWidget("dojo.widget.TreeMenuItem", dojo.widget.MenuItem2, {treeActions: "",initialize: function(args, frag) {this.treeActions = this.treeActions.split(",");for(var i=0; i<this.treeActions.length; i++) {this.treeActions[i] = this.treeActions[i].toUpperCase();}},getTreeNode: function() {var menu = this;while (! (menu instanceof dojo.widget.TreeContextMenu) ) {menu = menu.parent;}
+);},onCreateDOMNode: function(message) {this.bindTreeNode(message.source);},onMoveFrom: function(message) {if (!dojo.lang.inArray(this.listenedTrees, message.newTree)) {this.unBindTreeNode(message.child);}},onMoveTo: function(message) {if (dojo.lang.inArray(this.listenedTrees, message.newTree)) {this.bindTreeNode(message.child);}},onRemoveNode: function(message) {this.unBindTreeNode(message.child);},onAddChild: function(message) {if (message.domNodeInitialized) {this.bindTreeNode(message.child);}}
+});dojo.widget.defineWidget("dojo.widget.TreeMenuItem", dojo.widget.MenuItem2, {treeActions: "",initialize: function(args, frag) {this.treeActions = this.treeActions.split(",");for(var i=0; i<this.treeActions.length; i++) {this.treeActions[i] = this.treeActions[i].toUpperCase();}},getTreeNode: function() {var menu = this;while (! (menu instanceof dojo.widget.TreeContextMenu) ) {menu = menu.parent;}
 var source = menu.getTopOpenEvent().target;while (!source.getAttribute('treeNode') && source.tagName != 'body') {source = source.parentNode;}
 if (source.tagName == 'body') {dojo.raise("treeNode not detected");}
 var treeNode = dojo.widget.manager.getWidgetById(source.getAttribute('treeNode'));return treeNode;},menuOpen: function(message) {var treeNode = this.getTreeNode();this.setDisabled(false);var _this = this;dojo.lang.forEach(_this.treeActions,function(action) {_this.setDisabled( treeNode.actionIsDisabled(action) );}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenuV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenuV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenuV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeContextMenuV3.js Thu Dec 14 07:45:13 2006
@@ -2,9 +2,11 @@
 dojo.provide("dojo.widget.TreeContextMenuV3");dojo.require("dojo.event.*");dojo.require("dojo.io.*");dojo.require("dojo.widget.*");dojo.require("dojo.widget.Menu2");dojo.require("dojo.widget.TreeCommon");dojo.widget.defineWidget(
 "dojo.widget.TreeContextMenuV3",[dojo.widget.PopupMenu2, dojo.widget.TreeCommon],function() {this.listenedTrees = {};},{listenTreeEvents: ["afterTreeCreate","beforeTreeDestroy"],listenNodeFilter: function(elem) { return elem instanceof dojo.widget.Widget},onAfterTreeCreate: function(message) {var tree = message.source;this.bindDomNode(tree.domNode);},onBeforeTreeDestroy: function(message) {this.unBindDomNode(message.source.domNode);},getTreeNode: function() {var source = this.getTopOpenEvent().target;var treeNode = this.domElement2TreeNode(source);return treeNode;},open: function() {var result = dojo.widget.PopupMenu2.prototype.open.apply(this, arguments);for(var i=0; i< this.children.length; i++) {if (this.children[i].menuOpen) {this.children[i].menuOpen(this.getTreeNode());}}
 return result;},close: function(){for(var i=0; i< this.children.length; i++) {if (this.children[i].menuClose) {this.children[i].menuClose(this.getTreeNode());}}
-var result = dojo.widget.PopupMenu2.prototype.close.apply(this, arguments);return result}});dojo.widget.defineWidget(
+var result = dojo.widget.PopupMenu2.prototype.close.apply(this, arguments);return result
+}});dojo.widget.defineWidget(
 "dojo.widget.TreeMenuItemV3",[dojo.widget.MenuItem2, dojo.widget.TreeCommon],function() {this.treeActions = [];},{treeActions: "",initialize: function(args, frag) {for(var i=0; i<this.treeActions.length; i++) {this.treeActions[i] = this.treeActions[i].toUpperCase();}},getTreeNode: function() {var menu = this;while (! (menu instanceof dojo.widget.TreeContextMenuV3) ) {menu = menu.parent;}
 var treeNode = menu.getTreeNode()
 return treeNode;},menuOpen: function(treeNode) {treeNode.viewEmphasize()
 this.setDisabled(false);var _this = this;dojo.lang.forEach(_this.treeActions,function(action) {_this.setDisabled( treeNode.actionIsDisabledNow(action) );}
-);},menuClose: function(treeNode) {treeNode.viewUnemphasize()},toString: function() {return "["+this.widgetType+" node "+this.getTreeNode()+"]";}});
\ No newline at end of file
+);},menuClose: function(treeNode) {treeNode.viewUnemphasize()
+},toString: function() {return "["+this.widgetType+" node "+this.getTreeNode()+"]";}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeControllerExtension.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeControllerExtension.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeControllerExtension.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeControllerExtension.js Thu Dec 14 07:45:13 2006
@@ -3,5 +3,7 @@
 "dojo.widget.TreeControllerExtension",null,{saveExpandedIndices: function(node, field) {var obj = {};for(var i=0; i<node.children.length; i++) {if (node.children[i].isExpanded) {var key = dojo.lang.isUndefined(field) ? i : node.children[i][field];obj[key] = this.saveExpandedIndices(node.children[i], field);}}
 return obj;},restoreExpandedIndices: function(node, savedIndices, field) {var _this = this;var handler = function(node, savedIndices) {this.node = node;this.savedIndices = savedIndices;this.process = function() {_this.restoreExpandedIndices(this.node, this.savedIndices, field);};}
 for(var i=0; i<node.children.length; i++) {var child = node.children[i];var found = false;var key = -1;if (dojo.lang.isUndefined(field) && savedIndices[i]) {found = true;key = i;}
-if (field) {for(var key in savedIndices) {if (key == child[field]) {found = true;break;}}}
-if (found) {var h = new handler(child, savedIndices[key]);_this.expand(child, false, h, h.process);} else if (child.isExpanded) {dojo.lang.forEach(child.getDescendants(), function(elem) { _this.collapse(elem); });}}}});
\ No newline at end of file
+if (field) {for(var key in savedIndices) {if (key == child[field]) {found = true;break;}}
+}
+if (found) {var h = new handler(child, savedIndices[key]);_this.expand(child, false, h, h.process);} else if (child.isExpanded) {dojo.lang.forEach(child.getDescendants(), function(elem) { _this.collapse(elem); });}}
+}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDndControllerV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDndControllerV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDndControllerV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDndControllerV3.js Thu Dec 14 07:45:13 2006
@@ -3,4 +3,5 @@
 "dojo.widget.TreeDndControllerV3",[dojo.widget.HtmlWidget, dojo.widget.TreeCommon],function() {this.dragSources = {};this.dropTargets = {};this.listenedTrees = {};},{listenTreeEvents: ["afterChangeTree","beforeTreeDestroy", "afterAddChild"],listenNodeFilter: function(elem) { return elem instanceof dojo.widget.Widget},initialize: function(args) {this.treeController = dojo.lang.isString(args.controller) ? dojo.widget.byId(args.controller) : args.controller;if (!this.treeController) {dojo.raise("treeController must be declared");}},onBeforeTreeDestroy: function(message) {this.unlistenTree(message.source);},onAfterAddChild: function(message) {this.listenNode(message.child);},onAfterChangeTree: function(message) {if (!message.oldTree) return;if (!message.newTree || !this.listenedTrees[message.newTree.widgetId]) {this.processDescendants(message.node, this.listenNodeFilter, this.unlistenNode);}
 if (!this.listenedTrees[message.oldTree.widgetId]) {this.processDescendants(message.node, this.listenNodeFilter, this.listenNode);}},listenNode: function(node) {if (!node.tree.DndMode) return;if (this.dragSources[node.widgetId] || this.dropTargets[node.widgetId]) return;var source = null;var target = null;if (!node.actionIsDisabled(node.actions.MOVE)) {var source = this.makeDragSource(node);this.dragSources[node.widgetId] = source;}
 var target = this.makeDropTarget(node);this.dropTargets[node.widgetId] = target;},makeDragSource: function(node) {return new dojo.dnd.TreeDragSourceV3(node.contentNode, this, node.tree.widgetId, node);},makeDropTarget: function(node) {return new dojo.dnd.TreeDropTargetV3(node.contentNode, this.treeController, node.tree.DndAcceptTypes, node);},unlistenNode: function(node) {if (this.dragSources[node.widgetId]) {dojo.dnd.dragManager.unregisterDragSource(this.dragSources[node.widgetId]);delete this.dragSources[node.widgetId];}
-if (this.dropTargets[node.widgetId]) {dojo.dnd.dragManager.unregisterDropTarget(this.dropTargets[node.widgetId]);delete this.dropTargets[node.widgetId];}}});
\ No newline at end of file
+if (this.dropTargets[node.widgetId]) {dojo.dnd.dragManager.unregisterDropTarget(this.dropTargets[node.widgetId]);delete this.dropTargets[node.widgetId];}}
+});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDocIconExtension.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDocIconExtension.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDocIconExtension.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeDocIconExtension.js Thu Dec 14 07:45:13 2006
@@ -3,4 +3,5 @@
 "dojo.widget.TreeDocIconExtension",[dojo.widget.TreeExtension],{templateCssPath: dojo.uri.dojoUri("src/widget/templates/TreeDocIcon.css"),listenTreeEvents: ["afterChangeTree","afterSetFolder","afterUnsetFolder"],listenNodeFilter: function(elem) { return elem instanceof dojo.widget.Widget },getnodeDocType: function(node) {var nodeDocType = node.getnodeDocType();if (!nodeDocType) {nodeDocType = node.isFolder ? "Folder" : "Document";}
 return nodeDocType;},setnodeDocTypeClass: function(node) {var reg = new RegExp("(^|\\s)"+node.tree.classPrefix+"Icon\\w+",'g');var clazz = dojo.html.getClass(node.iconNode).replace(reg,'') + ' ' + node.tree.classPrefix+'Icon'+this.getnodeDocType(node);dojo.html.setClass(node.iconNode, clazz);},onAfterSetFolder: function(message) {if (message.source.iconNode) {this.setnodeDocTypeClass(message.source);}},onAfterUnsetFolder: function(message) {this.setnodeDocTypeClass(message.source);},listenNode: function(node) {node.contentIconNode = document.createElement("div");var clazz = node.tree.classPrefix+"IconContent";if (dojo.render.html.ie) {clazz = clazz+' '+ node.tree.classPrefix+"IEIconContent";}
 dojo.html.setClass(node.contentIconNode, clazz);node.contentNode.parentNode.replaceChild(node.contentIconNode, node.expandNode);node.iconNode = document.createElement("div");dojo.html.setClass(node.iconNode, node.tree.classPrefix+"Icon"+' '+node.tree.classPrefix+'Icon'+this.getnodeDocType(node));node.contentIconNode.appendChild(node.expandNode);node.contentIconNode.appendChild(node.iconNode);dojo.dom.removeNode(node.contentNode);node.contentIconNode.appendChild(node.contentNode);},onAfterChangeTree: function(message) {var _this = this;if (!message.oldTree || !this.listenedTrees[message.oldTree.widgetId]) {this.processDescendants(message.node,this.listenNodeFilter,this.listenNode
-);}}});
\ No newline at end of file
+);}}
+});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeEmphasizeOnSelect.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeEmphasizeOnSelect.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeEmphasizeOnSelect.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeEmphasizeOnSelect.js Thu Dec 14 07:45:13 2006
@@ -1,3 +1,5 @@
 
 dojo.provide("dojo.widget.TreeEmphasizeOnSelect");dojo.require("dojo.widget.HtmlWidget");dojo.require("dojo.widget.TreeSelectorV3");dojo.require("dojo.html.selection");dojo.widget.defineWidget(
-"dojo.widget.TreeEmphasizeOnSelect",dojo.widget.HtmlWidget,{selector: "",initialize: function() {this.selector = dojo.widget.byId(this.selector);dojo.event.topic.subscribe(this.selector.eventNames.select, this, "onSelect");dojo.event.topic.subscribe(this.selector.eventNames.deselect, this, "onDeselect");},onSelect: function(message) {message.node.viewEmphasize()},onDeselect: function(message) {message.node.viewUnemphasize()}});
\ No newline at end of file
+"dojo.widget.TreeEmphasizeOnSelect",dojo.widget.HtmlWidget,{selector: "",initialize: function() {this.selector = dojo.widget.byId(this.selector);dojo.event.topic.subscribe(this.selector.eventNames.select, this, "onSelect");dojo.event.topic.subscribe(this.selector.eventNames.deselect, this, "onDeselect");},onSelect: function(message) {message.node.viewEmphasize()
+},onDeselect: function(message) {message.node.viewUnemphasize()
+}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeExpandToNodeOnSelect.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeExpandToNodeOnSelect.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeExpandToNodeOnSelect.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeExpandToNodeOnSelect.js Thu Dec 14 07:45:13 2006
@@ -1,3 +1,4 @@
 
 dojo.provide("dojo.widget.TreeExpandToNodeOnSelect");dojo.require("dojo.widget.HtmlWidget");dojo.widget.defineWidget(
-"dojo.widget.TreeExpandToNodeOnSelect",dojo.widget.HtmlWidget,{selector: "",controller: "",withSelected: false,initialize: function() {this.selector = dojo.widget.byId(this.selector);this.controller = dojo.widget.byId(this.controller);dojo.event.topic.subscribe(this.selector.eventNames.select, this, "onSelectEvent");},onSelectEvent: function(message) {this.controller.expandToNode(message.node, this.withSelected)}});
\ No newline at end of file
+"dojo.widget.TreeExpandToNodeOnSelect",dojo.widget.HtmlWidget,{selector: "",controller: "",withSelected: false,initialize: function() {this.selector = dojo.widget.byId(this.selector);this.controller = dojo.widget.byId(this.controller);dojo.event.topic.subscribe(this.selector.eventNames.select, this, "onSelectEvent");},onSelectEvent: function(message) {this.controller.expandToNode(message.node, this.withSelected)
+}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLinkExtension.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLinkExtension.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLinkExtension.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLinkExtension.js Thu Dec 14 07:45:13 2006
@@ -1,4 +1,5 @@
 
 dojo.provide("dojo.widget.TreeLinkExtension");dojo.require("dojo.widget.HtmlWidget");dojo.require("dojo.widget.TreeExtension");dojo.widget.defineWidget(
 "dojo.widget.TreeLinkExtension",dojo.widget.TreeExtension,function() {this.params = {};},{listenTreeEvents: ["afterChangeTree"],listenTree: function(tree) {dojo.widget.TreeCommon.prototype.listenTree.call(this,tree);var labelNode = tree.labelNodeTemplate;var newLabel = this.makeALabel();dojo.html.setClass(newLabel, dojo.html.getClass(labelNode));labelNode.parentNode.replaceChild(newLabel, labelNode);},makeALabel: function() {var newLabel = document.createElement("a");for(var key in this.params) {if (key in {}) continue;newLabel.setAttribute(key, this.params[key]);}
-return newLabel;},onAfterChangeTree: function(message) {var _this = this;if (!message.oldTree) {this.listenNode(message.node);}},listenNode: function(node) {for(var key in node.object) {if (key in {}) continue;node.labelNode.setAttribute(key, node.object[key]);}}});
\ No newline at end of file
+return newLabel;},onAfterChangeTree: function(message) {var _this = this;if (!message.oldTree) {this.listenNode(message.node);}},listenNode: function(node) {for(var key in node.object) {if (key in {}) continue;node.labelNode.setAttribute(key, node.object[key]);}}
+});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingController.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingController.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingController.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingController.js Thu Dec 14 07:45:13 2006
@@ -10,7 +10,9 @@
 if(type == "load"){kw.load.call(this, data);}else{this.RPCErrorHandler(type, data, evt);}}
 if (kw.lock) {dojo.lang.forEach(kw.lock,function(t) { t.lock() }
 );}
-dojo.io.bind({url: kw.url,handle: dojo.lang.hitch(this, handle),mimetype: "text/json",preventCache: _this.preventCache,sync: kw.sync,content: { data: dojo.json.serialize(kw.params) }});},loadRemote: function(node, sync, callObj, callFunc){var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)};this.runRPC({url: this.getRPCUrl('getChildren'),load: function(result) {_this.loadProcessResponse(node, result, callObj, callFunc) ;},sync: sync,lock: [node],params: params});},expand: function(node, sync, callObj, callFunc) {if (node.state == node.loadStates.UNCHECKED && node.isFolder) {this.loadRemote(node, sync,this,function(node, newChildren) {this.expand(node, sync, callObj, callFunc);}
+dojo.io.bind({url: kw.url,handle: dojo.lang.hitch(this, handle),mimetype: "text/json",preventCache: _this.preventCache,sync: kw.sync,content: { data: dojo.json.serialize(kw.params) }});},loadRemote: function(node, sync, callObj, callFunc){var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+};this.runRPC({url: this.getRPCUrl('getChildren'),load: function(result) {_this.loadProcessResponse(node, result, callObj, callFunc) ;},sync: sync,lock: [node],params: params
+});},expand: function(node, sync, callObj, callFunc) {if (node.state == node.loadStates.UNCHECKED && node.isFolder) {this.loadRemote(node, sync,this,function(node, newChildren) {this.expand(node, sync, callObj, callFunc);}
 );return;}
 dojo.widget.TreeBasicController.prototype.expand.apply(this, arguments);},doMove: function(child, newParent, index) {if (newParent.isTreeNode && newParent.state == newParent.loadStates.UNCHECKED) {this.loadRemote(newParent, true);}
 return dojo.widget.TreeBasicController.prototype.doMove.apply(this, arguments);},doCreateChild: function(parent, index, data, callObj, callFunc) {if (parent.state == parent.loadStates.UNCHECKED) {this.loadRemote(parent, true);}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingControllerV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingControllerV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingControllerV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeLoadingControllerV3.js Thu Dec 14 07:45:13 2006
@@ -24,7 +24,9 @@
 if (prefix.lastIndexOf("/") != prefix.length-1) {prefix = prefix+'/';}
 url = protocol + '://' + prefix + url;}
 return url + (url.indexOf("?")>-1 ? "&" : "?") + this.RpcActionParam+"="+action;},loadProcessResponse: function(node, result) {if (!dojo.lang.isArray(result)) {throw new dojo.FormatError('loadProcessResponse: Not array loaded: '+result);}
-node.setChildren(result);},runRpc: function(kw) {var _this = this;var deferred = new dojo.Deferred();dojo.io.bind({url: kw.url,handle: this.getDeferredBindHandler(deferred),mimetype: "text/javascript",preventCache: this.preventCache,sync: kw.sync,content: { data: dojo.json.serialize(kw.params) }});return deferred;},loadRemote: function(node, sync){var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)};var deferred = this.runRpc({url: this.getRpcUrl('getChildren'),sync: sync,params: params});deferred.addCallback(function(res) { return _this.loadProcessResponse(node,res) });return deferred;},batchExpandTimeout: 0,recurseToLevel: function(widget, level, callFunc, callObj, skipFirst, sync) {if (level == 0) return;if (!skipFirst) {var deferred = callFunc.call(callObj, widget, sync);} else {var deferred = dojo.Deferred.prototype.makeCalled();}
+node.setChildren(result);},runRpc: function(kw) {var _this = this;var deferred = new dojo.Deferred();dojo.io.bind({url: kw.url,handle: this.getDeferredBindHandler(deferred),mimetype: "text/javascript",preventCache: this.preventCache,sync: kw.sync,content: { data: dojo.json.serialize(kw.params) }});return deferred;},loadRemote: function(node, sync){var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+};var deferred = this.runRpc({url: this.getRpcUrl('getChildren'),sync: sync,params: params
+});deferred.addCallback(function(res) { return _this.loadProcessResponse(node,res) });return deferred;},batchExpandTimeout: 0,recurseToLevel: function(widget, level, callFunc, callObj, skipFirst, sync) {if (level == 0) return;if (!skipFirst) {var deferred = callFunc.call(callObj, widget, sync);} else {var deferred = dojo.Deferred.prototype.makeCalled();}
 var _this = this;var recurseOnExpand = function() {var children = widget.children;var deferreds = [];for(var i=0; i<children.length; i++) {deferreds.push(_this.recurseToLevel(children[i], level-1, callFunc, callObj, sync));}
 return new dojo.DeferredList(deferreds);}
 deferred.addCallback(recurseOnExpand);return deferred;},expandToLevel: function(nodeOrTree, level, sync) {return this.recurseToLevel(nodeOrTree, nodeOrTree.isTree ? level+1 : level, this.expand, this, nodeOrTree.isTree, sync);},loadToLevel: function(nodeOrTree, level, sync) {return this.recurseToLevel(nodeOrTree, nodeOrTree.isTree ? level+1 : level, this.loadIfNeeded, this, nodeOrTree.isTree, sync);},loadAll: function(nodeOrTree, sync) {return this.loadToLevel(nodeOrTree, Number.POSITIVE_INFINITY, sync);},expand: function(node, sync) {var _this = this;var deferred = this.startProcessing(node);deferred.addCallback(function() {return _this.loadIfNeeded(node, sync);});deferred.addCallback(function(res) {dojo.widget.TreeBasicControllerV3.prototype.expand(node);return res;});deferred.addBoth(function(res) {_this.finishProcessing(node);return res;});return deferred;},loadIfNeeded: function(node, sync) {var deferred
@@ -38,4 +40,5 @@
 if (nodes[i].isTreeNode) {nodes[i].markProcessing();}
 nodes[i].lock();}
 deferred.callback();return deferred;},finishProcessing: function(nodesArray) {var nodes = dojo.lang.isArray(nodesArray) ? nodesArray : arguments;for(var i=0;i<nodes.length;i++) {if (!nodes[i].hasLock()) {continue;}
-nodes[i].unlock();if (nodes[i].isTreeNode) {nodes[i].unmarkProcessing();}}},refreshChildren: function(nodeOrTree, sync) {return this.runStages(null, this.prepareRefreshChildren, this.doRefreshChildren, this.finalizeRefreshChildren, this.exposeRefreshChildren, arguments);},prepareRefreshChildren: function(nodeOrTree, sync) {var deferred = this.startProcessing(nodeOrTree);nodeOrTree.destroyChildren();nodeOrTree.state = nodeOrTree.loadStates.UNCHECKED;return deferred;},doRefreshChildren: function(nodeOrTree, sync) {return this.loadRemote(nodeOrTree, sync);},finalizeRefreshChildren: function(nodeOrTree, sync) {this.finishProcessing(nodeOrTree);},exposeRefreshChildren: function(nodeOrTree, sync) {nodeOrTree.expand();},move: function(child, newParent, index) {return this.runStages(this.canMove, this.prepareMove, this.doMove, this.finalizeMove, this.exposeMove, arguments);},doMove: function(child, newParent, index) {child.tree.move(child, newParent, index);return true;},prepareMove
 : function(child, newParent, index, sync) {var deferred = this.startProcessing(newParent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(newParent, sync);}));return deferred;},finalizeMove: function(child, newParent) {this.finishProcessing(newParent);},prepareCreateChild: function(parent, index, data, sync) {var deferred = this.startProcessing(parent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(parent, sync);}));return deferred;},finalizeCreateChild: function(parent) {this.finishProcessing(parent);},prepareClone: function(child, newParent, index, deep, sync) {var deferred = this.startProcessing(child, newParent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(newParent, sync);}));return deferred;},finalizeClone: function(child, newParent) {this.finishProcessing(child, newParent);}});
\ No newline at end of file
+nodes[i].unlock();if (nodes[i].isTreeNode) {nodes[i].unmarkProcessing();}}
+},refreshChildren: function(nodeOrTree, sync) {return this.runStages(null, this.prepareRefreshChildren, this.doRefreshChildren, this.finalizeRefreshChildren, this.exposeRefreshChildren, arguments);},prepareRefreshChildren: function(nodeOrTree, sync) {var deferred = this.startProcessing(nodeOrTree);nodeOrTree.destroyChildren();nodeOrTree.state = nodeOrTree.loadStates.UNCHECKED;return deferred;},doRefreshChildren: function(nodeOrTree, sync) {return this.loadRemote(nodeOrTree, sync);},finalizeRefreshChildren: function(nodeOrTree, sync) {this.finishProcessing(nodeOrTree);},exposeRefreshChildren: function(nodeOrTree, sync) {nodeOrTree.expand();},move: function(child, newParent, index) {return this.runStages(this.canMove, this.prepareMove, this.doMove, this.finalizeMove, this.exposeMove, arguments);},doMove: function(child, newParent, index) {child.tree.move(child, newParent, index);return true;},prepareMove: function(child, newParent, index, sync) {var deferred = this.startProces
 sing(newParent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(newParent, sync);}));return deferred;},finalizeMove: function(child, newParent) {this.finishProcessing(newParent);},prepareCreateChild: function(parent, index, data, sync) {var deferred = this.startProcessing(parent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(parent, sync);}));return deferred;},finalizeCreateChild: function(parent) {this.finishProcessing(parent);},prepareClone: function(child, newParent, index, deep, sync) {var deferred = this.startProcessing(child, newParent);deferred.addCallback(dojo.lang.hitch(this, function() {return this.loadIfNeeded(newParent, sync);}));return deferred;},finalizeClone: function(child, newParent) {this.finishProcessing(child, newParent);}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNode.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNode.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNode.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNode.js Thu Dec 14 07:45:13 2006
@@ -1,25 +1,32 @@
 
-dojo.provide("dojo.widget.TreeNode");dojo.require("dojo.html.*");dojo.require("dojo.event.*");dojo.require("dojo.io.*");dojo.widget.defineWidget("dojo.widget.TreeNode", dojo.widget.HtmlWidget, function() {this.actionsDisabled = [];},{widgetType: "TreeNode",loadStates: {UNCHECKED: "UNCHECKED",LOADING: "LOADING",LOADED: "LOADED"},actions: {MOVE: "MOVE",REMOVE: "REMOVE",EDIT: "EDIT",ADDCHILD: "ADDCHILD"},isContainer: true,lockLevel: 0,templateString: ('<div class="dojoTreeNode"> '
+dojo.provide("dojo.widget.TreeNode");dojo.require("dojo.html.*");dojo.require("dojo.event.*");dojo.require("dojo.io.*");dojo.widget.defineWidget("dojo.widget.TreeNode", dojo.widget.HtmlWidget, function() {this.actionsDisabled = [];},{widgetType: "TreeNode",loadStates: {UNCHECKED: "UNCHECKED",LOADING: "LOADING",LOADED: "LOADED"
+},actions: {MOVE: "MOVE",REMOVE: "REMOVE",EDIT: "EDIT",ADDCHILD: "ADDCHILD"
+},isContainer: true,lockLevel: 0,templateString: ('<div class="dojoTreeNode"> '
 + '<span treeNode="${this.widgetId}" class="dojoTreeNodeLabel" dojoAttachPoint="labelNode"> '
-+ '		<span dojoAttachPoint="titleNode" dojoAttachEvent="onClick: onTitleClick" class="dojoTreeNodeLabelTitle">${this.title}</span> '
++ '<span dojoAttachPoint="titleNode" dojoAttachEvent="onClick: onTitleClick" class="dojoTreeNodeLabelTitle">${this.title}</span> '
 + '</span> '
 + '<span class="dojoTreeNodeAfterLabel" dojoAttachPoint="afterLabelNode">${this.afterLabel}</span> '
 + '<div dojoAttachPoint="containerNode" style="display:none"></div> '
 + '</div>').replace(/(>|<)\s+/g, '$1'),childIconSrc: "",childIconFolderSrc: dojo.uri.dojoUri("src/widget/templates/images/Tree/closed.gif"),childIconDocumentSrc: dojo.uri.dojoUri("src/widget/templates/images/Tree/document.gif"),childIcon: null,isTreeNode: true,objectId: "",afterLabel: "",afterLabelNode: null,expandIcon: null,title: "",object: "",isFolder: false,labelNode: null,titleNode: null,imgs: null,expandLevel: "",tree: null,depth: 0,isExpanded: false,state: null,domNodeInitialized: false,isFirstChild: function() {return this.getParentIndex() == 0 ? true: false;},isLastChild: function() {return this.getParentIndex() == this.parent.children.length-1 ? true : false;},lock: function(){ return this.tree.lock.apply(this, arguments) },unlock: function(){ return this.tree.unlock.apply(this, arguments) },isLocked: function(){ return this.tree.isLocked.apply(this, arguments) },cleanLock: function(){ return this.tree.cleanLock.apply(this, arguments) },actionIsDisabled: function(a
 ction) {var _this = this;var disabled = false;if (this.tree.strictFolders && action == this.actions.ADDCHILD && !this.isFolder) {disabled = true;}
 if (dojo.lang.inArray(_this.actionsDisabled, action)) {disabled = true;}
 if (this.isLocked()) {disabled = true;}
-return disabled;},getInfo: function() {var info = {widgetId: this.widgetId,objectId: this.objectId,index: this.getParentIndex(),isFolder: this.isFolder}
+return disabled;},getInfo: function() {var info = {widgetId: this.widgetId,objectId: this.objectId,index: this.getParentIndex(),isFolder: this.isFolder
+}
 return info;},initialize: function(args, frag){this.state = this.loadStates.UNCHECKED;for(var i=0; i<this.actionsDisabled.length; i++) {this.actionsDisabled[i] = this.actionsDisabled[i].toUpperCase();}
 this.expandLevel = parseInt(this.expandLevel);},adjustDepth: function(depthDiff) {for(var i=0; i<this.children.length; i++) {this.children[i].adjustDepth(depthDiff);}
 this.depth += depthDiff;if (depthDiff>0) {for(var i=0; i<depthDiff; i++) {var img = this.tree.makeBlankImg();this.imgs.unshift(img);dojo.html.insertBefore(this.imgs[0], this.domNode.firstChild);}}
-if (depthDiff<0) {for(var i=0; i<-depthDiff;i++) {this.imgs.shift();dojo.html.removeNode(this.domNode.firstChild);}}},markLoading: function() {this._markLoadingSavedIcon = this.expandIcon.src;this.expandIcon.src = this.tree.expandIconSrcLoading;},unMarkLoading: function() {if (!this._markLoadingSavedIcon) return;var im = new Image();im.src = this.tree.expandIconSrcLoading;if (this.expandIcon.src == im.src) {this.expandIcon.src = this._markLoadingSavedIcon;}
+if (depthDiff<0) {for(var i=0; i<-depthDiff;i++) {this.imgs.shift();dojo.html.removeNode(this.domNode.firstChild);}}
+},markLoading: function() {this._markLoadingSavedIcon = this.expandIcon.src;this.expandIcon.src = this.tree.expandIconSrcLoading;},unMarkLoading: function() {if (!this._markLoadingSavedIcon) return;var im = new Image();im.src = this.tree.expandIconSrcLoading;if (this.expandIcon.src == im.src) {this.expandIcon.src = this._markLoadingSavedIcon;}
 this._markLoadingSavedIcon = null;},setFolder: function() {dojo.event.connect(this.expandIcon, 'onclick', this, 'onTreeClick');this.expandIcon.src = this.isExpanded ? this.tree.expandIconSrcMinus : this.tree.expandIconSrcPlus;this.isFolder = true;},createDOMNode: function(tree, depth){this.tree = tree;this.depth = depth;this.imgs = [];for(var i=0; i<this.depth+1; i++){var img = this.tree.makeBlankImg();this.domNode.insertBefore(img, this.labelNode);this.imgs.push(img);}
 this.expandIcon = this.imgs[this.imgs.length-1];this.childIcon = this.tree.makeBlankImg();this.imgs.push(this.childIcon);dojo.html.insertBefore(this.childIcon, this.titleNode);if (this.children.length || this.isFolder) {this.setFolder();}
 else {this.state = this.loadStates.LOADED;}
 dojo.event.connect(this.childIcon, 'onclick', this, 'onIconClick');for(var i=0; i<this.children.length; i++){this.children[i].parent = this;var node = this.children[i].createDOMNode(this.tree, this.depth+1);this.containerNode.appendChild(node);}
 if (this.children.length) {this.state = this.loadStates.LOADED;}
-this.updateIcons();this.domNodeInitialized = true;dojo.event.topic.publish(this.tree.eventNames.createDOMNode, { source: this } );return this.domNode;},onTreeClick: function(e){dojo.event.topic.publish(this.tree.eventNames.treeClick, { source: this, event: e });},onIconClick: function(e){dojo.event.topic.publish(this.tree.eventNames.iconClick, { source: this, event: e });},onTitleClick: function(e){dojo.event.topic.publish(this.tree.eventNames.titleClick, { source: this, event: e });},markSelected: function() {dojo.html.addClass(this.titleNode, 'dojoTreeNodeLabelSelected');},unMarkSelected: function() {dojo.html.removeClass(this.titleNode, 'dojoTreeNodeLabelSelected');},updateExpandIcon: function() {if (this.isFolder){this.expandIcon.src = this.isExpanded ? this.tree.expandIconSrcMinus : this.tree.expandIconSrcPlus;} else {this.expandIcon.src = this.tree.blankIconSrc;}},updateExpandGrid: function() {if (this.tree.showGrid){if (this.depth){this.setGridImage(-2, this.isLastChi
 ld() ? this.tree.gridIconSrcL : this.tree.gridIconSrcT);}else{if (this.isFirstChild()){this.setGridImage(-2, this.isLastChild() ? this.tree.gridIconSrcX : this.tree.gridIconSrcY);}else{this.setGridImage(-2, this.isLastChild() ? this.tree.gridIconSrcL : this.tree.gridIconSrcT);}}}else{this.setGridImage(-2, this.tree.blankIconSrc);}},updateChildGrid: function() {if ((this.depth || this.tree.showRootGrid) && this.tree.showGrid){this.setGridImage(-1, (this.children.length && this.isExpanded) ? this.tree.gridIconSrcP : this.tree.gridIconSrcC);}else{if (this.tree.showGrid && !this.tree.showRootGrid){this.setGridImage(-1, (this.children.length && this.isExpanded) ? this.tree.gridIconSrcZ : this.tree.blankIconSrc);}else{this.setGridImage(-1, this.tree.blankIconSrc);}}},updateParentGrid: function() {var parent = this.parent;for(var i=0; i<this.depth; i++){var idx = this.imgs.length-(3+i);var img = (this.tree.showGrid && !parent.isLastChild()) ? this.tree.gridIconSrcV : this.tree.blan
 kIconSrc;this.setGridImage(idx, img);parent = parent.parent;}},updateExpandGridColumn: function() {if (!this.tree.showGrid) return;var _this = this;var icon = this.isLastChild() ? this.tree.blankIconSrc : this.tree.gridIconSrcV;dojo.lang.forEach(_this.getDescendants(),function(node) { node.setGridImage(_this.depth, icon); }
-);this.updateExpandGrid();},updateIcons: function(){this.imgs[0].style.display = this.tree.showRootGrid ? 'inline' : 'none';this.buildChildIcon();this.updateExpandGrid();this.updateChildGrid();this.updateParentGrid();dojo.profile.stop("updateIcons")},buildChildIcon: function() {if(this.childIconSrc){this.childIcon.src = this.childIconSrc;}
+this.updateIcons();this.domNodeInitialized = true;dojo.event.topic.publish(this.tree.eventNames.createDOMNode, { source: this } );return this.domNode;},onTreeClick: function(e){dojo.event.topic.publish(this.tree.eventNames.treeClick, { source: this, event: e });},onIconClick: function(e){dojo.event.topic.publish(this.tree.eventNames.iconClick, { source: this, event: e });},onTitleClick: function(e){dojo.event.topic.publish(this.tree.eventNames.titleClick, { source: this, event: e });},markSelected: function() {dojo.html.addClass(this.titleNode, 'dojoTreeNodeLabelSelected');},unMarkSelected: function() {dojo.html.removeClass(this.titleNode, 'dojoTreeNodeLabelSelected');},updateExpandIcon: function() {if (this.isFolder){this.expandIcon.src = this.isExpanded ? this.tree.expandIconSrcMinus : this.tree.expandIconSrcPlus;} else {this.expandIcon.src = this.tree.blankIconSrc;}},updateExpandGrid: function() {if (this.tree.showGrid){if (this.depth){this.setGridImage(-2, this.isLastChi
 ld() ? this.tree.gridIconSrcL : this.tree.gridIconSrcT);}else{if (this.isFirstChild()){this.setGridImage(-2, this.isLastChild() ? this.tree.gridIconSrcX : this.tree.gridIconSrcY);}else{this.setGridImage(-2, this.isLastChild() ? this.tree.gridIconSrcL : this.tree.gridIconSrcT);}}
+}else{this.setGridImage(-2, this.tree.blankIconSrc);}},updateChildGrid: function() {if ((this.depth || this.tree.showRootGrid) && this.tree.showGrid){this.setGridImage(-1, (this.children.length && this.isExpanded) ? this.tree.gridIconSrcP : this.tree.gridIconSrcC);}else{if (this.tree.showGrid && !this.tree.showRootGrid){this.setGridImage(-1, (this.children.length && this.isExpanded) ? this.tree.gridIconSrcZ : this.tree.blankIconSrc);}else{this.setGridImage(-1, this.tree.blankIconSrc);}}
+},updateParentGrid: function() {var parent = this.parent;for(var i=0; i<this.depth; i++){var idx = this.imgs.length-(3+i);var img = (this.tree.showGrid && !parent.isLastChild()) ? this.tree.gridIconSrcV : this.tree.blankIconSrc;this.setGridImage(idx, img);parent = parent.parent;}},updateExpandGridColumn: function() {if (!this.tree.showGrid) return;var _this = this;var icon = this.isLastChild() ? this.tree.blankIconSrc : this.tree.gridIconSrcV;dojo.lang.forEach(_this.getDescendants(),function(node) { node.setGridImage(_this.depth, icon); }
+);this.updateExpandGrid();},updateIcons: function(){this.imgs[0].style.display = this.tree.showRootGrid ? 'inline' : 'none';this.buildChildIcon();this.updateExpandGrid();this.updateChildGrid();this.updateParentGrid();dojo.profile.stop("updateIcons")
+},buildChildIcon: function() {if(this.childIconSrc){this.childIcon.src = this.childIconSrc;}
 this.childIcon.style.display = this.childIconSrc ? 'inline' : 'none';},setGridImage: function(idx, src){if (idx < 0){idx = this.imgs.length + idx;}
 this.imgs[idx].style.backgroundImage = 'url(' + src + ')';},updateIconTree: function(){this.tree.updateIconTree.call(this);},expand: function(){if (this.isExpanded) return;if (this.children.length) {this.showChildren();}
 this.isExpanded = true;this.updateExpandIcon();dojo.event.topic.publish(this.tree.eventNames.expand, {source: this} );},collapse: function(){if (!this.isExpanded) return;this.hideChildren();this.isExpanded = false;this.updateExpandIcon();dojo.event.topic.publish(this.tree.eventNames.collapse, {source: this} );},hideChildren: function(){this.tree.toggleObj.hide(

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNodeV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNodeV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNodeV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeNodeV3.js Thu Dec 14 07:45:13 2006
@@ -1,6 +1,7 @@
 
 dojo.provide("dojo.widget.TreeNodeV3");dojo.require("dojo.html.*");dojo.require("dojo.event.*");dojo.require("dojo.io.*");dojo.require("dojo.widget.TreeWithNode");dojo.widget.defineWidget(
-"dojo.widget.TreeNodeV3",[dojo.widget.HtmlWidget, dojo.widget.TreeWithNode],function() {this.actionsDisabled = [];this.object = {};},{tryLazyInit: true,actions: {MOVE: "MOVE",DETACH: "DETACH",EDIT: "EDIT",ADDCHILD: "ADDCHILD",SELECT: "SELECT"},labelClass: "",contentClass: "",expandNode: null,labelNode: null,nodeDocType: "",selected: false,getnodeDocType: function() {return this.nodeDocType;},cloneProperties: ["actionsDisabled","tryLazyInit","nodeDocType","objectId","object","title","isFolder","isExpanded","state"],clone: function(deep) {var ret = new this.constructor();for(var i=0; i<this.cloneProperties.length; i++) {var prop = this.cloneProperties[i];ret[prop] = dojo.lang.shallowCopy(this[prop], true);}
+"dojo.widget.TreeNodeV3",[dojo.widget.HtmlWidget, dojo.widget.TreeWithNode],function() {this.actionsDisabled = [];this.object = {};},{tryLazyInit: true,actions: {MOVE: "MOVE",DETACH: "DETACH",EDIT: "EDIT",ADDCHILD: "ADDCHILD",SELECT: "SELECT"
+},labelClass: "",contentClass: "",expandNode: null,labelNode: null,nodeDocType: "",selected: false,getnodeDocType: function() {return this.nodeDocType;},cloneProperties: ["actionsDisabled","tryLazyInit","nodeDocType","objectId","object","title","isFolder","isExpanded","state"],clone: function(deep) {var ret = new this.constructor();for(var i=0; i<this.cloneProperties.length; i++) {var prop = this.cloneProperties[i];ret[prop] = dojo.lang.shallowCopy(this[prop], true);}
 if (this.tree.unsetFolderOnEmpty && !deep && this.isFolder) {ret.isFolder = false;}
 ret.toggleObj = this.toggleObj;dojo.widget.manager.add(ret);ret.tree = this.tree;ret.buildRendering({},{});ret.initialize({},{});if (deep && this.children.length) {for(var i=0; i<this.children.length; i++) {var child = this.children[i];if (child.clone) {ret.children.push(child.clone(deep));} else {ret.children.push(dojo.lang.shallowCopy(child, deep));}}
 ret.setChildren();}
@@ -8,7 +9,8 @@
 if (!this.tree) {dojo.raise("Can't evaluate tree from arguments or parent");}
 this.domNode = this.tree.nodeTemplate.cloneNode(true);this.expandNode = this.domNode.firstChild;this.contentNode = this.domNode.childNodes[1];this.labelNode = this.contentNode.firstChild;if (this.labelClass) {dojo.html.addClass(this.labelNode, this.labelClass);}
 if (this.contentClass) {dojo.html.addClass(this.contentNode, this.contentClass);}
-this.domNode.widgetId = this.widgetId;this.labelNode.innerHTML = this.title;},isTreeNode: true,object: {},title: "",isFolder: null,contentNode: null,expandClass: "",isExpanded: false,containerNode: null,getInfo: function() {var info = {widgetId: this.widgetId,objectId: this.objectId,index: this.getParentIndex()}
+this.domNode.widgetId = this.widgetId;this.labelNode.innerHTML = this.title;},isTreeNode: true,object: {},title: "",isFolder: null,contentNode: null,expandClass: "",isExpanded: false,containerNode: null,getInfo: function() {var info = {widgetId: this.widgetId,objectId: this.objectId,index: this.getParentIndex()
+}
 return info;},setFolder: function() {this.isFolder = true;var setExpand="false";if (this.isExpanded){setExpand="true";}
 dojo.widget.wai.setAttr(this.labelNode, "waiState", "expanded", setExpand);this.viewSetExpand();if (!this.containerNode) {this.viewAddContainer();}
 dojo.event.topic.publish(this.tree.eventNames.afterSetFolder, { source: this });},initialize: function(args, frag, parent) {if (args.isFolder) {this.isFolder = true;}
@@ -17,18 +19,22 @@
 dojo.event.topic.publish(this.tree.eventNames.afterChangeTree, {oldTree:null, newTree:this.tree, node:this} );},unsetFolder: function() {this.isFolder = false;this.viewSetExpand();dojo.event.topic.publish(this.tree.eventNames.afterUnsetFolder, { source: this });},insertNode: function(parent, index) {if (!index) index = 0;if (index==0) {dojo.html.prependChild(this.domNode, parent.containerNode);} else {dojo.html.insertAfter(this.domNode, parent.children[index-1].domNode);}},updateTree: function(newTree) {if (this.tree === newTree) {return;}
 var oldTree = this.tree;dojo.lang.forEach(this.getDescendants(),function(elem) {elem.tree = newTree;});if (oldTree.classPrefix != newTree.classPrefix) {var stack = [this.domNode]
 var elem;var reg = new RegExp("(^|\\s)"+oldTree.classPrefix, "g");while (elem = stack.pop()) {for(var i=0; i<elem.childNodes.length; i++) {var childNode = elem.childNodes[i]
-if (childNode.nodeDocType != 1) continue;dojo.html.setClass(childNode, dojo.html.getClass(childNode).replace(reg, '$1'+newTree.classPrefix));stack.push(childNode);}}}
+if (childNode.nodeDocType != 1) continue;dojo.html.setClass(childNode, dojo.html.getClass(childNode).replace(reg, '$1'+newTree.classPrefix));stack.push(childNode);}}
+}
 var message = {oldTree:oldTree, newTree:newTree, node:this}
 dojo.event.topic.publish(this.tree.eventNames.afterChangeTree, message );dojo.event.topic.publish(newTree.eventNames.afterChangeTree, message );},addedTo: function(parent, index, dontPublishEvent) {if (this.tree !== parent.tree) {this.updateTree(parent.tree);}
 if (parent.isTreeNode) {if (!parent.isFolder) {parent.setFolder();parent.state = parent.loadStates.LOADED;}}
 var siblingsCount = parent.children.length;this.insertNode(parent, index);this.viewAddLayout();if (siblingsCount > 1) {if (index == 0 && parent.children[1] instanceof dojo.widget.Widget) {parent.children[1].viewUpdateLayout();}
 if (index == siblingsCount-1 && parent.children[siblingsCount-2] instanceof dojo.widget.Widget) {parent.children[siblingsCount-2].viewUpdateLayout();}} else if (parent.isTreeNode) {parent.viewSetHasChildren();}
-if (!dontPublishEvent) {var message = {child: this,index: index,parent: parent}
+if (!dontPublishEvent) {var message = {child: this,index: index,parent: parent
+}
 dojo.event.topic.publish(this.tree.eventNames.afterAddChild, message);}},createSimple: function(args, parent) {if (args.tree) {var tree = args.tree;} else if (parent) {var tree = parent.tree;} else {dojo.raise("createSimple: can't evaluate tree");}
 tree = dojo.widget.byId(tree);var treeNode = new tree.defaultChildWidget();for(var x in args){treeNode[x] = args[x];}
 treeNode.toggleObj = dojo.lfx.toggle[treeNode.toggle.toLowerCase()] || dojo.lfx.toggle.plain;dojo.widget.manager.add(treeNode);treeNode.buildRendering(args, {}, parent);treeNode.initialize(args, {}, parent);if (treeNode.parent) {delete dojo.widget.manager.topWidgets[treeNode.widgetId];}
-return treeNode;},viewUpdateLayout: function() {this.viewRemoveLayout();this.viewAddLayout();},viewAddContainer: function() {this.containerNode = this.tree.containerNodeTemplate.cloneNode(true);this.domNode.appendChild(this.containerNode);},viewAddLayout: function() {if (this.parent["isTree"]) {dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode) + ' '+this.tree.classPrefix+'IsRoot')}
-if (this.isLastChild()) {dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode) + ' '+this.tree.classPrefix+'IsLast')}},viewRemoveLayout: function() {dojo.html.removeClass(this.domNode, this.tree.classPrefix+"IsRoot");dojo.html.removeClass(this.domNode, this.tree.classPrefix+"IsLast");},viewGetExpandClass: function() {if (this.isFolder) {return this.isExpanded ? "ExpandOpen" : "ExpandClosed";} else {return "ExpandLeaf";}},viewSetExpand: function() {var expand = this.tree.classPrefix+this.viewGetExpandClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"Expand\\w+",'g');dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+expand);this.viewSetHasChildrenAndExpand();},viewGetChildrenClass: function() {return 'Children'+(this.children.length ? 'Yes' : 'No');},viewSetHasChildren: function() {var clazz = this.tree.classPrefix+this.viewGetChildrenClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"Children\\w+",'g');d
 ojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+clazz);this.viewSetHasChildrenAndExpand();},viewSetHasChildrenAndExpand: function() {var clazz = this.tree.classPrefix+'State'+this.viewGetChildrenClass()+'-'+this.viewGetExpandClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"State[\\w-]+",'g');dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+clazz);},viewUnfocus: function() {dojo.html.removeClass(this.labelNode, this.tree.classPrefix+"LabelFocused");},viewFocus: function() {dojo.html.addClass(this.labelNode, this.tree.classPrefix+"LabelFocused");},viewEmphasize: function() {dojo.html.clearSelection(this.labelNode);dojo.html.addClass(this.labelNode, this.tree.classPrefix+'NodeEmphasized');},viewUnemphasize: function() {dojo.html.removeClass(this.labelNode, this.tree.classPrefix+'NodeEmphasized');},detach: function() {if (!this.parent) return;var parent = this.parent;var index = this.getPa
 rentIndex();this.doDetach.apply(this, arguments);dojo.event.topic.publish(this.tree.eventNames.afterDetach,{ child: this, parent: parent, index:index }
+return treeNode;},viewUpdateLayout: function() {this.viewRemoveLayout();this.viewAddLayout();},viewAddContainer: function() {this.containerNode = this.tree.containerNodeTemplate.cloneNode(true);this.domNode.appendChild(this.containerNode);},viewAddLayout: function() {if (this.parent["isTree"]) {dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode) + ' '+this.tree.classPrefix+'IsRoot')
+}
+if (this.isLastChild()) {dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode) + ' '+this.tree.classPrefix+'IsLast')
+}},viewRemoveLayout: function() {dojo.html.removeClass(this.domNode, this.tree.classPrefix+"IsRoot");dojo.html.removeClass(this.domNode, this.tree.classPrefix+"IsLast");},viewGetExpandClass: function() {if (this.isFolder) {return this.isExpanded ? "ExpandOpen" : "ExpandClosed";} else {return "ExpandLeaf";}},viewSetExpand: function() {var expand = this.tree.classPrefix+this.viewGetExpandClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"Expand\\w+",'g');dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+expand);this.viewSetHasChildrenAndExpand();},viewGetChildrenClass: function() {return 'Children'+(this.children.length ? 'Yes' : 'No');},viewSetHasChildren: function() {var clazz = this.tree.classPrefix+this.viewGetChildrenClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"Children\\w+",'g');dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+clazz);this.viewSetHasChildrenAndExpand()
 ;},viewSetHasChildrenAndExpand: function() {var clazz = this.tree.classPrefix+'State'+this.viewGetChildrenClass()+'-'+this.viewGetExpandClass();var reg = new RegExp("(^|\\s)"+this.tree.classPrefix+"State[\\w-]+",'g');dojo.html.setClass(this.domNode, dojo.html.getClass(this.domNode).replace(reg,'') + ' '+clazz);},viewUnfocus: function() {dojo.html.removeClass(this.labelNode, this.tree.classPrefix+"LabelFocused");},viewFocus: function() {dojo.html.addClass(this.labelNode, this.tree.classPrefix+"LabelFocused");},viewEmphasize: function() {dojo.html.clearSelection(this.labelNode);dojo.html.addClass(this.labelNode, this.tree.classPrefix+'NodeEmphasized');},viewUnemphasize: function() {dojo.html.removeClass(this.labelNode, this.tree.classPrefix+'NodeEmphasized');},detach: function() {if (!this.parent) return;var parent = this.parent;var index = this.getParentIndex();this.doDetach.apply(this, arguments);dojo.event.topic.publish(this.tree.eventNames.afterDetach,{ child: this, parent
 : parent, index:index }
 );},doDetach: function() {var parent = this.parent;if (!parent) return;var index = this.getParentIndex();this.viewRemoveLayout();dojo.widget.DomWidget.prototype.removeChild.call(parent, this);var siblingsCount = parent.children.length;if (siblingsCount > 0) {if (index == 0) {parent.children[0].viewUpdateLayout();}
 if (index == siblingsCount) {parent.children[siblingsCount-1].viewUpdateLayout();}} else {if (parent.isTreeNode) {parent.viewSetHasChildren();}}
 if (this.tree.unsetFolderOnEmpty && !parent.children.length && parent.isTreeNode) {parent.unsetFolder();}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRPCController.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRPCController.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRPCController.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRPCController.js Thu Dec 14 07:45:13 2006
@@ -1,10 +1,20 @@
 
 dojo.provide("dojo.widget.TreeRPCController");dojo.require("dojo.event.*");dojo.require("dojo.json")
-dojo.require("dojo.io.*");dojo.require("dojo.widget.TreeLoadingController");dojo.widget.defineWidget("dojo.widget.TreeRPCController", dojo.widget.TreeLoadingController, {doMove: function(child, newParent, index){var params = {child: this.getInfo(child),childTree: this.getInfo(child.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),newIndex: index};var success;this.runRPC({url: this.getRPCUrl('move'),load: function(response){success = this.doMoveProcessResponse(response, child, newParent, index) ;},sync: true,lock: [child, newParent],params: params});return success;},doMoveProcessResponse: function(response, child, newParent, index){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server", response.error);return false;}
-var args = [child, newParent, index];return dojo.widget.TreeLoadingController.prototype.doMove.apply(this, args);},doRemoveNode: function(node, callObj, callFunc){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)}
-this.runRPC({url: this.getRPCUrl('removeNode'),load: function(response){this.doRemoveNodeProcessResponse(response, node, callObj, callFunc)},params: params,lock: [node]});},doRemoveNodeProcessResponse: function(response, node, callObj, callFunc){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server", response.error);return false;}
+dojo.require("dojo.io.*");dojo.require("dojo.widget.TreeLoadingController");dojo.widget.defineWidget("dojo.widget.TreeRPCController", dojo.widget.TreeLoadingController, {doMove: function(child, newParent, index){var params = {child: this.getInfo(child),childTree: this.getInfo(child.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),newIndex: index
+};var success;this.runRPC({url: this.getRPCUrl('move'),load: function(response){success = this.doMoveProcessResponse(response, child, newParent, index) ;},sync: true,lock: [child, newParent],params: params
+});return success;},doMoveProcessResponse: function(response, child, newParent, index){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server", response.error);return false;}
+var args = [child, newParent, index];return dojo.widget.TreeLoadingController.prototype.doMove.apply(this, args);},doRemoveNode: function(node, callObj, callFunc){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+}
+this.runRPC({url: this.getRPCUrl('removeNode'),load: function(response){this.doRemoveNodeProcessResponse(response, node, callObj, callFunc)
+},params: params,lock: [node]
+});},doRemoveNodeProcessResponse: function(response, node, callObj, callFunc){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server", response.error);return false;}
 if(!response){ return false; }
-if(response == true){var args = [ node, callObj, callFunc ];dojo.widget.TreeLoadingController.prototype.doRemoveNode.apply(this, args);return;}else if(dojo.lang.isObject(response)){dojo.raise(response.error);}else{dojo.raise("Invalid response "+response)}},doCreateChild: function(parent, index, output, callObj, callFunc){var params = {tree: this.getInfo(parent.tree),parent: this.getInfo(parent),index: index,data: output}
-this.runRPC({url: this.getRPCUrl('createChild'),load: function(response) {this.doCreateChildProcessResponse( response, parent, index, callObj, callFunc)},params: params,lock: [parent]});},doCreateChildProcessResponse: function(response, parent, index, callObj, callFunc){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server",response.error);return false;}
-if(!dojo.lang.isObject(response)){dojo.raise("Invalid result "+response)}
+if(response == true){var args = [ node, callObj, callFunc ];dojo.widget.TreeLoadingController.prototype.doRemoveNode.apply(this, args);return;}else if(dojo.lang.isObject(response)){dojo.raise(response.error);}else{dojo.raise("Invalid response "+response)
+}},doCreateChild: function(parent, index, output, callObj, callFunc){var params = {tree: this.getInfo(parent.tree),parent: this.getInfo(parent),index: index,data: output
+}
+this.runRPC({url: this.getRPCUrl('createChild'),load: function(response) {this.doCreateChildProcessResponse( response, parent, index, callObj, callFunc)
+},params: params,lock: [parent]
+});},doCreateChildProcessResponse: function(response, parent, index, callObj, callFunc){if(!dojo.lang.isUndefined(response.error)){this.RPCErrorHandler("server",response.error);return false;}
+if(!dojo.lang.isObject(response)){dojo.raise("Invalid result "+response)
+}
 var args = [parent, index, response, callObj, callFunc];dojo.widget.TreeLoadingController.prototype.doCreateChild.apply(this, args);}});

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRpcControllerV3.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRpcControllerV3.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRpcControllerV3.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeRpcControllerV3.js Thu Dec 14 07:45:13 2006
@@ -1,11 +1,19 @@
 
 dojo.provide("dojo.widget.TreeRpcControllerV3");dojo.require("dojo.event.*");dojo.require("dojo.json")
 dojo.require("dojo.io.*");dojo.require("dojo.widget.TreeLoadingControllerV3");dojo.widget.defineWidget(
-"dojo.widget.TreeRpcControllerV3",dojo.widget.TreeLoadingControllerV3,{extraRpcOnEdit: false,doMove: function(child, newParent, index, sync){var params = {child: this.getInfo(child),childTree: this.getInfo(child.tree),oldParent: this.getInfo(child.parent),oldParentTree: this.getInfo(child.parent.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),newIndex: index};var deferred = this.runRpc({url: this.getRpcUrl('move'),sync: sync,params: params});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doMove.apply(_this,args);});return deferred;},prepareDetach: function(node, sync) {var deferred = this.startProcessing(node);return deferred;},finalizeDetach: function(node) {this.finishProcessing(node);},doDetach: function(node, sync){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)}
-var deferred = this.runRpc({url: this.getRpcUrl('detach'),sync: sync,params: params});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doDetach.apply(_this,args);});return deferred;},requestEditConfirmation: function(node, action, sync) {if (!this.extraRpcOnEdit) {return dojo.Deferred.prototype.makeCalled();}
-var _this = this;var deferred = this.startProcessing(node);var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)}
-deferred.addCallback(function() {return _this.runRpc({url: _this.getRpcUrl(action),sync: sync,params: params});});deferred.addBoth(function(r) {_this.finishProcessing(node);return r;});return deferred;},editLabelSave: function(node, newContent, sync) {var deferred = this.startProcessing(node);var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree),newContent: newContent}
-deferred.addCallback(function() {return _this.runRpc({url: _this.getRpcUrl('editLabelSave'),sync: sync,params: params});});deferred.addBoth(function(r) {_this.finishProcessing(node);return r;});return deferred;},editLabelStart: function(node, sync) {if (!this.canEditLabel(node)) {return false;}
+"dojo.widget.TreeRpcControllerV3",dojo.widget.TreeLoadingControllerV3,{extraRpcOnEdit: false,doMove: function(child, newParent, index, sync){var params = {child: this.getInfo(child),childTree: this.getInfo(child.tree),oldParent: this.getInfo(child.parent),oldParentTree: this.getInfo(child.parent.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),newIndex: index
+};var deferred = this.runRpc({url: this.getRpcUrl('move'),sync: sync,params: params
+});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doMove.apply(_this,args);});return deferred;},prepareDetach: function(node, sync) {var deferred = this.startProcessing(node);return deferred;},finalizeDetach: function(node) {this.finishProcessing(node);},doDetach: function(node, sync){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+}
+var deferred = this.runRpc({url: this.getRpcUrl('detach'),sync: sync,params: params
+});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doDetach.apply(_this,args);});return deferred;},requestEditConfirmation: function(node, action, sync) {if (!this.extraRpcOnEdit) {return dojo.Deferred.prototype.makeCalled();}
+var _this = this;var deferred = this.startProcessing(node);var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+}
+deferred.addCallback(function() {return _this.runRpc({url: _this.getRpcUrl(action),sync: sync,params: params
+});});deferred.addBoth(function(r) {_this.finishProcessing(node);return r;});return deferred;},editLabelSave: function(node, newContent, sync) {var deferred = this.startProcessing(node);var _this = this;var params = {node: this.getInfo(node),tree: this.getInfo(node.tree),newContent: newContent
+}
+deferred.addCallback(function() {return _this.runRpc({url: _this.getRpcUrl('editLabelSave'),sync: sync,params: params
+});});deferred.addBoth(function(r) {_this.finishProcessing(node);return r;});return deferred;},editLabelStart: function(node, sync) {if (!this.canEditLabel(node)) {return false;}
 var _this = this;if (!this.editor.isClosed()) {var deferred = this.editLabelFinish(this.editor.saveOnBlur, sync);deferred.addCallback(function() {return _this.editLabelStart(node, sync);});return deferred;}
 var deferred = this.requestEditConfirmation(node, 'editLabelStart', sync);deferred.addCallback(function() {_this.doEditLabelStart(node);});return deferred;},editLabelFinish: function(save, sync) {var _this = this;var node = this.editor.node;var deferred = dojo.Deferred.prototype.makeCalled();if (!save && !node.isPhantom) {deferred = this.requestEditConfirmation(this.editor.node,'editLabelFinishCancel', sync);}
 if (save) {if (node.isPhantom) {deferred = this.sendCreateChildRequest(
@@ -13,8 +21,14 @@
 );} else {deferred = this.editLabelSave(node, this.editor.getContents(), sync);}}
 deferred.addCallback(function(server_data) {_this.doEditLabelFinish(save, server_data);});deferred.addErrback(function(r) {_this.doEditLabelFinish(false);return false;});return deferred;},createAndEdit: function(parent, index, sync) {var data = {title:parent.tree.defaultChildTitle};if (!this.canCreateChild(parent, index, data)) {return false;}
 if (!this.editor.isClosed()) {var deferred = this.editLabelFinish(this.editor.saveOnBlur, sync);deferred.addCallback(function() {return _this.createAndEdit(parent, index, sync);});return deferred;}
-var _this = this;var deferred = this.prepareCreateChild(parent, index, data, sync);deferred.addCallback(function() {var child = _this.makeDefaultNode(parent, index);child.isPhantom = true;return child;});deferred.addBoth(function(r) {_this.finalizeCreateChild(parent, index, data, sync);return r;});deferred.addCallback(function(child) {var d = _this.exposeCreateChild(parent, index, data, sync);d.addCallback(function() { return child });return d;});deferred.addCallback(function(child) {_this.doEditLabelStart(child);return child;});return deferred;},prepareDestroyChild: function(node, sync) {var deferred = this.startProcessing(node);return deferred;},finalizeDestroyChild: function(node) {this.finishProcessing(node);},doDestroyChild: function(node, sync){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)}
-var deferred = this.runRpc({url: this.getRpcUrl('destroyChild'),sync: sync,params: params});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doDestroyChild.apply(_this,args);});return deferred;},sendCreateChildRequest: function(parent, index, data, sync) {var params = {tree: this.getInfo(parent.tree),parent: this.getInfo(parent),index: index,data: data}
-var deferred = this.runRpc({url: this.getRpcUrl('createChild'),sync: sync,params: params});return deferred;},doCreateChild: function(parent, index, data, sync){if (dojo.lang.isUndefined(data.title)) {data.title = parent.tree.defaultChildTitle;}
-var deferred = this.sendCreateChildRequest(parent,index,data,sync);var _this = this;var args = arguments;deferred.addCallback(function(server_data) {dojo.lang.mixin(data, server_data);return dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(_this,parent,index,data);});return deferred;},doClone: function(child, newParent, index, deep, sync) {var params = {child: this.getInfo(child),oldParent: this.getInfo(child.parent),oldParentTree: this.getInfo(child.parent.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),index: index,deep: deep ? true : false,tree: this.getInfo(child.tree)}
-var deferred = this.runRpc({url: this.getRpcUrl('clone'),sync: sync,params: params});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doClone.apply(_this,args);});return deferred;}});
\ No newline at end of file
+var _this = this;var deferred = this.prepareCreateChild(parent, index, data, sync);deferred.addCallback(function() {var child = _this.makeDefaultNode(parent, index);child.isPhantom = true;return child;});deferred.addBoth(function(r) {_this.finalizeCreateChild(parent, index, data, sync);return r;});deferred.addCallback(function(child) {var d = _this.exposeCreateChild(parent, index, data, sync);d.addCallback(function() { return child });return d;});deferred.addCallback(function(child) {_this.doEditLabelStart(child);return child;});return deferred;},prepareDestroyChild: function(node, sync) {var deferred = this.startProcessing(node);return deferred;},finalizeDestroyChild: function(node) {this.finishProcessing(node);},doDestroyChild: function(node, sync){var params = {node: this.getInfo(node),tree: this.getInfo(node.tree)
+}
+var deferred = this.runRpc({url: this.getRpcUrl('destroyChild'),sync: sync,params: params
+});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doDestroyChild.apply(_this,args);});return deferred;},sendCreateChildRequest: function(parent, index, data, sync) {var params = {tree: this.getInfo(parent.tree),parent: this.getInfo(parent),index: index,data: data
+}
+var deferred = this.runRpc({url: this.getRpcUrl('createChild'),sync: sync,params: params
+});return deferred;},doCreateChild: function(parent, index, data, sync){if (dojo.lang.isUndefined(data.title)) {data.title = parent.tree.defaultChildTitle;}
+var deferred = this.sendCreateChildRequest(parent,index,data,sync);var _this = this;var args = arguments;deferred.addCallback(function(server_data) {dojo.lang.mixin(data, server_data);return dojo.widget.TreeBasicControllerV3.prototype.doCreateChild.call(_this,parent,index,data);});return deferred;},doClone: function(child, newParent, index, deep, sync) {var params = {child: this.getInfo(child),oldParent: this.getInfo(child.parent),oldParentTree: this.getInfo(child.parent.tree),newParent: this.getInfo(newParent),newParentTree: this.getInfo(newParent.tree),index: index,deep: deep ? true : false,tree: this.getInfo(child.tree)
+}
+var deferred = this.runRpc({url: this.getRpcUrl('clone'),sync: sync,params: params
+});var _this = this;var args = arguments;deferred.addCallback(function() {dojo.widget.TreeBasicControllerV3.prototype.doClone.apply(_this,args);});return deferred;}});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeSelector.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeSelector.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeSelector.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/widget/TreeSelector.js Thu Dec 14 07:45:13 2006
@@ -1,5 +1,8 @@
 
-dojo.provide("dojo.widget.TreeSelector");dojo.require("dojo.widget.HtmlWidget");dojo.widget.defineWidget("dojo.widget.TreeSelector", dojo.widget.HtmlWidget, function() {this.eventNames = {};this.listenedTrees = [];},{widgetType: "TreeSelector",selectedNode: null,dieWithTree: false,eventNamesDefault: {select : "select",destroy : "destroy",deselect : "deselect",dblselect: "dblselect"},initialize: function() {for(name in this.eventNamesDefault) {if (dojo.lang.isUndefined(this.eventNames[name])) {this.eventNames[name] = this.widgetId+"/"+this.eventNamesDefault[name];}}},destroy: function() {dojo.event.topic.publish(this.eventNames.destroy, { source: this } );return dojo.widget.HtmlWidget.prototype.destroy.apply(this, arguments);},listenTree: function(tree) {dojo.event.topic.subscribe(tree.eventNames.titleClick, this, "select");dojo.event.topic.subscribe(tree.eventNames.iconClick, this, "select");dojo.event.topic.subscribe(tree.eventNames.collapse, this, "onCollapse");dojo.event.
 topic.subscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.subscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.subscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");this.listenedTrees.push(tree);},unlistenTree: function(tree) {dojo.event.topic.unsubscribe(tree.eventNames.titleClick, this, "select");dojo.event.topic.unsubscribe(tree.eventNames.iconClick, this, "select");dojo.event.topic.unsubscribe(tree.eventNames.collapse, this, "onCollapse");dojo.event.topic.unsubscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.unsubscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.unsubscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");for(var i=0; i<this.listenedTrees.length; i++){if(this.listenedTrees[i] === tree){this.listenedTrees.splice(i, 1);break;}}},onTreeDestroy: function(message) {this.unlistenTree(message.source);if (this.dieWithTree) {this.destroy();}},onCollapse: function(
 message) {if (!this.selectedNode) return;var node = message.source;var parent = this.selectedNode.parent;while (parent !== node && parent.isTreeNode) {parent = parent.parent;}
+dojo.provide("dojo.widget.TreeSelector");dojo.require("dojo.widget.HtmlWidget");dojo.widget.defineWidget("dojo.widget.TreeSelector", dojo.widget.HtmlWidget, function() {this.eventNames = {};this.listenedTrees = [];},{widgetType: "TreeSelector",selectedNode: null,dieWithTree: false,eventNamesDefault: {select : "select",destroy : "destroy",deselect : "deselect",dblselect: "dblselect"
+},initialize: function() {for(name in this.eventNamesDefault) {if (dojo.lang.isUndefined(this.eventNames[name])) {this.eventNames[name] = this.widgetId+"/"+this.eventNamesDefault[name];}}
+},destroy: function() {dojo.event.topic.publish(this.eventNames.destroy, { source: this } );return dojo.widget.HtmlWidget.prototype.destroy.apply(this, arguments);},listenTree: function(tree) {dojo.event.topic.subscribe(tree.eventNames.titleClick, this, "select");dojo.event.topic.subscribe(tree.eventNames.iconClick, this, "select");dojo.event.topic.subscribe(tree.eventNames.collapse, this, "onCollapse");dojo.event.topic.subscribe(tree.eventNames.moveFrom, this, "onMoveFrom");dojo.event.topic.subscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.subscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");this.listenedTrees.push(tree);},unlistenTree: function(tree) {dojo.event.topic.unsubscribe(tree.eventNames.titleClick, this, "select");dojo.event.topic.unsubscribe(tree.eventNames.iconClick, this, "select");dojo.event.topic.unsubscribe(tree.eventNames.collapse, this, "onCollapse");dojo.event.topic.unsubscribe(tree.eventNames.moveFrom, this, "onMoveFro
 m");dojo.event.topic.unsubscribe(tree.eventNames.removeNode, this, "onRemoveNode");dojo.event.topic.unsubscribe(tree.eventNames.treeDestroy, this, "onTreeDestroy");for(var i=0; i<this.listenedTrees.length; i++){if(this.listenedTrees[i] === tree){this.listenedTrees.splice(i, 1);break;}}
+},onTreeDestroy: function(message) {this.unlistenTree(message.source);if (this.dieWithTree) {this.destroy();}},onCollapse: function(message) {if (!this.selectedNode) return;var node = message.source;var parent = this.selectedNode.parent;while (parent !== node && parent.isTreeNode) {parent = parent.parent;}
 if (parent.isTreeNode) {this.deselect();}},select: function(message) {var node = message.source;var e = message.event;if (this.selectedNode === node) {if(e.ctrlKey || e.shiftKey || e.metaKey){this.deselect();return;}
 dojo.event.topic.publish(this.eventNames.dblselect, { node: node });return;}
 if (this.selectedNode) {this.deselect();}