Example usage for com.google.gwt.xml.client Node appendChild

List of usage examples for com.google.gwt.xml.client Node appendChild

Introduction

In this page you can find the example usage for com.google.gwt.xml.client Node appendChild.

Prototype

Node appendChild(Node newChild);

Source Link

Document

This method appends child newChild.

Usage

From source file:carteirainveste.client.DateUtil.java

License:Creative Commons License

static Element appendChildNode(Document doc, Node parent) {
    Element elem = doc.createElement(Constant.XML_TAG_PREFERENCES);
    parent.appendChild(elem);

    elem.setAttribute("stock_sell_spread", String.valueOf(sellSpread));
    elem.setAttribute("stock_broker_fee", String.valueOf(brokerFeeCents));
    elem.setAttribute("stock_tax_exemption_limit", String.valueOf(stockTaxExemptionCents));
    elem.setAttribute("stock_tax_fee", String.valueOf(stockTaxFee));
    elem.setAttribute("stock_daytrade_tax_fee", String.valueOf(stockDayTradeTaxFee));
    elem.setAttribute("stock_daytrade_affect_exemption_limit",
            String.valueOf(stockDayTradeAffectExemptionLimit.getValue()));
    elem.setAttribute("stock_exempt_gains_reduce_carried_loss",
            String.valueOf(stockExemptGainsReduceCarriedLoss.getValue()));
    elem.setAttribute("stock_tax_ratio_over_pretax_earnings",
            String.valueOf(stockTaxRatioOverPretaxEarnings.getValue()));

    /*/*from  w w  w.j  a  v  a 2  s  .  c  o  m*/
    Carteira curr = CarteiraInveste.carteiraAtual;
    String strCarryLoss = curr.startTaxCarryLoss.getText();
    if (strCarryLoss == null)
       strCarryLoss = CurrencyUtil.format(0);
    String strDayTradeCarryLoss = curr.startTaxDayTradeCarryLoss.getText();
    if (strDayTradeCarryLoss == null)
       strDayTradeCarryLoss = CurrencyUtil.format(0);
    */

    elem.setAttribute("stock_tax_start_carry_loss", startTaxCarryLoss.getText());
    elem.setAttribute("stock_tax_daytrade_start_carry_loss", startTaxDayTradeCarryLoss.getText());

    return elem;
}

From source file:carteirainveste.client.DateUtil.java

License:Creative Commons License

Element appendChildNode(Document doc, Node parent) {
    Element elem = doc.createElement(Constant.XML_TAG_QUOTE);
    parent.appendChild(elem);

    elem.setAttribute("date", Preference.dateFormat.format(quoteDate));
    elem.setAttribute("asset_name", quoteAssetName);
    elem.setAttribute("asset_amount", String.valueOf(quoteAssetAmount));
    elem.setAttribute("value", String.valueOf(quoteValue));

    return elem;/*from   w w  w  .j  a  v a  2  s  . c o m*/
}

From source file:carteirainveste.client.DateUtil.java

License:Creative Commons License

Element appendChildNode(Document doc, Node parent) {
    Element elem = doc.createElement(Constant.XML_TAG_OPERATION);
    parent.appendChild(elem);
    return elem;
}

From source file:com.sciencegadgets.client.entities.Equation.java

License:Open Source License

/**
 * Checks if the equation is solved, (in the form [variable = number]). 
 * @return variable id - If solved, the variable ID is returned. If not solved, null is returned.
 * @throws Exception// w w w  .  j  av  a2s.co  m
 */
public String getVarIdIfSolved() throws Exception {
    Document doc = PARSE_DOCUMENT(mathML);
    Node eqRootNode = doc.getFirstChild();
    NodeList elements = eqRootNode.getChildNodes();

    ArrayList<String> tagsRequired = new ArrayList<String>();
    tagsRequired.add(TypeSGET.Operation.getTag());
    tagsRequired.add(TypeSGET.Variable.getTag());
    tagsRequired.add(TypeSGET.Number.getTag());

    for (int i = 0; i < elements.getLength(); i++) {
        Element el = (Element) elements.item(i);
        boolean containedTag = tagsRequired.remove(el.getTagName());
        if (!containedTag) {
            return null;
        }
    }

    if (TypeSGET.Number.getTag().equals(elements.item(0).getNodeName())) {
        eqRootNode.appendChild(elements.item(1));
        eqRootNode.appendChild(elements.item(0));
        mathML = eqRootNode.toString();
        reCreateHTML();
    }

    Element var = (Element) elements.item(0);
    return var.getAttribute(MathAttribute.ID.getAttributeName());
}

