Commit graph

844 commits

Author SHA1 Message Date
Jürg Lehni
4514c63ed4 Merge remote-tracking branch 'origin/master' 2011-12-18 21:30:22 +01:00
Jürg Lehni
e52d2a08b8 Use correct flags in _changed() call. 2011-12-18 16:56:18 +01:00
Jürg Lehni
554047ae38 Expose Item#_getCachedBounds and use it in PlacedSymbol for proper handling of nested matrices. 2011-12-18 16:55:56 +01:00
Jürg Lehni
d2b1c77686 No need to call #getDefinition() internally.
Use private value directly.
2011-12-18 16:55:24 +01:00
Jürg Lehni
9e5eb17264 Improve Item#transform() and implement #applyMatrix() to support nested matrices. Work in progress. 2011-12-18 16:54:21 +01:00
Jonathan Puckey
7fdb01cf77 More work on Item event handling documentation. 2011-12-07 12:45:04 +01:00
Jonathan Puckey
1414500f45 First version of documentation of Item event handlers and MouseEvent. 2011-12-01 11:57:10 +01:00
Jürg Lehni
6e5e54cfe6 Change sequence of position / bounds related properties. 2011-11-30 18:36:44 +01:00
Jürg Lehni
f895d3e6fb Fix recently introduced error in Item#setSelected(). 2011-11-30 18:28:11 +01:00
Jürg Lehni
a26bc87686 Implement support for Item#matrix in Item#draw(). 2011-11-30 18:19:23 +01:00
Jürg Lehni
a57070e4a3 Fix bounds caching issues on Group. 2011-11-30 18:18:51 +01:00
Jürg Lehni
a3ec184873 Add dontLink argument to Item#getPosition()
And use it to optimise up #setPosition().
2011-11-30 18:18:24 +01:00
Jürg Lehni
bb1d436281 Move creation of LinkedRectangle for 'bounds' to bounds accessor. 2011-11-30 17:20:29 +01:00
Jürg Lehni
3ece08bea1 Fix handling of recursion in Item#setSelected() / #setFullySelected(). 2011-11-30 17:16:52 +01:00
Jürg Lehni
cf4c2b4919 Move #matrix accessor from PlacedItem to Item. 2011-11-29 17:19:31 +01:00
Jürg Lehni
5ff3a07b31 Add comment about 1px rectangle in Raster#getAverageColor(). 2011-11-29 17:19:15 +01:00
Jürg Lehni
b5e46971f0 Replace new Size(x, y) calls with internal Size.create(x, y). 2011-11-29 17:11:15 +01:00
Jürg Lehni
26210fb95b Implement transforming of cached bounds again, if possible. 2011-11-28 23:20:47 +01:00
Jürg Lehni
cadc2e78ca We can directly access Item#_id.
No need to call Item#getId() internally.
2011-11-28 23:14:02 +01:00
Jürg Lehni
cb8c94ef7e Recursively call _clearBoundsCache
If the cache for an item's children is not valid anymore, that needs to propagate up the DOM tree.
2011-11-28 23:13:31 +01:00
Jürg Lehni
d3c83be3bb Correct execution sequence in getBounds so that the parent's _boundsCache is kept up to date even when the child is returning a cached result. 2011-11-28 22:59:25 +01:00
Jürg Lehni
e82deff4b9 Fix the drawing of PlacedSymbol bounds when selected. 2011-11-27 14:55:49 +00:00
Jürg Lehni
ac18786109 Implement bounds caching for all items, even groups and layers, using a smart structure keeping track of which items affect the cache, and automatically clearing it on changes without having to walk the DOM tree. 2011-11-27 13:48:15 +00:00
Jürg Lehni
b51cf064b0 Make baseItem to last optional parameter of _getBounds. 2011-11-26 11:55:19 +01:00
Jürg Lehni
a0ad81b576 Pass on the baseItem of a getBounds call, required to implement proper caching later. 2011-11-26 11:24:48 +01:00
Jürg Lehni
8729e9919f Use getBounds.call(item) to use this instead of item, since we're accessing it a lot. 2011-11-26 10:42:38 +01:00
Jürg Lehni
1fd9242fd8 Define private getBounds() function that handles matrix concatenation, bounds caching and calling of _getBounds, leading to further simplifications in PlacedItem. 2011-11-26 10:39:51 +01:00
Jürg Lehni
2605fadcfd Move bounds related code to a proper inejction scope, so we can declare private functions for caching. 2011-11-26 10:18:47 +01:00
Jürg Lehni
de4b5a0d87 Start implementing Item#matrix, work in progress. 2011-11-26 10:15:01 +01:00
Jürg Lehni
92066a6ecb Implement Item#_boundsType as a structure to control bounds handling and caching. 2011-11-24 16:03:05 +01:00
Jürg Lehni
a6b90dea35 Clean up Item documentation. 2011-11-24 16:02:34 +01:00
Jürg Lehni
44b6fe9f0d Fix documentation about bounds beans. 2011-11-24 15:46:06 +01:00
Jürg Lehni
310fbb260b Remove _boundsCache and replace it with easier _simpleBounds flag. 2011-11-24 15:44:26 +01:00
Jürg Lehni
067e0a954b Add comment about LinkedRectangle for 'bounds'. 2011-11-24 15:39:04 +01:00
Jürg Lehni
909b9040d5 Since we only use _createBounds in one place now we can inline it. 2011-11-24 15:38:08 +01:00
Jürg Lehni
569c415b2f Start implementing bounds caching the new way.
Work in progress still.
2011-11-24 15:37:44 +01:00
Jürg Lehni
ea87be166e Part one of big refactoring of bouding box handling. Functional, but caching is broken right now. 2011-11-24 15:13:21 +01:00
Jürg Lehni
d9777111dc No need for an injection scope as we can also just use Base.each() in combination with a side-car. 2011-11-24 14:54:04 +01:00
Jürg Lehni
1d6cfeeb9b Add dest and dontNotifty arguments to Matrix#_transformBounds() and use them where appropriate. 2011-11-24 11:29:35 +01:00
Jürg Lehni
8a53288b1e Add comment about upcoming changes relating to bounds. 2011-11-23 18:13:21 +01:00
Jürg Lehni
eb70c4de5d Directly pass matrix argument to _getBounds() instead of whole arguments array. 2011-11-20 18:51:34 +01:00
Jürg Lehni
b9f6c99dcd Add comments and clean up code. 2011-11-17 19:28:05 +01:00
Jürg Lehni
57bd659023 Move Item base mouse handling code to CanvasView. 2011-11-16 13:12:41 +01:00
Jürg Lehni
c8e1a9c959 Merge remote-tracking branch 'origin/master' 2011-11-12 23:57:39 +01:00
Jürg Lehni
e4586cfeeb Commit beginning of item based mouse events. So far only onMousedown / 'mousedown' is supported. 2011-11-12 23:57:25 +01:00
Jonathan Puckey
52385451f6 Resolve a few documentation todos. 2011-11-12 18:30:21 +01:00
Jürg Lehni
52ad906c97 Add support for onFrame handlers on Item. 2011-11-12 17:44:05 +01:00
Jürg Lehni
ea689faa43 Fix white space. 2011-11-12 15:50:53 +01:00
Jürg Lehni
07839cf683 Add comment about name being set again in addChild(). 2011-11-12 15:50:35 +01:00
Jürg Lehni
24f07dccec Clean up some JSDoc comments. 2011-11-12 13:27:29 +01:00
Jürg Lehni
b1332331b0 Simplify injection scope for removeOn* methods. 2011-11-12 13:22:45 +01:00
Jürg Lehni
3dfb4d3ae5 Make Item#removeOn() calls work with new event callback mechanism. 2011-11-11 20:41:09 +01:00
Jonathan Puckey
a96a92caba Add support for hit testing Raster items and getting the color of the pixel that was hit. 2011-11-11 15:00:53 +01:00
Jürg Lehni
af9df0e1b8 Provide point of hit handles and segments too in HitResult. 2011-11-11 14:47:03 +01:00
Jürg Lehni
1124236b8a Use inject() instead of a each() loop to add values to HitResult, so getters can be defined too (required for raster hit testing). 2011-11-11 13:11:10 +01:00
Jürg Lehni
42d0e722db Rename RGBColor -> RgbColor, to avoid clash with native constructor, and follow same naming convention for HsbColor and HslColor, but keep references to old names for PaperScript scopes for now. 2011-11-10 19:16:34 +01:00
Jonathan Puckey
eb34e058c0 Fix bug in Item#hitTest and Project#hitTest documentation. Closes #57 2011-11-10 15:14:49 +01:00
Jürg Lehni
6052e94a2a Add basic code for fine-grained change tracking, as required by on-the fly SVG DOM manipulation. 2011-09-22 10:32:17 +02:00
Jürg Lehni
936fd43c37 Implement Item#layer. 2011-09-18 10:38:16 +02:00
Jürg Lehni
ae116cd043 Improve comments about change notifications. 2011-08-23 16:36:57 +02:00
Jürg Lehni
79f351e5ee No need to check for _project as it will always bet set. 2011-08-23 16:35:19 +02:00
Jonathan Puckey
0ee1e80c68 Node.js: add Raster support. 2011-08-21 16:38:06 +02:00
Jonathan Puckey
e82a838085 Fix problem in Item#rasterize(resolution) where rasterizing the active layer caused the resulting Raster to be positioned wrongly. 2011-08-08 18:43:45 +02:00
Jürg Lehni
022de4d781 Some documentation fixes for v0.2 2011-08-01 14:25:46 +01:00
Jürg Lehni
31cc571e8a Docs: Hide matrix parameter in Item#hitTest() and add "options." in front of each options property. 2011-08-01 11:47:42 +01:00
Jürg Lehni
884ea96a29 Docs: Link HitResult back to #hitTest() functions. 2011-08-01 11:47:08 +01:00
Jonathan Puckey
e0650cae73 Document HitResult, Item#hitTest(point, options) and Project#hitTest(point, options). 2011-07-31 22:58:51 +02:00
Jürg Lehni
8eaeb7fb5e Remove filepp.pl as preprocessor and switch to our own Prepro.js, a simple preprocesssor for JavaScript that speaks JavaScript, written in JavaScript, allowing preprocessing to either happen at build time or compile time. 2011-07-26 10:09:31 +01:00
Jonathan Puckey
8e816f6bfc HitResult#getOptions: only have fill / stroke / segments options set to true if no options object was provided. 2011-07-15 14:52:38 +02:00
Jonathan Puckey
611d9e3af3 Item#hitTest: ignore top level layers when hit testing for bounds or center. 2011-07-15 13:00:40 +02:00
Jürg Lehni
077a83ca7c Fix documentation error. 2011-07-11 12:15:34 +02:00
Jürg Lehni
55f815cb72 Remove obsolete TODOs. 2011-07-09 17:12:13 +02:00
Jürg Lehni
615a1281e3 Remove obsolete TODO. 2011-07-09 17:03:10 +02:00
Jürg Lehni
5bac5189a4 Implement Item#fullySelected. 2011-07-09 17:02:58 +02:00
Jürg Lehni
ebd3bfc092 Introduce faster versions of Rectangle#contains() that do not perform checks. 2011-07-09 11:07:12 +02:00
Jürg Lehni
8e6adbc284 Fix documentation. 2011-07-09 09:28:49 +02:00
Jürg Lehni
f958b41d90 Don't filter for a type by default. 2011-07-09 09:28:36 +02:00
Jürg Lehni
b5d3cf2ad0 Add comment about missing documentation. 2011-07-08 23:32:50 +02:00
Jürg Lehni
2dfe4dfa19 Remove invalid comments. 2011-07-08 23:32:38 +02:00
Jürg Lehni
b1a2a626ad Separate type from name for 'bounds' hit-results. 2011-07-08 23:29:55 +02:00
Jürg Lehni
62ba983432 Implement hit-test options: center and bounds. 2011-07-08 23:26:50 +02:00
Jürg Lehni
c033a5a7bc Implement hit-test options: segments, handles and ends. 2011-07-08 23:26:21 +02:00
Jürg Lehni
9db96ae898 Perform point conversion along with HitResult.getOptions(). 2011-07-08 23:25:27 +02:00
Jürg Lehni
dfbe3135ad Remove HitResult inheritance from CurveLocation, but have a #location property pointing to it. 2011-07-08 22:25:42 +02:00
Jürg Lehni
a580b23f2a Reverse direction of child-looping in hit-tests, so items that get drawn last are tested first. 2011-07-08 21:15:16 +02:00
Jürg Lehni
1b3d4773a3 Optimise hit-testing by checking point to lie within #roughBounds + tolerance first. 2011-07-08 21:01:34 +02:00
Jürg Lehni
69a7d0bfd4 Implement a first version of Item#hitTest(), so far working only for Path items. Work in progress. 2011-07-07 22:14:58 +02:00
Jürg Lehni
de87c1f97a Define a bit of code that names all our class constructors based on the property name under which they were stored, and use that in Item#toString(). 2011-07-07 22:14:09 +02:00
Jürg Lehni
3bd6122e82 Begin adding support for guides. 2011-07-07 21:02:52 +02:00
Jürg Lehni
ced45c4e8f Add HSLColor to documentation. 2011-07-07 20:51:23 +02:00
Jürg Lehni
110cffc14c Improve comments for bounds functions. 2011-07-04 23:28:28 +02:00
Jürg Lehni
9499125b22 Link Item <-> Symbol#definition <-> PlacedItem and make sure changed events get sent across the whole chain. 2011-07-04 21:27:42 +02:00
Jürg Lehni
1ed6d46ce3 Define Item ids immediately, not on first request. 2011-07-04 20:19:37 +02:00
Jürg Lehni
bfa774f717 Move private bounds methods above the actual beans definitions. 2011-07-04 19:53:29 +02:00
Jürg Lehni
45a3e7f873 Big refactoring of the way bounds are handled and cached, properly supporting Groups inside Symbols, and also adding #roughBounds, to be used by upcoming hit testing code. 2011-07-04 19:45:53 +02:00
Jürg Lehni
10b0062ce2 Minor fixes and clean ups. 2011-07-04 11:54:52 +02:00
Jürg Lehni
7e26a7af1e Rename all x-axis / y-axis parameters in #scale and #shear to hor / ver, and fix a bug in Matrix#shear, where an undeclared variable was used (sx instead of shx). 2011-07-01 18:00:16 +02:00
Jürg Lehni
aa9be1d9c5 Rename #controlBounds -> #handleBounds, to reflect terminology used elsewhere. 2011-07-01 17:23:10 +02:00
Jürg Lehni
9fa51a0457 Implement Item#controlBounds and Path#controlBounds, and test it in StrokeBounds example. This is a first step towards fast hit-testing. 2011-07-01 12:51:18 +02:00
Jürg Lehni
79c0ad8cc5 Update copyright notices. 2011-07-01 12:17:45 +02:00
Jürg Lehni
d95480bc22 Remove trailing white spaces. 2011-07-01 12:01:32 +02:00
Jürg Lehni
609f23c64d Make PlacedItem#matrix private and add getter / setter for it. 2011-07-01 11:32:09 +02:00
Jürg Lehni
1cd7165ea2 Define PlacedItem as base class for Raster and PlacedSymbol. 2011-07-01 11:26:51 +02:00
Richard D. Worth
ac39873693 Whitespace. Removed all trailing whitespace from .js files 2011-06-30 06:01:51 -04:00
Jürg Lehni
4c6e152748 Move Item#setBounds() close to #getBounds() and document #_getBounds(). 2011-06-30 08:53:57 +02:00
Jürg Lehni
cca562efc0 Prepare Item#_getBounds() for #controlBounds. 2011-06-30 08:51:53 +02:00
Jürg Lehni
7cd749e63d Change all documentation to new convention of defining @class outside injection scope, fix some comments and a few errors with examples. 2011-06-22 23:56:05 +01:00
Jonathan Puckey
a17dc4171a Fix bug where cloned items that were selected weren't appearing in the Project#selectedItems array. 2011-06-21 01:52:44 +02:00
Jürg Lehni
3aff54517e Add support for ChangeFlag notifications to Raster. 2011-06-20 20:13:24 +01:00
Jürg Lehni
ea9eacf578 Fix value of ChangeFlag.CLIPPING 2011-06-20 20:07:04 +01:00
Jürg Lehni
4c20b1ef3d Support rotations by multiples of 90 degrees too, as they can be applied correctly to rectangles. 2011-06-20 19:52:22 +01:00
Jürg Lehni
5e524a478e We need to process _bounds and _position outside of _transform() handling, since items without _transform() can still have cached values, e.g. Group. 2011-06-20 19:33:34 +01:00
Jürg Lehni
22736dc72d Clean up code. 2011-06-20 19:32:42 +01:00
Jürg Lehni
bc567f4d29 Improve shear() parameter naming. 2011-06-20 19:20:51 +01:00
Jürg Lehni
5e39e60d51 Fix typo. 2011-06-20 18:34:51 +01:00
Jürg Lehni
5b85d78faa Use Matrix#getRotation() to decide if we can transform cached _bounds and _position for perforamce improvements. 2011-06-20 18:25:49 +01:00
Jürg Lehni
37f5a64dce Improve _bounds handling by introducing Item#_createBounds() that always uses LinkedRectangle class. 2011-06-20 17:34:43 +01:00
Jürg Lehni
8b66c4fa83 Remove flags parameter in Item#transform() for now. 2011-06-20 17:03:43 +01:00
Jürg Lehni
4e3aa3e5c5 Move all Style classes into their own folder. 2011-06-20 16:38:01 +01:00
Jürg Lehni
456bf7f2a9 Move more getter / setter injection functionality from PathStyle to Style, to be shared among all Style classes. 2011-06-20 15:21:42 +01:00
Jürg Lehni
a7e57ada88 Big refactoring of the way Style objects are linked to their owning classes, implemented in a way that works across all sub classes. 2011-06-20 14:58:48 +01:00
Jürg Lehni
a45340d20f Revert previous change since arguments.length is wrong when parameters are undefined when using Function#call. 2011-06-20 14:37:09 +01:00
Jürg Lehni
5ce49e6f8f Merge remote-tracking branch 'origin/master' 2011-06-20 14:26:05 +01:00
Jürg Lehni
2c68e7e58f Use faster Function#call() when arguments are clear. 2011-06-20 14:25:27 +01:00
Jonathan Puckey
e23282fe05 Documentation: convert Array return types to Type[]. 2011-06-20 15:19:08 +02:00
Jürg Lehni
55724b0e29 Move defaults handling fully to Style base class. 2011-06-20 14:10:37 +01:00
Jürg Lehni
f064886c67 Introduce Style as a base class for all Style classes, and move the definition of create() there. 2011-06-20 13:56:49 +01:00
Jürg Lehni
3a232b305e Implement _changed() mechanism in Color, by having Colors know which items they are defining styles for, through an internal _owners list. 2011-06-20 00:00:02 +01:00
Jürg Lehni
af0e5a07b7 Add getter/setter for TextItem#content and use Change.CONTENT to notify of changes. 2011-06-19 23:28:41 +01:00
Jürg Lehni
596cc8f83b Implement #_needsRedraw() mechanism in PaperScope and Project, to notify Views of redraws required by changes in appearance. 2011-06-19 23:03:18 +01:00
Jürg Lehni
7a90f9260e Have subclasses of Item call the base version of _changed(). 2011-06-19 22:40:49 +01:00
Jürg Lehni
a50f6a23ac Add comment. 2011-06-19 22:36:41 +01:00
Jürg Lehni
2b63aefc09 Add ChangeFlag.CLIPPING and use it for proper clip mask caching in Group. 2011-06-19 22:36:04 +01:00
Jürg Lehni
0df909dd71 Rename ChangeFlags -> ChangeFlag. 2011-06-19 22:21:14 +01:00
Jürg Lehni
f0bc3f115b Have all visual changes include ChangeFlags.APPEARANCE. 2011-06-19 22:20:28 +01:00
Jürg Lehni
bfe229ae14 Use #addChildren() instead of #setChildren() in Group constructor. 2011-06-19 22:05:31 +01:00
Jürg Lehni
2594a41b7d Remove the mention of optional parameters in documentation, as they are marked optional already. 2011-06-19 21:52:52 +01:00
Jürg Lehni
1e436b2980 Use typed array in documentation. 2011-06-19 21:50:10 +01:00
Jürg Lehni
cb61e8d452 Implement rest of ChangeFlags.HIERARCHY notifications. 2011-06-19 21:49:26 +01:00
Jürg Lehni
fe7c618deb Define Item#addChildren() / #insertChildren() and adjust documentation a bit. 2011-06-19 21:48:36 +01:00
Jürg Lehni
bf627d9d9c Remove all beans: true settings. 2011-06-19 18:54:41 +01:00
Jürg Lehni
7d2f10f22b Rename private move() -> insert(), to reflect recent name changes. 2011-06-19 18:50:23 +01:00
Jürg Lehni
bbcec27031 Move support for _bounds caching to Item and start using it in PlacedSymbol. 2011-06-19 18:07:53 +01:00
Jürg Lehni
7ca9bcf38a Further shorten #_getBounds() code. 2011-06-19 17:47:20 +01:00
Jürg Lehni
82ef06212b Shorten #_getBounds() code. 2011-06-19 17:46:39 +01:00
Jürg Lehni
f474bd9085 No need to redefine deprecated #moveAbove()/Below(), since they're redirecting to #insertAbove()/Below(). 2011-06-19 17:33:28 +01:00
Jürg Lehni
812d3fb366 Rename #_removeFromParent() -> #_remove(). 2011-06-19 17:32:43 +01:00
Jürg Lehni
4eb6d78f1f Have #_removeFromParent() handle deselection and change notification. 2011-06-19 17:30:47 +01:00
Jürg Lehni
9d2f8c5035 Only call _changed() if selection actually changes. 2011-06-19 16:47:24 +01:00
Jürg Lehni
2fe274741a Assume that _index is always correct and do not check for Base.splice() result in remove functions. 2011-06-19 16:08:51 +01:00
Jonathan Puckey
d13e9bbaa1 Replace accidental beans access in Item#setBounds with corresponding getters. 2011-06-19 03:28:27 +02:00
Jonathan Puckey
7285d6fc85 Implement Item#fitBounds(rectangle, fill), which transforms the item so that its bounding rectangle fits within the specified rectangle, without changing its aspect ratio. 2011-06-19 03:26:51 +02:00
Jonathan Puckey
c5f3e98abb Item: remove trailing comma. 2011-06-19 01:40:34 +02:00
Jonathan Puckey
eecebdb831 Item: fix problem with #children docs. 2011-06-18 17:40:50 +02:00
Jonathan Puckey
f26a9a2327 Item: document #dashArray & #dashOffset. 2011-06-17 21:04:32 +02:00
Jonathan Puckey
6f41aaf217 PathStyle: document #dashOffset & #dashArray. 2011-06-17 20:55:12 +02:00
Jürg Lehni
ca16e43c1f Implement getters / setters for #locked, #visible, #blendMode and #opacity, and call _changed() from setters. 2011-06-17 18:53:34 +01:00
Jürg Lehni
3226147e00 Use a version of Bootstrap that always produces beans and remove all beans: true instructions. 2011-06-17 18:42:29 +01:00
Jürg Lehni
7bd571de17 Remove obsolete comment. 2011-06-17 18:09:15 +01:00
Jürg Lehni
b4f052a64b Improve Item documentation. 2011-06-17 18:04:00 +01:00
Jürg Lehni
5d13d3a40d Add from/to parameters to Item#removeChildren() and improve documentation. 2011-06-17 17:55:30 +01:00
Jürg Lehni
ee0446fa4f Implement #insertAbove/Below using the new #insertChild, allowing the removal of one injection scope, and rearrange function sequence for documentation. 2011-06-17 17:35:26 +01:00
Jürg Lehni
85c5e2a7eb Item#insertChild(): Only remove from parent if we're actually inserting the item in the new location. 2011-06-17 16:56:04 +01:00
Jürg Lehni
6f4a9d5c7b Merge branch 'master' of github.com:scriptographer/paper.js
Conflicts:
	test/tests/Item.js
