private static IRegion getAttributeRegion(IDocument document, String value, int offset) { try { FindReplaceDocumentAdapter findReplaceAdapter = new FindReplaceDocumentAdapter(document); IRegion nameRegion = findReplaceAdapter.find(offset, value, true, true, false, false); if (nameRegion != null) { if (document.get(nameRegion.getOffset() + nameRegion.getLength() - value.length(), value.length()).equals(value)) return new Region(nameRegion.getOffset() + nameRegion.getLength() - value.length(), value.length()); } } catch (BadLocationException e) { } return null; }
/** * Returns the find string based on the selection or the find history. * @return the find string */ private String getFindString() { String fullSelection= fTarget.getSelectionText(); String firstLine= getFirstLine(fullSelection); if ((firstLine.length() == 0 || fRegExSearch && fullSelection.equals(fSelection)) && !fFindHistory.isEmpty()) return fFindHistory.get(0); else if (fRegExSearch && fullSelection.length() > 0) return FindReplaceDocumentAdapter.escapeForRegExPattern(fullSelection); else return firstLine; }
protected String getTextContent(Element element) { ElementData data = (ElementData) fOffsetTable.get(element); try { IRegion nameRegion = fFindReplaceAdapter.find(data.offset, "</" + element.getNodeName() + ">", true, true, false, false); //$NON-NLS-1$ //$NON-NLS-2$ int offset = data.offset + element.getNodeName().length() + 2; if (nameRegion != null) return fTextDocument.get(offset, nameRegion.getOffset() - offset).trim(); } catch (BadLocationException e) { } return null; }
/** * Returns the find/replace adapter for this document. * * @return this document's find/replace document adapter * @since 3.0 */ private FindReplaceDocumentAdapter getFindReplaceDocumentAdapter() { if (fFindReplaceDocumentAdapter == null) fFindReplaceDocumentAdapter= new FindReplaceDocumentAdapter(this); return fFindReplaceDocumentAdapter; }
IRegion matchRegion= adapter.find(widgetOffset, findString, forwardSearch, caseSensitive, wholeWord, regExSearch); int widgetPos= -1; int length= 0; char startChar= adapter.charAt(widgetPos); char endChar= adapter.charAt(widgetPos+length-1); boolean borderHasLineDelimiter= startChar == '\n' || startChar == '\r' || endChar == '\n' || endChar == '\r'; boolean redraws= redraws();
if (startOffset < 0 || startOffset > length()) throw new BadLocationException(); findString= substituteLinebreak(findString); findString= asRegPattern(findString); String prevMatch= fFindReplaceMatcher.group(); try { replaceText= interpretReplaceEscapes(replaceText, prevMatch); Matcher replaceTextMatcher= pattern.matcher(prevMatch); replaceText= replaceTextMatcher.replaceFirst(replaceText);
protected String getTextContent(Element element) { ElementData data = (ElementData)fOffsetTable.get(element); try { IRegion nameRegion = fFindReplaceAdapter.find(data.offset, "</"+element.getNodeName()+">", true, true, false, false); //$NON-NLS-1$ //$NON-NLS-2$ int offset = data.offset + element.getNodeName().length() + 2; if (nameRegion != null) return fTextDocument.get(offset, nameRegion.getOffset() - offset).trim(); } catch (BadLocationException e) { } return null; }
/** * Returns the find/replace adapter for this document. * * @return this document's find/replace document adapter * @since 3.0 */ private FindReplaceDocumentAdapter getFindReplaceDocumentAdapter() { if (fFindReplaceDocumentAdapter == null) fFindReplaceDocumentAdapter= new FindReplaceDocumentAdapter(this); return fFindReplaceDocumentAdapter; }
IRegion matchRegion= adapter.find(widgetOffset, findString, forwardSearch, caseSensitive, wholeWord, regExSearch); if (matchRegion != null) { int widgetPos= matchRegion.getOffset(); char startChar= adapter.charAt(widgetPos); char endChar= adapter.charAt(widgetPos+length-1); boolean borderHasLineDelimiter= startChar == '\n' || startChar == '\r' || endChar == '\n' || endChar == '\r'; boolean redraws= redraws();
if (startOffset < 0 || startOffset > length()) throw new BadLocationException(); findString= substituteLinebreak(findString); findString= asRegPattern(findString); String prevMatch= fFindReplaceMatcher.group(); try { replaceText= interpretReplaceEscapes(replaceText, prevMatch); Matcher replaceTextMatcher= pattern.matcher(prevMatch); replaceText= replaceTextMatcher.replaceFirst(replaceText);
private static IRegion getAttributeRegion(IDocument document, String name, String value, int offset) { try { FindReplaceDocumentAdapter findReplaceAdapter = new FindReplaceDocumentAdapter(document); IRegion nameRegion = findReplaceAdapter.find(offset, name + "\\s*=\\s*\"" + value, false, false, false, true); //$NON-NLS-1$ if (nameRegion != null) { if (document.get(nameRegion.getOffset() + nameRegion.getLength() - value.length(), value.length()).equals(value)) return new Region(nameRegion.getOffset() + nameRegion.getLength() - value.length(), value.length()); } } catch (BadLocationException e) { } return null; }
private int getAttributeOffset(String name, String value, int offset) throws BadLocationException { IRegion nameRegion = fFindReplaceAdapter.find(offset, name+"=\""+getWritableString(value), true, false, false, false); //$NON-NLS-1$ if (nameRegion != null) { return nameRegion.getOffset(); } return -1; }
/** * Returns the find/replace document adapter. * * @return the find/replace document adapter. * @since 3.0 */ protected FindReplaceDocumentAdapter getFindReplaceDocumentAdapter() { if (fFindReplaceDocumentAdapter == null) fFindReplaceDocumentAdapter= new FindReplaceDocumentAdapter(getVisibleDocument()); return fFindReplaceDocumentAdapter; }
IRegion matchRegion= adapter.find(widgetOffset, findString, forwardSearch, caseSensitive, wholeWord, regExSearch); if (matchRegion != null) { int widgetPos= matchRegion.getOffset(); char startChar= adapter.charAt(widgetPos); char endChar= adapter.charAt(widgetPos+length-1); boolean borderHasLineDelimiter= startChar == '\n' || startChar == '\r' || endChar == '\n' || endChar == '\r'; boolean redraws= redraws();
/** * Returns the find string based on the selection or the find history. * @return the find string */ private String getFindString() { String fullSelection= fTarget.getSelectionText(); String firstLine= getFirstLine(fullSelection); if ((firstLine.length() == 0 || fRegExSearch && fullSelection.equals(fSelection)) && !fFindHistory.isEmpty()) return fFindHistory.get(0); else if (fRegExSearch && fullSelection.length() > 0) return FindReplaceDocumentAdapter.escapeForRegExPattern(fullSelection); else return firstLine; }
private IRegion getAttributeRegion(String name, String value, int offset) throws BadLocationException { FindReplaceDocumentAdapter fFindReplaceAdapter = new FindReplaceDocumentAdapter(getDocument()); IRegion nameRegion = fFindReplaceAdapter.find(offset, "\\s" + name + "\\s*=\\s*[\"\']", true, true, false, true); //$NON-NLS-1$ //$NON-NLS-2$ if (nameRegion != null) { nameRegion = new Region(nameRegion.getOffset() + 1, nameRegion.getLength() - 1); if (getDocument().get(nameRegion.getOffset() + nameRegion.getLength(), value.length()).equals(value)) return new Region(nameRegion.getOffset(), nameRegion.getLength() + value.length() + 1); } return null; }
private int getAttributeOffset(String name, String value, int offset) throws BadLocationException { IRegion nameRegion = fFindReplaceAdapter.find(offset, name + "=\"" + getWritableString(value), true, false, false, false); //$NON-NLS-1$ if (nameRegion != null) { return nameRegion.getOffset(); } return -1; }
/** * Returns the find/replace document adapter. * * @return the find/replace document adapter. * @since 3.0 */ protected FindReplaceDocumentAdapter getFindReplaceDocumentAdapter() { if (fFindReplaceDocumentAdapter == null) fFindReplaceDocumentAdapter= new FindReplaceDocumentAdapter(getVisibleDocument()); return fFindReplaceDocumentAdapter; }
IRegion matchRegion= adapter.find(widgetOffset, findString, forwardSearch, caseSensitive, wholeWord, regExSearch); int widgetPos= -1; int length= 0; char startChar= adapter.charAt(widgetPos); char endChar= adapter.charAt(widgetPos+length-1); boolean borderHasLineDelimiter= startChar == '\n' || startChar == '\r' || endChar == '\n' || endChar == '\r'; boolean redraws= redraws();
private boolean initializePatternControl() { ISelection selection = getSelection(); if (selection instanceof ITextSelection && !selection.isEmpty()) { String text = ((ITextSelection) selection).getText(); if (text != null) { if (isRegExButton.getSelection()) patternCombo.setText(FindReplaceDocumentAdapter .escapeForRegExPattern(text)); else patternCombo.setText(insertEscapeChars(text)); return true; } } return false; }