overlib_debug_mini.js 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. //\/////
  2. //\ overLIB Debug Plugin
  3. //\ This file requires overLIB 4.10 or later.
  4. //\
  5. //\ overLIB 4.05 - 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. //\ THIS IS A VERY MODIFIED VERSION. DO NOT EDIT OR PUBLISH. GET THE ORIGINAL!
  11. if(typeof olInfo=='undefined'||typeof olInfo.meets=='undefined'||!olInfo.meets(4.10))alert('overLIB 4.10 or later is required for the Debug Plugin.');else{var olZindex;registerCommands('allowdebug');
  12. function parseDebugExtras(pf,i,ar){var k=i,v;
  13. if(k<ar.length){if(ar[k]==ALLOWDEBUG){v=ar[k+1];if(typeof v=='string'){v=ar[++k];if(pf!='ol_')setCanShowParm(v);} return k;}}
  14. return-1;}
  15. function showProperties(){var args=showProperties.arguments,sho,shoObj,vis,lvl=0,istrt=0,theDiv='showProps',txt='';
  16. if(args.length==0)return;if(args.length % 2&&typeof args[0]=='string'){istrt=1;theDiv=args[0];}
  17. sho=createDivContainer(theDiv);
  18. if(olNs4){shoObj=sho;txt+='<table cellpadding="1" cellspacing="0" border="0" bgcolor="#000000"><tr><td>';}else{with(sho.style){backgroundColor='#ffffcc';padding='5px';border='1px #000000 solid';}
  19. shoObj=sho.style;}
  20. lvl=getLayerLevel(theDiv);
  21. if(typeof sho.position=='undefined'){sho.position=new Pagelocation(10+lvl*20,10,1);if(typeof olZindex=='undefined')olZindex=getDivZindex();shoObj.zIndex=olZindex+1+lvl;}
  22. txt+='<table cellpadding="5" border="0" cellspacing="0"'+(olNs4?' bgcolor="#ffffcc"':'')+'>';txt+='<tr><td><strong><A HREF="javascript:moveToBack(\''+theDiv+'\');" title="Move to back">'+theDiv+'</A></strong></td><td align="RIGHT"><strong><a href="javascript:closeLayer(\''+theDiv+'\');" TITLE="Close Layer'+(!olNs4?'" style="background-color: #CCCCCC;border:2px #333369 outset;padding: 2px;':'')+'">X</a></strong></td></tr>';txt+='<tr><td style="text-decoration: underline;"><strong>Item</strong></td><td style="text-decoration: underline;"><strong>Value</strong></td></tr>';for(var i=istrt;i<args.length-1;i++)
  23. txt+='<tr><td align="right"><strong>'+args[i]+':&nbsp;</strong></td><td>'+args[++i]+'</td></tr>';txt+='</table>'+(olNs4?'</td></tr></table>':'');
  24. if(olNs4){sho.document.open();sho.document.write(txt);sho.document.close();}else{if(olIe5&&isMac)sho.innerHTML='';sho.innerHTML=txt;}
  25. showAllVisibleLayers();}
  26. function getLayerLevel(lyr){var i=0;
  27. if(typeof document.popups=='undefined'){document.popups=new Array(lyr);}else{var l=document.popups;for(var i=0;i<l.length;i++)if(lyr==l[i])break;if(i==l.length)l[l.length++]=lyr;}
  28. return i;}
  29. function getDivZindex(id){var obj;
  30. if(id==''||id==null)id='overDiv';
  31. obj=layerReference(id);obj=(olNs4?obj:obj.style);
  32. return obj.zIndex;}
  33. function setCanShowParm(debugID){var lyr,pLyr;
  34. if(typeof debugID!='string')return;
  35. pLyr=debugID.split(',');for(var i=0;i<pLyr.length;i++){lyr=layerReference(pLyr[i]);if(lyr!=null&&typeof lyr.position!='undefined')lyr.position.canShow=1;}}
  36. function Pagelocation(x,y,canShow){this.x=x;this.y=y;this.canShow=(canShow==null)?0:canShow;}
  37. function showAllVisibleLayers(){var lyr,lyrObj,l=document.popups;
  38. for(var i=0;i<l.length;i++){lyr=layerReference(l[i]);lyrObj=(olNs4?lyr:lyr.style);if(lyr.position.canShow){positionLayer(lyrObj,lyr.position.x,lyr.position.y);lyrObj.visibility='visible';}}}
  39. function positionLayer(Obj,x,y){Obj.left=x+(olIe4?eval(docRoot+'.scrollLeft'):window.pageXOffset)+(olNs4?0:'px');Obj.top=y+(olIe4?eval(docRoot+'.scrollTop'):window.pageYOffset)+(olNs4?0:'px');}
  40. function closeLayer(lyrID){var lyr=layerReference(lyrID);
  41. lyr.position.canShow=0;lyr=(olNs4?lyr:lyr.style);lyr.visibility='hidden';}
  42. function moveToBack(layer){var l=document.popups,lyr,obj,i,x=10,y=10,dx=20,z=olZindex+1;
  43. if(l.length==1)return;
  44. lyr=layerReference(layer);lyr.position.x=x;lyr.position.y=y;obj=(olNs4?lyr:lyr.style);obj.zIndex=z;
  45. for(i=0;i<l.length;i++){if(layer==l[i])continue;lyr=layerReference(l[i]);if(lyr.position.canShow==0)continue;obj=(olNs4?lyr:lyr.style);obj.zIndex+=1;lyr.position.x+=dx;lyr.position.y=y;}
  46. showAllVisibleLayers();}
  47. function rawTxt(txt){if(typeof txt!='string')return;return txt.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");}
  48. registerCmdLineFunction(parseDebugExtras);
  49. }