Commit bdb2946e authored by Dmitry.Vikulov's avatar Dmitry.Vikulov Committed by Alexander.Trofimov

- Исправлен мега-баг с неправильной очисткой оверлея в правой части(меню настроек объектов)

- Исправлен баг с перерисовкой объектов с опцией "Hide Gridlines"
- Исправлен баг с очисткой основной канвы, если добавить шейп и сместить

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@49005 954022d7-b5bf-4e40-9824-e11837661b57
parent b6dc82c7
......@@ -2815,6 +2815,14 @@ function DrawingObjects() {
_this.changeZoom = function(factor) {
_this.zoom = factor;
_this.resizeCanvas();
_this.showDrawingObjects(true);
_this.rebuildChartGraphicObjects();
}
_this.resizeCanvas = function() {
shapeCtx.init( drawingCtx.ctx, drawingCtx.getWidth(0), drawingCtx.getHeight(0), drawingCtx.getWidth(3), drawingCtx.getHeight(3) );
shapeCtx.CalculateFullTransform();
......@@ -2824,9 +2832,6 @@ function DrawingObjects() {
trackOverlay.init( shapeOverlayCtx.m_oContext, "ws-canvas-overlay", 0, 0, shapeOverlayCtx.m_lWidthPix, shapeOverlayCtx.m_lHeightPix, shapeOverlayCtx.m_dWidthMM, shapeOverlayCtx.m_dHeightMM );
autoShapeTrack.init( trackOverlay, 0, 0, shapeOverlayCtx.m_lWidthPix, shapeOverlayCtx.m_lHeightPix, shapeOverlayCtx.m_dWidthMM, shapeOverlayCtx.m_dHeightMM );
autoShapeTrack.Graphics.CalculateFullTransform();
_this.showDrawingObjects(true);
_this.rebuildChartGraphicObjects();
}
_this.getWorkbook = function() {
......@@ -2930,8 +2935,8 @@ function DrawingObjects() {
var _w = checker.Bounds.max_x - checker.Bounds.min_x;
var _h = checker.Bounds.max_y - checker.Bounds.min_y;
//overlayCtx.clearRect( mmToPt(checker.Bounds.min_x + pxToMm(scrollOffset.x)), mmToPt(checker.Bounds.min_y + pxToMm(scrollOffset.y)), mmToPt(_w), mmToPt(_h) );
//drawingCtx.clearRect( mmToPt(checker.Bounds.min_x + pxToMm(scrollOffset.x)), mmToPt(checker.Bounds.min_y + pxToMm(scrollOffset.y)), mmToPt(_w), mmToPt(_h) );
overlayCtx.clearRect( mmToPt(checker.Bounds.min_x + pxToMm(scrollOffset.x)), mmToPt(checker.Bounds.min_y + pxToMm(scrollOffset.y)), mmToPt(_w), mmToPt(_h) );
drawingCtx.clearRect( mmToPt(checker.Bounds.min_x + pxToMm(scrollOffset.x)), mmToPt(checker.Bounds.min_y + pxToMm(scrollOffset.y)), mmToPt(_w), mmToPt(_h) );
var foundRow = worksheet._findRowUnderCursor( mmToPt(checker.Bounds.min_y + pxToMm(scrollOffset.y)), true);
var topRow = foundRow ? foundRow.row : 0;
......@@ -2944,7 +2949,7 @@ function DrawingObjects() {
var rightcol = foundCol ? foundCol.col : 0;
var r_ = asc_Range( leftCol, topRow, rightcol, bottomRow );
worksheet._drawGrid( undefined, r_);
worksheet._drawGrid( drawingCtx, r_);
worksheet._drawCells(r_);
worksheet._drawCellsBorders(undefined, r_);
}
......@@ -3773,6 +3778,9 @@ function DrawingObjects() {
_this.objectLocker.addObjectId(obj.graphicObject.Id);
_this.objectLocker.checkObjects( function(result) {} );
var boundsChecker = _this.getBoundsChecker(obj);
aBoundsCheckers.push(boundsChecker);
return ret;
}
......
......@@ -989,6 +989,9 @@
// Мы меняли zoom, но не перерисовывали данный лист (он был не активный)
if (ws.updateZoom)
ws.changeZoom(true);
if (isResized)
ws.objectRender.resizeCanvas();
ws.objectRender.restoreScrollOffset();
ws.draw();
this._onSelectionNameChanged(ws.getSelectionName(/*bRangeText*/false));
......
......@@ -2208,13 +2208,16 @@
.fillRect(x1, y1, x2 - x1, y2 - y1)
.setStrokeStyle(this.settings.cells.defaultState.border)
.setLineWidth(1);
for (var i = range.c1, x = x1; i <= range.c2 && x <= x2; ++i) {
x += this.cols[i].width;
ctx.beginPath().moveTo(x, y1, -0.5, 0).lineTo(x, y2, -0.5, 0).stroke();
}
for (var j = range.r1, y = y1; j <= range.r2 && y <= y2; ++j) {
y += this.rows[j].height;
ctx.beginPath().moveTo(x1, y, 0, -0.5).lineTo(x2, y, 0, -0.5).stroke();
if ( true === this.model.sheetViews[0].asc_getShowGridLines() ) {
for (var i = range.c1, x = x1; i <= range.c2 && x <= x2; ++i) {
x += this.cols[i].width;
ctx.beginPath().moveTo(x, y1, -0.5, 0).lineTo(x, y2, -0.5, 0).stroke();
}
for (var j = range.r1, y = y1; j <= range.r2 && y <= y2; ++j) {
y += this.rows[j].height;
ctx.beginPath().moveTo(x1, y, 0, -0.5).lineTo(x2, y, 0, -0.5).stroke();
}
}
},
......
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