Ignore:
Timestamp:
08/27/12 17:48:13 (12 years ago)
Author:
pharms
Message:

implemented dumping a GUI model to a stream

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/quest-core-events/src/main/java/de/ugoe/cs/quest/eventcore/guimodel/GUIModel.java

    r611 r643  
    77package de.ugoe.cs.quest.eventcore.guimodel; 
    88 
     9import java.io.OutputStream; 
     10import java.io.PrintStream; 
    911import java.util.ArrayList; 
    1012import java.util.LinkedList; 
     
    116118         
    117119        return roots; 
     120    } 
     121 
     122    /** 
     123     * TODO: comment 
     124     * 
     125     * @return 
     126     */ 
     127    public void dump(OutputStream out) { 
     128        PrintStream stream; 
     129         
     130        if (out instanceof PrintStream) { 
     131            stream = (PrintStream) out; 
     132        } 
     133        else { 
     134            stream = new PrintStream(out); 
     135        } 
     136         
     137        for (IGUIElement root : getRootElements()) { 
     138            dumpGUIElement(stream, root, ""); 
     139        } 
    118140    } 
    119141 
     
    333355 
    334356    /** 
     357     * TODO: comment 
     358     *  
     359     * @param root 
     360     * @param root2 
     361     */ 
     362    private void dumpGUIElement(PrintStream out, IGUIElement guiElement, String indent) { 
     363        out.print(indent); 
     364        out.print(guiElement); 
     365 
     366        List<IGUIElement> children = getChildren(guiElement); 
     367 
     368        if ((children != null) && (children.size() > 0)) { 
     369            out.println(" {"); 
     370 
     371            for (IGUIElement child : children) { 
     372                dumpGUIElement(out, child, indent + "  "); 
     373            } 
     374 
     375            out.print(indent); 
     376            out.print("}"); 
     377        } 
     378 
     379        out.println(); 
     380    } 
     381 
     382    /** 
    335383     * <p> 
    336384     * TODO comment 
Note: See TracChangeset for help on using the changeset viewer.