-/*!
- * Ext JS Library 3.0.0
- * Copyright(c) 2006-2009 Ext JS, LLC
- * licensing@extjs.com
- * http://www.extjs.com/license
- */
-/**\r
- * @class Ext.tree.TreeDragZone\r
- * @extends Ext.dd.DragZone\r
- * @constructor\r
- * @param {String/HTMLElement/Element} tree The {@link Ext.tree.TreePanel} for which to enable dragging\r
- * @param {Object} config\r
- */\r
-if(Ext.dd.DragZone){\r
-Ext.tree.TreeDragZone = function(tree, config){\r
- Ext.tree.TreeDragZone.superclass.constructor.call(this, tree.innerCt, config);\r
- /**\r
- * The TreePanel for this drag zone\r
- * @type Ext.tree.TreePanel\r
- * @property\r
- */\r
- this.tree = tree;\r
-};\r
-\r
-Ext.extend(Ext.tree.TreeDragZone, Ext.dd.DragZone, {\r
- /**\r
- * @cfg {String} ddGroup\r
- * A named drag drop group to which this object belongs. If a group is specified, then this object will only\r
- * interact with other drag drop objects in the same group (defaults to 'TreeDD').\r
- */\r
- ddGroup : "TreeDD",\r
-\r
- // private\r
- onBeforeDrag : function(data, e){\r
- var n = data.node;\r
- return n && n.draggable && !n.disabled;\r
- },\r
-\r
- // private\r
- onInitDrag : function(e){\r
- var data = this.dragData;\r
- this.tree.getSelectionModel().select(data.node);\r
- this.tree.eventModel.disable();\r
- this.proxy.update("");\r
- data.node.ui.appendDDGhost(this.proxy.ghost.dom);\r
- this.tree.fireEvent("startdrag", this.tree, data.node, e);\r
- },\r
-\r
- // private\r
- getRepairXY : function(e, data){\r
- return data.node.ui.getDDRepairXY();\r
- },\r
-\r
- // private\r
- onEndDrag : function(data, e){\r
- this.tree.eventModel.enable.defer(100, this.tree.eventModel);\r
- this.tree.fireEvent("enddrag", this.tree, data.node, e);\r
- },\r
-\r
- // private\r
- onValidDrop : function(dd, e, id){\r
- this.tree.fireEvent("dragdrop", this.tree, this.dragData.node, dd, e);\r
- this.hideProxy();\r
- },\r
-\r
- // private\r
- beforeInvalidDrop : function(e, id){\r
- // this scrolls the original position back into view\r
- var sm = this.tree.getSelectionModel();\r
- sm.clearSelections();\r
- sm.select(this.dragData.node);\r
- },\r
- \r
- // private\r
- afterRepair : function(){\r
- if (Ext.enableFx && this.tree.hlDrop) {\r
- Ext.Element.fly(this.dragData.ddel).highlight(this.hlColor || "c3daf9");\r
- }\r
- this.dragging = false;\r
- }\r
-});\r
-}
\ No newline at end of file