open-insight/SYSPROG/STPROCINS/MSWIN_GETDEVICECAPS_EQUATES.txt
2024-03-25 15:17:34 -07:00

188 lines
9.3 KiB
Plaintext

compile insert msWin_GetDeviceCaps_Equates
/*
** Copyright (C) 2013 Revelation Software Inc. All Rights Reserved **
Author Mr C
Date Feb 2014
Purpose Equates for Windows GetDeviceCaps function
Comments
========
Amended Date Reason
======= ==== ======
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _MSWIN_GETDEVICECAPS_EQUATES_
#define _MSWIN_GETDEVICECAPS_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
declare function msWin_GetDeviceCaps
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
* // Device Parameters for GetDeviceCaps()
equ DRIVERVERSION$ to 0 ; * Device driver version
equ TECHNOLOGY$ to 2 ; * Device classification
equ HORZSIZE$ to 4 ; * Horizontal size in millimeters
equ VERTSIZE$ to 6 ; * Vertical size in millimeters
equ HORZRES$ to 8 ; * Horizontal width in pixels
equ VERTRES$ to 10 ; * Vertical height in pixels
equ BITSPIXEL$ to 12 ; * Number of bits per pixel
equ PLANES$ to 14 ; * Number of planes
equ NUMBRUSHES$ to 16 ; * Number of brushes the device has
equ NUMPENS$ to 18 ; * Number of pens the device has
equ NUMMARKERS$ to 20 ; * Number of markers the device has
equ NUMFONTS$ to 22 ; * Number of fonts the device has
equ NUMCOLORS$ to 24 ; * Number of colors the device supports
equ PDEVICESIZE$ to 26 ; * Size required for device descriptor
equ CURVECAPS$ to 28 ; * Curve capabilities
equ LINECAPS$ to 30 ; * Line capabilities
equ POLYGONALCAPS$ to 32 ; * Polygonal capabilities
equ TEXTCAPS$ to 34 ; * Text capabilities
equ CLIPCAPS$ to 36 ; * Clipping capabilities
equ RASTERCAPS$ to 38 ; * Bitblt capabilities
equ ASPECTX$ to 40 ; * Length of the X leg
equ ASPECTY$ to 42 ; * Length of the Y leg
equ ASPECTXY$ to 44 ; * Length of the hypotenuse
equ LOGPIXELSX$ to 88 ; * Logical pixels/inch in X
equ LOGPIXELSY$ to 90 ; * Logical pixels/inch in Y
equ SIZEPALETTE$ to 104 ; * Number of entries in physical palette
equ NUMRESERVED$ to 106 ; * Number of reserved entries in palette
equ COLORRES$ to 108 ; * Actual color resolution
* // Printing related DeviceCaps. These replace the appropriate Escapes
equ PHYSICALWIDTH$ to 110 ; * // Physical Width in device units
equ PHYSICALHEIGHT$ to 111 ; * // Physical Height in device units
equ PHYSICALOFFSETX$ to 112 ; * // Physical Printable Area x margin
equ PHYSICALOFFSETY$ to 113 ; * // Physical Printable Area y margin
equ SCALINGFACTORX$ to 114 ; * // Scaling factor x
equ SCALINGFACTORY$ to 115 ; * // Scaling factor y
* //Display driver specific
equ VREFRESH$ to 116 ; * Current vertical refresh rate of the
; * display device (for displays only) in Hz
equ DESKTOPVERTRES$ to 117 ; * Horizontal width of entire desktop in
; * pixels
equ DESKTOPHORZRES$ to 118 ; * Vertical height of entire desktop in
; * pixels
equ BLTALIGNMENT$ to 119 ; * Preferred blt alignment
equ SHADEBLENDCAPS$ to 120 ; * Shading and blending caps
equ COLORMGMTCAPS$ to 121 ; * Color Management caps
* // Device Technologies
equ DT_PLOTTER$ to 0 ; * Vector plotter
equ DT_RASDISPLAY$ to 1 ; * Raster display
equ DT_RASPRINTER$ to 2 ; * Raster printer
equ DT_RASCAMERA$ to 3 ; * Raster camera
equ DT_CHARSTREAM$ to 4 ; * Character-stream, PLP
equ DT_METAFILE$ to 5 ; * Metafile, VDM
equ DT_DISPFILE$ to 6 ; * Display-file
* // Curve Capabilities
equ CC_NONE$ to 0 ; * Curves not supported
equ CC_CIRCLES$ to 1 ; * Can do circles
equ CC_PIE$ to 2 ; * Can do pie wedges
equ CC_CHORD$ to 4 ; * Can do chord arcs
equ CC_ELLIPSES$ to 8 ; * Can do ellipese
equ CC_WIDE$ to 16 ; * Can do wide lines
equ CC_STYLED$ to 32 ; * Can do styled lines
equ CC_WIDESTYLED$ to 64 ; * Can do wide styled lines
equ CC_INTERIORS$ to 128 ; * Can do interiors
equ CC_ROUNDRECT$ to 256
* // Line Capabilities
equ LC_NONE$ to 0 ; * Lines not supported
equ LC_POLYLINE$ to 2 ; * Can do polylines
equ LC_MARKER$ to 4 ; * Can do markers
equ LC_POLYMARKER$ to 8 ; * Can do polymarkers
equ LC_WIDE$ to 16 ; * Can do wide lines
equ LC_STYLED$ to 32 ; * Can do styled lines
equ LC_WIDESTYLED$ to 64 ; * Can do wide styled lines
equ LC_INTERIORS$ to 128 ; * Can do interiors
* // Polygonal Capabilities
equ PC_NONE$ to 0 ; * Polygonals not supported
equ PC_POLYGON$ to 1 ; * Can do polygons
equ PC_RECTANGLE$ to 2 ; * Can do rectangles
equ PC_WINDPOLYGON$ to 4 ; * Can do winding polygons
equ PC_TRAPEZOID$ to 4 ; * Can do trapezoids
equ PC_SCANLINE$ to 8 ; * Can do scanlines
equ PC_WIDE$ to 16 ; * Can do wide borders
equ PC_STYLED$ to 32 ; * Can do styled borders
equ PC_WIDESTYLED$ to 64 ; * Can do wide styled borders
equ PC_INTERIORS$ to 128 ; * Can do interiors
equ PC_POLYPOLYGON$ to 256 ; * Can do polypolygons
equ PC_PATHS$ to 512 ; * Can do paths
* // Clipping Capabilities
equ CP_NONE$ to 0 ; * No clipping of output
equ CP_RECTANGLE$ to 1 ; * Output clipped to rects
equ CP_REGION$ to 2 ; * obsolete
* // Text Capabilities
equ TC_OP_CHARACTER$ to 0x00000001 ; * Can do OutputPrecision CHARACTER
equ TC_OP_STROKE$ to 0x00000002 ; * Can do OutputPrecision STROKE
equ TC_CP_STROKE$ to 0x00000004 ; * Can do ClipPrecision STROKE
equ TC_CR_90$ to 0x00000008 ; * Can do CharRotAbility 90
equ TC_CR_ANY$ to 0x00000010 ; * Can do CharRotAbility ANY
equ TC_SF_X_YINDEP$ to 0x00000020 ; * Can do ScaleFreedom X_YINDEPENDENT
equ TC_SA_DOUBLE$ to 0x00000040 ; * Can do ScaleAbility DOUBLE
equ TC_SA_INTEGER$ to 0x00000080 ; * Can do ScaleAbility INTEGER
equ TC_SA_CONTIN$ to 0x00000100 ; * Can do ScaleAbility CONTINUOUS
equ TC_EA_DOUBLE$ to 0x00000200 ; * Can do EmboldenAbility DOUBLE
equ TC_IA_ABLE$ to 0x00000400 ; * Can do ItalisizeAbility ABLE
equ TC_UA_ABLE$ to 0x00000800 ; * Can do UnderlineAbility ABLE
equ TC_SO_ABLE$ to 0x00001000 ; * Can do StrikeOutAbility ABLE
equ TC_RA_ABLE$ to 0x00002000 ; * Can do RasterFontAble ABLE
equ TC_VA_ABLE$ to 0x00004000 ; * Can do VectorFontAble ABLE
equ TC_RESERVED$ to 0x00008000
equ TC_SCROLLBLT$ to 0x00010000 ; * Don't do text scroll with blt
* // Raster Capabilities
equ RC_NONE$ to 0
equ RC_BITBLT$ to 1 ; * Can do standard BLT.
equ RC_BANDING$ to 2 ; * Device requires banding support
equ RC_SCALING$ to 4 ; * Device requires scaling support
equ RC_BITMAP64$ to 8 ; * Device can support >64K bitmap
equ RC_GDI20_OUTPUT$ to 0x0010 ; * has 2.0 output calls
equ RC_GDI20_STATE$ to 0x0020
equ RC_SAVEBITMAP$ to 0x0040
equ RC_DI_BITMAP$ to 0x0080 ; * supports DIB to memory
equ RC_PALETTE$ to 0x0100 ; * supports a palette
equ RC_DIBTODEV$ to 0x0200 ; * supports DIBitsToDevice
equ RC_BIGFONT$ to 0x0400 ; * supports >64K fonts
equ RC_STRETCHBLT$ to 0x0800 ; * supports StretchBlt
equ RC_FLOODFILL$ to 0x1000 ; * supports FloodFill
equ RC_STRETCHDIB$ to 0x2000 ; * supports StretchDIBits
equ RC_OP_DX_OUTPUT$ to 0x4000
equ RC_DEVBITS$ to 0x8000
* // Shading and blending caps
equ SB_NONE$ to 0x00000000
equ SB_CONST_ALPHA$ to 0x00000001
equ SB_PIXEL_ALPHA$ to 0x00000002
equ SB_PREMULT_ALPHA$ to 0x00000004
equ SB_GRAD_RECT$ to 0x00000010
equ SB_GRAD_TRI$ to 0x00000020
* // Color Management caps
equ CM_NONE$ to 0x00000000
equ CM_DEVICE_ICM$ to 0x00000001
equ CM_GAMMA_RAMP$ to 0x00000002
equ CM_CMYK_COLOR$ to 0x00000004
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////