Commit 680c372b authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Очистку для автофигур делаем по содержимому. баг http://bugzserver/show_bug.cgi?id=24151


git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@57006 954022d7-b5bf-4e40-9824-e11837661b57
parent 8404520d
...@@ -28,7 +28,7 @@ function convertFormula(formula, ws) { ...@@ -28,7 +28,7 @@ function convertFormula(formula, ws) {
if (formula && ws) { if (formula && ws) {
var result = parserHelp.parse3DRef(formula); var result = parserHelp.parse3DRef(formula);
if (null !== result) { if (null !== result) {
var ws = ws.model.workbook.getWorksheetByName(result.sheet); ws = ws.model.workbook.getWorksheetByName(result.sheet);
if (ws) if (ws)
range = ws.getRange2(result.range); range = ws.getRange2(result.range);
} }
...@@ -50,7 +50,7 @@ function convertFormula2(formula, ws) { ...@@ -50,7 +50,7 @@ function convertFormula2(formula, ws) {
if (formula && ws) { if (formula && ws) {
var result = parserHelp.parse3DRef(formula); var result = parserHelp.parse3DRef(formula);
if (null !== result) { if (null !== result) {
var ws = ws.model.workbook.getWorksheetByName(result.sheet); ws = ws.model.workbook.getWorksheetByName(result.sheet);
if (ws) if (ws)
range = {ws: ws, range: ws.getRange2(result.range)}; range = {ws: ws, range: ws.getRange2(result.range)};
} }
...@@ -193,78 +193,81 @@ function asc_CChart(object) { ...@@ -193,78 +193,81 @@ function asc_CChart(object) {
this.legend = bCopy ? new asc_CChartLegend(object.legend) : new asc_CChartLegend(); this.legend = bCopy ? new asc_CChartLegend(object.legend) : new asc_CChartLegend();
this.series = []; this.series = [];
if ( bCopy && object.series ) { this.themeColors = [];
for (var i = 0; i < object.series.length; i++) {
var ser = new asc_CChartSeria();
ser.asc_setTitle(object.series[i].TxCache.Tx);
ser.asc_setTitleFormula(object.series[i].TxCache.Formula);
// Val
if (object.series[i].Val) {
ser.asc_setValFormula(object.series[i].Val.Formula);
for (var j = 0; j < object.series[i].Val.NumCache.length; j++) {
var item = {};
item.numFormatStr = object.series[i].Val.NumCache[j].numFormatStr;
item.isDateTimeFormat = object.series[i].Val.NumCache[j].isDateTimeFormat;
item.val = object.series[i].Val.NumCache[j].val;
item.isHidden = object.series[i].Val.NumCache[j].isHidden;
ser.Val.NumCache.push(item);
}
}
// xVal
if (object.series[i].xVal) {
ser.asc_setxValFormula(object.series[i].xVal.Formula);
for (var j = 0; j < object.series[i].xVal.NumCache.length; j++) { this._init(bCopy, object);
var item = {}; }
item.numFormatStr = object.series[i].xVal.NumCache[j].numFormatStr;
item.isDateTimeFormat = object.series[i].xVal.NumCache[j].isDateTimeFormat;
item.val = object.series[i].xVal.NumCache[j].val;
item.isHidden = object.series[i].xVal.NumCache[j].isHidden;
ser.xVal.NumCache.push(item);
}
}
// Cat asc_CChart.prototype = {
if (object.series[i].Cat) {
ser.asc_setCatFormula(object.series[i].Cat.Formula);
for (var j = 0; j < object.series[i].Cat.NumCache.length; j++) { _init: function (bCopy, object) {
var item = {}; var i, j, item;
item.numFormatStr = object.series[i].Cat.NumCache[j].numFormatStr; if (bCopy && object.series) {
item.isDateTimeFormat = object.series[i].Cat.NumCache[j].isDateTimeFormat; for (i = 0; i < object.series.length; i++) {
item.val = object.series[i].Cat.NumCache[j].val; var ser = new asc_CChartSeria();
item.isHidden = object.series[i].Cat.NumCache[j].isHidden;
ser.Cat.NumCache.push(item); ser.asc_setTitle(object.series[i].TxCache.Tx);
} ser.asc_setTitleFormula(object.series[i].TxCache.Formula);
}
// Val
if (object.series[i].Val) {
ser.asc_setValFormula(object.series[i].Val.Formula);
for (j = 0; j < object.series[i].Val.NumCache.length; j++) {
item = {};
item.numFormatStr = object.series[i].Val.NumCache[j].numFormatStr;
item.isDateTimeFormat = object.series[i].Val.NumCache[j].isDateTimeFormat;
item.val = object.series[i].Val.NumCache[j].val;
item.isHidden = object.series[i].Val.NumCache[j].isHidden;
ser.Val.NumCache.push(item);
}
}
if (object.series[i].Marker) { // xVal
ser.asc_setMarkerSize(object.series[i].Marker.Size); if (object.series[i].xVal) {
ser.asc_setMarkerSymbol(object.series[i].Marker.Symbol); ser.asc_setxValFormula(object.series[i].xVal.Formula);
}
ser.asc_setOutlineColor(object.series[i].OutlineColor); for (j = 0; j < object.series[i].xVal.NumCache.length; j++) {
ser.asc_setFormatCode(object.series[i].FormatCode); item = {};
item.numFormatStr = object.series[i].xVal.NumCache[j].numFormatStr;
item.isDateTimeFormat = object.series[i].xVal.NumCache[j].isDateTimeFormat;
item.val = object.series[i].xVal.NumCache[j].val;
item.isHidden = object.series[i].xVal.NumCache[j].isHidden;
ser.xVal.NumCache.push(item);
}
}
this.series.push(ser); // Cat
} if (object.series[i].Cat) {
} ser.asc_setCatFormula(object.series[i].Cat.Formula);
for (j = 0; j < object.series[i].Cat.NumCache.length; j++) {
item = {};
item.numFormatStr = object.series[i].Cat.NumCache[j].numFormatStr;
item.isDateTimeFormat = object.series[i].Cat.NumCache[j].isDateTimeFormat;
item.val = object.series[i].Cat.NumCache[j].val;
item.isHidden = object.series[i].Cat.NumCache[j].isHidden;
ser.Cat.NumCache.push(item);
}
}
this.themeColors = []; if (object.series[i].Marker) {
if ( bCopy && object.themeColors ) { ser.asc_setMarkerSize(object.series[i].Marker.Size);
for (var i = 0; i < object.themeColors.length; i++) { ser.asc_setMarkerSymbol(object.series[i].Marker.Symbol);
this.themeColors.push(object.themeColors[i]); }
} ser.asc_setOutlineColor(object.series[i].OutlineColor);
} ser.asc_setFormatCode(object.series[i].FormatCode);
// this.Id = g_oIdCounter.Get_NewId(); this.series.push(ser);
// g_oTableId.Add(this, this.Id); }
} }
asc_CChart.prototype = { if (bCopy && object.themeColors) {
for (i = 0; i < object.themeColors.length; i++) {
this.themeColors.push(object.themeColors[i]);
}
}
},
isEqual: function(chart) { isEqual: function(chart) {
return ( this.type == chart.type && return ( this.type == chart.type &&
...@@ -405,44 +408,38 @@ asc_CChart.prototype = { ...@@ -405,44 +408,38 @@ asc_CChart.prototype = {
parseSeriesHeaders: function() { parseSeriesHeaders: function() {
var cntLeft = 0, cntTop = 0; var cntLeft = 0, cntTop = 0;
var headers = { bLeft: false, bTop: false }; var headers = { bLeft: false, bTop: false };
var i, cell, value;
var _t = this; if (this.range.intervalObject) {
if(_t.range.intervalObject) var bbox = this.range.intervalObject.getBBox0();
{
var bbox = _t.range.intervalObject.getBBox0();
if ( bbox.c2 - bbox.c1 > 0 ) { if (bbox.c2 - bbox.c1 > 0) {
for (var i = bbox.r1 + 1; i <= bbox.r2; i++) for (i = bbox.r1 + 1; i <= bbox.r2; i++) {
{ cell = this.range.intervalObject.worksheet.getCell( new CellAddress(i, bbox.c1, 0) );
var cell = _t.range.intervalObject.worksheet.getCell( new CellAddress(i, bbox.c1, 0) ); value = cell.getValue();
var value = cell.getValue(); if (!isNumber(value) && (value != ""))
if ( !isNumber(value) && (value != "") )
cntLeft++; cntLeft++;
} }
if ( (cntLeft > 0) && (cntLeft >= bbox.r2 - bbox.r1) ) if ((cntLeft > 0) && (cntLeft >= bbox.r2 - bbox.r1))
headers.bLeft = true; headers.bLeft = true;
} }
if ( bbox.r2 - bbox.r1 > 0 ) { if (bbox.r2 - bbox.r1 > 0) {
for (var i = bbox.c1 + 1; i <= bbox.c2; i++) { for (i = bbox.c1 + 1; i <= bbox.c2; i++) {
var cell = _t.range.intervalObject.worksheet.getCell( new CellAddress(bbox.r1, i, 0) ); cell = this.range.intervalObject.worksheet.getCell( new CellAddress(bbox.r1, i, 0) );
var value = cell.getValue(); value = cell.getValue();
if ( !isNumber(value) && (value != "") ) if (!isNumber(value) && (value != ""))
cntTop++; cntTop++;
} }
if ( (cntTop > 0) && (cntTop >= bbox.c2 - bbox.c1) ) if ((cntTop > 0) && (cntTop >= bbox.c2 - bbox.c1))
headers.bTop = true; headers.bTop = true;
} }
} }
else else
{ headers = { bLeft: true, bTop: true };
var headers = { bLeft: true, bTop: true };
}
return headers; return headers;
}, },
...@@ -2629,7 +2626,7 @@ GraphicOption.prototype.getUpdatedRange = function() { ...@@ -2629,7 +2626,7 @@ GraphicOption.prototype.getUpdatedRange = function() {
switch (this.type) { switch (this.type) {
case c_oAscGraphicOption.ScrollVertical: case c_oAscGraphicOption.ScrollVertical:
case c_oAscGraphicOption.ScrollHorizontal: { case c_oAscGraphicOption.ScrollHorizontal: {
vr = range.clone(); vr = this.range.clone();
this.checkCol(++vr.c2); this.checkCol(++vr.c2);
this.checkRow(++vr.r2); this.checkRow(++vr.r2);
} }
...@@ -2742,8 +2739,6 @@ function DrawingObjects() { ...@@ -2742,8 +2739,6 @@ function DrawingObjects() {
_this.asyncImageEndLoaded = null; _this.asyncImageEndLoaded = null;
_this.asyncImagesDocumentEndLoaded = null; _this.asyncImagesDocumentEndLoaded = null;
var wsCellCache = { cols: null, rows: null, isInit: false };
// Task timer // Task timer
var aDrawTasks = []; var aDrawTasks = [];
...@@ -2766,22 +2761,20 @@ function DrawingObjects() { ...@@ -2766,22 +2761,20 @@ function DrawingObjects() {
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
function DrawingBase(ws) { function DrawingBase(ws) {
this.worksheet = ws;
var _t = this; this.imageUrl = "";
_t.worksheet = ws; this.Type = c_oAscCellAnchorType.cellanchorTwoCell;
this.Pos = { X: 0, Y: 0 };
_t.imageUrl = "";
_t.Type = c_oAscCellAnchorType.cellanchorTwoCell;
_t.Pos = { X: 0, Y: 0 };
_t.from = new CCellObjectInfo(); this.from = new CCellObjectInfo();
_t.to = new CCellObjectInfo(); this.to = new CCellObjectInfo();
_t.ext = { cx: 0, cy: 0 }; this.ext = { cx: 0, cy: 0 };
_t.size = { width: 0, height: 0 }; this.size = { width: 0, height: 0 };
_t.graphicObject = null; // CImage, CShape, GroupShape or CChartAsGroup this.graphicObject = null; // CImage, CShape, GroupShape or CChartAsGroup
_t.flags = { this.flags = {
anchorUpdated: false, anchorUpdated: false,
lockState: c_oAscLockTypes.kLockTypeNone lockState: c_oAscLockTypes.kLockTypeNone
}; };
...@@ -3052,16 +3045,14 @@ function DrawingObjects() { ...@@ -3052,16 +3045,14 @@ function DrawingObjects() {
// Ширина по координатам // Ширина по координатам
DrawingBase.prototype.getWidthFromTo = function() { DrawingBase.prototype.getWidthFromTo = function() {
var _t = this; return (this.worksheet.getCellLeft(this.to.col, 0) + mmToPx(this.to.colOff) -
var val = _t.worksheet.getCellLeft(_t.to.col, 0) + mmToPx(_t.to.colOff) - _t.worksheet.getCellLeft(_t.from.col, 0) - mmToPx(_t.from.colOff); this.worksheet.getCellLeft(this.from.col, 0) - mmToPx(this.from.colOff));
return val;
}; };
// Высота по координатам // Высота по координатам
DrawingBase.prototype.getHeightFromTo = function() { DrawingBase.prototype.getHeightFromTo = function() {
var _t = this; return this.worksheet.getCellTop(this.to.row, 0) + mmToPx(this.to.rowOff) -
var val = _t.worksheet.getCellTop(_t.to.row, 0) + mmToPx(_t.to.rowOff) - _t.worksheet.getCellTop(_t.from.row, 0) - mmToPx(_t.from.rowOff); this.worksheet.getCellTop(this.from.row, 0) - mmToPx(this.from.rowOff);
return val;
}; };
// Видимое смещение объекта от первой видимой строки // Видимое смещение объекта от первой видимой строки
...@@ -3070,7 +3061,7 @@ function DrawingObjects() { ...@@ -3070,7 +3061,7 @@ function DrawingObjects() {
var headerRowOff = _t.worksheet.getCellTop(0, 0); var headerRowOff = _t.worksheet.getCellTop(0, 0);
var fvr = _t.worksheet.getCellTop(_t.worksheet.getFirstVisibleRow(true), 0); var fvr = _t.worksheet.getCellTop(_t.worksheet.getFirstVisibleRow(true), 0);
var off = _t.getRealTopOffset() - fvr; var off = _t.getRealTopOffset() - fvr;
var off = (off > 0) ? off : 0; off = (off > 0) ? off : 0;
return withHeader ? headerRowOff + off : off; return withHeader ? headerRowOff + off : off;
}; };
...@@ -3080,7 +3071,7 @@ function DrawingObjects() { ...@@ -3080,7 +3071,7 @@ function DrawingObjects() {
var headerColOff = _t.worksheet.getCellLeft(0, 0); var headerColOff = _t.worksheet.getCellLeft(0, 0);
var fvc = _t.worksheet.getCellLeft(_t.worksheet.getFirstVisibleCol(true), 0); var fvc = _t.worksheet.getCellLeft(_t.worksheet.getFirstVisibleCol(true), 0);
var off = _t.getRealLeftOffset() - fvc; var off = _t.getRealLeftOffset() - fvc;
var off = (off > 0) ? off : 0; off = (off > 0) ? off : 0;
return withHeader ? headerColOff + off : off; return withHeader ? headerColOff + off : off;
}; };
...@@ -3144,7 +3135,7 @@ function DrawingObjects() { ...@@ -3144,7 +3135,7 @@ function DrawingObjects() {
_this.init = function(currentSheet) { _this.init = function(currentSheet) {
var taskTimerId = setInterval(drawTaskFunction, 5); setInterval(drawTaskFunction, 5);
var api = window["Asc"]["editor"]; var api = window["Asc"]["editor"];
userId = api.User.asc_getId(); userId = api.User.asc_getId();
...@@ -3177,12 +3168,10 @@ function DrawingObjects() { ...@@ -3177,12 +3168,10 @@ function DrawingObjects() {
_this.isViewerMode = function() { return worksheet.handlers.trigger("getViewerMode"); }; _this.isViewerMode = function() { return worksheet.handlers.trigger("getViewerMode"); };
aObjects = [];
aImagesSync = []; aImagesSync = [];
aObjectsSync = []; aObjectsSync = [];
isInit = false; isInit = false;
var theme = api.wbModel.theme;
aObjects = currentSheet.model.Drawings; aObjects = currentSheet.model.Drawings;
for (var i = 0; currentSheet.model.Drawings && (i < currentSheet.model.Drawings.length); i++) for (var i = 0; currentSheet.model.Drawings && (i < currentSheet.model.Drawings.length); i++)
{ {
...@@ -3221,7 +3210,7 @@ function DrawingObjects() { ...@@ -3221,7 +3210,7 @@ function DrawingObjects() {
drawingObject.graphicObject.drawingObjects = _this; drawingObject.graphicObject.drawingObjects = _this;
drawingObject.graphicObject.getAllRasterImages(aImagesSync); drawingObject.graphicObject.getAllRasterImages(aImagesSync);
} }
this.recalculate(true); _this.recalculate(true);
for(i = 0; i < aImagesSync.length; ++i) for(i = 0; i < aImagesSync.length; ++i)
{ {
aImagesSync[i] = getFullImageSrc(aImagesSync[i]); aImagesSync[i] = getFullImageSrc(aImagesSync[i]);
...@@ -4068,8 +4057,8 @@ function DrawingObjects() { ...@@ -4068,8 +4057,8 @@ function DrawingObjects() {
{ {
if(api.isChartEditor) if(api.isChartEditor)
{ {
this.controller.selectObject(aObjects[0].graphicObject, 0); _this.controller.selectObject(aObjects[0].graphicObject, 0);
this.controller.editChartDrawingObjects(chart); _this.controller.editChartDrawingObjects(chart);
return; return;
} }
var asc_chart = new asc_CChart(); var asc_chart = new asc_CChart();
...@@ -4146,7 +4135,6 @@ function DrawingObjects() { ...@@ -4146,7 +4135,6 @@ function DrawingObjects() {
var min_r = 0, max_r = 0, min_c = 0, max_c = 0; var min_r = 0, max_r = 0, min_c = 0, max_c = 0;
var series = oNewChartSpace.chart.plotArea.charts[0].series, ser; var series = oNewChartSpace.chart.plotArea.charts[0].series, ser;
var worksheet_model = worksheet.model.workbook.aWorksheets[0];
function fillTableFromRef(ref) function fillTableFromRef(ref)
{ {
var cache = ref.numCache ? ref.numCache : (ref.strCache ? ref.strCache : null); var cache = ref.numCache ? ref.numCache : (ref.strCache ? ref.strCache : null);
...@@ -4299,7 +4287,7 @@ function DrawingObjects() { ...@@ -4299,7 +4287,7 @@ function DrawingObjects() {
{ {
if(api.isChartEditor) if(api.isChartEditor)
{ {
this.controller.selectObject(aObjects[0].graphicObject, 0); _this.controller.selectObject(aObjects[0].graphicObject, 0);
} }
_this.controller.editChartDrawingObjects(chart); _this.controller.editChartDrawingObjects(chart);
_this.showDrawingObjects(false); _this.showDrawingObjects(false);
...@@ -4709,7 +4697,7 @@ function DrawingObjects() { ...@@ -4709,7 +4697,7 @@ function DrawingObjects() {
if ( oBBoxFrom && oBBoxTo ) if ( oBBoxFrom && oBBoxTo )
{ {
var selected_objects = this.controller.selection.groupSelection ? this.controller.selection.groupSelection.selectedObjects : this.controller.selectedObjects; var selected_objects = _this.controller.selection.groupSelection ? _this.controller.selection.groupSelection.selectedObjects : _this.controller.selectedObjects;
var chart; var chart;
if(selected_objects.length === 1 && selected_objects[0].getObjectType() === historyitem_type_ChartSpace) if(selected_objects.length === 1 && selected_objects[0].getObjectType() === historyitem_type_ChartSpace)
{ {
...@@ -4840,7 +4828,7 @@ function DrawingObjects() { ...@@ -4840,7 +4828,7 @@ function DrawingObjects() {
_this.calcChartInterval = function(chart) { _this.calcChartInterval = function(chart) {
if (chart.range.intervalObject) if (chart.range.intervalObject)
{ {
chart.range.interval = this.bboxToInterval(chart.range.intervalObject.getBBox0(), chart.range.intervalObject.worksheet.sName); chart.range.interval = _this.bboxToInterval(chart.range.intervalObject.getBBox0(), chart.range.intervalObject.worksheet.sName);
} }
}; };
...@@ -5193,7 +5181,7 @@ function DrawingObjects() { ...@@ -5193,7 +5181,7 @@ function DrawingObjects() {
var objectProperties = props; var objectProperties = props;
if ( !isNullOrEmptyString(objectProperties.ImageUrl) ) { if ( !isNullOrEmptyString(objectProperties.ImageUrl) ) {
var _img = api.ImageLoader.LoadImage(objectProperties.ImageUrl, 1) var _img = api.ImageLoader.LoadImage(objectProperties.ImageUrl, 1);
if (null != _img) { if (null != _img) {
_this.controller.setGraphicObjectProps( objectProperties ); _this.controller.setGraphicObjectProps( objectProperties );
...@@ -5281,18 +5269,6 @@ function DrawingObjects() { ...@@ -5281,18 +5269,6 @@ function DrawingObjects() {
//----------------------------------------------------------------------------------- //-----------------------------------------------------------------------------------
_this.cleanWorksheet = function() { _this.cleanWorksheet = function() {
// Восстанавливаем ячейки
if ( wsCellCache.isInit ) {
for (var i = 0; i < wsCellCache.cols.length; i++) {
worksheet.model.setColWidth( wsCellCache.cols[i], i, i ); // Default
}
for (var i = 0; i < wsCellCache.rows.length; i++) {
worksheet.model.setRowHeight( wsCellCache.rows[i], i, i ); // Default
}
//worksheet._initCellsArea(true);
worksheet.changeWorksheet("update");
}
for (var i = 0; i < aObjects.length; i++) { for (var i = 0; i < aObjects.length; i++) {
aObjects[i].graphicObject.deleteDrawingBase(); aObjects[i].graphicObject.deleteDrawingBase();
} }
...@@ -5389,7 +5365,7 @@ function DrawingObjects() { ...@@ -5389,7 +5365,7 @@ function DrawingObjects() {
var settings; var settings;
if(api.isChartEditor) if(api.isChartEditor)
{ {
return this.controller.getPropsFromChart(aObjects[0].graphicObject); return _this.controller.getPropsFromChart(aObjects[0].graphicObject);
} }
settings = _this.controller.getChartProps(); settings = _this.controller.getChartProps();
if ( !settings ) if ( !settings )
...@@ -5649,43 +5625,35 @@ function DrawingObjects() { ...@@ -5649,43 +5625,35 @@ function DrawingObjects() {
} }
function emuToPx(emu) { function emuToPx(emu) {
var tmp = emu * 20 * 96 / 2.54 / 72 / 100 / 1000; return emu * 20 * 96 / 2.54 / 72 / 100 / 1000;
return tmp;
} }
function pxToEmu(px) { function pxToEmu(px) {
var tmp = px * 2.54 * 72 * 100 * 1000 / 20 / 96; return px * 2.54 * 72 * 100 * 1000 / 20 / 96;
return tmp;
} }
function pxToPt(val) { function pxToPt(val) {
var tmp = val * ascCvtRatio(0, 1); return val * ascCvtRatio(0, 1);
return tmp;
} }
function ptToPx(val) { function ptToPx(val) {
var tmp = val * ascCvtRatio(1, 0); return val * ascCvtRatio(1, 0);
return tmp;
} }
function ptToMm(val) { function ptToMm(val) {
var tmp = val * ascCvtRatio(1, 3); return val * ascCvtRatio(1, 3);
return tmp;
} }
function mmToPx(val) { function mmToPx(val) {
var tmp = val * ascCvtRatio(3, 0); return val * ascCvtRatio(3, 0);
return tmp;
} }
function mmToPt(val) { function mmToPt(val) {
var tmp = val * ascCvtRatio(3, 1); return val * ascCvtRatio(3, 1);
return tmp;
} }
function pxToMm(val) { function pxToMm(val) {
var tmp = val * ascCvtRatio(0, 3); return val * ascCvtRatio(0, 3);
return tmp;
} }
} }
......
...@@ -511,7 +511,23 @@ ...@@ -511,7 +511,23 @@
var sr = this._calcRect(sx, sy, w, h); var sr = this._calcRect(sx, sy, w, h);
var r = this._calcRect(x, y); var r = this._calcRect(x, y);
var imgData = this.ctx.getImageData(sr.x, sr.y, sr.w, sr.h); var imgData = this.ctx.getImageData(sr.x, sr.y, sr.w, sr.h);
this.clear();
var minX, maxX, minY, maxY;
if (sx < x) {
minX = sr.x;
maxX = r.x;
} else {
minX = r.x;
maxX = sr.x;
}
if (sy < y) {
minY = sr.y;
maxY = r.y;
} else {
minY = r.y;
maxY = sr.y;
}
this.ctx.clearRect(minX, minY, maxX + sr.w, maxX + sr.y);
this.ctx.putImageData(imgData, r.x, r.y); this.ctx.putImageData(imgData, r.x, r.y);
return this; return this;
}; };
......
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