flymis/WebRoot/dojojs/src/widget/TreeContextMenu.js
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*
Copyright (c) 2004-2006, The Dojo Foundation
All Rights Reserved.
Licensed under the Academic Free License version 2.1 or above OR the
modified BSD license. For more information on Dojo licensing, see:
http://dojotoolkit.org/community/licensing.shtml
*/
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);
/* publish many events here about structural changes */
dojo.event.topic.publish(this.eventNames.open, { menu:this });
return result;
},
listenTree: function(tree) {
/* add context menu to all nodes that exist already */
var nodes = tree.getDescendants();
for(var i=0; i<nodes.length; i++) {
if (!nodes[i].isTreeNode) continue;
this.bindDomNode(nodes[i].labelNode);
}
/* bind context menu to all nodes that will be created in the future (e.g loaded from server)*/
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) {
/* clear event listeners */
dojo.event.topic.unsubscribe(tree.eventNames.createDOMNode, this, "onCreateDOMNode");
后面还有 121 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。