FOREIGN MODULE java_awt_print;

IMPORT
    java_lang,
    java_util,
    java_awt_geom,
    java_awt,
    java_io,
    java_security;

TYPE

  Book* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + Pageable)
          STATIC
            PROCEDURE Init*() : Book,CONSTRUCTOR;
          END;

  Pageable* = POINTER TO INTERFACE RECORD (java_lang.Object)
              STATIC
                UNKNOWN_NUMBER_OF_PAGES* = -1;
              END;

  PageFormat* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + java_lang.Cloneable)
                STATIC
                  LANDSCAPE* = 0;
                  PORTRAIT* = 1;
                  REVERSE_LANDSCAPE* = 2;
                  PROCEDURE Init*() : PageFormat,CONSTRUCTOR;
                END;

  Paper* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + java_lang.Cloneable)
           STATIC
             PROCEDURE Init*() : Paper,CONSTRUCTOR;
           END;

  Printable* = POINTER TO INTERFACE RECORD (java_lang.Object)
               STATIC
                 PAGE_EXISTS* = 0;
                 NO_SUCH_PAGE* = 1;
               END;

  PrinterAbortException* = POINTER TO EXTENSIBLE RECORD (PrinterException)
                           STATIC
                             PROCEDURE Init*() : PrinterAbortException,CONSTRUCTOR;
                             PROCEDURE Init*(p0 : java_lang.String) : PrinterAbortException,CONSTRUCTOR;
                           END;

  PrinterException* = POINTER TO EXTENSIBLE RECORD (java_lang.Exception)
                      STATIC
                        PROCEDURE Init*() : PrinterException,CONSTRUCTOR;
                        PROCEDURE Init*(p0 : java_lang.String) : PrinterException,CONSTRUCTOR;
                      END;

  PrinterGraphics* = POINTER TO INTERFACE RECORD (java_lang.Object)
                     END;

  PrinterIOException* = POINTER TO EXTENSIBLE RECORD (PrinterException)
                        STATIC
                          PROCEDURE Init*(p0 : java_io.IOException) : PrinterIOException,CONSTRUCTOR;
                        END;

  PrinterJob* = POINTER TO ABSTRACT RECORD (java_lang.Object)
                STATIC
                  PROCEDURE Init*() : PrinterJob,CONSTRUCTOR;
                  PROCEDURE getPrinterJob*() : PrinterJob;
                END;




PROCEDURE (self:Book) append*(p0 : Printable;
                              p1 : PageFormat),NEW,EXTENSIBLE;

PROCEDURE (self:Book) append*(p0 : Printable;
                              p1 : PageFormat;
                              p2 : INTEGER),NEW,EXTENSIBLE;

PROCEDURE (self:Book) getNumberOfPages*() : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:Book) getPageFormat*(p0 : INTEGER) : PageFormat,NEW,EXTENSIBLE;

PROCEDURE (self:Book) getPrintable*(p0 : INTEGER) : Printable,NEW,EXTENSIBLE;

PROCEDURE (self:Book) setPage*(p0 : INTEGER;
                               p1 : Printable;
                               p2 : PageFormat),NEW,EXTENSIBLE;

PROCEDURE (self:Pageable) getNumberOfPages*() : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:Pageable) getPageFormat*(p0 : INTEGER) : PageFormat,NEW,ABSTRACT;

PROCEDURE (self:Pageable) getPrintable*(p0 : INTEGER) : Printable,NEW,ABSTRACT;

PROCEDURE (self:PageFormat) clone*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:PageFormat) getHeight*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getImageableHeight*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getImageableWidth*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getImageableX*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getImageableY*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getMatrix*() : POINTER TO ARRAY OF REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getOrientation*() : INTEGER,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getPaper*() : Paper,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) getWidth*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) setOrientation*(p0 : INTEGER),NEW,EXTENSIBLE;

PROCEDURE (self:PageFormat) setPaper*(p0 : Paper),NEW,EXTENSIBLE;

PROCEDURE (self:Paper) clone*() : java_lang.Object,EXTENSIBLE;

PROCEDURE (self:Paper) getHeight*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) getImageableHeight*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) getImageableWidth*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) getImageableX*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) getImageableY*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) getWidth*() : REAL,NEW,EXTENSIBLE;

PROCEDURE (self:Paper) setImageableArea*(p0 : REAL;
                                         p1 : REAL;
                                         p2 : REAL;
                                         p3 : REAL),NEW,EXTENSIBLE;

PROCEDURE (self:Paper) setSize*(p0 : REAL;
                                p1 : REAL),NEW,EXTENSIBLE;

PROCEDURE (self:Printable) print*(p0 : java_awt.Graphics;
                                  p1 : PageFormat;
                                  p2 : INTEGER) : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:PrinterGraphics) getPrinterJob*() : PrinterJob,NEW,ABSTRACT;

PROCEDURE (self:PrinterIOException) getIOException*() : java_io.IOException,NEW,EXTENSIBLE;

PROCEDURE (self:PrinterJob) cancel*(),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) defaultPage*() : PageFormat,NEW,EXTENSIBLE;

PROCEDURE (self:PrinterJob) defaultPage*(p0 : PageFormat) : PageFormat,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) getCopies*() : INTEGER,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) getJobName*() : java_lang.String,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) getUserName*() : java_lang.String,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) isCancelled*() : BOOLEAN,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) pageDialog*(p0 : PageFormat) : PageFormat,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) print*(),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) printDialog*() : BOOLEAN,NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) setCopies*(p0 : INTEGER),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) setJobName*(p0 : java_lang.String),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) setPageable*(p0 : Pageable),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) setPrintable*(p0 : Printable),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) setPrintable*(p0 : Printable;
                                          p1 : PageFormat),NEW,ABSTRACT;

PROCEDURE (self:PrinterJob) validatePage*(p0 : PageFormat) : PageFormat,NEW,ABSTRACT;

END java_awt_print.