initial quantum version
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.quantum.sql / src / com / quantum / editors / SQLDocumentProvider.java
diff --git a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/editors/SQLDocumentProvider.java b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/editors/SQLDocumentProvider.java
new file mode 100644 (file)
index 0000000..1fab1c3
--- /dev/null
@@ -0,0 +1,35 @@
+package com.quantum.editors;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IDocumentPartitioner;
+import org.eclipse.jface.text.rules.DefaultPartitioner;
+import org.eclipse.ui.editors.text.FileDocumentProvider;
+
+public class SQLDocumentProvider extends FileDocumentProvider {
+       
+       public SQLDocumentProvider() {
+               super();
+       }
+
+       protected IDocument createDocument(Object element) throws CoreException {
+               IDocument document = super.createDocument(element);
+               if (document != null) {
+                       IDocumentPartitioner partitioner =
+                               new DefaultPartitioner(
+                                       new SQLPartitionScanner(),
+                                       new String[] { 
+                                               IDocument.DEFAULT_CONTENT_TYPE,
+                                               SQLPartitionScanner.SQL_KEYWORD, 
+                                               SQLPartitionScanner.SQL_COMMENT,
+                                               SQLPartitionScanner.SQL_IDENTIFIER,
+                                               SQLPartitionScanner.SQL_STRING,
+                                               SQLPartitionScanner.SQL_SEPARATOR,
+                                               SQLPartitionScanner.SQL_SYMBOL,
+                                               SQLPartitionScanner.SQL_NUMERIC });
+                       partitioner.connect(document);
+                       document.setDocumentPartitioner(partitioner);
+               }
+               return document;
+       }
+}
\ No newline at end of file