dojox.gfx: what's next, after, later
TRANSCRIPT
© 2011 IBM Corporation
GFX: After, next, later
Patrick Ruzand, IBM
April, 4th, 2012
© 2011 IBM Corporation2
GFX: After, next, later
Agenda
What’s new in 1.7 and 1.8
What’s next (1.9, 2.0)
What’s later (2.+)
Conclusion
© 2011 IBM Corporation3
GFX: After, next, later
Reminder: What’s new in 1.7
Input Events– Canvas support (mostly for Android 2.x devices)– Targeted shape accessible from event: evt.gfxTarget
Matrix new APIs:– matrix.multiplyRectangle– matrix.isIdentity
Shape UID– Shapes identified via a UID: Shape.getUID()– Internal registry a la dijit: gfx.shape.byId()– Note: when a shape is not needed anymore: gfx.shape.dispose(shape) !
(improved in 1.8)
© 2011 IBM Corporation4
GFX: After, next, later
What’s planned in 1.8
Clipping API– New method: Shape.setClip(clipGeometry)– Possible geometries:
• Rectangular: {x,y,width,height}• Ellipse: {cx, cy, rx, ry}• Polyline: {points}• Path: {d}
Destructor API– Free resources when shape to be destroyed– Shape.destroy()– Group.clear(/*Boolean*/ dispose)
SVG specific extension– Rendering option:
• shape.addRenderingOption(“shape-rendering”, “optimizeSpeed”);– Defs
• Shared resources (gradients)– SVG Filters (?)
© 2011 IBM Corporation5
GFX: After, next, later
What’s planned in 1.8
Canvas specific extension– Pixel access API (CanvasPixelArray and ImageData)– Surface.getImageData()– Surface.render(context) + aspect.before/after = pre/post-processing
Shared styles across multiple gfx shapes (?)
© 2011 IBM Corporation6
GFX: After, next, later
What’s next: 2.0+
1.8 leftover
Improve serialization– dojoAttachPoint: : contract between the logic and the graphic{children:[ { dojoAttachPoint:‘background’; shape: { type:’rect’} }, ...]}– Custom properties
gfx layout– Prerequesite:
• Text.getBoundingBox()• Bbox caching• Bbox changed notification
WebGL renderer experimentation (which use cases, if any…)
container.background.connect(…)