summaryrefslogtreecommitdiff
path: root/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js
diff options
context:
space:
mode:
Diffstat (limited to 'webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js')
-rw-r--r--webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js348
1 files changed, 0 insertions, 348 deletions
diff --git a/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js b/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js
deleted file mode 100644
index eb21669003..0000000000
--- a/webapps/qooxdoo-0.6.3-sdk/frontend/framework/source/class/qx/lang/MshtmlEmu.js
+++ /dev/null
@@ -1,348 +0,0 @@
-/* ************************************************************************
-
- 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)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#require(qx.sys.Client)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.lang.MshtmlEmu");
-
-/*
- Parts are based on:
- moz-behaviors.xml - version 1.1.1 (2005-08-19)
- Copyright 2004-2005, Dean Edwards
- License: http://creativecommons.org/licenses/LGPL/2.1/
- Thanks to Erik Arvidsson (http://webfx.eae.net/dhtml/ieemu/)
-*/
-
-/*
- We're going to mess about with some of mozilla's interfaces to
- make them more explorer-like
-*/
-
-/*
- Note:
- In my comments where i say support/mimic a property:
-
- * support = exactly the same as explorer
- * mimic = close enough
-*/
-
-if (qx.sys.Client.getInstance().isGecko())
-{
- /*
- --------------------------------------------------------------------------------
- CSS STYLES: FLOAT
- --------------------------------------------------------------------------------
- */
-
- /*
- Support microsoft's styleFloat
- */
-
- CSSStyleDeclaration.prototype.__defineGetter__("styleFloat", function() {
- return this.cssFloat;
- });
-
- CSSStyleDeclaration.prototype.__defineSetter__("styleFloat", function(vValue) {
- this.cssFloat = vValue;
- });
-
-
-
-
-
- /*
- --------------------------------------------------------------------------------
- CSS STYLES: DIMENSIONS
- --------------------------------------------------------------------------------
- */
-
- /*
- Mimic microsoft's pixel representations of left/top/width/height
- the getters only work for values that are already pixels
- */
-
- CSSStyleDeclaration.prototype.__defineGetter__("pixelLeft", function() {
- return parseInt(this.left) || 0;
- });
-
- CSSStyleDeclaration.prototype.__defineSetter__("pixelLeft", function(vValue) {
- this.left = vValue + "px";
- });
-
- CSSStyleDeclaration.prototype.__defineGetter__("pixelTop", function() {
- return parseInt(this.top) || 0;
- });
-
- CSSStyleDeclaration.prototype.__defineSetter__("pixelTop", function(vValue) {
- this.top = vValue + "px";
- });
-
- CSSStyleDeclaration.prototype.__defineGetter__("pixelWidth", function() {
- return parseInt(this.width) || 0;
- });
-
- CSSStyleDeclaration.prototype.__defineSetter__("pixelWidth", function(vValue) {
- this.width = vValue + "px";
- });
-
- CSSStyleDeclaration.prototype.__defineGetter__("pixelHeight", function() {
- return parseInt(this.height) || 0;
- });
-
- CSSStyleDeclaration.prototype.__defineSetter__("pixelHeight", function(vValue) {
- this.height = vValue + "px";
- });
-
-
-
-
-
- /*
- --------------------------------------------------------------------------------
- HTML DOCUMENT EXTENSIONS
- --------------------------------------------------------------------------------
- */
-
- /*
- Support Microsoft's "all" property
- */
- HTMLDocument.prototype.__defineGetter__("all", function() {
- return this.getElementsByTagName("*");
- });
-
- /*
- Mimic the "createEventObject" method for the document object
- */
- HTMLDocument.prototype.createEventObject = function() {
- return document.createEvent("Events");
- }
-
-
-
-
-
-
- /*
- --------------------------------------------------------------------------------
- HTML ELEMENT EXTENSIONS
- --------------------------------------------------------------------------------
- */
-
- /*
- Mimic Microsoft's "all" property
- */
- HTMLElement.prototype.__defineGetter__("all", function() {
- return this.getElementsByTagName("*");
- });
-
- /*
- Support "parentElement"
- */
- HTMLElement.prototype.__defineGetter__("parentElement", function() {
- return (this.parentNode == this.ownerDocument) ? null : this.parentNode;
- });
-
- /*
- Support "uniqueID"
- */
- HTMLElement.prototype.__defineGetter__("uniqueID", function()
- {
- // a global counter is stored privately as a property of this getter function.
- // initialise the counter
- if (!arguments.callee.count) {
- arguments.callee.count = 0;
- }
-
- // create the id and increment the counter
- var vUniqueID = "moz_id" + arguments.callee.count++;
-
- // creating a unique id, creates a global reference
- window[vUniqueID] = this;
-
- // we don't want to increment next time, so redefine the getter
- this.__defineGetter__("uniqueID", function(){return vUniqueID;});
-
- return vUniqueID;
- });
-
- /*
- Mimic Microsoft's "currentStyle"
- */
- HTMLElement.prototype.__defineGetter__("currentStyle", function() {
- return getComputedStyle(this, null);
- });
-
- /*
- Mimic Microsoft's "runtimeStyle"
- */
- HTMLElement.prototype.__defineGetter__("runtimeStyle", function()
- {
- /*
- this doesn't work yet (https://bugzilla.mozilla.org/show_bug.cgi?id=45424)
- return this.ownerDocument.defaultView.getOverrideStyle(this, null);
- */
-
- return this.style;
- });
-
- /*
- Support "innerText"
- */
- HTMLElement.prototype.__defineGetter__("innerText", function() {
- return this.textContent;
- });
-
- HTMLElement.prototype.__defineSetter__("innerText", function(vValue) {
- this.textContent = vValue;
- });
-
- /*
- Mimic the "attachEvent" method
- */
- HTMLElement.prototype.attachEvent = function(vName, vHandler) {
- this.addEventListener(vName.slice(2), vHandler, false);
- }
-
- /*
- Mimic the "removeEvent" method
- */
- HTMLElement.prototype.removeEvent = function(vName, vHandler) {
- this.removeEventListener(vName.slice(2), vHandler, false);
- }
-
- /*
- Mimic the "createEventObject" method
- */
- HTMLElement.prototype.createEventObject = function() {
- return this.ownerDocument.createEventObject();
- }
-
- /*
- Mimic the "fireEvent" method
- */
- HTMLElement.prototype.fireEvent = function(vName, vEvent)
- {
- if (!vEvent) {
- vEvent = this.ownerDocument.createEventObject();
- }
-
- vEvent.initEvent(vName.slice(2), false, false);
-
- this.dispatchEvent(vEvent);
-
- // not sure that this should be here??
- if (typeof this[vName] === "function")
- {
- this[vName]();
- }
- else if (this.getAttribute(vName))
- {
- eval(this.getAttribute(vName));
- }
- }
-
- /*
- Support the "contains" method
- */
- HTMLElement.prototype.contains = function(vElement) {
- return Boolean(vElement == this || (vElement && this.contains(vElement.parentElement)));
- }
-
-
-
-
-
- /*
- --------------------------------------------------------------------------------
- EVENT EXTENSIONS
- --------------------------------------------------------------------------------
- */
-
- /*
- Support Microsoft's proprietary event properties
- */
- Event.prototype.__defineGetter__("srcElement", function() {
- return (this.target.nodeType == Node.ELEMENT_NODE) ? this.target : this.target.parentNode;
- });
-
- Event.prototype.__defineGetter__("fromElement",function() {
- return (this.type == "mouseover") ? this.relatedTarget : (this.type == "mouseout") ? this.srcElement : null;
- });
-
- Event.prototype.__defineGetter__("toElement", function() {
- return (this.type == "mouseout") ? this.relatedTarget : (this.type == "mouseover") ? this.srcElement : null;
- });
-
- /*
- Convert w3c button id's to Microsoft's
- Breaks with qooxdoo's internal event handling!!!
- */
- /*
- Event.prototype.__defineGetter__("button", function() {
- return (this.which == 1) ? 1 : (this.which == 2) ? 4 : 2;
- });
- */
-
-
- /*
- Mimic "returnValue" (default is "true")
- Breaks with qooxdoo's internal event handling!!!
- */
- /*
- Event.prototype.__defineGetter__("returnValue", function() {
- return true;
- });
-
- Event.prototype.__defineSetter__("returnValue", function(vValue)
- {
- if (this.cancelable && !vValue)
- {
- // this can't be undone!
- this.preventDefault();
-
- this.__defineGetter__("returnValue", function() {
- return false;
- });
- }
- });
- */
-
- /*
- Mozilla already supports the read-only "cancelBubble"
- so we only need to define the setter
- */
- Event.prototype.__defineSetter__("cancelBubble", function(vValue)
- {
- // this can't be undone!
- if (vValue) {
- this.stopPropagation();
- }
- });
-
- Event.prototype.__defineGetter__("offsetX", function() {
- return this.layerX;
- });
-
- Event.prototype.__defineGetter__("offsetY", function() {
- return this.layerY;
- });
-}