package com.hundsun.ares.studio.cres.extend.ui.text;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.rules.FastPartitioner;
import com.hundsun.ares.studio.ui.editor.text.ARESElementDocumentProvider;
import com.hundsun.ares.studio.ui.editor.text.ARESPartitionScanner;
public class CRESDocumentProvider extends ARESElementDocumentProvider{
public static final String[] CONTENT_TYPES = new String[] {
ARESPartitionScanner.HS_CHARACTOR,
ARESPartitionScanner.HS_STRING,
ARESPartitionScanner.HS_COMMENT,ARESPartitionScanner.HS_MACRO,
};
@Override
protected IDocument createDocument(Object element) throws CoreException {
IDocument doc = super.createDocument(element);
if(doc != null) {
FastPartitioner partitioner = new FastPartitioner(new CRESPartitionScanner(), CONTENT_TYPES);
partitioner.connect(doc, false);
doc.setDocumentPartitioner(partitioner);
}
return doc;
}
}