Example usage for com.google.gwt.dom.client Element setInnerSafeHtml

List of usage examples for com.google.gwt.dom.client Element setInnerSafeHtml

Introduction

In this page you can find the example usage for com.google.gwt.dom.client Element setInnerSafeHtml.

Prototype

@Override
    public void setInnerSafeHtml(SafeHtml html) 

Source Link

Usage

From source file:com.dianaui.universal.core.client.ui.base.form.AbstractForm.java

License:Apache License

private void createFrame() {
    // Attach a hidden IFrame to the form. This is the target iframe to
    // which the form will be submitted. We have to create the iframe using
    // innerHTML, because setting an iframe's 'name' property dynamically
    // doesn't work on most browsers.
    Element dummy = Document.get().createDivElement();
    dummy.setInnerSafeHtml(IFrameTemplate.INSTANCE.get(frameName));

    synthesizedFrame = dummy.getFirstChildElement();
}

From source file:com.google.gwt.sample.showcase.client.content.cell.CompositeContactCell.java

private static HasCell<ContactInfo, Boolean> createStar(final CwCellList.Images images) {
    return new HasCell<ContactInfo, Boolean>() {
        @Override//from w  w  w.jav a  2s . co  m
        public Cell<Boolean> getCell() {
            return new AbstractCell<Boolean>(BrowserEvents.CLICK) {

                private ImageResourceRenderer renderer = new ImageResourceRenderer();

                @Override
                public void render(Cell.Context context, Boolean value, SafeHtmlBuilder sb) {
                    if (value != null) {
                        sb.append(renderer.render(value ? images.star() : images.starOutline()));
                    }
                }

                @Override
                public void onBrowserEvent(Cell.Context context, Element parent, Boolean value,
                        NativeEvent event, ValueUpdater<Boolean> valueUpdater) {
                    // Let AbstractCell handle the keydown event.
                    super.onBrowserEvent(context, parent, value, event, valueUpdater);

                    // Handle the click event.
                    if (BrowserEvents.CLICK.equals(event.getType())) {
                        // Ignore clicks that occur outside of the outermost element.
                        EventTarget eventTarget = event.getEventTarget();
                        if (parent.getFirstChildElement().isOrHasChild(Element.as(eventTarget))) {
                            boolean newValue = !value;
                            valueUpdater.update(newValue);
                            SafeHtmlBuilder sb = new SafeHtmlBuilder();
                            render(context, newValue, sb);
                            parent.setInnerSafeHtml(sb.toSafeHtml());
                        }
                    }
                }
            };
        }

        @Override
        public FieldUpdater<ContactInfo, Boolean> getFieldUpdater() {
            return new FieldUpdater<ContactInfo, Boolean>() {

                @Override
                public void update(int index, ContactInfo contact, Boolean value) {
                    contact.setStarred(value);
                }
            };
        }

        @Override
        public Boolean getValue(ContactInfo contact) {
            return contact.isStarred();
        }
    };
}

From source file:com.sencha.gxt.core.client.dom.CompositeElement.java

License:sencha.com license

/**
 * Sets the element's inner HTML.//  w w w.  j a  va2  s  .co  m
 *
 * @param html the html
 */
public void setInnerSafeHtml(SafeHtml html) {
    for (Element elem : items) {
        elem.setInnerSafeHtml(html);
    }
}

From source file:com.sencha.gxt.core.client.dom.XDOM.java

License:sencha.com license

/**
 * Creates a new element from the given markup.
 *
 * @param html the markup//from  ww  w .  ja  v a 2  s.c o m
 * @return the new element
 */
public static XElement create(SafeHtml html) {
    Element div = Document.get().createDivElement();
    div.setInnerSafeHtml(html);
    Element firstChild = div.getFirstChildElement();
    // support text node creation
    if (firstChild != null) {
        firstChild.removeFromParent();
    }
    return ((firstChild != null) ? firstChild : div).cast();
}

