/**
   Displays an environment by printing plain text
   to System.out.
*/
public class TextDisplay implements EnvDisplay
{
   /**
      Constructs a text display that can display a given
      environment.
      @param env the environment to display
   */
   public TextDisplay(Environment env)
   {
      environment = env;
   }

   public void showEnv()
   {
      for (int i = 0; i < environment.numRows(); i++)
      {
         for (int j = 0; j < environment.numCols(); j++)
         {
            Locatable obj = environment.objectAt(
               new Location(i, j));
            if (obj == null)
               System.out.print('.');
            else
               System.out.print(obj.toString().charAt(0));
         }
         System.out.println();
      }
      for (int j = 0; j < environment.numCols(); j++)
         System.out.print('-');
      System.out.println();
   }

   private Environment environment;
}
