Add field for external parser to pref page
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpeclipse / phpeditor / PHPContentOutlinePage.java
index 43e72ef..fb7d8f9 100644 (file)
@@ -20,10 +20,11 @@ import java.util.TreeSet;
 
 import net.sourceforge.phpdt.internal.ui.viewsupport.ImageDescriptorRegistry;
 import net.sourceforge.phpeclipse.PHPeclipsePlugin;
-import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPClassDeclaration;
 import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPOutlineInfo;
 import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPParser;
 import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPSegment;
+import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPSegmentWithChildren;
+
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.jface.text.BadPositionCategoryException;
 import org.eclipse.jface.text.DefaultPositionUpdater;
@@ -53,10 +54,10 @@ public class PHPContentOutlinePage extends ContentOutlinePage {
 
   protected static class SegmentComparator implements Comparator {
     public int compare(Object o1, Object o2) {
-      if (o1 instanceof PHPClassDeclaration && !(o2 instanceof PHPClassDeclaration)) {
+      if (o1 instanceof PHPSegmentWithChildren && !(o2 instanceof PHPSegmentWithChildren)) {
         return 1;
       }
-      if (o2 instanceof PHPClassDeclaration && !(o1 instanceof PHPClassDeclaration)) {
+      if (o2 instanceof PHPSegmentWithChildren && !(o1 instanceof PHPSegmentWithChildren)) {
         return -1;
       }
       return ((PHPSegment) o1).toString().compareToIgnoreCase(((PHPSegment) o2).toString());
@@ -104,7 +105,7 @@ public class PHPContentOutlinePage extends ContentOutlinePage {
       PHPOutlineInfo outlineInfo = parser.parseInfo(fInput, text);
       fVariables = outlineInfo.getVariables();
 
-      PHPClassDeclaration declarations = outlineInfo.getDeclarations();
+      PHPSegmentWithChildren declarations = outlineInfo.getDeclarations();
       PHPSegment temp;
       for (int i = 0; i < declarations.size(); i++) {
         temp = declarations.get(i);
@@ -182,8 +183,8 @@ public class PHPContentOutlinePage extends ContentOutlinePage {
      * @see ITreeContentProvider#hasChildren(Object)
      */
     public boolean hasChildren(Object element) {
-      if (element instanceof PHPClassDeclaration) {
-        return !((PHPClassDeclaration) element).getList().isEmpty();
+      if (element instanceof PHPSegmentWithChildren) {
+        return !((PHPSegmentWithChildren) element).getList().isEmpty();
       }
       return element == fInput;
     }
@@ -204,8 +205,8 @@ public class PHPContentOutlinePage extends ContentOutlinePage {
     public Object[] getChildren(Object element) {
       if (element == fInput)
         return fContent.toArray();
-      if (element instanceof PHPClassDeclaration)
-        return ((PHPClassDeclaration) element).getList().toArray();
+      if (element instanceof PHPSegmentWithChildren)
+        return ((PHPSegmentWithChildren) element).getList().toArray();
       return new Object[0];
     }
   };