Commit 38f7a0e4 authored by Anna.Pavlova's avatar Anna.Pavlova Committed by Alexander.Trofimov

Remove для редактирования

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@52628 954022d7-b5bf-4e40-9824-e11837661b57
parent b3c1ce91
...@@ -7514,6 +7514,10 @@ function ParaMath() ...@@ -7514,6 +7514,10 @@ function ParaMath()
// Добавляем данный класс в таблицу Id (обязательно в конце конструктора) // Добавляем данный класс в таблицу Id (обязательно в конце конструктора)
g_oTableId.Add( this, this.Id ); g_oTableId.Add( this, this.Id );
// TODO:
// по двойному, тройному клику селект элемента (мат. объекта/Run), формулы
// по shift + ctr + стрелка сделать выделение, как минимумумом по элементам (мат. объект/Run)
} }
ParaMath.prototype = ParaMath.prototype =
...@@ -7603,12 +7607,16 @@ ParaMath.prototype = ...@@ -7603,12 +7607,16 @@ ParaMath.prototype =
Selection_IsEmpty : function() Selection_IsEmpty : function()
{ {
return this.Math.Selection_IsEmpty(); var empty = this.Math.Selection_IsEmpty()
console.log("Selection_IsEmpty: " + empty);
return empty;
}, },
Selection_IsUse : function() Selection_IsUse : function()
{ {
return true; //return true;
//var IsUse =
//return
}, },
Selection_Remove : function() Selection_Remove : function()
......
...@@ -4423,7 +4423,7 @@ CMathContent.prototype = ...@@ -4423,7 +4423,7 @@ CMathContent.prototype =
var state = var state =
{ {
bDelete: false, /* нужно ли пересчитывать позицию или нет, работает при backspace */ bDelete: false, /* нужно ли пересчитывать позицию или нет, работает при backspace */
bBeging: false, /* в начале контента или нет */ bBegin: false, /* в начале контента или нет */
bEnd: false /* в конце */ bEnd: false /* в конце */
}; };
...@@ -4455,7 +4455,7 @@ CMathContent.prototype = ...@@ -4455,7 +4455,7 @@ CMathContent.prototype =
bLast = order == -1 && this.CurPos == this.content.length - 1; bLast = order == -1 && this.CurPos == this.content.length - 1;
if(bFirst) if(bFirst)
state.bBeging = true; state.bBegin = true;
else if(bLast) else if(bLast)
state.bEnd = true; state.bEnd = true;
...@@ -5871,12 +5871,16 @@ CMathContent.prototype = ...@@ -5871,12 +5871,16 @@ CMathContent.prototype =
bHeight = y >=0 && y <= this.size.height, // попали в контент по высоте bHeight = y >=0 && y <= this.size.height, // попали в контент по высоте
bSelect = this.selectUse(); bSelect = this.selectUse();
if(bSelect && bWidth && bHeight) if(this.IsPlaceholder())
{ {
var start = this.selection.startPos, flag = false;
end = this.selection.endPos; }
else if(bSelect && bWidth && bHeight)
{
var start = this.selection.startPos - 1,
end = this.selection.endPos - 1;
var beforeSelect = this.content[start - 1].widthToEl, var beforeSelect = this.content[start].widthToEl,
afterSelect = this.content[end].widthToEl + this.content[end].g_mContext.right; afterSelect = this.content[end].widthToEl + this.content[end].g_mContext.right;
flag = beforeSelect <= x && x <= afterSelect; flag = beforeSelect <= x && x <= afterSelect;
...@@ -5895,6 +5899,7 @@ function CMathComposition() ...@@ -5895,6 +5899,7 @@ function CMathComposition()
this.CurrentContent = null; this.CurrentContent = null;
this.SelectContent = null; this.SelectContent = null;
this.NeedRecalculate = true;
this.DefaultTxtPrp = this.DefaultTxtPrp =
{ {
...@@ -6080,6 +6085,22 @@ CMathComposition.prototype = ...@@ -6080,6 +6085,22 @@ CMathComposition.prototype =
return size; return size;
}, },
Remove: function(order) Remove: function(order)
{
//this.ClearSelect();
var result = this.SelectContent.remove(order);
this.CurrentContent = result.CurrContent;
this.SelectContent = result.SelectContent;
this.CurrentContent.setPlaceholderAfterRemove(); // чтобы не выставлялся тагет при вставке, когда заселекчен весь контент и мы добавляем, например, другой мат элемент
this.NeedRecalculate = result.state.bDelete;
return !(result.state.bBegin || result.state.bEnd);
},
Remove_2: function(order)
{ {
if(TEST) if(TEST)
{ {
...@@ -6559,7 +6580,10 @@ CMathComposition.prototype = ...@@ -6559,7 +6580,10 @@ CMathComposition.prototype =
/////////////////////// ///////////////////////
this.Root.Resize(oMeasure); // пересчитываем всю формулу if(this.NeedRecalculate)
this.Root.Resize(oMeasure); // пересчитываем всю формулу
this.NeedRecalculate = true;
var width = this.Root.size.width, var width = this.Root.size.width,
height = this.Root.size.height; height = this.Root.size.height;
...@@ -6622,7 +6646,10 @@ CMathComposition.prototype = ...@@ -6622,7 +6646,10 @@ CMathComposition.prototype =
}, },
Selection_IsEmpty: function() Selection_IsEmpty: function()
{ {
return !this.SelectContent.selectUse(); var bPlh = this.SelectContent.IsPlaceholder(),
bNotSelect = !this.SelectContent.selectUse();
return !bPlh && !this.SelectContent.selectUse();
}, },
Selection_Check: function(X, Y) Selection_Check: function(X, Y)
{ {
......
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