Commit ecd85949 authored by Ilya.Kirillov's avatar Ilya.Kirillov Committed by Alexander.Trofimov

Исправлен баг с выставлением осей у диаграммы при копировании и чтении (баг 24647).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@56613 954022d7-b5bf-4e40-9824-e11837661b57
parent 2d116dd7
...@@ -1743,23 +1743,32 @@ CPlotArea.prototype = ...@@ -1743,23 +1743,32 @@ CPlotArea.prototype =
{ {
c.setSpPr(this.spPr.createDuplicate()); c.setSpPr(this.spPr.createDuplicate());
} }
for(i = 0; i < this.axId.length; ++i)
{
c.addAxis(this.axId[i].createDuplicate());
}
//TODO: разобраться с осями в дочерних объектах
if ( this.valAx )
c.valAx = this.valAx.createDuplicate();
if ( this.catAx ) var len = this.axId.length;
c.catAx = this.catAx.createDuplicate(); for(i = 0; i < len; i++)
{
if ( this.dateAx ) var oAxis = this.axId[i].createDuplicate();
c.dateAx = this.dateAx.createDuplicate(); c.addAxis(oAxis);
if ( this.chart ) if ( oAxis instanceof CCatAx )
c.chart = this.chart.createDuplicate(); this.catAx = oAxis;
else if ( oAxis instanceof CValAx )
this.valAx = oAxis;
else if ( oAxis instanceof CDateAx )
this.dateAx = oAxis;
}
// выставляем axis в chart
// TODO: Диаграмм может быть больше, но мы пока работаем только с одной
var oZeroChart = c.charts[0];
if ( oZeroChart )
{
len = c.axId.length;
for ( var i = 0; i < len; i++ )
oZeroChart.addAxId(c.axId[i]);
c.chart = oZeroChart;
}
return c; return c;
}, },
......
...@@ -10721,16 +10721,18 @@ BinaryChartReader.prototype.ReadCT_Chart = function (type, length, val) { ...@@ -10721,16 +10721,18 @@ BinaryChartReader.prototype.ReadCT_Chart = function (type, length, val) {
res = this.bcr.Read1(length, function (t, l) { res = this.bcr.Read1(length, function (t, l) {
return oThis.ReadCT_PlotArea(t, l, oNewVal, oIdToAxisMap, aChartWithAxis); return oThis.ReadCT_PlotArea(t, l, oNewVal, oIdToAxisMap, aChartWithAxis);
}); });
//выставляем axis в chart
for (var i = 0, length = aChartWithAxis.length; i < length; ++i) { // выставляем axis в chart
var item = aChartWithAxis[i]; // TODO: 1. Диаграмм может быть больше, но мы пока работаем только с одной
var axis = oIdToAxisMap[item.axisId]; // TODO: 2. Избавиться от oIdToAxisMap, aChartWithAxis, т.к. они здесь больше не нужны
if (null != axis && null != item.chart) { var oZeroChart = oNewVal.charts[0];
if (item.surface && axis instanceof CValAx) if ( oZeroChart )
this.ConvertSurfaceValAxToLineValAx(axis); {
item.chart.addAxId(axis); var len = oNewVal.axId.length
} for ( var i = 0; i < len; i++ )
oZeroChart.addAxId(oNewVal.axId[i]);
} }
val.setPlotArea(oNewVal); val.setPlotArea(oNewVal);
} }
else if (c_oserct_chartLEGEND === type) { else if (c_oserct_chartLEGEND === type) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment