public StringBuilder listCharClasses(Session viewerS, Enumeration these, boolean shortList)
	{
		final StringBuilder lines=new StringBuilder("");
		if(!these.hasMoreElements()) return lines;
		int column=0;
		final int COL_LEN=ListingLibrary.ColFixer.fixColWidth(25.0,viewerS);
		if(shortList)
		{
			final Vector classNames=new Vector();
			for(final Enumeration e=these;e.hasMoreElements();)
				classNames.addElement(((CharClass)e.nextElement()).ID());
			lines.append(CMParms.toStringList(classNames));
		}
		else
		for(final Enumeration e=these;e.hasMoreElements();)
		{
			final CharClass thisThang=(CharClass)e.nextElement();
			if(++column>2)
			{
				lines.append("\n\r");
				column=1;
			}
			lines.append(CMStrings.padRight(thisThang.ID()
										+(thisThang.isGeneric()?"*":"")
										+" ("+thisThang.baseClass()+")",COL_LEN));
		}
		lines.append("\n\r");
		return lines;
	}