•  Back 
  •  AES structures 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - The Operating System
Author      : 
Version     : tos.hyp (December 19, 2008)
Subject     : Programmieren/Atari
Nodes       : 3010
Index Size  : 93790
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Title
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File8.22.35  PRN_SETTINGS                                              TOS

typedef struct _prn_settings
{
   int32_t  magic;            /* 'pset'                              */
   int32_t  length;           /* (+) Structure length                */
   int32_t  format;           /* Structure type                      */
   int32_t  reserved;         /* Reserved                            */
   int32_t  page_flags;       /* (+) Flags, inc. even/odd pages:
                                  0x0001 = Only pages with even number
                                  0x0002 = Only pages with odd number*/
   int16_t  first_page;       /* (+) First page to print (min. 1)    */
   int16_t  last_page;        /* (+) Last page to print (max. 9999)  */
   int16_t  no_copies;        /* (+) Number of copies                */
   int16_t  orientation;      /* (+) Page orientation:
                                  0x0000 =  Orientation unknown and
                                            not adjustable
                                  0x0001 = Output in portrait format
                                  0x0002 = Output in landscape format*/
   int32_t  scale;            /* (+) Scaling: 0x10000L = 100%        */
   int16_t  driver_id;        /* (+) VDI device number               */
   int16_t  driver_type;      /* Type of the selected driver         */
   int32_t  driver_mode;      /* Flags, inc. for background printing */
   int32_t  reserved1;        /* Reserved                            */
   int32_t  reserved2;        /* Reserved                            */
   int32_t  printer_id;       /* Printer ID number                   */
   int32_t  mode_id;          /* Mode ID number                      */
   int16_t  mode_hdpi;        /* Horizontal resolution in dpi        */
   int16_t  mode_vdpi;        /* Vertical resolution in dpi          */
   int32_t  quality_id;       /* Printing mode (hardware-dependent
                                 quality, e.g. Microweave or Econofast)*/
   int32_t  color_mode;       /* Colour mode                         */
   int32_t  plane_flags;      /* Flags for colour planes to be output
                                 (e.g. cyan only)                    */
   int32_t  dither_mode;      /* Rasterizing (dithering) process     */
   int32_t  dither_value;     /* Parameter for the dithering process */
   int32_t  size_id;          /* Paper format                        */
   int32_t  type_id;          /* Paper type (normal, glossy)         */
   int32_t  input_id;         /* Paper feed tray                     */
   int32_t  output_id;        /* Paper output tray                   */
   int32_t  contrast;         /* Contrast:   0x10000L = normal       */
   int32_t  brightness;       /* Brightness: 0x1000L  = normal       */
   int32_t  reserved3;        /* Reserved                            */
   int32_t  reserved4;        /* Reserved                            */
   int32_t  reserved5;        /* Reserved                            */
   int32_t  reserved6;        /* Reserved                            */
   int32_t  reserved7;        /* Reserved                            */
   int32_t  reserved8;        /* Reserved                            */
   int8_t   device[128];      /* Filename for the printout           */
   #ifdef __PRINTING__
   TPrint   mac_settings;     /* Setting of the Mac printer driver   */
   #else
   struct
   {
      uint8_t inside[120];
   } mac_settings;
   #endif
} PRN_SETTINGS;

Note: The structure elements marked with (+) can be read out by the 
application. All other entries should not be accessed. Data such as 
the printer resolution or number of colours should not be taken from 
the setting structure, but inquired for from the printer at the start 
of the printout (it would be possible, for instance, that due to a 
memory shortage the printer driver is forced to use a lower resolution 
compared to that entered in PRN_SETTINGS).

See Also: Print dialogs   pdlg_open