Commit 237e925d authored by Dmitry.Vikulov's avatar Dmitry.Vikulov

Исправлен баг со скролом, если граф.объект полностью в селекте

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@50631 954022d7-b5bf-4e40-9824-e11837661b57
parent 37e9e3f6
...@@ -52,6 +52,10 @@ function getFullImageSrc(src) { ...@@ -52,6 +52,10 @@ function getFullImageSrc(src) {
return src; return src;
}; };
function getCurrentTime() {
var currDate = new Date();
return currDate.getTime();
}
//{ ASC Classes //{ ASC Classes
...@@ -2391,23 +2395,8 @@ function DrawingObjects() { ...@@ -2391,23 +2395,8 @@ function DrawingObjects() {
_this.asyncImageEndLoaded = null; _this.asyncImageEndLoaded = null;
_this.asyncImagesDocumentEndLoaded = null; _this.asyncImagesDocumentEndLoaded = null;
var wsCellCache = { cols: null, rows: null, isInit: false }; var wsCellCache = { cols: null, rows: null, isInit: false };
var lastDrawTime = getCurrentTime();
// Task timer
var aDrawTasks = [];
var drawTaskTimerId = null;
function drawTaskFunction() {
var taskLen = aDrawTasks.length;
if ( taskLen ) {
//console.log("Task count = " + taskLen);
_this.showDrawingObjectsEx(aDrawTasks[taskLen - 1].params[0], aDrawTasks[taskLen - 1].params[1]);
aDrawTasks.splice(0, (taskLen - 1 > 0) ? taskLen - 1 : 1);
}
}
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
// Create drawing // Create drawing
...@@ -2692,8 +2681,6 @@ function DrawingObjects() { ...@@ -2692,8 +2681,6 @@ function DrawingObjects() {
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
_this.init = function(currentSheet) { _this.init = function(currentSheet) {
var taskTimerId = setInterval(drawTaskFunction, 5);
userId = api.User.asc_getId(); userId = api.User.asc_getId();
documentId = api.documentId; documentId = api.documentId;
...@@ -3140,10 +3127,8 @@ function DrawingObjects() { ...@@ -3140,10 +3127,8 @@ function DrawingObjects() {
overlayCtx.setStrokeStyle("#ff0000"); overlayCtx.setStrokeStyle("#ff0000");
overlayCtx.rect( x1, y1, w, h ); overlayCtx.rect( x1, y1, w, h );
overlayCtx.stroke();*/ overlayCtx.stroke();*/
overlayCtx.clearRect( x1, y1, w, h );
drawingCtx.clearRect( x1, y1, w, h ); drawingCtx.clearRect( x1, y1, w, h );
worksheet._drawGrid( drawingCtx, r_); worksheet._drawGrid( drawingCtx, r_);
worksheet._drawCells(r_); worksheet._drawCells(r_);
worksheet._drawCellsBorders(undefined, r_); worksheet._drawCellsBorders(undefined, r_);
...@@ -3230,19 +3215,8 @@ function DrawingObjects() { ...@@ -3230,19 +3215,8 @@ function DrawingObjects() {
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
// Drawing objects // Drawing objects
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
_this.showDrawingObjects = function(clearCanvas, printOptions) {
var currDate = new Date();
var currTime = currDate.getTime();
if ( aDrawTasks.length ) {
if ( currTime - aDrawTasks[aDrawTasks.length - 1].time < 40 )
return;
}
aDrawTasks.push( { time: currTime, params: [clearCanvas, printOptions] } );
}
_this.showDrawingObjectsEx = function(clearCanvas, printOptions) { _this.showDrawingObjects = function(clearCanvas, printOptions) {
/*********** Print Options *************** /*********** Print Options ***************
printOptions : { printOptions : {
...@@ -3251,8 +3225,13 @@ function DrawingObjects() { ...@@ -3251,8 +3225,13 @@ function DrawingObjects() {
} }
*****************************************/ *****************************************/
var currentTime = getCurrentTime();
if ( currentTime - lastDrawTime < 20 ) {
//console.log("Skip showDrawingObjects");
return;
}
if ( drawingCtx ) { if ( drawingCtx ) {
if ( clearCanvas ) if ( clearCanvas )
_this.clearDrawingObjects(); _this.clearDrawingObjects();
...@@ -3305,7 +3284,6 @@ function DrawingObjects() { ...@@ -3305,7 +3284,6 @@ function DrawingObjects() {
} }
} }
} }
if ( !printOptions ) { if ( !printOptions ) {
if ( aObjects.length ) { if ( aObjects.length ) {
...@@ -3320,7 +3298,9 @@ function DrawingObjects() { ...@@ -3320,7 +3298,9 @@ function DrawingObjects() {
} }
_this.drawWorksheetHeaders(); _this.drawWorksheetHeaders();
} }
lastDrawTime = getCurrentTime();
} }
_this.getDrawingAreaMetrics = function() { _this.getDrawingAreaMetrics = function() {
...@@ -3657,7 +3637,7 @@ function DrawingObjects() { ...@@ -3657,7 +3637,7 @@ function DrawingObjects() {
} }
} }
worksheet._updateCellsRange(graphicObject.chart.range.intervalObject.getBBox0()); worksheet._updateCellsRange(graphicObject.chart.range.intervalObject.getBBox0());
_this.showDrawingObjectsEx(false); _this.showDrawingObjects(false);
History.TurnOn(); History.TurnOn();
} }
} }
......
...@@ -1792,7 +1792,7 @@ ...@@ -1792,7 +1792,7 @@
ctx: drawingCtx, ctx: drawingCtx,
printPagesData: printPagesData printPagesData: printPagesData
}; };
this.objectRender.showDrawingObjectsEx(false, drawingPrintOptions); this.objectRender.showDrawingObjects(false, drawingPrintOptions);
this.visibleRange = tmpVisibleRange.clone(true); this.visibleRange = tmpVisibleRange.clone(true);
if (isAppBridge) {window['appBridge']['dummyCommandUpdate'] ();} if (isAppBridge) {window['appBridge']['dummyCommandUpdate'] ();}
...@@ -1816,7 +1816,7 @@ ...@@ -1816,7 +1816,7 @@
this._fixSelectionOfMergedCells(); this._fixSelectionOfMergedCells();
this._fixSelectionOfHiddenCells(); this._fixSelectionOfHiddenCells();
this._drawGraphic(); this._drawGraphic();
this.objectRender.showDrawingObjectsEx(true); this.objectRender.showDrawingObjects(true);
if (this.overlayCtx) { if (this.overlayCtx) {
this._drawSelection(); this._drawSelection();
} }
......
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