Commit f907f1ee 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@63588 954022d7-b5bf-4e40-9824-e11837661b57
parent 27ff1c0a
...@@ -1457,19 +1457,17 @@ ParaMath.prototype.private_UpdateXLimits = function(PRS) ...@@ -1457,19 +1457,17 @@ ParaMath.prototype.private_UpdateXLimits = function(PRS)
var WrapIndent = MathSettings.Get_WrapIndent(WrapState); var WrapIndent = MathSettings.Get_WrapIndent(WrapState);
PRS.WrapIndent = WrapIndent; PRS.WrapIndent = WrapIndent;
PRS.bPriorityOper = this.ParaMathRPI.bInline == false;
if(this.ParaMathRPI.bInline == true || this.Root.IsStartLine(PRS.Line) == false) var bFirstLine = this.Root.IsStartLine(PRS.Line);
PRS.bFirstLine = bFirstLine;
if(bFirstLine == false)
{ {
PRS.X += WrapIndent; PRS.X += WrapIndent;
PRS.bCompareWrapIndent = false;
}
else
{
PRS.bCompareWrapIndent = true;
} }
PRS.XRange = PRS.X; PRS.XRange = PRS.X;
}; };
ParaMath.prototype.UpdateInfoForBreak = function(PRS, Line) ParaMath.prototype.UpdateInfoForBreak = function(PRS, Line)
{ {
......
...@@ -2191,7 +2191,8 @@ function CParagraphRecalculateStateWrap(Para) ...@@ -2191,7 +2191,8 @@ function CParagraphRecalculateStateWrap(Para)
this.WrapIndent = 0; // WrapIndent нужен для сравнения с длиной слова (когда слово разбивается по Compare Oper): ширина первой строки формулы не должна быть меньше WrapIndent this.WrapIndent = 0; // WrapIndent нужен для сравнения с длиной слова (когда слово разбивается по Compare Oper): ширина первой строки формулы не должна быть меньше WrapIndent
this.bFirstCompareOper = true; this.bFirstCompareOper = true;
this.bCompareWrapIndent = false; this.bFirstLine = false;
this.bPriorityOper = true;
// у "крайних" в строке операторов/мат объектов сооответствующий Gap равен нулю // у "крайних" в строке операторов/мат объектов сооответствующий Gap равен нулю
this.OperGapRight = 0; this.OperGapRight = 0;
...@@ -2235,7 +2236,6 @@ CParagraphRecalculateStateWrap.prototype = ...@@ -2235,7 +2236,6 @@ CParagraphRecalculateStateWrap.prototype =
this.bInsideOper = false; this.bInsideOper = false;
this.bNoOneBreakOperator = true; this.bNoOneBreakOperator = true;
this.bFastRecalculate = false; this.bFastRecalculate = false;
this.bCompareWrapIndent = false;
this.bBoxOperator = false; this.bBoxOperator = false;
}, },
...@@ -2271,7 +2271,6 @@ CParagraphRecalculateStateWrap.prototype = ...@@ -2271,7 +2271,6 @@ CParagraphRecalculateStateWrap.prototype =
this.bInsideOper = false; this.bInsideOper = false;
this.bNoOneBreakOperator = true; this.bNoOneBreakOperator = true;
this.bFastRecalculate = false; this.bFastRecalculate = false;
this.bCompareWrapIndent = false;
this.bBoxOperator = false; this.bBoxOperator = false;
}, },
......
...@@ -2314,7 +2314,9 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -2314,7 +2314,9 @@ ParaRun.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
var bOverXEnd; var bOverXEnd;
if(bCompareOper && bFirstCompareOper == true && PRS.bCompareWrapIndent == true && WorLenCompareOper > PRS.WrapIndent && !(Word == false && bFirstItem == true)) // (Word == true && FirstItemOnLine == true) - не первый элемент в строке var bCompareWrapIndent = PRS.bFirstLine == true ? WorLenCompareOper > PRS.WrapIndent : true;
if(PRS.bPriorityOper == true && bCompareOper == true && bFirstCompareOper == true && bCompareWrapIndent == true && !(Word == false && bFirstItem == true)) // (Word == true && FirstItemOnLine == true) - не первый элемент в строке
bFirstCompareOper = false; bFirstCompareOper = false;
if(bOperBefore) // оператор "до" if(bOperBefore) // оператор "до"
......
...@@ -1868,7 +1868,6 @@ CMathBase.prototype.Recalculate_Range = function(PRS, ParaPr, Depth) ...@@ -1868,7 +1868,6 @@ CMathBase.prototype.Recalculate_Range = function(PRS, ParaPr, Depth)
PRS.WordLen += this.dW; PRS.WordLen += this.dW;
} }
if(PRS.NewRange == false) if(PRS.NewRange == false)
{ {
PRS.WordLen += this.BrGapRight; PRS.WordLen += this.BrGapRight;
......
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