Commit f975e580 authored by Anna.Pavlova's avatar Anna.Pavlova Committed by Alexander.Trofimov

Поправила падение в документе Adams S.E. - Molecular Similarity and Xenobiotic Metabolism.docx

В одном параграфе могут находится две неинлайновые формулы (в этом случае они разделены NewLine).
Поэтому для того чтобы учесть эту ситуацию, когда закончили пересчет (PRS.NewRange == false), и пересчитывали данную формулу (PrevLineObject == null либо Id совпал с PRS.RestartPageRecalcInfo.Object.Id)
Если пришел пеересчет в формулу и ссылка на предыдущий объект не совпадает с ссылкой на текущий объект (проверяем Id), значит инициировала пересчет другая формула, этот объект уже был пересчитан, пересчитываем с теми параметрами которые были в последний раз (соответственно возвратов к началу пересчета не будет).


git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@65224 954022d7-b5bf-4e40-9824-e11837661b57
parent f046806b
......@@ -1203,10 +1203,13 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
var ParaRange = PRS.Range;
var Page = this.AbsolutePage + PRS.Page;
var PrevLineObject = PRS.RestartPageRecalcInfo.Object;
var bStartRange = this.Root.IsStartRange(ParaLine, ParaRange);
// первый пересчет
var PrevLineObject = PRS.RestartPageRecalcInfo.Object;
var PrevObject = PrevLineObject == null || this.Id == PrevLineObject.Id ? null : PrevLineObject;
if(PrevLineObject == null && true == bStartRange && PRS.bFastRecalculate == false)
{
// информация о пересчете
......@@ -1325,6 +1328,11 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
}
}
if(PRS.NewRange == false)
{
PRS.RestartPageRecalcInfo.Object = PrevObject; // возвращаем формулу, которая инициировала пересчет (если это была текущая формула, то null)
}
};
ParaMath.prototype.private_UpdateWrapSettings = function(PRS)
{
......
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