/**
 * Define the JSX class with the basic utilities.
 */

var JSX = {};
JSX.__constructor=function(){
	this.path='/jsx/';
	this.eventtargets = [[]];
	this.included=new Array();
}

JSX.onPageLoad = function() {
	for (var i = 0; i < this.eventtargets[0].length; i++) {
		this.eventtargets[0][i].onPageLoad();
	}
}

JSX.setListener = function(t, o) {
	this.eventtargets[t][this.eventtargets[t].length] = o;
}

JSX.setPath=function(p){
	this.path=p
}

JSX.useClass=function(a){
	var r=/[\._]/g;
	var src=this.path+a.replace(r,'/');
	if (a.indexOf('!') == -1) {
		src += '.class.js';
	}
	else {
		src = src.substring(0, src.indexOf('!')) + a.substr(a.indexOf('!') + 1);
	}
	if (this.included[src] == 1) {
		return;
	}
	this.included[src] = 1;
	document.write('<script type="text/javascript" language="JavaScript" src="'+src+'"><\/script>');
}

JSX.__constructor();
JSX.useClass('com.gorad.lang.Object');
