84 lines
2.2 KiB
JavaScript
84 lines
2.2 KiB
JavaScript
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
|
|
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
|
|
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/ExtendedFileManager/assets/dialog.js */
|
|
function Dialog(_1,_2,_3){
|
|
if(typeof _3=="undefined"){
|
|
_3=window;
|
|
}
|
|
if(typeof window.showModalDialog=="function"){
|
|
Dialog._return=_2;
|
|
var r=window.showModalDialog(_1,_3,"dialogheight=10;dialogwidth=10;resizable=yes");
|
|
}else{
|
|
Dialog._geckoOpenModal(_1,_2,_3);
|
|
}
|
|
}
|
|
Dialog._parentEvent=function(ev){
|
|
setTimeout(function(){
|
|
if(Dialog._modal&&!Dialog._modal.closed){
|
|
Dialog._modal.focus();
|
|
}
|
|
},50);
|
|
if(Dialog._modal&&!Dialog._modal.closed){
|
|
Dialog._stopEvent(ev);
|
|
}
|
|
};
|
|
Dialog._return=null;
|
|
Dialog._modal=null;
|
|
Dialog._arguments=null;
|
|
Dialog._geckoOpenModal=function(_6,_7,_8){
|
|
var _9="hadialog"+_6;
|
|
var _a=/\W/g;
|
|
_9=_9.replace(_a,"_");
|
|
var _b=window.open(_6,_9,"toolbar=no,menubar=no,personalbar=no,width=10,height=10,"+"scrollbars=no,resizable=yes,modal=yes,dependable=yes");
|
|
Dialog._modal=_b;
|
|
Dialog._arguments=_8;
|
|
function capwin(w){
|
|
Dialog._addEvent(w,"click",Dialog._parentEvent);
|
|
Dialog._addEvent(w,"mousedown",Dialog._parentEvent);
|
|
Dialog._addEvent(w,"focus",Dialog._parentEvent);
|
|
}
|
|
function relwin(w){
|
|
Dialog._removeEvent(w,"click",Dialog._parentEvent);
|
|
Dialog._removeEvent(w,"mousedown",Dialog._parentEvent);
|
|
Dialog._removeEvent(w,"focus",Dialog._parentEvent);
|
|
}
|
|
capwin(window);
|
|
for(var i=0;i<window.frames.length;capwin(window.frames[i++])){
|
|
}
|
|
Dialog._return=function(_f){
|
|
if(_f&&_7){
|
|
_7(_f);
|
|
}
|
|
relwin(window);
|
|
for(var i=0;i<window.frames.length;relwin(window.frames[i++])){
|
|
}
|
|
Dialog._modal=null;
|
|
};
|
|
};
|
|
Dialog._addEvent=function(el,_12,_13){
|
|
if(Dialog.is_ie){
|
|
el.attachEvent("on"+_12,_13);
|
|
}else{
|
|
el.addEventListener(_12,_13,true);
|
|
}
|
|
};
|
|
Dialog._removeEvent=function(el,_15,_16){
|
|
if(Dialog.is_ie){
|
|
el.detachEvent("on"+_15,_16);
|
|
}else{
|
|
el.removeEventListener(_15,_16,true);
|
|
}
|
|
};
|
|
Dialog._stopEvent=function(ev){
|
|
if(Dialog.is_ie){
|
|
ev.cancelBubble=true;
|
|
ev.returnValue=false;
|
|
}else{
|
|
ev.preventDefault();
|
|
ev.stopPropagation();
|
|
}
|
|
};
|
|
Dialog.agt=navigator.userAgent.toLowerCase();
|
|
Dialog.is_ie=((Dialog.agt.indexOf("msie")!=-1)&&(Dialog.agt.indexOf("opera")==-1));
|
|
|