package org.freehep.util.io; import java.io.*; import java.util.*; /** * A PrintWriter that keeps track of an indentation level * and indents the output appropriately. * * @author Tony Johnson * @author Mark Donszelmann * @version $Id: IndentPrintWriter.java,v 1.3 2003/05/18 06:43:21 duns Exp $ */ public class IndentPrintWriter extends PrintWriter { public IndentPrintWriter(Writer w, int level) { super(w); setIndent(level); } public IndentPrintWriter(Writer w) { this(w, 0); } public void print(boolean s) { doIndent(); super.print(s); } public void print(char s) { doIndent(); super.print(s); } public void print(char[] s) { doIndent(); super.print(s); } public void print(double s) { doIndent(); super.print(s); } public void print(float s) { doIndent(); super.print(s); } public void print(int s) { doIndent(); super.print(s); } public void print(long s) { doIndent(); super.print(s); } public void print(Object s) { doIndent(); super.print(s); } public void print(String s) { doIndent(); super.print(s); } public void println() { indented = false; super.println(); } // all other println's are implemented by the superclass in terms of print's private void doIndent() { if (indented) return; indented = true; for (int i=0; i