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]

Reply via email to