protected void formatEndTag(IDOMNode node, IStructuredFormatContraints formatContraints) { if (!isEndTagMissing(node)) { String nodeIndentation = getNodeIndent(node); IDOMNode lastChild = (IDOMNode) node.getLastChild(); if (lastChild != null && lastChild.getNodeType() != Node.TEXT_NODE) { if (isEndTagMissing(lastChild)) { while (deepestChild != null && deepestChild.getLastChild() != null && isEndTagMissing(deepestChild)) { lastChild = deepestChild; deepestChild = (IDOMNode) deepestChild.getLastChild(); replaceNodeValue(deepestChild, nodeText); insertAfterNode(lastChild, lineDelimiter + nodeIndentation); insertAfterNode(lastChild, lineDelimiter + nodeIndentation); else if (lastChild == null && firstStructuredDocumentRegionContainsLineDelimiters(node)) { if ((elementDeclaration == null) || (elementDeclaration.getContentType() != CMElementDeclaration.EMPTY)) { replace(structuredDocument, node.getFirstStructuredDocumentRegion().getEndOffset(), 0, lineDelimiter + nodeIndentation); if (endTagStructuredDocumentRegion.getRegions().size() >= 3) { ITextRegion endTagNameRegion = endTagStructuredDocumentRegion.getRegions().get(1); removeRegionSpaces(node, endTagStructuredDocumentRegion, endTagNameRegion);
protected void formatNode(IDOMNode node, IStructuredFormatContraints formatContraints) { if (node != null) { formatIndentationBeforeNode(node, formatContraints); formatStartTag(node, formatContraints); formatChildren(newNode, formatContraints); formatEndTag(newNode, formatContraints); formatIndentationAfterNode(newNode, formatContraints);
StructuredFormatPreferencesXML preferences = (StructuredFormatPreferencesXML) getFormatPreferences(); String singleIndent = preferences.getIndent(); String lineIndent = formatContraints.getCurrentIndent(); int lineOffset = node.getStructuredDocument().getLineInformationOfOffset(nodeNameOffset).getOffset(); String text = node.getStructuredDocument().get(lineOffset, nodeNameOffset - lineOffset); int usedWidth = getIndentationLength(text); currentAvailableLineWidth = preferences.getLineWidth() - usedWidth; String undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, attr.getStartOffset() - lastUndefinedRegionOffset); stringBuffer.append(undefinedRegion); lastUndefinedRegionOffset = attr.getStartOffset(); undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset); stringBuffer.append(undefinedRegion); lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion); undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset); stringBuffer.append(undefinedRegion); lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion); undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset); stringBuffer.append(undefinedRegion); lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion); undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset); stringBuffer.append(undefinedRegion); lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion);
switch (nodeType) { case Node.ELEMENT_NODE : { formatter = new ElementNodeFormatter(); break;
switch (nodeType) { case Node.ELEMENT_NODE : { formatter = new ElementNodeFormatter(); break;