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

Реализовано, чтобы по нажатию "Enter" в пустом параграфе со списком список удалялся (баг 11128).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@48230 954022d7-b5bf-4e40-9824-e11837661b57
parent cc10c96b
...@@ -1145,47 +1145,57 @@ CDocument.prototype = ...@@ -1145,47 +1145,57 @@ CDocument.prototype =
// новый параграф будет без списка). // новый параграф будет без списка).
if ( type_Paragraph == Item.GetType() ) if ( type_Paragraph == Item.GetType() )
{ {
// Создаем новый параграф // Если текущий параграф пустой и с нумерацией, тогда удаляем нумерацию и отступы левый и первой строки
var NewParagraph = new Paragraph( this.DrawingDocument, this, 0, 0, 0, X_Left_Field, Y_Bottom_Field ); if ( undefined != Item.Numbering_Get() && true === Item.IsEmpty() )
{
// Проверим позицию в текущем параграфе Item.Numbering_Remove();
if ( true === Item.Cursor_IsEnd() ) Item.Set_Ind( { FirstLine : undefined, Left : undefined, Right : Item.Pr.Ind.Right }, true );
}
else
{ {
var StyleId = Item.Style_Get(); // Создаем новый параграф
var NextId = undefined; var NewParagraph = new Paragraph( this.DrawingDocument, this, 0, 0, 0, X_Left_Field, Y_Bottom_Field );
if ( undefined != StyleId ) // Проверим позицию в текущем параграфе
if ( true === Item.Cursor_IsEnd() )
{ {
NextId = this.Styles.Get_Next( StyleId ); var StyleId = Item.Style_Get();
var NextId = undefined;
if ( null === NextId ) if ( undefined != StyleId )
NextId = StyleId; {
} NextId = this.Styles.Get_Next( StyleId );
if ( null === NextId )
NextId = StyleId;
}
if ( StyleId === NextId )
{ if ( StyleId === NextId )
// Продолжаем (в плане настроек) новый параграф {
Item.Continue( NewParagraph ); // Продолжаем (в плане настроек) новый параграф
} Item.Continue( NewParagraph );
else }
{
// Простое добавление стиля, без дополнительных действий
if ( NextId === this.Styles.Get_Default_Paragraph() )
NewParagraph.Style_Remove();
else else
NewParagraph.Style_Add_Open( NextId ); {
// Простое добавление стиля, без дополнительных действий
if ( NextId === this.Styles.Get_Default_Paragraph() )
NewParagraph.Style_Remove();
else
NewParagraph.Style_Add_Open( NextId );
}
} }
} else
else Item.Split( NewParagraph );
Item.Split( NewParagraph );
this.Internal_Content_Add( this.CurPos.ContentPos + 1, NewParagraph ); this.Internal_Content_Add( this.CurPos.ContentPos + 1, NewParagraph );
this.CurPos.ContentPos++; this.CurPos.ContentPos++;
// Отмечаем, что последний измененный элемент - предыдущий параграф // Отмечаем, что последний измененный элемент - предыдущий параграф
this.ContentLastChangePos = this.CurPos.ContentPos - 1; this.ContentLastChangePos = this.CurPos.ContentPos - 1;
}
if ( false != bRecalculate ) if ( false != bRecalculate )
{ {
......
...@@ -1455,47 +1455,56 @@ CDocumentContent.prototype = ...@@ -1455,47 +1455,56 @@ CDocumentContent.prototype =
// новый параграф будет без списка). // новый параграф будет без списка).
if ( type_Paragraph == Item.GetType() ) if ( type_Paragraph == Item.GetType() )
{ {
// Создаем новый параграф // Если текущий параграф пустой и с нумерацией, тогда удаляем нумерацию и отступы левый и первой строки
var NewParagraph = new Paragraph( this.DrawingDocument, this, 0, 0, 0, X_Left_Field, Y_Bottom_Field ); if ( undefined != Item.Numbering_Get() && true === Item.IsEmpty() )
// Проверим позицию в текущем параграфе
if ( true === Item.Cursor_IsEnd() )
{ {
var StyleId = Item.Style_Get(); Item.Numbering_Remove();
var NextId = undefined; Item.Set_Ind( { FirstLine : undefined, Left : undefined, Right : Item.Pr.Ind.Right }, true );
}
else
{
// Создаем новый параграф
var NewParagraph = new Paragraph( this.DrawingDocument, this, 0, 0, 0, X_Left_Field, Y_Bottom_Field );
if ( undefined != StyleId ) // Проверим позицию в текущем параграфе
if ( true === Item.Cursor_IsEnd() )
{ {
var Styles = this.Parent.Get_Styles(); var StyleId = Item.Style_Get();
NextId = Styles.Get_Next( StyleId ); var NextId = undefined;
if ( null === NextId ) if ( undefined != StyleId )
NextId = StyleId; {
} var Styles = this.Parent.Get_Styles();
NextId = Styles.Get_Next( StyleId );
if ( null === NextId )
NextId = StyleId;
}
if ( StyleId === NextId )
{ if ( StyleId === NextId )
// Продолжаем (в плане настроек) новый параграф {
Item.Continue( NewParagraph ); // Продолжаем (в плане настроек) новый параграф
} Item.Continue( NewParagraph );
else }
{
// Простое добавление стиля, без дополнительных действий
if ( NextId === this.Get_Styles().Get_Default_Paragraph() )
NewParagraph.Style_Remove();
else else
NewParagraph.Style_Add_Open( NextId ); {
// Простое добавление стиля, без дополнительных действий
if ( NextId === this.Get_Styles().Get_Default_Paragraph() )
NewParagraph.Style_Remove();
else
NewParagraph.Style_Add_Open( NextId );
}
} }
} else
else Item.Split( NewParagraph );
Item.Split( NewParagraph );
this.Internal_Content_Add( this.CurPos.ContentPos + 1, NewParagraph ); this.Internal_Content_Add( this.CurPos.ContentPos + 1, NewParagraph );
this.CurPos.ContentPos++; this.CurPos.ContentPos++;
// Отмечаем, что последний измененный элемент - предыдущий параграф // Отмечаем, что последний измененный элемент - предыдущий параграф
this.ContentLastChangePos = this.CurPos.ContentPos - 1; this.ContentLastChangePos = this.CurPos.ContentPos - 1;
}
this.Recalculate(); this.Recalculate();
} }
else if ( type_Table == Item.GetType() ) else if ( type_Table == Item.GetType() )
......
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