Subversion Repositories DevTools

Rev

Rev 1295 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1293 dpurdie 1
//\/////
2
//\  overLIB Center Popup 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-2003. All rights reserved.
7
//\  Contributors are listed on the homepage.
8
//\  See http://www.bosrup.com/web/overlib/ for details.
9
//\/////
10
if (typeof olInfo=='undefined'||typeof olInfo.meets=='undefined'||!olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Center Popup Plugin.');else {registerCommands('centerpopup,centeroffset');
11
if (typeof ol_centerpopup=='undefined') var ol_centerpopup=0;if (typeof ol_centeroffset=='undefined') var ol_centeroffset='0';
12
var o3_centerpopup=0;var o3_centeroffset='0';
13
function setCenterPopupVariables() {o3_centerpopup=ol_centerpopup;o3_centeroffset=ol_centeroffset;}
14
function parseCenterPopupExtras(pf,i,ar) {var k=i,v;
15
if (k<ar.length) {if (ar[k]==CENTERPOPUP) { eval(pf+'centerpopup=('+pf+'centerpopup==0)?1:0'); return k; }
16
if (ar[k]==CENTEROFFSET) { k=opt_MULTIPLEARGS(++k,ar,(pf+'centeroffset')); return k; }
17
}
18
return-1;}
19
function centerPopupHorizontal(browserWidth, horizontalScrollAmount, widthFix) {if (!o3_centerpopup) return void(0);
20
var vdisp=o3_centeroffset.split(',');var placeX, iwidth=browserWidth, winoffset=horizontalScrollAmount;var pWd=parseInt(o3_width);
21
placeX=winoffset+Math.round((iwidth-widthFix-pWd)/2)+parseInt(vdisp[0]);if(typeof o3_followscroll!='undefined'&&o3_followscroll&&o3_sticky) o3_relx=placeX;
22
return placeX;}
23
function centerPopupVertical(browserHeight,verticalScrollAmount) {if (!o3_centerpopup) return void(0);
24
var placeY, iheight=browserHeight, scrolloffset=verticalScrollAmount;var vdisp=o3_centeroffset.split(',');var pHeight=(o3_aboveheight?parseInt(o3_aboveheight):(olNs4?over.clip.height:over.offsetHeight));
25
placeY=scrolloffset+Math.round((iheight-pHeight)/2)+(vdisp.length>1?parseInt(vdisp[1]):0);if(typeof o3_followscroll!='undefined'&&o3_followscroll&&o3_sticky) o3_rely=placeY;
26
return placeY;}
27
registerRunTimeFunction(setCenterPopupVariables);registerCmdLineFunction(parseCenterPopupExtras);registerHook('horizontalPlacement',centerPopupHorizontal,FCHAIN);registerHook('verticalPlacement', centerPopupVertical, FCHAIN);if(olInfo.meets(4.10)) registerNoParameterCommands('centerpopup');
28
}