Commit graph

667 commits

Author SHA1 Message Date
Jürg Lehni
c836012d3d Add CurveLocation#getTangent() and #getNormal() and use them in Path's versions. 2011-04-27 19:26:03 +01:00
Jürg Lehni
bf0bc81892 Fix various minor bugs in CurveLocation: We cannot rely on most of its field to always be set and need to call getters instead. 2011-04-27 19:24:40 +01:00
Jürg Lehni
cc06a6f128 Remove CurveLocation#getPath() again as its functionality is provided by #getItem() already. 2011-04-27 19:22:57 +01:00
Jürg Lehni
ebc9bc88c4 Use 0 instead of null for empty bit flag fields. 2011-04-27 19:11:22 +01:00
Jürg Lehni
c6d96784ba Further simplify and compress code. 2011-04-27 18:16:32 +01:00
Jürg Lehni
f71967f3d3 Further simplify and compress code. 2011-04-27 17:57:56 +01:00
Jürg Lehni
6b6f27cb6e Add TODOs about not returning -1 for undefined. 2011-04-27 17:53:59 +01:00
Jürg Lehni
4bfc56bb6d Simplify and compress code a bit. 2011-04-27 17:53:23 +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
Jonathan Puckey
81a15379e5 Have Path#reverse also reverse the segment handles. 2011-04-27 15:49:06 +02:00
Jürg Lehni
ccbdb2abe3 Make preventDefault() work on IE too. 2011-04-27 12:41:52 +01:00
Jürg Lehni
ae3ec6f2d7 Remove comment about pending port that has been backported to Scriptographer. 2011-04-27 12:36:04 +01:00
Jürg Lehni
9671ac6dbc Remove comment about pending port that has been backported to Scriptographer. 2011-04-27 12:30:17 +01:00
Jürg Lehni
e6a0f48256 Further clean-up code, as we only need previous / next references inside one sub-condition. 2011-04-27 12:26:10 +01:00
Jürg Lehni
138ec7d93c No need to perform cyclic looping here now, since #getNext/Previous() does that for us. 2011-04-27 12:24:04 +01:00
Jürg Lehni
a251a24347 Add some TODOs to check. 2011-04-27 12:21:47 +01:00
Jürg Lehni
0e89466a11 Add cyclic looping to Segment#previous/next for closed paths. 2011-04-27 12:21:31 +01:00
Jürg Lehni
92369bf14f Seperate the private Segment#is/setSelected(point) methods from the newly added getter / setter. 2011-04-27 12:15:51 +01:00
Jürg Lehni
6204eef643 Remove comment about pending port that has been backported to Scriptographer. 2011-04-27 12:08:13 +01:00
Jürg Lehni
776edda51d Cleaned-up Segment#is/setSelected() code a bit. 2011-04-27 12:06:44 +01:00
Jürg Lehni
cd2347aa9b Remove comment about pending port that has been backported to Scriptographer. 2011-04-27 11:24:13 +01:00
Jürg Lehni
41eb09f15f Add forgotten brackets in Curve#isSelected() and remove comments about backporting as it is ported now. 2011-04-27 10:52:56 +01:00
Jürg Lehni
1c9cd9ace4 Clean up code in #setContextStyles(). 2011-04-27 09:53:53 +01:00
Jürg Lehni
b7a4277143 Add comment about _x / _y properties and clean up code a bit. 2011-04-26 17:57:12 +01:00
Jürg Lehni
ead1600afe Clean-up CurveLocation code and switch from returning -1 to null for #getIndex(). 2011-04-26 17:49:54 +01:00
Jürg Lehni
c4ede92e81 Fix error in Path#getLastCurve(). 2011-04-26 17:48:36 +01:00
Jürg Lehni
77ad25ffba Clean up port comments. 2011-04-26 17:47:30 +01:00
Jürg Lehni
ac5dca4fc0 Update various comments about TODOs. 2011-04-26 17:04:15 +01:00
Jürg Lehni
84d321bd56 Clean up comments. 2011-04-26 15:56:06 +01:00
Jürg Lehni
9ed0254cde Make sure global paper point works during bootstraping of library already. 2011-04-26 15:53:19 +01: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
Jürg Lehni
189182b77c Rename loop function to frame. 2011-04-26 15:16:05 +01:00
Jürg Lehni
a20f988511 Minor code cleanup. 2011-04-26 12:55:20 +01:00
Jürg Lehni
ba0c6dafea Add paper.debug switch, set it to true by default when loading code through load.js and use it to ignore focus / blur events in Event.requestAnimationFrame() during development. 2011-04-26 12:48:46 +01:00
Jürg Lehni
9d2459d799 Rename '// Todo' to '// TODO', which is the convention. 2011-04-26 12:39:48 +01:00
Jürg Lehni
f431dcab5c Add test code for dirty rectangle performance, deactivated by a boolean switch. 2011-04-26 12:37:37 +01:00
Jürg Lehni
e8a2a786e0 Fix Curve#getParameter() for straight lines. 2011-04-26 12:30:58 +01:00
Jürg Lehni
6609dc2307 Implement new root finding algorithm, combining Newton-Raphson Method with Bisection, and update Curve#getParameter() to use it. 2011-04-26 12:23:09 +01:00
Jürg Lehni
7868bc1bdc Remove obsolete comma. 2011-04-26 11:30:29 +01:00
Jonathan Puckey
e52ed9ae36 Key handlers: allow the user to prevent the default behaviour of key events. 2011-04-25 18:11:01 +02:00
Jonathan Puckey
1efb69e46f Key: small change to a todo comment. 2011-04-25 17:42:37 +02:00
Jonathan Puckey
778997ec18 Simplify Key further and fix ToolEvent#getModifiers. 2011-04-25 17:38:40 +02:00
Jonathan Puckey
404bbac3a5 Key: remove logging statement. 2011-04-25 17:30:24 +02:00
Jonathan Puckey
5d15c3dfef Simplify ToolEvent#getModifiers() & small cleanup in Key. 2011-04-25 17:26:58 +02:00
Jonathan Puckey
a96bb326f4 Some more simplifications in Key. 2011-04-25 17:16:45 +02:00
Jonathan Puckey
95bfebf64b Simplify Key a bit. 2011-04-25 17:08:08 +02:00
Jonathan Puckey
2e43fb0997 Key: add type to the key event. 2011-04-25 14:57:06 +02:00
Jonathan Puckey
05a138bc7b Implement onKeyDown / onKeyUp & Key#isDown(key). 2011-04-25 14:52:45 +02:00
Jonathan Puckey
1e4ae9afb4 Simplify ToolEvent#modifiers. 2011-04-25 12:05:18 +02:00
Jonathan Puckey
22bc08501e Implement ToolEvent#modifiers. 2011-04-25 11:52:52 +02:00
Jonathan Puckey
5e6630a1f3 Speed up drawHandle function. 2011-04-23 15:56:27 +02:00
Jonathan Puckey
f261da3279 Document#getSelectedItems: add todo. 2011-04-23 14:32:21 +02:00
Jürg Lehni
092c893d38 Merge remote-tracking branch 'origin/master' 2011-04-22 16:32:32 +01:00
Jürg Lehni
28c9254695 Rename onFrameLoop to onFrame. 2011-04-22 16:31:46 +01:00
Jonathan Puckey
538f360a6b Fix Document#getSelectedItems & Path#setSegments. 2011-04-22 12:30:38 +02:00
Jonathan Puckey
4d89d6c235 Path#setSegments: reset _selectedSegmentCount when setting a new segment list. 2011-04-22 11:39:12 +02:00
Jonathan Puckey
11063af8df CompoundPath cleanups. 2011-04-21 21:12:48 +02:00
Jonathan Puckey
1ea0a811b5 Use internal variables in CompoundPath#moveBy and Segment#isSelected. 2011-04-21 21:06:35 +02:00
Jonathan Puckey
af0543dac8 Some cleanups in Path. 2011-04-21 21:01:31 +02:00
Jonathan Puckey
dfb5cbc5eb Fix two bugs in the selected items code. 2011-04-21 20:52:28 +02: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
745f002cd3 Segment: add todo. 2011-04-21 20:00:11 +02:00
Jonathan Puckey
abb0878a25 Curve: Implement selection of curves. 2011-04-21 19:54:32 +02:00
Jonathan Puckey
cf541901dd Rename getSelected methods to isSelected. 2011-04-21 19:51:49 +02:00
Jonathan Puckey
d831d66758 Implement SelectionState.js: bitwise flags for segment selection state. 2011-04-21 19:37:51 +02:00
Jonathan Puckey
7867a46c35 Path#setSelected: do XOR correctly. 2011-04-21 18:45:36 +02:00
Jonathan Puckey
cf2faa14e3 Path#join: use internal variables. 2011-04-21 18:43:22 +02:00
Jonathan Puckey
ff9976ab57 Implement Document#getSelectedItems. 2011-04-21 18:10:47 +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
b2cd8cdec2 Path: use the internal SegmentPoint#_x and #_y properties where possible. 2011-04-21 15:25:25 +02:00
Jürg Lehni
985aa5aff8 Directly access internal _x and _y properties on internal SegmentPoints, to avoid callling getters. 2011-04-21 13:33:12 +01:00
Jürg Lehni
96f266b4d2 Add beginning of SegmentPoint class. 2011-04-21 13:21:56 +01:00
Jürg Lehni
00958afd09 Explain lookup tables in Numerical. 2011-04-21 12:37:35 +01: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
74cee4abef Implement Path#remove() and add tests for it. 2011-04-13 16:16:32 +02:00
Jonathan Puckey
6d4d07f2a8 Path.Constructors: simply Path.Star constructor. 2011-04-13 00:05:46 +02:00
Jonathan Puckey
8a113a1c84 Item: clean up white space. 2011-04-12 14:37:52 +02:00
Jonathan Puckey
0d4517c77f Path: add todos for missing functions. 2011-04-12 14:36:02 +02:00
Jonathan Puckey
60dca8c2e8 Path#cubicCurveTo: convert arguments to points first. 2011-04-12 14:35:42 +02:00
Jonathan Puckey
91d8dd1187 Path: add todos for missing functions. 2011-04-12 14:28:18 +02:00
Jonathan Puckey
491250ef14 Simplify Path.Star constructor. 2011-04-12 14:20:56 +02:00
Jonathan Puckey
12de77eb42 Path.Constructors: implement Path.Star and add tests. 2011-04-12 14:18:00 +02:00
Jonathan Puckey
bd59e48682 Fix problem with Point constructor when passed { angle: 0, length: n }, by checking for undefined. 2011-04-12 13:48:44 +02:00
Jonathan Puckey
2a9bbd3dee Fix Path#closePath & CompoundPath#closePath. 2011-04-11 23:33:08 +02:00
Jonathan Puckey
499c421021 Implement Path#join(path) and add tests for it. 2011-04-11 23:30:08 +02:00
Jonathan Puckey
d02885cba7 Implement Item#isParent and add tests for it. 2011-04-11 19:42:03 +02:00
Jonathan Puckey
594c11fedd CurveLocation: fix mistakes. 2011-04-11 19:36:40 +02:00
Jonathan Puckey
aa043428c0 CurveLocation: add empty line to end of file. 2011-04-11 19:33:34 +02:00
Jonathan Puckey
b46c6d0a29 Curve: implement getLocation(length), getLength(location), getTangent(length), getNormal(length) 2011-04-11 19:32:19 +02:00
Jonathan Puckey
d396f48c4b Implement CurveLocation. 2011-04-11 19:32:04 +02:00
Jonathan Puckey
5f05c85b42 Gradient: rename midPoint to rampPoint. 2011-04-07 17:12:00 +02:00
Jonathan Puckey
c875953198 Merge remote branch 'origin/master' 2011-04-07 17:03:33 +02:00
Jonathan Puckey
06df8b1288 Allow Gradient constructor to receive an array of colors or [color, midPoint]. Also allow the user to specify the type of the gradient in the constructor. 2011-04-07 17:01:49 +02:00
Jürg Lehni
08d0499251 Change comment. 2011-03-25 19:58:20 +02:00
Jürg Lehni
e83195bb8f Add #first/lastCurve getters. 2011-03-25 19:58:02 +02:00