Commit 15473575 authored by Anna.Pavlova's avatar Anna.Pavlova

Поправлен баг : при пересчете PRS.Y в формуле (PRS.RecalcResult =...

Поправлен баг : при пересчете PRS.Y в формуле (PRS.RecalcResult = recalcresult_CurLine) перенос происходил для той строки, в котором был выставлен данный параметр, а не для первой строки
Сейчас возвращаемся к первой строке (PRS.RecalcResult = recalcresult_PrevLine), а потом делаем перенос.
Документ из бага 30164.

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@64810 954022d7-b5bf-4e40-9824-e11837661b57
parent 2811ec4c
...@@ -1270,7 +1270,7 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -1270,7 +1270,7 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
{ {
// такая сиуация возможна, если разместили формулу под картинкой и нужно заново пересчитать формулу // такая сиуация возможна, если разместили формулу под картинкой и нужно заново пересчитать формулу
this.Set_EmptyRange(PRS); this.Set_EmptyRange(PRS);
this.private_SetShiftY(PRS, ParaPr, this.ParaMathRPI.ShiftY); this.private_UpdateRangeY(PRS, this.ParaMathRPI.ShiftY);
} }
else else
{ {
...@@ -1293,8 +1293,11 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -1293,8 +1293,11 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
} }
else if(UpdWrap == MATH_UPDWRAP_UNDERFLOW) else if(UpdWrap == MATH_UPDWRAP_UNDERFLOW)
{ {
this.Set_EmptyRange(PRS); // пересчитаем PRS.Y на след пересчете при this.ParaMathRPI.ShiftY - PRS.Y > 0
this.ParaMathRPI.Reset_WrapSettings(PRS, ParaPr); // в ф-ии private_UpdateRangeY
//this.Set_EmptyRange(PRS);
//this.ParaMathRPI.Reset_WrapSettings(PRS, ParaPr);
//this.private_SetRestartRecalcInfo(PRS);
} }
bRecalcNormal = UpdWrap == MATH_UPDWRAP_NOCHANGES; bRecalcNormal = UpdWrap == MATH_UPDWRAP_NOCHANGES;
...@@ -1432,7 +1435,9 @@ ParaMath.prototype.private_UpdateWrapSettings = function(PRS, ParaPr) ...@@ -1432,7 +1435,9 @@ ParaMath.prototype.private_UpdateWrapSettings = function(PRS, ParaPr)
{ {
// если появился плавающий объект, относительно которого нельзя разместить формулу (в одном из Range, образованным плавающими объектами), то, соответсвенно, формула должна располагаться под плавающим объектом // если появился плавающий объект, относительно которого нельзя разместить формулу (в одном из Range, образованным плавающими объектами), то, соответсвенно, формула должна располагаться под плавающим объектом
this.private_SetShiftY(PRS, ParaPr, RY_NotWrap); //this.private_SetShiftY(PRS, ParaPr, RY_NotWrap);
//this.ParaMathRPI.UpdateShiftY(RY_NotWrap);
this.private_SetShiftY(PRS, RY_NotWrap);
UpdateWrap = MATH_UPDWRAP_UNDERFLOW; UpdateWrap = MATH_UPDWRAP_UNDERFLOW;
} }
...@@ -1475,8 +1480,10 @@ ParaMath.prototype.private_RecalculateRangeInsideInterval = function(PRS, ParaPr ...@@ -1475,8 +1480,10 @@ ParaMath.prototype.private_RecalculateRangeInsideInterval = function(PRS, ParaPr
if(PRS.bMathWordLarge == true) if(PRS.bMathWordLarge == true)
{ {
this.private_SetShiftY(PRS, ParaPr, this.ParaMathRPI.RangeY); this.private_SetShiftY(PRS, this.ParaMathRPI.RangeY);
this.ParaMathRPI.Reset_WrapSettings(); //this.ParaMathRPI.UpdateShiftY(this.ParaMathRPI.RangeY);
//this.ParaMathRPI.Reset_WrapSettings();
//this.private_SetRestartRecalcInfo(PRS);
} }
PRS.RestartPageRecalcInfo.Object = this; PRS.RestartPageRecalcInfo.Object = this;
...@@ -1590,9 +1597,9 @@ ParaMath.prototype.Set_EmptyRange = function(PRS) ...@@ -1590,9 +1597,9 @@ ParaMath.prototype.Set_EmptyRange = function(PRS)
PRS.NewRange = true; PRS.NewRange = true;
}; };
ParaMath.prototype.private_SetShiftY = function(PRS, ParaPr, RY) ParaMath.prototype.private_UpdateRangeY = function(PRS, RY)
{ {
/* this.Set_EmptyRange(PRS); /* this.Set_EmptyRange(PRS);
if(this.ParaMathRPI.ShiftY - PRS.Y > 0) if(this.ParaMathRPI.ShiftY - PRS.Y > 0)
{*/ {*/
...@@ -1610,10 +1617,14 @@ ParaMath.prototype.private_SetShiftY = function(PRS, ParaPr, RY) ...@@ -1610,10 +1617,14 @@ ParaMath.prototype.private_SetShiftY = function(PRS, ParaPr, RY)
PRS.Reset_Ranges(); PRS.Reset_Ranges();
PRS.RecalcResult = recalcresult_CurLine; PRS.RecalcResult = recalcresult_CurLine;
this.ParaMathRPI.UpdateShiftY(RY);
/*}*/ /*}*/
}; };
ParaMath.prototype.private_SetShiftY = function(PRS, RY)
{
this.ParaMathRPI.UpdateShiftY(RY);
this.ParaMathRPI.Reset_WrapSettings();
this.private_SetRestartRecalcInfo(PRS);
};
ParaMath.prototype.private_UpdateXLimits = function(PRS) ParaMath.prototype.private_UpdateXLimits = function(PRS)
{ {
var MathSettings = Get_WordDocumentDefaultMathSettings(); var MathSettings = Get_WordDocumentDefaultMathSettings();
......
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