Tag: cws_src680_rpt23fix02 User: oj Date: 2007-08-02 08:17:14+0000 Modified: dba/reportdesign/source/filter/xml/xmlCell.cxx dba/reportdesign/source/filter/xml/xmlExport.cxx dba/reportdesign/source/filter/xml/xmlTable.cxx
Log: #i79942# correct simple import export failure File Changes: Directory: /dba/reportdesign/source/filter/xml/ =============================================== File [changed]: xmlCell.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/filter/xml/xmlCell.cxx?r1=1.2.4.3&r2=1.2.4.4 Delta lines: +1 -1 ------------------- --- xmlCell.cxx 2007-07-31 07:10:38+0000 1.2.4.3 +++ xmlCell.cxx 2007-08-02 08:17:11+0000 1.2.4.4 @@ -237,7 +237,7 @@ break; } - if ( m_xComponent.is() && !m_bContainsShape ) + if ( m_xComponent.is() ) m_pContainer->addCell(m_xComponent); if( !pContext ) File [changed]: xmlExport.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/filter/xml/xmlExport.cxx?r1=1.2.4.3&r2=1.2.4.4 Delta lines: +2 -1 ------------------- --- xmlExport.cxx 2007-07-31 06:00:21+0000 1.2.4.3 +++ xmlExport.cxx 2007-08-02 08:17:11+0000 1.2.4.4 @@ -1673,9 +1673,10 @@ uno::Reference< XShape > xShape(_xSection->getByIndex(i),uno::UNO_QUERY); if ( xShape.is() ) { + ::std::auto_ptr<SvXMLElementExport> pParagraphContent; if ( _bAddParagraph ) { - SvXMLElementExport aParagraphContent(*this,XML_NAMESPACE_TEXT, XML_P, sal_True, sal_False); + pParagraphContent.reset(new SvXMLElementExport(*this,XML_NAMESPACE_TEXT, XML_P, sal_True, sal_False)); } AddAttribute( XML_NAMESPACE_TEXT, XML_ANCHOR_TYPE, XML_PARAGRAPH ); xShapeExport->exportShape(xShape.get(),SEF_DEFAULT|SEF_EXPORT_NO_WS,&aRefPoint); File [changed]: xmlTable.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/filter/xml/xmlTable.cxx?r1=1.2.4.3&r2=1.2.4.4 Delta lines: +10 -5 -------------------- --- xmlTable.cxx 2007-07-30 05:53:18+0000 1.2.4.3 +++ xmlTable.cxx 2007-08-02 08:17:11+0000 1.2.4.4 @@ -318,6 +318,7 @@ // ----------------------------------------------------------------------------- void OXMLTable::addCell(const Reference<XReportComponent>& _xElement) { + uno::Reference<report::XShape> xShape(_xElement,uno::UNO_QUERY); OSL_ENSURE(static_cast<sal_uInt32>(m_nRowIndex-1 ) < m_aGrid.size() && static_cast<sal_uInt32>( m_nColumnIndex-1 ) < m_aGrid[m_nRowIndex-1].size(), "OXMLTable::addCell: Invalid column and row index"); if ( static_cast<sal_uInt32>(m_nRowIndex-1 ) < m_aGrid.size() && static_cast<sal_uInt32>( m_nColumnIndex-1 ) < m_aGrid[m_nRowIndex-1].size() ) @@ -325,12 +326,16 @@ TCell& rCell = m_aGrid[m_nRowIndex-1][m_nColumnIndex-1]; if ( _xElement.is() ) rCell.xElements.push_back( _xElement ); + if ( !xShape.is() ) + { rCell.nWidth = m_aWidth[m_nColumnIndex-1]; rCell.nHeight = m_aHeight[m_nRowIndex-1]; rCell.nColSpan = m_nColSpan; rCell.nRowSpan = m_nRowSpan; } + } + if ( !xShape.is() ) m_nColSpan = m_nRowSpan = 1; } // ----------------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