From source file:com.sensia.gwt.relaxNG.RNGInstanceWriter.java

License:Open Source License

protected String writeRNGTag(RNGTag tag, Document dom, Node parentNode) {
    String text = null;/*  w w  w .j a va2 s . co  m*/
    String error = null;

    if (tag instanceof RNGElement) {
        RNGElement elt = (RNGElement) tag;
        Element newElt = dom.createElement(getFullName(elt.getNamespace(), elt.getName()));
        parentNode.appendChild(newElt);
        ensureNamespaceDecl(elt.getNamespace());
        for (RNGTag child : elt.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGAttribute) {
        RNGAttribute att = (RNGAttribute) tag;
        String name = getFullName(att.getNamespace(), att.getName());
        String value = writeRNGTag(att.getChildren().get(0), dom, null);
        ((Element) parentNode).setAttribute(name, value);
        ensureNamespaceDecl(att.getNamespace());
    }

    else if (tag instanceof RNGGroup) {
        RNGGroup grp = (RNGGroup) tag;
        for (RNGTag child : grp.getChildren())
            writeRNGTag(child, dom, parentNode);
    }

    else if (tag instanceof RNGOptional) {
        RNGOptional opt = (RNGOptional) tag;
        if (opt.isSelected())
            for (RNGTag child : opt.getChildren())
                writeRNGTag(child, dom, parentNode);
    }

    else if (tag instanceof RNGChoice) {
        RNGChoice choice = (RNGChoice) tag;
        if (choice.isSelected())
            text = writeRNGTag(choice.getSelectedPattern(), dom, parentNode);
        else
            error = NO_CHOICE;
    }

    else if (tag instanceof RNGZeroOrMore) {
        RNGZeroOrMore multiple = (RNGZeroOrMore) tag;
        for (List<RNGTag> tagList : multiple.getPatternInstances()) {
            for (RNGTag item : tagList)
                text = writeRNGTag(item, dom, parentNode);
        }
    }

    else if (tag instanceof RNGList) {
        RNGList list = (RNGList) tag;
        StringBuilder buf = new StringBuilder();

        for (RNGTag child : list.getChildren()) {
            String val = writeRNGTag(child, dom, null);
            if (val != null) {
                buf.append(val);
                buf.append(' ');
            }
        }

        if (buf.length() > 0)
            text = buf.toString();
    }

    else if (tag instanceof RNGRef) {
        RNGRef ref = (RNGRef) tag;
        if (ref.getPattern() != null) {
            for (RNGTag child : ref.getPattern().getChildren())
                writeRNGTag(child, dom, parentNode);
        } else
            error = NO_REF;
    }

    else if (tag instanceof RNGValue) {
        text = ((RNGValue) tag).getText();
        if (text == null)
            error = NO_VALUE;
    }

    else if (tag instanceof RNGText) {
        text = ((RNGText) tag).getText();
        if (text == null)
            error = NO_VALUE;
    }

    else if (tag instanceof RNGData<?>) {
        Object val = ((RNGData<?>) tag).getValue();
        if (val != null)
            text = val.toString();
        else
            error = NO_VALUE;
    }

    // deal with text nodes or attribute values
    if (text != null && text.length() > 0) {
        if (parentNode != null) {
            Text node = dom.createTextNode(text);
            parentNode.appendChild(node);
        } else
            return text;
    }

    // deal with error text
    if (error != null) {
        if (parentNode != null) {
            Comment c = dom.createComment(error);
            parentNode.appendChild(c);
        } else
            return error;
    }

    return null;
}

From source file:com.sensia.gwt.relaxNG.RNGWriter.java

License:Open Source License

protected void writeRNGTag(RNGTag tag, Document dom, Node parentNode) {
    if (tag instanceof RNGGrammar) {
        RNGGrammar grammar = (RNGGrammar) tag;
        Element grammarElt = dom.createElement("grammar");
        parentNode.appendChild(grammarElt);

        // insert namespace attributes
        grammarElt.setAttribute("xmlns", RNGParser.RNG_NS_URI);
        grammarElt.setAttribute("xmlns:a", RNGParser.ANNOT_NS_URI);
        for (Entry<String, String> ns : grammar.getNsPrefixToUri().entrySet())
            grammarElt.setAttribute("xmlns:" + ns.getKey(), ns.getValue());

        // includes
        for (Entry<String, RNGGrammar> include : grammar.getIncludedGrammars().entrySet()) {
            Element incElt = dom.createElement("include");
            grammarElt.appendChild(incElt);
            String href = include.getKey();
            href = href.substring(grammar.getId().length() + 1);
            // TODO generate correct relative url
        }/*from ww  w.j  a  v a2s .c o m*/

        // start pattern
        Element startElt = dom.createElement("start");
        grammarElt.appendChild(startElt);
        for (RNGTag child : grammar.getStartPattern().getChildren())
            writeRNGTag(child, dom, startElt);

        // defines
        for (RNGDefine def : grammar.getPatterns().values())
            writeRNGTag(def, dom, grammarElt);
    }

    else if (tag instanceof RNGDefine) {
        RNGDefine def = (RNGDefine) tag;
        Element newElt = dom.createElement("define");
        newElt.setAttribute("name", def.getId());
        parentNode.appendChild(newElt);

        for (RNGTag child : def.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGElement) {
        RNGElement elt = (RNGElement) tag;
        Element newElt = dom.createElement("element");
        newElt.setAttribute("name", getFullName(elt.getNamespace(), elt.getName()));
        parentNode.appendChild(newElt);

        for (RNGTag child : elt.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGAttribute) {
        RNGAttribute att = (RNGAttribute) tag;
        Element newElt = dom.createElement("attribute");
        newElt.setAttribute("name", getFullName(att.getNamespace(), att.getName()));
        parentNode.appendChild(newElt);

        for (RNGTag child : att.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGGroup) {
        RNGGroup grp = (RNGGroup) tag;
        Element newElt = dom.createElement("group");
        parentNode.appendChild(newElt);

        for (RNGTag child : grp.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGOptional) {
        RNGOptional opt = (RNGOptional) tag;

        if (!opt.isDisabled()) {
            Element newElt = dom.createElement("optional");
            parentNode.appendChild(newElt);

            if (keepUserInput)
                newElt.setAttribute("selected", Boolean.toString(opt.isSelected()));

            for (RNGTag child : opt.getChildren())
                writeRNGTag(child, dom, newElt);
        }
    }

    else if (tag instanceof RNGChoice) {
        RNGChoice choice = (RNGChoice) tag;
        Element newElt = dom.createElement("choice");
        parentNode.appendChild(newElt);

        // TODO handle degenerated choice (all items disabled except one)
        // in this case, don't even write choice envelope

        int selectedIndex = choice.getSelectedIndex();
        for (int i = 0; i < choice.getItems().size(); i++) {
            RNGTag item = choice.getItems().get(i);
            if (!item.isDisabled()) {
                writeRNGTag(item, dom, newElt);
                if (keepUserInput && i == selectedIndex)
                    ((Element) newElt.getLastChild()).setAttribute("selected", "true");
            }
        }
    }

    else if (tag instanceof RNGZeroOrMore) {
        RNGZeroOrMore zeroOrMore = (RNGZeroOrMore) tag;

        // TODO handle case where a different multiplicity is set
        // examples are 1..*, 1..3, 2..2, etc...)
        // need info in RNG object
        // repalce by oneOrMore or the exact number of patterns using ref and optional

        if (!zeroOrMore.isDisabled()) {
            Element newElt = (zeroOrMore instanceof RNGOneOrMore) ? dom.createElement("oneOrMore")
                    : dom.createElement("zeroOrMore");
            parentNode.appendChild(newElt);

            if (keepUserInput) {
                for (List<RNGTag> tagList : zeroOrMore.getPatternInstances()) {
                    Element occElt = dom.createElement("occurence");
                    for (RNGTag item : tagList)
                        writeRNGTag(item, dom, occElt);
                    newElt.appendChild(newElt);
                }
            }

            for (RNGTag child : zeroOrMore.getChildren())
                writeRNGTag(child, dom, newElt);
        }
    }

    else if (tag instanceof RNGList) {
        RNGList list = (RNGList) tag;
        Element newElt = dom.createElement("list");
        parentNode.appendChild(newElt);

        for (RNGTag child : list.getChildren())
            writeRNGTag(child, dom, newElt);
    }

    else if (tag instanceof RNGRef) {
        RNGRef ref = (RNGRef) tag;
        Element newElt = dom.createElement("ref");
        newElt.setAttribute("name", ref.getId());
        parentNode.appendChild(newElt);
    }

    else if (tag instanceof RNGValue) {
        RNGValue val = ((RNGValue) tag);
        Element newElt = dom.createElement("value");
        newElt.appendChild(dom.createTextNode(val.getText()));
        parentNode.appendChild(newElt);
    }

    else if (tag instanceof RNGText) {
        RNGText text = ((RNGText) tag);

        if (keepUserInput || text.getText() == null) {
            Element newElt = dom.createElement("text");
            parentNode.appendChild(newElt);

            if (text.getText() != null) {
                Element valElt = dom.createElement("value");
                valElt.appendChild(dom.createTextNode(text.getText()));
                newElt.appendChild(valElt);
            }
        } else {
            Element newElt = dom.createElement("value");
            newElt.appendChild(dom.createTextNode(text.getText()));
            parentNode.appendChild(newElt);
        }
    }

    else if (tag instanceof RNGData<?>) {
        RNGData<?> data = ((RNGData<?>) tag);

        // TODO write data type parameters

        if (keepUserInput || data.getStringValue() == null) {
            Element newElt = dom.createElement("data");
            newElt.setAttribute("type", data.getType());
            parentNode.appendChild(newElt);

            if (data.getStringValue() != null) {
                Element valElt = dom.createElement("value");
                valElt.appendChild(dom.createTextNode(data.getStringValue()));
                newElt.appendChild(valElt);
            }
        } else {
            Element newElt = dom.createElement("value");
            newElt.appendChild(dom.createTextNode(data.getStringValue()));
            parentNode.appendChild(newElt);
        }
    }
}

From source file:org.gk.engine.client.event.attrib.AddAttribute.java

License:Open Source License

/**
 * <pre>//from  ww  w . j a v  a2 s . c o  m
 * MapkeynodeData(??xml),parentNode(???)
 * key:parentNode , value: {'nodeId':'??'  ,  'idx':-1}
 * @param tree
 * @param value
 * </pre>
 */
private void addTreeNode(gkXMLTreePanelIC tree, Map value) {
    // nodeId
    gkMap addInfo = new gkMap(value);
    assert (addInfo.containsKey(gkXMLTreePanelIC.PARENT_NODE)) : "parentNode not found" + value;
    assert (addInfo.containsKey(gkXMLTreePanelIC.NODE_DATA)) : "nodeData not found" + value;
    // parentNode??TreeNode
    Map parentNodeInfo = addInfo.get(gkXMLTreePanelIC.PARENT_NODE);
    String parentNodeId = (String) parentNodeInfo.get(gkXMLTreePanelIC.ID);
    ModelData parentMd = tree.getTree().getStore().findModel(parentNodeId);
    assert parentMd != null : "parentNode not found exception:" + parentNodeInfo;
    // xml
    String nodeData = (String) addInfo.get(gkXMLTreePanelIC.NODE_DATA);
    Node newXmlNode = XMLParser.parse("<root>" + nodeData + "</root>").getFirstChild();
    tree.preprocessNode(tree.getTree().getStore(), newXmlNode, parentMd);
    Node node = (Node) parentMd.get(gkXMLTreePanelIC.NODE);
    newXmlNode.getParentNode().removeChild(newXmlNode);
    node.appendChild(newXmlNode.getFirstChild());
}

From source file:org.gk.ui.client.com.tree.xml.gkTreeHandler.java

License:Open Source License

public gkTreeHandler(TreePanel tree, final Operation op) {
    new TreePanelDragSource(tree) {
        /**/*from ww  w. j ava  2s  .co  m*/
         * ?drop???TreeNode?path
         */
        @Override
        protected void onDragDrop(DNDEvent event) {
            event.setOperation(op);
        }
    };
    target = new TreePanelDropTarget(tree) {
        @Override
        protected void onDragFail(DNDEvent event) {
            // treetraceMouseOver
            tree.setTrackMouseOver(true);
            super.onDragFail(event);
        }

        @Override
        protected void showFeedback(DNDEvent event) {
            final TreeNode overItem = tree.findNode(event.getTarget());
            if (overItem == null) {
                clearStyles(event);
            }

            // :?????
            if (overItem != null
                    && event.getDropTarget().getComponent() == event.getDragSource().getComponent()) {

                List<TreeModel> list = event.getData();
                ModelData overModel = overItem.getModel();
                for (int i = 0; i < list.size(); i++) {
                    ModelData sel = (ModelData) list.get(i).get("model");
                    if (overModel == sel) {
                        clearStyles(event);
                        return;
                    }

                    List<ModelData> children = tree.getStore().getChildren(sel, true);

                    if (children.contains(overItem.getModel())) {
                        clearStyles(event);
                        return;
                    }
                }
            }
            // ================================

            boolean append = feedback == Feedback.APPEND || feedback == Feedback.BOTH;
            boolean insert = feedback == Feedback.INSERT || feedback == Feedback.BOTH;

            if (overItem == null) {
                handleAppend(event, overItem);
            } else if (insert) {
                handleInsert(event, overItem);
            } else if ((!overItem.isLeaf() || isAllowDropOnLeaf()) && append) {
                handleAppend(event, overItem);
            } else {
                if (activeItem != null) {
                    tree.getView().onDropChange(activeItem, false);
                }
                status = -1;
                activeItem = null;
                appendItem = null;
                Insert.get().hide();
                event.getStatus().setStatus(false);
            }

            // 
            if (activeItem == null) {
                event.getStatus().setStatus(false);
            }
        }

        @Override
        protected void onDragEnter(DNDEvent event) {
            removeDuplicateNode(event);

            super.onDragEnter(event);
            super.clearStyles(event);// ? IE ????
        }

        private void removeDuplicateNode(DNDEvent event) {
            List<TreeStoreModel> modelList = (List<TreeStoreModel>) event.getData();

            // 1. Parent Node
            Set<String> parentNodeSet = new HashSet<String>();
            for (TreeStoreModel model : modelList) {
                Node node = model.getModel().get("node");
                if (!model.isLeaf()) {
                    parentNodeSet.add(node.toString());
                }
            }

            // 2.?? Leaf Node (Leaf's Parent in parentNodeSet)
            Iterator<TreeStoreModel> modelIt = modelList.iterator();
            while (modelIt.hasNext()) {
                TreeStoreModel model = modelIt.next();

                Node node = model.getModel().get("node");
                if (model.isLeaf()) {
                    if (node.getParentNode() != null
                            && parentNodeSet.contains(node.getParentNode().toString())) {
                        modelIt.remove();
                    }
                } else {
                    parentNodeSet.add(node.toString());
                }
            }

            // 3.?
            event.getStatus()
                    .update(Format.substitute(event.getDragSource().getStatusText(), modelList.size()));
        }

        /**
         * ?
         */
        @Override
        protected void onDragDrop(DNDEvent e) {
            TreePanel srcTree = (TreePanel) e.getDragSource().getComponent();
            if (activeItem == null) {
                super.onDragDrop(e);
                return;
            }
            List treeStoreModelList = (List) e.getData();

            // ?XML Node
            Node dropNode = activeItem.getModel().get("node");
            Node dropParentNode = dropNode.getParentNode();

            // state=1,activeItem????Node
            // state=0,?TreeNode
            // ?xml doc????.???????
            if (dropParentNode != null && dropParentNode.toString().equals(dropNode.toString())) {
                status = -1;
            }

            // Copy Mode
            // 1.????
            // 2.?appendChild??
            // 3.??
            if (Operation.COPY == e.getOperation()) {
                List newModels = genNewTreeStoreModelList(srcTree, treeStoreModelList);
                e.setData(newModels);
                treeStoreModelList = newModels;
            }

            List<Node> dragNodeList = getNodeList(treeStoreModelList);

            String tarNodeId = "";
            // 2011/06/28 ???
            TreeNode srcTreeNode = srcTree.findNode((Element) e.getDragEvent().getStartElement());
            switch (status) {
            case -1: // ?
                for (Node node : dragNodeList) {
                    dropNode.appendChild(node);
                }

                tarNodeId = TreeUtils.getNodeId(activeItem, srcTreeNode, status);
                break;
            case 1: // ?
                Node siblingNode = dropNode.getNextSibling();
                for (Node node : dragNodeList) {
                    dropParentNode.insertBefore(node, siblingNode);
                }
                // ?
                tarNodeId = TreeUtils.getNodeId(activeItem, srcTreeNode, 1);
                break;
            case 0: // ?
                for (Node node : dragNodeList) {
                    dropParentNode.insertBefore(node, dropNode);
                }
                // ?
                tarNodeId = TreeUtils.getNodeId(activeItem, srcTreeNode, 0);
                break;
            }

            // Move Mode
            // ??tree
            if (Operation.MOVE == e.getOperation()) {
                List<TreeModel> sel = e.getData();
                for (TreeModel tm : sel) {
                    srcTree.getStore().remove((ModelData) tm.get("model"));
                }
            }

            // 
            update(compositeInfo(srcTree, tree, TreeUtils.getNodeId(srcTreeNode), tarNodeId));
            super.onDragDrop(e);
        }
    };
    target.setAllowSelfAsSource(true);
    target.setFeedback(Feedback.BOTH);
}

From source file:org.gk.ui.client.com.utils.TreeUtils.java

License:Open Source License

public static void updateSelectNode(gkXMLTreePanelIC tree, Map v) {
    ModelData md = tree.getTree().getSelectionModel().getSelectedItem();
    Node parentNode = md.get(gkXMLTreePanelIC.NODE);
    // xml/*from  w ww  .j  a v a  2s .  c  om*/
    String name = (String) v.get(gkXMLTreePanelIC.NAME);
    Element newNode = parentNode.getOwnerDocument().createElement(name);
    parentNode.appendChild(newNode);
    // node?
    Iterator<String> it = v.keySet().iterator();
    while (it.hasNext()) {
        String key = it.next();
        if (!key.equals(gkXMLTreePanelIC.NAME)) {
            newNode.setAttribute(key, (String) v.get(key));
        }
    }
    v.put(gkXMLTreePanelIC.NODE, newNode);
    // TreeStore store = tree.getTree().getStore();
    // store.add(md, v, false);
}

From source file:org.openxdata.designer.client.view.DynamicListsView.java

/**
 * Moves an option one position downwards.
 * /*from  w ww.  ja v  a2  s.co m*/
 * @param optionDef the option to move.
 */
public void moveOptionDown(OptionDef optionDef) {
    List<OptionDef> optns = optionList;
    int index = optns.indexOf(optionDef);

    optns.remove(optionDef);

    Node parentNode = null;
    if (optionDef.getControlNode() != null) {
        parentNode = optionDef.getControlNode().getParentNode();
        parentNode.removeChild(optionDef.getControlNode());
    }

    OptionDef currentItem;
    List<OptionDef> list = new ArrayList<OptionDef>();

    //Remove all otions below selected index
    while (optns.size() > 0 && optns.size() > index) {
        currentItem = (OptionDef) optns.get(index);
        list.add(currentItem);
        optns.remove(currentItem);
    }

    for (int i = 0; i < list.size(); i++) {
        if (i == 1) {
            optns.add(optionDef); //Add after the first item but before the current (second).

            OptionDef optnDef = getNextSavedOption(list, i);
            if (optnDef.getControlNode() != null && optionDef.getControlNode() != null)
                parentNode.insertBefore(optionDef.getControlNode(), optnDef.getControlNode());
            else if (parentNode != null)
                parentNode.appendChild(optionDef.getControlNode());
        }
        optns.add(list.get(i));
    }

    //If was second last and hence becoming last
    if (list.size() == 1) {
        optns.add(optionDef);

        if (optionDef.getControlNode() != null)
            parentNode.appendChild(optionDef.getControlNode());
    }
}