X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=_source%2Fcore%2Fdom%2Fevent.js;h=273a5cfdbff39c2f6103ebcc19e218ddd5ae26c9;hb=a272c66d841421f8bf933c16535bdcde1c4649fc;hp=cf7d66cca02fdf8d6bb956a5b4d6c46de7ea7eae;hpb=941b0a9ba4e673e292510d80a5a86806994b8ea6;p=ckeditor.git diff --git a/_source/core/dom/event.js b/_source/core/dom/event.js index cf7d66c..273a5cf 100644 --- a/_source/core/dom/event.js +++ b/_source/core/dom/event.js @@ -1,5 +1,5 @@ /* -Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved. +Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved. For licensing, see LICENSE.html or http://ckeditor.com/license */ @@ -117,26 +117,49 @@ CKEDITOR.dom.event.prototype = { var rawNode = this.$.target || this.$.srcElement; return rawNode ? new CKEDITOR.dom.node( rawNode ) : null; + }, + + /** + * Retrieves the coordinates of the mouse pointer relative to the top-left + * corner of the document, in mouse related event. + * @returns {Object} The object contains the position. + * @example + * element.on( 'mousemouse', function( ev ) + * { + * var pageOffset = ev.data.getPageOffset(); + * alert( pageOffset.x ); // page offset X + * alert( pageOffset.y ); // page offset Y + * }); + */ + getPageOffset : function() + { + var doc = this.getTarget().getDocument().$; + var pageX = this.$.pageX || this.$.clientX + ( doc.documentElement.scrollLeft || doc.body.scrollLeft ); + var pageY = this.$.pageY || this.$.clientY + ( doc.documentElement.scrollTop || doc.body.scrollTop ); + return { x : pageX, y : pageY }; } }; +// For the followind constants, we need to go over the Unicode boundaries +// (0x10FFFF) to avoid collision. + /** - * CTRL key (1000). + * CTRL key (0x110000). * @constant * @example */ -CKEDITOR.CTRL = 1000; +CKEDITOR.CTRL = 0x110000; /** - * SHIFT key (2000). + * SHIFT key (0x220000). * @constant * @example */ -CKEDITOR.SHIFT = 2000; +CKEDITOR.SHIFT = 0x220000; /** - * ALT key (4000). + * ALT key (0x440000). * @constant * @example */ -CKEDITOR.ALT = 4000; +CKEDITOR.ALT = 0x440000;