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

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

Introduction

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

Prototype

@Override
    public short getNodeType() 

Source Link

Usage

From source file:com.alkacon.geranium.client.util.DomUtil.java

License:Open Source License

/**
 * Determines the position of the list collector editable content.<p> 
 * //  ww  w. j a  va 2s  .  c  om
 * @param editable the editable marker tag
 * 
 * @return the position
 */
public static PositionBean getEditablePosition(Element editable) {

    PositionBean result = new PositionBean();
    int dummy = -999;
    // setting minimum height
    result.setHeight(20);
    result.setWidth(60);
    result.setLeft(dummy);
    result.setTop(dummy);
    Element sibling = editable.getNextSiblingElement();
    while ((sibling != null) && !DomUtil.hasClass("cms-editable", sibling)
            && !DomUtil.hasClass("cms-editable-end", sibling)) {
        // only consider element nodes
        if ((sibling.getNodeType() == Node.ELEMENT_NODE)
                && !sibling.getTagName().equalsIgnoreCase(Tag.script.name())) {
            PositionBean siblingPos = PositionBean.generatePositionInfo(sibling);
            result.setLeft(((result.getLeft() == dummy) || (siblingPos.getLeft() < result.getLeft()))
                    ? siblingPos.getLeft()
                    : result.getLeft());
            result.setTop(((result.getTop() == dummy) || (siblingPos.getTop() < result.getTop()))
                    ? siblingPos.getTop()
                    : result.getTop());
            result.setHeight(
                    ((result.getTop() + result.getHeight()) > (siblingPos.getTop() + siblingPos.getHeight()))
                            ? result.getHeight()
                            : (siblingPos.getTop() + siblingPos.getHeight()) - result.getTop());
            result.setWidth(
                    ((result.getLeft() + result.getWidth()) > (siblingPos.getLeft() + siblingPos.getWidth()))
                            ? result.getWidth()
                            : (siblingPos.getLeft() + siblingPos.getWidth()) - result.getLeft());
        }
        sibling = sibling.getNextSiblingElement();
    }
    if ((result.getTop() == dummy) && (result.getLeft() == dummy)) {
        result = PositionBean.generatePositionInfo(editable);
    }
    if (result.getHeight() == -1) {
        // in case no height was set
        result = PositionBean.generatePositionInfo(editable);
        result.setHeight(20);
        result.setWidth((result.getWidth() < 60) ? 60 : result.getWidth());
    }

    return result;
}

From source file:com.cgxlib.xq.client.impl.AttributeImpl.java

License:Apache License

public void removeAttribute(XQ xq, String key) {
    for (Element e : xq.elements()) {
        if (e.getNodeType() != 1) {
            continue;
        }/*from   w  ww.  j  a  v a 2s  .  c o m*/
        if (JsUtils.hasProperty(e, key)) {
            if (BOOLEAN_ATTR_REGEX.test(key)) {
                e.setPropertyBoolean(key, false);
            } else {
                e.setPropertyObject(key, null);
            }
        }
        e.removeAttribute(key);
    }
}

From source file:com.cgxlib.xq.client.impl.AttributeImpl.java

License:Apache License

public void setAttribute(XQ xq, String key, Object value) {
    AttributeSetter setter = getAttributeSetter(key);
    if (setter.isRemoval(value)) {
        xq.removeAttr(key);/*from w  w  w  . ja  va  2  s .  c  om*/
        return;
    }
    value = fixValue(key, value);
    for (Element e : xq.elements()) {
        int nodeType = e.getNodeType();
        // don't set attribute on text, comment and attributes nodes
        if (nodeType == 3 || nodeType == 8 || nodeType == 2) {
            continue;
        }
        setter.setAttribute(e, key, value);
    }
}

From source file:com.sciencegadgets.client.algebra.EquationTree.java

License:Open Source License

private EquationNode bindXMLtoNodeRecursive(Element equationXMLNode) {

    EquationNode eqNode = new EquationNode(equationXMLNode);
    String id = eqNode.getId();//from w w  w. j  av  a2 s.  c  o  m
    idMap.put(id, eqNode);
    idMLMap.put(id, equationXMLNode);

    NodeList<Node> equationXMLNodeChildren = equationXMLNode.getChildNodes();
    for (int i = 0; i < equationXMLNodeChildren.getLength(); i++) {
        Element currentNode = (Element) equationXMLNodeChildren.getItem(i);

        if (currentNode.getNodeType() == Node.ELEMENT_NODE) {
            bindXMLtoNodeRecursive((Element) currentNode);
        }
    }
    return eqNode;
}

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

License:sencha.com license

/**
 * Looks at this node and then at parent nodes for a match of the passed simple selector (e.g. div.some-class or
 * span:first-child).//from w w  w .  j a v a2s.  c  o  m
 * 
 * @param selector the simple selector to test
 * @param maxDepth the max depth
 * @return the matching element
 */
public final Element findParentElement(String selector, int maxDepth) {
    Element p = this;
    Element b = Document.get().getBody();
    int depth = 0;
    while (p != null && p.getNodeType() == 1 && (maxDepth == -1 || depth < maxDepth) && p != b) {
        if (DomQuery.is(p, selector)) {
            return p;
        }
        depth++;
        p = (Element) p.getParentElement();
    }
    return null;
}

From source file:cz.cas.lib.proarc.webapp.client.ClientUtils.java

License:Open Source License

