+++ /dev/null
-SVG.Dispatcher = {
-
- on: function(events, listener) {
- events = events.split(' ');
-
- for (var i = 0, l = events.length; i < l; i++)
- this.svgElement.addEventListener(events[i], listener)
- },
-
- off: function(events, listener) {
- events = events.split(' ');
-
- for (var i = 0, l = events.length; i < l; i++)
- this.svgElement.removeEventListener(events[i], listener)
- }
-
-};
\ No newline at end of file
+++ /dev/null
-
-var bind = function(fn, me) {
- return function() { return fn.apply(me, arguments); };
-};
-
-SVG.Draggable = function Draggable(e) {
- this._windowMouseUp = bind(this._windowMouseUp, this);
- this._windowMouseMove = bind(this._windowMouseMove, this);
- this.draggable = bind(this.draggable, this);
- this.element = e;
- this.element.draggable = this.draggable;
-};
-
-SVG.Draggable.prototype.draggable = function() {
- var self = this;
- this.element.on('mousedown', function(e) {
- self.startDragEvent = e;
- self.startDragPosition = {
- x: self.element.attributes.x || 0,
- y: self.element.attributes.y || 0
- };
- window.addEventListener('mousemove', self._windowMouseMove);
- window.addEventListener('mouseup', self._windowMouseUp);
- return typeof self.element.dragstart === 'function' ? self.element.dragstart(e) : void 0;
- });
- return this.element;
-};
-
-SVG.Draggable.prototype._windowMouseMove = function(e) {
- if (this.startDragEvent != null) {
- var d = {
- x: e.pageX - this.startDragEvent.pageX,
- y: e.pageY - this.startDragEvent.pageY
- };
- this.element.move(this.startDragPosition.x + d.x, this.startDragPosition.y + d.y);
- return typeof this.element.dragmove === 'function' ? this.element.dragmove(d, e) : void 0;
- }
-};
-
-SVG.Draggable.prototype._windowMouseUp = function(e) {
- this.startDragEvent = null;
- this.startDragPosition = null;
- window.removeEventListener('mousemove', this._windowMouseMove);
- window.removeEventListener('mouseup', this._windowMouseUp);
- return typeof this.element.dragend === 'function' ? this.element.dragend(e) : void 0;
-};
\ No newline at end of file
+++ /dev/null
-
-SVG.Nested = function Nested() {
- this.drag = new SVG.Draggable(this);
- this.constructor.call(this, SVG.createElement('svg'));
- this.setAttribute('overflow', 'visible');
-};
-
-// inherit from SVG.Element
-SVG.Nested.prototype = new SVG.Element();
-
-// include the container object
-SVG.Nested.include(SVG.Container);
\ No newline at end of file