| /* |
| 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.require("dojo.lang.common"); |
| dojo.require("dojo.lang.func"); |
| dojo.require("dojo.lang.declare"); |
| dojo.provide("dojo.dnd.DragAndDrop"); |
| dojo.declare("dojo.dnd.DragSource", null, {type:"", onDragEnd:function (evt) { |
| }, onDragStart:function (evt) { |
| }, onSelected:function (evt) { |
| }, unregister:function () { |
| dojo.dnd.dragManager.unregisterDragSource(this); |
| }, reregister:function () { |
| dojo.dnd.dragManager.registerDragSource(this); |
| }}); |
| dojo.declare("dojo.dnd.DragObject", null, {type:"", register:function () { |
| var dm = dojo.dnd.dragManager; |
| if (dm["registerDragObject"]) { |
| dm.registerDragObject(this); |
| } |
| }, onDragStart:function (evt) { |
| }, onDragMove:function (evt) { |
| }, onDragOver:function (evt) { |
| }, onDragOut:function (evt) { |
| }, onDragEnd:function (evt) { |
| }, onDragLeave:dojo.lang.forward("onDragOut"), onDragEnter:dojo.lang.forward("onDragOver"), ondragout:dojo.lang.forward("onDragOut"), ondragover:dojo.lang.forward("onDragOver")}); |
| dojo.declare("dojo.dnd.DropTarget", null, {acceptsType:function (type) { |
| if (!dojo.lang.inArray(this.acceptedTypes, "*")) { |
| if (!dojo.lang.inArray(this.acceptedTypes, type)) { |
| return false; |
| } |
| } |
| return true; |
| }, accepts:function (dragObjects) { |
| if (!dojo.lang.inArray(this.acceptedTypes, "*")) { |
| for (var i = 0; i < dragObjects.length; i++) { |
| if (!dojo.lang.inArray(this.acceptedTypes, dragObjects[i].type)) { |
| return false; |
| } |
| } |
| } |
| return true; |
| }, unregister:function () { |
| dojo.dnd.dragManager.unregisterDropTarget(this); |
| }, onDragOver:function (evt) { |
| }, onDragOut:function (evt) { |
| }, onDragMove:function (evt) { |
| }, onDropStart:function (evt) { |
| }, onDrop:function (evt) { |
| }, onDropEnd:function () { |
| }}, function () { |
| this.acceptedTypes = []; |
| }); |
| dojo.dnd.DragEvent = function () { |
| this.dragSource = null; |
| this.dragObject = null; |
| this.target = null; |
| this.eventStatus = "success"; |
| }; |
| dojo.declare("dojo.dnd.DragManager", null, {selectedSources:[], dragObjects:[], dragSources:[], registerDragSource:function (source) { |
| }, dropTargets:[], registerDropTarget:function (target) { |
| }, lastDragTarget:null, currentDragTarget:null, onKeyDown:function () { |
| }, onMouseOut:function () { |
| }, onMouseMove:function () { |
| }, onMouseUp:function () { |
| }}); |
| |