Commit graph

400 commits

Author SHA1 Message Date
kangax
330784ac2c [BACK_INCOMPAT] Change default objects' originX/originY to left/top 2013-11-04 00:15:49 +01:00
Lorenzo Polidori
d1642c0729 Added object controls visibility (github issue #552). 2013-11-03 23:08:05 +00:00
Kienz
5017bc6626 [BACK_INCOMPAT] fabric.StaticCanvas#backgroundImage and fabric.StaticCanvas#overlayImage are fabric.Image instances. fabric.StaticCanvas#backgroundImageOpacity, fabric.StaticCanvas#backgroundImageStretch, fabric.StaticCanvas#overlayImageLeft and fabric.StaticCanvas#overlayImageTop were removed.
`backgroundImage` and `overlayImage` are now `fabric.Image` instances
New property `overlayColor` (analog to `backgroundColor`) - should be set with `canvas.setOverlayColor`
`backgroundImageOpacity` was removed => use `fabric.Image#opacity`
`overlayImageLeft ` was removed => use `fabric.Image#left`
`overlayImageTop ` was removed => use `fabric.Image#top`
`backgroundImageStretch` was removed => use `fabric.Image#width` and `fabric.Image#height`. If you scale your canvas you have to adjust the backgroundImage width/height manually.
Update SVG output.
Add 2nd parameter `firstLetterOnly` to `fabric.util.string.capitalize` => only first letter is transformed to uppercase (other letters stay untouched)
Add `preserveAspectRatio="none"` to `fabric.Image#toSVG` (otherwise streched backgroundImage and overlayImage didn't work as expected)
Update examples - TODO: Update jsfiddles for `setBackgroundImage` and `setOverlayImage`
Add unit test

Closes issue #270
2013-11-03 13:09:49 +01:00
Kienz
6f115bbf1e Fix fabric.util.enlivenObjects for empty fabric.Group objects
Add unit test
Fixes issue #943
2013-11-02 16:02:38 +01:00
kangax
c6ff46269c Preserve canvas reference in fabric.Object#toDataURL. Closes #938 2013-10-31 16:00:31 +01:00
Alex Chuchunkov
a6f8e16c81 stopObserving w/o arguments removes all event - handler pairs. Closes issue #936 2013-10-29 22:47:29 +04:00
kangax
ae5973676a Support includeDefaultValues in shadow serialization 2013-10-25 09:05:39 +02:00
Kienz
14d053e9b2 Fix unit test 2013-09-29 10:21:55 +02:00
Kienz
be86429b32 Add reviver function to fabric.Canvas.toSVG.
Reviver function accepts one parameter (svg string representation of object instance) and should return svg string.
Add qunit test.
2013-09-29 09:22:44 +02:00
kangax
f2ad6e5be6 [BACK_INCOMPAT] Move "backgroundColor" from fabric.Text to fabric.Object (only works with text for now). Remove fabric.Object#overlayFill. Remove fabric.Canvas.toGrayscale, fabric.Object#toGrayscale, and fabric.Object#overlayFill. Version 1.3.5 2013-09-28 23:47:53 +02:00
kangax
83ca60e885 Fix resolveNamespace and getKlass on node 2013-09-24 13:25:38 +02:00
Kienz
cabc63c633 Fixed unit test 2013-09-20 22:38:37 +02:00
Stefan Kienzle
60e9d0f144 [BACK_INCOMPAT] Initialization of fabric.Image.filters.Tint is now different - options.color: color string value, options.opacity: 0..1
Now you can define opacity of the tint filter (by rgba/hsla colors or with opacity attribute)
Doc additions
2013-09-20 19:51:55 +02:00
Kienz
cb510b9ef3 Fixed fabric.Group.toSVG- object order was wrong 2013-09-18 19:17:50 +02:00
kangax
408a8b9de6 Alias "jpg" format to "jpeg". Closes #806 2013-09-14 18:44:44 +02:00
Kienz
26e784aede Move setColorfrom fabric.Text to fabric.Object
Fixed "enum" notation
`fabric.Object.setGradient` is now chainable
Doc additions
Add `fabric.Object.setPatternFill`unit test
Add chainable tests to some methods
2013-09-14 17:10:49 +02:00
Juriy Zaytsev
a7489774fd Merge pull request #840 from Kienz/patch-2
`fabric.Observable.on` and `fabric.Observable.off` can add/remove multiple handlers (object with key/value pairs). Closes #838
2013-09-12 14:49:31 -07:00
Kienz
1e1adc7831 fabric.Observable.on and fabric.Observable.off can add/remove multiple handlers (object with key/value pairs)
Update jsdoc
Add unit tests
2013-09-12 20:43:31 +02:00
Kienz
9f6dea5d9e Add reviver function to fabric.Canvas.loadFromJSON (and loadFromDatalessJSON)
Add unit test
2013-09-12 20:10:23 +02:00
kangax
5ebd697978 [BACK_INCOMPAT] Remove selectable, hasControls, hasBorders, hasRotatingPoint, transparentCorners, perPixelTargetFind from default object/json representation of objects. Fix includeDefaultValues. Version 1.2.13. Closes #795 2013-09-11 11:41:00 +02:00
Stefan Kienzle
d190c31e8b Renamed fabric.Shadow.getShadow to fabric.Shadow.toString 2013-09-05 18:09:34 +02:00
Kienz
8c74f2b335 [BACK_INCOMPAT] fabric.Text#textShadow has been removed - new fabric.Text.shadow property (type of fabric.Shadow)
[BACK_INCOMPAT] `fabric.BaseBrush`shadow properties are combined into one property => `fabric.BaseBrush.shadow`(shadowColor, shadowBlur, shadowOffsetX, shadowOffsetY no longer exist)
Removed fabric.Text.getText method => is generated with `fabric.util.createAccessors`
`fabric.Shadow` can now initialized with string or object (e.g. '10px 10px 5px rgb(0,0,255)', 'rgb(0,0,255) 10px 10px 5px', {color: 'gb(0,0,255)', offsetX: 10, offsetY: 10, blur: 5})
`fabric.Shadow.getShadow`to get css3 declaration of shadow (String)
`fabric.Object.set('shadow', value)`is now the same as `fabric.Shadow.setShadow(value)`
Add unit tests
2013-09-03 19:11:21 +02:00
kangax
9539306a0e Add test for context in trigger 2013-09-03 11:53:10 +02:00
kangax
ec32a3c399 Make on/off/trigger chainable 2013-09-03 11:52:10 +02:00
kangax
191ce1aa69 Build distribution, fix unit test 2013-08-30 13:52:24 +02:00
Stefan Kienzle
89f3ab0668 Fix fabric.Circle.set for radius - update width/height if radius is set
Closes issue #811
2013-08-30 11:51:08 +02:00
Kienz
345ed3f5e9 Fix fabric.Text#fontFamily in SVG output - Closes issue #813
Add unit tests
2013-08-29 22:06:24 +02:00
kangax
434bfb2c6d Fix fabric.Canvas subclassing; fabric.Canvas, fabric.StaticCanvas now created via createClass. 2013-08-28 15:17:25 +02:00
Kienz
f31a62a25c Add encoding to canvas.toSVG(options)
Add unit tests for canvas.toSVG
2013-08-27 20:32:15 +02:00
kangax
78dc27a029 Call abort in context of an object. Closes #803 2013-08-23 14:30:33 +02:00
Kienz
026df90193 Add fabric.Image.filters.Mask unit test 2013-08-18 21:01:50 +02:00
Kienz
a61b384684 Add toJSON back to image filters
Add toJSON to unit tests
2013-08-09 20:37:56 +02:00
Kienz
f2035da955 Add image filter tests
Doc fixes
2013-08-09 19:59:30 +02:00
Stefan Kienzle
6599d393ac Fix fabric.Image.setElement - now _element and _originalElement (until now _originalImage) are set. Closes #745
Add additional parameter callback (invoked after filters habe been applied).
Fix `fabric.Image.fromObject` - don't overwrite image width/height with object width/height.
`fabric.Image.applyFilters` only resets _originalElement - fixes issue if object's width/height are different to _originaElement's width/height
[BACK_INCOMPAT] Renamed `fabric.Image.filters` method `toJSON` -> `toObject`
Fix serializiation of fabric.Image filter objects
2013-08-09 14:18:27 +02:00
Kienz
b63a943137 Renamed property renderOnAddition to renderOnAddRemove
fabric.Canvas.renderAll can now be disabled on removing objects (renderOnAddRemove = false)
Add tests for renderOnAddRemove (add, insertAt and remove)
jsdoc additions
2013-08-07 21:01:45 +02:00
kangax
67b54a44a5 Fix pattern toSVG 2013-07-22 22:00:03 +02:00
kangax
974ed943b8 Fix polyline, polygon tests and JSHint warnings 2013-07-22 14:39:07 +02:00
Kienz
c9d866dcf9 Fixed fabric.PathGroup.fromObject - use fabric.util.enlivenObjects to instatiate fabric.Path objects
Corrected jsdoc tags for fabric.PathGroup.fromObject, fabric.Path.fromObject and fabric.Path.fromElement
Fixed quint tests for fabric.Path and fabric.PathGroup
2013-07-18 22:21:19 +02:00
kangax
c8cab03aac [BACK_INCOMPAT] fabric.Path.fromObject is now async. fabric.Canvas#loadFromDatalessJSON is deprecated. 2013-07-12 22:38:21 +02:00
kangax
21f87bb63a Fix polygon/polyline tests and minor cleanup 2013-07-07 22:25:01 +02:00
kangax
33fd6c66b5 Version 1.2.1 2013-07-06 16:04:29 +02:00
Kienz
520b2258d3 Convert opacity value into float value. If stop-opacity is set as attribute (not as style attribute) el.getAttribute('stop-opacity') returns null. Problem exists since commit a0b7fa4eb9.
Add default value rgb(0,0,0) for stop-color and 1 for stop-opacity.
Add more gradient tests.
2013-07-02 21:09:50 +02:00
kangax
6597b8919b Make sure only existent custom properties included in output. Closes #713 2013-06-19 12:49:45 +02:00
Kienz
57de0f7f3a Add more tests to gradient (distinguish between linearGradient and radialGradient) 2013-06-18 22:34:18 +02:00
kangax
be8e921e57 Fix nested matrix multiplication. Closes #705 2013-06-13 23:10:33 +02:00
kangax
5bd8ba28d6 Fix loadFromJSON callback when objects array is empty. Closes #703 2013-06-13 13:39:17 +02:00
kangax
044f5ed483 Fix rect positioning when loading from JSON. Closes #522 2013-06-03 02:24:41 +02:00
kangax
5a28acb032 Fix toJSON/toSVG serialization when there's active group on canvas. Closes #645 2013-06-03 01:55:51 +02:00
kangax
2407dbba49 Implement clipTo serialization, deserialization, and initialization. Closes #583. Closes #677. Closes #676 2013-06-02 23:04:54 +02:00
kangax
221146997c Fix pattern initialization from function string. Closes #442. Version 1.1.18 2013-06-02 22:07:16 +02:00
kangax
1c1b7e4b95 Fix function body matching regex. Add fabric.util.getFunctionBody 2013-06-01 18:08:36 +02:00
Kienz
2c29c0cfab Fix typo, add hsl/hsla (with whitespaces) unit tests and move stuff outside of functions 2013-05-25 19:42:31 +02:00
Kienz
1ba6d1345e Merge remote-tracking branch 'origins/master' into parseSVGOpacity 2013-05-25 11:32:59 +02:00
Kienz
66fc8f4d4b Parse SVG stroke-opacity and fill-opacity
- SVG attribute opacity is now used for object's opacity
- fill-opacity and stroke-opacity are added to stroke and fill color value
- Add hsl/hsla support (e.g. hsl(270, 80%, 10%), hsla(320, 10%, 66%, 0.5))
- Add support for rgb/rgba values with whitespaces around values (e.g. rgba( 255 , 100 , 50 , 0.1 )) and percentage values (e.g. rgb(100%, 67%, 15%, 0.8))
- Delete stroke and strokeWidth from fabric.Text (defined in fabric.Object)
- New unit test for parse stroke-opacity and fill-opacity
- Update unit tests (new tests for hsl/hsla and rgb/rgba (whitespaces and percentage values))
- Change equal and deepEqual parameter order (e.g. equal(actualValue, expectedValue, message))
- Doc additions
2013-05-25 11:03:09 +02:00
kangax
d23cbcbb3a Fix unit tests 2013-05-23 20:16:08 +02:00
Kienz
c03c556177 Fix wrong positioned bounding box of fabric.Polygon and fabric.Polyline objects
- Substract minX and minY from points.x/points.y (_calcDimensions)
- Same in fromElement - but only if minX or minY is negative
2013-05-23 20:02:44 +02:00
Kienz
f0ca6b7b8f Remove fabric.Group.containsPoint => uses now fabric.Object.containsPoint
Update group unit test - containsPoint checks now scaled group and group with padding
Fix text unit test (complexity, toString)
2013-05-20 18:41:16 +02:00
Kienz
d80fec5df1 Better strokeDashArray support + Fixes
- fabric.Text has now strokeDashArray support (only native support)
- fabric.Text.fill = null should now work
- Fix save/restore context in render methods => setLineDash affected drawBorder/drawControls
- Add strokeLineCap (default "butt"), strokeLineJoin (default "miter") and strokeMiterLimit (default 10)
- Add support for fabric.Object#fromElement for strokeDashArray (and other stroke properties)
- Add @default tag to properties (JSDoc 3)
- strokeDashArray now only works if stroke property is defined
- Add trokeLineCap (default "round"), strokeLineJoin (default "round") to fabric.BaseBrush
- Updated unit tests
2013-05-18 13:01:34 +02:00
kangax
c65b1f5e7d Add support for parsing shorthand font declaration in styles, such as "font: italic 12px Arial,Helvetica,sans-serif" 2013-05-12 13:01:23 -04:00
Kienz
6e612facc6 Fix isContainedWithinRect and isContainedWithinObject, Add fabric.Object.containsPoint 2013-05-09 19:41:04 +02:00
kangax
a47128afa4 Add support for same options in fabric.Object#toDataURL as there are in fabric.Canvas#toDataURL. Closes #609 2013-05-06 11:52:16 -04:00
kangax
35d5cf220f [BACK_INCOMPAT] Make fabric.Object#toDataURL synchronous. Fix fabric.Object#cloneAsImage to preserve angle. Closes #596 2013-05-01 14:49:42 -04:00
kangax
eeecde62a8 Normalize style values. Closes #598 2013-05-01 02:58:59 -04:00
kangax
f6da728aad Add support for parsing "compressed" path data in SVG path's. Version 1.1.10 2013-04-29 11:12:20 -04:00
kangax
22de40dc54 Add support for pattern offsets (via fabric.Pattern#offsetX/offsetY). Version 1.1.8 2013-04-22 09:16:58 -04:00
kangax
e56d37d9da Fix text and line rendering in path group. Add support for multiple declarations in "transform" attribute. Fix stroke color of line. Version 1.1.7 2013-04-18 21:42:46 -04:00
kangax
fcc0c5cbbb Only call change and complete callbacks once, when animating multiple properties. Closes #544 2013-04-06 12:44:10 +02:00
kangax
5a3d59c3a7 Fix text unit test 2013-04-04 14:03:08 +02:00
kangax
d24d6307e5 [BACK_INCOMPAT] fabric.Object.setActive(…) -> fabric.Object.set('active', …). fabric.Object.isActive is gone (use active instead) 2013-03-29 16:26:27 +01:00
kangax
40bda07140 Fix fabric.Canvas#clipTo. Thanks @sn3p 2013-03-24 18:09:55 +01:00
Kienz
3a0a2c7fd2 Implement fabric.StaticCanvas#moveTo to move object to specified level in stack of drawn objects
You can also move fabric.Group objects in the grub objects stack to a specified level.

Add unit tests for moveTo.
2013-03-22 15:10:44 +01:00
kangax
919f95a0a0 Move collection-related methods to fabric.Collection, shared by fabric.Canvas and fabric.Group. 2013-03-20 10:28:35 +01:00
kangax
d89bbf0d8d Temporarily comment out unit tests that fail due to Node 0.10 bug (https://github.com/joyent/node/issues/5011) 2013-03-19 13:10:33 +01:00
kangax
e8e32e80de Fix gradient colorStops initialization. Thanks @Kienz 2013-03-18 13:11:31 +01:00
kangax
2622a380bf [BACK_INCOMPAT] fabric.Group#objects -> fabric.Group._objects (making it consistent with canvas._objects). Objects in group always have group reference to a group they're in. bringToFront, sendToBack, etc. now work in relation to group when called on objects within group. 2013-03-16 16:41:19 +01:00
kangax
9fb9b1ca34 Fix unit tests 2013-03-10 20:58:48 +01:00
kangax
506125bbe6 [BACK_INCOMPAT] fabric.Canvas.toDataURL now accepts options object instead linear arguments. fabric.Canvas.toDataURLWithMultiplier is deprecated; use toDataURL({ multiplier: … }) instead. 2013-03-06 18:47:50 +01:00
kangax
43dd170f5b Add fabric.Object#visible property. Closes #342. Version 1.0.13. 2013-03-06 18:45:18 +01:00
kangax
9be89b2f2f drawCorners -> drawControls, for consistency. Remove unused hasCorners and use hasControls instead of hideCorners. Version 1.0.12 2013-02-20 13:19:22 +01:00
kangax
9df85553b9 [BACK_INCOMPAT] Add fabric.util.createAccessors. Add accessors for fabric.Text -specific properties (setTextDecoration, setFontWeight, setFontStyle, etc.). Make text object dimensions change when setting dimension-affecting properties. fabric.Text#setFontsize becomes setFontSize. Version 1.0.11. 2013-02-18 16:22:48 +01:00
kangax
7b8dfe5a30 More test fixes 2013-02-17 13:48:21 +01:00
kangax
3f3d336852 Fix text unit tests 2013-02-17 13:26:53 +01:00
kangax
160e7e5ded Alias fabric.Observable.fire to trigger, similar to jQuery, Backbone, etc. Closes #401 2013-02-11 13:22:30 +01:00
kangax
97fa81aa77 Fix polygon boundaries. Closes #416 2013-02-11 13:21:33 +01:00
Arthaey
48ab4607b9 Add option to suppress XML preamble in toSVG method. 2013-02-05 22:20:56 -08:00
kangax
5ee9b13a92 Add support for shadows (via fabric.Shadow) 2013-02-04 20:49:05 +01:00
kangax
107dcfcbd6 Add fabric.Pattern tests 2013-02-03 17:01:01 +01:00
kangax
6777c50012 Add support for patterns 2013-02-03 02:15:29 +01:00
kangax
15eee3b861 Fix tests 2013-01-02 23:33:21 +01:00
kangax
7121830ca6 Merge dynamic origin branch into master. Version 1.0.0 2012-12-29 20:04:24 +01:00
kangax
2735d543e2 Merge master. Enable hasRotatingPoint by default (now that objects are not rotated via corners) 2012-12-26 11:18:17 +01:00
kangax
894988b508 Fix browser-based unit tests 2012-12-23 23:30:01 +01:00
kangax
c11abb377f Fix tests. Build distribution. Version 0.9.35. 2012-12-23 15:28:08 +01:00
kangax
4ae8b9d725 Simplify object straightening logic. Thanks @woutercommandeur. Closes #362. 2012-12-22 20:20:54 +01:00
kangax
882d7085d8 Fix fabric.Object#cloneAsImage on node. Closes #336. Version 0.9.34 2012-12-20 19:49:51 +01:00
kangax
f0d2235053 Fix group loading in dateless json. Closes #322 2012-12-20 16:23:31 +01:00
kangax
245de99834 Fix unit tests 2012-12-16 21:11:38 +01:00
kangax
35ba6c6bf5 Final fix for fabric.util.loadImage 2012-12-10 15:59:44 +01:00
kangax
5d1cfce96a Try to fix fabric.util.loadImage test once again. 2012-12-10 15:52:14 +01:00
kangax
26d735146f Fix fabric.util.loadImage test. 2012-12-10 15:44:30 +01:00
Kienz
332dcd81c2 Add unit tests for loadFromJSON with json object instead of json string 2012-12-08 13:38:19 +01:00
kangax
2b33b7f570 Locking properties (lockMovementX, lockMovementY, lockRotation, etc.) are now respected in groups. Closes #152. 2012-12-07 15:39:47 +01:00
kangax
7a1de3c57b Fix fabric.util.loadImage test. 2012-12-04 12:39:46 +01:00
kangax
801fd3fb4d Fix text test. 2012-12-04 12:03:16 +01:00
kangax
b330c9d715 Build distribution. Fix unit tests. Version 0.9.27. 2012-12-03 20:23:45 +01:00
kangax
1633bce401 Add most of the unit tests for fabric.util methods. Fix #35. 2012-12-01 17:52:03 +01:00
kangax
2329ef59fe Add support for specifying additional properties to return in toObject, toJSON. Fix #272. 2012-11-30 23:46:09 +01:00
kangax
dbe5ad2149 Adjust positioning of text objects created via fromElement. Fix #303. Version 0.9.20. 2012-10-31 00:19:13 +01:00
Steve Pemberton
e8a696c4b1 fix for retreiving scrolled & Fixed Descendants, Mouse Position 2012-10-24 19:56:48 +01:00
kangax
0e3abc745d Fix unit test 2012-10-23 23:10:17 +02:00
kangax
70784f55d9 Add support for off method to remove all handlers for event when not given any handlers. 2012-10-20 20:11:16 +02:00
kangax
8494350baf Remove onFpsUpdate as it's such a rarely used functionality (and could be accomplished on application level). 2012-10-20 20:10:32 +02:00
kangax
f9eeeb2916 Fix unit tests. 2012-10-14 02:53:25 +02:00
kangax
307c9503d4 Fix fabric.Group#toObject not serializing children image objects. Fix #260. 2012-10-08 21:01:29 +02:00
kangax
999f7f5231 Account for bounding box in scaleToWidth/scaleToHeight. Fix #271. Version 0.9.12. 2012-10-08 19:35:37 +02:00
kangax
b555245780 Add support for animating multiple properties. 2012-10-03 23:45:49 +02:00
kangax
0ead6db114 Path groups now have empty fill by default. 2012-09-10 19:54:47 -04:00
kangax
f8ecc529f5 Fix fontFamily setting. 2012-09-10 19:45:25 -04:00
kangax
44dc5f7fe7 Update text dimensions after changing text. Closes #257. Version 0.9.7. 2012-09-07 13:30:32 -04:00
kangax
7cf01772a4 Fix fabric.Text#set. 2012-09-07 13:15:42 -04:00
kangax
ada83ffff5 Change unstable image test once again 2012-09-06 12:06:40 -04:00
kangax
762cfb7b8a Fix unit tests. Add loadFromJSON test for previous fix. Version 0.9.5. 2012-09-02 12:28:52 -04:00
kangax
db37e1e855 Add convenience methods to objects, utilizing new object.canvas property — reference to a canvas to which an object was added last. Add unit tests for new methods. 2012-08-20 18:23:54 +02:00
kangax
9a7d40d7d7 Change the way gradients are initialized.
They no longer need `ctx` property, which is now taken from object directly during rendering time.
Add unit tests for gradients.
2012-08-20 18:23:53 +02:00
kangax
d97f08b5a3 Remove line.html file. 2012-08-20 18:23:53 +02:00
kangax
8e429ceaf9 Fix loadFromDatalessJSON when native text is present in data. Bump allowed node version to 0.8.6. 2012-08-15 15:30:59 +02:00
kangax
98614842e7 Bring IMG_WIDTH/IMG_HEIGHT back. 2012-08-14 16:13:30 +02:00
kangax
7151dc211c Fix failing unit tests. 2012-08-14 16:04:32 +02:00
David Rice
19763483df With node-canvas 0.13.0 (and libgif installed) image width/height can be determined for a .gif 2012-08-13 16:30:31 +01:00
kangax
3ce8507932 Implement fabric.Text.fromElement. Closes #182. 2012-08-11 18:59:53 +02:00
kangax
df02b880ae Remove no longer needed test files 2012-08-11 16:32:02 +02:00
kangax
fe9d927d47 Move site into a different repository. 2012-08-10 17:20:04 +02:00
kangax
fe08e6aa3b Revamp site to use jekyll. 2011-09-07 18:02:17 -04:00
kangax
8ea5f0d52c Closes #47. More conforming Function.prototype.bind. 2011-08-29 12:09:32 -04:00
kangax
a3d693302c Closes #38. Add support for fabric.Canvas#backgroundImage. 2011-08-28 14:55:33 -04:00
kangax
a41fd5dffd Closes #43. fabric.Text#set can now accept object with property/values. 2011-08-12 13:46:17 -04:00
kangax
8f819bb760 Fabric can now run under node.js 2011-08-11 15:18:18 -04:00
kangax
27999a327c Add unit tests for fabric.loadSVGFromString. 2011-08-04 20:48:25 -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
76b67aa34c [BACK_INCOMPAT] More consistent option names in fabric.Text: fontfamily --> fontFamily, fontsize --> fontSize, fontweight --> fontWeight (similarly to other options, like textShadow, textDecoration, fontStyle, etc.) 2011-07-21 20:32:02 -04:00
kangax
e3dd685f1b Add support for "textAlign" in fabric.Text. Could be any of "left", "center", or "right" values. Works with multiline text. 2011-07-21 14:53:48 -04:00
kangax
89c030ebdf Closes #18. Less confusing method names: removeActiveObject --> discardActiveObject, removeActiveGroup --> discardActiveGroup (since both of those methods don't actually _remove_ objects). [BACK_INCOMPAT] 2011-07-15 11:39:48 -04:00
kangax
c046bbd5f1 Closes #34 — Support multiple sequences of command arguments in SVG paths. 2011-07-09 15:50:44 -04:00
kangax
1bed43e3c4 Add unit tests for fabric.Observable. fabric.Canvas#observe can now accept object — canvas.observe({ event1: ..., event2: ... }). 2011-07-02 01:19:32 -04:00
kangax
31e3ae7bb7 Fix menu links on couple of pages. 2011-06-29 11:11:53 -04:00
kangax
a7155ccbfb Reorganize project structure. Add "customization" demo (work in progress). 2011-06-29 11:10:08 -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
6845db3670 Rework observable mechanism: All events are now scoped to canvas instances. fabric.util.observeEvent(...) becomes canvas.observe(...) and only observes events of that particular canvas instance. fabric.util.observeEvent becomes fabric.util.observe, fabric.util.stopObservingEventfabric.util.stopObserving, and fabric.util.fireEventfabric.util.fire. These could still serve as a generic pub-sub mechanism. Add "mouse:down" event (to be consistent with "mouse:up"). Add "Event inspector" demo page. 2011-06-27 18:25:45 -04:00
kangax
e7aafae9e7 Add support for "opacity" attribute. 2011-06-14 17:28:54 -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
c1150c714a fabric.Element now has forEachObject. Add header to /demos, /tests and /docs pages. 2011-05-22 09:57:37 -04:00
kangax
abaa87fbd0 Add fabric.Text#backgroundColor (can be used for text highlighting). Change default lineheight of text objects from 1 to 1.6. 2011-05-13 14:34:24 -04:00
kangax
fe37bc66a0 fabric.Element#loadImageFromURL no longer displays image that's being loaded. Fix getPointer unit test. 2011-05-11 18:58:51 -04:00
kangax
2be834d582 Make sure tests continue running even if image is not loaded. 2011-05-11 18:42:19 -04:00
kangax
f47a4eff0b Bump timeout interval for large images to load. 2011-05-11 18:38:54 -04:00
kangax
6af48ed1c7 Fix couple more unit tests. 2011-05-11 18:34:52 -04:00
kangax
3ea4a4ad95 Fix majority of failing unit tests. 2011-05-11 18:17:21 -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
5c7440cc13 Fix leaking of one element's attribute values onto another (following) element during SVG parsing. 2011-04-29 16:44:49 -04:00
kangax
7a28d275a3 Add test for issue #25 about parseSVGDocument and rect element. 2011-04-28 16:37:21 -04:00
kangax
cc0c5085d7 Add fabric.Circle#getRadiusX, fabric.Circle#getRadiusY methods. 2011-04-09 17:37:35 -04:00
kangax
849f2e226f Use non-minified distribution in suite runner. Will need to create a switch later. 2011-02-13 15:30:03 -05:00
kangax
34e2fbafc9 Prevent errors in parser.js unit tests. 2011-02-13 15:29:03 -05:00
kangax
95cfa88c77 Fix most of the fabric.Object unit tests. 2011-02-13 15:28:38 -05:00
kangax
afb841e085 Add another complex shape (~9K paths) to the raphael vs. fabric perf suite. 2011-02-09 00:41:27 -05:00
kangax
80148361f3 Add support for parsing <image> SVG elements and creating fabric.Image instances out of them. Backwards-compatibility note: fabric.parseElements changed signature from (elements, options) to (elements, callback, options) and is now an "asynchronous" method -- doesn't return a value, but instead passes it to a callback function (second argument). 2011-01-07 19:53:19 -05:00
kangax
2eea8d4468 Fix style attribute parsing + tests. Add one more shape to the demo (which utilizes style attribute). 2011-01-06 17:13:07 -05:00
kangax
19a82b2b50 Add test for elements inside <defs> being ignored. 2011-01-06 15:38:20 -05:00
kangax
d5a82f3fd9 Make sure straight lines are rendered. 2010-12-25 21:48:48 -05:00
kangax
415205d3f2 Document bunch of API (still incomplete, but getting there). 2010-10-14 17:42:39 -04:00
kangax
e70830f7d6 Introduce fabric.log and fabric.warn methods, as simple wrappers around console.log and console.warn (instead of declaring those methods right on console). This makes it easier to mock them when testing, and is generally safer due to less tinkering with host objects. 2010-10-11 14:45:06 -04:00
kangax
b35b559c6a String.prototype.trim now strips '\xA0' characters in engines which fail to match that character via \s. Fix a couple of unit tests. 2010-09-14 18:57:55 -04:00
kangax
769c0c1eb7 Function.prototype.bind now calls object it's being invoked on indirectly (better spec compliance), thanks Garrett Smith;
Unit test `fabric.util.makeElementUnselectable` and make test names in util module more descriptive.
2010-09-14 12:53:29 -04:00
kangax
f2f37e5ffd Update unit tests count. Add link to project on github to a demo page. Fix one of the remaining failing json tests. 2010-09-09 17:37:32 -04:00
kangax
18d217f2b8 Fix fabric.Object.prototype.toJSON test (which was testing toJSON according to old behavior — returning string, rather than an object). 2010-09-09 17:20:55 -04:00
kangax
e9fd7c6166 Fix bug in Polyline and Polygon points attribute parsing (thanks to unit tests). 2010-09-09 17:10:21 -04:00
kangax
ed4dca3117 Add unit tests for fabric.util.makeElement, fabric.util.addClass, and fabric.util.wrapElement. 2010-09-09 16:37:07 -04:00
kangax
d00a37d593 More effecient Function.prototype.bind and unit tests for bind, getById, and toArray. 2010-09-06 12:33:57 -04:00
kangax
6ba986da49 Add unit tests for fabric.util.object.extend and fabric.util.object.clone. 2010-09-01 17:56:59 -04:00
kangax
2d9fe82214 Add few more fabric.util unit tests — trim, camelize, capitalize. 2010-09-01 17:35:17 -04:00
kangax
9a9605fecd Alias Math.* methods for slight perf. increase.
Remove `fastestClearingMethod` test, as webkit has rendering bugs with `canvas.width = canvas.width` type of clearing.
Rename some properties/methods in `fabric.Element` from `_oXxxxx` & `_aXxxxx` to `_xxxxx`.
Add test for `fabric.Element::onFpsUpdate`.
2010-07-31 13:55:10 -04:00
kangax
536d532d41 Various compatibility fixes. Add fabric.util.falseFunction. 2010-07-27 17:58:23 -04:00
kangax
69d83c6484 Add information about test suite results in IE 6 & 7. Few tweaks to make test suite run in IE6. 2010-07-26 15:39:00 -04:00
kangax
34777a0fae Change benchmark to populate not only squares but circles and triangles as well (+ better opacity and positioning randomization). 2010-07-26 01:33:01 -04:00
Juriy Zaytsev
1264f05aa4 Some more renaming. 2010-07-24 00:34:18 -04:00
Juriy Zaytsev
33ad430a62 Rename test files: canvas_* --> * 2010-07-24 00:15:13 -04:00
Juriy Zaytsev
5d36a6393d Ensure test suite can be run on IE8 (currently there's ~30-40 failures). 2010-07-14 10:02:03 -04:00
Juriy Zaytsev
f4b8c6aa89 Change conditional comments so that excanvas.js is only downloaded in IE<9. 2010-07-14 09:25:23 -04:00
Juriy Zaytsev
492eda82a6 Fix loading order of objects in loadFromDatalessJSON. Fix few unit tests. 2010-07-13 16:17:33 -04:00
Juriy Zaytsev
2340a98526 Rename canvas_*.class.js files to just *.class.js 2010-07-09 21:50:13 -04:00
Juriy Zaytsev
2e72a4d8c5 Rename Canvas.* to fabric.* (lowercased name makes more sense since Canvas is not a constructor). 2010-07-09 19:43:50 -04:00
Juriy Zaytsev
4b5ac284e8 Fix remaining failing tests. 2010-07-09 18:58:33 -04:00
Juriy Zaytsev
7242ea93de Change Prototype unit testing framework to QUnit; change all tests accordingly. 2010-07-09 10:21:40 -04:00
Juriy Zaytsev
be20251d85 Remove few more prototype-isms, start transitioning to QUnit (it's not ideal, but should do for now). 2010-06-26 22:57:02 -04:00
Juriy Zaytsev
05a6aa4d42 Prototype.js and APE.js are no longer dependencies (shrinking overall size of fabric.js by ~150KB). Add json2.js and a simple base library (still needs tests). 2010-06-17 10:00:47 -04:00
Juriy Zaytsev
f8806b649e Start changing the way unit tests are run. 2010-06-16 15:19:11 -04:00
Juriy Zaytsev
fcb2877557 Replace $w with split(' ') (to remove dependency on global, non-descriptive variable and Prototype in general). Add few missing console.warn statements when double initialization is attempted. 2010-06-11 10:29:12 -04:00
Juriy Zaytsev
e1d036de71 Remove _unittest.js and some of the unnecessary modules from test loader. 2010-06-11 10:12:19 -04:00
Juriy Zaytsev
728b68a66c Import fabric.js unit tests from printio 2010-06-11 10:07:08 -04:00