/******************************************************************************* * Copyright (c) 2000, 2009 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.erlide.ui.tests; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IDocumentListener; import org.eclipse.jface.text.IDocumentPartitioner; import org.eclipse.jface.text.IDocumentPartitioningListener; import org.eclipse.jface.text.IPositionUpdater; import org.eclipse.jface.text.IRegion; import org.eclipse.jface.text.ITypedRegion; import org.eclipse.jface.text.Position; /** * Minimal implementation of IDocument to apply text edit onto a string. */ public class StringDocument implements IDocument { private String text; public StringDocument(final String source) { text = source; } @Override public char getChar(final int offset) { return text.charAt(offset); } @Override public int getLength() { return text.length(); } @Override public String get() { return new String(text); } @Override public String get(final int offset, final int length) { return text.substring(offset, offset + length); } @Override public void set(final String text) { this.text = new String(text); } @Override public void replace(final int offset, final int length, final String theText) { text = text.substring(0, offset) + theText + text.substring(offset + length); } @Override public void addDocumentListener(final IDocumentListener listener) { // defining interface method } @Override public void removeDocumentListener(final IDocumentListener listener) { // defining interface method } @Override public void addPrenotifiedDocumentListener(final IDocumentListener documentAdapter) { // defining interface method } @Override public void removePrenotifiedDocumentListener( final IDocumentListener documentAdapter) { // defining interface method } @Override public void addPositionCategory(final String category) { // defining interface method } @Override public void removePositionCategory(final String category) { // defining interface method } @Override public String[] getPositionCategories() { // defining interface method return null; } @Override public boolean containsPositionCategory(final String category) { // defining interface method return false; } @Override public void addPosition(final Position position) { // defining interface method } @Override public void removePosition(final Position position) { // defining interface method } @Override public void addPosition(final String category, final Position position) { // defining interface method } @Override public void removePosition(final String category, final Position position) { // defining interface method } @Override public Position[] getPositions(final String category) { // defining interface method return null; } @Override public boolean containsPosition(final String category, final int offset, final int length) { // defining interface method return false; } @Override public int computeIndexInCategory(final String category, final int offset) { // defining interface method return 0; } @Override public void addPositionUpdater(final IPositionUpdater updater) { // defining interface method } @Override public void removePositionUpdater(final IPositionUpdater updater) { // defining interface method } @Override public void insertPositionUpdater(final IPositionUpdater updater, final int index) { // defining interface method } @Override public IPositionUpdater[] getPositionUpdaters() { // defining interface method return null; } @Override public String[] getLegalContentTypes() { // defining interface method return null; } @Override public String getContentType(final int offset) { // defining interface method return null; } @Override public ITypedRegion getPartition(final int offset) { // defining interface method return null; } @Override public ITypedRegion[] computePartitioning(final int offset, final int length) { // defining interface method return null; } @Override public void addDocumentPartitioningListener( final IDocumentPartitioningListener listener) { // defining interface method } @Override public void removeDocumentPartitioningListener( final IDocumentPartitioningListener listener) { // defining interface method } @Override public void setDocumentPartitioner(final IDocumentPartitioner partitioner) { // defining interface method } @Override public IDocumentPartitioner getDocumentPartitioner() { // defining interface method return null; } @Override public int getLineLength(final int line) { // defining interface method return 0; } @Override public int getLineOfOffset(final int offset) { // defining interface method return 0; } @Override public int getLineOffset(final int line) { // defining interface method return 0; } @Override public IRegion getLineInformation(final int line) { // defining interface method return null; } @Override public IRegion getLineInformationOfOffset(final int offset) { // defining interface method return null; } @Override public int getNumberOfLines() { // defining interface method return 0; } @Override public int getNumberOfLines(final int offset, final int length) { // defining interface method return 0; } @Override public int computeNumberOfLines(final String theText) { // defining interface method return 0; } @Override public String[] getLegalLineDelimiters() { // defining interface method return null; } @Override public String getLineDelimiter(final int line) { // defining interface method return null; } /** * @see org.eclipse.jface.text.IDocument#search(int, java.lang.String, * boolean, boolean, boolean) * @deprecated */ @Override @Deprecated public int search(final int startOffset, final String findString, final boolean forwardSearch, final boolean caseSensitive, final boolean wholeWord) { // defining interface method return 0; } }