public boolean parseTFigs(DrawFrame f) {
   parseB();
   if (!iq.rString("tfigs(")) return false;
   //       message.appendText("reading figs.\n");
   f.canvas.fs.stop();
   ParseFig pf = new ParseFig(iq, f.canvas, null);
   if (!pf.parseFigures()) return false;
   parseB();
   if (!iq.rString(")")) return false;
   //       message.appendText("reading figs done.\n");
   f.editdispatch.ftemp = pf.figs;
   f.canvas.ftemp = pf.figs;
   f.repaint();
   return true;
 }
 public boolean parseFig(DrawFrame f) {
   parseB();
   if (!iq.rString("fig.")) return false;
   if (iq.rString("start.")) {
     f.editdispatch.clear();
   } else if (iq.rString("end.")) {
     f.editdispatch.fs = f.canvas.fs;
     f.repaint();
   } else {
     ParseFig pf = new ParseFig(iq, f.canvas, null);
     if (!pf.parseFig()) return false;
     AFigure fig = pf.afig;
     f.canvas.fs.add(fig);
   }
   return true;
 }