Index: trunk/quest-core-events/src/main/java/de/ugoe/cs/quest/eventcore/guimodel/GUIModel.java
===================================================================
--- trunk/quest-core-events/src/main/java/de/ugoe/cs/quest/eventcore/guimodel/GUIModel.java	(revision 614)
+++ trunk/quest-core-events/src/main/java/de/ugoe/cs/quest/eventcore/guimodel/GUIModel.java	(revision 643)
@@ -7,4 +7,6 @@
 package de.ugoe.cs.quest.eventcore.guimodel;
 
+import java.io.OutputStream;
+import java.io.PrintStream;
 import java.util.ArrayList;
 import java.util.LinkedList;
@@ -116,4 +118,24 @@
         
         return roots;
+    }
+
+    /**
+     * TODO: comment
+     *
+     * @return
+     */
+    public void dump(OutputStream out) {
+        PrintStream stream;
+        
+        if (out instanceof PrintStream) {
+            stream = (PrintStream) out;
+        }
+        else {
+            stream = new PrintStream(out);
+        }
+        
+        for (IGUIElement root : getRootElements()) {
+            dumpGUIElement(stream, root, "");
+        }
     }
 
@@ -333,4 +355,30 @@
 
     /**
+     * TODO: comment
+     * 
+     * @param root
+     * @param root2
+     */
+    private void dumpGUIElement(PrintStream out, IGUIElement guiElement, String indent) {
+        out.print(indent);
+        out.print(guiElement);
+
+        List<IGUIElement> children = getChildren(guiElement);
+
+        if ((children != null) && (children.size() > 0)) {
+            out.println(" {");
+
+            for (IGUIElement child : children) {
+                dumpGUIElement(out, child, indent + "  ");
+            }
+
+            out.print(indent);
+            out.print("}");
+        }
+
+        out.println();
+    }
+
+    /**
      * <p>
      * TODO comment
