X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/793149f04ce52bf75dc4efb7b83a3f8ed30d1fff..35ec793690104efdd610964d255302a0310a2daf:/doc/xslt/slides/browser/xbStyle.js diff --git a/doc/xslt/slides/browser/xbStyle.js b/doc/xslt/slides/browser/xbStyle.js deleted file mode 100644 index 672ff035..00000000 --- a/doc/xslt/slides/browser/xbStyle.js +++ /dev/null @@ -1,295 +0,0 @@ -/* - * xbStyle.js - * $Revision: 1.2 $ $Date: 2003/02/07 16:04:22 $ - */ - -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Netscape code. - * - * The Initial Developer of the Original Code is - * Netscape Corporation. - * Portions created by the Initial Developer are Copyright (C) 2001 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): Bob Clary - * - * ***** END LICENSE BLOCK ***** */ - -function xbStyleNotSupported() {} - -function xbStyleNotSupportStringValue(propname) { xbDEBUG.dump(propname + ' is not supported in this browser'); return '';}; - -///////////////////////////////////////////////////////////// -// xbClipRect - -function xbClipRect(a1, a2, a3, a4) -{ - this.top = 0; - this.right = 0; - this.bottom = 0; - this.left = 0; - - if (typeof(a1) == 'string') - { - var val; - var ca; - var i; - - if (a1.indexOf('rect(') == 0) - { - // I would have preferred [0-9]+[a-zA-Z]+ for a regexp - // but NN4 returns null for that. - ca = a1.substring(5, a1.length-1).match(/-?[0-9a-zA-Z]+/g); - for (i = 0; i < 4; ++i) - { - val = xbToInt(ca[i]); - if (val != 0 && ca[i].indexOf('px') == -1) - { - xbDEBUG.dump('xbClipRect: A clipping region ' + a1 + ' was detected that did not use pixels as units. Click Ok to continue, Cancel to Abort'); - return; - } - ca[i] = val; - } - this.top = ca[0]; - this.right = ca[1]; - this.bottom = ca[2]; - this.left = ca[3]; - } - } - else if (typeof(a1) == 'number' && typeof(a2) == 'number' && typeof(a3) == 'number' && typeof(a4) == 'number') - { - this.top = a1; - this.right = a2; - this.bottom = a3; - this.left = a4; - } -} - -xbClipRect.prototype.top = 0; -xbClipRect.prototype.right = 0; -xbClipRect.prototype.bottom = 0; -xbClipRect.prototype.left = 0; - - -function xbClipRectGetWidth() -{ - return this.right - this.left; -} -xbClipRect.prototype.getWidth = xbClipRectGetWidth; - -function xbClipRectSetWidth(width) -{ - this.right = this.left + width; -} -xbClipRect.prototype.setWidth = xbClipRectSetWidth; - -function xbClipRectGetHeight() -{ - return this.bottom - this.top; -} -xbClipRect.prototype.getHeight = xbClipRectGetHeight; - -function xbClipRectSetHeight(height) -{ - this.bottom = this.top + height; -} -xbClipRect.prototype.setHeight = xbClipRectSetHeight; - -function xbClipRectToString() -{ - return 'rect(' + this.top + 'px ' + this.right + 'px ' + this.bottom + 'px ' + this.left + 'px )' ; -} -xbClipRect.prototype.toString = xbClipRectToString; - -///////////////////////////////////////////////////////////// -// xbStyle -// -// Note Opera violates the standard by cascading the effective values -// into the HTMLElement.style object. We can use IE's HTMLElement.currentStyle -// to get the effective values. In Gecko we will use the W3 DOM Style Standard getComputedStyle - -function xbStyle(obj, win, position) -{ - if (typeof(obj) == 'object' && typeof(obj.style) != 'undefined') - this.styleObj = obj.style; - else if (document.layers) // NN4 - { - if (typeof(position) == 'undefined') - position = ''; - - this.styleObj = obj; - this.styleObj.position = position; - } - this.object = obj; - this.window = win ? win : window; -} - -xbStyle.prototype.styleObj = null; -xbStyle.prototype.object = null; - -///////////////////////////////////////////////////////////// -// xbStyle.getEffectiveValue() -// note that xbStyle's constructor uses the currentStyle object -// for IE5+ and that Opera's style object contains computed values -// already. Netscape Navigator's layer object also contains the -// computed values as well. Note that IE4 will not return the -// computed values. - -function xbStyleGetEffectiveValue(propname) -{ - var value = null; - - if (this.window.document.defaultView && this.window.document.defaultView.getComputedStyle) - { - // W3 - // Note that propname is the name of the property in the CSS Style - // Object. However the W3 method getPropertyValue takes the actual - // property name from the CSS Style rule, i.e., propname is - // 'backgroundColor' but getPropertyValue expects 'background-color'. - - var capIndex; - var cappropname = propname; - - while ( (capIndex = cappropname.search(/[A-Z]/)) != -1) - { - if (capIndex != -1) - { - cappropname = cappropname.substring(0, capIndex) + '-' + cappropname.substring(capIndex, capIndex+1).toLowerCase() + cappropname.substr(capIndex+1); - } - } - - value = this.window.document.defaultView.getComputedStyle(this.object, '').getPropertyValue(cappropname); - - // xxxHack for Gecko: - if (!value && this.styleObj[propname]) - { - value = this.styleObj[propname]; - } - } - else if (typeof(this.styleObj[propname]) == 'undefined') - { - value = xbStyleNotSupportStringValue(propname); - } - else if (typeof(this.object.currentStyle) != 'undefined') - { - // IE5+ - value = this.object.currentStyle[propname]; - if (!value) - { - value = this.styleObj[propname]; - } - - if (propname == 'clip' && !value) - { - // clip is not stored in IE5/6 handle separately - value = 'rect(' + this.object.currentStyle.clipTop + ', ' + this.object.currentStyle.clipRight + ', ' + this.object.currentStyle.clipBottom + ', ' + this.object.currentStyle.clipLeft + ')'; - } - } - else - { - // IE4+, Opera, NN4 - value = this.styleObj[propname]; - } - - return value; -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.moveAbove() - -function xbStyleMoveAbove(cont) -{ - this.setzIndex(cont.getzIndex()+1); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.moveBelow() - -function xbStyleMoveBelow(cont) -{ - var zindex = cont.getzIndex() - 1; - - this.setzIndex(zindex); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.moveBy() - -function xbStyleMoveBy(deltaX, deltaY) -{ - this.moveTo(this.getLeft() + deltaX, this.getTop() + deltaY); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.moveTo() - -function xbStyleMoveTo(x, y) -{ - this.setLeft(x); - this.setTop(y); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.moveToAbsolute() - -function xbStyleMoveToAbsolute(x, y) -{ - this.setPageX(x); - this.setPageY(y); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.resizeBy() - -function xbStyleResizeBy(deltaX, deltaY) -{ - this.setWidth( this.getWidth() + deltaX ); - this.setHeight( this.getHeight() + deltaY ); -} - -///////////////////////////////////////////////////////////////////////////// -// xbStyle.resizeTo() - -function xbStyleResizeTo(x, y) -{ - this.setWidth(x); - this.setHeight(y); -} - -//////////////////////////////////////////////////////////////////////// - -xbStyle.prototype.getEffectiveValue = xbStyleGetEffectiveValue; -xbStyle.prototype.moveAbove = xbStyleMoveAbove; -xbStyle.prototype.moveBelow = xbStyleMoveBelow; -xbStyle.prototype.moveBy = xbStyleMoveBy; -xbStyle.prototype.moveTo = xbStyleMoveTo; -xbStyle.prototype.moveToAbsolute = xbStyleMoveToAbsolute; -xbStyle.prototype.resizeBy = xbStyleResizeBy; -xbStyle.prototype.resizeTo = xbStyleResizeTo; - -if (document.all || document.getElementsByName) -{ - xblibrary.loadScript('xbStyle-css.js'); -} -else if (document.layers) -{ - xblibrary.loadScript('xbStyle-nn4.js'); -} -else -{ - xblibrary.loadScript('xbStyle-not-supported.js'); -} - -