📄 treedemo.js
字号:
/* 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.TreeDemo");dojo.require("dojo.Deferred");dojo.widget.TreeDemo = { reportIfDefered: function(res) { if (res instanceof dojo.Deferred) { res.addCallbacks( function(res) { /* dojo.debug("OK " + (res ? res: '')); */ return res }, function(err) { dojo.debug("Error"); dojo.debugShallow(err); } ); } }, resetRandomChildren: function(maxCount) { this.randomChildrenMaxCount = maxCount; this.randomChildrenCount = 0; this.randomChildrenDepth = 0; }, makeRandomChildren: function(title) { this.randomChildrenDepth++; var children = []; for (var i=1; i<=5; i++) { var t = title+(this.randomChildrenDepth==1 ? '' : '.')+i; var node = {title: t}; children.push(node); this.randomChildrenCount++ if (this.randomChildrenCount >= this.randomChildrenMaxCount) { break; } } var i=1; var _this = this; dojo.lang.forEach(children, function(child) { var t = title+(_this.randomChildrenDepth==1 ? '' : '.')+i; i++; // first node is always folder for tests if (_this.randomChildrenCount<_this.randomChildrenMaxCount && ( _this.randomChildrenDepth==1 && child === children[0] || _this.randomChildrenDepth<5 && Math.random()>0.3 ) ) { //dojo.debug("add child "+t); child.children = _this.makeRandomChildren(t); } }); //dojo.debug("out "+nodeOrTree); this.randomChildrenDepth--; return children; }, bindDemoMenu: function(controller) { var _t = this; dojo.event.topic.subscribe('treeContextMenuDestroy/engage', function (menuItem) { var node = menuItem.getTreeNode(); //if (confirm("Delete node with descendants: "+node.title.replace(/(<([^>]+)>)/ig," ") +" ?")) { _t.reportIfDefered(controller.destroyChild(node)); } ); dojo.event.topic.subscribe('treeContextMenuRefresh/engage', function (menuItem) { var node = menuItem.getTreeNode(); _t.reportIfDefered(controller.refreshChildren(node)); } ); dojo.event.topic.subscribe('treeContextMenuCreate/engage', function (menuItem) { var node = menuItem.getTreeNode(); var d = controller.createAndEdit(node, 0); _t.reportIfDefered(d); } ); dojo.event.topic.subscribe('treeContextMenuUp/engage', function (menuItem) { var node = menuItem.getTreeNode(); if (node.isFirstChild()) return; _t.reportIfDefered(controller.move(node, node.parent, node.getParentIndex()-1)); } ); dojo.event.topic.subscribe('treeContextMenuDown/engage', function (menuItem) { var node = menuItem.getTreeNode(); if (node.isLastChild()) return; _t.reportIfDefered(controller.move(node, node.parent, node.getParentIndex()+1)); } ); dojo.event.topic.subscribe('treeContextMenuEdit/engage', function (menuItem) { var node = menuItem.getTreeNode(); _t.reportIfDefered(controller.editLabelStart(node)); } ); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -