Commit a449a4b0 authored by Sergey.Luzyanin's avatar Sergey.Luzyanin Committed by Alexander.Trofimov

поправлен баг с миганием селекта при тройном клике в текстартах

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@63870 954022d7-b5bf-4e40-9824-e11837661b57
parent f6694765
......@@ -349,10 +349,13 @@ DrawingObjectsController.prototype =
}
if(!isRealObject(group))
{
this.resetInternalSelection();
this.changeCurrentState(new PreChangeAdjState(this, selectedObject));
}
else
{
group.resetInternalSelection();
this.changeCurrentState(new PreChangeAdjInGroupState(this, group));
}
return true;
......@@ -533,7 +536,6 @@ DrawingObjectsController.prototype =
{
this.changeCurrentState(new PreMoveInlineObject(this, object, is_selected, true, pageIndex, x, y));
}
}
else
{
......@@ -624,22 +626,31 @@ DrawingObjectsController.prototype =
return this.handleMoveHit(object, e, x, y, group, false, pageIndex, bWord);
}
}
this.resetSelection(true);
(group ? group : this).selectObject(object,pageIndex);
object.selectionSetStart(e, x, y, pageIndex);
if(!group)
{
this.selection.textSelection = object;
if(this.selection.textSelection !== object)
{
this.resetSelection(true);
this.selectObject(object,pageIndex)
this.selection.textSelection = object;
}
}
else
{
this.selectObject(group, pageIndex);
this.selection.groupSelection = group;
group.selection.textSelection = object;
if(this.selection.groupSelection !== group || group.selection.textSelection !== object)
{
this.resetSelection(true);
group.selectObject(object,pageIndex);
this.selectObject(group, pageIndex);
this.selection.groupSelection = group;
group.selection.textSelection = object;
}
}
object.selectionSetStart(e, x, y, pageIndex);
this.changeCurrentState(new TextAddState(this, object));
if(e.ClickCount < 2)
this.updateSelectionState();
return true;
}
else
......@@ -3726,7 +3737,6 @@ DrawingObjectsController.prototype =
drawingDocument.UpdateTargetTransform(null);
drawingDocument.TargetEnd();
drawingDocument.SelectEnabled(false);
drawingDocument.SelectClear();
drawingDocument.SelectShow();
}
},
......@@ -4852,8 +4862,8 @@ DrawingObjectsController.prototype =
checkChartTextSelection: function(bNoRedraw)
{
if(this.bNoCheckChartTextSelection === true)
return;
var chart_selection;
return false;
var chart_selection, bRet = false;
var nPageNum1, nPageNum2;
if(this.selection.chartSelection)
{
......@@ -4975,6 +4985,7 @@ DrawingObjectsController.prototype =
if(isRealNumber(nPageNum1))
{
bRet = true;
if(this.document)
{
this.document.DrawingDocument.OnRecalculatePage( nPageNum1, this.document.Pages[nPageNum1] );
......@@ -4996,6 +5007,7 @@ DrawingObjectsController.prototype =
if(isRealNumber(nPageNum2) && nPageNum2 !== nPageNum1)
{
bRet = true;
if(this.document)
{
this.document.DrawingDocument.OnRecalculatePage( nPageNum2, this.document.Pages[nPageNum2] );
......@@ -5014,7 +5026,7 @@ DrawingObjectsController.prototype =
this.drawingObjects.showDrawingObjects(true);
}
}
return bRet;
},
resetSelection: function(noResetContentSelect)
......
......@@ -319,7 +319,11 @@ function handleChart(drawing, drawingObjectsController, e, x, y, group, pageInde
{
if(drawingObjectsController.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
drawingObjectsController.checkChartTextSelection();
var oTargetTextObject = getTargetTextObject(drawingObjectsController);
if(title !== oTargetTextObject)
{
drawingObjectsController.checkChartTextSelection();
}
selector.resetSelection();
selector.selectObject(drawing, pageIndex);
selector.selection.chartSelection = drawing;
......
......@@ -366,7 +366,6 @@ function Geometry()
this.bW = null;
this.kH = null;
this.bH = null;
this.bNeedRecalcCoeff = true;
this.Id = g_oIdCounter.Get_NewId();
......@@ -398,7 +397,6 @@ Geometry.prototype=
Refresh_RecalcData: function(data)
{
this.bNeedRecalcCoeff = true;
if(this.parent && this.parent.handleUpdateGeometry)
{
this.parent.handleUpdateGeometry();
......@@ -489,7 +487,6 @@ Geometry.prototype=
setAdjValue: function(name, val)
{
this.AddAdj(name, 15, val + "", undefined, undefined);
this.bNeedRecalcCoeff = true;
if(this.parent && this.parent.handleUpdateGeometry)
{
this.parent.handleUpdateGeometry();
......@@ -636,7 +633,6 @@ Geometry.prototype=
this.gdLst[data.name] = data.oldVal;
this.avLst[data.name] = data.oldAvVal;
this.bNeedRecalcCoeff = true;
if(this.parent && this.parent.handleUpdateGeometry)
{
this.parent.handleUpdateGeometry();
......@@ -749,7 +745,6 @@ Geometry.prototype=
{
this.gdLst[data.name] = parseInt(data.newVal);
this.avLst[data.name] = true;
this.bNeedRecalcCoeff = true;
if(this.parent && this.parent.handleUpdateGeometry)
{
this.parent.handleUpdateGeometry();
......@@ -913,7 +908,6 @@ Geometry.prototype=
}
if(oldAvVal)
{
this.bNeedRecalcCoeff = true;
if(this.parent && this.parent.handleUpdateGeometry)
{
this.parent.handleUpdateGeometry();
......
......@@ -154,23 +154,6 @@ function NullState(drawingObjects)
NullState.prototype =
{
checkInternalSelection: function(oSelection, e, x, y, pageIndex, bTextFlag)
{
if(oSelection && this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
if(this.drawingObjects.checkNeedResetChartSelection(e, x, y, pageIndex, bTextFlag))
{
this.drawingObjects.checkChartTextSelection();
}
oSelection.resetInternalSelection();
if(e.ClickCount < 2)
{
this.drawingObjects.updateOverlay();
}
}
},
onMouseDown: function(e, x, y, pageIndex, bTextFlag)
{
var start_target_doc_content, end_target_doc_content, selected_comment_index = -1;
......@@ -193,25 +176,13 @@ NullState.prototype =
if(selection.groupSelection)
{
this.checkInternalSelection(selection.groupSelection, e, x, y, pageIndex, bTextFlag);
ret = handleSelectedObjects(this.drawingObjects, e, x, y, selection.groupSelection, pageIndex, false);
if(ret)
{
if(this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
if(this.drawingObjects.checkNeedResetChartSelection(e, x, y, pageIndex, bTextFlag))
{
this.drawingObjects.checkChartTextSelection();
}
selection.groupSelection.resetInternalSelection();
if(e.ClickCount < 2)
{
this.drawingObjects.updateOverlay();
}
}
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingObjects.showDrawingObjects(true);
}
return ret;
......@@ -224,6 +195,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingObjects.showDrawingObjects(true);
}
}
......@@ -232,7 +204,6 @@ NullState.prototype =
}
else if(selection.chartSelection)
{}
this.checkInternalSelection(this.drawingObjects, e, x, y, pageIndex, bTextFlag);
ret = handleSelectedObjects(this.drawingObjects, e, x, y, null, pageIndex, false);
if(ret)
{
......@@ -241,6 +212,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingObjects.showDrawingObjects(true);
}
}
......@@ -255,6 +227,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingObjects.showDrawingObjects(true);
}
}
......@@ -262,7 +235,12 @@ NullState.prototype =
}
if(this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
if(start_target_doc_content || selected_comment_index > -1)
var bRet = this.drawingObjects.checkChartTextSelection(true);
if(e.ClickCount < 2)
{
this.drawingObjects.resetSelection();
}
if(start_target_doc_content || selected_comment_index > -1 || bRet)
{
this.drawingObjects.drawingObjects.showDrawingObjects(true);
}
......@@ -1224,7 +1202,7 @@ TextAddState.prototype =
this.drawingObjects.changeCurrentState(new NullState(this.drawingObjects));
this.drawingObjects.handleEventMode = HANDLE_EVENT_MODE_CURSOR;
this.drawingObjects.noNeedUpdateCursorType = true;
var cursor_type = this.drawingObjects.onMouseDown(e, x, y, pageIndex);
var cursor_type = this.drawingObjects.curState.onMouseDown(e, x, y, pageIndex);
if(cursor_type && cursor_type.hyperlink)
{
this.drawingObjects.drawingObjects.showDrawingObjects(true);
......@@ -1237,7 +1215,6 @@ TextAddState.prototype =
editor.sync_PaintFormatCallback(0);
}
}
};
......
......@@ -2522,10 +2522,6 @@ CPresentation.prototype =
var ret = this.Slides[this.CurPage].graphicObjects.onMouseDown(e, X, Y);
if(!ret)
{
if(e.ClickCount < 2)
{
this.Slides[this.CurPage].graphicObjects.resetSelection();
}
this.Document_UpdateSelectionState();
}
}
......
......@@ -203,18 +203,6 @@ NullState.prototype =
}
else if(selection.groupSelection)
{
if(this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
if(this.drawingObjects.checkNeedResetChartSelection(e, x, y, pageIndex, bTextFlag))
{
this.drawingObjects.checkChartTextSelection();
}
selection.groupSelection.resetInternalSelection();
if(e.ClickCount < 2)
{
this.drawingObjects.updateOverlay();
}
}
ret = handleSelectedObjects(this.drawingObjects, e, x, y, selection.groupSelection, pageIndex, true);
if(ret)
{
......@@ -223,6 +211,8 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage( pageIndex, this.drawingObjects.document.Pages[pageIndex] );
this.drawingObjects.drawingDocument.OnEndRecalculate( false, true );
}
......@@ -235,7 +225,10 @@ NullState.prototype =
if(this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content)) {
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -247,18 +240,6 @@ NullState.prototype =
{}
if(this.drawingObjects.handleEventMode === HANDLE_EVENT_MODE_HANDLE)
{
if(this.drawingObjects.checkNeedResetChartSelection(e, x, y, pageIndex, bTextFlag))
{
this.drawingObjects.checkChartTextSelection();
}
this.drawingObjects.resetInternalSelection();
if(e.ClickCount < 2)
{
this.drawingObjects.updateOverlay();
}
}
if(!b_no_handle_selected)
{
ret = handleSelectedObjects(this.drawingObjects, e, x, y, null, pageIndex, true);
......@@ -269,6 +250,8 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -296,6 +279,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -317,6 +301,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -334,6 +319,7 @@ NullState.prototype =
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content))
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -348,6 +334,8 @@ NullState.prototype =
{
end_target_doc_content = checkEmptyPlaceholderContent(this.drawingObjects.getTargetDocContent());
if ((start_target_doc_content || end_target_doc_content) && (start_target_doc_content !== end_target_doc_content)) {
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......@@ -358,6 +346,7 @@ NullState.prototype =
}
if(start_target_doc_content)
{
this.drawingObjects.checkChartTextSelection(true);
this.drawingObjects.drawingDocument.OnRecalculatePage(pageIndex, this.drawingObjects.document.Pages[pageIndex]);
this.drawingObjects.drawingDocument.OnEndRecalculate(false, true);
}
......
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