public void setValue(T value, boolean fireEvents) {
        T oldValue = fireEvents
                ? getValue()
                : null;
        setText(renderer.render(value));
        if (fireEvents) {
            T newValue = getValue();
            ValueChangeEvent.fireIfNotEqual(this, oldValue, newValue);
        }
    }
Sets this object's text. Note that some browsers will manipulate the text
before adding it to the widget. For example, most browsers will strip all
<code>\r</code> from the text, except IE which will add a <code>\r</code>
before each <code>\n</code>. Use {@link #getText()} to get the text
directly from the widget.

@param text the object's new text
stroom-core-client-widget/src/main/java/com/google/gwt/user/client/ui/ValueBoxBase.java