Commit Graph

294 Commits

Author SHA1 Message Date
ericdrowell
8d6103d1e0 get() now returns a Node.Array array which has node methods. This means that you can do stuff like layer.get('.shape').setX(300) 2012-09-22 21:27:44 -07:00
Eric Rowell
d0a1b2870e when calling layer.hide() or show(), the physical canvas element is hidden and shown rather than clearing and redrawing the layer. This greatly improves hide and show performance for layers 2012-09-18 09:25:16 -07:00
Eric Rowell
0f2cee5499 merged davonium's pull request which enables deep cloning 2012-09-17 23:20:23 -07:00
Eric Rowell
01c2b28a6c it turns out that there was only a problem with moveDown. refactored logic proposed by Adam 2012-09-17 22:49:24 -07:00
David Johansson
580e52689c Deep cloning. Cloning also clones children. Also added unit test to confirm that it's working as expected. 2012-09-02 23:44:00 +02:00
Eric Rowell
8883e80bfe cleaned up _getContentPosition() method and fixed event detections for stages below the fold on mobile devices 2012-08-26 22:42:54 -07:00
Eric Rowell
1de5bce6e5 multi line text now correctly supports shadows 2012-08-26 18:49:05 -07:00
Eric Rowell
c01c08d557 now removing color key from shapes hash when a shape is removed from the stage 2012-08-26 18:25:51 -07:00
Eric Rowell
89611aed5f rounding pos components when used with getImageData 2012-08-26 12:23:29 -07:00
Eric Rowell
79a1029adb fixed getIntersections bug 2012-08-26 11:00:18 -07:00
Eric Rowell
5e6c8774e8 the Sprite afterFrame function should only execute once 2012-08-26 00:24:38 -07:00
Eric Rowell
f08701e347 added radius type checking in setAttrs method 2012-08-26 00:11:46 -07:00
Eric Rowell
6eda6d2607 decided to split Circle and Ellipse shapes because it was causing too many issues related to the mixed data type of radius, which could be a number or object with x and y properties 2012-08-25 23:56:39 -07:00
Eric Rowell
ddfcab2d55 layer reordering now correctly reorders scene canvases 2012-08-25 22:26:25 -07:00
Eric Rowell
20f2158afb forgot to remove Class util as it is no longer used 2012-08-25 21:23:55 -07:00
Eric Rowell
1ad2530889 removed john resig's Class class because it was really slowing down node instantiations. Created a custom solution that's much lighter weight, and about 50% faster 2012-08-22 23:35:21 -07:00
Eric Rowell
d48aa321f4 removed resig's Class dependency to test performance gain 2012-08-22 23:13:09 -07:00
Eric Rowell
58ef06d372 applyFilter should generate a temp canvas based on the size of the image dimensions, not the user defined dimensions 2012-08-21 21:31:44 -07:00
Eric Rowell
47a0605e00 converting bufferImage to imageBuffer in Image.js 2012-08-21 19:55:32 -07:00
Eric Rowell
7b4ec5e6c8 changed bufferImage property to imageBuffer 2012-08-21 19:42:29 -07:00
Eric Rowell
4b142db887 don't apply buffer fill if fill is not defined and shape contains an image 2012-08-21 19:32:04 -07:00
Eric Rowell
cb68fa0215 fixed bug with isDragging method 2012-08-20 23:10:05 -07:00
Eric Rowell
15aeabacc1 added logic to correctly draw buffer paths for cases where a developer is creating an invisible mask for event detections 2012-08-20 22:11:13 -07:00
Eric Rowell
92208d8e56 moved color key generation logic from Container to Shape so that it's generated immediately, instead of on add 2012-08-20 21:55:05 -07:00
Eric Rowell
0640e0b705 mouseover and mouseout events should not fire during drag and drop 2012-08-19 23:46:06 -07:00
Eric Rowell
9093d9a512 refactored draw, _draw, and _drawChildren methods in such a way that isVisible and getListening logic resides in one place, therefore improving code quality 2012-08-19 20:44:45 -07:00
Eric Rowell
e99312ece2 refactored filtering logic 2012-08-19 13:09:27 -07:00
Eric Rowell
e19dae3402 rewrote intersects method, which now leverages the new getIntersection method. fixed up unit tests. also fixed bug with getIntersection method 2012-08-18 22:42:37 -07:00
Eric Rowell
f944409a1e new hit detection algo works with images that contain transparent pixels. Devs will need to use the createImageBuffer() method to create a higher precision buffer image 2012-08-18 22:02:16 -07:00
Eric Rowell
f53c43d4f7 added drawScene() method which only redraws the scene and not the buffer 2012-08-16 23:22:07 -07:00
Eric Rowell
e6e488025e hit detection color mapping now takes into account anti-aliasing color variations, which was causing issues when moving the mouse from one shape into another shape which were inside the same group. created getIntersections() method which returns an object with shape and pixel data 2012-08-16 23:03:28 -07:00
Eric Rowell
9cdbadc4fd refactored ancestor comparison logic to ensure that container handlers aren't incorrectly executed for mouseover mouseout. Fixed up functional tests 2012-08-16 22:03:39 -07:00
Eric Rowell
6a58830df3 draw methods now draw on both the front and back buffer by default, unless a canvas is passed as an argument. continued fixing up unit tests. Image width and height are now synced whenever the image object changes. 2012-08-15 23:13:50 -07:00
Eric Rowell
bae57488cf added support for image hit detection with new color mapping algo 2012-08-14 23:52:53 -07:00
Eric Rowell
02c6c7276f continued prep work for v4.0.0. removed detectionType property because new event engine uses one strategy. added new drawBuffer method so that you can redraw the buffer without redrawing the visible canvas. changed alpha to opacity. 2012-08-13 23:06:29 -07:00
Eric Rowell
ef14edede3 major refactoring of the event engine to better support new hit detection strategy 2012-08-11 23:14:49 -07:00
Eric Rowell
468f8ef2d3 checking in first phase of new hit detection algo, which enables high performance event detections even if there are hundreds of thousands of shapes. This is a giant improvement over the previous algo, and is a fairly big architectural change. Since the Animation architecture and API is also changing, I feel that these changes are big enough to warrant a new major version, v4.0.0 2012-08-11 16:22:01 -07:00
Eric Rowell
8c147ee2b5 added new performance test in preparation for new hit detection algo investigation 2012-08-10 20:48:42 -07:00
Eric Rowell
e5d195f9b4 temporarily disabled serialization unit tests 2012-08-09 11:13:20 -07:00
Eric Rowell
58cabf8ddc hooked node transitions and sprite animation into new animation API 2012-08-08 23:41:16 -07:00
Eric Rowell
b6db65301c rewrote Animation API to improve flexibility. Animations are no longer tied to the stage. You can now instantiate as many individual animations as you like, and manage them however you like 2012-08-04 00:23:56 -07:00
Eric Rowell
9ad9121259 Kinetic.Animation is now a class that can be instantiated to better represent animation objects. Rather than creating new animation objects and destroying them each time an animation is started and restarted, the same animation obect is now reused, which should help with performance 2012-07-31 23:23:00 -07:00
Eric Rowell
d5eee80c0e changed tempNodes array into a hash to improve performance 2012-07-31 21:35:04 -07:00
Eric Rowell
ed8c5ab6b8 changing the font size now correctly updates the text data 2012-07-31 21:13:25 -07:00
Eric Rowell
b7ac415ea6 transition callback is now executed immediately after final node draw 2012-07-31 21:01:48 -07:00
Eric Rowell
75b20573cd removed plugins directory because Kinetic will be using a configurator in the near future 2012-07-31 20:36:36 -07:00
Eric Rowell
87182d704c fixed bug with stage.remove(layer). layer canvas context is now correctly removed from the dom 2012-07-28 22:16:29 -07:00
Eric Rowell
e69c7a9ac1 moved Path back to the plugins, and added Geometry utility methods to the Path namespace so that they can be called as a utility methods without instantiating a Path shape 2012-07-28 17:37:24 -07:00
Eric Rowell
e82fbfa2b0 decided to move Path back into core 2012-07-28 16:33:18 -07:00
Eric Rowell
4ea094f459 moved path parsing logic to Geometry class 2012-07-28 16:29:37 -07:00