2011-06-17 16:36:58 +01:00
Jürg Lehni
f0664f50e6 Start implementing ChangeFlags.ATTRIBUTE and ChangeFlags.APPEARANCE. 2011-06-17 16:34:01 +01:00
Jürg Lehni
38de43c612 Fix issue with #setName() introduced in recent commit. 2011-06-17 16:32:47 +01:00
Jonathan Puckey
ea9c9353e3 Merge branch 'master' of https://github.com/scriptographer/paper.js 2011-06-17 16:59:42 +02:00
Jonathan Puckey
e6ac8af3aa Improve Item#children documentation. 2011-06-17 16:59:24 +02:00
Jonathan Puckey
6fc08c6417 Item: implement #addChild(item), #insertChild(index, item), #insertAbove(item) and #insertBelow(item) Deprecate: #moveAbove, #moveBelow, #appendTop, #appendBottom. 2011-06-17 16:58:41 +02:00
Jürg Lehni
503a031bdf Allow CompoundPath to have named children. 2011-06-17 14:11:37 +01:00
Jürg Lehni
87df7eb1f9 Change handling of clipping by always drawing clip-masks first, no matter where they are in the sequence. 2011-06-17 14:05:37 +01:00
Jürg Lehni
f4d15200ee Remove Group#_clipped and solely use Item#_clipMask to handle clipping internally. 2011-06-17 13:56:02 +01:00
Jürg Lehni
30087d046a Fix a bug where after renaming items, old name references where still laying around. 2011-06-17 13:29:47 +01:00
Jürg Lehni
cb463b74f5 Fix @extends tags in documentation: Only the immediately following class is required. 2011-06-16 21:43:31 +01:00
Jürg Lehni
38003b6818 Clean up documentation: Always use @function / @name when there is more than one version of a method. 2011-06-16 19:26:50 +01:00
Jürg Lehni
ffa79f4fd1 Clean up white spaces in comments. 2011-06-14 22:59:45 +01:00
Jürg Lehni
a32b687bfd Bigger refactoring of handling of segment selection: Have Path#_selectedSegmentState be the summed up value of all Segment's states, and compare it to segments.length * SelectionState.POINT in #fullySelected. 2011-06-14 15:37:25 +01:00
Jürg Lehni
e670c262c3 Simplify code. 2011-06-14 15:36:01 +01:00
Jürg Lehni
c4b3d1c82a Define default value for Item#_selected and copy it over when item is cloned. 2011-06-14 15:35:39 +01:00
Jürg Lehni
2679d6eb9e Clean up Item#selected code. 2011-06-14 13:31:03 +01:00
Jonathan Puckey
41feaebb4e Fix Group clipping and ignore Item#clipMask in the documentation for now. 2011-06-14 12:15:46 +02:00
Jonathan Puckey
10de921a83 Docs: Use classexample tags in Point, Size and Rectangle. 2011-06-13 17:12:23 +02:00
Jonathan Puckey
94fa73bf2f Documentation: improve wording in Item#clone() example. 2011-06-10 13:34:58 +02:00
Jonathan Puckey
344034cb62 Documentation: clean up Item#blendMode types. 2011-06-10 13:34:20 +02:00
Jürg Lehni
0567d0a5f9 Documentation: Fix typo. 2011-06-08 18:47:34 +01:00
Jürg Lehni
5fa43efb79 Merge remote-tracking branch 'origin/master' 2011-06-04 16:08:52 +01:00
Jürg Lehni
e5290c3f47 More work on Path#draw(). 2011-06-04 15:28:06 +01:00
Jonathan Puckey
a96b272f7a Documentation edits. 2011-06-04 15:50:29 +02:00
Jonathan Puckey
7abdce4f9c Implement Symbol#place(position) 2011-06-03 22:25:37 +02:00
Jonathan Puckey
96ac41e5c5 Item & PathStyle: implement paperscript examples. 2011-06-03 18:45:01 +02:00
Jonathan Puckey
e273a048cd Group docs: change the height of the constructor example. 2011-06-03 18:44:22 +02:00
Jonathan Puckey
730572b118 Improve Item examples. 2011-06-03 15:34:10 +02:00
Jonathan Puckey
e9260562f2 Improve Group example code. 2011-06-03 14:25:25 +02:00
Jürg Lehni
3ef55b2b4e No need for variable chaining here. 2011-06-03 10:59:20 +01:00
Jürg Lehni
4e5e3c9bfd Instead of cloning each value that is set on PathStyle, just clone values in #initialize() / #setStyle(). 2011-06-03 08:27:49 +01:00
Jürg Lehni
02b6db1c7e Do not cache the value returned by Item#position directly, but the bounds' center that is used to create it. 2011-06-03 00:04:02 +01:00
Jonathan Puckey
5c88bdfac9 PlacedSymbol docs: use splitpane for constructor example. 2011-06-02 20:56:08 +02:00
Jonathan Puckey
5cede5f6ed Update Item#blendMode documentation. 2011-06-02 15:00:16 +02:00
Jonathan Puckey
018ac46e87 Small improvement to Item#strokeCap docs. 2011-06-02 14:17:47 +02:00
Jonathan Puckey
4d0db25e51 Item & PathStyle: improve documentation. 2011-06-02 13:58:56 +02:00
Jonathan Puckey
0e6811f022 Item: document and add examples to the different removeOn functions. 2011-06-02 13:32:00 +02:00
Jonathan Puckey
371428b9ee Item docs: improve #scale examples. 2011-06-02 12:59:30 +02:00
Jürg Lehni
09e3010ed5 Merge remote-tracking branch 'origin/master' 2011-06-01 20:32:54 +01:00
Jürg Lehni
7de0859a85 Clean up comments. 2011-06-01 20:21:41 +01:00
Jonathan Puckey
884446f606 Merge remote branch 'origin/master' 2011-06-01 19:49:57 +02:00
Jürg Lehni
29967153c3 Clean up TODO comments... 2011-06-01 10:49:43 +01:00
Jonathan Puckey
932527ee5c Improve Item's path style documentation. 2011-05-31 16:48:48 +02:00
Jonathan Puckey
2b8f1b71ec Documentation: use inline code tags for boolean and number values, 2011-05-31 14:28:42 +02:00
Jonathan Puckey
2e2b7cad24 PlacedSymbol docs: make constructor argument optional. 2011-05-30 20:09:46 +02:00
Jonathan Puckey
6892608ecd Documentation: rename 'Sample Code:' to 'Example:' 2011-05-30 19:55:40 +02:00
Jonathan Puckey
17fcb923ff Documentation: rearrange @example tags, improve examples, rename boolean -> Boolean and misc smaller edits. 2011-05-30 19:42:17 +02:00
Jürg Lehni
1e9f2dc057 Fix typos. 2011-05-30 15:17:44 +01:00
Jürg Lehni
15da2fe257 Implement Item#isAbove / #isBelow and define tests for it. 2011-05-29 19:54:43 +01:00
Jürg Lehni
ba42295942 Change variable name in #isEditable() to reflect what's being checked more correctly. 2011-05-29 19:22:59 +01:00
Jürg Lehni
9d00541987 Clean up PORT comments. 2011-05-29 19:20:10 +01:00
Jonathan Puckey
b3eca3895d Documentation: remove dashArray / dashOffset from Item & PathStyle, since they are not implemented yet. 2011-05-29 14:51:07 +02:00
Jonathan Puckey
418aee0792 Document options of strokeCap / strokeJoin for Item and PathStyle. 2011-05-29 14:49:51 +02:00
Jürg Lehni
3c2977287a Simplify Item#isAncestor() by formulating it as the reverse of Item#isDescendant(). 2011-05-28 21:09:03 +01:00
Jürg Lehni
6aac2b3e67 Fix Item#isChild(item). 2011-05-28 21:06:30 +01:00
Jonathan Puckey
cd76c8c0e1 Documentation: remove ^n from method names, since this isn't necessary anymore. 2011-05-28 02:18:10 +02:00
Jonathan Puckey
1520cad144 Documentation: capitalize basic types in @ tags. 2011-05-27 21:21:49 +02:00
Jonathan Puckey
8e84c79aa6 Documentation: capitalize 'string' and 'number' types. 2011-05-27 20:15:15 +02:00
Jonathan Puckey
82bc6fc796 Documentation: change return type of PathStyle#dashOffset & Item#dashOffset to number. 2011-05-27 20:08:06 +02:00
Jonathan Puckey
b3617cdab6 Documentation: add PathStyle properties to Item. 2011-05-27 20:05:51 +02:00
Jonathan Puckey
4015b022ad Docs: use @true tag in boolean return descriptions and add Key.isDown param options. 2011-05-27 18:43:27 +02:00
Jonathan Puckey
ca3230c1ad Documentation: reorder functions, add group titles and todos. 2011-05-27 13:28:13 +02:00
Jürg Lehni
397d3676ed Merge remote-tracking branch 'origin/master' 2011-05-26 21:00:05 +01:00
Jonathan Puckey
6b611add37 More documentation edits and function reordering. 2011-05-26 20:09:25 +02:00
Jürg Lehni
ddf3670952 Fix / remove some comments. 2011-05-26 12:04:47 +01:00
Jürg Lehni
baf519a841 Remove unsupported style properties for now. 2011-05-26 12:04:30 +01:00
Jonathan Puckey
93b06f3acb Add PlacedSymbol documentation. 2011-05-23 19:48:48 +02:00
Jonathan Puckey
08f6f94fb6 Clean up whitespace in Item documentation. 2011-05-23 17:10:12 +02:00
Jonathan Puckey
dc66049312 Documentation: small adjustment to Item#clone 2011-05-23 17:07:35 +02:00
Jonathan Puckey
d0ecd6a4ad Layer: small edit to constructor docs. 2011-05-23 17:02:22 +02:00
Jonathan Puckey
59af5343b5 Add Layer documentation. 2011-05-23 17:00:37 +02:00
Jonathan Puckey
872fbe1574 Document some more Raster functions. 2011-05-23 16:19:37 +02:00
Jonathan Puckey
04e34128ae Fix Raster#visible default value. 2011-05-23 16:18:59 +02:00
Jonathan Puckey
53d7a1e914 Add Raster documentation. 2011-05-23 16:09:04 +02:00
Jonathan Puckey
3d1317cece Item docs: change order of removeOn documentation. 2011-05-23 13:47:21 +02:00
Jonathan Puckey
c4f53cf297 Group documentation. 2011-05-23 13:37:13 +02:00
Jonathan Puckey
211635f206 Cleanup last commit. 2011-05-23 04:20:11 +02:00
Jonathan Puckey
987ac5b8f7 Adjust PathStyle constructor documentation. 2011-05-23 03:47:39 +02:00
Jonathan Puckey
c3246a969c PathStyle documentation: rename Document to Project. 2011-05-23 03:43:49 +02:00
Jonathan Puckey
548a2983fb Add PathStyle documentation. 2011-05-23 03:41:20 +02:00
Jonathan Puckey
8522a4485e Add documentation for Item. 2011-05-22 23:39:54 +02:00
Jonathan Puckey
572b62590e Fix Raster#clone. 2011-05-21 18:02:09 +02:00
Jürg Lehni
816424a9c5 Merge remote-tracking branch 'origin/master'
Conflicts:
	test/lib/helpers.js
