From 00162124b39c86b67dd3890ce992e568ed41cbee Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 10 Jun 2011 20:39:18 +0200 Subject: deprecated even functions These now simply wrap around jQuery --- lib/scripts/events.js | 169 +++++--------------------------------------------- 1 file changed, 14 insertions(+), 155 deletions(-) (limited to 'lib/scripts/events.js') diff --git a/lib/scripts/events.js b/lib/scripts/events.js index a1fcac718..95564be39 100644 --- a/lib/scripts/events.js +++ b/lib/scripts/events.js @@ -1,164 +1,22 @@ -// written by Dean Edwards, 2005 -// with input from Tino Zijdel - -// http://dean.edwards.name/weblog/2005/10/add-event/ - -function addEvent(element, type, handler) { - // assign each event handler a unique ID - if (!handler.$$guid) handler.$$guid = addEvent.guid++; - // create a hash table of event types for the element - if (!element.events) element.events = {}; - // create a hash table of event handlers for each element/event pair - var handlers = element.events[type]; - if (!handlers) { - handlers = element.events[type] = {}; - // store the existing event handler (if there is one) - if (element["on" + type]) { - handlers[0] = element["on" + type]; - } - } - // store the event handler in the hash table - handlers[handler.$$guid] = handler; - // assign a global event handler to do all the work - element["on" + type] = handleEvent; -}; -// a counter used to create unique IDs -addEvent.guid = 1; - -function removeEvent(element, type, handler) { - // delete the event handler from the hash table - if (element.events && element.events[type]) { - delete element.events[type][handler.$$guid]; - } -}; - -function handleEvent(event) { - var returnValue = true; - // grab the event object (IE uses a global event object) - event = event || fixEvent(window.event, this); - // get a reference to the hash table of event handlers - var handlers = this.events[event.type]; - // execute each event handler - for (var i in handlers) { - if (!handlers.hasOwnProperty(i)) continue; - if (handlers[i].call(this, event) === false) { - returnValue = false; - } - } - return returnValue; -}; - -function fixEvent(event, _this) { - // add W3C standard event methods - event.preventDefault = fixEvent.preventDefault; - event.stopPropagation = fixEvent.stopPropagation; - // fix target - event.target = event.srcElement; - event.currentTarget = _this; - // fix coords - var base = (document.documentElement.scrollTop?document.documentElement:document.body); - event.pageX = (typeof event.pageX !== 'undefined') ? event.pageX : event.clientX + base.scrollLeft; - event.pageY = (typeof event.pageY !== 'undefined') ? event.pageY : event.clientY + base.scrollTop; - - return event; -}; -fixEvent.preventDefault = function() { - this.returnValue = false; -}; -fixEvent.stopPropagation = function() { - this.cancelBubble = true; -}; - - -/** - * Pseudo event handler to be fired after the DOM was parsed or - * on window load at last. - * - * @author based upon some code by Dean Edwards - * @author Dean Edwards - * @link http://dean.edwards.name/weblog/2006/06/again/ - */ -window.fireoninit = function() { - // quit if this function has already been called - if (arguments.callee.done) return; - // flag this function so we don't do the same thing twice - arguments.callee.done = true; - // kill the timer - if (_timer) { - clearInterval(_timer); - _timer = null; - } - - if (typeof window.oninit == 'function') { - window.oninit(); - } -}; - /** - * Run the fireoninit function as soon as possible after - * the DOM was loaded, using different methods for different - * Browsers + * The event functions are no longer in use and a mere wrapper around + * jQuery's event handlers. * - * @author Dean Edwards - * @link http://dean.edwards.name/weblog/2006/06/again/ + * @deprecated */ - // for Mozilla - if (document.addEventListener) { - document.addEventListener("DOMContentLoaded", window.fireoninit, null); - } - - // for Internet Explorer (using conditional comments) - /*@cc_on - @if (@_win32) - document.write("<\/script>"); - var script = document.getElementById("__ie_init"); - script.onreadystatechange = function() { - if (this.readyState == "complete") { - window.fireoninit(); // call the onload handler - } - }; - @end @*/ - - // for Safari - if (/WebKit/i.test(navigator.userAgent)) { // sniff - var _timer = setInterval(function() { - if (/loaded|complete/.test(document.readyState)) { - window.fireoninit(); // call the onload handler - } - }, 10); - } - - // for other browsers - window.onload = window.fireoninit; - +function addEvent(element, type, handler) { + DEPRECATED('Use jQuery.bind() instead.'); + jQuery(element).bind(type,{},handler); +} -/** - * This is a pseudo Event that will be fired by the fireoninit - * function above. - * - * Use addInitEvent to bind to this event! - * - * @author Andreas Gohr - * @see fireoninit() - */ -window.oninit = function(){}; +function removeEvent(element, type, handler) { + DEPRECATED('Use jQuery.unbind() instead.'); + jQuery(element).unbind(type,handler); +} -/** - * Bind a function to the window.init pseudo event - * - * @author Simon Willison - * @see http://simon.incutio.com/archive/2004/05/26/addLoadEvent - */ function addInitEvent(func) { - var oldoninit = window.oninit; - if (typeof window.oninit != 'function') { - window.oninit = func; - } else { - window.oninit = function() { - oldoninit(); - func(); - }; - } + DEPRECATED('Use jQuery() instead'); + jQuery(func); } /** @@ -168,6 +26,7 @@ function addInitEvent(func) { * inside a loop * * @author Adrian Lang + * @fixme Is there a jQuery equivalent? Otherwise move to somewhere else * @link http://www.cosmocode.de/en/blog/gohr/2009-10/15-javascript-fixing-the-closure-scope-in-loops * @param functionref fnc - the function to be called * @param mixed - any arguments to be passed to the function -- cgit v1.2.3 From d10c9a7424d1ef0aace2fd34e1008196d111a88c Mon Sep 17 00:00:00 2001 From: Adrian Lang Date: Thu, 7 Jul 2011 16:08:05 +0200 Subject: Rewrite mediamanager JavaScript Make it faster, prettier, less wrong, add UI effects, use jQuery UI Dialog, Abstract tree view stuff away into jQuery.dw_tree --- lib/scripts/events.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'lib/scripts/events.js') diff --git a/lib/scripts/events.js b/lib/scripts/events.js index 95564be39..796d3cc4c 100644 --- a/lib/scripts/events.js +++ b/lib/scripts/events.js @@ -32,9 +32,19 @@ function addInitEvent(func) { * @param mixed - any arguments to be passed to the function * @returns functionref */ -function bind (fnc) { - var args = Array.prototype.slice.call(arguments, 1); - return function() { - return fnc.apply(this, args); +function bind(fnc/*, ... */) { + var Aps = Array.prototype.slice; + // Store passed arguments in this scope. + // Since arguments is no Array nor has an own slice method, + // we have to apply the slice method from the Array.prototype + var static_args = Aps.call(arguments, 1); + + // Return a function evaluating the passed function with the + // given args and optional arguments passed on invocation. + return function (/* ... */) { + // Same here, but we use Array.prototype.slice solely for + // converting arguments to an Array. + return fnc.apply(this, + static_args.concat(Aps.call(arguments, 0))); }; } -- cgit v1.2.3 From b2a330ca75f1ceec063a08029abb0204110e3601 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 6 Aug 2011 13:56:57 +0200 Subject: removed events.js --- lib/scripts/events.js | 50 -------------------------------------------------- 1 file changed, 50 deletions(-) delete mode 100644 lib/scripts/events.js (limited to 'lib/scripts/events.js') diff --git a/lib/scripts/events.js b/lib/scripts/events.js deleted file mode 100644 index 796d3cc4c..000000000 --- a/lib/scripts/events.js +++ /dev/null @@ -1,50 +0,0 @@ -/** - * The event functions are no longer in use and a mere wrapper around - * jQuery's event handlers. - * - * @deprecated - */ -function addEvent(element, type, handler) { - DEPRECATED('Use jQuery.bind() instead.'); - jQuery(element).bind(type,{},handler); -} - -function removeEvent(element, type, handler) { - DEPRECATED('Use jQuery.unbind() instead.'); - jQuery(element).unbind(type,handler); -} - -function addInitEvent(func) { - DEPRECATED('Use jQuery() instead'); - jQuery(func); -} - -/** - * Bind variables to a function call creating a closure - * - * Use this to circumvent variable scope problems when creating closures - * inside a loop - * - * @author Adrian Lang - * @fixme Is there a jQuery equivalent? Otherwise move to somewhere else - * @link http://www.cosmocode.de/en/blog/gohr/2009-10/15-javascript-fixing-the-closure-scope-in-loops - * @param functionref fnc - the function to be called - * @param mixed - any arguments to be passed to the function - * @returns functionref - */ -function bind(fnc/*, ... */) { - var Aps = Array.prototype.slice; - // Store passed arguments in this scope. - // Since arguments is no Array nor has an own slice method, - // we have to apply the slice method from the Array.prototype - var static_args = Aps.call(arguments, 1); - - // Return a function evaluating the passed function with the - // given args and optional arguments passed on invocation. - return function (/* ... */) { - // Same here, but we use Array.prototype.slice solely for - // converting arguments to an Array. - return fnc.apply(this, - static_args.concat(Aps.call(arguments, 0))); - }; -} -- cgit v1.2.3