Author: achiumenti Date: Tue Oct 21 13:06:41 2008 New Revision: 126
Log: several bugfixes and enhancements
Added: trunk/main/claw-html.dojo/src/js/dnd/ trunk/main/claw-html.dojo/src/js/dnd/Avatar.js trunk/main/claw-html.dojo/src/js/dnd/Container.js trunk/main/claw-html.dojo/src/js/dnd/Moveable.js trunk/main/claw-html.dojo/src/js/dnd/Mover.js trunk/main/claw-html.dojo/src/js/dnd/Source.js trunk/main/claw-html.dojo/src/js/dnd/TimedMoveable.js trunk/main/claw-html.dojo/src/js/dnd/common.js
Added: trunk/main/claw-html.dojo/src/js/dnd/Avatar.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/Avatar.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,37 @@ +/** +;;; $Header: dojo/src/js/dnd/Avatar.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.Avatar"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.Avatar"); + +dojo.declare("claw.dnd.Avatar",[dojo.dnd.Avatar,claw.dnd._DndMixin], { + +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/Container.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/Container.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,37 @@ +/** +;;; $Header: dojo/src/js/dnd/Container.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.Container"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.Container"); + +dojo.declare("claw.dnd.Container",[dojo.dnd.Container,claw.dnd._DndMixin], { + +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/Moveable.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/Moveable.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,37 @@ +/** +;;; $Header: dojo/src/js/dnd/Moveable.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.Selector"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.Selector"); + +dojo.declare("claw.dnd.Selector",[dojo.dnd.Selector,claw.dnd._DndMixin], { + +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/Mover.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/Mover.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,37 @@ +/** +;;; $Header: dojo/src/js/dnd/Mover.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.Mover"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.Mover"); + +dojo.declare("claw.dnd.Mover",[dojo.dnd.Mover,claw.dnd._DndMixin], { + +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/Source.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/Source.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,40 @@ +/** +;;; $Header: dojo/src/js/dnd/Source.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.Source"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.Source"); + +dojo.declare("claw.dnd.Source",[dojo.dnd.Source,claw.dnd._DndMixin], { + markupFactory: function(params, node){ + params._skipStartup = true; + return new claw.dnd.Source(node, params); + } +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/TimedMoveable.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/TimedMoveable.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,37 @@ +/** +;;; $Header: dojo/src/js/dnd/TimedMoveable.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.TimedMoveable"); + +dojo.require("claw.dnd.common"); +dojo.require("dojo.dnd.TimedMoveable"); + +dojo.declare("claw.dnd.TimedMoveable",[dojo.dnd.TimedMoveable,claw.dnd._DndMixin], { + +}); \ No newline at end of file
Added: trunk/main/claw-html.dojo/src/js/dnd/common.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/dnd/common.js Tue Oct 21 13:06:41 2008 @@ -0,0 +1,69 @@ +/** +;;; $Header: dojo/src/js/dnd/common.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +dojo.provide("claw.dnd.common"); + + +claw.dnd = {}; + +claw.dnd._map = {}; + + +claw.dnd._cache = {'clawDnd': 0}; + +claw.dnd.byId = function(id){ + // summary: returns the dojo.dnd instance bound to a HTML object element + return claw.dnd._map[id]; // assume it's a node +}; + + +dojo.declare("claw.dnd._DndMixin", null, { + id: "", + _putInCache: function (node) { + this.id = dojo.attr(node, "dndId"); + if(!this.id) { + this.id = dojo.attr(node, "id"); + if (!this.id) { + var index = claw.dnd._cache._clawDnd; + claw.dnd._cache._clawDnd = index++; + this.id = "clawDnd" + index; + } + dojo.attr(node, "dndId", this.id); + } + claw.dnd._map[this.id] = this; + }, + constructor: function (node, params) { + this._putInCache(this.node); + }, + destroy: function() { + // summary: warning. Like dojo.dnd.Container destroy method, but cleans up claw.dnd._map. Remember to eventually remove its node. + delete claw.dnd._map[this.id]; + dojo.dnd.Source.prototype.destroy.call(this); + } +});