/** * @return unescaped full text of that region, "" if there is no text */ public static String getUnescapedText(IStructuredDocumentRegion parent, ITextRegion r) { String test = (parent != r) ? parent.getFullText(r) : parent.getFullText(); return getUnescapedText(test); }
private String getEndTagFullText(ElementInfo info) { String hint = "";//$NON-NLS-1$ ITextRegionList regions = info.endTag.getRegions(); Iterator iter = regions.iterator(); while (iter.hasNext()) { ITextRegion rgn = (ITextRegion) iter.next(); String type = rgn.getType(); if (type == null) continue; if (type == DOMRegionContext.XML_END_TAG_OPEN || type == DOMRegionContext.XML_TAG_CLOSE) continue; hint += info.endTag.getFullText(rgn); } return hint; }
/** */ private void replaceTailingSpaces(IStructuredDocumentRegion flatNode, ITextRegion region, String spaces) { int offset = region.getTextEnd(); int count = region.getEnd() - offset; if (count == spaces.length()) { String source = flatNode.getFullText(region); if (source != null && source.endsWith(spaces)) { // nothing to do return; } } replaceSource(flatNode, offset, count, spaces); } }
protected String getUndefinedRegions(IDOMNode node, int startOffset, int length) { String result = new String(); IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion(); ITextRegionList regions = flatNode.getRegions(); for (int i = 0; i < regions.size(); i++) { ITextRegion region = regions.get(i); String regionType = region.getType(); int regionStartOffset = flatNode.getStartOffset(region); if (regionType.compareTo(DOMRegionContext.UNDEFINED) == 0 && regionStartOffset >= startOffset && regionStartOffset < startOffset + length) result = result + flatNode.getFullText(region); } if (result.length() > 0) return SPACE_CHAR + result.trim(); else return result; } }
/** */ private void compressTailingSpaces(IStructuredDocumentRegion flatNode, ITextRegion region) { int offset = region.getTextEnd(); int count = region.getEnd() - offset; if (count == 1) { String source = flatNode.getFullText(region); int start = region.getStart(); if (source != null && source.charAt(offset - start) == ' ') { // nothing to do return; } } replaceSource(flatNode, offset, count, " ");//$NON-NLS-1$ }
if ((completionRegion != null) && (completionRegion.getType() == DOMRegionContext.XML_CONTENT)) { int nodeOffset = documentPosition - sdRegion.getStartOffset(completionRegion); String regionText = sdRegion.getFullText(completionRegion); regionText = prev.getFullText(); nodeOffset = 1;
if (region.getType() == DOMRegionContext.XML_CONTENT && region.getFullText().trim().equals("")) { //$NON-NLS-1$ preDelimiterWhitespace = region.getFullText(); preDelimiterWhitespace = preDelimiterWhitespace.replaceAll("\r", ""); //$NON-NLS-1$ //$NON-NLS-2$ preDelimiterWhitespace = preDelimiterWhitespace.replaceAll("\n", ""); //$NON-NLS-1$ //$NON-NLS-2$
int lengthBefore = 0, lengthAfter = 0, cdata_tags_length = 0; if (r != null && (r.getType() == DOMRegionContext.XML_CONTENT || r.getType() == DOMRegionContext.XML_ENTITY_REFERENCE)) { lengthBefore = (getCurrentNode() != r) ? getCurrentNode().getFullText(r).length() : getCurrentNode().getFullText().length(); s = EscapedTextUtil.getUnescapedText(getCurrentNode(), r); lengthAfter = s.length(); temp = (ITextRegion) it.next(); if (temp instanceof ITextRegionContainer || temp.getType() == DOMRegionContext.XML_CDATA_TEXT) { sb.append(getCurrentNode().getFullText(temp));
private void setSourceReferencePoint() { if (isJSP(getCurrentNode().getFirstRegion().getType())) { Iterator it = getCurrentNode().getRegions().iterator(); ITextRegion r = null; while (it.hasNext()) { r = (ITextRegion) it.next(); if (r.getType() == DOMJSPRegionContexts.JSP_CONTENT || r.getType() == DOMRegionContext.XML_CONTENT) break; else if (r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) break; else if (r.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE && getCurrentNode().getFullText(r).trim().equals("import")) //$NON-NLS-1$ break; } } }
private void checkForSpaceBeforeName(IStructuredDocumentRegion structuredDocumentRegion, IReporter reporter) { if (structuredDocumentRegion.isDeleted()) { return; } String sdRegionText = structuredDocumentRegion.getFullText(); if (sdRegionText.startsWith(" ")) { //$NON-NLS-1$ IStructuredDocumentRegion prev = structuredDocumentRegion.getPrevious(); if (prev != null) { // this is possibly the case of "< tag" if ((prev.getRegions().size() == 1) && isStartTag(prev)) { // add the error for preceding space in tag name String messageText = XMLUIMessages.ReconcileStepForMarkup_2; int start = structuredDocumentRegion.getStartOffset(); // find length of whitespace int length = sdRegionText.trim().equals("") ? sdRegionText.length() : sdRegionText.indexOf(sdRegionText.trim()); //$NON-NLS-1$ LocalizedMessage message = new LocalizedMessage(IMessage.HIGH_SEVERITY, messageText); message.setOffset(start); message.setLength(length); message.setLineNo(getLineNumber(start)); MarkupQuickAssistProcessor processor = new MarkupQuickAssistProcessor(); processor.setProblemId(ProblemIDsXML.SpacesBeforeTagName); message.setAttribute(QUICKASSISTPROCESSOR, processor); AnnotationInfo info = new AnnotationInfo(message); ((IncrementalReporter) reporter).addAnnotationInfo(this, info); } } } }
String prevText = prev.getFullText(); if ((prev.getType() == DOMRegionContext.XML_CONTENT) && prevText.endsWith(" ")) { //$NON-NLS-1$ String messageText = XMLUIMessages.ReconcileStepForMarkup_5;
if (isQuoted(fStructuredDocumentRegion.getFullText(fTextRegion))) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion) + 1, fTextRegion.getTextLength() - 2); if ((fDoubleClickCount == 3) && isQuoted(fStructuredDocumentRegion.getFullText(fTextRegion))) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), fTextRegion.getTextLength());
String openingTagText = (sdr != null) ? sdr.getFullText() : ""; //$NON-NLS-1$ if ((openingTagText != null) && (openingTagText.indexOf(node.getNodeName()) != -1)) { proposal = new CustomCompletionProposal("></" + node.getNodeName() + ">", //$NON-NLS-2$//$NON-NLS-1$