1//\///// 2//\ overLIB Anchor Plugin 3//\ This file requires overLIB 4.10 or later. 4//\ 5//\ overLIB 4.10 - You may not remove or change this notice. 6//\ Copyright Erik Bosrup 1998-2004. All rights reserved. 7//\ Contributors are listed on the homepage. 8//\ See http://www.bosrup.com/web/overlib/ for details. 9//\///// 10//\ THIS IS A VERY MODIFIED VERSION. DO NOT EDIT OR PUBLISH. GET THE ORIGINAL! 11if(typeof olInfo=='undefined'||typeof olInfo.meets=='undefined'||!olInfo.meets(4.10))alert('overLIB 4.10 or later is required for the Anchor Plugin.');else{registerCommands('anchor,anchorx,anchory,noanchorwarn,anchoralign'); 12if(typeof ol_anchor=='undefined')var ol_anchor='';if(typeof ol_anchorx=='undefined')var ol_anchorx=0;if(typeof ol_anchory=='undefined')var ol_anchory=0;if(typeof ol_noanchorwarn=='undefined')var ol_noanchorwarn=1;if(typeof ol_anchoralign=='undefined')var ol_anchoralign='UL'; 13var o3_anchor="",o3_anchorx=0,o3_anchory=0,o3_noanchorwarn=1,o3_anchoralign='UL',mrkObj,rmrkPosition; 14function setAnchorVariables(){o3_anchor=ol_anchor;o3_anchorx=ol_anchorx;o3_anchory=ol_anchory;o3_noanchorwarn=ol_noanchorwarn;o3_anchoralign=ol_anchoralign;mrkObj=null} 15function parseAnchorExtras(pf,i,ar){var v,k=i; 16if(k<ar.length){if(ar[k]==ANCHOR){eval(pf+"anchor='"+escSglQuote(ar[++k])+"'");return k;} 17if(ar[k]==ANCHORX){eval(pf+'anchorx='+ar[++k]);return k;} 18if(ar[k]==ANCHORY){eval(pf+'anchory='+ar[++k]);return k;} 19if(ar[k]==NOANCHORWARN){eval(pf+'noanchorwarn=('+pf+'noanchorwarn==1)?0:1');return k;} 20if(ar[k]==ANCHORALIGN){k=opt_MULTIPLEARGS(++k,ar,(pf+'anchoralign')); return k;}} 21return-1} 22function checkAnchorObject(){var w=o3_anchor; 23if(w){if(!(mrkObj=getAnchorObjectRef(w))){if(o3_noanchorwarn){alert('WARNING! Reference mark "'+w+'" not found.');return false;}else w=''}} 24return true} 25function anchorHorizontal(browserWidth,horizontalScrollAmount,widthFix){var hasAnchor=(typeof o3_anchor!='undefined'&&o3_anchor);if(!hasAnchor)return void(0); 26if(typeof o3_followscroll!='undefined'&&o3_followscroll&&o3_sticky)o3_relx=rmrkPosition[0]; 27return rmrkPosition[0]} 28function anchorVertical(browserHeight,verticalScrollAmount){var hasAnchor=(typeof o3_anchor!='undefined'&&o3_anchor);if(!hasAnchor)return void(0); 29if(typeof o3_followscroll!='undefined'&&o3_followscroll&&o3_sticky)o3_rely=rmrkPosition[1]; 30return rmrkPosition[1]} 31function anchorPreface(){if(!mrkObj)return;rmrkPosition=getAnchorLocation(mrkObj)} 32function getAnchorObjectRef(aObj){return getRefById(aObj,o3_frame.document)||getRefByName(aObj,o3_frame.document)} 33function getAnchorLocation(objRef){var mkObj,of,offsets,mlyr 34mkObj=mlyr=objRef 35offsets=[o3_anchorx,o3_anchory] 36if(document.layers){if(typeof mlyr.length!='undefined'&& mlyr.length>1){mkObj=mlyr[0] 37offsets[0]+=mlyr[0].x+mlyr[1].pageX 38offsets[1]+=mlyr[0].y+mlyr[1].pageY 39}else{if(mlyr.toString().indexOf('Image')!=-1||mlyr.toString().indexOf('Anchor')!=-1){offsets[0]+=mlyr.x 40offsets[1]+=mlyr.y 41}else{offsets[0]+=mlyr.pageX 42offsets[1]+=mlyr.pageY}} 43}else{offsets[0]+=pageLocation(mlyr,'Left') 44offsets[1]+=pageLocation(mlyr,'Top')} 45of=getAnchorOffsets(mkObj) 46if(typeof o3_dragimg!='undefined'&& o3_dragimg){olImgLeft=offsets[0];olImgTop=offsets[1]} 47offsets[0]+=of[0] 48offsets[1]+=of[1] 49if(typeof o3_dragimg!='undefined'&& o3_dragimg){olImgRight=offsets[0];olImgBottom=offsets[1];return} 50return offsets} 51function getAnchorOffsets(mkObj){var fx=fy=0, mp,puc,mkAry,sx=sy=0,w=o3_anchoralign 52var mW=mH=pW=pH=0 53var off=[0,0] 54mkAry=w.split(','); 55if(mkAry.length<3){mp=mkAry[0].toUpperCase();puc=(mkAry.length==1)?mp:mkAry[1].toUpperCase();}else if(mkAry.length==3){if(!isNaN(mkAry[0])){mp=mkAry.slice(0,2);puc=mkAry[2].toUpperCase();}else{mp=mkAry[0].toUpperCase();puc=mkAry.slice(1)} 56}else{mp=mkAry.slice(0,2);puc=mkAry.slice(2)} 57var shdwPresent=typeof o3_shadow!='undefined'&& o3_shadow 58if(shdwPresent){sx=Math.abs(o3_shadowx);sy=Math.abs(o3_shadowy)} 59pW=(shdwPresent?parseInt(o3_width):(olNs4?over.clip.width:over.offsetWidth)) 60pH=(shdwPresent?parseInt(o3_aboveheight):(olNs4?over.clip.height:over.offsetHeight)) 61if(olOp&& o3_wrap){pW=(shdwPresent?parseInt(o3_width):(olNs4?over.clip.width:over.offsetWidth)) 62pH=(shdwPresent?parseInt(o3_aboveheight):(olNs4?over.clip.height:over.offsetHeight))} 63if(!olOp&& mkObj.toString().indexOf('Image')!=-1){mW=mkObj.width 64mH=mkObj.height 65}else if(!olOp&& mkObj.toString().indexOf('Anchor')!=-1){mp='UL' 66}else{mW=(olNs4)?mkObj.clip.width:mkObj.offsetWidth 67mH=(olNs4)?mkObj.clip.height:mkObj.offsetHeight} 68if(!isNaN(mp)||typeof mp=='object'){if(typeof mp=='object'){fx=parseFloat(mp[0]);fy=parseFloat(mp[1]);}else 69fx=fy=parseFloat(mp);off=[Math.round(fx*mW),Math.round(fy*mH)];}else{if(mp=='UR')off=[mW,0] 70else if(mp=='LL')off=[0,mH] 71else if(mp=='LR')off=[mW,mH]} 72if(typeof o3_dragimg!='undefined'&& o3_dragimg)return off;else{if(!isNaN(puc)||typeof puc=='object' ){if(typeof puc=='object'){fx=parseFloat(puc[0]);fy=parseFloat(puc[1]);}else 73fx=fy=parseFloat(puc);off[0]-=Math.round(fx*(pW-sx));
73off[1]-=Math.round(fy*(pH-sy));}else{if(puc=='UR'){off[0]-=(pW-sx);off[1]-=sy 74}else if(puc=='LL'){off[0]-=sx;off[1]-=(pH-sy) 75}else if(puc=='LR'){off[0]-=(pW-sx);off[1]-=(pH-sy)}} 76return off}} 77function pageLocation(o,t){var x=0 78while(o.offsetParent){x+=o['offset'+t] 79o=o.offsetParent} 80x+=o['offset'+t] 81return x} 82function getRefById(l,d){var r="",j 83d=(d||document) 84if(d.all)return d.all[l] 85else if(d.getElementById)return d.getElementById(l) 86else if(d.layers&& d.layers.length>0){if(d.layers[l])return d.layers[l] 87for(j=0;j<d.layers.length;j++){r=getRefById(l,d.layers[j].document) 88if(r)return r}} 89return false} 90function getRefByName(l,d){var r=null,j 91d=(d||document) 92if(d.images[l])return d.images[l] 93else if(d.anchors[l])return d.anchors[l];else if(d.layers&& d.layers.length>0){for(j=0;j<d.layers.length;j++){r=getRefByName(l,d.layers[j].document) 94if(r&& r.length>0)return r 95else if(r)return [r,d.layers[j]]}} 96return null} 97registerRunTimeFunction(setAnchorVariables);registerCmdLineFunction(parseAnchorExtras);registerPostParseFunction(checkAnchorObject);registerHook("createPopup",anchorPreface,FAFTER);registerHook("horizontalPlacement",anchorHorizontal,FCHAIN);registerHook("verticalPlacement",anchorVertical,FCHAIN);if(olInfo.meets(4.10))registerNoParameterCommands('noanchorwarn'); 98}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.