/**
  * Paints the screen on the display device.
  *
  * @param force if true then redisplay all content regardless of if it has changed, otherwise
  *     optional repainting is allowed.
  * @throws IOException if any display device command fails
  */
 @Override
 public void paint(boolean force) throws IOException {
   for (Zone zone : zones) {
     zone.paint(force);
   }
 }
 /**
  * Paints the screen on the display device. Display repainting is optional if no changes to
  * display context has occurred since last paint. Equivalent to paint(false).
  *
  * @throws IOException if any display device command fails
  */
 @Override
 public void paint() throws IOException {
   for (Zone zone : zones) {
     zone.paint();
   }
 }