These are the currently implemented widget types:

	(symbol [OPTIONS...])
	(choice OPTIONS...)
	(string)
	(number [MIN [MAX]])
	(boolean [LABEL])

	(or WIDGETS...)			;WIDGET value or `nil'
	(optional WIDGET)		;same as `(or WIDGET)' ?
	(and WIDGETS...)		;creates a list of values
	(v-and WIDGETS...)		;puts widgets in a vbox
	(h-and WIDGETS...)		;puts widgets in a hbox

	(quoted WIDGET)			;value is `(quote WIDGET-VALUE)'
	(labelled LABEL WIDGET)

	(pair CAR-WIDGET CDR-WIDGET [IN-VBOX] [REVERSE-LAYOUT])
	(list WIDGET [TITLE])
	(alist KEY-WIDGET VALUE_WIDGET)
	(alist (KEY-WIDGET "KEY-TITLE") (VALUE-WIDGET "VALUE-TITLE"))

	(color)
	(font)
	(file)
	(command)
	(event)
	(keymap)
	(image)
	(frame-style)

