Categories

release notes

0.4.7 and 0.4.8(July 2nd, 2010)
0.4.6 (June 10th, 2010)
0.4.5 (April 21st, 2010)
0.4 (March 28th, 2010)
0.3.1 (March 17th, 2010)
0.3 (March 9th, 2010)
0.2 (Feb 7th, 2010)
0.0.1 (Dec 18th, 2009)

0.4.7 and 0.4.8 (July 2nd, 2010)
This is just a maintenance release, to keep up with the latest upgrade of GWT. There are no new functionalities. If you use GWT 2.0.3, use lib-gwt-svg 0.4.6. If you use GWT 2.0.4, use lib-gwt-svg 0.4.7. Finally if you use GWT 2.1.0M1, use lib-gwt-svg 0.4.8.

0.4.6 (June 10th, 2010)
package org.vectomatic.dom.svg.ui
SVGImage
The class now implements HasAllMouseHandlers. The <svg> element wrapped by SVGImage is now put into a <div> element, which improves the integration with other GWT widgets and libraries

package org.vectomatic.dom.svg

  • Changed many APIs to make better use of generics
  • Changed all the DOM list API to make them real iterable Java collections: OMNodeList, OMSVGLengthList, OMSVGNumberList, OMSVGPathSegList, OMSVGPointList, OMSVGStringList, OMSVGTransformList. This means they are no longer implemented as overlay types, but as wrapper objects which implement Iterable<T>
  • Added more helper methods to OMSVGPoint, OMSVGRect and OMSVGTransform
  • Changed the way wrappers manage event handlers. The underlying HandlerManager is no longer stored in the wrapper, but in the overlay type itself. This makes the wrappers truly “transparent” and removes the risk of incorrect behavior due to several HandlerManagers being instantiated for the same SVG object by calls which create wrappers (getElementById(), getFirstChild(), …)

OMNodeList
Added the following method

public final Iterator<T> iterator()

OMSVGLengthList
Added the following method

public final Iterator<OMSVGLength> iterator()

OMSVGNumberList
Added the following method

public final Iterator<OMSVGNumber> iterator()

OMSVGPathSegList
Added the following method

public final Iterator<OMSVGPathSeg> iterator()

OMSVGPointList
Added the following method

public final Iterator<OMSVGPoint> iterator()

OMSVGStringList
Added the following method

public final Iterator<java.lang.String> iterator()

OMSVGTransformList
Added the following method

public final Iterator<OMSVGTransform> iterator()

OMSVGPoint
Added the following methods

public final OMSVGPoint product(OMSVGPoint p)
public final native OMSVGPoint product(OMSVGPoint p, OMSVGPoint destination)
public final native float dotProduct(OMSVGPoint p)
public final native float crossProduct(OMSVGPoint p)
public final OMSVGPoint round()
public final OMSVGPoint round(OMSVGPoint destination)
public final OMSVGPoint floor()
public final OMSVGPoint floor(OMSVGPoint destination)

OMSVGRect
Added the following methods

public final boolean contains(OMSVGPoint p)
public final native OMSVGRect assignTo(OMSVGRect destination)
public final String getDescription()

OMSVGTransform
Added the following method

public final String getDescription()

package org.vectomatic.dom.svg.ui

  • Added classes and methods to support XPath queries on the SVG DOM

DOMHelper
Added the following method

public static <T extends OMNode> Iterator<T> evaluateXPath(OMSVGElement root, String expr, XPathPrefixResolver resolver)

SVGPrefixResolver
Creation

XPathPrefixResolver
Creation

SVGConstants
Added the CSS_TYPE constant

0.4.5 (April 21st, 2010)
package org.vectomatic.dom.svg
OMElement

Added a method to manage DOM attributes

public final String getAttributeNS(String namespaceURI, String localName)

OMSVGRect

Added the following methods

public final float getMaxX()
public final float getMaxY()
public final OMSVGRect intersection(OMSVGRect r)
public final OMSVGRect intersection(OMSVGRect r, OMSVGRect destination)
public final OMSVGRect union(OMSVGRect r)
public final OMSVGRect union(OMSVGRect r, OMSVGRect destination)

package org.vectomatic.dom.svg.ui

  • Improved javadoc
  • Added classes to implement SVG push buttons and toggle buttons
  • Added support for external SVG resources in client bundles
  • Improved the widgets sample in lib-gwt-svg-samples to demonstrate SVG buttons
  • Added a new sample in lib-gwt-svg-samples to demonstrate SVG SMIL animations

SVGButtonBase
Creation

SVGPushButton
Creation

SVGToggleButton
Creation

SVGExternalResource
Creation

package org.vectomatic.dom.svg.utils
DOMHelper

Added a method to manage DOM attributes

public static final native String getAttributeNS(Element elem, String namespaceURI, String localName)

0.4 (March 28th, 2010)

package org.vectomatic.dom.svg
package org.vectomatic.dom.svg.events

  • Added several custom events classes to represent the following svg events: focusin, focusout, activate
  • Fixed the SVG element classes (removed incorrect handler hooks for focus and blur events and added new hooks for focusin, focusout, activate events)
  • Added @Tag annotations to all element classes for UiBinder integration