2011-05-21 14:41:08 +01:00
Jürg Lehni
b3281806a3 No need to check if _style is defined now since even Layer (ineriting from Group) now has a style. 2011-05-21 14:29:00 +01:00
Jürg Lehni
a51957bf64 Change PathStyle to clone values in setters if they provide a clone function. This requires also using equals() wherevere they are checked to be the same or different. 2011-05-21 14:28:08 +01:00
Jonathan Puckey
73a2f0f256 Implement Raster#clone. 2011-05-21 12:50:02 +02:00
Jürg Lehni
b461368b18 Found a clean way for Layer#initialize() to call this.base() too, without implicitely calling paper.project.activeLayer.appendTop. 2011-05-21 01:05:22 +01:00
Jonathan Puckey
fc3833f150 Fix PlacedSymbol#clone(). 2011-05-20 19:41:53 +02:00
Jonathan Puckey
013fe56ea4 Item#_clone: check if the item has a _pathStyle property before copying it. 2011-05-20 19:35:26 +02:00
Jürg Lehni
be63d2cf07 Remove empty line. 2011-05-20 14:04:35 +01:00
Jürg Lehni
5713bc07f2 Define PlacedSymbol#clone(), needs testing. 2011-05-20 08:55:35 +01:00
Jürg Lehni
87d340e525 Introduce private Item#_clone(copy), so subclasses can override the way the copy is actually produced, e.g. providing parameters to the constructor. 2011-05-20 08:50:09 +01:00
Jürg Lehni
1c479f315e Add some comments to Item#clone(). 2011-05-19 22:09:51 +01:00
Jürg Lehni
276eb3301e Define scafold #clone() function for the classes that still required a proper definition. 2011-05-19 21:56:49 +01:00
Jürg Lehni
7401e42316 Implement #clone() for Item, Group and Path. Needs testing. 2011-05-19 21:56:23 +01:00
Jürg Lehni
b52abbfbc1 Replace removed 'hidden' property with 'visible'. 2011-05-19 21:55:51 +01:00
Jürg Lehni
57b194e047 Add explaining comments to Raster#getAverageColor() code. 2011-05-19 18:51:13 +01:00
Jürg Lehni
e8d4a16ab2 Shorten Raster#getAverageColor(). 2011-05-19 18:47:49 +01:00
Jürg Lehni
b103af4216 Merge remote-tracking branch 'origin/master' 2011-05-19 18:35:45 +01:00
Jürg Lehni
09612c4623 Remove the versions of #clone() that follow the scheme provided by Base#clone() now. 2011-05-19 18:35:38 +01:00
Jonathan Puckey
f965e53a06 Optimize Path#getAverageColor 2011-05-19 15:43:23 +02:00
Jonathan Puckey
241d98a1cf Merge remote branch 'origin/master' 2011-05-18 16:01:36 +02:00
Jonathan Puckey
8810563a8f Improve Raster#getAverageColor. 2011-05-18 16:00:55 +02:00
Jürg Lehni
26269d394a Rename project/ProjectView -> ui/View. 2011-05-17 13:29:07 +01:00
Jürg Lehni
e5f8ee0464 Write comment about calling base() from Layer#initialize(). 2011-05-17 13:14:23 +01:00
Jürg Lehni
515dbbb151 Fix error in Item#removeChildren(). 2011-05-17 13:09:10 +01:00
Jürg Lehni
889b1687f9 Use #setChildren() in Group constructor and allow passing of children both as arguments and inside an array. 2011-05-16 20:16:27 +01:00
Jürg Lehni
baf35ea18c Rename parameter. 2011-05-16 20:15:16 +01:00
Jürg Lehni
8a449b0e76 Remove deprecated Item#appendChild(). 2011-05-16 20:14:49 +01:00
Jürg Lehni
f12ed7234a Shorten code. 2011-05-16 19:44:46 +01:00
Jürg Lehni
97c4435d87 Fix typo. 2011-05-16 19:35:42 +01:00
Jürg Lehni
d535a1f6fc Clean up method sequence in Item. 2011-05-16 19:35:09 +01:00
Jürg Lehni
75b0fa3596 Add Item#removeChildren() and #setChildren(). 2011-05-16 19:34:57 +01:00
Jürg Lehni
c4203fe174 Change the way associated PathStyles are created and updated. 2011-05-16 19:21:36 +01:00
Jürg Lehni
05c0eb0e51 Simplify PathStyle#initialize(). 2011-05-16 19:20:32 +01:00
Jürg Lehni
da670b4171 Improve comments. 2011-05-16 18:29:53 +01:00
Jürg Lehni
cfe968d30e Rename Document -> Project, DocumentView -> ProjectView, paper.document -> paper.project and paper.documents -> paper.projects, to avoid name clashing with window.document. 2011-05-16 13:33:15 +01:00
Jürg Lehni
f545805786 Move Rectangle#transformCornerCoordinates() to Matrix#_transformCorners(). 2011-05-16 12:29:52 +01:00
Jürg Lehni
fc547793fa Remove redundant Rectangle#transformBounds() and merge its code with less optimised Matrix#transformBounds(). 2011-05-16 12:25:18 +01:00
Jürg Lehni
fc776f03eb Add Rectangle#transformCornerCoordinates() and use it in Item.drawSelectedBounds(). 2011-05-16 11:25:39 +01:00
Jürg Lehni
f0b29e0e4d Make Item#position a LinkedPoint and change the way it's transformed in #transform(). 2011-05-16 11:19:19 +01:00
Jürg Lehni
3a15360efc Rename ChangeFlags.PATH to GEOMETRY. 2011-05-16 00:01:06 +01:00
Jürg Lehni
0dc2241a9c No need to set _index to null since Base.splice() handles that for us. 2011-05-15 21:42:31 +01:00
Jürg Lehni
ef0347a6bc Fix accidental internal bean access to #segments. 2011-05-15 19:58:29 +01:00
Jürg Lehni
d12608c708 Minor clean ups. 2011-05-15 18:53:09 +01:00
Jonathan Puckey
a9fbc41e15 Clean up Item#name code. 2011-05-15 19:27:32 +02:00
Jonathan Puckey
d998cd30f3 Add support for accessing items by name through their parent's children list. 2011-05-15 19:12:27 +02:00
Jürg Lehni
252a3635dc Replace {@true} tags in documentation ({@true ([^}]*)} -> true $1, false otherwise.) 2011-05-15 15:06:10 +01:00
Jürg Lehni
ee8b66e19a Remove methods / fields that are hidden on Scriptographer through @jshide. 2011-05-15 15:03:33 +01:00
Jürg Lehni
2c078d8b17 Remove all code blocks and group titles from documentation since we're relying on Scriptographer code and documentation generation (through javadoc) for docs. 2011-05-15 15:01:59 +01:00
Jonathan Puckey
3f8f539aeb Fix bugs in Raster#getAverageColor. 2011-05-15 14:13:47 +02:00
Jürg Lehni
3cb78db5f5 Fix typo. 2011-05-15 11:32:09 +01:00
Jürg Lehni
1dd0ee2533 Simplify Item#getId() 2011-05-14 22:38:27 +01:00
Jürg Lehni
5593eb94d0 Simplify Item#_removeFromParent(). 2011-05-14 18:11:31 +01:00
Jürg Lehni
4e059af684 Reassign Item#_index in #reverseChildren(). 2011-05-14 18:07:45 +01:00
Jürg Lehni
0bab694a01 Rename Item#children to private Item#_children and add #getChildren getter. 2011-05-14 18:07:10 +01:00
Jürg Lehni
df51b25fec Add comment about plain properties that need to send _changed() notifications. 2011-05-14 17:57:23 +01:00
Jürg Lehni
de34f8c157 Clear Item#_index when removing item and simplify #getIndex(). 2011-05-14 17:56:56 +01:00
Jürg Lehni
25c2d68f37 Switch to Item#_parent / #getParent() as property is read-only. 2011-05-14 17:56:14 +01:00
Jürg Lehni
a775e66632 Do not use #splice() for the initial push to the documents / children list. 2011-05-14 12:42:52 +03:00
Jonathan Puckey
34077dc901 Item#_getBounds: don't include bounds of hidden items. 2011-05-08 17:17:54 +01:00
Jürg Lehni
af8fd22ae2 Remove hyphen from event types, to go with the naming of the browser world more. 2011-05-08 15:35:10 +01:00
Jürg Lehni
20409f3084 Use Base.splice() for Layers too. 2011-05-07 17:27:19 +01:00
Jürg Lehni
566f52201c Fix typo. 2011-05-07 17:11:12 +01:00
Jürg Lehni
d254d9542d Add ChangeFlags.HIERARCHY, for future change notifications when children get rearranged. 2011-05-07 16:52:54 +01:00
Jürg Lehni
8c7b253bc2 Add Base.splice() to handle lists of items with _index referneces and use it for paper.documents and Item#children. 2011-05-07 16:11:05 +01:00
Jürg Lehni
79f55aa908 Fix recently introduce error in append(). 2011-05-07 15:41:07 +01:00
Jürg Lehni
999fb129cc Some code clean ups. 2011-05-07 15:40:02 +01:00
Jürg Lehni
9ef542ff9a Add comment to #_canged(). 2011-05-07 14:57:20 +01:00
Jürg Lehni
3ff2880ca8 Make Item#setDocument() and #removeFromParent() private. 2011-05-07 14:50:48 +01:00
Jürg Lehni
2f6fbcba74 Check result from removeFromParent(). 2011-05-07 14:34:57 +01:00
Jürg Lehni
4e6e855461 Change '// TODO: Port' comments to '// PORT:'. 2011-05-07 14:18:27 +01:00
Jürg Lehni
dabc2b97ed Implement change-notification in a proper way, using ChangeFlags that tell it what exactly has changed, and clearing caches accordingly. 2011-05-07 13:39:17 +01:00
Jürg Lehni
53cc1cd908 Apply #position optimisation through caching to all items, not just PlacedSymbol. 2011-05-07 13:13:19 +01:00
Jürg Lehni
1413094be2 Shorten PlacedSymbol#initialize(). 2011-05-07 13:12:46 +01:00
Jürg Lehni
15b7cfec0b Shorten Item#translate(). 2011-05-07 13:09:04 +01:00
Jürg Lehni
72976f4191 Use internal _position in PlacedItem and transform it along when a matrix is applied. 2011-05-07 11:36:16 +01:00
Jürg Lehni
34785534e0 Use getPosition() rather than getBounds().getCenter(). 2011-05-07 11:25:46 +01:00
Jürg Lehni
3a5aa466de Add comments about things to change. 2011-05-07 10:07:21 +01:00
Jürg Lehni
6083faaf80 Use getter instead of beans property. 2011-05-07 09:56:27 +01:00
Jürg Lehni
5e4369d800 No need to call setter, we can set internal property directly here. 2011-05-07 09:55:56 +01:00
Jürg Lehni
c36db3a55c Introduce private faster Matrix#_transform* methods that lack arguments checks, and use them internally. 2011-05-06 13:28:35 +01:00
Jürg Lehni
478002ea1c Add comment about return undefined rather than null for unclear styles, and fix test. 2011-05-05 13:11:40 +01:00
Jürg Lehni
32ed418bdf Remove unused parameter. 2011-05-05 11:20:37 +01:00
Jürg Lehni
a59fab0409 Only change style and notify item of change if it differs from current one. 2011-05-05 11:16:26 +01:00
Jürg Lehni
14549a383b Improve Item#_getBounds(). 2011-05-05 00:16:28 +01:00
Jürg Lehni
7334e824f5 Further optimise PathStyle code. 2011-05-05 00:08:55 +01:00
Jürg Lehni
23a29ced98 Optimise and comment PathStyle code. 2011-05-05 00:05:36 +01:00
Jürg Lehni
cc0f4a3f7e Add PathStyle#clone(). 2011-05-05 00:01:17 +01:00
Jürg Lehni
ab9cce137c Separate PathStyle constructor into internal PathStyle.create(item, style) and public PathStyle(style). 2011-05-05 00:00:41 +01:00
Jürg Lehni
bdbbca487f Remove rounding in drawSelectedBounds(). 2011-05-04 17:44:08 +01:00
Jürg Lehni
49645f8a0d Do not use short-forms and syntax magic in core API. 2011-05-03 09:34:07 +01:00
Jürg Lehni
52a73e86ce Clean up code (for() -> for ()). 2011-05-03 08:54:13 +01:00
Jonathan Puckey
41120cf4d9 Various small code cleanups. 2011-05-02 12:23:42 +02:00
Jürg Lehni
cd58351864 Add comment about porting chainable calls back to Sg. 2011-04-30 22:30:54 +01:00
Jürg Lehni
4d999d57e2 Replace all type converting string compares with ===, !==. 2011-04-28 13:23:17 +01:00
Jonathan Puckey
ad8dfe91c7 Implement Raster#getStrokeBounds(). 2011-04-28 12:56:08 +02:00
Jonathan Puckey
e1f5d4952d Minor cleanups and fixes in Item. 2011-04-28 12:50:53 +02:00
Jonathan Puckey
861812f3ad Fix bug in previous commit. 2011-04-28 12:39:55 +02:00
Jonathan Puckey
1666a36210 Have Item#_getBounds return a normal rectangle when called with includeStroke flag, since Item#getStrokeBounds is read only. 2011-04-28 12:38:57 +02:00
Jonathan Puckey
eed054af17 Item: implement getStrokeBounds, move getBounds functionality into _getBounds with an includeStroke flag. Also simplify the _getBounds code. 2011-04-28 12:33:03 +02:00
Jürg Lehni
d71450c0b1 Make sure selected argument is always a boolean. 2011-04-28 10:05:43 +01:00
Jürg Lehni
a9ea10ca7f Move version of #getBounds() that handles children to Item, to eliminate duplicated code. 2011-04-28 10:04:36 +01:00
Jürg Lehni
6b6f27cb6e Add TODOs about not returning -1 for undefined. 2011-04-27 17:53:59 +01:00
Jonathan Puckey
0700c51a85 Simplifications in Item#isDescendant & Item#isAncestor. 2011-04-27 16:16:05 +02:00
Jonathan Puckey
55fc2bc99c Some minor changes to Item. 2011-04-27 16:10:23 +02:00
Jürg Lehni
bdfe35d93a Consistently name local context variables 'ctx', to save line size and acknowledge the fact that Canvas contexts have a funny API design. 2011-04-26 15:39:16 +01:00
Jonathan Puckey
be8ee90f75 Document: use a hash for Document#_selectedItems to speed up adding to and removing from it. 2011-04-21 20:43:42 +02:00
Jonathan Puckey
cf541901dd Rename getSelected methods to isSelected. 2011-04-21 19:51:49 +02:00
Jonathan Puckey
73b97dbfba Implement segment point selection. 2011-04-21 18:06:06 +02:00
Jonathan Puckey
732caec7bf Speed up drawing of selected items. 2011-04-21 15:48:21 +02:00
Jonathan Puckey
517793c48a Implement Item#get/setDocument and Document#selectedItems. 2011-04-21 15:47:00 +02:00
Jonathan Puckey
1d92aea8e2 Fix Item#setSelected. 2011-04-20 16:00:08 +02:00
Jonathan Puckey
3fcfe3adbb Implement drawing of selection of PlacedSymbol & Raster items. 2011-04-18 18:46:39 +02:00
Jonathan Puckey
be9f312110 Implement a first version of drawing path selection. 2011-04-17 18:46:35 +02:00
Jonathan Puckey
8a113a1c84 Item: clean up white space. 2011-04-12 14:37:52 +02:00
Jonathan Puckey
d02885cba7 Implement Item#isParent and add tests for it. 2011-04-11 19:42:03 +02:00
Jürg Lehni
b5fdecf3d1 Rename ObservedRectangle to LinkedRectangle, ObservedPoint to LinkedPoint, and add more comments about what it is they are doing. 2011-03-22 17:27:46 +00:00
Jürg Lehni
7ae504e51f Add support for Item#removeOnMove(). 2011-03-20 00:11:02 +00:00
Jürg Lehni
1267f41559 Add beginning of ObservedRectangle support and test it in animatedStar example. 2011-03-16 23:32:46 +01:00
Jürg Lehni
d5fa3d7ae6 Merge remote-tracking branch 'origin/master'
Conflicts:
	src/item/Raster.js
