// === Debug ===
// Copyright 2001 Musicmusicmusic, Inc. All rights reserved.
// Author: Martin Andres
// Version: 1.1
// Date: Mar. 10, 2001
// =============

var debugwindow = null
var debugType = 0
var debugText = new Array()
var debugCnt = 1

// type : 0 = off (default)
//        1 = normal
//        2 = auto scroll
//        3 = short
function debug_on(type) {
	if (!type) type=0
	if (type) debugType = Number(type)
	var width=700,set
	if ((debugwindow == null || debugwindow.closed) && debugType) {
		if (navigator.appName=='Netscape') width=screen.availWidth-10
		if (debugType!=3) { set = "width=600,height=480,resizable,scrollbars" }
		             else { set = "width="+width.toString()+",height=140,resizable,scrollbars" }
		debugwindow = window.open("", "Debug", set)
		debugwindow.moveTo(0, 0)
		debug_start()
		debugwindow.document.writeln("===>>> Debug <<<=== "+debugType.toString())
	}
}

function debug_off() {
	if (debugwindow!=null) debugwindow.close
}

function debug(text) {
	if ((debugwindow != null) && (!debugwindow.closed && debugType)) {
		var cnt = debugCnt.toString()
		if (debugCnt<10) cnt="0"+cnt
		if (debugCnt<100) cnt="0"+cnt
		if (debugType!=3) {
			debugwindow.document.writeln(cnt+"|"+text)
			if(debugType==2) debugwindow.scroll(0,99999)
		} else {
			if (debugText.length>5) debugText.shift()
			debugText.push(cnt+"|"+text)
//			debugwindow.closed
			debug_start()
			debugwindow.document.writeln(debugText.join("\n"))
		}
		debugCnt++
	}
}

function debug_start() {
	debugwindow.document.open("text/plain")
	if (navigator.userAgent.indexOf('Gecko')>0) debugwindow.document.writeln("<PRE>")
}

// =============
// Key Press Capture
//  Add this to the body ' onKeyPress="top.onKeyPress(event)" '

if (document.layers) window.captureEvents(Event.KEYPRESS);
function onKeyPress(evnt) {KeyPress((document.layers)?evnt.which:evnt.keyCode)}

var keybuff=""

function KeyPress(code) {
 if (code!=13) {
	keybuff+=String.fromCharCode(code)
 } else {
	//alert(keybuff)
	if (keybuff=="debugon") debug_on(1)
	if (keybuff=="debugoff") debug_off()
	keybuff=""
 }
}