FocusInEvent
Creation

FocusInHandler
Creation

HasFocusInHandlers
Creation

FocusOutEvent
Creation

FocusOutHandler
Creation

HasFocusOutHandlers
Creation

ActivateEvent
Creation

ActivateHandler
Creation

HasActivateHandlers
Creation

package org.vectomatic.dom.svg.ui

  • Added a SVG widget hierarchy to make use of SVG simpler and to provide integration with UiBinder
  • Added a resource bundle dedicated SVG type

SVGWidget
Creation

SVGImage
Creation

SVGResource
Creation

0.3.1 (March 17th, 2010)

  • Renamed the project from libgwtsvg to lib-gwt-svg for SEO
  • Added a new sample to lib-gwt-svg-samples to demonstrate SVG feature names

package org.vectomatic.dom.svg.utils

SVGConstants
Added constants for SVG feature names

DOMHelper

Added a method to test SVG features

public static native boolean hasFeature(String featureName)

0.3 (March 9th, 2010)

package org.vectomatic.dom.svg

OMElement

Added methods to manage DOM attributes

public final String getAttribute(String name)
public final void setAttribute(String name, String value)
public final void removeAttribute(String name)

OMNode

Fix bug in

getLastChild()

OMSVGDocument

Added helper methods to simplify basic shape creation

public final OMSVGCircleElement createSVGCircleElement(float cx, float cy, float r)
public final OMSVGEllipseElement createSVGEllipseElement(float cx, float cy, float rx, float ry)
public final OMSVGLineElement createSVGLineElement(float x1, float y1, float x2, float y2)
public final OMSVGRectElement createSVGRectElement(float x, float y, float width, float height, float rx, float ry)
public final OMSVGTextElement createSVGTextElement(float x, float y, short unitType, String data)

OMSVGElement

Added method to serialize SVG nodes to XML

public final String getMarkup()

OMSVGFilterElement

Added constants for filter inputs

OMSVGNumberList

Added helper methods to simplify number list creation

public final OMSVGNumber insertItemBefore(OMSVGSVGElement svg, float value, int index)
public final OMSVGNumber appendItem(OMSVGSVGElement svg, float value)
public final OMSVGNumber[] appendItems(OMSVGSVGElement svg, float[] values)
public final OMSVGNumber replaceItem(OMSVGSVGElement svg, float value, int index)

OMSVGPoint

Added helper methods to provide basic geometric operations on points

public final OMSVGPoint add(OMSVGPoint p)
public final native OMSVGPoint add(OMSVGPoint p, OMSVGPoint destination)
public final OMSVGPoint substract(OMSVGPoint p)
public final native OMSVGPoint substract(OMSVGPoint p, OMSVGPoint destination)
public final OMSVGPoint scale(float f)
public final native OMSVGPoint scale(float f, OMSVGPoint destination)
public final native OMSVGPoint assignTo(OMSVGPoint destination)

OMSVGRectElement

Added helper methods to deal with rect center

public final float getCenterX()
public final float getCenterY()

OMSVGStyle

Added method to clear a property

public final native void clearSVGProperty(String name)

OMSVGSVGElement

Added helper methods to set the width, height and viewBox of an SVG element

public final void setHeight(short unitType, float height)
public final void setViewBox(OMSVGRect rect)
public final void setViewBox(float x, float y, float width, float height)
public final void setWidth(short unitType, float width)

package org.vectomatic.dom.svg.impl

DOMHelperImpl

Implementation of the capability to redirect events to a capturing element

SVGElement

Implementation of XML serialisation

package org.vectomatic.dom.svg.utils

DOMHelper

Added the methods to provide capability to redirect events to a capturing element

public static OMSVGElement getCaptureElement()
public static HandlerRegistration setCaptureElement(OMSVGElement element, LoseCaptureHandler loseCaptureHandler)
public static void releaseCaptureElement()

Added helper method to compute a xlink URL

public static final String toUrl(String s)

0.2 (Feb 7th, 2010)

  • The generated code is now based on W3C IDLs instead of XPCOM IDLs. This provides a more standard-compliant / complete input (SVGElementInstance and SVGElementInstanceList are now present). Being pure OMG IDLs, they are also easier to parse than XPCOM IDLs which have a mutated grammar.
  • From the end-user point of view, the main difference is that there is now a separation between API (org.vectomatic.dom.svg package) and implementation (org.vectomatic.dom.svg.impl). Wrapper objects are used where implementing interfaces or providing browser-dependent implementations is required (mostly Element objects). SVG interfaces are now provided on wrapper types for polymorphic code. Overlay types are used for the implementation and are sometimes exposed directly for well standardized objects (like OMSVGRect, OMSVGPoint, OMSVGPathSeg).
  • The event model has been revamped (the work is not yet terminated). The low-level code does not rely on existing GWT code (since it is ill-suited to SVG). The high-level code relies on the new GWT event system
  • The generated packages dealing with stylesheet have been removed and replaced by an integration with the GWT style APIs
  • DOM integration has been improved. The library automatically manages DOM element imports. Wrapper types support DOM tree operations (like appendChild or getElementById) directly

0.0.1 (Dec 18th, 2009)

  • Initial release