Commit 5dc8d108 authored by Ilya.Kirillov's avatar Ilya.Kirillov Committed by Alexander.Trofimov

Исправлен баг с удалением последнего элемента в параграфе (менялись настройки...

Исправлен баг с удалением последнего элемента в параграфе (менялись настройки текста). Исправлен баг с рассчетом пустого параграфа с нумерацией (баг 23947).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@55980 954022d7-b5bf-4e40-9824-e11837661b57
parent e24d3104
......@@ -915,6 +915,7 @@ var historyitem_TextPr_Lang_Bidi = 25; // Изменяем настрой
var historyitem_TextPr_Lang_EastAsia = 26; // Изменяем настройку языка
var historyitem_TextPr_Lang_Val = 27; // Изменяем настройку языка
var historyitem_TextPr_Unifill = 28; // Изменяем настройку языка
var historyitem_TextPr_FontSizeCS = 29;
// Типы изменений в классе ParaDrawing
var historyitem_Drawing_Size = 1; // Изменяем размер картинки
......
......@@ -406,6 +406,10 @@ Paragraph.prototype =
if(this.bFromDocument)
OtherParagraph.Style_Add( this.Style_Get(), true );
// TODO: Другой параграф, как правило новый, поэтому можно использовать функцию Apply, но на самом деле надо
// переделать на нормальную функцию Set_Pr.
OtherParagraph.TextPr.Apply_TextPr( this.TextPr.Value );
},
Split_Element_ByPos : function(SplitType, ContentPos)
......@@ -4108,12 +4112,16 @@ Paragraph.prototype =
var EndTextDescent = Math.abs( g_oTextMeasurer.GetDescender() );
var EndTextAscent = EndTextHeight - EndTextDescent;
var EndTextAscent2 = g_oTextMeasurer.GetAscender();
PRS.LineTextAscent = EndTextAscent;
PRS.LineTextAscent2 = EndTextAscent2;
PRS.LineTextDescent = EndTextDescent;
PRS.LineAscent = EndTextAscent;
PRS.LineDescent = EndTextDescent;
if ( PRS.LineAscent < EndTextAscent )
PRS.LineAscent = EndTextAscent;
if ( PRS.LineDescent < EndTextDescent )
PRS.LineDescent = EndTextDescent;
}
else if ( undefined !== LastItem )
{
......@@ -7158,8 +7166,9 @@ Paragraph.prototype =
{
this.Content[StartPos].Remove(nCount, bOnAddText);
// Мы не удаляем последний элемент с ParaEnd
if ( StartPos !== this.Content.length - 1 && true === this.Content[StartPos].Is_Empty() )
// TODO: Как только избавимся от para_End переделать здесь
// Последние 2 элемента не удаляем (один для para_End, второй для всего остального)
if ( StartPos < this.Content.length - 2 && true === this.Content[StartPos].Is_Empty() )
{
this.Internal_Content_Remove( StartPos );
......@@ -7172,8 +7181,9 @@ Paragraph.prototype =
{
this.Content[EndPos].Remove(nCount, bOnAddText);
// Мы не удаляем последний элемент с ParaEnd
if ( EndPos !== this.Content.length - 1 && true === this.Content[EndPos].Is_Empty() )
// TODO: Как только избавимся от para_End переделать здесь
// Последние 2 элемента не удаляем (один для para_End, второй для всего остального)
if ( EndPos < this.Content.length - 2 && true === this.Content[EndPos].Is_Empty() )
{
this.Internal_Content_Remove( EndPos );
......@@ -7190,7 +7200,7 @@ Paragraph.prototype =
this.Content[StartPos].Remove(nCount, bOnAddText);
// Мы не удаляем последний элемент с ParaEnd
if ( true === this.Content[StartPos].Is_Empty() )
if ( StartPos < this.Content.length - 2 && true === this.Content[StartPos].Is_Empty() )
this.Internal_Content_Remove( StartPos );
}
......@@ -7253,7 +7263,9 @@ Paragraph.prototype =
return true;
}
if ( ContentPos !== this.Content.length - 1 && true === this.Content[ContentPos].Is_Empty() )
// TODO: Как только избавимся от para_End переделать здесь
// Последние 2 элемента не удаляем (один для para_End, второй для всего остального)
if ( ContentPos < this.Content.length - 2 && true === this.Content[ContentPos].Is_Empty() )
{
this.Internal_Content_Remove( ContentPos );
......
......@@ -516,6 +516,9 @@ ParaTextPr.prototype =
if ( undefined != TextPr.FontSize )
this.Set_FontSize( TextPr.FontSize );
if ( undefined != TextPr.FontSizeCS )
this.Set_FontSizeCS( TextPr.FontSizeCS );
if ( undefined != TextPr.Color )
this.Set_Color( TextPr.Color );
......@@ -708,6 +711,18 @@ ParaTextPr.prototype =
History.Add( this, { Type : historyitem_TextPr_FontSize, New : Value, Old : OldValue } );
},
Set_FontSizeCS : function(Value)
{
var OldValue = ( undefined != this.Value.FontSizeCS ? this.Value.FontSizeCS : undefined );
if ( undefined != Value )
this.Value.FontSizeCS = Value;
else
this.Value.FontSizeCS = undefined;
History.Add( this, { Type : historyitem_TextPr_FontSizeCS, New : Value, Old : OldValue } );
},
Set_Color : function(Value)
{
......@@ -1054,6 +1069,16 @@ ParaTextPr.prototype =
break;
}
case historyitem_TextPr_FontSizeCS:
{
if ( undefined != Data.Old )
this.Value.FontSizeCS = Data.Old;
else
this.Value.FontSizeCS = undefined;
break;
}
case historyitem_TextPr_Color:
{
if ( undefined != Data.Old )
......@@ -1330,6 +1355,16 @@ ParaTextPr.prototype =
break;
}
case historyitem_TextPr_FontSizeCS:
{
if ( undefined != Data.New )
this.Value.FontSizeCS = Data.New;
else
this.Value.FontSizeCS = undefined;
break;
}
case historyitem_TextPr_Color:
{
if ( undefined != Data.New )
......@@ -1645,6 +1680,7 @@ ParaTextPr.prototype =
}
case historyitem_TextPr_FontSize:
case historyitem_TextPr_FontSizeCS:
{
// Bool : IsUndefined
// Double : FontSize
......@@ -1975,6 +2011,19 @@ ParaTextPr.prototype =
break;
}
case historyitem_TextPr_FontSizeCS:
{
// Bool : IsUndefined
// Double : FontSize
if ( true != Reader.GetBool() )
this.Value.FontSizeCS = Reader.GetDouble();
else
this.Value.FontSizeCS = undefined;
break;
}
case historyitem_TextPr_Color:
{
// Bool : IsUndefined
......
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