summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2013-11-02 20:44:38 +0100
committerMichael Meeks <michael.meeks@collabora.com>2013-11-02 19:21:07 +0000
commitcc502dadd01658e80a4f36fe43ac16c46e819b30 (patch)
tree2d79ecd6796b529bf8f2dbd788d336bd66d0080f /xmloff
parent16aedfcc7a3aeb3ff30210d57f837583aa12b667 (diff)
Revert "transpose "data in rows" ranges for internal data provider, fdo#62057"
This reverts commit 14fa5488a829936275f79a7693b13da55114220e. Signed-off-by: Michael Meeks <michael.meeks@collabora.com> Conflicts: xmloff/source/chart/SchXMLTableContext.cxx Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/source/chart/SchXMLChartContext.cxx4
-rw-r--r--xmloff/source/chart/SchXMLTableContext.cxx33
-rw-r--r--xmloff/source/chart/SchXMLTableContext.hxx5
3 files changed, 6 insertions, 36 deletions
diff --git a/xmloff/source/chart/SchXMLChartContext.cxx b/xmloff/source/chart/SchXMLChartContext.cxx
index 69410a527617..5aeb93bd78c2 100644
--- a/xmloff/source/chart/SchXMLChartContext.cxx
+++ b/xmloff/source/chart/SchXMLChartContext.cxx
@@ -788,7 +788,7 @@ void SchXMLChartContext::EndElement()
//own data or only rectangular range available
if( xNewDoc->hasInternalDataProvider() )
- SchXMLTableHelper::applyTableToInternalDataProvider( maTable, xNewDoc, meDataRowSource );
+ SchXMLTableHelper::applyTableToInternalDataProvider( maTable, xNewDoc );
bool bOlderThan2_3 = SchXMLTools::isDocumentGeneratedWithOpenOfficeOlderThan2_3( Reference< frame::XModel >( xNewDoc, uno::UNO_QUERY ));
bool bOldFileWithOwnDataFromRows = (bOlderThan2_3 && bHasOwnData && (meDataRowSource==chart::ChartDataRowSource_ROWS)); // in this case there are range addresses that are simply wrong.
@@ -825,7 +825,7 @@ void SchXMLChartContext::EndElement()
if( !xNewDoc->hasInternalDataProvider() )
{
xNewDoc->createInternalDataProvider( sal_False /* bCloneExistingData */ );
- SchXMLTableHelper::applyTableToInternalDataProvider( maTable, xNewDoc, meDataRowSource );
+ SchXMLTableHelper::applyTableToInternalDataProvider( maTable, xNewDoc );
try
{
lcl_ApplyDataFromRectangularRangeToDiagram( xNewDoc, msChartAddress, meDataRowSource, mbRowHasLabels, mbColHasLabels, bHasOwnData, msColTrans, msRowTrans );
diff --git a/xmloff/source/chart/SchXMLTableContext.cxx b/xmloff/source/chart/SchXMLTableContext.cxx
index ea877d6d6a23..206e5e839227 100644
--- a/xmloff/source/chart/SchXMLTableContext.cxx
+++ b/xmloff/source/chart/SchXMLTableContext.cxx
@@ -775,35 +775,9 @@ static void lcl_ApplyCellToComplexLabel( const SchXMLCell& rCell, Sequence< uno:
}
}
-namespace {
-
-void transposeTable(SchXMLTable& rTable)
-{
- std::vector<std::vector<SchXMLCell> > aNewData;
- sal_Int32 nRows = rTable.aData.size();
- aNewData.resize(rTable.nMaxColumnIndex+1);
- for(sal_Int32 i = 0; i < nRows; ++i)
- {
- sal_Int32 nCols = rTable.aData[i].size();
- for(sal_Int32 j = 0; j < nCols; ++j)
- {
- SchXMLCell& rCell = rTable.aData[i][j];
- aNewData[j].push_back(rCell);
- }
- }
- bool bHasRowHeader = rTable.bHasHeaderRow;
- bool bHasColHeader = rTable.bHasHeaderColumn;
- rTable.bHasHeaderColumn = bHasRowHeader;
- rTable.bHasHeaderRow = bHasColHeader;
- rTable.nMaxColumnIndex = nRows;
- rTable.aData = aNewData;
-}
-
-}
-
void SchXMLTableHelper::applyTableToInternalDataProvider(
- SchXMLTable rTable,
- uno::Reference< chart2::XChartDocument > xChartDoc, chart::ChartDataRowSource eDataRowSource )
+ const SchXMLTable& rTable,
+ uno::Reference< chart2::XChartDocument > xChartDoc )
{
// apply all data read from the local table to the internal data provider
if( !xChartDoc.is() || !xChartDoc->hasInternalDataProvider() )
@@ -812,9 +786,6 @@ void SchXMLTableHelper::applyTableToInternalDataProvider(
if( !xDataProv.is() )
return;
- if(eDataRowSource == chart::ChartDataRowSource_ROWS)
- transposeTable(rTable);
-
//prepare the read local table data
sal_Int32 nNumRows( static_cast< sal_Int32 >( rTable.aData.size()));
sal_Int32 nRowOffset = 0;
diff --git a/xmloff/source/chart/SchXMLTableContext.hxx b/xmloff/source/chart/SchXMLTableContext.hxx
index 811e92198f24..1d06dd50c613 100644
--- a/xmloff/source/chart/SchXMLTableContext.hxx
+++ b/xmloff/source/chart/SchXMLTableContext.hxx
@@ -82,9 +82,8 @@ private:
sal_Int32& nRows, sal_Int32& nColumns );
public:
- static void applyTableToInternalDataProvider( SchXMLTable rTable,
- com::sun::star::uno::Reference< com::sun::star::chart2::XChartDocument > xChartDoc,
- com::sun::star::chart::ChartDataRowSource eDataRowSource );
+ static void applyTableToInternalDataProvider( const SchXMLTable& rTable,
+ com::sun::star::uno::Reference< com::sun::star::chart2::XChartDocument > xChartDoc );
/** This function reorders local data to fit the correct data structure.
Call it after the data series got their styles set.