From source file:com.sencha.gxt.theme.base.client.widget.DatePickerBaseAppearance.java

License:sencha.com license

@Override
public void onUpdateDayOfWeeks(XElement parent, List<SafeHtml> days) {
    NodeList<Element> elems = parent.select("." + style.daysWrap() + " span");
    for (int i = 0; i < elems.getLength(); i++) {
        Element elem = elems.getItem(i);
        SafeHtml day = days.get(i);//  ww w .  j  av a2 s. com
        elem.setInnerSafeHtml(day);
    }
}

From source file:com.sencha.gxt.widget.core.client.form.error.ElementErrorHandler.java

License:sencha.com license

@Override
public void clearInvalid() {
    Element elem = element;
    if (elem == null) {
        elem = DOM.getElementById(elementId);
    }//  w w w.  ja v a  2s .c  o  m
    if (elem != null) {
        elem.setInnerSafeHtml(SafeHtmlUtils.EMPTY_SAFE_HTML);
    }
}

From source file:com.sencha.gxt.widget.core.client.form.error.ElementErrorHandler.java

License:sencha.com license

@Override
public void markInvalid(List<EditorError> errors) {
    Element elem = element;
    if (elem == null) {
        elem = DOM.getElementById(elementId);
    }//  ww w  .j  a  v  a2  s  . c o m
    if (elem != null && errors != null && errors.size() > 0) {
        elem.setInnerSafeHtml(SafeHtmlUtils.fromString(errors.get(0).getMessage()));
    }
}

From source file:com.sencha.gxt.widget.core.client.form.FormPanel.java

License:sencha.com license

private void createFrame() {
    // Attach a hidden IFrame to the form. This is the target iframe to which
    // the form will be submitted. We have to create the iframe using html,
    // because setting an iframe's 'name' property dynamically doesn't work on
    // most browsers.
    Element dummy = Document.get().createDivElement();
    dummy.setInnerSafeHtml(SafeHtmlUtils.fromTrustedString("<iframe src=\"javascript:''\" name='" + frameName
            + "' style='position:absolute; width:0; height:0; border:0;'>"));

    synthesizedFrame = dummy.getFirstChildElement();
}

From source file:com.sencha.gxt.widget.core.client.grid.RowExpander.java

License:sencha.com license

protected boolean beforeExpand(M model, Element body, XElement row, int rowIndex) {
    BeforeExpandItemEvent<M> e = new BeforeExpandItemEvent<M>(model);
    ensureHandlers().fireEvent(e);//ww w  . j  a  va2  s.c  om

    if (!e.isCancelled()) {
        body.setInnerSafeHtml(getBodyContent(model, rowIndex));
        return true;
    }
    return false;
}

From source file:com.sencha.gxt.widget.core.client.ListView.java

License:sencha.com license

protected void onAdd(List<M> models, final int index) {
    if (!isOrWasAttached()) {
        return;//  w  ww  .  j  av  a2s.  c  o m
    }

    boolean empty = all.getCount() == 0;
    // add on sorted store, fires multiple adds while store has all models
    // before firing
    if (empty && models.size() == store.size()) {
        refresh();
        return;
    }
    SafeHtmlBuilder sb = new SafeHtmlBuilder();
    bufferRender(models, sb);

    Element d = Document.get().createDivElement();
    d.setInnerSafeHtml(sb.toSafeHtml());
    List<Element> list = appearance.findElements(d.<XElement>cast());

    final Element ref = index == 0 ? null : all.getElement(index - 1);
    final Element n = ref == null ? null : ref.getParentElement();

    for (int i = list.size() - 1; i >= 0; i--) {
        Element e = list.get(i);
        if (index == 0) {
            getElement().insertFirst(e);
        } else {
            Node next = ref == null ? null : ref.getNextSibling();
            if (next == null) {
                n.appendChild(e);
            } else {
                n.insertBefore(e, next);
            }
        }
    }

    all.insert(Util.toElementArray(list), index);
    updateIndexes(index, -1);
}