/**
 * Dumps Element content and traverse its children.
 * <p/><b>WARNING:</b> it is com.google.gwt.dom.client.Element not com.google.gwt.xml.client.Element!!!
 * //from  w  w  w.j  a v a 2s .com
 * @param elm an element to dump
 * @param indent row indentation for current level
 * @param indentIncrement increment for next level
 * @param sb dumped content
 * @return dumped content
 */
public static StringBuilder dump(Element elm, String indent, String indentIncrement, StringBuilder sb) {
    int childCount = elm.getChildCount();
    String innerText = elm.getInnerText();
    String lang = elm.getLang();
    String nodeName = elm.getNodeName();
    short nodeType = elm.getNodeType();
    String getString = elm.getString();
    String tagNameWithNS = elm.getTagName();
    String xmlLang = elm.getAttribute("xml:lang");

    sb.append(ClientUtils.format(
            "%sElement {nodeName: %s, nodeType: %s, tagNameWithNS: %s, lang: %s,"
                    + " childCount: %s, getString: %s, xmlLang: %s}\n",
            indent, nodeName, nodeType, tagNameWithNS, lang, childCount, getString, xmlLang));
    NodeList<Node> childNodes = elm.getChildNodes();
    indent += indentIncrement;
    for (int i = 0; i < childNodes.getLength(); i++) {
        Node child = childNodes.getItem(i);
        if (Element.is(child)) {
            dump(Element.as(child), indent, indentIncrement, sb);
        } else {
            sb.append(ClientUtils.format("%sNode: nodeType: %s, nodeName: %s, childCount: %s, nodeValue: %s\n",
                    indent, child.getNodeType(), child.getNodeName(), child.getChildCount(),
                    child.getNodeValue()));
        }
    }
    return sb;
}

From source file:fr.onevu.gwt.uibinder.client.impl.AbstractUiRenderer.java

License:Apache License

/**
 * Obtains the index of the method that will receive an event.
 * /*  www.j  a  v a 2s  .  com*/
 * @param table
 *          event types and field names indexed by the method that can handle
 *          an event.
 * @param root
 *          of a previously rendered DOM structure
 * @param event
 *          event to handle
 * @return index of the method that will process the event or
 *         NO_HANDLER_FOUND.
 */
private static int computeDispatchEvent(HashMap<String, Integer> table, Element root, NativeEvent event) {
    String uiId = root.getAttribute(RENDERED_ATTRIBUTE);

    EventTarget eventTarget = event.getEventTarget();
    if (!Element.is(eventTarget)) {
        return NO_HANDLER_FOUND;
    }

    Element cursor = Element.as(eventTarget);

    while (cursor != null && cursor != root && cursor.getNodeType() != Element.DOCUMENT_NODE) {
        String fieldName = getFieldName(uiId, cursor);
        if (fieldName == null) {
            cursor = cursor.getParentElement();
            continue;
        }
        String key = event.getType() + UI_ID_SEPARATOR + fieldName;
        if (table.containsKey(key)) {
            return table.get(key);
        }
        cursor = cursor.getParentElement();
    }

    if (cursor == root) {
        String key = event.getType() + UI_ID_SEPARATOR + ROOT_FAKE_NAME;
        if (table.containsKey(key)) {
            return table.get(key);
        }
    }

    return NO_HANDLER_FOUND;
}

From source file:org.opencms.gwt.client.util.CmsDomUtil.java

License:Open Source License

/**
 * Determines the position of the list collector editable content.<p> 
 * // w  w  w  . j av  a2s . c  o  m
 * @param editable the editable marker tag
 * 
 * @return the position
 */
public static CmsPositionBean getEditablePosition(Element editable) {

    CmsPositionBean result = new CmsPositionBean();
    int dummy = -999;
    // setting minimum height
    result.setHeight(20);
    result.setWidth(60);
    result.setLeft(dummy);
    result.setTop(dummy);
    Element sibling = editable.getNextSiblingElement();
    while ((sibling != null) && !CmsDomUtil.hasClass("cms-editable", sibling)
            && !CmsDomUtil.hasClass("cms-editable-end", sibling)) {
        // only consider element nodes
        if ((sibling.getNodeType() == Node.ELEMENT_NODE)
                && !sibling.getTagName().equalsIgnoreCase(Tag.script.name())) {
            CmsPositionBean siblingPos = CmsPositionBean.generatePositionInfo(sibling);
            result.setLeft(((result.getLeft() == dummy) || (siblingPos.getLeft() < result.getLeft()))
                    ? siblingPos.getLeft()
                    : result.getLeft());
            result.setTop(((result.getTop() == dummy) || (siblingPos.getTop() < result.getTop()))
                    ? siblingPos.getTop()
                    : result.getTop());
            result.setHeight(
                    ((result.getTop() + result.getHeight()) > (siblingPos.getTop() + siblingPos.getHeight()))
                            ? result.getHeight()
                            : (siblingPos.getTop() + siblingPos.getHeight()) - result.getTop());
            result.setWidth(
                    ((result.getLeft() + result.getWidth()) > (siblingPos.getLeft() + siblingPos.getWidth()))
                            ? result.getWidth()
                            : (siblingPos.getLeft() + siblingPos.getWidth()) - result.getLeft());
        }
        sibling = sibling.getNextSiblingElement();
    }
    if ((result.getTop() == dummy) && (result.getLeft() == dummy)) {
        result = CmsPositionBean.generatePositionInfo(editable);
    }
    if (result.getHeight() == -1) {
        // in case no height was set
        result = CmsPositionBean.generatePositionInfo(editable);
        result.setHeight(20);
        result.setWidth((result.getWidth() < 60) ? 60 : result.getWidth());
    }

    return result;
}