Commit 8876fcba authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Перешел от замены prototype на добавление методов в него (скорость должна...

Перешел от замены prototype на добавление методов в него (скорость должна возрасти судя по тестам http://jsperf.com/createoraddproto)

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@53533 954022d7-b5bf-4e40-9824-e11837661b57
parent 6ef3574f
...@@ -25,6 +25,17 @@ ...@@ -25,6 +25,17 @@
} }
//----- declaration ----- //----- declaration -----
this.defaults = {
vscrollStep: 10,
hscrollStep: 10,
scrollTimeout: 20,
showArrows: true,//показывать или нет стрелки у скролла
scrollBackgroundColor:"#DDDDDD",//цвет фона скролла
scrollerColor:"#EDEDED",//цвет ползунка скрола
isViewerMode: false,
wheelScrollLines: 3
};
this.view = undefined; this.view = undefined;
this.widget = undefined; this.widget = undefined;
this.element = undefined; this.element = undefined;
...@@ -82,23 +93,6 @@ ...@@ -82,23 +93,6 @@
} }
asc_CEventsController.prototype = {
/** @type asc_CEventsController */
constructor: asc_CEventsController,
defaults: {
vscrollStep: 10,
hscrollStep: 10,
scrollTimeout: 20,
showArrows: true,//показывать или нет стрелки у скролла
scrollBackgroundColor:"#DDDDDD",//цвет фона скролла
scrollerColor:"#EDEDED",//цвет ползунка скрола
isViewerMode: false,
wheelScrollLines: 3
},
/** /**
* @param {WorkbookView} view * @param {WorkbookView} view
* @param {Element} widgetElem * @param {Element} widgetElem
...@@ -106,7 +100,7 @@ ...@@ -106,7 +100,7 @@
* @param {Object} handlers Event handlers (resize, reinitializeScroll, scrollY, scrollX, changeSelection, updateWorksheet, editCell, stopCellEditing) * @param {Object} handlers Event handlers (resize, reinitializeScroll, scrollY, scrollX, changeSelection, updateWorksheet, editCell, stopCellEditing)
* @param {Object} settings * @param {Object} settings
*/ */
init: function (view, widgetElem, canvasElem, handlers, settings) { asc_CEventsController.prototype.init = function (view, widgetElem, canvasElem, handlers, settings) {
var self = this; var self = this;
this.view = view; this.view = view;
...@@ -159,55 +153,55 @@ ...@@ -159,55 +153,55 @@
} }
return this; return this;
}, };
destroy: function () { asc_CEventsController.prototype.destroy = function () {
return this; return this;
}, };
/** @param flag {Boolean} */ /** @param flag {Boolean} */
enableKeyEventsHandler: function (flag) { asc_CEventsController.prototype.enableKeyEventsHandler = function (flag) {
this.enableKeyEvents = !!flag; this.enableKeyEvents = !!flag;
}, };
/** @param flag {Boolean} */ /** @param flag {Boolean} */
setCellEditMode: function (flag) { asc_CEventsController.prototype.setCellEditMode = function (flag) {
this.isCellEditMode = !!flag; this.isCellEditMode = !!flag;
}, };
/** @param isViewerMode {Boolean} */ /** @param isViewerMode {Boolean} */
setViewerMode: function (isViewerMode) { asc_CEventsController.prototype.setViewerMode = function (isViewerMode) {
this.settings.isViewerMode = !!isViewerMode; this.settings.isViewerMode = !!isViewerMode;
}, };
/** @return isViewerMode {Boolean} */ /** @return isViewerMode {Boolean} */
getViewerMode: function () { asc_CEventsController.prototype.getViewerMode = function () {
return this.settings.isViewerMode; return this.settings.isViewerMode;
}, };
setFocus: function (hasFocus) { asc_CEventsController.prototype.setFocus = function (hasFocus) {
this.hasFocus = !!hasFocus; this.hasFocus = !!hasFocus;
}, };
setStrictClose: function (enabled) { asc_CEventsController.prototype.setStrictClose = function (enabled) {
this.strictClose = !!enabled; this.strictClose = !!enabled;
}, };
/** @param isFormulaEditMode {Boolean} */ /** @param isFormulaEditMode {Boolean} */
setFormulaEditMode: function (isFormulaEditMode) { asc_CEventsController.prototype.setFormulaEditMode = function (isFormulaEditMode) {
this.isFormulaEditMode = !!isFormulaEditMode; this.isFormulaEditMode = !!isFormulaEditMode;
}, };
/** /**
* *
* @param {Boolean} isSelectionDialogMode * @param {Boolean} isSelectionDialogMode
*/ */
setSelectionDialogMode: function (isSelectionDialogMode) { asc_CEventsController.prototype.setSelectionDialogMode = function (isSelectionDialogMode) {
this.isSelectionDialogMode = isSelectionDialogMode; this.isSelectionDialogMode = isSelectionDialogMode;
}, };
/** @param whichSB {Number} Scroll bar to reinit (1=vertical, 2=horizontal) */ /** @param whichSB {Number} Scroll bar to reinit (1=vertical, 2=horizontal) */
reinitializeScroll: function (whichSB) { asc_CEventsController.prototype.reinitializeScroll = function (whichSB) {
if (window["NATIVE_EDITOR_ENJINE"]) if (window["NATIVE_EDITOR_ENJINE"])
return; return;
...@@ -233,26 +227,26 @@ ...@@ -233,26 +227,26 @@
} }
return this; return this;
}, };
/** @param delta {Number} */ /** @param delta {Number} */
scrollVertical: function (delta, event) { asc_CEventsController.prototype.scrollVertical = function (delta, event) {
if( event && event.preventDefault ) if( event && event.preventDefault )
event.preventDefault(); event.preventDefault();
this.vsbApi.scrollByY(this.settings.vscrollStep * delta); this.vsbApi.scrollByY(this.settings.vscrollStep * delta);
return true; return true;
}, };
/** @param delta {Number} */ /** @param delta {Number} */
scrollHorizontal: function (delta, event) { asc_CEventsController.prototype.scrollHorizontal = function (delta, event) {
if( event && event.preventDefault ) if( event && event.preventDefault )
event.preventDefault(); event.preventDefault();
this.hsbApi.scrollByX(this.settings.hscrollStep * delta); this.hsbApi.scrollByX(this.settings.hscrollStep * delta);
return true; return true;
}, };
// Будем делать dblClick как в Excel // Будем делать dblClick как в Excel
doMouseDblClick: function (event, isHideCursor) { asc_CEventsController.prototype.doMouseDblClick = function (event, isHideCursor) {
var t = this; var t = this;
// Для формулы не нужно выходить из редактирования ячейки // Для формулы не нужно выходить из редактирования ячейки
...@@ -279,19 +273,19 @@ ...@@ -279,19 +273,19 @@
}, 100); }, 100);
return true; return true;
}, };
// Будем показывать курсор у редактора ячейки (только для dblClick) // Будем показывать курсор у редактора ячейки (только для dblClick)
showCellEditorCursor: function () { asc_CEventsController.prototype.showCellEditorCursor = function () {
if (this.isCellEditMode) { if (this.isCellEditMode) {
if (this.isDoBrowserDblClick) { if (this.isDoBrowserDblClick) {
this.isDoBrowserDblClick = false; this.isDoBrowserDblClick = false;
this.handlers.trigger("showCellEditorCursor"); this.handlers.trigger("showCellEditorCursor");
} }
} }
}, };
_createScrollBars: function () { asc_CEventsController.prototype._createScrollBars = function () {
var self = this, opt = this.settings; var self = this, opt = this.settings;
// vertical scroll bar // vertical scroll bar
...@@ -344,13 +338,13 @@ ...@@ -344,13 +338,13 @@
var corner = document.createElement('div'); var corner = document.createElement('div');
corner.id = "ws-scrollbar-corner"; corner.id = "ws-scrollbar-corner";
this.widget.appendChild(corner); this.widget.appendChild(corner);
}, };
/** /**
* @param event {jQuery.Event} * @param event {jQuery.Event}
* @param callback {Function} * @param callback {Function}
*/ */
_changeSelection: function (event, isSelectMode, callback) { asc_CEventsController.prototype._changeSelection = function (event, isSelectMode, callback) {
var t = this; var t = this;
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
...@@ -375,10 +369,10 @@ ...@@ -375,10 +369,10 @@
asc_applyFunction(callback); asc_applyFunction(callback);
}); });
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_changeSelection2: function (event) { asc_CEventsController.prototype._changeSelection2 = function (event) {
var t = this; var t = this;
var fn = function () { var fn = function () {
...@@ -397,10 +391,10 @@ ...@@ -397,10 +391,10 @@
t._changeSelection(event, /*isSelectMode*/true, callback); t._changeSelection(event, /*isSelectMode*/true, callback);
} }
}, 0); }, 0);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_moveRangeHandle2: function (event) { asc_CEventsController.prototype._moveRangeHandle2 = function (event) {
var t = this; var t = this;
var fn = function () { var fn = function () {
...@@ -419,10 +413,10 @@ ...@@ -419,10 +413,10 @@
t._moveRangeHandle(event, callback); t._moveRangeHandle(event, callback);
} }
}, 0); }, 0);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_moveResizeRangeHandle2: function (event) { asc_CEventsController.prototype._moveResizeRangeHandle2 = function (event) {
var t = this; var t = this;
var fn = function () { var fn = function () {
...@@ -441,33 +435,33 @@ ...@@ -441,33 +435,33 @@
t._moveResizeRangeHandle(event, t.targetInfo, callback); t._moveResizeRangeHandle(event, t.targetInfo, callback);
} }
}, 0); }, 0);
}, };
// Окончание выделения // Окончание выделения
_changeSelectionDone: function (event) { asc_CEventsController.prototype._changeSelectionDone = function (event) {
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
if (false === event.ctrlKey) { if (false === event.ctrlKey) {
coord.x = -1; coord.x = -1;
coord.y = -1; coord.y = -1;
} }
this.handlers.trigger("changeSelectionDone", coord.x, coord.y); this.handlers.trigger("changeSelectionDone", coord.x, coord.y);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_resizeElement: function (event) { asc_CEventsController.prototype._resizeElement = function (event) {
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
this.handlers.trigger("resizeElement", this.targetInfo, coord.x, coord.y); this.handlers.trigger("resizeElement", this.targetInfo, coord.x, coord.y);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_resizeElementDone: function (event) { asc_CEventsController.prototype._resizeElementDone = function (event) {
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
this.handlers.trigger("resizeElementDone", this.targetInfo, coord.x, coord.y, this.isResizeModeMove); this.handlers.trigger("resizeElementDone", this.targetInfo, coord.x, coord.y, this.isResizeModeMove);
this.isResizeModeMove = false; this.isResizeModeMove = false;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_changeFillHandle: function (event, callback) { asc_CEventsController.prototype._changeFillHandle = function (event, callback) {
var t = this; var t = this;
// Обновляемся в режиме автозаполнения // Обновляемся в режиме автозаполнения
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
...@@ -482,9 +476,9 @@ ...@@ -482,9 +476,9 @@
} }
asc_applyFunction(callback); asc_applyFunction(callback);
}); });
}, };
_changeFillHandle2: function(event){ asc_CEventsController.prototype._changeFillHandle2 = function (event){
var t = this; var t = this;
var fn = function () { var fn = function () {
...@@ -503,18 +497,18 @@ ...@@ -503,18 +497,18 @@
t._changeFillHandle(event, callback); t._changeFillHandle(event, callback);
} }
}, 0); }, 0);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_changeFillHandleDone: function (event) { asc_CEventsController.prototype._changeFillHandleDone = function (event) {
// Закончили автозаполнение, пересчитаем // Закончили автозаполнение, пересчитаем
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
var ctrlPress = event.ctrlKey; var ctrlPress = event.ctrlKey;
this.handlers.trigger("changeFillHandleDone", coord.x, coord.y, ctrlPress); this.handlers.trigger("changeFillHandleDone", coord.x, coord.y, ctrlPress);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_moveRangeHandle: function (event, callback) { asc_CEventsController.prototype._moveRangeHandle = function (event, callback) {
var t = this; var t = this;
// Обновляемся в режиме перемещения диапазона // Обновляемся в режиме перемещения диапазона
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
...@@ -530,10 +524,10 @@ ...@@ -530,10 +524,10 @@
asc_applyFunction(callback); asc_applyFunction(callback);
}, },
event.ctrlKey); event.ctrlKey);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_moveResizeRangeHandle: function (event, target, callback) { asc_CEventsController.prototype._moveResizeRangeHandle = function (event, target, callback) {
var t = this; var t = this;
// Обновляемся в режиме перемещения диапазона // Обновляемся в режиме перемещения диапазона
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
...@@ -548,40 +542,40 @@ ...@@ -548,40 +542,40 @@
} }
asc_applyFunction(callback); asc_applyFunction(callback);
}); });
}, };
_autoFiltersClick: function (event) { asc_CEventsController.prototype._autoFiltersClick = function (event) {
var t = this; var t = this;
var coord = t._getCoordinates(event); var coord = t._getCoordinates(event);
this.handlers.trigger("autoFiltersClick", coord.x, coord.y); this.handlers.trigger("autoFiltersClick", coord.x, coord.y);
}, };
_commentCellClick: function (event) { asc_CEventsController.prototype._commentCellClick = function (event) {
var t = this; var t = this;
var coord = t._getCoordinates(event); var coord = t._getCoordinates(event);
this.handlers.trigger("commentCellClick", coord.x, coord.y); this.handlers.trigger("commentCellClick", coord.x, coord.y);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_moveRangeHandleDone: function (event) { asc_CEventsController.prototype._moveRangeHandleDone = function (event) {
// Закончили перемещение диапазона, пересчитаем // Закончили перемещение диапазона, пересчитаем
this.handlers.trigger("moveRangeHandleDone",event.ctrlKey); this.handlers.trigger("moveRangeHandleDone",event.ctrlKey);
}, };
_moveResizeRangeHandleDone: function (event, target) { asc_CEventsController.prototype._moveResizeRangeHandleDone = function (event, target) {
// Закончили перемещение диапазона, пересчитаем // Закончили перемещение диапазона, пересчитаем
this.handlers.trigger("moveResizeRangeHandleDone", target); this.handlers.trigger("moveResizeRangeHandleDone", target);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowResize: function (event) { asc_CEventsController.prototype._onWindowResize = function (event) {
var self = this; var self = this;
window.clearTimeout(this.resizeTimerId); window.clearTimeout(this.resizeTimerId);
this.resizeTimerId = window.setTimeout(function () {self.handlers.trigger("resize", event);}, 150); this.resizeTimerId = window.setTimeout(function () {self.handlers.trigger("resize", event);}, 150);
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowKeyDown: function (event) { asc_CEventsController.prototype._onWindowKeyDown = function (event) {
var t = this, dc = 0, dr = 0, isViewerMode = t.settings.isViewerMode; var t = this, dc = 0, dr = 0, isViewerMode = t.settings.isViewerMode;
t.__retval = true; t.__retval = true;
...@@ -898,10 +892,10 @@ ...@@ -898,10 +892,10 @@
} }
return t.__retval; return t.__retval;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowKeyPress: function (event) { asc_CEventsController.prototype._onWindowKeyPress = function (event) {
var t = this; var t = this;
// Нельзя при отключенных эвентах возвращать false (это касается и ViewerMode) // Нельзя при отключенных эвентах возвращать false (это касается и ViewerMode)
...@@ -940,10 +934,10 @@ ...@@ -940,10 +934,10 @@
/*isHideCursor*/undefined, /*callback*/undefined, event); /*isHideCursor*/undefined, /*callback*/undefined, event);
} }
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowKeyUp: function (event) { asc_CEventsController.prototype._onWindowKeyUp = function (event) {
var t = this; var t = this;
// для исправления Bug 15902 - Alt забирает фокус из приложения // для исправления Bug 15902 - Alt забирает фокус из приложения
...@@ -956,10 +950,10 @@ ...@@ -956,10 +950,10 @@
} }
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowMouseMove: function (event) { asc_CEventsController.prototype._onWindowMouseMove = function (event) {
if (this.isSelectMode && !this.hasCursor) {this._changeSelection2(event);} if (this.isSelectMode && !this.hasCursor) {this._changeSelection2(event);}
if (this.isResizeMode && !this.hasCursor) { if (this.isResizeMode && !this.hasCursor) {
this.isResizeModeMove = true; this.isResizeModeMove = true;
...@@ -972,10 +966,10 @@ ...@@ -972,10 +966,10 @@
this.vsbApi.mouseDown ? this.vsbApi.evt_mousemove.call(this.vsbApi,event) : false; this.vsbApi.mouseDown ? this.vsbApi.evt_mousemove.call(this.vsbApi,event) : false;
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowMouseUp: function (event) { asc_CEventsController.prototype._onWindowMouseUp = function (event) {
// this.vsbApi.evt_mouseup(event); // this.vsbApi.evt_mouseup(event);
// this.hsbApi.evt_mouseup(event); // this.hsbApi.evt_mouseup(event);
...@@ -1028,10 +1022,10 @@ ...@@ -1028,10 +1022,10 @@
this.vsbApi.mouseDown ? this.vsbApi.evt_mouseup.call(this.vsbApi,event) : false; this.vsbApi.mouseDown ? this.vsbApi.evt_mouseup.call(this.vsbApi,event) : false;
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowMouseUpExternal: function (x, y) { asc_CEventsController.prototype._onWindowMouseUpExternal = function (x, y) {
if (this.isSelectMode) { if (this.isSelectMode) {
this.isSelectMode = false; this.isSelectMode = false;
this.handlers.trigger("changeSelectionDone", x, y); this.handlers.trigger("changeSelectionDone", x, y);
...@@ -1067,10 +1061,10 @@ ...@@ -1067,10 +1061,10 @@
this.showCellEditorCursor(); this.showCellEditorCursor();
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onWindowMouseLeaveOut: function (event) { asc_CEventsController.prototype._onWindowMouseLeaveOut = function (event) {
// Когда обрабатывать нечего - выходим // Когда обрабатывать нечего - выходим
if (!this.isDoBrowserDblClick) if (!this.isDoBrowserDblClick)
return true; return true;
...@@ -1086,10 +1080,10 @@ ...@@ -1086,10 +1080,10 @@
// окна редактора и отпускания кнопки, будем отрабатывать выход из окна (только Chrome присылает эвент MouseUp даже при выходе из браузера) // окна редактора и отпускания кнопки, будем отрабатывать выход из окна (только Chrome присылает эвент MouseUp даже при выходе из браузера)
this.showCellEditorCursor(); this.showCellEditorCursor();
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onMouseDown: function (event) { asc_CEventsController.prototype._onMouseDown = function (event) {
var t = this; var t = this;
var coord = t._getCoordinates(event); var coord = t._getCoordinates(event);
event.isLocked = true; event.isLocked = true;
...@@ -1247,10 +1241,10 @@ ...@@ -1247,10 +1241,10 @@
return; return;
} }
} }
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onMouseUp: function (event) { asc_CEventsController.prototype._onMouseUp = function (event) {
// Shapes // Shapes
var coord = this._getCoordinates(event); var coord = this._getCoordinates(event);
...@@ -1302,10 +1296,10 @@ ...@@ -1302,10 +1296,10 @@
// Мы можем dblClick и не отработать, если вышли из области и отпустили кнопку мыши, нужно отработать // Мы можем dblClick и не отработать, если вышли из области и отпустили кнопку мыши, нужно отработать
this.showCellEditorCursor(); this.showCellEditorCursor();
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onMouseMove: function (event) { asc_CEventsController.prototype._onMouseMove = function (event) {
var t = this; var t = this;
var coord = t._getCoordinates(event); var coord = t._getCoordinates(event);
event.isLocked = t.isLocked; event.isLocked = t.isLocked;
...@@ -1359,10 +1353,10 @@ ...@@ -1359,10 +1353,10 @@
t.handlers.trigger("updateWorksheet", t.element, coord.x, coord.y, event.ctrlKey, function(info){t.targetInfo = info;}); t.handlers.trigger("updateWorksheet", t.element, coord.x, coord.y, event.ctrlKey, function(info){t.targetInfo = info;});
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onMouseLeave: function (event) { asc_CEventsController.prototype._onMouseLeave = function (event) {
var t = this; var t = this;
this.hasCursor = false; this.hasCursor = false;
if (!this.isSelectMode && !this.isResizeMode && !this.isMoveResizeRange) { if (!this.isSelectMode && !this.isResizeMode && !this.isMoveResizeRange) {
...@@ -1379,12 +1373,12 @@ ...@@ -1379,12 +1373,12 @@
t.fillHandleModeTimerId = window.setTimeout(function(){t._changeFillHandle2(event)},0); t.fillHandleModeTimerId = window.setTimeout(function(){t._changeFillHandle2(event)},0);
} }
return true; return true;
}, };
/** /**
* @param event * @param event
*/ */
_onMouseWheel: function (event) { asc_CEventsController.prototype._onMouseWheel = function (event) {
if (this.isFillHandleMode || this.isMoveRangeMode || this.isMoveResizeChartsRange || this.isMoveResizeRange) { if (this.isFillHandleMode || this.isMoveRangeMode || this.isMoveResizeChartsRange || this.isMoveResizeRange) {
return true; return true;
} }
...@@ -1405,10 +1399,10 @@ ...@@ -1405,10 +1399,10 @@
self._onMouseMove(event); self._onMouseMove(event);
}); });
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_onMouseDblClick: function (event) { asc_CEventsController.prototype._onMouseDblClick = function (event) {
if (this.handlers.trigger("isGlobalLockEditCell")) if (this.handlers.trigger("isGlobalLockEditCell"))
return false; return false;
...@@ -1421,16 +1415,14 @@ ...@@ -1421,16 +1415,14 @@
// Нужно отработать показ курсора, если dblClick был обработан в MouseDown // Нужно отработать показ курсора, если dblClick был обработан в MouseDown
this.showCellEditorCursor(); this.showCellEditorCursor();
return true; return true;
}, };
/** @param event {jQuery.Event} */ /** @param event {jQuery.Event} */
_getCoordinates: function (event) { asc_CEventsController.prototype._getCoordinates = function (event) {
var offs = $(this.element).offset(); var offs = $(this.element).offset();
var x = event.pageX - offs.left; var x = event.pageX - offs.left;
var y = event.pageY - offs.top; var y = event.pageY - offs.top;
return {x: x, y: y}; return {x: x, y: 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