int getStartOffset() { return fDocumentRegion.getStartOffset(fTextRegion); }
private boolean intersects(IStructuredDocumentRegion node, ITextRegion region, int low, int high) { int start = node.getStartOffset(region); int end = node.getEndOffset(region); return (end >= low && start <= high) || (start <= low && end >= low) || (start <= high && end >= high); }
public Segment(IStructuredDocumentRegion region) { super(); this.offset = region.getStartOffset(); this.length = region.getLength(); }
public int getNameRegionStartOffset() { if (this.ownerElement == null) return 0; // assuming the firstStructuredDocumentRegion is the one that contains // attributes IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion(); if (flatNode == null) return 0; return flatNode.getStartOffset(this.nameRegion); }
/** * @return int */ public int getStartOffset() { int result = -1; ITextRegion region = getFirstRegion(); if (!(region == null || fParentRegion == null)) { result = fParentRegion.getStartOffset(region); } return result; }
public List getCMDocumentTrackers(int offset) { List validDocs = new ArrayList(); Iterator alldocs = getTaglibTrackers().iterator(); while (alldocs.hasNext()) { TaglibTracker aTracker = (TaglibTracker) alldocs.next(); if (aTracker.getStructuredDocumentRegion().getStartOffset() < offset || offset < 0) { validDocs.add(aTracker); } } return validDocs; }
private void startScope(String tagName) { IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode(); StringBuffer text = new StringBuffer(); text.append("{ // <"); //$NON-NLS-1$ text.append(tagName); text.append(">\n"); //$NON-NLS-1$ this.fTranslator.translateScriptletString(text.toString(), currentNode, currentNode.getStartOffset(), currentNode.getLength()); //$NON-NLS-1$ }
public List getCMDocumentTrackers(String prefix, int offset) { List validDocs = new ArrayList(); Iterator alldocs = getTaglibTrackers().iterator(); while (alldocs.hasNext()) { TaglibTracker aTracker = (TaglibTracker) alldocs.next(); if ((aTracker.getStructuredDocumentRegion().getStartOffset() < offset || offset < 0) && aTracker.getPrefix().equals(prefix)) { validDocs.add(aTracker); } } return validDocs; }
private void endScope(String tagName) { IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode(); StringBuffer text = new StringBuffer(); text.append("} // </"); //$NON-NLS-1$ text.append(tagName); text.append(">\n"); //$NON-NLS-1$ this.fTranslator.translateScriptletString(text.toString(), currentNode, currentNode.getStartOffset(), currentNode.getLength()); //$NON-NLS-1$ }
protected void processElementAttrValueDoubleClicked2Times() { int prevRegionOffset = fStructuredDocumentRegion.getStartOffset(fTextRegion) - 1; ITextRegion prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset); if (prevRegion != null) { prevRegionOffset = fStructuredDocumentRegion.getStartOffset(prevRegion) - 1; prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset); if ((prevRegion != null) && (prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME)) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(prevRegion), fTextRegion.getTextEnd() - prevRegion.getStart()); } } }
public int getEndTagStartOffset() { if (node.getEndStructuredDocumentRegion() != null) { return node.getEndStructuredDocumentRegion().getStartOffset(); } return -1; }
public int getStartTagStartOffset() { if (node.getStartStructuredDocumentRegion() != null) { return node.getStartStructuredDocumentRegion().getStartOffset(); } return -1; } }
/** * NOTE: 'start' and 'end' must be the start and end of the contiguous regions. * Otherwise, this class cannot work correctly. */ public Segment(IStructuredDocumentRegion start, IStructuredDocumentRegion end) { super(); this.offset = start.getStartOffset(); int endOffset = (end == null) ? start.getEndOffset() : end.getEndOffset(); this.length = endOffset - this.offset; }
public String toString() { if (getStructuredDocumentRegion() != null) return getPrefix() + "@" + getStructuredDocumentRegion().getStartOffset(); //$NON-NLS-1$ return super.toString(); } }
protected void prepareText(IStructuredDocumentRegion sdRegion) { fTextBefore = fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset()); fUnescapedText = EscapedTextUtil.getUnescapedText(fTextBefore); fStrippedText = this.fTranslator.stripCDATA(fUnescapedText); }
protected String getRegionName(IStructuredDocumentRegion sdRegion) { String nameStr = ""; //$NON-NLS-1$ ITextRegionList regions = sdRegion.getRegions(); for (int i = 0; i < regions.size(); i++) { ITextRegion r = regions.get(i); if (r.getType() == DOMRegionContext.XML_TAG_NAME) { nameStr = fTextToParse.substring(sdRegion.getStartOffset(r), sdRegion.getTextEndOffset(r)); break; } } return nameStr.trim(); }
protected void processDeclaration(IStructuredDocumentRegion sdRegion) { prepareText(sdRegion); IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode(); this.fTranslator.translateDeclarationString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength()); fPossibleOwner = JSPTranslator.DECLARATION; }
protected void processExpression(IStructuredDocumentRegion sdRegion) { prepareText(sdRegion); IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode(); this.fTranslator.translateExpressionString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength()); fPossibleOwner = JSPTranslator.EXPRESSION; }
protected void processScriptlet(IStructuredDocumentRegion sdRegion) { prepareText(sdRegion); IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode(); this.fTranslator.translateScriptletString(fStrippedText, currentNode, currentNode.getStartOffset(), currentNode.getLength()); fPossibleOwner = JSPTranslator.SCRIPTLET; }
protected void processElementAttrEqualsDoubleClicked2Times() { int prevRegionOffset = fStructuredDocumentRegion.getStartOffset(fTextRegion) - 1; ITextRegion prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset); int nextRegionOffset = fStructuredDocumentRegion.getEndOffset(fTextRegion); ITextRegion nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset); if ((prevRegion != null) && (prevRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) && (nextRegion != null) && (nextRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE)) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(prevRegion), nextRegion.getTextEnd() - prevRegion.getStart()); } }