// Color Picker

function doColorDialog(op) {

	var dlg = $("<div style='text-align:center;white-space:nowrap;' />");
	var span = $("<span id='width-maker'/>");
	dlg.append(span);
	var e = $("<div id='cpholder'/>");
	span.append(e);
	e.change( function() {
		onChoiceChange(e.val(),op)
	});
	dlg.append('<br/>');

	var ok = $("<input type='button' value='Ok' />");
	ok.click( function() {
		onChoiceChange(e.data().val,op);
		qwCommit(op,e.data().val);
		$.modal.close();
	});
	dlg.append(ok);

	var cancel = $("<input type='button' value='Cancel' style='margin-left:10px'/>");
	cancel.click( function() {
		qwSet(op,op.value);
		$.modal.close();
	});
	dlg.append(cancel);

	e.ColorPicker({
		flat:true,
		color:op.value,
		onChange: function (hsb, hex, rgb) {
			qwSet(op,'#' + hex);
			e.data('val','#' + hex);
		}
	});
	e.data('val',op.value);

	doStaticDialog(dlg,'Choose Color...', function() {
		var width = $("div.colorpicker").width();
		$('#pd-modal').width(width + 10);
		$.modal.setPosition();
		var height = $("div.colorpicker").height();
		$('#pd-modal').height(height + 74);
	});
}

function onChoiceSet(value,op) {
	qwCommit(op,value);
}

function onChoiceChange(value,op) {
	qwSet(op,value);
}

function onChoiceCancel(op) {
	qwSet(op,op.value);
}
