class ColorStyleElement extends StyleElement
{
	//
	// Types
	//

	public enum Type
	{
		Foreground, Background, Border
	}

	//
	// Static attributes
	//

	public static ColorStyleElement getColorStyleElementByName( String name )
	{<FILL_FUNCTION_BODY>}

	public static ColorStyleElement foreground( String color )
	{
		return new ColorStyleElement( color, Type.Foreground, color );
	}

	public static ColorStyleElement background( String color )
	{
		return new ColorStyleElement( "bg:" + color, Type.Background, color );
	}

	public static ColorStyleElement border( String color )
	{
		return new ColorStyleElement( "border:" + color, Type.Border, color );
	}

	//
	// Attributes
	//

	public String getColor()
	{
		return color;
	}

	public Type getType()
	{
		return type;
	}

	// //////////////////////////////////////////////////////////////////////////
	// Protected

	protected ColorStyleElement( String name, Type type, String color )
	{
		super( name );
		this.type = type;
		this.color = color;
	}

	// //////////////////////////////////////////////////////////////////////////
	// Private

	private final String color;

	private final Type type;
}

		if( name.startsWith( "bg:" ) )
			return background( name.substring( 3 ) );
		if( name.startsWith( "border:" ) )
			return border( name.substring( 7 ) );
		return foreground( name );
	
<methods>public java.lang.String getName() ,public static org.sikuli.support.ide.syntaxhighlight.style.StyleElement getStyleElementByName(java.lang.String) ,public java.lang.String toString() <variables>private final non-sealed java.lang.String name,private static Map<java.lang.String,org.sikuli.support.ide.syntaxhighlight.style.StyleElement> styleElementsByName