/***
 Copyright 2006 Paul J DeCoursey
 Licensed under the Apache License, Version 2.0 (the "License"); you may not 
 use this file except in compliance with the License. You may obtain a copy 
 of the License at:
 
 http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software 
 distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 
 WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 
 License for the specific language governing permissions and limitations under 
 the License.
 
 Onload manages the onload event queue.
 
***/
var global = this;

var OnLoad = {
    list : new Array(),
    started: false,
    addLoadEvent: function(func) {
        if(this.started) {
            this.eval(func);
        } else {
            this.list[this.list.length] = func;
        }
    },
    eval: function(func) {
        if(typeof(func) == "string") {
            if(window.execScript) {
                window.execScript(func);
            } else {
                global.eval(func);
            }
        } else {
            func();
        }
    },
    runQueue: function() {
        OnLoad.started = true;
        for(var i=0;i<OnLoad.list.length;i++) {
            var func = OnLoad.list[i];
            OnLoad.eval(func);
        }
    }
};


onload = OnLoad.runQueue;



