import java.applet.Applet;
import java.awt.*;

public class AikaMuistavaPiirtaja extends Applet {

  private boolean[][] piste;

  private int x, y; 

  // testitulostuksiin:
  private void TulostaSinneJaTanne(String ilmoitus) {
    System.out.println(ilmoitus); // konsolille
    showStatus(ilmoitus);         // selaimen tilariville
  }

  public void init() {
   TulostaSinneJaTanne("init-tapahtuma");
   piste = new boolean[size().width][size().height];
               // oletusalkiot == false
  }

  public void stop() {
    TulostaSinneJaTanne("stop-tapahtuma");
    piste = new boolean[size().width][size().height];
               // oletusalkiot == false
  }

  public void paint(Graphics g) {
    TulostaSinneJaTanne("paint-tapahtuma ");
    g.drawRect(0, 0, size().width - 1, size().height - 1);
    for (int i=0; i<size().width; ++i)
      for (int j=0; j<size().height; ++j)
        if (piste[i][j])
          g.drawRect(i,j,1,1);
  }

  public void update(Graphics g) {
    TulostaSinneJaTanne("update-tapahtuma");
    g.drawRect(x,y,1,1);
  } 

  public boolean mouseDrag(Event e, int x, int y) {
    TulostaSinneJaTanne("mouseDrag-tapahtuma: ("+x+","+y+")");
    try {        // kokeile dragata ulos kuvasta!
      this.x = x;
      this.y = y;
      piste[x][y] = true;
      repaint();
    }
    catch (ArrayIndexOutOfBoundsException vikaa) {
    }
    return true;
  }
}

