Bug 147676 [regression]Visibility set in the first col will affect the second col
Description: Visibility set in the first col will affect the second col Steps to reproduce: 1. Insert a grid(3*3), insert contents to each cell. 2.Set the first col to hide all in visibility and preview Expected result: Only the first col is hidden. Actual result: The second col is hidden, too. If you set the second col in step2, the third col will disappear.
engine/org.eclipse.birt.report.engine.emitter.html/src/org/eclipse/birt/report/engine/emitter/html/HTMLReportEmitter.java

		{
			ITableBandContent bandContent = (ITableBandContent) parent;
			IGroupContent group = getGroup(bandContent);
			 group != null )
			{
				ttribute( HTMLTags.ATTR_GOURP_ID, group.getGroupID( ) );
			}
			String rowType = null;
			String metaType = null;
			int bandType = bandContent.getBandType( );
			 bandType == ITableBandContent.BAND_HEADER )
			{
				metaType = "wrth";
				rowType = "header";
			}
			else  bandType == ITableBandContent.BAND_FOOTER )
			{
				metaType = "wrtf";
				rowType = "footer";
			}
			else  bandType == ITableBandContent.BAND_GROUP_HEADER )
			{
				rowType = "group-header";
				 group != null )
				{
					metaType = "wrgh" + group.getGroupLevel( );
				}
			}
			else  bandType == ITableBandContent.BAND_GROUP_FOOTER )
			{
				rowType = "group-footer";
				 group != null )
				{
					metaType = "wrgf" + group.getGroupLevel( );
				}
			}
			ttribute( HTMLTags.ATTR_TYPE, metaType );
			ttribute( HTMLTags.ATTR_ROW_TYPE, rowType );
		}
	}
	
	*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.report.engine.emitter.IContentEmitter#endRow(org.eclipse.birt.report.engine.content.IRowContent)
	 *
	public void endRow( IRowContent row )
	{
		 pop( ) )
		{
			return;
		}
		 includeSelectionHandler )
		{
			DetailRowState state = (DetailRowState) detailRowStateStack.peek( );
			 state.isStartOfDetail )
			{
				state.isStartOfDetail = false;
			}
		}
		 assert currentData != null;
		
		 currentData.adjustCols( );
		writer.closeTag( HTMLTags.TAG_TR );
	}
	private boolean isCellInTableHead( ICellContent cell )
	{
		IElement row = cell.getParent( );
		 row instanceof IRowContent )
		{
			IElement tableBand = row.getParent( );
			 tableBand instanceof ITableBandContent )
			{
				int type = ( (ITableBandContent)tableBand ).getBandType( ); 
				 type == ITableBandContent.BAND_HEADER )
				{
					return true;
				}
			}
		}		
		return false;
	}
	
	*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.birt.report.engine.emitter.IContentEmitter#startCell(org.ecl