2011-03-13 18:34:05 +01:00
Jürg Lehni
9d4af0ce9e Clean up recently caused Base.read() mess by introducing _readNull property,m setting it to true on Color and reverting to previous behavior for Point, Size and Rectangle, where dimensions of 0 are read by default if nothing is provided. 2011-03-13 18:31:00 +01:00
Jürg Lehni
1cd6daada1 Use _item instead of item as internal reference to PathStyle's item. 2011-03-13 18:29:59 +01:00
Jonathan Puckey
d7399926a0 Allow for Raster#setPixel(x, y, color). 2011-03-11 14:23:30 +01:00
Jonathan Puckey
b643fdfc1f Implement Item#removeOn and Item#getId. 2011-03-09 19:35:03 +01:00
Jürg Lehni
c7cefcba3a Merge remote-tracking branch 'origin/master' 2011-03-09 18:17:50 +00:00
Jürg Lehni
427e969d3d Add data access to Raster, untested. 2011-03-09 18:17:12 +00:00
Jonathan Puckey
dae2d6acb1 Remove todo in PlacedSymbol. 2011-03-09 17:09:23 +01:00
Jonathan Puckey
526711ffd4 Fix and improve performance of Raster#getPixel. 2011-03-09 13:38:58 +01:00
Jürg Lehni
72469dc65f Clean up PlacedSymbol constructor, make sure it declares parameters. 2011-03-08 17:21:05 +00:00
Jürg Lehni
456e9f2815 Use variable definition chaining in Raster. 2011-03-08 12:55:34 +00:00
Jürg Lehni
6a67052090 Update copyright / licensing comments. 2011-03-08 01:41:50 +00:00
Jürg Lehni
e1a7aff2f0 Add copyright notice and license file. 2011-03-07 00:50:44 +00:00
Jürg Lehni
87981efeb5 Massive refactoring of transform() / getBounds() code: getBounds() / getStrokeBounds() now supports an optional Matrix parameter which is used to on the fly transform all coordinates and stroke definitions before bounds are calculated. This even supports the correct determination of rotated ellipse bounds for round strokes in symbols. 2011-03-06 21:26:38 +00:00
Jürg Lehni
2d4cf2cc72 Replace beans access to Item#position with getter calls. 2011-03-06 21:12:11 +00:00
Jürg Lehni
deb78b78cf Define fast Rectangle.create() and use it internally where applicable. 2011-03-06 18:45:56 +00:00
Jürg Lehni
162dab66a7 Clean up code. 2011-03-06 15:15:21 +00:00
Jürg Lehni
78c7f645ab Merge remote-tracking branch 'origin/master' 2011-03-06 14:45:57 +00:00
Jürg Lehni
8be1041011 Make style setter calls chainable. 2011-03-06 14:44:54 +00:00
Jonathan Puckey
40b7571489 Move BlendMode into util and add missing var. 2011-03-06 15:44:51 +01:00
Jonathan Puckey
54c1f3d8b1 Fix Raster#setSize. 2011-03-06 15:08:41 +01:00
Jonathan Puckey
336c9e1441 Fix bug in setHidden where Item#visible was being interpreted as a bean. 2011-03-06 14:50:57 +01:00
Jürg Lehni
0a690788ef Allow chaining of Item transform functions. 2011-03-06 11:42:08 +00:00
Jürg Lehni
5392268b83 Remove Raster/PlacedSymbol specific code form Matrix#transformBounds() and use Rectangle#setCenter() instead to center the bounds rectangle on the origin. 2011-03-05 21:05:07 +00:00
Jürg Lehni
3f0a45a7c2 Allow Rasters to be created directly from id strings. 2011-03-05 14:17:32 +00:00
Jürg Lehni
cc134de058 Remove trailing collon. 2011-03-05 13:51:23 +00:00
Jürg Lehni
836ee492ae More beans related refactoring. 2011-03-05 02:40:38 +00:00
Jürg Lehni
e87e7b2582 Move get/setContext to get/setCanvas. 2011-03-05 01:59:01 +00:00
Jürg Lehni
a365bf45a4 Apply the same optimisation from previous commit to Layer. 2011-03-05 01:53:32 +00:00
Jürg Lehni
02bf012aa5 Simplify #appendTop / Bottom and #moveAbove / Bellow by using generator functions. 2011-03-05 01:50:56 +00:00
Jürg Lehni
ce74516228 Remove more beans access, this time related to various PathStyle getters / setters. 2011-03-05 01:36:27 +00:00
Jürg Lehni
c313e702c9 Clean up a whole lot of beans access, and in the process of the refactoring improve canvas, context, size and bounds handling in Raster and PlacedSymbol. 2011-03-05 01:26:12 +00:00
Jürg Lehni
b1027dbb38 Use better variable name. 2011-03-05 00:24:32 +00:00
Jürg Lehni
1d858147ec Stop using style beans internally. 2011-03-05 00:23:16 +00:00
Jürg Lehni
1d866ecb6c Clean up internal properties and beans in Color related classes. 2011-03-05 00:16:26 +00:00
Jürg Lehni
44ab8ed3a0 Refer to currentStyle through getters and setters, not through beans. 2011-03-05 00:03:28 +00:00