blob: 291a3411e7b1e2e70d455f14f2f77d6ada324de3 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2004 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
* Jens Lukowski/Innoopract - initial renaming/restructuring
*
*******************************************************************************/
package org.eclipse.wst.xml.core.internal.parser.regions;
import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
import org.eclipse.wst.sse.core.text.ITextRegion;
import org.eclipse.wst.xml.core.parser.XMLRegionContext;
/**
*
* This class is not intended to be used, its just present to server as a
* generic starting point for adding new specific region types.
*/
public class GenericTemplateRegion implements ITextRegion {
// specify correct type
static private final String fType = XMLRegionContext.UNDEFINED;
private int fLength;
private int fStart;
private int fTextLength;
public GenericTemplateRegion() {
super();
}
public GenericTemplateRegion(int start, int textLength, int length) {
this();
fStart = start;
fTextLength = textLength;
fLength = length;
}
public void adjustLengthWith(int i) {
fLength += i;
}
public void adjustStart(int i) {
fStart += i;
}
/*
* (non-Javadoc)
*
* @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
*/
public void adjustTextLength(int i) {
fTextLength += 1;
}
public void equatePositions(ITextRegion region) {
fStart = region.getStart();
fLength = region.getLength();
fTextLength = region.getTextLength();
}
public int getEnd() {
return fStart + fLength;
}
public int getLength() {
return fLength;
}
public int getStart() {
return fStart;
}
public int getTextEnd() {
return fStart + fTextLength;
}
public int getTextLength() {
return fTextLength;
}
public String getType() {
return fType;
}
public String toString() {
return RegionToStringUtil.toString(this);
}
public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
// can never be updated
return null;
}
}