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

Улучшена схема отрисовки селекта и курсора. Отрисовка рамки и селекта для...

Улучшена схема отрисовки селекта и курсора. Отрисовка рамки и селекта для формулы сделано как в Word.

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@58731 954022d7-b5bf-4e40-9824-e11837661b57
parent e74b2eaa
......@@ -4207,14 +4207,16 @@ function CDrawingDocument()
this.m_oWordControl.UpdateVerRuler();
}
this.Update_MathTrack = function(IsActive, Math, X, Y, W, H, PageIndex)
this.Update_MathTrack = function(IsActive, IsContentActive, Math, X, Y, W, H, PageIndex)
{
this.MathRect.IsActive = IsActive;
if (true === IsActive)
{
if (null !== Math)
if (null !== Math && true === IsContentActive)
this.MathRect.ContentSelection = Math.Get_ContentSelection();
else
this.MathRect.ContentSelection = null;
var PixelError = this.GetMMPerDot(1) * 3;
......
......@@ -11569,11 +11569,6 @@ CDocument.prototype =
else
this.Content[this.CurPos.ContentPos].Document_UpdateInterfaceState();
}
else
{
// Если выделено больше 1 элемента отключаем рамку формул
this.DrawingDocument.Update_MathTrack(false);
}
}
// Сообщаем, что список составлен
......@@ -11716,15 +11711,16 @@ CDocument.prototype =
{
if ( false === this.Selection_IsEmpty() )
{
this.DrawingDocument.TargetEnd();
this.DrawingDocument.SelectEnabled(true);
this.DrawingDocument.SelectShow();
if ( true !== this.Selection.Start )
{
this.Internal_CheckCurPage();
this.RecalculateCurPos();
}
this.private_UpdateTracks(true, false);
this.DrawingDocument.TargetEnd();
this.DrawingDocument.SelectEnabled(true);
this.DrawingDocument.SelectShow();
}
else
{
......@@ -11733,11 +11729,11 @@ CDocument.prototype =
this.Selection_Remove();
}
this.DrawingDocument.SelectEnabled(false);
this.Internal_CheckCurPage();
this.RecalculateCurPos();
this.private_UpdateTracks(true, true);
this.DrawingDocument.SelectEnabled(false);
this.DrawingDocument.TargetStart();
this.DrawingDocument.TargetShow();
}
......@@ -11745,12 +11741,12 @@ CDocument.prototype =
}
else
{
this.DrawingDocument.SelectEnabled(false);
this.Selection_Remove();
this.Internal_CheckCurPage();
this.RecalculateCurPos();
this.private_UpdateTracks(false, false);
this.DrawingDocument.SelectEnabled(false);
this.DrawingDocument.TargetShow();
}
}
......@@ -11759,6 +11755,17 @@ CDocument.prototype =
this.Document_UpdateCopyCutState();
},
private_UpdateTracks : function(bSelection, bEmptySelection)
{
// Обновляем трэк формул
var oSelectedInfo = this.Get_SelectedElementsInfo();
var Math = oSelectedInfo.Get_Math();
if (null !== Math)
this.DrawingDocument.Update_MathTrack(true, (false === bSelection || true === bEmptySelection ? true : false), Math, Math.X, Math.Y, Math.Width, Math.Height, Math.Paragraph.CurPos.PagesPos + Math.Paragraph.Get_StartPage_Absolute());
else
this.DrawingDocument.Update_MathTrack(false);
},
Document_UpdateUndoRedoState : function()
{
if (true === this.TurnOffInterfaceEvents)
......
......@@ -1625,7 +1625,7 @@ ParaMath.prototype.Get_ContentSelection = function()
{
var oContent = this.GetSelectContent().Content;
if (oContent.bRoot || true === this.bSelectionUse)
if (oContent.bRoot)
return null;
return {X : oContent.pos.x + this.X, Y : oContent.pos.y + this.Y, W : oContent.size.width, H : oContent.size.height};
......
......@@ -8376,11 +8376,6 @@ Paragraph.prototype =
editor.sync_HyperlinkPropCallback( HyperProps );
}
if (null !== Math)
this.Parent.DrawingDocument.Update_MathTrack(true, Math, Math.X, Math.Y, Math.Width, Math.Height, this.CurPos.PagesPos + this.Get_StartPage_Absolute());
else
this.Parent.DrawingDocument.Update_MathTrack(false);
},
// Функция, которую нужно вызвать перед удалением данного элемента
......
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