Commit graph

2373 commits

Author SHA1 Message Date
Jürg Lehni
5f0da04daf Add empty line at file end. 2011-11-18 19:54:16 +01:00
Jürg Lehni
b9f6c99dcd Add comments and clean up code. 2011-11-17 19:28:05 +01:00
Jürg Lehni
427cc21b3a Fix a comment. 2011-11-17 00:06:21 +01:00
Jürg Lehni
1b484a2f7b Implement MouseEvent#delta for Item#onMouseDrag and #onMouseMove. 2011-11-17 00:04:30 +01:00
Jürg Lehni
cf54b1a7c1 Change parameter sequence in mouse event code. 2011-11-16 23:47:51 +01:00
Jürg Lehni
9061daa935 Simplify event handling code. 2011-11-16 23:41:47 +01:00
Jürg Lehni
80d3763c39 Implement Item#onMouseDrag evnets, and have them silence #onMouseMove events if both are present. 2011-11-16 23:30:14 +01:00
Jürg Lehni
d066ad775d Implement Item#onClick and #onDoubleClick. 2011-11-16 23:18:27 +01:00
Jürg Lehni
b3bf57c8e9 Implement Item#onMouseEnter / #onMouseLeave. 2011-11-16 22:59:39 +01:00
Jürg Lehni
c0e6d5b2ee Remove unused injection scopes. 2011-11-16 22:54:03 +01:00
Jürg Lehni
44bf596e51 Finish implementing Item#onMouseMove and clean up code. 2011-11-16 22:48:38 +01:00
Jürg Lehni
8efc7ce7cd Implement Item#onMouseUp events and work on #onMouseMove. 2011-11-16 22:41:22 +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
577c884a70 Prepend non-public Tool methods with '_'. 2011-11-16 13:10:39 +01:00
Jürg Lehni
1eff9741a4 Separate Canvas related code from View into CanvasView class. 2011-11-14 20:18:08 +01:00
Jürg Lehni
c85f0326c3 Simplify installling of mouse handlers in View. 2011-11-14 13:32:03 +01:00
Jürg Lehni
acbebc2aa4 Remove #idleInterval left-overs. 2011-11-13 00:09:09 +01:00
Jürg Lehni
fcd92c4ac1 Fix updateFocus() documentation. 2011-11-13 00:05:28 +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
Jürg Lehni
18d44689fa Fix white-space in code example. 2011-11-12 23:56:25 +01:00
Jürg Lehni
36846d6e38 Remove code from previous commit again. 2011-11-12 19:52:36 +01:00
Jürg Lehni
d89d7f1ef7 Commit temporary support for attach() and detach() handler on event entries, to be removed again. 2011-11-12 19:51:51 +01:00
Jürg Lehni
4ba752d42a Add note and TODO about Path#contains() only working correctly for no-zero winding rule, which is not used by Canvas... 2011-11-12 19:49:12 +01:00
Jürg Lehni
ddf7c6534b Fix Path#hitTest() to only consider strokeWidth if a strokeColor is provided too. 2011-11-12 19:48:39 +01:00
Jonathan Puckey
52385451f6 Resolve a few documentation todos. 2011-11-12 18:30:21 +01:00
Jürg Lehni
6e5a81f907 Fix white-spaces in documentation. 2011-11-12 18:26:15 +01:00
Jürg Lehni
c33998c140 Remove support for Tool#eventInterval. 2011-11-12 18:26:03 +01:00
Jürg Lehni
52ad906c97 Add support for onFrame handlers on Item. 2011-11-12 17:44:05 +01:00
Jürg Lehni
d9ba90ea2d Remove white space. 2011-11-12 17:15:04 +01:00
Jürg Lehni
8eaddc759e Fix code sequence when attaching and detaching event handlers. 2011-11-12 17:14:49 +01:00
Jürg Lehni
da5a837da2 Merge remote-tracking branch 'origin/master' 2011-11-12 16:56:35 +01:00
Jürg Lehni
719ae2315c Remove global views list, link View to Project and allow projects to only have one view. 2011-11-12 16:56:23 +01:00
Jonathan Puckey
3ac171a304 Path#smooth() example: select path using fullySelected instead of selected, so we can see its handles. 2011-11-12 16:45:33 +01:00
Jonathan Puckey
d631288dc7 Fire resize event directly after evaluation, so we don't need to call onResize ourselves from PaperScript. 2011-11-12 16:31:22 +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
2b5cfa401a Remove obsolete documentation. 2011-11-12 14:41:27 +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
a326b189b4 Improve Curve#isFlatEnough() by finding the right threshold through testing, and remove other less precise solutions. 2011-11-12 01:23:41 +01:00
Jürg Lehni
d43b54a531 Shorten Curve.isFlatEnough() code. 2011-11-11 20:58:33 +01:00
Jürg Lehni
fdd4ee8d31 Switch back to Kaspar Fischer's version of Curve.isFlatEnough, as it produces the best results with dashed lines. 2011-11-11 20:55:31 +01:00
Jürg Lehni
3dfb4d3ae5 Make Item#removeOn() calls work with new event callback mechanism. 2011-11-11 20:41:09 +01:00
Jürg Lehni
78d1ce1540 Make new events work properly for key handlers. 2011-11-11 20:12:29 +01:00
Jürg Lehni
e238dea3ac More work to make new events mechanisms work for Tool too. 2011-11-11 19:49:31 +01:00
Jürg Lehni
5fd7753c60 Remove dev comments. 2011-11-11 18:39:12 +01:00
Jürg Lehni
eaa5f97e95 Merge remote-tracking branch 'origin/master' 2011-11-11 18:29:44 +01:00
Jürg Lehni
256e48b511 Define Callback code for callback based event handling (#atach() / #detach() #fire()) and start implementing it in View. 2011-11-11 18:29:28 +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
99a8532cca No need to set beans = true since we're always producing beans. 2011-11-11 14:03:36 +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
e2eec3476d Add comments about backward compatible Color constructor names. 2011-11-10 20:00:20 +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
Jürg Lehni
c4bea4d24c Include comment about algorithm modifications. 2011-11-10 18:30:18 +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
34b5d043b3 Implement Matrix#inverseTransform(). 2011-09-23 11:19:03 +02:00
Jürg Lehni
4600fe1e21 Add comments about alternative arguments. 2011-09-23 11:18:25 +02:00
Jürg Lehni
d1d110f085 Document the two versions of Matrix#transform() separately. 2011-09-23 11:17:42 +02:00
Jürg Lehni
f8dac43107 Remove Matrix#determinant and convert getter to private method that only returns determinant if matrix is reversible, simplifying the various places where _getDeterminant is in use. 2011-09-22 21:19:41 +02:00
Jürg Lehni
3397931bb2 Be consistent in Numerical. EPSILON comparison rules. 2011-09-22 21:14:16 +02:00
Jürg Lehni
44e5c30436 Remove misleading alternative parameter comment. 2011-09-22 10:36:27 +02: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
a2358a0fc0 Also fire key events for modifier keys. Closes #52. 2011-09-18 12:51:03 +02:00
Jürg Lehni
571ca31dbf Move ctx.restore() to same level as ctx.save(). Closes #51. 2011-09-18 10:56:04 +02:00
Jürg Lehni
b51c1286da Add documentation for all color components. Closes #43. 2011-09-18 10:54:26 +02:00
Jürg Lehni
8db7352342 Merge branch 'master' of github.com:paperjs/paper.js 2011-09-18 10:38:33 +02:00
Jürg Lehni
936fd43c37 Implement Item#layer. 2011-09-18 10:38:16 +02:00
Ben Ogle
7ebd4a17bd Adds other keycodes for command keys in different browsers.
- 224 for firefox
 - 93 for the right command key in WebKit browsers.
2011-08-25 18:53:30 -07:00
Jürg Lehni
ae116cd043 Improve comments about change notifications. 2011-08-23 16:36:57 +02:00
Jürg Lehni
7a5ca5609f Have View#_redraw() properly redraw the content even if nothing has changed inside. 2011-08-23 16:36:18 +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
Jürg Lehni
a775ddec9e Remove obsolete comment. 2011-08-22 11:14:49 +02:00
Jürg Lehni
b54f9f2228 Introduce View#_redraw() and use it in #setViewSize() and #_transform(). 2011-08-22 11:14:38 +02:00
Jürg Lehni
3ca165f413 Move #_transform() up. 2011-08-22 11:13:42 +02:00
Jürg Lehni
a081419a8b Fix View#bounds for zoom levels other than 1. 2011-08-22 11:12:40 +02:00
Jürg Lehni
7c2fabd6a1 Remove redundant scope by sharing one between browser and server code. 2011-08-22 11:05:59 +02:00
Jonathan Puckey
0ee1e80c68 Node.js: add Raster support. 2011-08-21 16:38:06 +02:00
Jonathan Puckey
a28b20dac8 Merge branch 'master' of https://github.com/paperjs/paper.js 2011-08-20 15:55:48 +02:00
Jonathan Puckey
bec8cf967e View: add documentation todos. 2011-08-20 15:51:54 +02:00
Jonathan Puckey
1f9993f894 Move Node.js specific things to dedicated folder. 2011-08-20 15:48:57 +02:00
Jonathan Puckey
70dc88ca91 View: Clean up #exportImage() and #exportFrames(). 2011-08-20 15:46:06 +02:00
Jonathan Puckey
197c2670d6 Implement View#exportImage(uri, param) 2011-08-18 11:11:24 +02:00
Jürg Lehni
76df9d9a92 Fix documentation for beans. 2011-08-16 13:53:36 +02:00
Jürg Lehni
4e1dd90549 Use faster Size.create(). 2011-08-16 13:52:31 +02:00
Jürg Lehni
4dd90b440e Use new dontLink parameter for Path.Constructors optimisations. 2011-08-16 13:52:18 +02:00
Jürg Lehni
c9eb538f7a Support an optional argument 'dontLink' in getters that normalled return LinkedPoint and LinkedSize objects, for internal use. 2011-08-16 13:50:59 +02:00
Jürg Lehni
8f8188a091 Optimise Path.Rectangle constructor. 2011-08-16 13:39:37 +02:00
Jürg Lehni
3c5a46a8af Implement SegmentPoint#isZero() that does not use the x / y accessors but the internal properties directly, for performance reasons, since it is used a lot internally. 2011-08-16 13:38:52 +02:00
Jürg Lehni
7e0307dd6a Correct comments. 2011-08-16 13:36:58 +02:00
Jonathan Puckey
25cb4a7dd1 Support running of PaperScript .pjs files. 2011-08-13 18:26:43 +02:00
Jonathan Puckey
38a4184ab5 Color: Avoid dividing by 0 in rgb-hsl converter. 2011-08-13 15:26:14 +02:00
Jonathan Puckey
8ce7ed578e Allow loading of Paper.js on Node.js without the need for compiling. 2011-08-10 21:02:32 +02:00
Jonathan Puckey
ebc3b3789b Merge branch 'master' of https://github.com/paperjs/paper.js 2011-08-10 18:30:42 +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
Jonathan Puckey
a58bbaf6cf Fix Size#isZero(). 2011-08-04 15:06:35 +02:00
Jonathan Puckey
24f5188c24 Merge remote-tracking branch 'origin/master' 2011-08-04 10:55:02 +02:00
Jonathan Puckey
3a3f5ecabb Segment: notify path of change when selection state of handles changes, so the view is redrawn. 2011-08-04 10:54:56 +02:00
Jürg Lehni
4e78c55859 Simplify PointText#setPoint() 2011-08-03 23:37:56 +02:00
Jürg Lehni
7c95eb7694 Do not usse LinkedPoint internally for PointText#point, since we're returning new instances each time now in #getPoint(). 2011-08-02 16:08:00 +01:00
Jonathan Puckey
fe1b2ca8a0 Fix PointText#setPoint(point) and PointText#setPosition(point). 2011-08-02 14:31:35 +02:00
Jürg Lehni
fe97b94340 Define PaperScopeItem as a private base class for all classes that have lists and references in the PaperScope (Project, View, Tool), so they can share functionality (#initialize(), #activate(), #remove()), and add support for multiple tools. Closes #27 2011-08-02 10:08:08 +01:00
Jonathan Puckey
a9780374f2 Remove logging statements. 2011-08-02 11:07:59 +02:00
Jonathan Puckey
94a6860f7f Add back Node.js related changes to View. 2011-08-02 11:02:04 +02:00
Jonathan Puckey
820ef43f56 Merge remote-tracking branch 'source/master' 2011-08-02 10:53:25 +02:00
Jonathan Puckey
30e2ba5582 Update View. 2011-08-02 10:49:40 +02:00
Jürg Lehni
2d5788540d Hide internal properties even if they are enumerable in Base#toString() 2011-08-02 08:32:55 +01:00
Jürg Lehni
14881b8b19 Let View handle the retrieving of the canvas object. 2011-08-01 16:23:56 +01:00
Jürg Lehni
828c3ae369 Doc: Improve View#initialize(canvas). 2011-08-01 16:21:00 +01:00
Jürg Lehni
9195f026d7 Support passing canvas ids straight to View constructor. 2011-08-01 16:18:17 +01:00
Jürg Lehni
022de4d781 Some documentation fixes for v0.2 2011-08-01 14:25:46 +01:00
Jürg Lehni
ea629fefda Remove debug log. 2011-08-01 12:03:23 +01:00
Jürg Lehni
14895f412c Fix PaperScope#install() so classes actually get injected. 2011-08-01 12:02:50 +01:00
Jürg Lehni
a8c08b3301 Docs: Document Path#getNearestLocation() and #getNearestPoint(). 2011-08-01 11:48:27 +01:00
Jürg Lehni
c8578658ae Docs: Remove |null from @return, since it's verbally described, and null can also be a HitResult. 2011-08-01 11:48:07 +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
Jürg Lehni
8cdc5ea2aa Change PaperScope#install() to be clever about project, view and tool references and link them through a getter to their current state in PaperScope. 2011-08-01 11:21:22 +01:00
Jürg Lehni
3fc21cd4b6 Always call View#draw() since it won't redraw internally if nothing has changed. 2011-08-01 11:02:00 +01:00
Jürg Lehni
6b6d5909c1 Revert back to PaperScope#setup() and keep #initialize0 simple. 2011-08-01 11:01:27 +01:00
Jürg Lehni
6086165d1a Merge remote-tracking branch 'origin/master' 2011-08-01 08:56:07 +01:00
Jürg Lehni
0e6aeac28c Fix HSLColor documentation. 2011-08-01 08:53:28 +01:00
Jürg Lehni
5b963b13e1 Export classes through PaperScope in dev mode too. 2011-08-01 08:53:07 +01:00
Jürg Lehni
c6cf4f9cf0 Only create an empty Project for a PaperScope if a canvas was provided for it. 2011-08-01 08:52:51 +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
fc7da5fa13 Docs: Improve HSL example. 2011-07-31 15:46:26 +01:00
Jürg Lehni
42c9f91279 Rename internal Matrix transform parameters to (a, c, b, d, tx, ty), expoes values through Matrix#getValues() and improve documentation. 2011-07-31 15:26:09 +01:00
Jürg Lehni
b14a294430 Delcare DomElement and DomEvent as private namespaces. 2011-07-31 15:23:26 +01:00
Jürg Lehni
13ae51789f Remove reduntant argument, fixing visibility check. 2011-07-31 14:25:23 +01:00
Jürg Lehni
d84f0d34cf Fix errors in DomElement.getOffset() by using native #getBoundingClientRect() in DomElement.getBounds() and relying on that. Closes #29 2011-07-31 14:13:29 +01:00
Jürg Lehni
e1d90c921c Do not parse PaperScript code in exigent mode. Relaxes requirements of semicolons, etc. 2011-07-31 12:14:37 +01:00
Jürg Lehni
7f81184848 Only intersect lines if their lengths are not conflicting with Numerical.EPSILON comparison of the cross product in Line#intersect(). 2011-07-30 11:38:17 +01:00
Jürg Lehni
7d0db22b9b Use squared distances in nearest point algorithm. 2011-07-30 11:37:07 +01:00
Jürg Lehni
293399e5b9 Add optional parameter 'squared' to Point#getLength() and #getDistance(). 2011-07-30 11:36:28 +01:00
Jonathan Puckey
ddec658653 Make Paper.js work on Node.js. 2011-07-30 02:16:30 +02:00
Jürg Lehni
3a7c5286b5 Improve precision of Line#intersect() and other parts that check for a divisor to not be 0, by comparing against the new Numerical.EPSILON rather than Numerical.TOLERANCE. 2011-07-28 11:03:59 +01:00
Jürg Lehni
1519a1d220 Improve documentation for PaperScope. 2011-07-27 22:58:45 +01:00
Jürg Lehni
501fb17365 Add more documentation for global scope. 2011-07-27 22:58:36 +01:00
Jürg Lehni
297aef643d Simplify the way PaperScope objects are created and linked to Canvas elements, in order to facilitate usage through plain JavaScript. 2011-07-27 22:39:58 +01:00
Jürg Lehni
3f76d1ffe6 Merge remote-tracking branch 'origin/master' 2011-07-27 22:04:57 +01:00
Jürg Lehni
c6525ec4fa Fix link to global paper variable. 2011-07-27 22:02:42 +01:00
Jürg Lehni
e197f94669 Fix links and typos. 2011-07-27 22:02:29 +01:00
Jürg Lehni
f5ee4a1ff7 Improve documentation for Matrix#createInverse(). 2011-07-27 22:01:51 +01:00
Jürg Lehni
2736af646d Move documentation for _global_ to a new src/docs/ folder. 2011-07-27 22:00:59 +01:00
Jürg Lehni
afec10c5bf Move prepro.js to lib/and include() statements for test units to their own files inside tests/ 2011-07-27 22:00:31 +01:00
Jonathan Puckey
7a8c9ef41d Merge remote branch 'origin/master' 2011-07-27 20:30:48 +02:00
Jonathan Puckey
60a4292691 Fix the way children of CompoundPath have their orientation set by overriding Item#insertChild(index, item). 2011-07-27 20:30:39 +02:00
bgrins
09e75d9da2 get rid of trailing comma to prevent parser error in IE 2011-07-27 11:09:21 -05:00
Jürg Lehni
ba4ff62052 Clean up white space. 2011-07-26 16:00:49 +01:00
Jürg Lehni
f98c8f29fc Implement Prepro.js for the browser too, in order to be able to load the library from paper.js source files and preprocess on the fly on the browser side. 2011-07-26 12:27:36 +01:00
Jürg Lehni
11cf28b403 Merge remote-tracking branch 'origin/master' 2011-07-26 10:10:10 +01: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
63628be923 Fix bug in CompoundPath#draw(ctx, draw) which was causing an error when a compound path didn't have any children. 2011-07-25 21:41:09 +02:00
Jürg Lehni
a0a426982f Documentation: Fix display of pseudo code. 2011-07-25 09:16:41 +01:00
Jürg Lehni
2c1fdc0744 Clean up Matrix constructor. 2011-07-25 09:15:35 +01:00
Jürg Lehni
68ba8e25e4 Documentation: Fix Matrix properties. 2011-07-25 09:15:18 +01:00
Jürg Lehni
43cc8e45b2 Clean up and separate PaperScript documetation from JavaScript related classes. Work in progress. 2011-07-25 00:25:23 +01:00
Jonathan Puckey
4daffc895a Handlers are no longer passed to Tool#initialize(). 2011-07-21 00:01:33 +02:00
Jürg Lehni
88626e3903 ToolEvent#getItem(): Replace all #parent getters with direct access to internal variable. 2011-07-19 23:55:56 +01:00
Jürg Lehni
688c1671ed Remove all parameters from Tool constructor, to simplify use outside PaperScript. 2011-07-19 23:53:13 +01:00
Jürg Lehni
9f1f4d334e Introduce PaperScope#setup(canvas), as a simple way to setup a standard project when not using PaperScript. 2011-07-19 23:52:32 +01:00
Jürg Lehni
470360301c Improve documentation for PaperScope#install() 2011-07-19 23:51:50 +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
53a602fb56 Path#_hitTest: check that a stroke hit test was requested. 2011-07-15 14:50:42 +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
Jonathan Puckey
91ab38ffd1 Path#getHandleBounds: remove optimization as it leads to problems when hit testing handles. 2011-07-15 12:58:34 +02:00
Jonathan Puckey
cb80b828a5 ToolEvent#getItem: replace getter with direct access to internal variable. 2011-07-14 19:28:25 +02:00
Jonathan Puckey
1ffb8debc3 Add HitResult tests (work in progress). 2011-07-13 17:35:54 +02:00
Jonathan Puckey
61052a9da9 Merge remote branch 'origin/master' 2011-07-13 16:54:01 +02:00
Jonathan Puckey
0098e2490f Implement ToolEvent#item. 2011-07-13 16:52:44 +02:00
Jürg Lehni
37c1866e5a Merge remote-tracking branch 'origin/master' 2011-07-13 13:27:26 +01:00
Jürg Lehni
86b1d82636 Add VERSION and DATE to headers and support for it in build scripts. 2011-07-13 13:27:14 +01:00
Jonathan Puckey
8aa7b02a23 Merge remote branch 'origin/master' 2011-07-13 14:12:01 +02:00
Jonathan Puckey
595144961d Update View size before calling View#onResize. 2011-07-13 14:10:26 +02:00
Jürg Lehni
a3bfc8fe40 Support all ways of defining a Point in SegmentPoint.create(), through fallback to Point.read(). 2011-07-13 12:46:16 +01:00
Jonathan Puckey
ff685f294a Fix problem with passing a Size to the Segment constructor. 2011-07-13 13:29:50 +02:00
Jürg Lehni
62453a4212 Increase version number. 2011-07-11 12:24:05 +02:00
Jürg Lehni
b5b1e50ccf Improve detection of passed Rectangles or Points in Rectangle#contains() 2011-07-11 12:21:24 +02:00
Jürg Lehni
077a83ca7c Fix documentation error. 2011-07-11 12:15:34 +02:00
Jürg Lehni
254aee47f8 Implement Path#getLocation(point) 2011-07-09 17:12:27 +02:00
Jürg Lehni
55f815cb72 Remove obsolete TODOs. 2011-07-09 17:12:13 +02:00
Jürg Lehni
51df37b8ec Fix recently broken support for text-paperscript mime type. 2011-07-09 17:11:57 +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
6771475ffc Clean up comments. 2011-07-09 16:59:07 +02:00
Jürg Lehni
9abdcb571e Add support for both text/paperscript and text/x-paperscript mime types. 2011-07-09 16:58:53 +02:00
Jürg Lehni
45c7f9c4fc Port back code to prevent tangents and normals of length 0 from Scriptographer. 2011-07-09 11:20:03 +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
833d4968ce Change root solvers to not produce new arrays each time but fill a passed one that can be reused. Yields io impressive performance improvements. 2011-07-09 10:50:47 +02:00
Jürg Lehni
839107d341 Remove faulty code for calculation of tangents / normals. 2011-07-09 10:35:22 +02:00
Jürg Lehni
ec00150df2 Remove unused variable. 2011-07-09 10:34:18 +02:00
Jürg Lehni
4e1d613ed8 Fix Curve#getLength() again for straight lines. 2011-07-09 10:21:17 +02:00
Jürg Lehni
17b412ce6f Fix a newly introduced bug in #contains(). 2011-07-09 10:17:06 +02:00
Jürg Lehni
8a6d53766e Explain code a litter better. 2011-07-09 10:11:50 +02:00
Jürg Lehni
8928a7b057 Fix #getCrossings() where calling #getPoint() / #getTangent() was slow and also wrong when a matrix was used. 2011-07-09 10:09:41 +02:00
Jürg Lehni
8606f25542 Switch from using Function#apply() trick for passing curve values as function parameters to simply passing arrays and looking up the values on then. 2011-07-09 10:08:43 +02:00
Jürg Lehni
23f38c6e5b Fix Path#flatten(), where we don't want to add last segment again for closed paths. 2011-07-09 09:51:06 +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
74b23c1882 Use #roughBounds rather than #bounds in #contains() check. 2011-07-09 09:27:54 +02:00
Jürg Lehni
6694d08d0f Fix PaperScript code generation to wrap on new-lines, so missing colons will not cause errors. 2011-07-09 09:20:13 +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
0a7f5a12a5 Fix bug in 'stroke' hit-results. 2011-07-08 23:32:29 +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
cc00f40532 Have Base.hyphenate() convert the result to lowercase. 2011-07-08 23:09:51 +02:00
Jürg Lehni
bb4e71da81 Clean up isFlatEnough() code. 2011-07-08 22:26:22 +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
48d61b46bf Merge remote-tracking branch 'origin/master' 2011-07-08 21:01:47 +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
Jonathan Puckey
36be78c671 Fix small problem in Item#_hitTest. 2011-07-08 18:41:29 +02:00
Jonathan Puckey
a0f4371803 Fix CurveLocation#getSegment. 2011-07-08 18:39:05 +02:00
Jürg Lehni
fe37ce6bcb Clean up comments. 2011-07-07 23:02:26 +02:00
Jürg Lehni
23c4499d15 Add comments about how to potentially improve getBounds() accuracy. 2011-07-07 23:00:40 +02:00
Jürg Lehni
ca50461fd1 Implement new Curve.isFlatEnough(). 2011-07-07 23:00:16 +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
133e0fc5cf Document ToolEvent#type. 2011-07-07 20:52:55 +02:00
Jürg Lehni
ced45c4e8f Add HSLColor to documentation. 2011-07-07 20:51:23 +02:00
Jürg Lehni
f15a541468 Improve documentation. 2011-07-07 16:10:27 +02:00
Jürg Lehni
64ae48af0b Remove solved TODO. 2011-07-07 16:10:06 +02:00
Jürg Lehni
5655981f6d Clean up white spaces. 2011-07-07 16:09:02 +02:00
Jürg Lehni
e573fe5dcd Do not pass prevSlope to Curve#getCrossings(), rely on #getPrevious() instead. 2011-07-07 16:08:10 +02:00
Jürg Lehni
4a53503130 Add support for optional matrix in Path#contains(), Path#getNearestLocation(), Curve#getValues(), Curve#getCrossings(), Curve#getNearestLocation() 2011-07-07 16:07:29 +02:00
Jürg Lehni
2851d8e403 Define Base#toString() as a mean to render Base objects as object literals, and use it for Key.modifier and onFrame() event objects, through Base.merge() conversion. 2011-07-07 14:10:02 +02:00
Jürg Lehni
baf7136ef7 Compress HSL and HSB converters even more. 2011-07-07 00:19:13 +02:00
Jürg Lehni
adff506751 Rearrange converter sequence. 2011-07-07 00:19:01 +02:00
Jürg Lehni
41e25dc5f7 Remove converters that simply pass through other rgb converters and have Color#convert() handle that for us. 2011-07-07 00:02:38 +02:00
Jürg Lehni
16c31fc683 No need to initialize with 0 since we're always setting them again. 2011-07-06 23:54:34 +02:00
Jürg Lehni
769ae05ad8 Clean up HSB code a bit too. 2011-07-06 23:51:46 +02:00
Jürg Lehni
dfef99aa92 Clean up and further simplify HSL code. 2011-07-06 23:51:30 +02:00
Jürg Lehni
f357eb4a21 Merge pull request #20 from gka/hsl-color
added support for HSL colors
2011-07-06 14:37:19 -07:00
Jürg Lehni
9d2148245a Implement Curve#getParameter(point), untested. 2011-07-06 23:15:32 +02:00
Jürg Lehni
56d62108cf Rename PathFlattener#getParameter(offset) -> #getParameterAt(offset) 2011-07-06 23:14:18 +02:00
Jürg Lehni
b13c7622c8 Rename Curve#getParameter(length) -> Curve#getParameterAt(offset) 2011-07-06 23:13:38 +02:00
Jürg Lehni
778a161ba0 Rename Curve.solve() -> Curve.solveCubic() 2011-07-06 23:10:16 +02:00
Jürg Lehni
d6b666024b Define #getNearestLocation() / #getNearestPoint() for Path. 2011-07-06 22:25:20 +02:00
Jürg Lehni
fadf6e98b5 Pass on minDistance to CurveLocation. 2011-07-06 22:21:49 +02:00
Jürg Lehni
c35133fae9 Add CurveLocation#distance, for Curve#getNearestLocation(). 2011-07-06 22:19:01 +02:00
Jürg Lehni
0c0807e3e9 Streamline handling of undefined properties in CurveLocation. 2011-07-06 22:18:40 +02:00
Jürg Lehni
30e92c8a35 Simplify CurveLocation#getPoint(), as missing parameter cannot be determined if point is also undefined. 2011-07-06 22:14:44 +02:00
Jürg Lehni
17bdaf6fe4 Use CurveLocation for Curve#getNearest*() methods. 2011-07-06 22:08:10 +02:00
Jürg Lehni
8b6d9746ce Rename Curve#getCrossingsFor() -> #getCrossings() 2011-07-06 22:07:34 +02:00
Jürg Lehni
d1185c5f8b Implement support for properly validating 'data-paper-NAME' attribute names, along with the current 'NAME'. 2011-07-06 21:19:38 +02:00
Jürg Lehni
10e7cc994c Fix porting mistakes. 2011-07-06 15:31:36 +02:00
Jürg Lehni
5c3a6f72b6 Fix comments. 2011-07-06 15:31:16 +02:00
gka
e1a61e1d95 added link to original algorithm source 2011-07-06 14:35:12 +02:00
gka
46483ee431 packed hsl-rgb conversion code a bit 2011-07-05 20:25:35 +02:00
Jürg Lehni
99f6597615 Fix check for quadratic curve by using the right coefficient (a instead of d), and checking with tolerance. 2011-07-05 17:03:49 +02:00
gka
0e37d9e93d added support for HSL colors
new class HSLColor, new test script HSLColor.html
2011-07-05 15:38:32 +02:00
Jürg Lehni
ccd4113ba3 Implement Nearest Point-on-Curve Problem. 2011-07-05 13:20:31 +02:00
Jürg Lehni
4630a1bd4a Fix documentation. 2011-07-05 13:17:34 +02:00
Jürg Lehni
c1f46977fa Rename Curve.isSufficientlyFlat() to shorter Curve.isFlatEnough() 2011-07-05 13:17:07 +02:00
Jürg Lehni
4110a56521 Improve comments. 2011-07-05 01:20:25 +02:00
Jürg Lehni
277ab844f2 Add comment about improving Rectangle#contains(). 2011-07-05 01:17:55 +02:00
Jürg Lehni
2a9066c555 Fix comment. 2011-07-05 01:17:37 +02:00
Jürg Lehni
f6f4c917f4 Fix accidentally removed comas. 2011-07-05 01:16:20 +02:00
Jürg Lehni
6cc7417201 Handle edge case in crossing number algorithm where the beam in right x-direction is touching a tip where the curves change y-direction but do not interesect with the shape, by checking for slope changes. 2011-07-05 01:15:45 +02:00
Jürg Lehni
24d77c1ece Remove root fixing code again, seems not necessary. 2011-07-05 01:14:20 +02:00
Jürg Lehni
8a2a9409bd Commit experimental root fixing code. 2011-07-05 01:13:58 +02:00
Jürg Lehni
4924d683e4 Simplify Curve.solve() and improve documentation. 2011-07-04 23:42:16 +02:00
Jürg Lehni
c5269ecbab Implement Path#contains(point) efficiently using the crossing number algorithm and our cubic polynomial solver. 2011-07-04 23:32:15 +02:00
Jürg Lehni
dad118cc20 Fix comments. 2011-07-04 23:30:25 +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
f2d2937a18 Define Rectangle#expand() and #scale(), as an easy way to manipulate rectangles. 2011-07-04 19:48:18 +02:00
Jürg Lehni
9cf5292496 Define solvers for cubic and quadratic polynomials, as required by hit testing code. 2011-07-04 19:47:54 +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
e88043a1f4 Implement Path#roughBounds, based on an improved Path#getHandleBounds() that supports additional hidden join and stroke padding parameters. 2011-07-02 18:27:43 +02:00
Jürg Lehni
3eecb924c8 Fix bug in Segment#_transformCoordinates, where handles were not set when they were zero, change was false and no matrix was provided. 2011-07-02 06:24:27 +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
0644d9d8b5 Move TODOs up to where they make sense. 2011-07-01 17:40:29 +02:00
Jürg Lehni
51d6ff945e Improve Path#getHandleBounds() and fix bean access for #handleOut. 2011-07-01 17:39:39 +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
ee23877fd1 Move view redrawing from resize handler to #setViewSize(). 2011-07-01 12:50:11 +02:00
Jürg Lehni
ce9700dc4d Have views redrawn after resize if they do not define a onFrame handler. 2011-07-01 12:49:27 +02:00
Jürg Lehni
84bce71b1c Remove unnecessary Segment#getHandleIn/OutIfSet. 2011-07-01 12:30:10 +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
Jürg Lehni
7211e68245 Add documentation to PathItem class. 2011-07-01 11:22:33 +02:00
Jürg Lehni
bb467462c3 Merge pull request #10 from rdworth/text_content_string
TextItem content: Added coersion to string in content setter since 0 numb
2011-07-01 02:00:26 -07:00
Richard D. Worth
a518b3fd19 Remove non-whitespace change 2011-06-30 11:02:49 -04:00
Richard D. Worth
fdd62ed929 TextItem content: Added coersion to string in content setter since 0 number is falsy but '0' string is not. Removed coersion from PathStructure example (introduced in 5637b3e37e4541c4e78180a168107be8282c136f line 64) 2011-06-30 09:12:14 -04:00
Richard D. Worth
ac39873693 Whitespace. Removed all trailing whitespace from .js files 2011-06-30 06:01:51 -04:00
Jürg Lehni
ee9c7e17b6 Merge remote-tracking branch 'origin/master' 2011-06-30 11:23:42 +02:00
Jonathan Puckey
5982196c66 PaperScript: add todo for supporting scripts with type: 'text/x-paperscript'. 2011-06-30 10:58:09 +02: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
965f49d156 Merge remote-tracking branch 'origin/master' 2011-06-28 16:12:07 +02:00
Jonathan Puckey
0463fcc9ca Fix spelling mistake. 2011-06-28 11:35:08 +02:00
Jürg Lehni
28921e9a76 Update PaperScript to work with new parse-js and beautify code so that line numbers in error messages remain correct. 2011-06-28 10:52:50 +02:00
Jürg Lehni
e93b3d5c97 Fix spelling mistake. 2011-06-28 09:20:42 +02:00
Jürg Lehni
0eb033e6bf Only try to simplfy path if there are more than two segments in it. 2011-06-27 22:35:02 +02:00
Jürg Lehni
b0156c0e8b Replace @type function with @type Function. 2011-06-27 15:34:32 +02:00
Jürg Lehni
3f8e8fcc1f Fix Documentation. 2011-06-27 15:27:32 +02:00
Jürg Lehni
fa3019a947 Rename View#artworkToView(), #viewToArtwork() -> #projectToView(), #viewToProject(). 2011-06-27 15:15:29 +02:00
Jürg Lehni
6d9ec033fe Improve View documentation. 2011-06-27 15:13:24 +02:00
Jürg Lehni
50c7649421 Improve Segment and Curve documentation. 2011-06-27 15:07:08 +02:00
Jürg Lehni
e35b171bec Improve Curve documentation. 2011-06-27 14:58:17 +02:00
Jürg Lehni
2fd623d5b9 Define Size#clone(), fixing a failing test. 2011-06-27 14:44:58 +02:00
Jürg Lehni
4c09514a8f Document Project. 2011-06-27 14:43:39 +02:00
Jürg Lehni
bd5329c537 Undo previous change again and document Project#remove(). 2011-06-27 14:43:28 +02:00
Jürg Lehni
d1305ff91c Remove the associated PaperScope when a Project is removed. 2011-06-27 14:35:30 +02:00
Jürg Lehni
cd2fce9bc7 Clean up documentation. 2011-06-27 12:31:39 +02:00
Jürg Lehni
cbbdec072a Move viewport related code to the end. 2011-06-26 10:16:28 +02:00
Jürg Lehni
f610acedf2 Access other static DomElement methods through 'this'. 2011-06-26 10:15:30 +02:00
Jürg Lehni
f18b5df99d Rename 'Window' in DomElement to 'Viewport', and have getViewportSize return the size of the viewport the passed element is contained in. 2011-06-26 10:14:26 +02:00
Jürg Lehni
d4b6d14f36 Make sure we're removing the right canvas offset from the available viewport size. 2011-06-26 10:06:19 +02:00
Jürg Lehni
6eee8bf62e Rename scroll parameter in DomElement.getOffset() / getBounds() to more meaningful viewport, as it calculates the offset in viewport coordinates, with scrolling removed. 2011-06-26 10:05:41 +02:00
Jürg Lehni
a454bbe187 Remove unneeded parameter from cumulateOffset(). 2011-06-26 10:04:54 +02:00
Jürg Lehni
dd37e22c86 Fix DomElement.getOffset() for fixed positioned elements. 2011-06-26 00:49:19 +02:00
Jürg Lehni
ab524b7642 Define DomElement.getComputedStyle() 2011-06-26 00:48:47 +02:00
Jürg Lehni
fa29686202 Define Base.hyphenate, to hyphenate camelized strings. 2011-06-26 00:47:40 +02:00
Jürg Lehni
3d21a3a8e1 Remove obsolete comment about examples not showing up. 2011-06-23 00:21:54 +01:00
Jürg Lehni
4a344c8fad Clean up forgotten @lends statements. 2011-06-22 23:58:50 +01: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
Jürg Lehni
a1196c9f74 Change focusing behavior: Try getting the view from the current event target in mousemove event, and temporarily focus views so keyboard events are handled too. 2011-06-22 08:29:53 +01:00
Jürg Lehni
07cfaf8662 Rename DomEvent.getElement() -> getTarget(). 2011-06-22 08:27:51 +01:00
Jürg Lehni
725499dc2e Only change focus if none is set or if the current view is invisible. 2011-06-22 08:10:54 +01:00
Jürg Lehni
8cb6169249 Produce ids for View canvases without one and link to views by id. 2011-06-22 08:10:17 +01:00
Jürg Lehni
b3e1fa68b8 Always stop events when they are handled by our View, removing the need to specifically handle touch events on iOS. 2011-06-22 08:09:22 +01:00
Jürg Lehni
c2244be53b Remove View#viewBounds in favour of #viewSize, and have View always occupy the full canvas. 2011-06-22 07:56:16 +01:00
Jürg Lehni
1d9bad5d01 Define view.updateFocus(), to loop through all scopes and their views and set the focus on the first active one, and call it whenever the browser is scrolled. 2011-06-21 21:49:36 +01:00
Jürg Lehni
8002ede7bd Use DomElement.isVisible() check even if keepalive=true. 2011-06-21 21:48:51 +01:00
Jürg Lehni
aa202050d2 Merge remote-tracking branch 'origin/master'
Conflicts:
	src/ui/View.js
2011-06-21 01:01:59 +01:00
Jürg Lehni
fc32a6757a Always use View.focused in handlers without caching view locally, as it can be modified elsewhere. 2011-06-21 01:00:37 +01:00
Jonathan Puckey
2c2d636198 Merge remote branch 'origin/master' 2011-06-21 01:52:59 +02: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
9ac63831d7 No need to call DomEvent.stop() in these handlers, as selectstart handles it all. 2011-06-21 00:42:39 +01:00
Jürg Lehni
e0f13dd3a0 Merge branch 'master' of github.com:scriptographer/paper.js 2011-06-21 00:38:19 +01:00
Jürg Lehni
8a285a7baa Handle mouse events that go outside the view / canvas, by only installing mousedown events on view and all others on document. 2011-06-21 00:38:11 +01:00
Jürg Lehni
8361f513ed Allow the optional overriding of target in DomEvent.getOffset(). 2011-06-21 00:37:26 +01:00
Jürg Lehni
f6fdbd349d Define DomEvent.stop() as a shortcut to stopPropagation() / preventDefault(). 2011-06-21 00:37:03 +01:00
Jonathan Puckey
3a9da3c0a0 Documentation: add class example to PointText. 2011-06-21 01:12:47 +02:00
Jonathan Puckey
b5cc2e9334 Merge remote branch 'origin/master' 2011-06-21 00:58:35 +02:00
Jonathan Puckey
2361556af6 TextItem related documentation. 2011-06-21 00:54:14 +02:00
Jonathan Puckey
ba7291700b Hide Style from documentation. 2011-06-21 00:49:42 +02:00
Jürg Lehni
0fecbe50bc Define View#isVisible() and use it to only handle key events if the focused view is not hidden. 2011-06-20 22:51:39 +01:00
Jürg Lehni
65bfb091e1 Filter out invisible elements in DomElement.isVisible() check. 2011-06-20 22:51:05 +01:00
Jürg Lehni
937a9def77 Override default fillColor to 'black' in CharacterStyle. 2011-06-20 20:25:02 +01:00
Jürg Lehni
54964907dd Change Base.merge so that it produces a new hash and merges all passed hashes into it in sequence. 2011-06-20 20:24:33 +01: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
2f2b3ed7e0 Fix selection behavior when segment lists are cleared, in which case we expect the path to remain selected. 2011-06-20 19:08:34 +01:00
Jürg Lehni
318ed69ad2 Remove use of characterStyle / paragraphStyle where not necessary. 2011-06-20 18:53:36 +01:00
Jürg Lehni
5e39e60d51 Fix typo. 2011-06-20 18:34:51 +01:00
Jürg Lehni
582f8f84fb Remove debug logging. 2011-06-20 18:28:12 +01:00
Jürg Lehni
58425c6bd3 Merge remote-tracking branch 'origin/master' 2011-06-20 18:25:59 +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
c6135c6dc7 Define Matrix#getTranslation, #getScaling() and #getRotation(), as a way to extract translation, scale and rotation from matrices. 2011-06-20 18:25:19 +01:00
Jonathan Puckey
a2a8939d5d Path# rename #pointsToCurves to #simplify and #curvesToPoints to #flatten. 2011-06-20 19:17:07 +02: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
266c78f4eb Add a bit more documentation to the Color owner stuff. 2011-06-20 17:00:11 +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
995c5b4081 Fix error in miter calculation in Path#getStrokeBounds(), recently introduced by a fix in Curve#getNormal(). 2011-06-20 15:56:08 +01:00
Jürg Lehni
9b9810faf3 Define Base.merge() and use it to merge _defaults in CharacterStyle. 2011-06-20 15:28:50 +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
c1fcd6f3bb Documentation: Convert more Array return types to Type[]. 2011-06-20 14:27:54 +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
d60b739ae2 Remove comas. 2011-06-20 14:14:08 +01: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
b9ebd12d22 Improve documentation of added Base methods. 2011-06-20 13:56:08 +01:00
Jürg Lehni
08571fd399 Add comments. 2011-06-20 00:03:15 +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
ad04db85aa Move over content handling from PointText to TextItem. 2011-06-19 23:23:52 +01:00
Jürg Lehni
c8a1bf4fce Have views redrawn in keyboard handlers if content has changed. 2011-06-19 23:17:55 +01:00
Jürg Lehni
6f816e1151 Fix _redrawNotified mechanism. 2011-06-19 23:14:36 +01:00
Jürg Lehni
bf73369423 Pass true for checkRedraw in View#draw() everywhere. 2011-06-19 23:05:39 +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
25b31b6b7d Remove deprecated Project#redraw(). 2011-06-19 23:02:25 +01:00
Jürg Lehni
2bf070415d Have Tool#onHandleEvent() report back if a callback was called or not, and use that to decide if View#draw() should be called, passing true as the to be implemented checkRedraw parameter. 2011-06-19 23:02:02 +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
eb73c55736 Use Item#remove() instead of calling #setSelected(false) and #_removeFromParent(). 2011-06-19 16:13:38 +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
fe416e294d Fix issue with a path not being selected when one of its segment is selected directly. 2011-06-17 19:00:41 +01: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
5bc4f69856 Improve documentation for Path#removeSegments(). 2011-06-17 17:54:37 +01:00
Jürg Lehni
7dcdb5ca2f Improve documentation for Path#removeSegments(). 2011-06-17 17:46:42 +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
1615b50b68 Fix thrown Error messages. 2011-06-17 11:26:35 +01:00
Jürg Lehni
6e16ab81f4 Fix a bug in Path#arcTo() where sometimes the arc was drawn on the wrong side when the extent was 180 degrees, thus the center point was lying on the line (from, to). 2011-06-16 23:50:14 +01:00
Jürg Lehni
169b58e550 Fix argument reading for PathItem#arcTo(to, clockwise). 2011-06-16 23:48:46 +01:00
Jürg Lehni
8d49d2377b Fix documentation for PathItem#smooth(). 2011-06-16 23:37:45 +01:00
Jürg Lehni
c2d425c916 Improve Error message thrown when no arc can be drawn. 2011-06-16 22:50:59 +01:00
Jürg Lehni
6e7d23faa4 Improve #arcTo() documentation. 2011-06-16 22:38:58 +01:00
Jürg Lehni
2c83eeb7de Improve handling of Path#arcTo() when the arguments demand an infinitely big circle, by either drawing a line or bailing out. 2011-06-16 22:38:43 +01:00
Jürg Lehni
aa825302e4 Clean up documentation for PathItem, Path & CompoundPath, by moving shared documentation to PathItem, for methods that are supposed to be abstract in PathItem and shared between the two classes. 2011-06-16 22:07:00 +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
bcff3932b6 Have ToolEvent extend Event and move #modifiers documentation there. 2011-06-16 21:20:30 +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
f3f49a34c6 Fix documentation so PaperScope#version shows up too in global scope. 2011-06-15 11:09:35 +01:00
Jürg Lehni
08bbff790d Improve PaperScope documentation. 2011-06-14 23:05:12 +01:00
Jürg Lehni
d90e0ec07e Define paper.version. 2011-06-14 23:04:59 +01:00
Jürg Lehni
9deabbee8d Start adding documentation to PathItem. 2011-06-14 23:04:32 +01:00
Jürg Lehni
2ec34512d1 Ignore all documentation that caused warnings about leakage. 2011-06-14 23:02:34 +01:00
Jürg Lehni
401c4d5dc4 Rearrange @constructor documentation sequence. 2011-06-14 23:01:35 +01:00
Jürg Lehni
ffa79f4fd1 Clean up white spaces in comments. 2011-06-14 22:59:45 +01:00
Jürg Lehni
a7d22b2165 Add comment about porting back Path#arcTo(). 2011-06-14 21:32:14 +01:00
Jürg Lehni
8213dce4a9 Have newly added segments selected if path was fully selected before. 2011-06-14 15:40:03 +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
Jürg Lehni
ad78474ae4 Remove obsolete TODO. 2011-06-14 12:46:15 +01:00
Jürg Lehni
50bc64779f Handle special case of infinitely big circle in Path#arcTo(), by cheating using an approximation of a really big circle. 2011-06-14 12:45:37 +01:00
Jürg Lehni
c85ddf2abe Fix a porting error in Line#getSide(). 2011-06-14 12:27:37 +01:00
Jürg Lehni
44670ebdd9 Merge remote-tracking branch 'origin/master' 2011-06-14 12:19:25 +01:00
Jürg Lehni
2be18b8013 Completely rewrite Path#arcTo() using Point class and vector geometry methods. 2011-06-14 12:19:14 +01:00
Jonathan Puckey
b55bb1b942 Merge branch 'master' of github.com:scriptographer/paper.js 2011-06-14 12:24:34 +02:00
Jonathan Puckey
41feaebb4e Fix Group clipping and ignore Item#clipMask in the documentation for now. 2011-06-14 12:15:46 +02:00
Jürg Lehni
0cda1aa9dd Fix Point#getDirectedAngle, which was measured the wrong way round, and could be optimised using Math.atan2(). 2011-06-14 11:14:26 +01:00
Jürg Lehni
8d0bb3d2ae Path#arcTo(): Fix wrong constant names. 2011-06-14 09:32:53 +01:00
Jürg Lehni
b4a210e113 Path#arcTo(): Fix the case where through point lies on a line between from and to point. 2011-06-14 09:12:18 +01:00
Jürg Lehni
f0c22bc1dc Shorten pre-calculations in Path#arcTo(). 2011-06-14 09:00:55 +01:00
Jürg Lehni
f6b2672f08 Simplify Path#arcTo() arguments check. 2011-06-14 09:00:25 +01:00
Jürg Lehni
bac579d85b Use a different strategy to determine canvas size for invisible canvases. 2011-06-14 00:20:58 +01:00
Jürg Lehni
eec7209a5c Define DomElement.isInvisible(), to check if the given element is not displaying. 2011-06-14 00:20:27 +01:00
Jürg Lehni
a3d1875971 More clean ups. 2011-06-13 19:09:10 +01:00
Jürg Lehni
de739b42a8 Clean up white spaces. 2011-06-13 19:05:17 +01:00
Jürg Lehni
064f17eaec Fix default value for end in Path#removeSegments(), so the last segment gets removed too. 2011-06-13 19:00:39 +01:00
Jonathan Puckey
e23ac6809b Color docs: add class introduction and examples. 2011-06-13 17:13:23 +02:00
Jonathan Puckey
2e6101a9b3 Rectangle: add code examples. 2011-06-13 17:13:07 +02:00
Jonathan Puckey
10de921a83 Docs: Use classexample tags in Point, Size and Rectangle. 2011-06-13 17:12:23 +02:00
Jürg Lehni
4a23e35eee Merge remote-tracking branch 'origin/master' 2011-06-12 18:42:24 +01:00
Jürg Lehni
c341ec220a Fix white space. 2011-06-12 18:40:30 +01:00
Jürg Lehni
065777291e Fix filtering of duplace points in path fitting code. 2011-06-12 18:40:24 +01:00
Jonathan Puckey
d2c031aa4e Documentation: improve View#onFrame example. 2011-06-10 14:21:27 +02:00
Jonathan Puckey
9b1812f7d8 Documentation: fix type of View#bounds. 2011-06-10 14:13:55 +02:00
Jonathan Puckey
68193d8a98 Documentation: Add examples to RGBColor / GrayColor / HSBColor constructors. 2011-06-10 14:12:33 +02:00
Jonathan Puckey
a48a8d7a8d Document TextItem#content. 2011-06-10 14:05:58 +02:00
Jonathan Puckey
7591ccf285 Improve Project#currentStyle documentation. 2011-06-10 13:44:30 +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
Jonathan Puckey
20fc389020 Documentation: add see tag to Path#closePath(). 2011-06-10 13:33:14 +02:00
Jonathan Puckey
87c1b564d2 Document Path#lineBy(vector). 2011-06-10 13:32:37 +02:00
Jonathan Puckey
ac703f1baa Path: add example of pointToCurves(). 2011-06-10 00:07:25 +02:00
Jonathan Puckey
1bca7f4795 Adjust GradientColor example. 2011-06-09 23:27:11 +02:00
Jonathan Puckey
d688faf805 Merge remote branch 'origin/master' 2011-06-09 23:21:21 +02:00
Jonathan Puckey
a880396d26 Add example code to GradientColor & GradientStop. 2011-06-09 23:21:06 +02:00
Jürg Lehni
0567d0a5f9 Documentation: Fix typo. 2011-06-08 18:47:34 +01:00
Jürg Lehni
928b7df01e Fix typo introduced in previous refactoring. 2011-06-06 17:18:22 +01:00
Jürg Lehni
d5e7ca9f5e Improve explanatory comments. 2011-06-06 11:44:15 +01:00
Jürg Lehni
046f9cef6e Add comments. 2011-06-05 23:14:36 +01:00
Jürg Lehni
2fe21586df Further simplifications of path fitter code. 2011-06-05 23:14:28 +01:00
Jürg Lehni
3a4af3f854 Rename variables forgotten in previous refactoring. 2011-06-05 23:13:45 +01:00
Jürg Lehni
b035077d31 Simplify code. 2011-06-05 23:00:33 +01:00
Jürg Lehni
9e25047b91 Further clean ups. 2011-06-05 22:09:19 +01:00
Jürg Lehni
68eb14c00d Clean up code. 2011-06-05 22:06:24 +01:00
Jürg Lehni
10e1417dc2 Check for denominator == 0 with tolerance. 2011-06-05 21:59:42 +01:00
Jürg Lehni
0366752a6f Merge remote-tracking branch 'origin/master' 2011-06-05 21:56:17 +01:00
Jürg Lehni
73a188742e Fix bug in singularity check. 2011-06-05 21:56:04 +01:00
Jürg Lehni
ee7147d58e Rename forgotten variables in previous refactoring. 2011-06-05 21:51:01 +01:00
Jonathan Puckey
b385b859f9 Merge remote branch 'origin/master' 2011-06-05 22:46:22 +02:00
Jürg Lehni
6ea63fde43 Handle case of nearly singular matrix separately. 2011-06-05 21:45:29 +01:00
Jürg Lehni
27c7248a2d Clean up and shorten code. 2011-06-05 21:44:34 +01:00
Jonathan Puckey
d2759c2371 Improve Segment constructor example. 2011-06-05 22:44:32 +02:00
Jonathan Puckey
9d4afcfe9c Add another Path#add example. 2011-06-05 22:44:01 +02:00
Jonathan Puckey
5513687daa Add Path#smooth examples. 2011-06-05 22:43:36 +02:00
Jürg Lehni
12e770c032 Merge remote-tracking branch 'origin/master' 2011-06-05 21:32:10 +01:00
Jürg Lehni
bcb5df9f04 Clean up. 2011-06-05 21:31:58 +01:00
Jürg Lehni
ca18b20785 Remove Douglas–Peucker algorithm again since it produced ackward results. 2011-06-05 21:29:19 +01:00
Jürg Lehni
42f5b5e26e Implement Douglas–Peucker algorithm for point reduction before the curve fitting. 2011-06-05 21:28:49 +01:00
Jürg Lehni
aef8dcf2d3 Check for determinant singularity and handle separately. 2011-06-05 21:27:24 +01:00
Jürg Lehni
7d2742cd94 Rename PathFitter#process() -> #fit(). 2011-06-05 21:26:01 +01:00
Jürg Lehni
4854e56e1d Filter out adjacent duplicate points. 2011-06-05 21:25:38 +01:00
Jürg Lehni
df29ef2d2c Define Line#getDistance(point). 2011-06-05 21:24:38 +01:00
Jonathan Puckey
fe901fa96b Add to and improve Path documentation. 2011-06-05 22:02:30 +02:00
Jürg Lehni
28c680ac94 Implement PathFitter and Path#pointsToCurves(). 2011-06-05 19:27:18 +01:00
Jürg Lehni
caec7599be Fix a bug with Segment constructor where two passed points with the first one having an x-coordinate of 0 would accidentaly be considered the two coordinate values for the point property. 2011-06-05 18:41:58 +01:00
Jonathan Puckey
e4eb463204 Path: document arcTo and curveTo. 2011-06-05 18:40:33 +02:00
Jonathan Puckey
14e2a61d25 Add examples to Path#arcTo docs. 2011-06-05 17:22:35 +02:00
Jonathan Puckey
ab09a44dc6 Add examples to Path#join documentation. 2011-06-05 16:12:31 +02:00
Jonathan Puckey
c10aa01de0 Fix a bug in Path#join. 2011-06-05 15:56:37 +02:00
Jonathan Puckey
5770ebc9ff Merge remote branch 'origin/master' 2011-06-05 15:04:43 +02:00
Jonathan Puckey
deec7512cc Path: fix return type in #getLocationAt documentation. 2011-06-05 15:04:34 +02:00
Jonathan Puckey
34b510bf1c Path: add examples to #getPointAt, #getNormalAt and #getTangentAt. 2011-06-05 15:00:43 +02:00
Jonathan Puckey
bb956c890f Add documentation stub for Path#arcTo(through, to) 2011-06-05 14:52:01 +02:00
Jonathan Puckey
4e0a857ee7 Fix a problem in Path#arcTo where it wasn't defaulting to a clockwise arc. 2011-06-05 14:51:37 +02:00
Jürg Lehni
b3d771a870 Remove Curve#transform() which is currently broken anyhow. 2011-06-05 13:27:39 +01:00
Jürg Lehni
e76c4e0de1 Implement Path#curvesToPoints() using the new PathFlattener class. 2011-06-05 13:21:00 +01:00
Jürg Lehni
74b9da9882 Define PathFlattener#evaluate() for curve evaluation at given offsets. 2011-06-05 13:20:20 +01:00
Jürg Lehni
c296eb0883 Fix wrong direction of tangent evaluation at t = 1. 2011-06-05 13:09:53 +01:00
Jürg Lehni
c2c5955717 Rename Curve#getCurvesValues() -> #getValues(). 2011-06-05 12:40:07 +01:00
Jürg Lehni
cb3834f41c Expose the previously private evalutate() function through Curve.evaluate(), make it work with curve value arrays, and use it the for various evaluation methods (#getPoint/Tangent/Normal). 2011-06-05 12:37:43 +01:00
Jürg Lehni
14816a872e Define Curve constructor for 8 parameters and implement Curve#getPart() that returns a new sub curve. 2011-06-05 12:36:26 +01:00
Jürg Lehni
3a0f43050e Rename length to offset. 2011-06-05 11:34:40 +01:00
Jürg Lehni
ef10c2797c Add Curve#getPart but hide for now as more work is required. 2011-06-05 11:34:24 +01:00
Jürg Lehni
b5a0979f58 Access internal Curve coordinate properties directly rather than through beans. 2011-06-05 11:33:55 +01:00
Jürg Lehni
47085e44ca Fix drawing of closed paths that was broken in recent commit. 2011-06-05 11:20:28 +01:00
Jürg Lehni
6095723e70 Fix single equal compare. 2011-06-04 21:46:48 +01:00
Jürg Lehni
90be683113 Clean up and add more comments. 2011-06-04 19:25:50 +01:00
Jürg Lehni
263fa8cbd9 Add comments. 2011-06-04 18:35:00 +01:00
Jürg Lehni
fafb6d1d76 Convert CurveFlattener to PathFlattener, which can handle drawing of parts accross curve boundaries. 2011-06-04 18:25:41 +01:00
Jürg Lehni
e097ff1303 Include copyright notice and clean up. 2011-06-04 16:12:55 +01:00
Jürg Lehni
72ac909713 Include CurveFlattener.js in build. 2011-06-04 16:12:40 +01:00
Jürg Lehni
5fa43efb79 Merge remote-tracking branch 'origin/master' 2011-06-04 16:08:52 +01:00
Jürg Lehni
6c74ace1ed Implement dashed stroke support. Work in progress. 2011-06-04 16:08:40 +01:00
Jürg Lehni
e5290c3f47 More work on Path#draw(). 2011-06-04 15:28:06 +01:00
Jürg Lehni
45a04891ee Clean up. 2011-06-04 15:16:30 +01:00
Jürg Lehni
91886211b5 Simplify Path#draw() by defining a private drawSegment() that's used to close paths too. 2011-06-04 15:16:21 +01:00
Jürg Lehni
4cc3ef87cd Add View#canvas. 2011-06-04 15:15:35 +01:00
Jonathan Puckey
a96b272f7a Documentation edits. 2011-06-04 15:50:29 +02:00
Jürg Lehni
ce01d2cc59 Start implementing CurveFlattener, as required for dashing. 2011-06-04 12:40:58 +01:00
Jürg Lehni
bff3e14155 Implement a first crude version of Curve.isSufficientlyFlat() 2011-06-04 12:40:36 +01:00
Jürg Lehni
5581eefd0c Define default value of t = 0.5 in Curve.subdivide(). 2011-06-04 12:40:07 +01:00
Jonathan Puckey
5e05f38df0 Path docs: add return tag for #getLocationAt. 2011-06-03 23:06:05 +02:00
Jonathan Puckey
d77e9cfb4f Path docs: add Positions on Paths and Curves group title and temporary Path Smoothing group title. 2011-06-03 23:05:22 +02:00
Jonathan Puckey
083099a919 Add Path#closed example. 2011-06-03 23:04:18 +02:00
Jonathan Puckey
8bb8baa199 Merge remote branch 'origin/master' 2011-06-03 22:30:23 +02:00
Jonathan Puckey
9f6e4f0491 Point docs: rename Vectorial Math Functions grouptitle to Vector Math Functions. 2011-06-03 22:30:06 +02:00
Jonathan Puckey
7abdce4f9c Implement Symbol#place(position) 2011-06-03 22:25:37 +02:00
Jürg Lehni
7c57324b3a Switch to Bootstrap.js version that is produced by compiling it with CORE_ONLY flag, and adapt Base.js so Base still gets exported. 2011-06-03 21:20:36 +01:00
Jürg Lehni
aade3391e5 Merge remote-tracking branch 'origin/master' 2011-06-03 17:46:48 +01: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
Jürg Lehni
702269675a Start adding support for rhino-canvas on server. 2011-06-03 14:05:55 +01:00
Jonathan Puckey
e9260562f2 Improve Group example code. 2011-06-03 14:25:25 +02:00
Jürg Lehni
931e5374b9 Merge remote-tracking branch 'origin/master' 2011-06-03 10:59:29 +01:00
Jürg Lehni
3ef55b2b4e No need for variable chaining here. 2011-06-03 10:59:20 +01:00
Jonathan Puckey
298c304660 Merge remote branch 'origin/master' 2011-06-03 11:34:34 +02:00
Jonathan Puckey
7d1297fcf4 Path#draw: Fix drawing of selected path handles. 2011-06-03 11:33:34 +02: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
Jürg Lehni
1b197741fa Add support for calculation of cumulative positioned offsets and use it to correctly determine visibility and event positions within canvases nested in relative divs. 2011-06-02 20:43:54 +01:00
Jonathan Puckey
5c88bdfac9 PlacedSymbol docs: use splitpane for constructor example. 2011-06-02 20:56:08 +02:00
Jürg Lehni
99e4cc7645 Add TODO comment about mousedown events not having delta set the first time. 2011-06-02 15:38:12 +01:00
Jürg Lehni
2ab7568d5d Fix typo. 2011-06-02 15:36:44 +01:00
Jürg Lehni
a1cbd53e23 Use modulo again in hsb conversion. 2011-06-02 15:33:46 +01:00
Jürg Lehni
016476d1dc Make sure mousemove events have lastPoint set even for the first move so event.delta is always defined for them. 2011-06-02 15:33:30 +01:00
Jürg Lehni
8b7eea4663 Merge remote-tracking branch 'origin/master' 2011-06-02 14:40:40 +01:00
Jürg Lehni
4a51ff4215 Remove unneeded blend mode. 2011-06-02 14:33:42 +01:00
Jonathan Puckey
5cede5f6ed Update Item#blendMode documentation. 2011-06-02 15:00:16 +02:00
Jonathan Puckey
4455b1c33c Documentation: fix Key.isDown example. 2011-06-02 14:48:21 +02:00
Jonathan Puckey
018ac46e87 Small improvement to Item#strokeCap docs. 2011-06-02 14:17:47 +02:00
Jonathan Puckey
5e9c64d9c8 View#onFrame docs: use code tags in description. 2011-06-02 14:17:02 +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