empty.mod 723 B

12345678910111213141516171819202122232425
  1. MODULE empty;
  2. (* Smallest possible program: an empty desktop with a status line. *)
  3. FROM InOut IMPORT WriteString, WriteLn;
  4. IMPORT tv;
  5. VAR e : tv.Event; quit : BOOLEAN; st : tv.ViewPtr;
  6. BEGIN
  7. IF NOT tv.Init() THEN WriteString("not a tty"); WriteLn; HALT END;
  8. st := tv.NewView(tv.VText, 0, tv.Rows() - 1, tv.Cols(), 1);
  9. tv.SetText(st, " Empty TVision app - press Esc to quit");
  10. tv.AddView(tv.Desk(), st);
  11. tv.Finish;
  12. quit := FALSE;
  13. WHILE NOT quit DO
  14. IF tv.Resized() THEN tv.Finish END;
  15. IF tv.ReadEvent(e) THEN
  16. IF (e.kind = tv.evKey) AND (e.key = tv.kEsc) THEN quit := TRUE END;
  17. IF NOT quit THEN tv.Finish END
  18. END
  19. END;
  20. tv.Done
  21. END empty.