Jürg Lehni
214db84b84
Improve src/load.js to directly load the library through PrePro's load.js
2013-06-26 19:14:54 -07:00
Jürg Lehni
4e173a7d35
Switch to the NPM version of PrePro's load.js
2013-06-26 18:57:46 -07:00
Jürg Lehni
a908556956
Fix blend mode detection syntax.
2013-06-26 15:05:43 -07:00
Jürg Lehni
1126c699d2
Improve tests for native blend modes.
...
Each mode needs to be tested separately, since some browsers implement only a subset (WebKit).
2013-06-26 14:59:07 -07:00
Jürg Lehni
b8d773e129
Rename blendMode parameter to mode.
2013-06-26 14:37:41 -07:00
Jürg Lehni
6d38401f0c
Use faster direct Curve constructor instead of Base.create().
2013-06-25 09:58:18 -07:00
Jürg Lehni
9c5416360c
Use direct constructor instead of #initialize().
2013-06-25 09:56:34 -07:00
Jürg Lehni
52c889428b
Remove Curve.create() in favor of direct constructor.
2013-06-25 09:54:13 -07:00
Jürg Lehni
772c83596f
Replace Base.create() calls in favor of faster direct constructors.
2013-06-25 09:50:14 -07:00
Jürg Lehni
7e24de7c74
Replace SegmentPoint.create() in favor of normal constructor.
2013-06-25 09:48:51 -07:00
Jürg Lehni
3d5ae373a8
Remove static create() methods from LinkedPoint/Size/Rectangle, and give them initialize() methods instead that also name the classes in debugging.
2013-06-25 09:41:55 -07:00
Jürg Lehni
c6e50375df
Expose nativeBlendModes and amend BlendModes example with information about the use of native modes.
2013-06-24 15:55:15 -07:00
Jürg Lehni
1866e4ff15
Remove need for all special arguments in minification, and restructure code to avoid warnings.
2013-06-24 10:15:54 -07:00
Jürg Lehni
7975232ee7
Remove workaround for obscure WebKit bug.
...
It wasn't fully working either. Solution:
https://bugs.webkit.org/show_bug.cgi?id=109961
2013-06-24 09:37:25 -07:00
Jürg Lehni
b989892c24
Update copyright note about straps.js
2013-06-24 09:12:45 -07:00
Jürg Lehni
78a3e87ca1
Prevent separate View file in docs.
2013-06-24 09:10:26 -07:00
Jürg Lehni
f56794bad4
Remove global variable leakage.
2013-06-24 04:52:13 -07:00
Jürg Lehni
e6bed426d7
Make inclusion of PaperScript optional and build a core version of the library without it.
2013-06-24 04:49:45 -07:00
Jürg Lehni
eef736f3d8
Move define() statement to export.js and remove define hack in PaperScript.
2013-06-24 04:40:35 -07:00
Jürg Lehni
4b53d558f1
Refactor PaperScript code so it can be moved outside of main paper scope.
...
Allowing for better minifaction and the potential use of strict mode due to absence of with() statements inside the main paper scope.
2013-06-24 04:40:07 -07:00
Jürg Lehni
fa3f91a754
Move PaperScript.get/setAttribute() to PaperScope.
2013-06-24 04:23:34 -07:00
Jürg Lehni
75c1225d4f
Prevent overriding exported classes by inheriting classes with same _class value.
2013-06-24 04:22:43 -07:00
Jürg Lehni
a4535edbb9
Bring back _class names, since code minification breaks reliance on constructor.name.
...
Closes #248 .
2013-06-23 20:18:32 -07:00
Jürg Lehni
dff39dff78
Use local bounds for hit-testing.
...
Fixes issue #247 .
2013-06-23 19:49:36 -07:00
Jürg Lehni
9f7167a47f
Clean up Item#hitTest() code.
2013-06-23 19:01:48 -07:00
Jürg Lehni
58f697abfc
Fix hit-testing for guides.
2013-06-23 19:01:36 -07:00
Jürg Lehni
76426c4cb3
Take #visible state into account when hit-testing.
...
Closes #243 .
2013-06-23 17:55:14 -07:00
Jürg Lehni
1e81176cf1
Merge branch 'master' of github.com:paperjs/paper.js
2013-06-23 17:22:30 -07:00
Jürg Lehni
4b62949318
Fix tests for #246 .
...
This is actually the right behavior: Setting length to negative values should flip around defined vectors.
2013-06-23 17:22:13 -07:00
Chris Barmonde
68626ca62b
Fix project.clear() so it removes all layers properly.
2013-06-20 20:14:47 -06:00
Jürg Lehni
ca0513b1b2
Fix namespace for images in SVGExport.
2013-06-19 08:22:20 -07:00
Jürg Lehni
719b9d5e24
Move logic that determines if item can be directly composited into separate per-item #_canComposite() method.
2013-06-19 08:22:08 -07:00
Jürg Lehni
258c404b98
Move curvature calculations into Curve.evaluate(), and define unit tests for it.
2013-06-18 19:00:05 -07:00
Jürg Lehni
619a8f88f8
Clean up code a bit in Curve#getCurvatureAt().
2013-06-18 18:29:44 -07:00
Jürg Lehni
3d78e3729d
Fix issue with PaperScript and array[i++] expressions.
2013-06-18 18:18:39 -07:00
Jürg Lehni
4bda878f5f
Fix accidental code removal.
2013-06-18 17:35:49 -07:00
Jürg Lehni
2241329321
Fix id clash in SVGExport.
2013-06-18 17:29:00 -07:00
Jürg Lehni
742ae16de1
Add support for SVG mix-blend-mode attribute.
...
Browsers have yet to support it though.
2013-06-18 17:19:31 -07:00
Jürg Lehni
278a9771ba
Minor clean-ups.
2013-06-18 17:02:02 -07:00
Jürg Lehni
785381b148
No need to set default color anymore due to detection of CSS style changes on any level.
2013-06-18 16:59:47 -07:00
Jürg Lehni
30c96dc9c1
Remove access to _style since we're using getters / setters on items directly now for SVGStyles.
2013-06-18 16:58:28 -07:00
Jürg Lehni
6e91d2ac9b
Rearrange exporter sequence.
2013-06-18 16:57:09 -07:00
Jürg Lehni
7c1e10e35e
Move Item#opacity support to SVGStyles.
2013-06-18 16:54:48 -07:00
Jürg Lehni
938433c51f
Move Style#font support to SVGStyles.
2013-06-18 16:49:58 -07:00
Jürg Lehni
ad034fbb56
Allow for better minification.
2013-06-18 16:18:13 -07:00
Jürg Lehni
f48ef4d1a0
Move more styles to SVGStyles and make them work on export too.
...
SVGExport now supports text justification.
2013-06-18 16:14:47 -07:00
Jürg Lehni
b532390d9c
Remove Clip class again.
...
Group can handle that.
2013-06-18 15:58:58 -07:00
Jürg Lehni
177229f99f
Define Group#transformContent as a boolean to control #applyMatrix() behavior.
...
And use it for SVG Import.
2013-06-18 15:57:30 -07:00
Jürg Lehni
f758fb306b
Rename #_applyMatrix to #_transformContent.
...
And swap names with private function...
2013-06-18 15:50:11 -07:00
Jürg Lehni
d7d6da0af8
Pass right value for dontNotify.
2013-06-18 15:47:14 -07:00
Jürg Lehni
691b2f8094
Fix issues with SVG Import and matrices on groups.
2013-06-18 15:46:49 -07:00
Jürg Lehni
f433423789
Respect _applyMatrix setting when calling #applyMatrix() in Group#_changed.
...
Required for Clip to work correctly.
2013-06-18 15:39:46 -07:00
Jürg Lehni
9633384122
Fix issue with colliding id ranges in SVG Export.
2013-06-18 15:01:18 -07:00
Jürg Lehni
db49718015
No need for white-space in CSS color format.
2013-06-18 14:33:50 -07:00
Jürg Lehni
75acdf1025
Add support for direct drawing of native blendModes for items that allow it.
...
Bypassing compositing into separate canvases completely.
2013-06-18 14:18:57 -07:00
Jürg Lehni
ad6124cf98
Take strokeWidth into account in Item#hasStroke()
2013-06-18 14:08:48 -07:00
Jürg Lehni
f4f97cda88
Fix a bug with wrong offsets when rendering nested clips and blend-modes.
...
And streamline blend-mode and opacity rendering code.
2013-06-18 12:35:57 -07:00
Jürg Lehni
414ac1d092
Fix offset in direct blitting of nested Clip items.
2013-06-18 12:20:21 -07:00
Jürg Lehni
a2cc7e11b3
Clean up blend-mode code a bit.
2013-06-18 11:26:58 -07:00
Jürg Lehni
deebd15f05
Improve comments.
2013-06-18 11:19:56 -07:00
Jürg Lehni
c48ab03050
Add support for native blend-modes.
...
Already works on Firefox 21.0 and will soon land on other major browsers!
2013-06-18 11:17:15 -07:00
Jürg Lehni
8cf09c08d9
Merge branch 'master' of github.com:paperjs/paper.js
2013-06-18 08:02:22 -07:00
Jürg Lehni
b133d8fe2e
Restructure BlendMode code, fix issues with color-dodge and color-burn, and create BlendModes.html example.
...
All modes should be implemented according to specs now.
2013-06-18 08:02:04 -07:00
Jürg Lehni
1b42822c2d
Remove trailing comma.
2013-06-17 16:35:28 -07:00
Jürg Lehni
f350f34eb4
Apply clipping fix not only to blend modes but any operation that draws into a separate canvas.
2013-06-17 16:22:23 -07:00
Jürg Lehni
ab2bfe2d40
Rename nativeDash to dash.
2013-06-17 15:52:16 -07:00
Jürg Lehni
a51745447b
Restructure CanvasProvider code and call save() and restore() upon retrieval / release.
2013-06-17 15:24:57 -07:00
Jürg Lehni
d98a9f40cb
Correctly fix Line#length documentation.
2013-06-17 15:16:48 -07:00
hkrish
d4d2075040
Fix: Use absolute coordinates from #Curve.getValues() directly while calculating the curvature
2013-06-17 22:27:20 +05:30
Jürg Lehni
8a726f22b2
Clean up comments.
2013-06-17 08:57:30 -07:00
Jürg Lehni
b072df0486
Put isEnd value directly into conditional.
2013-06-17 08:56:42 -07:00
Jürg Lehni
ccd0bf8f6b
Simply delegate to Point#getLength() as we already have it.
2013-06-17 08:28:37 -07:00
Jürg Lehni
9463f0078a
Fix documentation since Line#vector will be documented as a simple accessor.
2013-06-17 08:28:02 -07:00
Jürg Lehni
18ad8a235d
Clean up code to follow Paper.js coding conventions.
2013-06-17 08:26:51 -07:00
Jürg Lehni
be6bbb802d
Move calculations of values to where they are needed.
2013-06-17 08:22:28 -07:00
Jürg Lehni
5ff990a84a
Fix global variable leakage, and join sequential variable definitions.
2013-06-17 08:10:57 -07:00
hkrish
2693516844
Implement correct method for calculating curvature on a Path
2013-06-17 15:16:11 +05:30
Jürg Lehni
f8367bb0dd
More clean-ups.
2013-06-15 05:24:34 -07:00
Jürg Lehni
79785afa2a
Minor clean-ups and optimizations of stroke hit-test code.
2013-06-15 05:21:17 -07:00
Jürg Lehni
8c09d19f7c
Fix wrong calculation of rough bounds for square caps.
...
And add some comments to stroke hit-testing code.
2013-06-15 05:15:48 -07:00
Jürg Lehni
26971672b2
Only check segments for miters that are within the limit.
2013-06-15 05:08:12 -07:00
Jürg Lehni
be1098e006
Further improve stroke hit-testing.
...
Properly detect all miter joins.
2013-06-15 05:06:09 -07:00
Jürg Lehni
d318057897
Implement Segment#getLocation()
2013-06-15 05:05:10 -07:00
Jürg Lehni
1cab9aad90
Improve stroke hit-testing.
2013-06-15 03:12:57 -07:00
Jürg Lehni
eb32bad57e
Fix imprecision in #getNearestLocation()
2013-06-15 03:12:29 -07:00
Jürg Lehni
38f832a888
Remove console.log()
2013-06-15 02:25:44 -07:00
Jürg Lehni
8b9fb3741d
Implement proper stroke hit-testing for all variations of joins and caps.
2013-06-15 02:24:59 -07:00
Jürg Lehni
e4ba0d80b6
Simple code improvement in #isClockwise().
2013-06-14 23:18:29 -07:00
Jürg Lehni
4ffcdc3971
Clean up code.
2013-06-14 23:13:54 -07:00
Jürg Lehni
1ae7832ab3
Move calculation of square joins and caps to static methods.
...
These will be of use when correctly implementing hit-testing of strokes.
2013-06-14 23:11:50 -07:00
Jürg Lehni
ca0e931498
Clean up and simplify getStrokeBounds() code.
...
Handling of bevel and miter joins can be merged nicely.
2013-06-14 22:57:14 -07:00
Jürg Lehni
1dee05900f
Move getArea code to other statics block.
2013-06-13 23:16:44 -07:00
Jürg Lehni
610e396d94
Make Curve#_getCrossings() a static method and have it work on curve values directly.
2013-06-13 23:16:00 -07:00
Jürg Lehni
d6db007765
Fix documentation warning.
2013-06-13 15:57:12 -07:00
Jürg Lehni
01e48b3322
Improve and clean up fat-line bug fix.
2013-06-13 15:53:28 -07:00
Jürg Lehni
38f31be6b2
Clean up and simplify Path#_hitTest() code.
2013-06-13 14:30:52 -07:00
Jürg Lehni
ae474131cc
Implement stroke hittesting for Shape.Rectangle.
2013-06-13 10:40:54 -07:00
Jürg Lehni
48fa889e0d
Start implementing proper hit-testing for Shapes with strokes.
...
Support for Shape.Rectangle is still missing.
2013-06-13 10:31:21 -07:00
Jürg Lehni
40dbe7ec74
Fix drawing of Shape.Ellipse items.
2013-06-13 10:30:54 -07:00
Jürg Lehni
d67ce8a103
Fix syntax.
2013-06-13 09:13:42 -07:00
Jürg Lehni
d87937dc03
Fix issue on IE occuring when nodes are removed from DOM.
2013-06-13 09:08:11 -07:00
Jürg Lehni
7f6ac3d8af
Changing HIERARCHY also changes GEOMETRY.
...
Fixes #237 .
2013-06-13 08:47:45 -07:00
Jürg Lehni
5250281ab1
Fully support object literal arguments in Shape constructors.
2013-06-12 20:13:39 -07:00
Jürg Lehni
95ecab8a6f
Improve handling of merged CompoundPath style through #getStyle().
...
Only access _style directly in core code if you really know what you're doing!
2013-06-12 20:12:08 -07:00
Jürg Lehni
33eb750586
Simplify Path#hasFill() and implement #hasStroke() as well.
2013-06-12 19:57:05 -07:00
Jürg Lehni
fe10c99d1b
Implement standard behavior of #_hitTest() for items without children, based on #_contains().
...
This should cover the minimum of what's needed for PointText.
2013-06-12 19:30:23 -07:00
Jürg Lehni
463a00bd1e
Fix negative bounds height on PointText.
2013-06-12 19:21:46 -07:00
Jürg Lehni
2196ef2a74
Streamline various #equals() methods.
2013-06-12 18:57:12 -07:00
Jürg Lehni
4a8469b740
Define Base.isPlainValue() and use it to implement more flexible #equals() for Color and Rectangle.
2013-06-12 18:55:14 -07:00
Jürg Lehni
294bfc9c9a
Improve IE Function#name fix and move it to straps.js, since constructor.name is used there too.
...
Cache result and improve RegExp.
2013-06-12 18:36:18 -07:00
Jürg Lehni
6fe60cff9d
Fix trailing comas.
2013-06-12 17:42:38 -07:00
Jürg Lehni
34ad9045cc
Fix wrong default fillColor on TextItems.
2013-06-12 17:30:35 -07:00
Jürg Lehni
cb0dcf1719
Fix accidental global leakage.
2013-06-12 17:27:20 -07:00
Jürg Lehni
d1932124d7
Implement #equals() in Point, Size and Rectangle without argument reading.
...
Closes #235
2013-06-12 15:28:29 -07:00
Jürg Lehni
1394c36907
Find an elegant way to implement all variations of Rectangle(object) constructors.
2013-06-12 15:08:22 -07:00
Jürg Lehni
7c5478cd93
Define first solution for correctly handling Rectangle(object) constructors.
...
Work in progress.
2013-06-12 14:57:47 -07:00
Jürg Lehni
b581f8b33e
Implement Style#selectedColor and Item#selectedColor as a way to control appearance of selections.
...
Closes #219 .
2013-06-12 14:17:34 -07:00
Jürg Lehni
9977ec5c28
Rename #toCss() to #toCSS()
2013-06-12 14:04:59 -07:00
Jürg Lehni
8c596927fb
Store _removeSets per project, not globally.
2013-06-12 13:50:05 -07:00
Jürg Lehni
f59882b757
Handle Tool._removeSets also when there is no corresponding event handler installed.
...
Closes #204 .
2013-06-12 13:46:14 -07:00
Jürg Lehni
f8c36b8276
Adopt Function#name regular expression to accommodate different scenarios of white-spaces.
2013-06-12 08:49:15 -07:00
Jürg Lehni
7a2f577b75
Implement Path#contains() correctly for open paths.
2013-06-12 00:35:34 -07:00
Jürg Lehni
f45a66d2ee
Filter out curves with zero length in Path#contains() algorithm.
...
Fixes #227
2013-06-12 00:19:54 -07:00
Jürg Lehni
3d99b5e931
Fix ADM support to avoid error messages.
2013-06-12 00:07:56 -07:00
Jürg Lehni
b99d54f8c3
Add support for AMD (e.g. require.js)
...
Fixes #223 .
2013-06-11 23:50:59 -07:00
Jürg Lehni
94e07e77f0
Redraw clipItem when drawing into separate canvas for blend-modes.
...
Closes #228 .
2013-06-11 20:41:20 -07:00
Jürg Lehni
20f7c567aa
Use Base objects for drawing params, so we can use param.extend() on them for easier overriding.
2013-06-11 20:40:44 -07:00
Jürg Lehni
a7750c3e67
Support null arguments in Point#equals().
2013-06-11 20:14:45 -07:00
Jürg Lehni
ce7d584c05
Revert readNull and clone parameter sequence in arguments reading code.
2013-06-11 19:49:35 -07:00
Jürg Lehni
2e565dcfce
Fix Function#name on browsers that don't support it.
...
Closes #236 .
2013-06-11 19:07:25 -07:00
Jürg Lehni
18383875eb
Fix global variable leakage.
2013-06-11 17:46:50 -07:00
Jürg Lehni
375156059d
Do not use pathData in JSON for CompoundPaths.
2013-06-11 15:27:04 -07:00
Jürg Lehni
03a7503789
Fix issue in getPathData() with closed CompoundPaths.
2013-06-11 15:26:44 -07:00
Jürg Lehni
f2bb5d07df
Let's not go too far with optimizations.
2013-06-11 15:10:02 -07:00
Jürg Lehni
875a766d19
Implement clipPath support in SVGExporter.
2013-06-11 14:50:13 -07:00
Jürg Lehni
35f17979df
Improve Node.js XMLSerializer workaround for lowercased tagNames.
2013-06-11 14:39:34 -07:00
Jürg Lehni
d41f79598e
Change exportDefinitions() to create an actual <defs> container for definitions.
2013-06-11 14:26:04 -07:00
Jürg Lehni
470cfae9f1
Clean up export code.
2013-06-11 14:15:54 -07:00
Jürg Lehni
a1cab3592b
No need to explicitly set fill to 'none' anymore since comparing style with parent handles this for us automatically now.
2013-06-11 14:15:43 -07:00
Jürg Lehni
72082bdcff
Fix new failing test.
2013-06-11 13:57:28 -07:00
Jürg Lehni
b4ff0d347e
Optimize SVG import for clipped groups.
2013-06-11 12:57:03 -07:00
Jürg Lehni
7faf2a9e70
Clean-up @hkrish's changes a bit.
2013-06-09 18:37:08 -07:00
hkrish
d8498b6418
Remove invalid code and unnecessary comments
2013-06-09 22:02:50 +05:30
hkrish
8758b232f4
Merge branch 'master' into fatline
...
* master:
Fix regression in importing SVG viewBox.
Minor code clean ups.
Properly fix exporting of classes into Base.exports.
Switch to HTML5 meta charset tags.
Fix issues with uglifyjs.
Include stats.js in distribution so all examples can work.
2013-06-09 18:08:31 +05:30
hkrish
ca2bfb8cab
Merge branch 'master' of https://github.com/paperjs/paper.js
...
* 'master' of https://github.com/paperjs/paper.js :
Fix regression in importing SVG viewBox.
2013-06-09 18:03:19 +05:30
Jürg Lehni
48651d5fb1
Fix regression in importing SVG viewBox.
2013-06-08 13:44:50 -07:00
hkrish
d6ed9890b8
Merge branch 'master' of https://github.com/paperjs/paper.js
...
* 'master' of https://github.com/paperjs/paper.js :
Minor code clean ups.
Properly fix exporting of classes into Base.exports.
Switch to HTML5 meta charset tags.
Fix issues with uglifyjs.
Include stats.js in distribution so all examples can work.
2013-06-08 23:26:45 +05:30
hkrish
d3405115c1
Use parameter on both curves in CurveLocation objects instead of Point in #getIntersection()
2013-06-08 21:37:43 +05:30
Jürg Lehni
75eddbcdba
Minor code clean ups.
2013-06-02 16:18:40 -07:00
Jürg Lehni
b896a98b1e
Properly fix exporting of classes into Base.exports.
2013-06-02 16:17:54 -07:00