Loading2.js
Summary
No overview generated for 'Loading2.js'
mapbuilder.loadScript(baseDir+"/widget/WidgetBase.js");
function Loading2(widgetNode, model) {
WidgetBase.apply(this,new Array(widgetNode, model));
var imageSrc = widgetNode.selectSingleNode("mb:imageSrc");
if (imageSrc) {
this.imageSrc = config.skinDir + imageSrc.firstChild.nodeValue;
} else {
this.imageSrc = config.skinDir + "/images/Loading.gif";
}
var textMessage = widgetNode.selectSingleNode("mb:textMessage");
if (textMessage) {
this.textMessage = textMessage.firstChild.nodeValue;
} else {
this.textMessage = mbGetMessage("docLoading");
}
this.updateMessage = this.textMessage;
this.mapContainerNode = widgetNode.selectSingleNode("mb:mapContainerId");
if (this.mapContainerNode) {
this.containerNodeId = this.mapContainerNode.firstChild.nodeValue;
this.htmlTagId = this.containerNodeId;
this.node = document.getElementById(this.containerNodeId);
}
this.model.addListener("newModel",this.paint, this);
this.model.addListener("loadModel",this.clear, this);
this.model.addListener("bbox", this.paint, this );
this.model.addListener("refresh",this.paint, this);
this.model.addListener("modelStatus",this.update, this);
}
Loading2.prototype.paint = function(objRef) {
objRef.node = document.getElementById(objRef.htmlTagId);
if (objRef.node) {
if (objRef.model.template) return;
if (!objRef.model.url) return;
var outputNode = document.getElementById( objRef.outputNodeId+"_loading" );
if (!outputNode) {
outputNode = document.createElement("div");
outputNode.setAttribute("id",objRef.outputNodeId+"_loading");
objRef.node.appendChild(outputNode);
}
outputNode.className = "loadingIndicator";
outputNode.style.zIndex = 1000;
if (objRef.mapContainerNode){
outputNode.style.position="absolute";
outputNode.style.left='0px';
outputNode.style.top='0px';
}
if (objRef.imageSrc) {
var imageNode = document.getElementById( objRef.outputNodeId+"_imageNode" );
if (!imageNode) {
imageNode = document.createElement("img");
imageNode.setAttribute("id",objRef.outputNodeId+"_imageNode");
outputNode.appendChild(imageNode);
imageNode.style.zIndex = 1000;
}
imageNode.src = objRef.imageSrc;
}
if (objRef.updateMessage) {
var messageNode = document.getElementById( objRef.outputNodeId+"_messageNode" );
if (!messageNode) {
messageNode = document.createElement("p");
messageNode.setAttribute("id",objRef.outputNodeId+"_messageNode");
outputNode.appendChild(messageNode);
}
messageNode.innerHTML = objRef.updateMessage;
}
}
}
Loading2.prototype.clear= function(objRef) {
objRef.updateMessage = null;
var outputNode = document.getElementById( objRef.outputNodeId+"_loading" );
if (outputNode) objRef.node.removeChild(outputNode);
objRef.node =null;
}
Loading2.prototype.update= function(objRef, message) {
if (message) {
objRef.updateMessage = message;
objRef.paint(objRef);
} else {
objRef.clear(objRef);
}
}
Documentation generated by
JSDoc on Tue Aug 21 08:12:28 2007