예제 #1
0
    private void runDialogsAndPrint() throws java.awt.print.PrinterException {
      out("job starting for " + this.map);
      PrinterJob job = getPrinterJob();
      out("got OS job: " + tufts.Util.tags(job));
      if (job.printDialog()) {
        out("printDialog ran, waiting for format...");
        // PageFormat format = getPageFormat(job, bounds);
        PageFormat format = getPageFormatInteractive(job, bounds);
        out("format: " + outpf(format));
        if (format != null) {
          job.setJobName(jobName);
          job.setPrintable(this, format);
          // try setting pageable to see if it then
          // skips system dialog (we'd like a no-dialog option)
          // job.setPrintService(job.getPrintService());

          // this only *sometimes* works as a workaround
          // for the vue ap mysteriously being raised above
          // the system print dialog...
          // VUE.frame.toBack();

          out("printing...");
          job.print();
        }
      }
      out("job complete.");
    }