Commit graph

3114 commits

Author SHA1 Message Date
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