List of usage examples for com.google.gwt.dom.client Element getNodeType
@Override
public short getNodeType()
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; }