/* ************************************************************************ qooxdoo - the new era of web development http://qooxdoo.org Copyright: 2004-2006 by 1&1 Internet AG, Germany, http://www.1and1.org License: LGPL 2.1: http://www.gnu.org/licenses/lgpl.html Authors: * Sebastian Werner (wpbasti) * Andreas Ecker (ecker) ************************************************************************ */ /* ************************************************************************ #module(core) ************************************************************************ */ qx.OO.defineClass("qx.lang.Core"); /* --------------------------------------------------------------------------- ADDITIONS FOR NATIVE ERROR OBJECT --------------------------------------------------------------------------- */ if (!Error.prototype.toString) { Error.prototype.toString = function() { return this.message; } } /* --------------------------------------------------------------------------- ADDITIONS FOR NATIVE FUNCTION OBJECT --------------------------------------------------------------------------- */ /** * function apply for browsers that do not support it natively, e.g. IE 5.0 *
* Based on code from youngpup.net licensed under * Creative Commons Attribution 2.0 *
*/ if (!Function.prototype.apply) { Function.prototype.apply = function(oScope, args) { var sarg = []; var rtrn, call; if (!oScope) { oScope = window; } if (!args) { args = []; } for (var i = 0; i < args.length; i++) { sarg[i] = "args["+i+"]"; } call = "oScope._applyTemp_(" + sarg.join(",") + ");"; oScope._applyTemp_ = this; rtrn = eval(call); delete oScope._applyTemp_; return rtrn; } } /* --------------------------------------------------------------------------- ADDITIONS FOR NATIVE ARRAY OBJECT --------------------------------------------------------------------------- */ // Add all JavaScript 1.5 Features if they are missing // Mozilla 1.8 has support for indexOf, lastIndexOf, forEach, filter, map, some, every // Some of them from Erik Arvidsson