var Dialog = new function()
{
    this.dLog_SaveWorkspace = function()
    {
		var div = container.appendChild(document.createElement('div'));
		div.appendChild(document.createTextNode('Copy this data into a text file on your computer to save your progress.'));
		div.appendChild(document.createElement('br'));

		var textarea = div.appendChild(document.createElement('textarea'));
		textarea.rows = 30;
		textarea.cols = 90;

		div.appendChild(document.createElement('br'));

		var hider = div.appendChild(document.createElement('input'));
		hider.type='button';
		hider.id='SaveHider';
		hider.value='ok';

		var options = {bgColor:'white',bgOpacity:'0.5',toggle:'fade',toggleDuration:250};

		var temp = dojo.widget.createWidget('dialog',options,div);
		temp.setCloseControl(hider);
		temp.textarea = textarea;

		textarea.fillme = function() {this.value = WM.dump();}

		return temp;
    }

    this.dLog_LoadWorkspace = function()
    {
		var div = container.appendChild(document.createElement('div'));
		div.appendChild(document.createTextNode('Paste your saved workspace data into this field and click "ok".'));
		div.appendChild(document.createElement('br'));

		var textarea = div.appendChild(document.createElement('textarea'));
		textarea.rows = 30;
		textarea.cols = 90;

		div.appendChild(document.createElement('br'));

		var hider = div.appendChild(document.createElement('input'));
		hider.type='button';
		hider.id='LoadHider';
		hider.value='ok';

		var options = {bgColor:'white',bgOpacity:'0.5',toggle:'fade',toggleDuration:250};

		var temp = dojo.widget.createWidget('dialog',options,div);
		temp.setCloseControl(hider);
		temp.textarea = textarea;

		hider.dojoNode = temp;

		dojo.event.connect(hider,"onclick",function(e){WM.loadDump(e.target.dojoNode.textarea.value);});

		return temp;
    }

    this.dLog_CreateUserWindow = function()
    {
		var div = container.appendChild(document.createElement('div'));
		div.appendChild(document.createTextNode('Create User Defined List:'));
		div.appendChild(document.createElement('br'));
		div.appendChild(document.createTextNode('Title:'));

		var text = div.appendChild(document.createElement('input'));
		text.type='text';
		text.size=15;

		div.appendChild(document.createElement('br'));

		var hider = div.appendChild(document.createElement('input'));
		hider.type='button';
		hider.id='hider';
		hider.value='ok';
		hider.style.display='none';
		hider.style.marginRight='5px';
		hider.style.marginLeft='30px';

		var hider2 = div.appendChild(document.createElement('input'));
		hider2.type='button';
		hider2.id='hider2';
		hider2.value='cancel';

		dojo.event.connect(text, "onkeyup", 
			function(evt){ 
				var text = evt.target;
				var okbox = text.parent.okbutton;
				var re = new RegExp('[^a-z|A-Z|0-9|=|+|_|.|-]');
				if(text.value.match(re) || text.value == '')
				{ okbox.style.display='none';}
				else
				{ okbox.style.display='inline';} 
				if(evt.keyCode == 13 && okbox.style.display!='none')
				{okbox.onclick({target:okbox});}
			}
		);

		dojo.event.connect(hider2, "onclick",
			function(evt){
				var text = evt.target.parent.inputbox;
				text.value = '';
				evt.target.parent.okbutton.style.display='none';
			}
		);

		hider.clickme = function(parent){
			var text = parent.inputbox;
			dojo.event.topic.publish("/DLogClicks",text.value);
			text.value = '';
			parent.okbutton.style.display='none';
		}

		dojo.event.connect(hider, "onclick",function(evt) { evt.target.clickme(evt.target.parent); });

		var options = {bgColor:'white',bgOpacity:'0.5',toggle:'fade',toggleDuration:250};

		var temp = dojo.widget.createWidget('dialog',options,div);
		temp.setCloseControl(hider);
		temp.setCloseControl(hider2);
		temp.okbutton = hider;
		temp.cancelbutton = hider2;
		temp.inputbox = text;

		hider.parent = temp;

		hider2.parent = temp;

		text.parent = temp;
		
		return temp;
    }
}
