{
{ int colSpan = getNewColSpan( cell ); if ( colSpan < 1 ) { push( true ); return; } push( false );
	public void startCell( ICellContent cell )	{		if ( isHidden( ) )		{			return;		}		// int span;		// int columnID;		logger.log( Level.FINE, "[HTMLTableEmitter] Start cell." ); //$NON-NLS-1$		if ( cell != null )		{			int colSpan = getNewColSpan( cell );			if ( colSpan < 1 )			{				push( true );				return;			}			push( false );							// output 'td' tag			writer.openTag( HTMLTags.TAG_TD ); //$NON-NLS-1$			// set the 'name' property			setStyleName( cell.getStyleClass( ) );			// colspan			if ( colSpan > 1 )			{				writer.attribute( HTMLTags.ATTR_COLSPAN, colSpan );			}			// rowspan			if ( ( cell.getRowSpan( ) ) > 1 )			{				writer.attribute( HTMLTags.ATTR_ROWSPAN, cell.getRowSpan( ) );			}			// vertical align can only be used with tabelCell/Inline Element			StringBuffer styleBuffer = new StringBuffer( );			IStyle mergedStyle = cell.getStyle( );			String vAlign = null;			String textAlign = null;			if ( mergedStyle != null )			{				vAlign = mergedStyle.getVerticalAlign( );				textAlign = mergedStyle.getTextAlign( );			}			if ( vAlign == null )			{				IStyle cs = cell.getComputedStyle( );				vAlign = cs.getVerticalAlign( );				styleBuffer.append( "vertical-align: " );				styleBuffer.append( vAlign );				styleBuffer.append( ";" );			}			if ( textAlign == null )			{				IStyle cs = cell.getComputedStyle( );				textAlign = cs.getTextAlign( );				styleBuffer.append( "text-align: " );				styleBuffer.append( textAlign );				styleBuffer.append( ";" );			}			handleStyle( cell, styleBuffer );		}		else		{			writer.openTag( HTMLTags.TAG_TD );		}	}