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

Реализован приоритет уровней вложения мат операторов (учитывается исключительно у неинлайн формул)

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@63621 954022d7-b5bf-4e40-9824-e11837661b57
parent 5de57f7a
......@@ -1176,7 +1176,7 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
var bUpdateWrapMath = PRS.Ranges.length > 0 && this.ParaMathRPI.bInline == false;
// первый пересчет
if(PrevLineObject == null && true == bFirstRange && PRS.bFastRecalculate == false/*&& PRS.RecalcResult == recalcresult_NextLine*/)
if(PrevLineObject == null && true == bFirstRange && PRS.bFastRecalculate == false)
{
// информация о пересчете
var RPI = new CRPI();
......@@ -1188,7 +1188,6 @@ ParaMath.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
this.Root.PreRecalc(null, this, ArgSize, RPI);
this.ParaMathRPI.ResetInfoRanges();
//this.private_InitWrapSettings(PRS);
}
if(bUpdateWrapMath == true && this.ParaMathRPI.bInternalRanges == false && PRS.bFastRecalculate == false)
......
......@@ -3874,6 +3874,10 @@ CMathContent.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
var bInternalOper = false,
bCurInsideOper = false;
// для неинлайн формул :
// у операторов, находяхщихся на этом уровне (в Run) приоритет выше, чем у внутренних операторов (внутри мат объектов)
var bNoBreakMObj = false;
for(var Pos = RangeStartPos; Pos < ContentLen; Pos++)
{
var Item = this.Content[Pos],
......@@ -3918,6 +3922,8 @@ CMathContent.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
PRS.bInsideOper = false;
PRS.bMath_OneLine = Type == para_Math_Composition && bNoBreakMObj == true;
Item.Recalculate_Range(PRS, ParaPr, Depth + 1);
bCurInsideOper = bCurInsideOper || PRS.bInsideOper;
......@@ -4027,6 +4033,13 @@ CMathContent.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
}
}
}
else
{
if(PRS.bPriorityOper == true && PRS.bInsideOper == true && PRS.X - PRS.XRange > PRS.WrapIndent)
{
bNoBreakMObj = true;
}
}
if ( true === PRS.NewRange )
......
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