Changes:
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / ast / PHPDocument.java
index b2f523d..74a6c11 100644 (file)
@@ -1,13 +1,15 @@
 package net.sourceforge.phpdt.internal.compiler.ast;
 
-import net.sourceforge.phpdt.internal.compiler.parser.OutlineableWithChildren;
+import java.util.ArrayList;
+import java.util.List;
+
 import net.sourceforge.phpdt.internal.compiler.parser.Outlineable;
+import net.sourceforge.phpdt.internal.compiler.parser.OutlineableWithChildren;
 import net.sourceforge.phpdt.internal.ui.PHPUiImages;
+
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.jface.text.Position;
 
-import java.util.ArrayList;
-
 /**
  * It's a php document.
  * This class is an outlineable object
@@ -22,18 +24,24 @@ public class PHPDocument implements OutlineableWithChildren {
    */
   public AstNode[] nodes;
 
+  public char[] name;
+
   /** The parent of the object. */
   public Object parent;
 
   /** The outlineable children (those will be in the node array too. */
   private ArrayList children = new ArrayList();
 
+  private Position position;
   /**
    * Create the PHPDocument.
    * @param parent the parent object (it should be null isn't it ?)
    */
-  public PHPDocument(Object parent) {
+  public PHPDocument(final Object parent,
+                     final char[] name) {
     this.parent = parent;
+    this.name = name;
+    position = new Position(1,name.length);
   }
 
   /**
@@ -51,6 +59,11 @@ public class PHPDocument implements OutlineableWithChildren {
           break;
         }
         buff.append(node.toString(0));
+        if (node instanceof HTMLCode) {
+          buff.append("\n");//$NON-NLS-1$
+        } else {
+          buff.append(";\n");//$NON-NLS-1$
+        }
       }
     }
     return buff.toString();
@@ -61,7 +74,7 @@ public class PHPDocument implements OutlineableWithChildren {
    * @param o the new outlineable
    * @return does the addition worked ?
    */
-  public boolean add(Outlineable o) {
+  public boolean add(final Outlineable o) {
     return children.add(o);
   }
 
@@ -70,7 +83,7 @@ public class PHPDocument implements OutlineableWithChildren {
    * @param index the index
    * @return an outlineable object
    */
-  public Outlineable get(int index) {
+  public Outlineable get(final int index) {
     return (Outlineable) children.get(index);
   }
 
@@ -99,7 +112,10 @@ public class PHPDocument implements OutlineableWithChildren {
   }
 
   public Position getPosition() {
-    //todo : check this
-    return null;
+    return position;
+  }
+
+  public List getList() {
+    return children;
   }
 }
\ No newline at end of file