diff --git a/.gitignore b/.gitignore index 5a0bb257..e43b0f98 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ .DS_Store -build/zip diff --git a/dist/paper-core.js b/dist/paper-core.js index fb26d946..b8a8d431 100644 --- a/dist/paper-core.js +++ b/dist/paper-core.js @@ -9,7 +9,7 @@ * * All rights reserved. * - * Date: Tue Dec 2 22:31:20 2014 -0800 + * Date: Sat Nov 22 09:01:01 2014 -0800 * *** * @@ -219,8 +219,10 @@ var Base = new function() { || ctor.name === 'Object'); }, - pick: function(a, b) { - return a !== undefined ? a : b; + pick: function() { + for (var i = 0, l = arguments.length; i < l; i++) + if (arguments[i] !== undefined) + return arguments[i]; } } }); @@ -255,10 +257,6 @@ Base.inject({ }, []).join(', ') + ' }'; }, - getClassName: function() { - return this._class || ''; - }, - exportJSON: function(options) { return Base.exportJSON(this, options); }, @@ -2835,6 +2833,10 @@ var Item = Base.extend(Emitter, { return this._id; }, + getClassName: function() { + return this._class; + }, + getName: function() { return this._name; }, @@ -5359,7 +5361,6 @@ var SegmentPoint = Point.extend({ var Curve = Base.extend({ _class: 'Curve', - initialize: function Curve(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) { var count = arguments.length; if (count === 3) { @@ -10320,30 +10321,31 @@ var View = Base.extend(Emitter, { userDrag: none, tapHighlightColor: 'rgba(0,0,0,0)' }); - - var getCanvasSize = function() { - size = DomElement.getSize(element); - if (size.isNaN() || size.isZero()) { - var getSize = function(name) { - return element[name] - || parseInt(element.getAttribute(name), 10); - }; - size = new Size(getSize('width'), getSize('height')); + if (PaperScope.hasAttribute(element, 'resize')) { + var offset = DomElement.getOffset(element, true), + that = this; + size = DomElement.getViewportBounds(element) + .getSize().subtract(offset); + this._windowEvents = { + resize: function() { + if (!DomElement.isInvisible(element)) + offset = DomElement.getOffset(element, true); + that.setViewSize(DomElement.getViewportBounds(element) + .getSize().subtract(offset)); } - return size; }; - - this._resizable = PaperScope.hasAttribute(element, 'resize'); - if (this._resizable) { - var that = this; - this._windowEvents = { - resize: function() { - that.setViewSize(getCanvasSize()); - } + DomEvent.add(window, this._windowEvents); + } else { + size = DomElement.getSize(element); + if (size.isNaN() || size.isZero()) { + var getSize = function(name) { + return element[name] + || parseInt(element.getAttribute(name), 10); }; - DomEvent.add(window, this._windowEvents); + size = new Size(getSize('width'), getSize('height')); } - this._setViewSize(getCanvasSize()); + } + this._setViewSize(size); if (PaperScope.hasAttribute(element, 'stats') && typeof Stats !== 'undefined') { this._stats = new Stats(); @@ -10757,13 +10759,11 @@ var CanvasView = View.extend({ style = element.style; element.width = width * pixelRatio; element.height = height * pixelRatio; - if (pixelRatio !== 1) { - if (this._resizable === false) { - style.width = width + 'px'; - style.height = height + 'px'; - } - this._context.scale(pixelRatio, pixelRatio); - } + if (pixelRatio !== 1) { + style.width = width + 'px'; + style.height = height + 'px'; + this._context.scale(pixelRatio, pixelRatio); + } }, getPixelSize: function(size) { @@ -11735,11 +11735,11 @@ new function() { scale = decomposed.scaling; if (trans && !trans.isZero()) parts.push('translate(' + formatter.point(trans) + ')'); + if (angle) + parts.push('rotate(' + formatter.number(angle) + ')'); if (!Numerical.isZero(scale.x - 1) || !Numerical.isZero(scale.y - 1)) parts.push('scale(' + formatter.point(scale) +')'); - if (angle) - parts.push('rotate(' + formatter.number(angle) + ')'); attrs.transform = parts.join(' '); } else { attrs.transform = 'matrix(' + matrix.getValues().join(',') + ')'; diff --git a/dist/paper-full.js b/dist/paper-full.js index ff189e48..e0979a3a 100644 --- a/dist/paper-full.js +++ b/dist/paper-full.js @@ -9,7 +9,7 @@ * * All rights reserved. * - * Date: Tue Dec 2 22:31:20 2014 -0800 + * Date: Sat Nov 22 09:01:01 2014 -0800 * *** * @@ -219,8 +219,10 @@ var Base = new function() { || ctor.name === 'Object'); }, - pick: function(a, b) { - return a !== undefined ? a : b; + pick: function() { + for (var i = 0, l = arguments.length; i < l; i++) + if (arguments[i] !== undefined) + return arguments[i]; } } }); @@ -255,10 +257,6 @@ Base.inject({ }, []).join(', ') + ' }'; }, - getClassName: function() { - return this._class || ''; - }, - exportJSON: function(options) { return Base.exportJSON(this, options); }, @@ -2835,6 +2833,10 @@ var Item = Base.extend(Emitter, { return this._id; }, + getClassName: function() { + return this._class; + }, + getName: function() { return this._name; }, @@ -5359,7 +5361,6 @@ var SegmentPoint = Point.extend({ var Curve = Base.extend({ _class: 'Curve', - initialize: function Curve(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) { var count = arguments.length; if (count === 3) { @@ -10320,30 +10321,31 @@ var View = Base.extend(Emitter, { userDrag: none, tapHighlightColor: 'rgba(0,0,0,0)' }); - - var getCanvasSize = function() { - size = DomElement.getSize(element); - if (size.isNaN() || size.isZero()) { - var getSize = function(name) { - return element[name] - || parseInt(element.getAttribute(name), 10); - }; - size = new Size(getSize('width'), getSize('height')); + if (PaperScope.hasAttribute(element, 'resize')) { + var offset = DomElement.getOffset(element, true), + that = this; + size = DomElement.getViewportBounds(element) + .getSize().subtract(offset); + this._windowEvents = { + resize: function() { + if (!DomElement.isInvisible(element)) + offset = DomElement.getOffset(element, true); + that.setViewSize(DomElement.getViewportBounds(element) + .getSize().subtract(offset)); } - return size; }; - - this._resizable = PaperScope.hasAttribute(element, 'resize'); - if (this._resizable) { - var that = this; - this._windowEvents = { - resize: function() { - that.setViewSize(getCanvasSize()); - } + DomEvent.add(window, this._windowEvents); + } else { + size = DomElement.getSize(element); + if (size.isNaN() || size.isZero()) { + var getSize = function(name) { + return element[name] + || parseInt(element.getAttribute(name), 10); }; - DomEvent.add(window, this._windowEvents); + size = new Size(getSize('width'), getSize('height')); } - this._setViewSize(getCanvasSize()); + } + this._setViewSize(size); if (PaperScope.hasAttribute(element, 'stats') && typeof Stats !== 'undefined') { this._stats = new Stats(); @@ -10757,13 +10759,11 @@ var CanvasView = View.extend({ style = element.style; element.width = width * pixelRatio; element.height = height * pixelRatio; - if (pixelRatio !== 1) { - if (this._resizable === false) { - style.width = width + 'px'; - style.height = height + 'px'; - } - this._context.scale(pixelRatio, pixelRatio); - } + if (pixelRatio !== 1) { + style.width = width + 'px'; + style.height = height + 'px'; + this._context.scale(pixelRatio, pixelRatio); + } }, getPixelSize: function(size) { @@ -11735,11 +11735,11 @@ new function() { scale = decomposed.scaling; if (trans && !trans.isZero()) parts.push('translate(' + formatter.point(trans) + ')'); + if (angle) + parts.push('rotate(' + formatter.number(angle) + ')'); if (!Numerical.isZero(scale.x - 1) || !Numerical.isZero(scale.y - 1)) parts.push('scale(' + formatter.point(scale) +')'); - if (angle) - parts.push('rotate(' + formatter.number(angle) + ')'); attrs.transform = parts.join(' '); } else { attrs.transform = 'matrix(' + matrix.getValues().join(',') + ')'; diff --git a/dist/paper-node.js b/dist/paper-node.js index 31c80b75..06661521 100644 --- a/dist/paper-node.js +++ b/dist/paper-node.js @@ -9,7 +9,7 @@ * * All rights reserved. * - * Date: Tue Dec 2 22:31:20 2014 -0800 + * Date: Sat Nov 22 09:01:01 2014 -0800 * *** * @@ -219,8 +219,10 @@ var Base = new function() { || ctor.name === 'Object'); }, - pick: function(a, b) { - return a !== undefined ? a : b; + pick: function() { + for (var i = 0, l = arguments.length; i < l; i++) + if (arguments[i] !== undefined) + return arguments[i]; } } }); @@ -245,10 +247,6 @@ Base.inject({ }, []).join(', ') + ' }'; }, - getClassName: function() { - return this._class || ''; - }, - exportJSON: function(options) { return Base.exportJSON(this, options); }, @@ -2804,6 +2802,10 @@ var Item = Base.extend(Emitter, { return this._id; }, + getClassName: function() { + return this._class; + }, + getName: function() { return this._name; }, @@ -5343,7 +5345,6 @@ var SegmentPoint = Point.extend({ var Curve = Base.extend({ _class: 'Curve', - initialize: function Curve(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) { var count = arguments.length; if (count === 3) { @@ -10479,13 +10480,11 @@ var CanvasView = View.extend({ style = element.style; element.width = width * pixelRatio; element.height = height * pixelRatio; - if (pixelRatio !== 1) { - if (this._resizable === false) { - style.width = width + 'px'; - style.height = height + 'px'; - } - this._context.scale(pixelRatio, pixelRatio); - } + if (pixelRatio !== 1) { + style.width = width + 'px'; + style.height = height + 'px'; + this._context.scale(pixelRatio, pixelRatio); + } }, getPixelSize: function(size) { @@ -11076,11 +11075,11 @@ new function() { scale = decomposed.scaling; if (trans && !trans.isZero()) parts.push('translate(' + formatter.point(trans) + ')'); + if (angle) + parts.push('rotate(' + formatter.number(angle) + ')'); if (!Numerical.isZero(scale.x - 1) || !Numerical.isZero(scale.y - 1)) parts.push('scale(' + formatter.point(scale) +')'); - if (angle) - parts.push('rotate(' + formatter.number(angle) + ')'); attrs.transform = parts.join(' '); } else { attrs.transform = 'matrix(' + matrix.getValues().join(',') + ')';