Jürg Lehni
|
aca9968164
|
Simplify Shape#_contains() code.
|
2013-10-29 21:09:11 +01:00 |
|
Jürg Lehni
|
4333334014
|
Simplify Shape#hitTest() code.
|
2013-10-29 21:06:58 +01:00 |
|
Jürg Lehni
|
6fba727600
|
Add DOCS comments.
|
2013-10-29 21:00:24 +01:00 |
|
Jürg Lehni
|
f8d960d834
|
option.tolerance should always be defined in _hitTest()
|
2013-10-29 21:00:17 +01:00 |
|
Jürg Lehni
|
ae4ddaeae5
|
Implement correct hit-tests for rounded rectangle Shape items.
|
2013-10-29 20:58:30 +01:00 |
|
Jürg Lehni
|
c43752dc3e
|
Use #hasFill() and #hasStroke() more broadly and avoid drawing strokes when strokeWidth is set to 0.
|
2013-10-29 20:05:39 +01:00 |
|
Jürg Lehni
|
94623f6d3f
|
Keep radius and size in sync in Path.Rectangle.
|
2013-10-29 19:42:33 +01:00 |
|
Jürg Lehni
|
b86b66d43d
|
Improve documentation.
|
2013-10-29 19:25:10 +01:00 |
|
Jürg Lehni
|
7f8d9d9e90
|
Support options.tolerance in Shape#hitTest()
|
2013-10-29 19:17:42 +01:00 |
|
Jürg Lehni
|
9d60662a28
|
Check for the occurrence of 'radius' rather than 'center' when deciding to read a center / radius pair for ellipses.
|
2013-10-29 18:53:55 +01:00 |
|
Jürg Lehni
|
c3aed5277d
|
Use center and radius in all ellipse code, rather than bounding rect.
Simplifies things.
|
2013-10-29 18:10:30 +01:00 |
|
Jürg Lehni
|
04286bc1e0
|
Fix issue with param.trackTransforms
We can only pop() if we push()
|
2013-10-29 17:56:43 +01:00 |
|
Jürg Lehni
|
b2188be567
|
Make sure _globalMatrix is not set to false values in Item#rasterize().
|
2013-10-29 17:37:45 +01:00 |
|
Jürg Lehni
|
d649b1bb21
|
Define insert argument for Path#toShape() and Shape#toPath()
|
2013-10-29 16:45:50 +01:00 |
|
Jürg Lehni
|
5a462f42b7
|
Improve some comments / docs.
|
2013-10-29 09:42:59 +01:00 |
|
Jürg Lehni
|
c579433b3d
|
Fix bug in Raster.onLoad()
It was executing in wrong scope on websites with multiple scopes.
|
2013-10-29 09:42:58 +01:00 |
|
Jürg Lehni
|
160fe25cd1
|
Improve documentation of #importSVG() methods.
|
2013-10-29 09:42:58 +01:00 |
|
Jürg Lehni
|
b4651a18c6
|
Implement #getItem() on Project and Item, similar to #getItems() but returning only the first match.
|
2013-10-19 13:02:53 +02:00 |
|
Jürg Lehni
|
1a645a1adb
|
Implement function callbacks for item matching.
|
2013-10-19 12:38:36 +02:00 |
|
Jürg Lehni
|
4fb6a5d949
|
Implement #getItems(match) on Project and Item as a simple and efficient query interface.
|
2013-10-19 12:27:13 +02:00 |
|
Jürg Lehni
|
0b7e128426
|
Only rely on _drawCount for drawing related things, and caching where it allows.
Project#selectedItems was out of sync until the next draw loop.
|
2013-10-18 21:52:22 +02:00 |
|
Jürg Lehni
|
1fc9f882ca
|
Fix a minor bug in CompoundPath#contains(), improve comments and clean up code.
|
2013-10-18 19:49:05 +02:00 |
|
Jürg Lehni
|
5d0fd8f970
|
Implement Style#windingRule and use it in Path#contains().
|
2013-10-18 14:54:13 +02:00 |
|
Jürg Lehni
|
73d2c34088
|
Implement item-level #equals() method and clean up other equals methods.
|
2013-10-17 13:08:54 +02:00 |
|
Jürg Lehni
|
9976033655
|
Implement serialization of selection.
|
2013-10-17 12:04:11 +02:00 |
|
Jürg Lehni
|
c2a34d9f1f
|
Implement an easier approach in serialization to handle the default value of leading.
|
2013-10-17 11:53:34 +02:00 |
|
Jürg Lehni
|
1eb6b49e8a
|
Allow serialization values to mark themselves as _default.
Solves unnecessarily serialized leading values.
|
2013-10-17 11:47:46 +02:00 |
|
Jürg Lehni
|
9956a6ff51
|
Implement Shape#toPath(), analogue to Path#toShape().
This way is much simpler though.
|
2013-10-16 23:44:50 +02:00 |
|
Jürg Lehni
|
c4c7a37993
|
Implement Path#toShape(), Segment#isColinear(), Segment#isOrthogonal() and Segment#isArc().
|
2013-10-16 23:10:03 +02:00 |
|
Jürg Lehni
|
be5a73a61d
|
SVG: Implement support for Shape.
|
2013-10-16 16:47:00 +02:00 |
|
Jürg Lehni
|
8ab6c61b0d
|
Rename Shape#type to Shape#shape, to avoid clash with Item#type.
|
2013-10-16 16:46:22 +02:00 |
|
Jürg Lehni
|
b581c84d8b
|
Move CompoundPath#reduce() to Item#reduce().
|
2013-10-16 16:10:28 +02:00 |
|
Jürg Lehni
|
9eb1c104da
|
Implement Shape#clone()
|
2013-10-16 15:04:50 +02:00 |
|
Jürg Lehni
|
b35296ef3e
|
Improve Shape.Ellipse to support center & radius parameters, and update documentation.
|
2013-10-16 15:04:37 +02:00 |
|
Jürg Lehni
|
c945bf7908
|
Docs: Various smaller clean ups.
|
2013-10-16 14:20:13 +02:00 |
|
Jürg Lehni
|
2263afea59
|
Start implementing rounded rectangles in Shape.Rectangle.
|
2013-10-14 19:57:28 +02:00 |
|
Jürg Lehni
|
a3d0e0d462
|
Clean up throw statements.
Never throw plain strings.
|
2013-10-14 16:05:50 +02:00 |
|
Jürg Lehni
|
b9ba2364fe
|
Move Shape#isEmpty() to right place.
|
2013-10-14 09:15:34 +02:00 |
|
Jürg Lehni
|
198305b75c
|
Remove doc comment since Item#isEmpty() is already documented, and move it to an inline comment.
|
2013-10-14 09:14:59 +02:00 |
|
Oliver Jones
|
df7f1fe874
|
Override default isEmpty method for Shape
Fixes (new Group([new Shape.Rectangle(...)])).bounds throwing ReferenceError when using Item's isEmpty
|
2013-10-12 19:28:45 +01:00 |
|
Jürg Lehni
|
c68a7d33da
|
Switch from options.browser and options.node to options.environment
|
2013-10-10 23:09:00 +02:00 |
|
Jürg Lehni
|
24e46bee60
|
Merge branch 'refs/heads/boolean-fix'
|
2013-10-08 20:50:47 +02:00 |
|
Jürg Lehni
|
367aa8ea28
|
Do not allow numeric values for Item#name.
Closes #298.
|
2013-10-08 20:38:16 +02:00 |
|
Jürg Lehni
|
921a68e4a2
|
Rename _removeFromNamed to _removeNamed.
|
2013-10-08 20:25:26 +02:00 |
|
Jürg Lehni
|
5f8c00fe8d
|
Start implementing Item#globalToLocal() and #localToGlobal()
|
2013-09-22 18:04:27 -07:00 |
|
Jürg Lehni
|
19c7788617
|
Fix documentation irregularities.
|
2013-08-23 19:45:28 -07:00 |
|
Jürg Lehni
|
40f2547e5f
|
Correctly detect image size on all browsers.
Closes #268.
|
2013-08-15 11:32:47 -07:00 |
|
Jürg Lehni
|
590c89840c
|
Merge Raster#setImage() and #setCanvas().
|
2013-08-14 12:29:56 -07:00 |
|
Jürg Lehni
|
cc565b3fe2
|
Rename Raster#getSubImage() to #getSubCanvas(), and use insert: false combined with #insertAbove() to correctly insert newly created rasters.
|
2013-08-14 12:21:47 -07:00 |
|
Jürg Lehni
|
5981ddf89f
|
Implement Raster#getSubRaster() and document both #getSubImage() and #getSubRaster().
|
2013-08-14 12:14:28 -07:00 |
|
Jürg Lehni
|
1a1c2674fd
|
Take Item#matrix into account when drawing gradients.
Closes #267.
|
2013-08-14 11:27:04 -07:00 |
|
Jürg Lehni
|
46f6261d38
|
Merge pull request #265 from duckmaestro/master
Fix to #263: _children undefined inside call to myShape.isEmpty().
|
2013-08-08 17:24:10 -07:00 |
|
Jürg Lehni
|
6b19f25f4b
|
Fix typos in comments.
|
2013-08-08 15:21:35 -07:00 |
|
Clifford Champion
|
2d3200c8d7
|
Fix to #263: _children undefined inside call to myShape.isEmpty().
|
2013-07-27 23:47:49 -07:00 |
|
Jürg Lehni
|
5e8ec2066b
|
Clean up comment.
|
2013-07-21 16:52:18 -07:00 |
|
Jürg Lehni
|
16735e23af
|
Simplify code for #insertAbove/Below(), by introducing a private helper.
Making overriding in Layer simpler.
|
2013-07-21 16:41:45 -07:00 |
|
Jürg Lehni
|
5e210c583a
|
Switch to returning items instead of booleans in #insertAbove/Below() and adjust documentation accordingly.
|
2013-07-21 16:29:13 -07:00 |
|
Jürg Lehni
|
edfb3a51ab
|
Improve documentation of insertion methods.
|
2013-07-21 16:26:16 -07:00 |
|
Jürg Lehni
|
e68563af53
|
Have #insertAbove/Below() return a boolean.
|
2013-07-21 16:26:03 -07:00 |
|
Jürg Lehni
|
e0809d26f2
|
Merge code for Item#insertAbove() / #insertBelow() and fix issue with wrong indices.
The previous code was faulty when item was not already in the children list.
|
2013-07-21 16:22:16 -07:00 |
|
Jürg Lehni
|
949752556b
|
Fix avoiding of name clashes in cloning.
|
2013-07-21 15:54:03 -07:00 |
|
Jürg Lehni
|
aa4d990c90
|
Move and unify handling of Item#_set(props) to new Item#_initialize(), and add support for props.insert = false.
|
2013-07-21 15:45:22 -07:00 |
|
Jürg Lehni
|
5e2654b490
|
Allow Item#_changed() to function before #_project is set.
|
2013-07-21 15:44:18 -07:00 |
|
Jürg Lehni
|
b7aea1e527
|
Use insert: false option in creation of all clones.
Still needs implementing in Item constructor.
|
2013-07-19 18:42:13 -07:00 |
|
Jürg Lehni
|
20a17f2939
|
Implement insert parameter in Item#clone() to control DOM insertion.
Defaults to true. Also insert in the right place now, above the original.
|
2013-07-19 18:27:00 -07:00 |
|
Jürg Lehni
|
588abe7189
|
Only test for fill in Item#_hitTest() if options.fill is set.
|
2013-07-19 17:55:31 -07:00 |
|
Jürg Lehni
|
f466473bfb
|
Add support for shadows.
Closes #36.
|
2013-07-19 17:48:29 -07:00 |
|
Jürg Lehni
|
94c192495a
|
Add support for canvas compositing modes to Item#blendMode.
Closes #159.
|
2013-07-19 15:23:16 -07:00 |
|
Jürg Lehni
|
175091a69f
|
Allow combinations of blendMode and opacity.
Closes #259.
|
2013-07-19 11:46:13 -07:00 |
|
Jürg Lehni
|
47768779b7
|
Fix blurriness in Item#rasterize().
Closes #258.
|
2013-07-18 20:06:22 -07:00 |
|
Jürg Lehni
|
affb44e0dd
|
Prevent double execution of onLoad event on Raster.
|
2013-07-03 19:02:29 -07:00 |
|
Jürg Lehni
|
e87307af41
|
Fix issue with Image.onLoad() events.
naturalWidth/Height seems unreliable.
|
2013-07-03 18:49:05 -07:00 |
|
Jürg Lehni
|
fdfb7abe58
|
Update exportSVG() documentation.
|
2013-06-27 18:14:51 -07:00 |
|
Jürg Lehni
|
09f04a597f
|
Write documentation for Shape constructors.
|
2013-06-27 18:04:02 -07:00 |
|
Jürg Lehni
|
41746d2d25
|
Docs: Write documentation for #import/export JSON/SVG, for both Item and Project.
|
2013-06-27 18:03:49 -07:00 |
|
Jürg Lehni
|
0c9914285f
|
Return Raster#size as a LinkedSize.
|
2013-06-27 16:06:11 -07:00 |
|
Jürg Lehni
|
9311b38894
|
Define Shape#size and #radius.
|
2013-06-27 16:05:44 -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
|
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
|
f56794bad4
|
Remove global variable leakage.
|
2013-06-24 04:52:13 -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
|
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
|
3d78e3729d
|
Fix issue with PaperScript and array[i++] expressions.
|
2013-06-18 18:18:39 -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
|
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
|
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
|
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
|
d6db007765
|
Fix documentation warning.
|
2013-06-13 15:57:12 -07:00 |
|
Jürg Lehni
|
ae474131cc
|
Implement stroke hittesting for Shape.Rectangle.
|
2013-06-13 10:40:54 -07:00 |
|