public void paint( Graphics graphics )
	{
	Dimension size = size();
	graphics.setColor( getBackground() );
	switch ( type )
	    {
	    case SOLID:
	    graphics.setColor( getForeground() );
	    for ( int i = 0; i < thickness; ++i )
		graphics.drawRect(
		    i, i, size.width - i * 2 - 1, size.height - i * 2 - 1 );
	    break;

	    case RAISED:
	    for ( int i = 0; i < thickness; ++i )
		graphics.draw3DRect(
		    i, i, size.width - i * 2 - 1, size.height - i * 2 - 1,
		    true );
	    break;

	    case LOWERED:
	    for ( int i = 0; i < thickness; ++i )
		graphics.draw3DRect(
		    i, i, size.width - i * 2 - 1, size.height - i * 2 - 1,
		    false );
	    break;

	    case IN:
	    graphics.draw3DRect( 0, 0, size.width - 1, size.height - 1, false );
	    graphics.draw3DRect(
		thickness - 1, thickness - 1,
		size.width - thickness * 2 + 1, size.height - thickness * 2 + 1,
		true );
	    break;

	    case OUT:
	    graphics.draw3DRect( 0, 0, size.width - 1, size.height - 1, true );
	    graphics.draw3DRect(
		thickness - 1, thickness - 1,
		size.width - thickness * 2 + 1, size.height - thickness * 2 + 1,
		false );
	    break;
	    }
	}