public Segment(IStructuredDocumentRegion region) { super(); this.offset = region.getStartOffset(); this.length = region.getLength(); }
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$ }
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$ }
private Span getDataSpanForText(IDOMText node) { IStructuredDocumentRegion docRegion = ((NodeImpl) node).getStructuredDocumentRegion(); if (docRegion == null) { return new Span(0, -1); } return new Span(0, docRegion.getLength()); }
static private void lock(IStructuredDocumentRegion node, boolean canInsertBefore, boolean canInsertAfter) { if (node == null) { return; } IStructuredDocument doc = node.getParentDocument(); if (doc == null) { return; } if (doc instanceof BasicStructuredDocument) { ((BasicStructuredDocument)doc).makeReadOnly(node.getStart(), node.getLength(), canInsertBefore, canInsertAfter); } else { doc.makeReadOnly(node.getStart(), node.getLength()); } }
static private void unlock(IStructuredDocumentRegion node) { if (node == null) { return; } IStructuredDocument doc = node.getParentDocument(); if (doc == null) { return; } doc.clearReadOnly(node.getStart(), node.getLength()); }
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; }
return new String(); int offset = dataRegion.getStart(); int end = flatNode.getLength(); if (closeRegion != null) end = closeRegion.getStart();
this.fTranslator.translateScriptletString(beanDecl, currentNode, currentNode.getStartOffset(), currentNode.getLength()); fPossibleOwner = JSPTranslator.SCRIPTLET;
private IDOMNode compressEmptyElementTag(IDOMNode node) { boolean compressEmptyElementTags = getCleanupPreferences().getCompressEmptyElementTags(); IDOMNode newNode = node; IStructuredDocumentRegion startTagStructuredDocumentRegion = newNode.getFirstStructuredDocumentRegion(); IStructuredDocumentRegion endTagStructuredDocumentRegion = newNode.getLastStructuredDocumentRegion(); if (compressEmptyElementTags && startTagStructuredDocumentRegion != endTagStructuredDocumentRegion && startTagStructuredDocumentRegion != null) { ITextRegionList regions = startTagStructuredDocumentRegion.getRegions(); ITextRegion lastRegion = regions.get(regions.size() - 1); // format children and end tag if not empty element tag if (lastRegion.getType() != DOMRegionContext.XML_EMPTY_TAG_CLOSE) { NodeList childNodes = newNode.getChildNodes(); if (childNodes == null || childNodes.getLength() == 0 || (childNodes.getLength() == 1 && (childNodes.item(0)).getNodeType() == Node.TEXT_NODE && ((childNodes.item(0)).getNodeValue().trim().length() == 0))) { IDOMModel structuredModel = newNode.getModel(); IStructuredDocument structuredDocument = structuredModel.getStructuredDocument(); int startTagStartOffset = newNode.getStartOffset(); int offset = endTagStructuredDocumentRegion.getStart(); int length = endTagStructuredDocumentRegion.getLength(); structuredDocument.replaceText(structuredDocument, offset, length, ""); //$NON-NLS-1$ newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save offset = startTagStructuredDocumentRegion.getStart() + lastRegion.getStart(); structuredDocument.replaceText(structuredDocument, offset, 0, "/"); //$NON-NLS-1$ newNode = (IDOMNode) structuredModel.getIndexedRegion(startTagStartOffset); // save } } } return newNode; }
protected void processElementDoubleClicked() { if (fTextRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE) { processElementAttrValueDoubleClicked(); // special handling for } else { if (fDoubleClickCount == 1) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart() + fTextRegion.getStart(), fTextRegion.getTextLength()); } else if (fDoubleClickCount == 2) { if (fTextRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_NAME) { processElementAttrNameDoubleClicked2Times(); } else if (fTextRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_EQUALS) { processElementAttrEqualsDoubleClicked2Times(); } else { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength()); fDoubleClickCount = 0; } } else { // fDoubleClickCount == 3 fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength()); fDoubleClickCount = 0; } } }
protected void processElementAttrNameDoubleClicked2Times() { int nextRegionOffset = fStructuredDocumentRegion.getEndOffset(fTextRegion); ITextRegion nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset); if (nextRegion != null) { nextRegionOffset = fStructuredDocumentRegion.getEndOffset(nextRegion); nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset); if ((nextRegion != null) && (nextRegion.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE)) { fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), nextRegion.getTextEnd() - fTextRegion.getStart()); } else { // attribute has no value fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength()); fDoubleClickCount = 0; } } }
fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength()); fDoubleClickCount = 0; fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart() + 1, fStructuredDocumentRegion.getLength() - 2); fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength()); fDoubleClickCount = 0;
int length = r.getLength(); if (counted + length >= offset) { return r.getStartOffset() + offset - counted;
String messageText = XMLUIMessages.ReconcileStepForMarkup_5; int start = prev.getStartOffset(); int length = prev.getLength();
private void checkEmptyTag(IStructuredDocumentRegion structuredDocumentRegion, IReporter reporter) { if (structuredDocumentRegion.isDeleted()) { return; } // navigate to name ITextRegionList regions = structuredDocumentRegion.getRegions(); if (regions.size() == 2) { // missing name region if ((regions.get(0).getType() == DOMRegionContext.XML_TAG_OPEN) && (regions.get(1).getType() == DOMRegionContext.XML_TAG_CLOSE)) { String messageText = XMLUIMessages.ReconcileStepForMarkup_3; int start = structuredDocumentRegion.getStartOffset(); int length = structuredDocumentRegion.getLength(); int lineNo = getLineNumber(start); LocalizedMessage message = new LocalizedMessage(IMessage.HIGH_SEVERITY, messageText); message.setOffset(start); message.setLength(length); message.setLineNo(lineNo); MarkupQuickAssistProcessor processor = new MarkupQuickAssistProcessor(); processor.setProblemId(ProblemIDsXML.EmptyTag); message.setAttribute(QUICKASSISTPROCESSOR, processor); AnnotationInfo info = new AnnotationInfo(message); ((IncrementalReporter) reporter).addAnnotationInfo(this, info); } } }
n -= flatNode.getLength();