Commit graph

51 commits

Author SHA1 Message Date
kangax
c5bf683d63 Display circle as rotating control, rather than square. 2012-05-15 18:01:57 +04:00
Kienz
7c0a2e65cd Bugfix seperate rotating point 2012-05-15 14:54:39 +03:00
Kienz
ee380cc3a0 Revert "Revert "Separate rotating corner""
This reverts commit cc41222b0d.
2012-05-15 00:46:05 +02:00
Kienz
cc41222b0d Revert "Separate rotating corner"
This reverts commit d95894f5c2.
2012-05-15 00:44:38 +02:00
Kienz
d95894f5c2 Separate rotating corner
These changes are based on the easel.ly project. The separate rotate
corner can enabled/disabled by the option hasRotatingPoint
(true/false). By default the option is set to false.
Maybe you can have a look at these changes.
2012-05-15 00:35:20 +02:00
Juriy Zaytsev
351ec5d48f Merge pull request #155 from balthazar/master
Add easing functions.
2012-05-13 07:43:06 -07:00
kangax
cba1d4ca21 [BACK_INCOMPAT] Move object straightening methods into its own, optional module (fabric.Object#straighten, fabric.Object.fxStraighten, fabric.Canvas#straightenObject). 2012-05-11 15:31:30 +04:00
Balthazar Auger
f2a37a3bc0 Adapt fabric.util.animate to work with general easing equations 2012-04-24 02:28:45 -03:00
Balthazar Auger
b2853e8717 Study how to insert easing functions 2012-04-24 00:27:18 -03:00
kangax
19dbb74307 Fix trailing commas. Closes #118. 2012-02-03 09:18:35 -05:00
kangax
e9dee5a37d Make SVG export of text more reliable (rgba()-based colors now work in Illustrator). Cut off decimal parts of values in SVG output, which slims down the size. 2012-02-01 18:43:52 -05:00
Tim de Koning
3795149dda Allow excanvas to kick in for IE8 and lower 2012-01-18 10:01:34 +01:00
kangax
23c4ec2068 [BACK_INCOMPAT] Remove fabric.Object#getCenter as it doesn't make sense (getLeft/getTop already return object center coordinates). 2012-01-10 14:16:16 -05:00
kangax
d870410a7d First (and almost complete) implementation of fabric.Canvas#toSVG. 2012-01-02 16:14:20 -05:00
kangax
f3a3e81ea2 [BACK_INCOMPAT] Fix JS error when calling fabric.Image#toDataURL. toDataURL is now asynchronous, and passes data url to callback (first argument) instead of returning it. Closes #79. 2011-11-18 10:44:53 -05:00
kangax
19f7736658 Update documentation and fix JSDoc templates. 2011-09-22 12:40:31 -04:00
kangax
2deedd02dd Fix regression in rendering with some of the path groups. 2011-08-26 12:54:49 -04:00
kangax
8f819bb760 Fabric can now run under node.js 2011-08-11 15:18:18 -04:00
kangax
35ad4bf6e3 Preparing fabric to run on node.js 2011-08-05 19:00:26 -04:00
kangax
04bb0aad66 Add "hasControls" and "hasBorders" options to fabric.Object. "hasControls", when set to false allows to fully disable controls rendering (and mouse detection); hasBorders does the same for object borders. Fix failing unit tests. Update QUnit. 2011-08-02 19:35:02 -04:00
kangax
29ae6b8f0f Closes #40. Objects, boundaries of which are fully contained within boundaries of other objects are now sent to back/forward properly (via canvas.sendBackwards/canvas.bringForward). 2011-07-26 00:20:57 -04:00
kangax
15aef846e3 Move fx-related methods from canvas.class.js to a separate canvas.fx.js "module". 2011-07-09 12:18:51 -04:00
kangax
48a02e5ecb Path objects that are part of the group now have 'group' property that references their parent group. Path that are part of the group are now positioned in better accordance with spec. 2011-07-09 11:10:40 -04:00
kangax
5fc29b1dbb Add fabric.Object#animate. Tests to come. 2011-07-04 23:28:32 -04:00
kangax
628efcdc70 fabric.Element is renamed to fabric.Canvas, which makes more sense. fabric.Element is kept for compatibility reasons (but is deprecated). Bump version to 0.3. 2011-06-28 19:14:40 -04:00
kangax
0a9d835b12 Dynamically generate accessors based on state properties — width, height, fill, opacity, scaleX, scaleY, etc. For example, rect.set('fill', 'red') can now be replaced with rect.setFill('red'), and rect.get('opacity') with rect.getOpacity(). 2011-05-31 00:56:01 -04:00
kangax
d7fd8f0af3 fabric.Object#set can now be passed an object of property/value pairs rather than just property and value. E.g.: rect.set({ width: 100, height: 50, fill: 'red' }). 2011-05-29 21:59:48 -04:00
kangax
1f0b1280d4 Add unit tests for fabric.Object#selectable; make sure "selectable" is part of toJSON/toObject output. Fix failing fabric.Object unit tests. 2011-05-11 17:48:43 -04:00
kangax
79e37bbf30 Add fabric.Object#selectable Boolean property (true by default), which can be used to control object selection. 2011-05-11 15:56:49 -04:00
kangax
a7f7bdaf80 Make _removeDefaultValues more flexible. 2011-05-10 16:41:51 -04:00
kangax
b60edcc379 Much more usable multiline text. 2011-03-21 03:53:23 -04:00
kangax
dd4f178389 Allow options with falsy values (e.g. 0 or "") 2011-03-01 19:26:24 -05:00
kangax
df76f5d688 Change the way options are set for an object (don't use options property — which makes for quite expensive iteration during initialization — and instead take advantage of prototypal inheritance). 2011-02-09 18:21:45 -05:00
kangax
2ade9dc0f8 More optimizations: setCoords doesn't need to be invoked on an object before it's added to canvas. This makes most sense when creating path groups, since each of the paths in a path group doesn't really need to have coords. Coords are used to determine object boundaries when moving/scaling/rotating objects, and paths in pathgroup never participate in it (instead, pathgroup does). 2011-02-09 17:30:35 -05:00
kangax
45c9a333a8 Few optimizations in _parsePath implementation. 2011-02-09 16:35:46 -05:00
kangax
da6b00fc0e Introduce fabric.Element#stateful and fabric.Element#renderOnAddition options, as a way to improve performance. Note that setting "renderOnAddition" to false could give a pretty significant performance boost when adding a lot of objects to canvas at once, since fabric.Element#add would not re-render canvas on each addition. Once added, the canvas should be re-rendered manually, via renderAll method. 2011-02-06 02:58:32 -05:00
kangax
bf8bb679f7 Remove an assignment that was used for debugging. 2011-01-23 03:42:17 -05:00
kangax
0dae843114 Revamp object corner detection logic (now, finally, corners are detected properly). 2011-01-23 03:30:22 -05:00
kangax
a40e9cd610 Initial implementation of gradients. Work in progress (but demo page now has working "gradientify" button). Still need to add tests, and make sure gradient-based fills on SVG elements are parsed/set properly. 2011-01-09 01:38:54 -05:00
kangax
b550020024 Elements that are descendants of <defs> elements are no longer rendered (as per spec). 2011-01-06 15:20:56 -05:00
kangax
f497327131 Fabric now runs fully under ES5 strict mode (except certain 3rd party dependencies, like cufon.js and json2.js). 2010-10-21 22:54:00 -04:00
kangax
f052a067ef More documentation. 2010-10-19 16:27:24 -04:00
kangax
639aa12e2a Another chunk of documentation (which is a bitch, by the way). 2010-10-14 22:16:24 -04:00
kangax
415205d3f2 Document bunch of API (still incomplete, but getting there). 2010-10-14 17:42:39 -04:00
kangax
d8937fca9f Only render circles and ellipses according to left/top when they are part of a group. 2010-09-09 17:55:43 -04:00
kangax
ef73b46f7c Fix simple shapes (triangle, circle, etc.) being drawn with corners while in selection. Minor perf. improvements. 2010-08-02 14:13:07 -04:00
kangax
7e7a7ff719 Math.floor --> ~~ for slight perf. increase (only do this for positive numbers). 2010-07-31 14:06:10 -04:00
kangax
a2bb25043c toJSON now returns object instead of a string (fixes bug with JSON.stringify returning incorrect — double — serialization of an object). 2010-07-29 13:50:09 -04:00
kangax
313cffa57f Remove try/catch from around event handlers (for perf. reasons). Remove APE.anim references from fxCenterObjectH and fxCenterObjectV. 2010-07-27 14:07:59 -04:00
kangax
ad679a6f87 Create local aliases of some of the "long" methods. 2010-07-26 19:20:19 -04:00