Commit b01ad280 authored by Ilya Kirillov's avatar Ilya Kirillov

Fixed bug #33149. Fixed an issue in compiling style based on another style,...

Fixed bug #33149. Fixed an issue in compiling style based on another style, when the last one has a link to a numbering.
parent 3a19478a
...@@ -4467,7 +4467,7 @@ CStyles.prototype = ...@@ -4467,7 +4467,7 @@ CStyles.prototype =
} }
// Рассчитываем стиль // Рассчитываем стиль
this.Internal_Get_Pr(Pr, StyleId, Type, ( null === TableStyle && null == ShapeStyle ? true : false ), []); this.Internal_Get_Pr(Pr, StyleId, Type, ( null === TableStyle && null == ShapeStyle ? true : false ), [], StyleId);
if (styletype_Table === Type) if (styletype_Table === Type)
{ {
...@@ -4576,7 +4576,7 @@ CStyles.prototype = ...@@ -4576,7 +4576,7 @@ CStyles.prototype =
return null; return null;
}, },
Internal_Get_Pr : function(Pr, StyleId, Type, bUseDefault, PassedStyles) Internal_Get_Pr : function(Pr, StyleId, Type, bUseDefault, PassedStyles, StartStyleId)
{ {
// Делаем проверку от зацикливания, среди уже пройденных стилей ищем текущий стриль. // Делаем проверку от зацикливания, среди уже пройденных стилей ищем текущий стриль.
for (var nIndex = 0, nCount = PassedStyles.length; nIndex < nCount; nIndex++) for (var nIndex = 0, nCount = PassedStyles.length; nIndex < nCount; nIndex++)
...@@ -4750,22 +4750,22 @@ CStyles.prototype = ...@@ -4750,22 +4750,22 @@ CStyles.prototype =
else else
{ {
// Копируем свойства родительского стиля // Копируем свойства родительского стиля
this.Internal_Get_Pr( Pr, Style.BasedOn, Type, false, PassedStyles ); this.Internal_Get_Pr(Pr, Style.BasedOn, Type, false, PassedStyles, StartStyleId);
// Копируем свойства из стиля нумерации, если она задана // Копируем свойства из стиля нумерации, если она задана, но только для самого стиля, а не для базовых
if ( (styletype_Paragraph === Type || styletype_Table === Type) && ( undefined != Style.ParaPr.NumPr ) ) if ((styletype_Paragraph === Type || styletype_Table === Type) && ( undefined != Style.ParaPr.NumPr ) && StyleId === StartStyleId)
{ {
var Numbering = editor.WordControl.m_oLogicDocument.Get_Numbering(); var Numbering = editor.WordControl.m_oLogicDocument.Get_Numbering();
if ( undefined != Style.ParaPr.NumPr.NumId && 0 != Style.ParaPr.NumPr.NumId ) if (undefined != Style.ParaPr.NumPr.NumId && 0 != Style.ParaPr.NumPr.NumId)
{ {
var AbstractNum = Numbering.Get_AbstractNum( Style.ParaPr.NumPr.NumId ); var AbstractNum = Numbering.Get_AbstractNum(Style.ParaPr.NumPr.NumId);
var Lvl = AbstractNum.Get_LvlByStyle( StyleId ); var Lvl = AbstractNum.Get_LvlByStyle(StyleId);
if ( -1 != Lvl ) if (-1 != Lvl)
Pr.ParaPr.Merge( Numbering.Get_ParaPr( Style.ParaPr.NumPr.NumId, Lvl ) ); Pr.ParaPr.Merge(Numbering.Get_ParaPr(Style.ParaPr.NumPr.NumId, Lvl));
else else
Pr.ParaPr.NumPr = undefined; Pr.ParaPr.NumPr = undefined;
} }
} }
// Копируем свойства текущего стиля // Копируем свойства текущего стиля
switch ( Type ) switch ( 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