home *** CD-ROM | disk | FTP | other *** search
-
- #ifndef __dl_pdriver_h
- #define __dl_pdriver_h
- #ifdef __cplusplus
- extern "C" {
- #endif
- #ifndef __dl_core_h
- #include "Core.h"
- #endif
- #ifndef __dl_wimp_h
- #include "Wimp.h"
- #endif
- typedef int print_job;
- typedef struct
- {
- int xx;
- int xy;
- int yx;
- int yy;
- } print_transformation;
- #define printdriver_POSTSCRIPT 0
- #define printdriver_FX80 1
- #define printdriver_LASERJET 2
- #define printdriver_INTEGREX 3
- #define printdriver_FAXMODEM 4
- #define printdriver_DIRECTDRIVELASER 5
- #define printdriver_CASPELGRAPHLANG 6
- #define printdriver_PDUMPER 7
- #define printdriver_EPSONJX 99
- #define printdriver_STARLC10 99
- #define printdriver_PAINTJET 99
- #define printfeat_COLOUR 0x00000001
- #define printfeat_LIMITED 0x00000002
- #define printfeat_DISCRETE 0x00000004
- #define printfeat_NOFILL 0x00000100
- #define printfeat_NOTHICKNESS 0x00000200
- #define printfeat_NOOVERWRITE 0x00000400
- #define printfeat_TRANSSPRITE 0x00000800
- #define printfeat_NEWFONTMANAGER 0x00001000
- #define printfeat_SCREENDUMP 0x01000000
- #define printfeat_TRANSFORMS 0x02000000
- #define printfeat_ILLUSTRATIONS 0x04000000
- #define printfeat_MISCOP 0x08000000
- #define printfeat_SETDRIVER 0x10000000
- #define printfeat_DECLAREFONT 0x20000000
- typedef union
- {
- int value;
- struct
- {
- unsigned int colour : 1;
- unsigned int limited : 1;
- unsigned int discrete : 1;
- unsigned int filler1 : 5;
- unsigned int nofill : 1;
- unsigned int nothickness : 1;
- unsigned int nooverwrite : 1;
- unsigned int transsprite : 1;
- unsigned int newfontmanager : 1;
- unsigned int filler2 : 3;
- unsigned int filler3 : 8;
- unsigned int screendump : 1;
- unsigned int transforms : 1;
- unsigned int illustrations : 1;
- unsigned int miscop : 1;
- unsigned int setdriver : 1;
- unsigned int declarefont : 1;
- unsigned int filler4 : 2;
- } data;
- } print_features;
- typedef struct
- {
- unsigned int version : 16;
- int drivertype : 16;
- wimp_point resolution;
- print_features features;
- char *description;
- wimp_point halftone_res;
- int id_number;
- } printer_info;
- os_error *PDriver_Info(printer_info *block);
- extern char *PDriver_PrinterName(void);
- os_error *PDriver_CheckFeatures(print_features mask, print_features value);
- os_error *PDriver_PageSize(wimp_point *size, wimp_rect *printable);
- os_error *PDriver_SelectJob(print_job newjob, char *title, print_job *oldjob);
- os_error *PDriver_CurrentJob(print_job *current);
- os_error *PDriver_EndJob(print_job job);
- os_error *PDriver_AbortJob(print_job job);
- os_error *PDriver_GiveRectangle(int rectangle_id, wimp_rect *rectangle,
- print_transformation *matrix,
- wimp_point *position, int background_colour);
- os_error *PDriver_DrawPage(int copies, wimp_rect *rectangle_to_print,
- int sequence_no, char *page,
- int *finished, int *rectangle_id);
- os_error *PDriver_GetRectangle(wimp_rect *rectangle_to_print,
- int *finished, int *rectangle_id);
- os_error *PDriver_CancelJob(print_job job);
- os_error *PDriver_ScreenDump(print_job job);
- os_error *PDriver_EnumerateJobs(print_job *handle);
- os_error *PDriver_CancelJobWithError(print_job job, os_error *error);
- os_error *PDriver_SelectIllustration(print_job newjob, char *title,
- print_job *oldjob);
- os_error *PDriver_InsertIllustration(int illustration_handle, void *drawpath,
- wimp_point *bottom_left,
- wimp_point *bottom_right,
- wimp_point *top_left);
- #ifdef __cplusplus
- }
- #endif
- #endif
-